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.
This is the final PR bringing all changes regarding
optimization.Parameter
together. Originally, the goal was to have this PR be very quick because all precursors had been reviewed, but this didn't happen. After merging #82, I had to rework all these branches because for some reason, the propagation of changes upon rebasing did not happen as I expected. During that reworking phase, some errors were introduced and I didn't want to fix these errors individually on all precursor PRs, which I why I collapsed all of them to this one PR, that is now quite large (again), sorry for that.To spare you the trip to the old PRs, let me summarize some discussions here:
DeprecationWarning
arising from the httpx code, it seems. When I discovered it, I thought it should be fixed bystarlette 0.37.2
, which was allowed byfastapi 0.111.0
, but this doesn't seem to be the case. I'm not entirely sure why or how urgent it is to remove this warning.ixmp.__init__
gains some imports, which @danielhuppmann did not like too much. We can potentially remove all except forPlatform
andDatapoint
, but this is probably going into subsequent removal-PRs (see also Clean up top-level namespace #84).Table
andParameter
are very similar, as will beVariable
andEquation
. For every single layer (but @danielhuppmann asked specifically for the Core layer first), these could inherit from each other (or be composed elegantly) to avoid repetition of very similar or identical code. I agree that this is a very useful step and I already have an idea for the Core layer. I would like to implement this pretty much right away, but in a new PR, to keep it manageable.