remove api_version concept
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Confirmed
|
Medium
|
Unassigned | ||
Breezy |
Fix Released
|
Medium
|
Jelmer Vernooij |
Bug Description
Bazaar added an "api version" concept, as distinct from the library version. But this at the moment seems vestigial: it's always set to the bzrlib version, and there is just one version marker across the whole library rather than it being fine grained.
I don't think it's realistic to keep the API stable enough that clients can check only this and not the implementation version. I also think having accurate fine-grained versioning on particular classes will be too hard and probably will not be checked accurately enough to give good protection.
Therefore I think we should probably just delete the concept, and have plugins make assertions about what actual bzr versions they do or don't support.
Related branches
- Martin Packman: Approve
-
Diff: 566 lines (+30/-410)12 files modifiedbreezy/__init__.py (+0/-4)
breezy/api.py (+0/-103)
breezy/errors.py (+6/-7)
breezy/plugin.py (+4/-5)
breezy/plugins/launchpad/lp_api.py (+4/-3)
breezy/plugins/launchpad/test_lp_api.py (+2/-2)
breezy/tests/__init__.py (+0/-1)
breezy/tests/test_api.py (+0/-143)
breezy/tests/test_errors.py (+6/-4)
breezy/tests/test_plugins.py (+5/-4)
doc/developers/api-versioning.txt (+0/-133)
doc/en/release-notes/brz-3.0.txt (+3/-1)
Changed in brz: | |
importance: | Undecided → Medium |
status: | New → Triaged |
assignee: | nobody → Jelmer Vernooij (jelmer) |
milestone: | none → 3.0.0 |
Changed in brz: | |
status: | Triaged → In Progress |
Changed in brz: | |
status: | In Progress → Fix Released |