Skip to content

feat: implement remake(::LinearProblem) #1053

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jun 12, 2025

Conversation

AayushSabharwal
Copy link
Member

@jClugstor this should fix your remake issue.

src/SciMLBase.jl Outdated
Comment on lines 871 to 872
@public SymbolicLinearInterface, get_new_A_b, create_parameter_timeseries_collection,
get_saveable_values, save_discretes!
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's not really public though?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What isn't? SymbolicLinearInterface is what MTK populates

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where's the docs? And do we really want other people building on this?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where's the docs?

It has docstrings. Would you like me to add it to a doc page somewhere? Maybe the LinearProblem docstring?

And do we really want other people building on this?

Technically a bunch of this kind of stuff (e.g. the remake hooks, really anything that dispatches on prob.f.sys) that "anybody can build upon" but realistically MTK is the only one doing it besides contrived implementations in tests.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Even if only MTK builds upon it, it is still public API of SciMLBase. Renaming a field will break MTK, which means either this is public API or MTK technically depends on internals.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a big difference between API designated for one package to build on and public API

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we can do that, I'm up for it. Will update this and the docstring for the struct accordingly.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not ready to be public until we've settled on the interface there. And it should be part of SII probably if it is? Just remove from public for now and let's get it right before telling people they should build on it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes are already on this branch. It is no longer public.

src/SciMLBase.jl Outdated
Comment on lines 871 to 872
@public get_new_A_b, create_parameter_timeseries_collection,
get_saveable_values, save_discretes!
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are though? And I don't know their interface, it's not defined in SciMLBase docs, nor do I think these necessarily should be?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay. I'll remove them too. Given the current state of tests, can I remove this and merge?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes

@AayushSabharwal AayushSabharwal force-pushed the as/fix-linprob-remake branch from 841f23a to 9b4d3ec Compare June 12, 2025 06:01
@AayushSabharwal AayushSabharwal merged commit a1d14d3 into SciML:master Jun 12, 2025
48 of 60 checks passed
@AayushSabharwal AayushSabharwal deleted the as/fix-linprob-remake branch June 12, 2025 06:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants