Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:63860 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 55829 invoked from network); 13 Nov 2012 23:25:29 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Nov 2012 23:25:29 -0000 Authentication-Results: pb1.pair.com smtp.mail=keisial@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=keisial@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.170 as permitted sender) X-PHP-List-Original-Sender: keisial@gmail.com X-Host-Fingerprint: 74.125.82.170 mail-we0-f170.google.com Received: from [74.125.82.170] ([74.125.82.170:63393] helo=mail-we0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id F6/A9-30200-8E6D2A05 for ; Tue, 13 Nov 2012 18:25:29 -0500 Received: by mail-we0-f170.google.com with SMTP id x10so3871192wey.29 for ; Tue, 13 Nov 2012 15:25:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=BmS0bVM7PJ62/1DGzefFfWqHMue7le++K7obCPExy+o=; b=XRIzshur4cib1YWgg+EPwTXN0RnBQfosSk1UisesRnYvcHSBROyo2oYERmR7pmqNwV fdlWSc3EZB3n6N1gq7sCrBEdgGY6ksrd7oJGaNB9FQcPaf8BWMyj3rPx32xNtAUUVVEd 799T2AVKRtOFHYuFEGlLqP50V5ZhNZ69C1Y290/CSFbEdhF216NJxfm41f3kQFljD1wJ 7KrevYaT700xjtjzs5JeyV03k165TtrqP/KvESVfKjuquSKaVBlHF1VeXBJwFT5xbHsq hOBV+h4863A6Dn9/ojhR/ZeVkTXBn1mKQb9ScgZgl+0tKO4BM4wclMKO2w3Hs1LA/iE0 WM/Q== Received: by 10.181.11.233 with SMTP id el9mr22944481wid.3.1352849125608; Tue, 13 Nov 2012 15:25:25 -0800 (PST) Received: from [192.168.1.26] (223.Red-81-35-185.dynamicIP.rima-tde.net. [81.35.185.223]) by mx.google.com with ESMTPS id s12sm20911700wik.11.2012.11.13.15.25.20 (version=SSLv3 cipher=OTHER); Tue, 13 Nov 2012 15:25:24 -0800 (PST) Message-ID: <50A2D672.7010600@gmail.com> Date: Wed, 14 Nov 2012 00:23:30 +0100 User-Agent: Thunderbird MIME-Version: 1.0 To: Anthony Ferrara CC: PHP internals References: <50A10A9D.9070402@oracle.com> <50A1946F.8010407@lerdorf.com> <50A20CCB.8090909@lsces.co.uk> <8A8A29F9E43E417FB5450D63019B2DDB@NeiRoze> <8f4231fc-6e3c-4a33-af71-2af5e7a95dfd@email.android.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] RFC: ext/mysql deprecation From: keisial@gmail.com (=?ISO-8859-1?Q?=C1ngel_Gonz=E1lez?=) I see several problems with deprecating ext/mysql: - The extension is not broken. The problem is the bad usage. It can be used safely, and good developers have been doing so for ages, by creating php wrappers. In magic quotes, the work has been the opposite. The developers had been detecting the feature in php and *disabling* it. - How many hosts/ISPs have mysqli installed? I don't have actual numbers, but it used to be much less common than ext/mysql, which means that unless they those customers won't be able to run the applications forced to migrate to mysqli. Yes, the customers should complain and get the extension enabled, but what will happen instead is that they will use outdated version X of WordPress, since that one works. So the problem really moves onto the CMS providers, do they support new php versions and drop customers in shared hosting, do they delay supporting the new php versions, or do they reimplement mysql_* in php? - A "magic porting script" has been mentioned on this thread. It is not on the docs, so it is really as if it didn't exist for the 99% of the population. Moreover, there is even a FAQ stating that there are no migration scripts right now: http://php.net/manual/en/faq.databases.php#faq.databases.mysql.deprecated It should be linked from every mysql page. - If you are sure your ext/mysql usage is safe, it is not possible to disable the warning for this functions but keep the other E_DEPRECATED. - I'm quite sure that there will be a number of problems where the replacements have issues, but they are unlikely to be fixed if not forced. For instance, I remember a php script using mysql that from reading the code, it shouldn't be working but it somehow did. Completely unmaintained, of course.