Re: MacPorts-MySQL Dictator wanted, prefer benevolent
At 3:07 PM -0500 9/30/14, Ryan Schmidt wrote: On Sep 30, 2014, at 10:37 AM, Craig Treleaven wrote: By way of background, my MythTV ports depend on p5.16-dbd-mysql, py27-mysql and php-5-mysql. Previously, all of these defaulted to the now-obsolete mysql5 variant. Now, py-mysql defaults to mariadb55. p516-dbd-mysql offers a mariadb variant; not mariadb55. php5-mysql defaults to mysqlind (MySQL native driver) and offers a mariadb variant; again not mariadb55. p5.16-dbd-mysql still defaults to mysql5. The subtle variance in naming the variants creates confusion. The range of defaults can lead to bloat and confusion. Initially, I found there was a ticket related to py-mysql database variants [1] and I filed additional tickets for php5-mysql [2] and p5-dbd-mysql [3]. Since then, I thought to search for other ports that offer variants related to MySQL ('port echo variant:mysql*')--a total of 89 ports, of which about 20 are subports. I've refined my list a little and I've found 83 ports that offer variants related to MySQL-compatible databases, see attached pdf. The chart lists all the current variant names; a 1 indicates that a particular port offers that a variant with that name. The tickets have been open for 6 weeks or more with no movement. I've started to do some analysis on this (with another thread asking for help) to see if we can standardize on a list of MySQL-related variant names and maybe even agree on a common default. That's where the dictator comes in. At the moment, I would say the obvious choices for a default MySQL variant would be mysql55, mariadb55 or, maybe, mysql56. AFAICT there is no clear-cut, compelling reason to choose one over the others (technical, legal, religious, whatever). Other threads have touched on this issue, recently, with no clear consensus developed. Nonetheless, I think the MacPorts project would be better served by blessing one that can hold us for a few years rather than have various ports going in all different directions. Is this something that the PortMgr group could take the lead on? Indeed we have discussed this before, and it was proposed that the latest stable MariaDB version should be the default variant of ports that have MySQL support. I don't think we can or should select a default to last us for years. We don't want to stagnate like we did with the +mysql5 variant. Rather, we should let the latest stable version be the default, and update ports as needed. Currently, the latest stable version of MariaDB is 10.0. Really? Has MariaDB 10.0 really been sufficiently exercised in the OS X environment to become the default? Currently, not a single port that I've identified even offers mariadb-10.0 as a variant. Only 4 ports in my list currently default to mariadb or mariadb55: PortDefault Variant akonadi mariadb55 amarok mariadb55 py24-mysql mariadb55 py25-mysql mariadb55 py26-mysql mariadb55 py27-mysql mariadb55 qore-mysql-module mariadb The question is what to name the variants. This has also been brought up for discussion before. My most recent thread on the topic from 2 weeks ago got no replies on the list; perhaps I was too wordy. My suggestion was that using dots in version numbers, but no underscores, would be the cleanest and most informative, which would make the complete list of proposed MySQL variant today: +mariadb5.5, +mariadb10.0, +mariadb10.1, +mysql5.1, +mysql5.5, +mysql5.6, and +percona5.6. Adopting this format means renaming every variant of every affected port. This may also break the upgrade path for existing installs, no? We really should keep legacy-named variants for a period of time along with the new standard which leads to an explosion of variants for some ports. For example, apr-util currently has mariadb, mysql5, mysql51, mysql55, mysql56, and percona variants related to db selection. We'd have to keep those 6 and add at least 6 more (maybe 8 if maridb10.0 and mariadb10.1 are supported). Perhaps we* could control the explosion of variants by creating a new Portfile contruct: legacy-variant. It might act just like the current variant declaration except that it would be invisible to 'port info' and 'port variants'. Users wouldn't normally see the legacy-variants thus reducing the temptation to keep using them. If necessary, perhaps they could be displayed by passing the -v or -d flags to port. Craig * By we, I mean someone more clever than me! MacPorts_MySQL_Variants_2014Oct1.xlsx.pdf Description: Binary data ___ macports-dev mailing list macports-dev@lists.macosforge.org https://lists.macosforge.org/mailman/listinfo/macports-dev
Re: MacPorts-MySQL Dictator wanted, prefer benevolent
On Oct 1, 2014, at 6:45 AM, Craig Treleaven ctrelea...@macports.org wrote: At 3:07 PM -0500 9/30/14, Ryan Schmidt wrote: Currently, the latest stable version of MariaDB is 10.0. Really? Yes, in that MariaDB 10.0 is the latest release version. Has MariaDB 10.0 really been sufficiently exercised in the OS X environment to become the default? Currently, not a single port that I've identified even offers mariadb-10.0 as a variant. Only 4 ports in my list currently default to mariadb or mariadb55: PortDefault Variant akonadi mariadb55 amarok mariadb55 py24-mysql mariadb55 py25-mysql mariadb55 py26-mysql mariadb55 py27-mysql mariadb55 qore-mysql-module mariadb As soon as the variant naming is settled there will be mariadb-10.{0,1} variants. The question is what to name the variants. This has also been brought up for discussion before. My most recent thread on the topic from 2 weeks ago got no replies on the list; perhaps I was too wordy. My suggestion was that using dots in version numbers, but no underscores, would be the cleanest and most informative, which would make the complete list of proposed MySQL variant today: +mariadb5.5, +mariadb10.0, +mariadb10.1, +mysql5.1, +mysql5.5, +mysql5.6, and +percona5.6. Adopting this format means renaming every variant of every affected port. This may also break the upgrade path for existing installs, no? We really should keep legacy-named variants for a period of time along with the new standard which leads to an explosion of variants for some ports. I think it is common to add something like this for a time (1 year): if [variant_isset ${legacy-variant}] { default_variants-append +${replacement-variant} } For example, apr-util currently has mariadb, mysql5, mysql51, mysql55, mysql56, and percona variants related to db selection. We'd have to keep those 6 and add at least 6 more (maybe 8 if maridb10.0 and mariadb10.1 are supported). Similar to recent discussions regarding removing old versions of perl and python, we should consider removing/replacing older versions of mysql like mysql4 and mysql5 and probably mysql51. I believe it would be an improvement if we settled on these ports for now and removed/replace all others: mariadb-5.5 // MariaDB has long term support contract with Redhat for this 5.5 mariadb-10.0 // Newest stable release mariadb-10.1 // Alpha release mysql-5.5 mysql-5.6 // Generally Available (GA) Release mysql-5.7 // Development Release percona-5.5 percona-5.6 https://downloads.mariadb.org/mariadb/+releases/ http://dev.mysql.com/downloads/mysql/ http://www.percona.com/downloads/ Regards, Bradley Giesbrecht (pixilla) signature.asc Description: Message signed with OpenPGP using GPGMail ___ macports-dev mailing list macports-dev@lists.macosforge.org https://lists.macosforge.org/mailman/listinfo/macports-dev
MacPorts-MySQL Dictator wanted, prefer benevolent
By way of background, my MythTV ports depend on p5.16-dbd-mysql, py27-mysql and php-5-mysql. Previously, all of these defaulted to the now-obsolete mysql5 variant. Now, py-mysql defaults to mariadb55. p516-dbd-mysql offers a mariadb variant; not mariadb55. php5-mysql defaults to mysqlind (MySQL native driver) and offers a mariadb variant; again not mariadb55. p5.16-dbd-mysql still defaults to mysql5. The subtle variance in naming the variants creates confusion. The range of defaults can lead to bloat and confusion. Initially, I found there was a ticket related to py-mysql database variants [1] and I filed additional tickets for php5-mysql [2] and p5-dbd-mysql [3]. Since then, I thought to search for other ports that offer variants related to MySQL ('port echo variant:mysql*')--a total of 89 ports, of which about 20 are subports. [1] https://trac.macports.org/ticket/39068 [2] https://trac.macports.org/ticket/44481 [3] https://trac.macports.org/ticket/44484 The tickets have been open for 6 weeks or more with no movement. I've started to do some analysis on this (with another thread asking for help) to see if we can standardize on a list of MySQL-related variant names and maybe even agree on a common default. That's where the dictator comes in. At the moment, I would say the obvious choices for a default MySQL variant would be mysql55, mariadb55 or, maybe, mysql56. AFAICT there is no clear-cut, compelling reason to choose one over the others (technical, legal, religious, whatever). Other threads have touched on this issue, recently, with no clear consensus developed. Nonetheless, I think the MacPorts project would be better served by blessing one that can hold us for a few years rather than have various ports going in all different directions. Is this something that the PortMgr group could take the lead on? Craig ___ macports-dev mailing list macports-dev@lists.macosforge.org https://lists.macosforge.org/mailman/listinfo/macports-dev
Re: MacPorts-MySQL Dictator wanted, prefer benevolent
On Sep 30, 2014, at 10:37 AM, Craig Treleaven wrote: By way of background, my MythTV ports depend on p5.16-dbd-mysql, py27-mysql and php-5-mysql. Previously, all of these defaulted to the now-obsolete mysql5 variant. Now, py-mysql defaults to mariadb55. p516-dbd-mysql offers a mariadb variant; not mariadb55. php5-mysql defaults to mysqlind (MySQL native driver) and offers a mariadb variant; again not mariadb55. p5.16-dbd-mysql still defaults to mysql5. The subtle variance in naming the variants creates confusion. The range of defaults can lead to bloat and confusion. Initially, I found there was a ticket related to py-mysql database variants [1] and I filed additional tickets for php5-mysql [2] and p5-dbd-mysql [3]. Since then, I thought to search for other ports that offer variants related to MySQL ('port echo variant:mysql*')--a total of 89 ports, of which about 20 are subports. [1] https://trac.macports.org/ticket/39068 [2] https://trac.macports.org/ticket/44481 [3] https://trac.macports.org/ticket/44484 The tickets have been open for 6 weeks or more with no movement. I've started to do some analysis on this (with another thread asking for help) to see if we can standardize on a list of MySQL-related variant names and maybe even agree on a common default. That's where the dictator comes in. At the moment, I would say the obvious choices for a default MySQL variant would be mysql55, mariadb55 or, maybe, mysql56. AFAICT there is no clear-cut, compelling reason to choose one over the others (technical, legal, religious, whatever). Other threads have touched on this issue, recently, with no clear consensus developed. Nonetheless, I think the MacPorts project would be better served by blessing one that can hold us for a few years rather than have various ports going in all different directions. Is this something that the PortMgr group could take the lead on? Indeed we have discussed this before, and it was proposed that the latest stable MariaDB version should be the default variant of ports that have MySQL support. I don't think we can or should select a default to last us for years. We don't want to stagnate like we did with the +mysql5 variant. Rather, we should let the latest stable version be the default, and update ports as needed. Currently, the latest stable version of MariaDB is 10.0. The question is what to name the variants. This has also been brought up for discussion before. My most recent thread on the topic from 2 weeks ago got no replies on the list; perhaps I was too wordy. My suggestion was that using dots in version numbers, but no underscores, would be the cleanest and most informative, which would make the complete list of proposed MySQL variant today: +mariadb5.5, +mariadb10.0, +mariadb10.1, +mysql5.1, +mysql5.5, +mysql5.6, and +percona5.6. Currently, port lint says that a dot is not a valid character in a variant name, but I suspect lint is just being overly cautious, and perhaps someone with a little time could do some tests and see if variant names containing dots do in fact work correctly. ___ macports-dev mailing list macports-dev@lists.macosforge.org https://lists.macosforge.org/mailman/listinfo/macports-dev
Re: MacPorts-MySQL Dictator wanted, prefer benevolent
On Sep 30, 2014, at 8:37 AM, Craig Treleaven ctrelea...@macports.org wrote: By way of background, my MythTV ports depend on p5.16-dbd-mysql, py27-mysql and php-5-mysql. Previously, all of these defaulted to the now-obsolete mysql5 variant. Now, py-mysql defaults to mariadb55. p516-dbd-mysql offers a mariadb variant; not mariadb55. php5-mysql defaults to mysqlind (MySQL native driver) and offers a mariadb variant; again not mariadb55. p5.16-dbd-mysql still defaults to mysql5. The subtle variance in naming the variants creates confusion. The range of defaults can lead to bloat and confusion. Initially, I found there was a ticket related to py-mysql database variants [1] and I filed additional tickets for php5-mysql [2] and p5-dbd-mysql [3]. Since then, I thought to search for other ports that offer variants related to MySQL ('port echo variant:mysql*')--a total of 89 ports, of which about 20 are subports. [1] https://trac.macports.org/ticket/39068 [2] https://trac.macports.org/ticket/44481 [3] https://trac.macports.org/ticket/44484 The tickets have been open for 6 weeks or more with no movement. I've started to do some analysis on this (with another thread asking for help) to see if we can standardize on a list of MySQL-related variant names and maybe even agree on a common default. That's where the dictator comes in. At the moment, I would say the obvious choices for a default MySQL variant would be mysql55, mariadb55 or, maybe, mysql56. AFAICT there is no clear-cut, compelling reason to choose one over the others (technical, legal, religious, whatever). Momentum appears to be on the side of MariaDB MariaDB 10.0 is the current release branch and is tracked by the mariadb-10.0 port. Regards, Bradley Giesbrecht (pixilla) signature.asc Description: Message signed with OpenPGP using GPGMail ___ macports-dev mailing list macports-dev@lists.macosforge.org https://lists.macosforge.org/mailman/listinfo/macports-dev
Re: MacPorts-MySQL Dictator wanted, prefer benevolent
On Tue, Sep 30, 2014 at 5:02 PM, Bradley Giesbrecht pixi...@macports.org wrote: That's where the dictator comes in. At the moment, I would say the obvious choices for a default MySQL variant would be mysql55, mariadb55 or, maybe, mysql56. AFAICT there is no clear-cut, compelling reason to choose one over the others (technical, legal, religious, whatever). Momentum appears to be on the side of MariaDB Agreed. In particular, most Linux distributions have adopted MariaDB as their standard. (No doubt to the annoyance of the Percona adherents) -- brandon s allbery kf8nh sine nomine associates allber...@gmail.com ballb...@sinenomine.net unix, openafs, kerberos, infrastructure, xmonadhttp://sinenomine.net ___ macports-dev mailing list macports-dev@lists.macosforge.org https://lists.macosforge.org/mailman/listinfo/macports-dev