Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork8.1k
DOC: Introduce backend versions#30777
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
base:main
Are you sure you want to change the base?
Conversation
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
57555a5 to61fa0d9Compareanntzer commentedNov 23, 2025
If we choose to do this (which is not something I'm not really convinced of, as I've mentioned in#30559, but I agree it's low cost), then I think the version numbers should just match the Matplotlib release numberswhere backend API changes occur and we should just have a table listing changes to the backend API, e.g. the current backend API could be 3.8 if (hypothetically) mpl3.8 was the last release where a breaking change occurred. |
timhoffm commentedNov 28, 2025
I believe we should have a dedicated backend version scheme independent of matplotlib version numbers, because we want to communicate EffVer semantics on the backend. That’s not possible when just taking the matplotlib version number. |
jklymak commentedNov 28, 2025 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
My vote would be that going with Matplotlib major versions would be a lot less confusing. But maybe there are other projects that version subsets of their APIs differently from their project version? |
timhoffm commentedNov 30, 2025
When you look at REST APIs, explicit versioning of the API is common and good practice. I'd argure that our backend API is semantically quite the same. |
Closes#30559.
As explained in#30559, I believe this will help us mid-term to evolve the backend API. It's currently unused because the 1.1 API is detected via introspection. But we don't want to depend on introspection in the future.
Note: Introducing backend versioning is low-risk. Worst case is that we don't need this versioning and discard it again later.