Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:64066 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 3860 invoked from network); 28 Nov 2012 06:15:03 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 28 Nov 2012 06:15:03 -0000 Authentication-Results: pb1.pair.com header.from=adam@adamharvey.name; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=adam@adamharvey.name; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain adamharvey.name designates 209.85.214.170 as permitted sender) X-PHP-List-Original-Sender: adam@adamharvey.name X-Host-Fingerprint: 209.85.214.170 mail-ob0-f170.google.com Received: from [209.85.214.170] ([209.85.214.170:39677] helo=mail-ob0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id AF/61-22948-6EBA5B05 for ; Wed, 28 Nov 2012 01:15:03 -0500 Received: by mail-ob0-f170.google.com with SMTP id wp18so12508827obc.29 for ; Tue, 27 Nov 2012 22:14:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=adamharvey.name; s=google; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:content-type :content-transfer-encoding; bh=3fQmIO3LM2Ai/e+kNi3CvLzl9Ic9hW/4NmRQA17lXX0=; b=CxQjVx1vjFn9VcuAvCbSuDzIlbqzwh/5iNeKMVPD2f3USdA9LruMmlS66wBKgQ/tp3 tTCSeKLyTWRcrkA1/+SPkcwcov8BbwhUh0YnuP9wXGRhK2HJNjXxNpOvQc+fBR68v40j cGCs4t385DpsMvWbI+ludHVHpekOuz9IGLVRU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:content-type :content-transfer-encoding:x-gm-message-state; bh=3fQmIO3LM2Ai/e+kNi3CvLzl9Ic9hW/4NmRQA17lXX0=; b=CrkLYmEuSZe7fo15+Zty2ewZYE9ftqcoMpad4gInFgZypf3WC8RW2eWoHnh1QC1k1e wO7ZPXp4t/PxY+RuK33bHxe8RYFIMdGJMdPYvxfMeYznwFJ4Bn9lsgRCxAYRq+989uFb 2vlE1fPSGm0SS+D2mWueJzi2im7acYva1EafeXvgm4IPM7+r3g18rG9Znm4Ie3pkGFFD RpfSIDjIvzRRb1DbnR6M8Z35+h1YH4Ml7BYY2q38oqX3zw1XC4nvq1EDYW+m09k1I4N7 u4Do/IDSNZBBrGVpOFyGV6dzLUHpSxjsyIU8YtjtpJXVbt7qjHsOizBqbtYyDTZY+lIO ohgA== Received: by 10.60.31.6 with SMTP id w6mr15036899oeh.65.1354083299788; Tue, 27 Nov 2012 22:14:59 -0800 (PST) MIME-Version: 1.0 Sender: adam@adamharvey.name Received: by 10.76.123.75 with HTTP; Tue, 27 Nov 2012 22:14:39 -0800 (PST) In-Reply-To: References: Date: Wed, 28 Nov 2012 14:14:39 +0800 X-Google-Sender-Auth: Gpw7BVSmrhJv7t4RLH5SXYUoLQk Message-ID: To: PHP internals Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Gm-Message-State: ALoCoQnWBJ+yxg+BvVhM7yaRW401I9NuhXqx4Gvx8j12AK4RuDMpz71blND4UcwJ9MPrKo0crCGz Subject: Re: [VOTE] ext/mysql deprecation in 5.5 From: aharvey@php.net (Adam Harvey) On 28 November 2012 14:03, Adam Harvey wrote: OK, so the first e-mail was the official announcement of voting being open. I'd now like to quickly lay out why I voted yes, and why I think it's the right way forward. Feel free to hit next if your mind is already made up. :) Ulf produced a blackly entertaining timeline of MySQL support in PHP in one of the earlier RFC threads[0]. We've had better options than ext/mysql available in mainline, stable releases since 2004, yet it's taken a long time for there to be a serious push to encourage users to use the newer extensions. There are both a carrot and a stick here. The carrot is well laid out by Ulf in his blog post[1] =E2=80=94 the newer extensions are more featuref= ul, faster, and in the case of PDO particularly, easier to use (and harder to misuse). The stick is that we have this faintly ridiculous situation where we have four extensions in php-src for accessing one DBMS, one of which (ext/mysql) is barely maintained and has an API that encourages poor programming practice. Deprecating ext/mysql in PHP 5.5 doesn't mean it's going away immediately. It doesn't even mean it's going away next year: there's no reason at all we can't keep ext/mysql deprecated for more than one release branch. In fact, that would be my preference. As others have said: ext/mysql is a hugely used, popular extension. We can't rip it out overnight, and nor should we. Deprecation is a strong signal. It's a signal that it's time to update tutorials. It's a signal to schedule upgrades for code when new versions are written to use more modern APIs. It's a signal to those of us who speak at conferences, and help people in various fora and various ways that we should redouble our efforts to communicate the benefits of MySQLi and/or PDO. Most of all, it's a signal that we're serious about improving PHP and encouraging our users to improve their own code with us. Thanks for reading. If you got this far, I'll buy you the beer or non-alcoholic substitute of your choice at any conference I'm at next year. (Which, since I'm moving to Vancouver in the new year, may actually be a few.) Adam [0] http://news.php.net/php.internals/63982 [1] http://blog.ulf-wendel.de/2012/php-mysql-why-to-upgrade-extmysql/