3 ms·
Deprecating is not removing. Deprecating a method breaks nothing. It just shows a deprecation warning when you use it and have deprecation warnings turned on.
by ensignavenger 3y ago
Deprecating is not removing. Deprecating a method breaks nothing. It just shows a deprecation warning when you use it and have deprecation warnings turned on.
- Kwpolska 3y agoA deprecation in Python will be followed by removal a few years from now (where a few ≈ 2 in recent practice).
- mkesper 3y agoAnd that's a good thing! Do not hold on to broken cruft but give some time (more than just a few months (Ansible and other culprits) but definitely less tan 10 years (Python 3 transition)) for code maintainers to handle it.
- larschdk 3y agoThey should respect semantic versioning and ensure that any 3.x version remains backwards compatible with 3.0 code.
- starlevel003 3y agoPython does not use semantic versioning and never has.
- Kwpolska 3y agoRemoving “broken cruft” from a programming language’s standard library has a very high cost associated with it. If you look at Java, the list of things removed in the past decade is quite short [0], and the removed things probably weren’t super important or popular. Python’s deletionists go too far IMO. [0] https://javaalmanac.io/jdk/17/apidiff/8/ https://javaalmanac.io/jdk/17/apidiff/8/