On Mon, 26 Nov 2018 00:57:04 -0800 (PST)
Johannes Hoppe <i...@johanneshoppe.com> wrote:

> I want to address a completely different point, and that
> *innovation*. I believe that 3rd party backends could lead to more
> innovation in the Django ORM.
> Currently if you want to introduce a new feature for your database,
> you are faced with a lot of complications added by databases you
> might not be familiar with. Furthermore you might be requested to
> makes those features available for databases you haven't used before.
> This drastically increases the bar for contributing innovative new
> features. As an example, I wanted to add database defaults for
> Postgres and multiple insert return values. I finished the postgres
> feature in 2 sprints, but it took me another half year to implement
> the same for Oracle. Mainly because I never used Oracle before.

I just wanted to point out that this road to innovation is already
open. There's nothing stopping you from writing a custom database
backend and releasing it to PyPI. Granted, then your new feature does
not become part of Django, but that would also be the case if the
standard backends were not part of Django.

I should point out that this point is not theoretical -- e.g. an
extended Oracle backend existed to support connection pooling[1], and
when I wanted to add database instrumentation[2], I first implemented
it (though I hadn't published that) in a custom backend, inheriting the
existing PG backend.


[1] https://github.com/JohnPapps/django-oracle-drcp
[2] https://docs.djangoproject.com/en/2.1/topics/db/instrumentation/

You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
For more options, visit https://groups.google.com/d/optout.

Reply via email to