Fix Sort Deprecation Warning #801
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
@jbarberia an FYI just for your general knowledge.
When running the package tests I was getting this warning,
Interestingly this only shows up from inside the package manager, i.e.
] test PowerModels.I tracked it down to the calls in the
pti_exportfeature like this one,sort(data["bus"], by = (x) -> parse(Int64, x)).There are many possible fixes to the issue but the simple one in this situation is to "collect" the dict elements into an array before sorting them.
Additionally, a PowerModels specific tip, we have a convention that every component has a field called "index" that is the integer version of the component's id. Using this we can avoid the parsing of the dict key in many cases. In this case
by = (x) -> parse(Int64, x.first)can be replaced byby = (x) -> x.second["index"]