commit: 324e463706beef19676c23709bccbfc92660999c Author: Sebastian Pipping <sping <AT> gentoo <DOT> org> AuthorDate: Mon Jan 8 20:48:55 2024 +0000 Commit: Sebastian Pipping <sping <AT> gentoo <DOT> org> CommitDate: Mon Jan 8 20:50:44 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=324e4637
app-containers/docker-compose: Make 1.x.x support >=dev-python/docker-7 Closes: https://bugs.gentoo.org/920631 Signed-off-by: Sebastian Pipping <sping <AT> gentoo.org> .../docker-compose/docker-compose-1.29.2-r6.ebuild | 80 ++++++++++++++++++++++ .../files/docker-compose-1.29.2-docker-7.patch | 36 ++++++++++ 2 files changed, 116 insertions(+) diff --git a/app-containers/docker-compose/docker-compose-1.29.2-r6.ebuild b/app-containers/docker-compose/docker-compose-1.29.2-r6.ebuild new file mode 100644 index 000000000000..091c48dd7db2 --- /dev/null +++ b/app-containers/docker-compose/docker-compose-1.29.2-r6.ebuild @@ -0,0 +1,80 @@ +# Copyright 2018-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} ) + +inherit bash-completion-r1 distutils-r1 + +MY_PV=${PV/_/-} +DESCRIPTION="Multi-container orchestration for Docker" +HOMEPAGE="https://github.com/docker/compose" +SRC_URI="https://github.com/docker/compose/archive/${MY_PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +RDEPEND=" + >=dev-python/distro-1.5.0[${PYTHON_USEDEP}] + >=dev-python/docker-7[${PYTHON_USEDEP}] + >=dev-python/dockerpty-0.4.1[${PYTHON_USEDEP}] + >=dev-python/docopt-0.6.1[${PYTHON_USEDEP}] + >=dev-python/python-dotenv-0.13.0[${PYTHON_USEDEP}] + >=dev-python/jsonschema-2.5.1[${PYTHON_USEDEP}] + dev-python/paramiko[${PYTHON_USEDEP}] + >=dev-python/PySocks-1.6.0[${PYTHON_USEDEP}] + >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}] + >=dev-python/requests-2.20.0[${PYTHON_USEDEP}] + >=dev-python/six-1.3.0[${PYTHON_USEDEP}] + >=dev-python/texttable-0.9.0[${PYTHON_USEDEP}] + >=dev-python/websocket-client-0.32.0[${PYTHON_USEDEP}]" + +DEPEND="${RDEPEND} + test? ( + >=dev-python/pytest-5[${PYTHON_USEDEP}] + >=dev-python/ddt-1.2.2[${PYTHON_USEDEP}] + dev-python/py[${PYTHON_USEDEP}] + )" + +S="${WORKDIR}/compose-${MY_PV}" + +EPYTEST_DESELECT=( + # These are not ready for >=dev-python/docker-7 + tests/unit/cli/docker_client_test.py::TLSConfigTestCase:: +) + +distutils_enable_tests pytest + +PATCHES=( + # Bug #679968 -- https://bugs.gentoo.org/679968 + # Bug #681002 -- https://bugs.gentoo.org/681002 + "${FILESDIR}"/${PN}-1.29.0-setup-py.patch + "${FILESDIR}"/${P}-tests-unit-cli-test-py.patch + # Bug #920631 -- https://bugs.gentoo.org/920631 + "${FILESDIR}"/${P}-docker-7.patch +) + +DOCS=( CHANGELOG.md README.md ) + +src_prepare() { + # Address QA issue "docker-compose.exe: missing alias (symlink) for completed command." + sed 's,^\(complete.*\) docker-compose\.exe\(.*\),\1\2,' -i contrib/completion/bash/docker-compose || die + + default +} + +python_test() { + epytest tests/unit/ +} + +python_install_all() { + newbashcomp contrib/completion/bash/docker-compose ${PN} + + insinto /usr/share/zsh/site-functions + doins contrib/completion/zsh/* + + distutils-r1_python_install_all +} diff --git a/app-containers/docker-compose/files/docker-compose-1.29.2-docker-7.patch b/app-containers/docker-compose/files/docker-compose-1.29.2-docker-7.patch new file mode 100644 index 000000000000..aafa7a7dddde --- /dev/null +++ b/app-containers/docker-compose/files/docker-compose-1.29.2-docker-7.patch @@ -0,0 +1,36 @@ +From 1e838052b7ccc2a5bb6b674154450a4411de9e15 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping <[email protected]> +Date: Mon, 8 Jan 2024 21:28:27 +0100 +Subject: [PATCH] compose/cli/docker_client.py: Quickfix for + >=dev-python/docker-7 + +Symptom was: +> # docker-compose build +> Traceback (most recent call last): +> [..] +> File "[..]/python3.12/site-packages/compose/cli/docker_client.py", line 124, in docker_client +> kwargs = kwargs_from_env(environment=environment, ssl_version=tls_version) +> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +> TypeError: kwargs_from_env() got an unexpected keyword argument 'ssl_version' + +Related: https://stackoverflow.com/a/77638834/11626624 +--- + compose/cli/docker_client.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/compose/cli/docker_client.py b/compose/cli/docker_client.py +index e4a0fea..f550e20 100644 +--- a/compose/cli/docker_client.py ++++ b/compose/cli/docker_client.py +@@ -121,7 +121,7 @@ def docker_client(environment, version=None, context=None, tls_version=None): + according to the same logic as the official Docker client. + """ + try: +- kwargs = kwargs_from_env(environment=environment, ssl_version=tls_version) ++ kwargs = kwargs_from_env(environment=environment) + except TLSParameterError: + raise UserError( + "TLS configuration is invalid - make sure your DOCKER_TLS_VERIFY " +-- +2.43.0 +
