Git Product home page Git Product logo

Comments (8)

leofeyer avatar leofeyer commented on June 9, 2024

Before we deprecate something, we must stop using it ourselves, which means you have to create a PR that replaces all usages of the Database class with Doctrine.

from contao.

aschempp avatar aschempp commented on June 9, 2024

Really? Just because of the debug bar output?

from contao.

leofeyer avatar leofeyer commented on June 9, 2024

@aschempp What do you mean?

from contao.

aschempp avatar aschempp commented on June 9, 2024

Well if we don't mark the class as deprecated, neither we nor the developers will get a suggestion to use Doctrine… You know it's almost impossible to rewrite everything at once.

from contao.

leofeyer avatar leofeyer commented on June 9, 2024

First of all, it is not impossible. It might be a large PR but that's manageable.

Second of all, if we deprecate the class but continue to use it ourselves, people will be confused and uncertain of our deprecation policy.

from contao.

discordier avatar discordier commented on June 9, 2024

Of course we can deprecate it and move to doctrine then.
The only thing is, we MUST NOT use it for new code.
The migration away will take a significant amount of time, do you really want people to continue to use it in future code just because we did not deprecate it because we still use it in legacy code that is subject to removal anyway?

from contao.

leofeyer avatar leofeyer commented on June 9, 2024

Before we definitely know that Doctrine DBAL is suited to replace the database class (which I doubt because of the features that the database class implements), the class is not subject to removal at all.

from contao.

discordier avatar discordier commented on June 9, 2024

I wonder which features you are referring to here that should be missing by using the plain doctrine database.
Granted, some things are missing but these are merely syntactic sugar like the reset and loop over again.
However I always was hesitant to use this for sake of memory usage (as the results were always buffered). When I want to buffer them and loop over again and again, I buffer them locally and not in the fetched result.
Therefore these "missing" features are easy to cope with (in fact I see the removal of these features as feature on it's own).

from contao.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.