commit: 6a8fe995ba01fb0faa5368fe96712cfb71dc3f92 Author: Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org> AuthorDate: Fri Jun 10 12:11:16 2022 +0000 Commit: Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org> CommitDate: Fri Jun 10 14:29:56 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a8fe995
dev-python/debugpy: add 1.6.0 Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org> dev-python/debugpy/Manifest | 1 + dev-python/debugpy/debugpy-1.6.0.ebuild | 43 +++++ .../files/debugpy-1.4.2-unbundle-pydevd.patch | 156 +++++++++--------- ...d.patch => debugpy-1.6.0-unbundle-pydevd.patch} | 180 ++++++++++++--------- 4 files changed, 224 insertions(+), 156 deletions(-) diff --git a/dev-python/debugpy/Manifest b/dev-python/debugpy/Manifest index 319bc0505a84..ee60328d2071 100644 --- a/dev-python/debugpy/Manifest +++ b/dev-python/debugpy/Manifest @@ -1 +1,2 @@ DIST debugpy-1.5.1.gh.tar.gz 6675322 BLAKE2B a8e3a07d5dbd1b5ca39301e703b279514653606f98743a396693738c9a89403c73a6b6942e5dc368dd89eb8b74277e1808f9247573f330e3a94596c26af7e5be SHA512 93ee526ca7cb3d44b85106a33d8f930f4f2b307eb26ede3ab6b5653de986a101b10f545f5de12cd8ee6ff9e9a12c5e4b57c4c40b1b3003c2f555676bd34482ce +DIST debugpy-1.6.0.gh.tar.gz 6366079 BLAKE2B 134d2adcae6ec926dcdb7161f0874b830a1d0e3c55abb991f4861fa5a58045437ee4f4cb4c9572b902e3e33634bc3f9970ae055985b983d89d0ef1d99561bda8 SHA512 fe245d4ff751a6c2ef0e75a5249f99661b78075ac62c931c20e3ccbc9389d39a08dc2fda44a33eb23a0a76e5ee339edae439b0004d130cdfe421048f3cc83962 diff --git a/dev-python/debugpy/debugpy-1.6.0.ebuild b/dev-python/debugpy/debugpy-1.6.0.ebuild new file mode 100644 index 000000000000..783b447c47b0 --- /dev/null +++ b/dev-python/debugpy/debugpy-1.6.0.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8..11} ) +DISTUTILS_USE_PEP517=setuptools +inherit distutils-r1 + +DESCRIPTION="An implementation of the Debug Adapter Protocol for Python" +HOMEPAGE="https://github.com/microsoft/debugpy/ https://pypi.org/project/debugpy/" +SRC_URI=" + https://github.com/microsoft/${PN}/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +# This is completely broken +RESTRICT="test" + +RDEPEND="dev-python/pydevd[${PYTHON_USEDEP}]" +BDEPEND="test? ( dev-python/pytest-timeout[${PYTHON_USEDEP}] )" + +PATCHES=( + "${FILESDIR}/${PN}-1.6.0-unbundle-pydevd.patch" +) + +distutils_enable_tests pytest + +python_prepare_all() { + # Drop unnecessary and unrecognized option + # __main__.py: error: unrecognized arguments: -n8 + # Do not timeout + sed -e '/addopts/d' -e '/timeout/d' -i pytest.ini || die + + # Unbundle dev-python/pydevd + rm -r src/debugpy/_vendored || die + + distutils-r1_python_prepare_all +} diff --git a/dev-python/debugpy/files/debugpy-1.4.2-unbundle-pydevd.patch b/dev-python/debugpy/files/debugpy-1.4.2-unbundle-pydevd.patch index 7047877ef279..3d60bcd18cbc 100644 --- a/dev-python/debugpy/files/debugpy-1.4.2-unbundle-pydevd.patch +++ b/dev-python/debugpy/files/debugpy-1.4.2-unbundle-pydevd.patch @@ -1,78 +1,78 @@ -diff --git a/setup.py b/setup.py -index ee5bbba..f69dc95 100644 ---- a/setup.py -+++ b/setup.py -@@ -21,12 +21,10 @@ del sys.path[0] - - sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), "src")) - import debugpy --import debugpy._vendored - - del sys.path[0] - - --PYDEVD_ROOT = debugpy._vendored.project_root("pydevd") - DEBUGBY_ROOT = os.path.dirname(os.path.abspath(debugpy.__file__)) - - -@@ -36,27 +34,6 @@ def get_buildplatform(): - return None - - --def cython_build(): -- print("Compiling extension modules (set SKIP_CYTHON_BUILD=1 to omit)") -- subprocess.call( -- [ -- sys.executable, -- os.path.join(PYDEVD_ROOT, "setup_cython.py"), -- "build_ext", -- "-i", -- ] -- ) -- -- --def iter_vendored_files(): -- # Add pydevd files as data files for this package. They are not -- # treated as a package of their own, because we don't actually -- # want to provide pydevd - just use our own copy internally. -- for project in debugpy._vendored.list_all(): -- for filename in debugpy._vendored.iter_packaging_files(project): -- yield filename -- -- - # bdist_wheel determines whether the package is pure or not based on ext_modules. - # However, all pydevd native modules are prebuilt and packaged as data, so they - # should not be in the list. -@@ -121,8 +98,6 @@ with open("DESCRIPTION.md", "r") as fh: - - - if __name__ == "__main__": -- if not os.getenv("SKIP_CYTHON_BUILD"): -- cython_build() - - extras = {} - platforms = get_buildplatform() -@@ -165,11 +140,9 @@ if __name__ == "__main__": - "debugpy.common", - "debugpy.launcher", - "debugpy.server", -- "debugpy._vendored", - ], - package_data={ - "debugpy": ["ThirdPartyNotices.txt"], -- "debugpy._vendored": list(iter_vendored_files()), - }, - ext_modules=ExtModules(), - has_ext_modules=lambda: True, -diff --git a/src/debugpy/server/__init__.py b/src/debugpy/server/__init__.py -index e6a1ad6..a79a86b 100644 ---- a/src/debugpy/server/__init__.py -+++ b/src/debugpy/server/__init__.py -@@ -3,7 +3,3 @@ - # for license information. - - from __future__ import absolute_import, division, print_function, unicode_literals -- --# "force_pydevd" must be imported first to ensure (via side effects) --# that the debugpy-vendored copy of pydevd gets used. --import debugpy._vendored.force_pydevd # noqa +diff --git a/setup.py b/setup.py +index ee5bbba..f69dc95 100644 +--- a/setup.py ++++ b/setup.py +@@ -21,12 +21,10 @@ del sys.path[0] + + sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), "src")) + import debugpy +-import debugpy._vendored + + del sys.path[0] + + +-PYDEVD_ROOT = debugpy._vendored.project_root("pydevd") + DEBUGBY_ROOT = os.path.dirname(os.path.abspath(debugpy.__file__)) + + +@@ -36,27 +34,6 @@ def get_buildplatform(): + return None + + +-def cython_build(): +- print("Compiling extension modules (set SKIP_CYTHON_BUILD=1 to omit)") +- subprocess.call( +- [ +- sys.executable, +- os.path.join(PYDEVD_ROOT, "setup_cython.py"), +- "build_ext", +- "-i", +- ] +- ) +- +- +-def iter_vendored_files(): +- # Add pydevd files as data files for this package. They are not +- # treated as a package of their own, because we don't actually +- # want to provide pydevd - just use our own copy internally. +- for project in debugpy._vendored.list_all(): +- for filename in debugpy._vendored.iter_packaging_files(project): +- yield filename +- +- + # bdist_wheel determines whether the package is pure or not based on ext_modules. + # However, all pydevd native modules are prebuilt and packaged as data, so they + # should not be in the list. +@@ -121,8 +98,6 @@ with open("DESCRIPTION.md", "r") as fh: + + + if __name__ == "__main__": +- if not os.getenv("SKIP_CYTHON_BUILD"): +- cython_build() + + extras = {} + platforms = get_buildplatform() +@@ -165,11 +140,9 @@ if __name__ == "__main__": + "debugpy.common", + "debugpy.launcher", + "debugpy.server", +- "debugpy._vendored", + ], + package_data={ + "debugpy": ["ThirdPartyNotices.txt"], +- "debugpy._vendored": list(iter_vendored_files()), + }, + ext_modules=ExtModules(), + has_ext_modules=lambda: True, +diff --git a/src/debugpy/server/__init__.py b/src/debugpy/server/__init__.py +index e6a1ad6..a79a86b 100644 +--- a/src/debugpy/server/__init__.py ++++ b/src/debugpy/server/__init__.py +@@ -3,7 +3,3 @@ + # for license information. + + from __future__ import absolute_import, division, print_function, unicode_literals +- +-# "force_pydevd" must be imported first to ensure (via side effects) +-# that the debugpy-vendored copy of pydevd gets used. +-import debugpy._vendored.force_pydevd # noqa diff --git a/dev-python/debugpy/files/debugpy-1.4.2-unbundle-pydevd.patch b/dev-python/debugpy/files/debugpy-1.6.0-unbundle-pydevd.patch similarity index 64% copy from dev-python/debugpy/files/debugpy-1.4.2-unbundle-pydevd.patch copy to dev-python/debugpy/files/debugpy-1.6.0-unbundle-pydevd.patch index 7047877ef279..41a0b8e39ba6 100644 --- a/dev-python/debugpy/files/debugpy-1.4.2-unbundle-pydevd.patch +++ b/dev-python/debugpy/files/debugpy-1.6.0-unbundle-pydevd.patch @@ -1,78 +1,102 @@ -diff --git a/setup.py b/setup.py -index ee5bbba..f69dc95 100644 ---- a/setup.py -+++ b/setup.py -@@ -21,12 +21,10 @@ del sys.path[0] - - sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), "src")) - import debugpy --import debugpy._vendored - - del sys.path[0] - - --PYDEVD_ROOT = debugpy._vendored.project_root("pydevd") - DEBUGBY_ROOT = os.path.dirname(os.path.abspath(debugpy.__file__)) - - -@@ -36,27 +34,6 @@ def get_buildplatform(): - return None - - --def cython_build(): -- print("Compiling extension modules (set SKIP_CYTHON_BUILD=1 to omit)") -- subprocess.call( -- [ -- sys.executable, -- os.path.join(PYDEVD_ROOT, "setup_cython.py"), -- "build_ext", -- "-i", -- ] -- ) -- -- --def iter_vendored_files(): -- # Add pydevd files as data files for this package. They are not -- # treated as a package of their own, because we don't actually -- # want to provide pydevd - just use our own copy internally. -- for project in debugpy._vendored.list_all(): -- for filename in debugpy._vendored.iter_packaging_files(project): -- yield filename -- -- - # bdist_wheel determines whether the package is pure or not based on ext_modules. - # However, all pydevd native modules are prebuilt and packaged as data, so they - # should not be in the list. -@@ -121,8 +98,6 @@ with open("DESCRIPTION.md", "r") as fh: - - - if __name__ == "__main__": -- if not os.getenv("SKIP_CYTHON_BUILD"): -- cython_build() - - extras = {} - platforms = get_buildplatform() -@@ -165,11 +140,9 @@ if __name__ == "__main__": - "debugpy.common", - "debugpy.launcher", - "debugpy.server", -- "debugpy._vendored", - ], - package_data={ - "debugpy": ["ThirdPartyNotices.txt"], -- "debugpy._vendored": list(iter_vendored_files()), - }, - ext_modules=ExtModules(), - has_ext_modules=lambda: True, -diff --git a/src/debugpy/server/__init__.py b/src/debugpy/server/__init__.py -index e6a1ad6..a79a86b 100644 ---- a/src/debugpy/server/__init__.py -+++ b/src/debugpy/server/__init__.py -@@ -3,7 +3,3 @@ - # for license information. - - from __future__ import absolute_import, division, print_function, unicode_literals -- --# "force_pydevd" must be imported first to ensure (via side effects) --# that the debugpy-vendored copy of pydevd gets used. --import debugpy._vendored.force_pydevd # noqa +diff --git a/pyproject.toml b/pyproject.toml +index 15ea7e1..d3a2764 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -8,7 +8,6 @@ exclude = ''' + ( __pycache__ + | ^/.tox + | ^/versioneer.py +-| ^/src/debugpy/_vendored + | ^/src/debugpy/_version.py + ) + ''' +diff --git a/setup.py b/setup.py +index 2c0a2d6..7c22c0c 100644 +--- a/setup.py ++++ b/setup.py +@@ -18,12 +18,10 @@ del sys.path[0] + + sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), "src")) + import debugpy +-import debugpy._vendored + + del sys.path[0] + + +-PYDEVD_ROOT = debugpy._vendored.project_root("pydevd") + DEBUGBY_ROOT = os.path.dirname(os.path.abspath(debugpy.__file__)) + + +@@ -33,27 +31,6 @@ def get_buildplatform(): + return None + + +-def cython_build(): +- print("Compiling extension modules (set SKIP_CYTHON_BUILD=1 to omit)") +- subprocess.call( +- [ +- sys.executable, +- os.path.join(PYDEVD_ROOT, "setup_pydevd_cython.py"), +- "build_ext", +- "-i", +- ] +- ) +- +- +-def iter_vendored_files(): +- # Add pydevd files as data files for this package. They are not +- # treated as a package of their own, because we don't actually +- # want to provide pydevd - just use our own copy internally. +- for project in debugpy._vendored.list_all(): +- for filename in debugpy._vendored.iter_packaging_files(project): +- yield filename +- +- + # bdist_wheel determines whether the package is pure or not based on ext_modules. + # However, all pydevd native modules are prebuilt and packaged as data, so they + # should not be in the list. +@@ -133,8 +110,6 @@ with open("DESCRIPTION.md", "r") as fh: + + + if __name__ == "__main__": +- if not os.getenv("SKIP_CYTHON_BUILD"): +- cython_build() + + extras = {} + platforms = get_buildplatform() +@@ -179,11 +154,9 @@ if __name__ == "__main__": + "debugpy.common", + "debugpy.launcher", + "debugpy.server", +- "debugpy._vendored", + ], + package_data={ + "debugpy": ["ThirdPartyNotices.txt"], +- "debugpy._vendored": list(iter_vendored_files()), + }, + ext_modules=ExtModules(), + has_ext_modules=lambda: True, +diff --git a/src/debugpy/server/__init__.py b/src/debugpy/server/__init__.py +index 642c776..947cd7d 100644 +--- a/src/debugpy/server/__init__.py ++++ b/src/debugpy/server/__init__.py +@@ -3,7 +3,3 @@ + # for license information. + + from __future__ import absolute_import, division, print_function, unicode_literals +- +-# "force_pydevd" must be imported first to ensure (via side effects) +-# that the debugpy-vendored copy of pydevd gets used. +-import debugpy._vendored.force_pydevd # noqa +diff --git a/src/debugpy/server/attach_pid_injected.py b/src/debugpy/server/attach_pid_injected.py +index 6016545..9bd2e2c 100644 +--- a/src/debugpy/server/attach_pid_injected.py ++++ b/src/debugpy/server/attach_pid_injected.py +@@ -33,7 +33,6 @@ def attach(setup): + pydevd_attach_to_process_path = os.path.join( + _debugpy_dir, + "debugpy", +- "_vendored", + "pydevd", + "pydevd_attach_to_process", + )