diff options
18 files changed, 301 insertions, 1098 deletions
diff --git a/dev-php/PHPExcel/Manifest b/dev-php/PHPExcel/Manifest deleted file mode 100644 index 32a85783..00000000 --- a/dev-php/PHPExcel/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST PHPExcel-1.8.1.tar.gz 1783922 BLAKE2B a58cc2d0650134efd40109c26b267e3dd0d85085d0190f87e576fc9056e2c327c287ccb3e5502e4c24c07c32102fd9bc2eb0d5f6ff8bf25fa5ddbee4f28d1ea2 SHA512 ad8763b912ae99995554590440e7e50c299223305e29c8c70e93de6ed4f153187cb9489675d471410fd26846ec28f2a3db533b252927fc8eef0faacd5a1485e9 diff --git a/dev-php/PHPExcel/PHPExcel-1.8.1.ebuild b/dev-php/PHPExcel/PHPExcel-1.8.1.ebuild deleted file mode 100644 index fea2eaac..00000000 --- a/dev-php/PHPExcel/PHPExcel-1.8.1.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="PHP library for reading and writing spreadsheet files" -HOMEPAGE="https://github.com/PHPOffice/PHPExcel" -SRC_URI="https://github.com/PHPOffice/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="GPL-1" -SLOT="0" -KEYWORDS="~amd64" -IUSE="examples" - -RDEPEND=">=dev-lang/php-5.2[zip,xml,gd]" - -src_install() { - insinto "/usr/share/php" - doins -r Classes/PHPExcel.php Classes/PHPExcel - - dodoc changelog.txt - - if use examples ; then - insinto /usr/share/${PN}/examples - doins -r Examples/* - fi -} diff --git a/dev-php/PHPExcel/metadata.xml b/dev-php/PHPExcel/metadata.xml deleted file mode 100644 index 82f7232e..00000000 --- a/dev-php/PHPExcel/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="person"> - <email>bertrand@jacquin.bzh</email> - <name>Bertrand Jacquin</name> - </maintainer> -</pkgmetadata> diff --git a/dev-php/libphutil/files/20190930-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch b/dev-php/libphutil/files/20190930-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch deleted file mode 100644 index a9470208..00000000 --- a/dev-php/libphutil/files/20190930-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 4a9a859deebe92e281111e0800a1fa64e0f9e3a7 Mon Sep 17 00:00:00 2001 -From: Bertrand Jacquin <bertrand@jacquin.bzh> -Date: Tue, 13 Aug 2013 16:07:58 +0200 -Subject: [PATCH] Remove the usage of local SSL certificates and use system - provided by ca-certificates. - ---- - src/future/http/HTTPSFuture.php | 11 ++--------- - 1 file changed, 2 insertions(+), 9 deletions(-) - -diff --git a/src/future/http/HTTPSFuture.php b/src/future/http/HTTPSFuture.php -index 212a5e2ada30..45e05c6737f1 100644 ---- a/src/future/http/HTTPSFuture.php -+++ b/src/future/http/HTTPSFuture.php -@@ -343,28 +343,21 @@ final class HTTPSFuture extends BaseHTTPFuture { - // `setCABundle()` or similar. - // - Then, check if a global bundle is set explicitly for all requests, - // via `setGlobalCABundle()` or similar. -- // - Then, if a local custom.pem exists, use that, because it probably -- // means that the user wants to override everything (also because the -- // user might not have access to change the box's php.ini to add -- // curl.cainfo). - // - Otherwise, try using curl.cainfo. If it's set explicitly, it's - // probably reasonable to try using it before we fall back to what - // libphutil ships with. -- // - Lastly, try the default that libphutil ships with. If it doesn't -+ // - Lastly, try the default from ca-certificates. If it doesn't - // work, give up and yell at the user. - - if (!$this->getCABundle()) { -- $caroot = dirname(phutil_get_library_root('phutil')).'/resources/ssl/'; - $ini_val = ini_get('curl.cainfo'); - if (self::getGlobalCABundle()) { - $this->setCABundleFromPath(self::getGlobalCABundle()); -- } else if (Filesystem::pathExists($caroot.'custom.pem')) { -- $this->setCABundleFromPath($caroot.'custom.pem'); - } else if ($ini_val) { - // TODO: We can probably do a pathExists() here, even. - $this->setCABundleFromPath($ini_val); - } else { -- $this->setCABundleFromPath($caroot.'default.pem'); -+ $this->setCABundleFromPath('/etc/ssl/certs/ca-certificates.crt'); - } - } - diff --git a/dev-php/libphutil/libphutil-20190930.ebuild b/dev-php/libphutil/libphutil-20190930.ebuild deleted file mode 100644 index f2cbebe1..00000000 --- a/dev-php/libphutil/libphutil-20190930.ebuild +++ /dev/null @@ -1,132 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit eutils toolchain-funcs git-r3 - -DESCRIPTION="Collection of utility classes and functions for PHP used by phabricator" -HOMEPAGE="https://www.phacility.com" -EGIT_REPO_URI="https://github.com/phacility/libphutil.git" -EGIT_BRANCH="stable" -EGIT_COMMIT="1750586fdc50a6cd98adba4aa2f5a7649bd91dbe" - -LICENSE="Apache-2.0" -SLOT="stable" -KEYWORDS="~amd64 ~x86" -IUSE="ssl test" - -DEPEND="!${CATEGORY}/${PN}:0 - virtual/awk:0 - test? ( - sys-devel/bison:0 - >=sys-devel/flex-2.5.35:0 - =www-client/arcanist-20191119:stable - dev-lang/php[cli] - )" -RDEPEND="dev-lang/php[curl,iconv,json,mysql,mysqli,pcntl,ssl?,unicode]" - -PATCHES=( - "${FILESDIR}/${PV}-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch" -) - -src_prepare() { - default - - git log --format='%H %ct' -n 1 > "${S}/GIT_COMMIT_INFO" - git remote add origin "${EGIT_REPO_URI}" - git remote -v > "${S}/GIT_REMOTE_INFO" - - if use test ; then - tc-export AR CXX - fi - - find "${S}" -type f -name .gitignore -print0 \ - | xargs -0 --no-run-if-empty -- \ - rm - - rm -r resources/ssl - rm -r scripts/daemon/torture - rm scripts/build_xhpast.php - rm src/parser/xhpast/bin/xhpast.exe - - # Replace 'env' shebang to files it point to - find "${S}" -type f \ - | sort \ - | xargs -n 1 --no-run-if-empty -- \ - awk 'NR == 1 && /^#!\/usr\/bin\/env/ {print FILENAME}' \ - | while read ; do - set -- $(sed -ne '1 s:^#!\([^ ]*\) ::p;q' ${REPLY}) - cmd="$1" ; shift ; args="$@" - - case "${cmd}" in - bash|php) ;; - *) continue ;; - esac - - path="$(type -p ${cmd})" || continue - [[ -z "${path}" ]] && continue - - einfo "Replace ${REPLY/#${S}\/} shebang to #!${path} ${args}" - sed -i \ - -e "1 s:^#!.*:#!${path} ${args}:" \ - "${REPLY}" - eend $? - done -} - -src_compile() { - if use test ; then - cd support/xhpast - - # Avoid sandbox violation for dev-lang/php[snmp] - # php -f generate_nodes.php' - # - # * ACCESS DENIED: open_wr: /var/lib/net-snmp/mib_indexes/0 - # abs_path: /var/lib/net-snmp/mib_indexes/0 - # res_path: /var/lib/net-snmp/mib_indexes/0 - # /usr/lib64/libsandbox.so(+0xd9d1)[0x7f226c8899d1] - # /usr/lib64/libsandbox.so(+0xdaf8)[0x7f226c889af8] - # /usr/lib64/libsandbox.so(+0x59cf)[0x7f226c8819cf] - # /usr/lib64/libsandbox.so(fopen+0x7c)[0x7f226c8843ec] - # /usr/lib64/libnetsnmp.so.30(netsnmp_mibindex_new+0x48)[0x7f22695f55e8] - # /usr/lib64/libnetsnmp.so.30(add_mibdir+0x9c)[0x7f226960a00c] - # /usr/lib64/libnetsnmp.so.30(netsnmp_init_mib+0xca)[0x7f22695f4bea] - # /usr/lib64/libnetsnmp.so.30(init_snmp+0x32d)[0x7f226961c2dd] - # php(zm_startup_snmp+0x51)[0x7f226cf81e11] - # php(zend_startup_module_ex+0x11a)[0x7f226d0bccea] - # /proc/15834/cmdline: php -f generate_nodes.php - # - # See snmp_config(5) - export SNMP_PERSISTENT_DIR="${T}" - - emake - emake install - fi -} - -src_test() { - arc unit --everything --no-coverage || die "arc unit failed" -} - -src_install() { - insinto "/usr/share/${PN}" - doins GIT_COMMIT_INFO GIT_REMOTE_INFO - - insinto "/usr/share/php/${PN}" - doins -r externals resources scripts src - - if use test ; then - fperms 755 "/usr/share/php/${PN}/src/parser/xhpast/bin/xhpast" - dosym "../share/php/${PN}/src/parser/xhpast/bin/xhpast" /usr/bin/xhpast - fi - - # Make executable all shebanged files - find "${ED}" -type f \ - | xargs -n 1 --no-run-if-empty -- \ - awk 'NR == 1 && /^#!/ {print FILENAME}' \ - | sed -e "s:${ED}:/:" \ - | xargs --no-run-if-empty -- \ - fperms 755 - - dodoc NOTICE README.md -} diff --git a/dev-php/libphutil/libphutil-9999.ebuild b/dev-php/libphutil/libphutil-9999.ebuild deleted file mode 100644 index 491cd686..00000000 --- a/dev-php/libphutil/libphutil-9999.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit eutils toolchain-funcs git-r3 - -DESCRIPTION="Collection of utility classes and functions for PHP used by phabricator" -HOMEPAGE="https://www.phacility.com" -EGIT_REPO_URI="https://github.com/phacility/libphutil.git" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="" -IUSE="ssl test" - -DEPEND="!${CATEGORY}/${PN}:stable - virtual/awk:0 - test? ( - sys-devel/bison:0 - >=sys-devel/flex-2.5.35:0 - =www-client/arcanist-${PV}:0 - dev-lang/php[cli] - )" -RDEPEND="dev-lang/php[curl,iconv,json,mysql,mysqli,pcntl,ssl?,unicode]" - -PATCHES=( - "${FILESDIR}/${PV}-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch" -) - -src_prepare() { - default - - git log --format='%H %ct' -n 1 > "${S}/GIT_COMMIT_INFO" - git remote add origin "${EGIT_REPO_URI}" - git remote -v > "${S}/GIT_REMOTE_INFO" - - if use test ; then - tc-export AR CXX - fi - - find "${S}" -type f -name .gitignore -print0 \ - | xargs -0 --no-run-if-empty -- \ - rm - - rm -r resources/ssl - rm -r scripts/daemon/torture - rm scripts/build_xhpast.sh - rm src/parser/xhpast/bin/xhpast.exe - - # Replace 'env' shebang to files it point to - find "${S}" -type f \ - | sort \ - | xargs -n 1 --no-run-if-empty -- \ - awk 'NR == 1 && /^#!\/usr\/bin\/env/ {print FILENAME}' \ - | while read ; do - set -- $(sed -ne '1 s:^#!\([^ ]*\) ::p;q' ${REPLY}) - cmd="$1" ; shift ; args="$@" - - case "${cmd}" in - bash|php) ;; - *) continue ;; - esac - - path="$(type -p ${cmd})" || continue - [[ -z "${path}" ]] && continue - - einfo "Replace ${REPLY/#${S}\/} shebang to #!${path} ${args}" - sed -i \ - -e "1 s:^#!.*:#!${path} ${args}:" \ - "${REPLY}" - eend $? - done -} - -src_compile() { - if use test ; then - cd support/xhpast - - # Avoid sandbox violation for dev-lang/php[snmp] - # php -f generate_nodes.php' - # - # * ACCESS DENIED: open_wr: /var/lib/net-snmp/mib_indexes/0 - # abs_path: /var/lib/net-snmp/mib_indexes/0 - # res_path: /var/lib/net-snmp/mib_indexes/0 - # /usr/lib64/libsandbox.so(+0xd9d1)[0x7f226c8899d1] - # /usr/lib64/libsandbox.so(+0xdaf8)[0x7f226c889af8] - # /usr/lib64/libsandbox.so(+0x59cf)[0x7f226c8819cf] - # /usr/lib64/libsandbox.so(fopen+0x7c)[0x7f226c8843ec] - # /usr/lib64/libnetsnmp.so.30(netsnmp_mibindex_new+0x48)[0x7f22695f55e8] - # /usr/lib64/libnetsnmp.so.30(add_mibdir+0x9c)[0x7f226960a00c] - # /usr/lib64/libnetsnmp.so.30(netsnmp_init_mib+0xca)[0x7f22695f4bea] - # /usr/lib64/libnetsnmp.so.30(init_snmp+0x32d)[0x7f226961c2dd] - # php(zm_startup_snmp+0x51)[0x7f226cf81e11] - # php(zend_startup_module_ex+0x11a)[0x7f226d0bccea] - # /proc/15834/cmdline: php -f generate_nodes.php - # - # See snmp_config(5) - export SNMP_PERSISTENT_DIR="${T}" - - emake - emake install - fi -} - -src_test() { - arc unit --everything --no-coverage || die "arc unit failed" -} - -src_install() { - insinto "/usr/share/${PN}" - doins GIT_COMMIT_INFO GIT_REMOTE_INFO - - insinto "/usr/share/php/${PN}" - doins -r externals resources scripts src - - if use test ; then - fperms 755 "/usr/share/php/${PN}/src/parser/xhpast/bin/xhpast" - dosym "../share/php/${PN}/src/parser/xhpast/bin/xhpast" /usr/bin/xhpast - fi - - # Make executable all shebanged files - find "${ED}" -type f \ - | xargs -n 1 --no-run-if-empty -- \ - awk 'NR == 1 && /^#!/ {print FILENAME}' \ - | sed -e "s:${ED}:/:" \ - | xargs --no-run-if-empty -- \ - fperms 755 - - dodoc NOTICE README.md -} diff --git a/dev-php/libphutil/metadata.xml b/dev-php/libphutil/metadata.xml deleted file mode 100644 index 82f7232e..00000000 --- a/dev-php/libphutil/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="person"> - <email>bertrand@jacquin.bzh</email> - <name>Bertrand Jacquin</name> - </maintainer> -</pkgmetadata> diff --git a/www-client/arcanist/arcanist-20191119.ebuild b/www-client/arcanist/arcanist-20220527.ebuild index 0751a00f..5e154b7c 100644 --- a/www-client/arcanist/arcanist-20191119.ebuild +++ b/www-client/arcanist/arcanist-20220527.ebuild @@ -1,53 +1,54 @@ # Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -PYTHON_COMPAT=( python{3_8,3_9} ) +PYTHON_COMPAT=( python3_{9..11} ) PYTHON_REQ_USE="ncurses" -inherit bash-completion-r1 python-single-r1 git-r3 +inherit toolchain-funcs python-single-r1 git-r3 DESCRIPTION="Command-line tool for Phabricator" HOMEPAGE="https://www.phacility.com" EGIT_REPO_URI="https://github.com/phacility/arcanist.git" EGIT_BRANCH="stable" -EGIT_COMMIT="bac2028421a4be6e34e08764bbbda49e68b3a604" +EGIT_COMMIT="b6babd9a07f428c68863cb38f2fa87114e9ca2eb" LICENSE="Apache-2.0" SLOT="stable" KEYWORDS="~amd64 ~x86" IUSE="git lint mercurial subversion ssl test" -REQUIRED_USE="test? ( lint )" +REQUIRED_USE="test? ( lint ) + ${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" -DEPEND="!${CATEGORY}/${PN}:0 - virtual/awk:0 +DEPEND="virtual/awk:0 test? ( + sys-devel/bison:0 + >=sys-devel/flex-2.5.35:0 dev-lang/php[xmlwriter] - =dev-php/libphutil-20190930:stable[test] )" -RDEPEND="dev-lang/php[cli,curl,json,ssl?] - =dev-php/libphutil-20190930:stable[ssl?] +RDEPEND="dev-lang/php[curl,iconv,mysql,mysqli,pcntl,ssl?,unicode] git? ( dev-vcs/git:0 ) mercurial? ( dev-vcs/mercurial:0 ) subversion? ( dev-vcs/subversion:0 ) lint? ( app-admin/puppet-lint:0 - dev-haskell/hlint:0 dev-php/PHP_CodeSniffer:0 $(python_gen_cond_dep ' - dev-python/pylint:0[${PYTHON_MULTI_USEDEP}] - dev-python/flake8:0[${PYTHON_MULTI_USEDEP}] + dev-python/pylint:0[${PYTHON_USEDEP}] + dev-python/flake8:0[${PYTHON_USEDEP}] ') dev-util/cppcheck:0 dev-util/cpplint:0 - net-libs/nodejs:0[npm] - )" + net-libs/nodejs[npm] + ) + ${PYTHON_DEPS}" PATCHES=( - "${FILESDIR}/${PV}-MINOR-Disable-self-upgrade.patch" - "${FILESDIR}/${PV}-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch" - "${FILESDIR}/${PV}-breakout-migrate-to-python3.patch" + "${FILESDIR}/${PV}-MEDIUM-get-VERSION-from-usr-share-PN-GIT_COMMIT_INFO.patch" + "${FILESDIR}/${PV}-MINOR-disable-self-upgrade.patch" + "${FILESDIR}/${PV}-MEDIUM-use-system-provided-by-ca-certificates.patch" ) src_test() { @@ -72,9 +73,9 @@ src_test() { # TO INSTALL: Install Golint using `go get github.com/golang/lint/golint`. # Set config in .git/arc/config for ArcanistPyLintLinter - bin/arc set-config --local lint.pylint.codes.advice '^(C|R).*' > /dev/null - bin/arc set-config --local lint.pylint.codes.error '^(E|F).*' > /dev/null - bin/arc set-config --local lint.pylint.codes.warning '^W.*' > /dev/null + bin/arc set-config --local lint.pylint.codes.advice '^(C|R).*' > /dev/null || die + bin/arc set-config --local lint.pylint.codes.error '^(E|F).*' > /dev/null || die + bin/arc set-config --local lint.pylint.codes.warning '^W.*' > /dev/null || die # + https://secure.phabricator.com/T7170 @@ -84,15 +85,21 @@ src_test() { src_prepare() { default - git log --format='%H %ct' -n 1 > "${S}/GIT_COMMIT_INFO" + git log --format='%ct%x01%H' -n 1 > "${S}/GIT_COMMIT_INFO" git remote add origin "${EGIT_REPO_URI}" git remote -v > "${S}/GIT_REMOTE_INFO" + if use test ; then + tc-export AR CXX + fi + find "${S}" -type f -name .gitignore -print0 \ | xargs -0 --no-run-if-empty -- \ - rm + rm || die - rm bin/*.bat + rm bin/*.bat || die + rm -r resources/ssl || die + rm ./src/parser/xhpast/bin/xhpast.exe || die # Replace 'env' shebang to files it point to find "${S}" -type f \ @@ -114,22 +121,57 @@ src_prepare() { einfo "Replace ${REPLY/#${S}\/} shebang to #!${path} ${args}" sed -i \ -e "1 s:^#!.*:#!${path} ${args}:" \ - "${REPLY}" - eend $? + "${REPLY}" || die done } -src_install() { - newbashcomp resources/shell/bash-completion "arc" +src_compile() { + if use test ; then + cd support/xhpast + + # Avoid sandbox violation for dev-lang/php[snmp] + # php -f generate_nodes.php' + # + # * ACCESS DENIED: open_wr: /var/lib/net-snmp/mib_indexes/0 + # abs_path: /var/lib/net-snmp/mib_indexes/0 + # res_path: /var/lib/net-snmp/mib_indexes/0 + # /usr/lib64/libsandbox.so(+0xd9d1)[0x7f226c8899d1] + # /usr/lib64/libsandbox.so(+0xdaf8)[0x7f226c889af8] + # /usr/lib64/libsandbox.so(+0x59cf)[0x7f226c8819cf] + # /usr/lib64/libsandbox.so(fopen+0x7c)[0x7f226c8843ec] + # /usr/lib64/libnetsnmp.so.30(netsnmp_mibindex_new+0x48)[0x7f22695f55e8] + # /usr/lib64/libnetsnmp.so.30(add_mibdir+0x9c)[0x7f226960a00c] + # /usr/lib64/libnetsnmp.so.30(netsnmp_init_mib+0xca)[0x7f22695f4bea] + # /usr/lib64/libnetsnmp.so.30(init_snmp+0x32d)[0x7f226961c2dd] + # php(zm_startup_snmp+0x51)[0x7f226cf81e11] + # php(zend_startup_module_ex+0x11a)[0x7f226d0bccea] + # /proc/15834/cmdline: php -f generate_nodes.php + # + # See snmp_config(5) + export SNMP_PERSISTENT_DIR="${T}" + + emake + emake install + fi +} +src_install() { insinto "/usr/share/${PN}" doins GIT_COMMIT_INFO GIT_REMOTE_INFO insinto "/usr/share/php/${PN}" doins -r bin externals resources scripts src - python_scriptinto "/usr/share/php/${PN}/scripts" - python_doscript scripts/breakout.py + insinto "/usr/share/php/${PN}/support" + doins -r support/init support/lib + + python_scriptinto "/usr/share/php/${PN}/support/arcanoid" + python_doscript support/arcanoid/arcanoid.py + + if use test ; then + fperms 755 "/usr/share/php/${PN}/src/parser/xhpast/bin/xhpast" + dosym "../share/php/${PN}/src/parser/xhpast/bin/xhpast" /usr/bin/xhpast + fi # Make executable all shebanged files find "${ED}" -type f \ diff --git a/www-client/arcanist/arcanist-9999.ebuild b/www-client/arcanist/arcanist-9999.ebuild deleted file mode 100644 index dcebeec8..00000000 --- a/www-client/arcanist/arcanist-9999.ebuild +++ /dev/null @@ -1,151 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python{3_8,3_9} ) -PYTHON_REQ_USE="ncurses" - -inherit bash-completion-r1 python-single-r1 git-r3 - -DESCRIPTION="Command-line tool for Phabricator" -HOMEPAGE="https://www.phacility.com" -EGIT_REPO_URI="https://github.com/phacility/arcanist.git" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="" -IUSE="git lint mercurial subversion ssl test" -REQUIRED_USE="test? ( lint )" - -DEPEND="!${CATEGORY}/${PN}:stable - virtual/awk:0 - test? ( - dev-lang/php[xmlwriter] - =dev-php/libphutil-${PV}:0[test] - )" -RDEPEND="dev-lang/php[cli,curl,json,ssl?] - =dev-php/libphutil-${PV}:0[ssl?] - git? ( dev-vcs/git:0 ) - mercurial? ( dev-vcs/mercurial:0 ) - subversion? ( dev-vcs/subversion:0 ) - lint? ( - app-admin/puppet-lint:0 - dev-haskell/hlint:0 - dev-php/PHP_CodeSniffer:0 - $(python_gen_cond_dep ' - dev-python/pylint:0[${PYTHON_MULTI_USEDEP}] - dev-python/flake8:0[${PYTHON_MULTI_USEDEP}] - ') - dev-util/cppcheck:0 - dev-util/cpplint:0 - net-libs/nodejs:0[npm] - )" - -PATCHES=( - "${FILESDIR}/${PV}-MINOR-Disable-self-upgrade.patch" - "${FILESDIR}/${PV}-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch" - "${FILESDIR}/${PV}-breakout-migrate-to-python3.patch" -) - -src_test() { - einfo "Note that you need to install some Node JS script manually:" - einfo " npm install -g coffeelint" - einfo " npm install -g csslint" - einfo " npm install -g jscs" - einfo " npm install -g jshint" - einfo " npm install -g jsonlint" - einfo " npm install -g less" - - local GIT_NAME="${FUNCNAME} for ${CATEGORY}/${PF}" - local GIT_EMAIL="portage@localhost" - - export GIT_AUTHOR_NAME="${GIT_NAME}" - export GIT_AUTHOR_EMAIL="${GIT_EMAIL}" - - export GIT_COMMITTER_NAME="${GIT_NAME}" - export GIT_COMMITTER_EMAIL="${GIT_EMAIL}" - - # Unable to locate binary "golint" to run linter ArcanistGoLintLinter. You may need to install the binary, or adjust your linter configuration. - # TO INSTALL: Install Golint using `go get github.com/golang/lint/golint`. - - # Set config in .git/arc/config for ArcanistPyLintLinter - bin/arc set-config --local lint.pylint.codes.advice '^(C|R).*' > /dev/null - bin/arc set-config --local lint.pylint.codes.error '^(E|F).*' > /dev/null - bin/arc set-config --local lint.pylint.codes.warning '^W.*' > /dev/null - - # + https://secure.phabricator.com/T7170 - - bin/arc unit --everything --no-coverage || die "arc unit failed" -} - -src_prepare() { - default - - git log --format='%H %ct' -n 1 > "${S}/GIT_COMMIT_INFO" - git remote add origin "${EGIT_REPO_URI}" - git remote -v > "${S}/GIT_REMOTE_INFO" - - find "${S}" -type f -name .gitignore -print0 \ - | xargs -0 --no-run-if-empty -- \ - rm - - rm bin/*.bat - - # Replace 'env' shebang to files it point to - find "${S}" -type f \ - | sort \ - | xargs -n 1 --no-run-if-empty -- \ - awk 'NR == 1 && /^#!\/usr\/bin\/env/ {print FILENAME}' \ - | while read ; do - set -- $(sed -ne '1 s:^#!\([^ ]*\) ::p;q' ${REPLY}) - cmd="$1" ; shift ; args="$@" - - case "${cmd}" in - bash|php) ;; - *) continue ;; - esac - - path="$(type -p ${cmd})" || continue - [[ -z "${path}" ]] && continue - - einfo "Replace ${REPLY/#${S}\/} shebang to #!${path} ${args}" - sed -i \ - -e "1 s:^#!.*:#!${path} ${args}:" \ - "${REPLY}" - eend $? - done -} - -src_install() { - newbashcomp resources/shell/bash-completion "arc" - - insinto "/usr/share/${PN}" - doins GIT_COMMIT_INFO GIT_REMOTE_INFO - - insinto "/usr/share/php/${PN}" - doins -r bin externals resources scripts src - - python_scriptinto "/usr/share/php/${PN}/scripts" - python_doscript scripts/breakout.py - - # Make executable all shebanged files - find "${ED}" -type f \ - | xargs -n 1 --no-run-if-empty -- \ - awk 'NR == 1 && /^#!/ {print FILENAME}' \ - | sed -e "s:${ED}:/:" \ - | xargs --no-run-if-empty -- \ - fperms 755 - - dosym "../share/php/${PN}/bin/arc" /usr/bin/arc - - dodoc NOTICE README.md -} - -pkg_postinst() { - if use lint; then - elog - elog "Some linter need external NodeJS script. To install them, use:" - elog " npm install -g csslint" - fi -} diff --git a/www-client/arcanist/files/20191119-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch b/www-client/arcanist/files/20191119-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch deleted file mode 100644 index faffe615..00000000 --- a/www-client/arcanist/files/20191119-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 32df2ddf6e67684d3e333b89b8cbbdbb6e32d387 Mon Sep 17 00:00:00 2001 -From: Bertrand Jacquin <bertrand@jacquin.bzh> -Date: Sun, 18 Dec 2016 01:59:52 +0000 -Subject: [PATCH 1/2] MEDIUM: Get VERSION for files in - /usr/share/<PN>/GIT_COMMIT_INFO rather than from git - ---- - src/workflow/ArcanistVersionWorkflow.php | 27 +++++++----------------- - 1 file changed, 8 insertions(+), 19 deletions(-) - -diff --git a/src/workflow/ArcanistVersionWorkflow.php b/src/workflow/ArcanistVersionWorkflow.php -index 9c470fc6ea05..fefd972786dc 100644 ---- a/src/workflow/ArcanistVersionWorkflow.php -+++ b/src/workflow/ArcanistVersionWorkflow.php -@@ -35,30 +35,19 @@ EOTEXT - } - - $roots = array( -- 'arcanist' => dirname(phutil_get_library_root('arcanist')), -- 'libphutil' => dirname(phutil_get_library_root('phutil')), -+ 'arcanist', -+ 'libphutil' - ); - -- foreach ($roots as $lib => $root) { -- $working_copy = ArcanistWorkingCopyIdentity::newFromPath($root); -- $configuration_manager = clone $this->getConfigurationManager(); -- $configuration_manager->setWorkingCopyIdentity($working_copy); -- $repository = ArcanistRepositoryAPI::newAPIFromConfigurationManager( -- $configuration_manager); -- -- if (!Filesystem::pathExists($repository->getMetadataPath())) { -+ foreach ($roots as $lib) { -+ $commit_info = "/usr/share/" . $lib . "/GIT_COMMIT_INFO"; -+ if (!Filesystem::pathExists($commit_info)) { - throw new ArcanistUsageException( -- pht('%s is not a git working copy.', $lib)); -+ pht('%s has no version registered in %s.', $lib, $commit_info)); - } - -- // NOTE: Carefully execute these commands in a way that works on Windows -- // until T8298 is properly fixed. See PHI52. -- -- list($commit) = $repository->execxLocal('log -1 --format=%%H'); -- $commit = trim($commit); -- -- list($timestamp) = $repository->execxLocal('log -1 --format=%%ct'); -- $timestamp = trim($timestamp); -+ $stdout = file_get_contents($commit_info); -+ list($commit, $timestamp) = explode(' ', $stdout); - - $console->writeOut( - "%s %s (%s)\n", diff --git a/www-client/arcanist/files/20191119-MINOR-Disable-self-upgrade.patch b/www-client/arcanist/files/20191119-MINOR-Disable-self-upgrade.patch deleted file mode 100644 index c08f801d..00000000 --- a/www-client/arcanist/files/20191119-MINOR-Disable-self-upgrade.patch +++ /dev/null @@ -1,149 +0,0 @@ -From 9d8145b666aef7fd98879b37216383c78dc5859e Mon Sep 17 00:00:00 2001 -From: Bertrand Jacquin <bertrand@jacquin.bzh> -Date: Sun, 18 Dec 2016 02:15:13 +0000 -Subject: [PATCH 2/2] MINOR: Disable self upgrade - ---- - src/__phutil_library_map__.php | 2 - - src/workflow/ArcanistUpgradeWorkflow.php | 112 ----------------------- - 2 files changed, 114 deletions(-) - delete mode 100644 src/workflow/ArcanistUpgradeWorkflow.php - -diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php -index 63a4ee80321d..d3e1b34056bb 100644 ---- a/src/__phutil_library_map__.php -+++ b/src/__phutil_library_map__.php -@@ -391,7 +391,6 @@ phutil_register_library_map(array( - 'ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase.php', - 'ArcanistUnsafeDynamicStringXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistUnsafeDynamicStringXHPASTLinterRule.php', - 'ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase.php', -- 'ArcanistUpgradeWorkflow' => 'workflow/ArcanistUpgradeWorkflow.php', - 'ArcanistUploadWorkflow' => 'workflow/ArcanistUploadWorkflow.php', - 'ArcanistUsageException' => 'exception/ArcanistUsageException.php', - 'ArcanistUseStatementNamespacePrefixXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistUseStatementNamespacePrefixXHPASTLinterRule.php', -@@ -816,7 +815,6 @@ phutil_register_library_map(array( - 'ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', - 'ArcanistUnsafeDynamicStringXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', - 'ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', -- 'ArcanistUpgradeWorkflow' => 'ArcanistWorkflow', - 'ArcanistUploadWorkflow' => 'ArcanistWorkflow', - 'ArcanistUsageException' => 'Exception', - 'ArcanistUseStatementNamespacePrefixXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', -diff --git a/src/workflow/ArcanistUpgradeWorkflow.php b/src/workflow/ArcanistUpgradeWorkflow.php -deleted file mode 100644 -index 50449ef75f27..000000000000 ---- a/src/workflow/ArcanistUpgradeWorkflow.php -+++ /dev/null -@@ -1,112 +0,0 @@ --<?php -- --/** -- * Upgrade arcanist itself. -- */ --final class ArcanistUpgradeWorkflow extends ArcanistWorkflow { -- -- public function getWorkflowName() { -- return 'upgrade'; -- } -- -- public function getCommandSynopses() { -- return phutil_console_format(<<<EOTEXT -- **upgrade** --EOTEXT -- ); -- } -- -- public function getCommandHelp() { -- return phutil_console_format(<<<EOTEXT -- Supports: cli -- Upgrade arcanist and libphutil to the latest versions. --EOTEXT -- ); -- } -- -- public function run() { -- $roots = array( -- 'libphutil' => dirname(phutil_get_library_root('phutil')), -- 'arcanist' => dirname(phutil_get_library_root('arcanist')), -- ); -- -- foreach ($roots as $lib => $root) { -- echo phutil_console_format( -- "%s\n", -- pht('Upgrading %s...', $lib)); -- -- $working_copy = ArcanistWorkingCopyIdentity::newFromPath($root); -- $configuration_manager = clone $this->getConfigurationManager(); -- $configuration_manager->setWorkingCopyIdentity($working_copy); -- $repository = ArcanistRepositoryAPI::newAPIFromConfigurationManager( -- $configuration_manager); -- -- if (!Filesystem::pathExists($repository->getMetadataPath())) { -- throw new ArcanistUsageException( -- pht( -- "%s must be in its git working copy to be automatically upgraded. ". -- "This copy of %s (in '%s') is not in a git working copy.", -- $lib, -- $lib, -- $root)); -- } -- -- $this->setRepositoryAPI($repository); -- -- // NOTE: Don't use requireCleanWorkingCopy() here because it tries to -- // amend changes and generally move the workflow forward. We just want to -- // abort if there are local changes and make the user sort things out. -- $uncommitted = $repository->getUncommittedStatus(); -- if ($uncommitted) { -- $message = pht( -- 'You have uncommitted changes in the working copy for this '. -- 'library:'); -- -- $list = id(new PhutilConsoleList()) -- ->setWrap(false) -- ->addItems(array_keys($uncommitted)); -- -- id(new PhutilConsoleBlock()) -- ->addParagraph($message) -- ->addList($list) -- ->draw(); -- -- throw new ArcanistUsageException( -- pht('`arc upgrade` can only upgrade clean working copies.')); -- } -- -- $branch_name = $repository->getBranchName(); -- if ($branch_name != 'master' && $branch_name != 'stable') { -- throw new ArcanistUsageException( -- pht( -- "%s must be on either branch '%s' or '%s' to be automatically ". -- "upgraded. ". -- "This copy of %s (in '%s') is on branch '%s'.", -- $lib, -- 'master', -- 'stable', -- $lib, -- $root, -- $branch_name)); -- } -- -- chdir($root); -- -- try { -- execx('git pull --rebase'); -- } catch (Exception $ex) { -- // If we failed, try to go back to the old state, then throw the -- // original exception. -- exec_manual('git rebase --abort'); -- throw $ex; -- } -- } -- -- echo phutil_console_format( -- "**%s** %s\n", -- pht('Updated!'), -- pht('Your copy of arc is now up to date.')); -- return 0; -- } -- --} diff --git a/www-client/arcanist/files/20191119-breakout-migrate-to-python3.patch b/www-client/arcanist/files/20191119-breakout-migrate-to-python3.patch deleted file mode 100644 index bd331b28..00000000 --- a/www-client/arcanist/files/20191119-breakout-migrate-to-python3.patch +++ /dev/null @@ -1,77 +0,0 @@ -From a71802a07c658462187b3c76343c3d15909f6872 Mon Sep 17 00:00:00 2001 -From: Bertrand Jacquin <bertrand@jacquin.bzh> -Date: Sat, 11 Jan 2020 21:05:49 +0000 -Subject: [PATCH] breakout: migrate to python3 - -python2 is now deprecated - -note that breakout still works with python2 ---- - scripts/breakout.py | 22 ++++++++++++---------- - 1 file changed, 12 insertions(+), 10 deletions(-) - -diff --git a/scripts/breakout.py b/scripts/breakout.py -index c8c8b18818ad..bea068bd4dde 100755 ---- a/scripts/breakout.py -+++ b/scripts/breakout.py -@@ -1,4 +1,4 @@ --#!/usr/bin/env python2 -+#!/usr/bin/env python3 - import sys - import time - import select -@@ -17,10 +17,10 @@ class Block: - total = 0 - - def __init__(self, x, y, w, h, c): -- self.x = x -- self.y = y -- self.w = w -- self.h = h -+ self.x = int(round(x)) -+ self.y = int(round(y)) -+ self.w = int(round(w)) -+ self.h = int(round(h)) - self.fmt = curses.A_BOLD | curses.color_pair(c) - self.alive = True - for i in range(self.x, self.x + self.w): -@@ -48,8 +48,8 @@ class Ball: - killed = 0 - - def __init__(self, x, y, vx, vy): -- self.x = x -- self.y = y -+ self.x = int(round(x)) -+ self.y = int(round(y)) - self.vx = vx - self.vy = vy - Ball.alive = True -@@ -58,6 +58,8 @@ class Ball: - return True - - def encounter(self, dx, dy): -+ dx = int(round(dx)) -+ dy = int(round(dy)) - ent = grid[self.y + dy + 1][self.x + dx + 1] - if ent and not ent.collide(self): - self.vx -= 2 * dx -@@ -84,8 +86,8 @@ class Ball: - - class Ship: - def __init__(self, x, y): -- self.x = x -- self.y = y -+ self.x = int(round(x)) -+ self.y = int(round(y)) - self.hw = 10 - self.v = 4 - self.last = 1 -@@ -164,7 +166,7 @@ def main(stdscr): - - colors = [ 1, 3, 2, 6, 4, 5 ] - h = height / 10 -- for x in range(1, width / 7 - 1): -+ for x in range(1, int(width / 7) - 1): - for y in range(1, 7): - entities.append(Block(x * 7, - y * h + x / 2 % 2, diff --git a/www-client/arcanist/files/20220527-MEDIUM-get-VERSION-from-usr-share-PN-GIT_COMMIT_INFO.patch b/www-client/arcanist/files/20220527-MEDIUM-get-VERSION-from-usr-share-PN-GIT_COMMIT_INFO.patch new file mode 100644 index 00000000..91e23014 --- /dev/null +++ b/www-client/arcanist/files/20220527-MEDIUM-get-VERSION-from-usr-share-PN-GIT_COMMIT_INFO.patch @@ -0,0 +1,50 @@ +From 298a6eb1bdca82209e973c17e1966c5d51715c1f Mon Sep 17 00:00:00 2001 +From: Bertrand Jacquin <bertrand@jacquin.bzh> +Date: Sun, 18 Dec 2016 01:59:52 +0000 +Subject: [PATCH] MEDIUM: get VERSION from /usr/share/<PN>/GIT_COMMIT_INFO + rather than git + +--- + .../workflow/ArcanistVersionWorkflow.php | 22 +++++-------------- + 1 file changed, 6 insertions(+), 16 deletions(-) + +diff --git a/src/toolset/workflow/ArcanistVersionWorkflow.php b/src/toolset/workflow/ArcanistVersionWorkflow.php +index 6bc673f56e44..6939adbfcb1c 100644 +--- a/src/toolset/workflow/ArcanistVersionWorkflow.php ++++ b/src/toolset/workflow/ArcanistVersionWorkflow.php +@@ -44,29 +44,19 @@ EOTEXT + } + + $roots = array( +- 'arcanist' => dirname(phutil_get_library_root('arcanist')), ++ 'arcanist' + ); + +- foreach ($roots as $lib => $root) { +- $working_copy = ArcanistWorkingCopy::newFromWorkingDirectory($root); ++ foreach ($roots as $lib) { ++ $commit_info = "/usr/share/" . $lib . "/GIT_COMMIT_INFO"; + +- $repository_api = $working_copy->getRepositoryAPI(); +- $is_git = ($repository_api instanceof ArcanistGitAPI); +- +- if (!$is_git) { ++ if (!Filesystem::pathExists($commit_info)) { + throw new PhutilArgumentUsageException( +- pht( +- 'Library "%s" (at "%s") is not a Git working copy, so no version '. +- 'information can be provided.', +- $lib, +- Filesystem::readablePath($root))); ++ pht('%s has no version registered in %s.', $lib, $commit_info)); + } + +- list($commit) = $repository_api->execxLocal( +- 'log -1 --format=%s', +- '%ct%x01%H'); ++ $commit = file_get_contents($commit_info); + $commit = trim($commit); +- + list($timestamp, $commit) = explode("\1", $commit); + + $console->writeOut( diff --git a/dev-php/libphutil/files/9999-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch b/www-client/arcanist/files/20220527-MEDIUM-use-system-provided-by-ca-certificates.patch index 5b4a8a2d..c5c38e9b 100644 --- a/dev-php/libphutil/files/9999-Remove-the-usage-of-local-SSL-certificates-and-use-s.patch +++ b/www-client/arcanist/files/20220527-MEDIUM-use-system-provided-by-ca-certificates.patch @@ -1,18 +1,17 @@ -From 49b625bb023f8534c8be74c7f3f268c5a5f87762 Mon Sep 17 00:00:00 2001 +From b20cf84b58bb922d6fa99beee3a4160fed4f169b Mon Sep 17 00:00:00 2001 From: Bertrand Jacquin <bertrand@jacquin.bzh> Date: Tue, 13 Aug 2013 16:07:58 +0200 -Subject: [PATCH] Remove the usage of local SSL certificates and use system - provided by ca-certificates. +Subject: [PATCH] MEDIUM: use system provided by ca-certificates --- - src/future/http/HTTPSFuture.php | 11 ++--------- - 1 file changed, 2 insertions(+), 9 deletions(-) + src/future/http/HTTPSFuture.php | 13 ++----------- + 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/future/http/HTTPSFuture.php b/src/future/http/HTTPSFuture.php -index 212a5e2ada30..45e05c6737f1 100644 +index 48824fb1848b..4351a769397e 100644 --- a/src/future/http/HTTPSFuture.php +++ b/src/future/http/HTTPSFuture.php -@@ -343,28 +343,21 @@ final class HTTPSFuture extends BaseHTTPFuture { +@@ -371,30 +371,21 @@ final class HTTPSFuture extends BaseHTTPFuture { // `setCABundle()` or similar. // - Then, check if a global bundle is set explicitly for all requests, // via `setGlobalCABundle()` or similar. @@ -28,7 +27,9 @@ index 212a5e2ada30..45e05c6737f1 100644 // work, give up and yell at the user. if (!$this->getCABundle()) { -- $caroot = dirname(phutil_get_library_root('phutil')).'/resources/ssl/'; +- $caroot = dirname(phutil_get_library_root('arcanist')); +- $caroot = $caroot.'/resources/ssl/'; +- $ini_val = ini_get('curl.cainfo'); if (self::getGlobalCABundle()) { $this->setCABundleFromPath(self::getGlobalCABundle()); diff --git a/www-client/arcanist/files/20220527-MINOR-disable-self-upgrade.patch b/www-client/arcanist/files/20220527-MINOR-disable-self-upgrade.patch new file mode 100644 index 00000000..219caa8d --- /dev/null +++ b/www-client/arcanist/files/20220527-MINOR-disable-self-upgrade.patch @@ -0,0 +1,170 @@ +From e9c4a751bb0a3d677be19c8141e29324928a4fad Mon Sep 17 00:00:00 2001 +From: Bertrand Jacquin <bertrand@jacquin.bzh> +Date: Sun, 18 Dec 2016 02:15:13 +0000 +Subject: [PATCH] MINOR: disable self upgrade + +--- + src/__phutil_library_map__.php | 2 - + src/workflow/ArcanistUpgradeWorkflow.php | 133 ----------------------- + 2 files changed, 135 deletions(-) + delete mode 100644 src/workflow/ArcanistUpgradeWorkflow.php + +diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php +index a70e5cfe3cc3..c77f86a7e301 100644 +--- a/src/__phutil_library_map__.php ++++ b/src/__phutil_library_map__.php +@@ -551,7 +551,6 @@ phutil_register_library_map(array( + 'ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase.php', + 'ArcanistUnsafeDynamicStringXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistUnsafeDynamicStringXHPASTLinterRule.php', + 'ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase.php', +- 'ArcanistUpgradeWorkflow' => 'workflow/ArcanistUpgradeWorkflow.php', + 'ArcanistUploadWorkflow' => 'workflow/ArcanistUploadWorkflow.php', + 'ArcanistUsageException' => 'exception/ArcanistUsageException.php', + 'ArcanistUseStatementNamespacePrefixXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistUseStatementNamespacePrefixXHPASTLinterRule.php', +@@ -1621,7 +1620,6 @@ phutil_register_library_map(array( + 'ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', + 'ArcanistUnsafeDynamicStringXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', + 'ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', +- 'ArcanistUpgradeWorkflow' => 'ArcanistArcWorkflow', + 'ArcanistUploadWorkflow' => 'ArcanistArcWorkflow', + 'ArcanistUsageException' => 'Exception', + 'ArcanistUseStatementNamespacePrefixXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', +diff --git a/src/workflow/ArcanistUpgradeWorkflow.php b/src/workflow/ArcanistUpgradeWorkflow.php +deleted file mode 100644 +index 14f45af947f3..000000000000 +--- a/src/workflow/ArcanistUpgradeWorkflow.php ++++ /dev/null +@@ -1,133 +0,0 @@ +-<?php +- +-final class ArcanistUpgradeWorkflow +- extends ArcanistArcWorkflow { +- +- public function getWorkflowName() { +- return 'upgrade'; +- } +- +- public function getWorkflowInformation() { +- $help = pht(<<<EOTEXT +-Upgrade this program to the latest version. +-EOTEXT +-); +- +- return $this->newWorkflowInformation() +- ->setSynopsis(pht('Upgrade this program to the latest version.')) +- ->addExample(pht('**upgrade**')) +- ->setHelp($help); +- } +- +- public function getWorkflowArguments() { +- return array(); +- } +- +- public function runWorkflow() { +- $log = $this->getLogEngine(); +- +- $roots = array( +- 'arcanist' => dirname(phutil_get_library_root('arcanist')), +- ); +- +- $supported_branches = array( +- 'master', +- 'stable', +- ); +- $supported_branches = array_fuse($supported_branches); +- +- foreach ($roots as $library => $root) { +- $log->writeStatus( +- pht('PREPARING'), +- pht( +- 'Preparing to upgrade "%s"...', +- $library)); +- +- $working_copy = ArcanistWorkingCopy::newFromWorkingDirectory($root); +- +- $repository_api = $working_copy->getRepositoryAPI(); +- $is_git = ($repository_api instanceof ArcanistGitAPI); +- +- if (!$is_git) { +- throw new PhutilArgumentUsageException( +- pht( +- 'The "upgrade" workflow uses "git pull" to upgrade, but '. +- 'the software directory (in "%s") is not a Git working '. +- 'copy. You must leave this directory as a Git working copy to '. +- 'use "arc upgrade".', +- $root)); +- } +- +- // NOTE: Don't use requireCleanWorkingCopy() here because it tries to +- // amend changes and generally move the workflow forward. We just want to +- // abort if there are local changes and make the user sort things out. +- $uncommitted = $repository_api->getUncommittedStatus(); +- if ($uncommitted) { +- $message = pht( +- 'You have uncommitted changes in the working copy ("%s") for this '. +- 'library ("%s"):', +- $root, +- $library); +- +- $list = id(new PhutilConsoleList()) +- ->setWrap(false) +- ->addItems(array_keys($uncommitted)); +- +- id(new PhutilConsoleBlock()) +- ->addParagraph($message) +- ->addList($list) +- ->addParagraph( +- pht( +- 'Discard these changes before running "arc upgrade".')) +- ->draw(); +- +- throw new PhutilArgumentUsageException( +- pht('"arc upgrade" can only upgrade clean working copies.')); +- } +- +- $branch_name = $repository_api->getBranchName(); +- if (!isset($supported_branches[$branch_name])) { +- throw new PhutilArgumentUsageException( +- pht( +- 'Library "%s" (in "%s") is on branch "%s", but this branch is '. +- 'not supported for automatic upgrades. Supported branches are: '. +- '%s.', +- $library, +- $root, +- $branch_name, +- implode(', ', array_keys($supported_branches)))); +- } +- +- $log->writeStatus( +- pht('UPGRADING'), +- pht( +- 'Upgrading "%s" (on branch "%s").', +- $library, +- $branch_name)); +- +- $command = csprintf( +- 'git pull --rebase origin -- %R', +- $branch_name); +- +- $future = (new PhutilExecPassthru($command)) +- ->setCWD($root); +- +- try { +- $this->newCommand($future) +- ->execute(); +- } catch (Exception $ex) { +- // If we failed, try to go back to the old state, then throw the +- // original exception. +- exec_manual('git rebase --abort'); +- throw $ex; +- } +- } +- +- $log->writeSuccess( +- pht('UPGRADED'), +- pht('This software is now up to date.')); +- +- return 0; +- } +- +-} diff --git a/www-client/arcanist/files/9999-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch b/www-client/arcanist/files/9999-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch deleted file mode 100644 index 6e08c121..00000000 --- a/www-client/arcanist/files/9999-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch +++ /dev/null @@ -1,53 +0,0 @@ -From f45ae90ff1cac3b45fe7acc3d376112f707005de Mon Sep 17 00:00:00 2001 -From: Bertrand Jacquin <bertrand@jacquin.bzh> -Date: Sun, 18 Dec 2016 01:59:52 +0000 -Subject: [PATCH 1/2] MEDIUM: Get VERSION for files in - /usr/share/<PN>/GIT_COMMIT_INFO rather than from git - ---- - src/workflow/ArcanistVersionWorkflow.php | 27 +++++++----------------- - 1 file changed, 8 insertions(+), 19 deletions(-) - -diff --git a/src/workflow/ArcanistVersionWorkflow.php b/src/workflow/ArcanistVersionWorkflow.php -index 9c470fc6ea05..fefd972786dc 100644 ---- a/src/workflow/ArcanistVersionWorkflow.php -+++ b/src/workflow/ArcanistVersionWorkflow.php -@@ -35,30 +35,19 @@ EOTEXT - } - - $roots = array( -- 'arcanist' => dirname(phutil_get_library_root('arcanist')), -- 'libphutil' => dirname(phutil_get_library_root('phutil')), -+ 'arcanist', -+ 'libphutil' - ); - -- foreach ($roots as $lib => $root) { -- $working_copy = ArcanistWorkingCopyIdentity::newFromPath($root); -- $configuration_manager = clone $this->getConfigurationManager(); -- $configuration_manager->setWorkingCopyIdentity($working_copy); -- $repository = ArcanistRepositoryAPI::newAPIFromConfigurationManager( -- $configuration_manager); -- -- if (!Filesystem::pathExists($repository->getMetadataPath())) { -+ foreach ($roots as $lib) { -+ $commit_info = "/usr/share/" . $lib . "/GIT_COMMIT_INFO"; -+ if (!Filesystem::pathExists($commit_info)) { - throw new ArcanistUsageException( -- pht('%s is not a git working copy.', $lib)); -+ pht('%s has no version registered in %s.', $lib, $commit_info)); - } - -- // NOTE: Carefully execute these commands in a way that works on Windows -- // until T8298 is properly fixed. See PHI52. -- -- list($commit) = $repository->execxLocal('log -1 --format=%%H'); -- $commit = trim($commit); -- -- list($timestamp) = $repository->execxLocal('log -1 --format=%%ct'); -- $timestamp = trim($timestamp); -+ $stdout = file_get_contents($commit_info); -+ list($commit, $timestamp) = explode(' ', $stdout); - - $console->writeOut( - "%s %s (%s)\n", diff --git a/www-client/arcanist/files/9999-MINOR-Disable-self-upgrade.patch b/www-client/arcanist/files/9999-MINOR-Disable-self-upgrade.patch deleted file mode 100644 index 8410f9f1..00000000 --- a/www-client/arcanist/files/9999-MINOR-Disable-self-upgrade.patch +++ /dev/null @@ -1,149 +0,0 @@ -From ad1344ba9c5c4854b5d9faf91e9882fab29009fe Mon Sep 17 00:00:00 2001 -From: Bertrand Jacquin <bertrand@jacquin.bzh> -Date: Sun, 18 Dec 2016 02:15:13 +0000 -Subject: [PATCH 2/2] MINOR: Disable self upgrade - ---- - src/__phutil_library_map__.php | 2 - - src/workflow/ArcanistUpgradeWorkflow.php | 112 ----------------------- - 2 files changed, 114 deletions(-) - delete mode 100644 src/workflow/ArcanistUpgradeWorkflow.php - -diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php -index 63a4ee80321d..d3e1b34056bb 100644 ---- a/src/__phutil_library_map__.php -+++ b/src/__phutil_library_map__.php -@@ -391,7 +391,6 @@ phutil_register_library_map(array( - 'ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase.php', - 'ArcanistUnsafeDynamicStringXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistUnsafeDynamicStringXHPASTLinterRule.php', - 'ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase.php', -- 'ArcanistUpgradeWorkflow' => 'workflow/ArcanistUpgradeWorkflow.php', - 'ArcanistUploadWorkflow' => 'workflow/ArcanistUploadWorkflow.php', - 'ArcanistUsageException' => 'exception/ArcanistUsageException.php', - 'ArcanistUseStatementNamespacePrefixXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistUseStatementNamespacePrefixXHPASTLinterRule.php', -@@ -816,7 +815,6 @@ phutil_register_library_map(array( - 'ArcanistUnnecessarySymbolAliasXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', - 'ArcanistUnsafeDynamicStringXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', - 'ArcanistUnsafeDynamicStringXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', -- 'ArcanistUpgradeWorkflow' => 'ArcanistWorkflow', - 'ArcanistUploadWorkflow' => 'ArcanistWorkflow', - 'ArcanistUsageException' => 'Exception', - 'ArcanistUseStatementNamespacePrefixXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', -diff --git a/src/workflow/ArcanistUpgradeWorkflow.php b/src/workflow/ArcanistUpgradeWorkflow.php -deleted file mode 100644 -index 50449ef75f27..000000000000 ---- a/src/workflow/ArcanistUpgradeWorkflow.php -+++ /dev/null -@@ -1,112 +0,0 @@ --<?php -- --/** -- * Upgrade arcanist itself. -- */ --final class ArcanistUpgradeWorkflow extends ArcanistWorkflow { -- -- public function getWorkflowName() { -- return 'upgrade'; -- } -- -- public function getCommandSynopses() { -- return phutil_console_format(<<<EOTEXT -- **upgrade** --EOTEXT -- ); -- } -- -- public function getCommandHelp() { -- return phutil_console_format(<<<EOTEXT -- Supports: cli -- Upgrade arcanist and libphutil to the latest versions. --EOTEXT -- ); -- } -- -- public function run() { -- $roots = array( -- 'libphutil' => dirname(phutil_get_library_root('phutil')), -- 'arcanist' => dirname(phutil_get_library_root('arcanist')), -- ); -- -- foreach ($roots as $lib => $root) { -- echo phutil_console_format( -- "%s\n", -- pht('Upgrading %s...', $lib)); -- -- $working_copy = ArcanistWorkingCopyIdentity::newFromPath($root); -- $configuration_manager = clone $this->getConfigurationManager(); -- $configuration_manager->setWorkingCopyIdentity($working_copy); -- $repository = ArcanistRepositoryAPI::newAPIFromConfigurationManager( -- $configuration_manager); -- -- if (!Filesystem::pathExists($repository->getMetadataPath())) { -- throw new ArcanistUsageException( -- pht( -- "%s must be in its git working copy to be automatically upgraded. ". -- "This copy of %s (in '%s') is not in a git working copy.", -- $lib, -- $lib, -- $root)); -- } -- -- $this->setRepositoryAPI($repository); -- -- // NOTE: Don't use requireCleanWorkingCopy() here because it tries to -- // amend changes and generally move the workflow forward. We just want to -- // abort if there are local changes and make the user sort things out. -- $uncommitted = $repository->getUncommittedStatus(); -- if ($uncommitted) { -- $message = pht( -- 'You have uncommitted changes in the working copy for this '. -- 'library:'); -- -- $list = id(new PhutilConsoleList()) -- ->setWrap(false) -- ->addItems(array_keys($uncommitted)); -- -- id(new PhutilConsoleBlock()) -- ->addParagraph($message) -- ->addList($list) -- ->draw(); -- -- throw new ArcanistUsageException( -- pht('`arc upgrade` can only upgrade clean working copies.')); -- } -- -- $branch_name = $repository->getBranchName(); -- if ($branch_name != 'master' && $branch_name != 'stable') { -- throw new ArcanistUsageException( -- pht( -- "%s must be on either branch '%s' or '%s' to be automatically ". -- "upgraded. ". -- "This copy of %s (in '%s') is on branch '%s'.", -- $lib, -- 'master', -- 'stable', -- $lib, -- $root, -- $branch_name)); -- } -- -- chdir($root); -- -- try { -- execx('git pull --rebase'); -- } catch (Exception $ex) { -- // If we failed, try to go back to the old state, then throw the -- // original exception. -- exec_manual('git rebase --abort'); -- throw $ex; -- } -- } -- -- echo phutil_console_format( -- "**%s** %s\n", -- pht('Updated!'), -- pht('Your copy of arc is now up to date.')); -- return 0; -- } -- --} diff --git a/www-client/arcanist/files/9999-breakout-migrate-to-python3.patch b/www-client/arcanist/files/9999-breakout-migrate-to-python3.patch deleted file mode 100644 index 1d85ffd6..00000000 --- a/www-client/arcanist/files/9999-breakout-migrate-to-python3.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 9f22220e75669f0e1041d89630214115aa9ee1be Mon Sep 17 00:00:00 2001 -From: Bertrand Jacquin <bertrand@jacquin.bzh> -Date: Sat, 11 Jan 2020 21:05:49 +0000 -Subject: [PATCH] breakout: migrate to python3 - -python2 is now deprecated - -note that breakout still works with python2 ---- - scripts/breakout.py | 22 ++++++++++++---------- - 1 file changed, 12 insertions(+), 10 deletions(-) - -diff --git a/scripts/breakout.py b/scripts/breakout.py -index c8c8b18818ad..bea068bd4dde 100755 ---- a/scripts/breakout.py -+++ b/scripts/breakout.py -@@ -1,4 +1,4 @@ --#!/usr/bin/env python2 -+#!/usr/bin/env python3 - import sys - import time - import select -@@ -17,10 +17,10 @@ class Block: - total = 0 - - def __init__(self, x, y, w, h, c): -- self.x = x -- self.y = y -- self.w = w -- self.h = h -+ self.x = int(round(x)) -+ self.y = int(round(y)) -+ self.w = int(round(w)) -+ self.h = int(round(h)) - self.fmt = curses.A_BOLD | curses.color_pair(c) - self.alive = True - for i in range(self.x, self.x + self.w): -@@ -48,8 +48,8 @@ class Ball: - killed = 0 - - def __init__(self, x, y, vx, vy): -- self.x = x -- self.y = y -+ self.x = int(round(x)) -+ self.y = int(round(y)) - self.vx = vx - self.vy = vy - Ball.alive = True -@@ -58,6 +58,8 @@ class Ball: - return True - - def encounter(self, dx, dy): -+ dx = int(round(dx)) -+ dy = int(round(dy)) - ent = grid[self.y + dy + 1][self.x + dx + 1] - if ent and not ent.collide(self): - self.vx -= 2 * dx -@@ -84,8 +86,8 @@ class Ball: - - class Ship: - def __init__(self, x, y): -- self.x = x -- self.y = y -+ self.x = int(round(x)) -+ self.y = int(round(y)) - self.hw = 10 - self.v = 4 - self.last = 1 -@@ -164,7 +166,7 @@ def main(stdscr): - - colors = [ 1, 3, 2, 6, 4, 5 ] - h = height / 10 -- for x in range(1, width / 7 - 1): -+ for x in range(1, int(width / 7) - 1): - for y in range(1, 7): - entities.append(Block(x * 7, - y * h + x / 2 % 2, |