Expire Dense Interfaces #589
Draft
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 PR removes the
DenseOperatorInterface
,DenseStateInterface
andDenseEffectInterface
classes. These classes enabled interfacing with certain densely parameterized model members as if they we numpy arrays. These classes were official deprecated with the release of 0.9.13 and as an issue is being tracked by #447. Following discussions it was decided that due to some pernicious bugs introduced by these classes, as well as the suboptimality of having a bifurcated API, the best course of action was to simplify the codebase and remove these.As a side-effect of these changes issue #397 should be resolved.
Simply removing these classes obviously breaks a lot of code and backwards compatibility, so included here are a number of patches which at a minimum transition the main pyGSTi codebase away from the old API. We had originally targeted full removal in 0.9.14, but now that I've seen just how much of the code needed patching I suggest we push the full removal to 0.9.15. This will allow us to merge in this PR shortly after 0.9.14 is released, and as such will maximize the amount of time we can beta test these changes on develop making it much more likely we'll suss out any stragglers before wider release.