2012/11/13 Anthony Ferrara <ircmax...@gmail.com>

> There's one important thing that I think you all are missing here. You keep
> bringing up that we should just use the normal "deprecation" process. The
> problem is that the deprecation process was never designed for a feature
> like this.
>
> Look at what was deprecated and removed so far. We deprecated register
> globals and magic quotes. The process worked there. But was it because of
> the process? Or was it because those features were already dead by that
> point. Think of this: when 5.3 shipped (introducing E_DEPRECATED for those
> features), how many current versions of open source tools relied on those
> features? None.
>
> Now, you could point to call-time-pass-by-reference as well. E_DEPRECATED
> was added in 5.3 for it. But most of the projects that used it only used it
> in a few minor places. The majority of usages were relatively isolated.
>
> Now, look at ext/mysql. The landscape is completely different. Major
> projects still rely on it in their most recent versions. Wordpress's latest
> trunk uses ext/mysql. And as was said here, it's not a trivial change to
> switch from mysql to mysqli or PDO. ext/mysql is still very heavily relied
> upon.
>
> What I would suggest, is not adding E_DEPRECATED for 5.5. Instead,
> officially deprecate it in the docs. Then start a PR campaign to get
> projects like WP to switch away from it. Get the word out there as much as
> possible. Then in 1 to 2 years when 5.6/6 is released, add E_DEPRECATED.
>
> Again, my $0.02...
>
> Anthony
>

It took me like 10 minutes of "Search & Replace" in my IDE to make a switch
to mysqli and a few more hours to validate that everything is ok and catch
places where search & replace failed. The amount of work is overestimated,
especially if you have a regexp capable search & replace.

Not being able to migrate to mysqli in a few days is a sign of project
messed up so badly, that just upgrading your PHP should break it every
time, and you are probably better off rewriting the whole thing. Or just
freeze the PHP version you are using and let it live until you are able to
rewrite it.

Unfortunately people need a kick in the nuts to start to act. And that old
project argument is exactly from the people that need that kick in the
first place.

I don't even wana start about using a VPS/virtualization and compiling the
damn thing --with-mysql and being happy that you don't have to do anything
to keep it running.

Reply via email to