Carlton writes:
The show urls discussion has been rolling along for several years, and
built a considerable backing behind it. (Including me! ) The
command also existed in django extensions āforever.
In contrast, despite having been using Django for some time, I only
wrote my list_templates command in April 2023.
These kind of things are like template tags and database functions ā
we could keep adding them forever, but we need to decide where to stop
at some point.
(Iām not taking a particular view here. IDK if a list_templates
command in core is worth the maintenance or not.)
And David writes:
One of the things I like about some open source communities is knowing
when to draw that line Django is one of those.
Just some thoughts on this and then Iāll stop riding a dead horse here.
I think itās good and necessary to draw a line somewhere. And thatās
easy. Whatās hard is to define comprehensible criteria for
āsomewhereā. And in my opinion, Django isnāt particularly better at it
than any other open source projects.
I know there is the āconsensusā criteria, aka ācheering contestā. But
how good is that? Consensus is sought among a few active members of this
Django community, which I think is fair to say, donāt represent the vast
majority of Django users out there, looking at the daily downloads being
in the millions [1] and at almost two million other
projects/repositories depending on Django [2]. So there is always a huge
bias in a consensus.
But there is no alternative, right? And I think the current process
could work somehow better if consensus would be sought over āthe overall
benefit for Djangoā rather than personal gusto. If I look at the
discussion about showurls
for example, I just see āI want thisā, āI
want thisā, āYeah, I want thisā. So the outcome will likely make the
lives of these people easier, but not necessarily that of the majority
of Django users.
And rather discussing the addition of one management command, I could
see more value in a discussion about increasing the overall utility of
the whole tool belt, that is made of all management commands.
So soon Django has showurls
for urls, nothing for templates and the
pretty useless findstatic
for a single static file.
Alternatively an orthogonal set of commands like showurls
,
showtemplates
and showstatics
(replacing findstatic
) would at
least make more sense to me.
About bloat: I guess oneās man bloat is another manās ābatteries
includedā?
And keeping a high bar for any addition to the core is just one way to
prevent bloat. Removing functionality with little value, like the
mentioned findstatic
, could be another one.
[1] https://pypistats.org/packages/django
[2] Network Dependents Ā· django/django Ā· django repositories Ā· GitHub