4 ms·
The author writes that they have a particularly big piece of maintenance coming up. > The latest change we need is an especially large amount of work, as we wi
by jsmeaton 7y ago
The author writes that they have a particularly big piece of maintenance coming up.
> The latest change we need is an especially large amount of work, as we will have to move from Python 2 to Python 3.
This sounds like the transition from Django 1.11 to (probably) Django 2.2, if they're moving from LTS to LTS, and it definitely is a big piece of work if you also have to change python versions.
Django defined a release schedule DEP[0] a few years back to try to preference stability and reduce the amount of maintenance when moving between LTS versions, which is approximately every 3 years.
If your application runs on an LTS version without any deprecation warnings, then you should be able to move to the next LTS version without any changes. Which is nice in theory, but 3rd party packages in particular aren't always aligned in such a nice way. If the stars align though, it is 6 years (LTS + LTS) of no changes.
This is all to say, I think the author has a point, but that Django has recognised the maintenance burden as an issue, and has tried to help developers with that as best they can, without just shutting down all progress. I think the balance is mostly right.
Moving from 1.11 to 2.2 should be mostly painless. Unfortunately, moving from Python 2 to Python 3 is going to make that more painful. From 2.2 the maintenance burden should be much less than in previous years. Stick with Django if the features meet your needs.
[0] https://github.com/django/deps/blob/master/final/0004-release-schedule.rst https://github.com/django/deps/blob/master/final/0004-releas...
- 1337shadow 7y agoEvery once in a while someone opens an issue on a repo i maintain asking for "Django 1.11" support: 2 days ago, 20 days ago ... For me, "LTS" is a mistake indeed and and goes against any Continuous Delivery / Agile philosophy that I know of, it serves as an excuse for users to not update their software which in reality accumulates tech debt. I mean, if you're going to do very little customizations to a system then LTS might be fine, but if it serves as a base to something that's custom development from scratch, like Django, it really doesn't look like a choice that's going to pay off in the long term.
- jsmeaton 7y agoAs a library author that’s well within your rights to determine what you’re willing to support or not. Django has a very big user base. There are many users working on “very large sites” where the cost of “churn” is dramatic. There are threads on Django-developers right now complaining that the current model is too aggressive. Striking that balance is difficult for a heavily used framework.