Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 601614 - dev-lang/php-7 - htmltidy-20090325-r2 - tidy-html5 packages which cannot be * installed at the same time on the same system
Summary: dev-lang/php-7 - htmltidy-20090325-r2 - tidy-html5 packages which cannot be ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: PHP Bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-12-04 19:44 UTC by Juergen Rose
Modified: 2016-12-09 04:40 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Juergen Rose 2016-12-04 19:44:17 UTC
'emerge -vt --update --newuse --deep --with-bdeps=y --backtrack=30  world' fails with:
...
[nomerge       ] www-apps/mediawiki-1.27.1:1.27.1::gentoo  USE="imagemagick mysql postgres sqlite -vhosts" 
[nomerge       ]  virtual/httpd-php-7.0:7.0::gentoo 
[ebuild  N     ]   dev-lang/php-7.0.13:7.0::gentoo  USE="apache2 berkdb bzip2 calendar cgi cli crypt ctype curl exif fileinfo filter fpm ftp gd gdbm gmp hash iconv imap ipv6 json kerberos ldap mysql mysqli nls odbc opcache pcntl pdo phar posix postgres readline session simplexml snmp soap sockets spell sqlite ssl systemd threads tidy tokenizer truetype unicode xml xmlreader xmlrpc xmlwriter xpm zip zlib -bcmath -cdb -cjk -debug -embed -enchant (-firebird) -flatfile (-frontbase) -inifile -intl -iodbc -ldap-sasl -libedit -libressl -mhash -mssql -oci8-instant-client -phpdbg -qdbm -recode (-selinux) -sharedmem -sysvipc -wddx -webp -xslt" 0 KiB
[ebuild  N     ]  dev-lang/php-7.1.0:7.1::gentoo  USE="apache2 berkdb bzip2 calendar cgi cli crypt ctype curl exif fileinfo filter fpm ftp gd gdbm gmp hash iconv imap ipv6 json kerberos ldap mysql mysqli nls odbc opcache pcntl pdo phar posix postgres readline session simplexml snmp soap sockets spell sqlite ssl systemd threads tidy tokenizer truetype unicode xml xmlreader xmlrpc xmlwriter xpm zip zlib -bcmath -cdb -cjk -debug -embed -enchant (-firebird) -flatfile (-frontbase) -inifile -intl -iodbc -ldap-sasl -libedit -libressl -mhash -mssql -oci8-instant-client -phpdbg -qdbm -recode (-selinux) -sharedmem -sysvipc {-test} -wddx -webp -xslt" 12,494 KiB
...
 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

  (app-text/htmltidy-20090325-r2:0/0::gentoo, ebuild scheduled for merge) pulled in by
    app-text/htmltidy required by (dev-lang/php-7.0.13:7.0/7.0::gentoo, ebuild scheduled for merge)
    app-text/htmltidy required by (dev-python/utidylib-0.3:0/0::gentoo, ebuild scheduled for merge)

  (app-text/tidy-html5-5.2.0:0/0::gentoo, installed) pulled in by
    app-text/tidy-html5 required by (dev-lang/php-7.1.0:7.1/7.1::gentoo, ebuild scheduled for merge)
Comment 1 Michael Orlitzky gentoo-dev 2016-12-08 12:33:16 UTC
Hmmm, I didn't consider this when I changed the dependencies of php:7.1. In the 7.0 series, we depend on app-text/htmltidy, because that's all that upstream supports. In 7.1, upstream supports both, but I opted to accept only app-text/tidy-html5, because app-text/htmltidy was abandoned and has unfixed security problems (see bug #564884).

I guess we have three choices:

1. Do nothing. Users can't install php:7.0 and php:7.1 at the same time 
   with USE=tidy.

2. Try to backport the patch (I wrote it) for php:7.1 to php:7.0. This is
   the nicest for users, but means we have to carry an unofficial patch for
   a few years.

3. Let php:7.1 use htmltidy as well. This is the easiest, but perpetuates
   the use of a library we're trying to get rid of.

I'm leaning towards #3, but I'll think about it.
Comment 2 Michael Orlitzky gentoo-dev 2016-12-09 04:40:19 UTC
I took the lazy way out for now and followed upstream. If htmltidy's situation becomes more dire, I'll reconsider.

commit 685ee720dc8485bdfa3e513daa5b5b8f07d047d0
Author: Michael Orlitzky <mjo@gentoo.org>
Date:   Thu Dec 8 19:35:40 2016 -0500

    dev-lang/php: allow app-text/htmltidy in php:7.1.

    To help phase out the abandoned and buggy app-text/htmltidy, I tried
    to make the new php:7.1 depend on app-text/tidy-html5
    instead. However, since older versions of PHP do not support
    tidy-html5, that causes a problem: php:7.1 cannot be installed
    alongside the older versions when USE=tidy is set for both of them.

    This solution is somewhat of a cop out, allowing htmltidy to be used
    in php:7.1 as a last resort. The alternative would have been to
    backport the tidy-html5 support to (both) older versions of PHP. That
    may eventually become necessary if it looks like htmltidy will be
    masked for removal; however, for now, this is the path of least
    resistance.

    Gentoo-Bug: 601614

    Package-Manager: portage-2.3.0