diff --git a/argcomplete-2.0.0.tar.gz b/argcomplete-2.0.0.tar.gz deleted file mode 100644 index 28afc60..0000000 --- a/argcomplete-2.0.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6372ad78c89d662035101418ae253668445b391755cfe94ea52f1b9d22425b20 -size 54164 diff --git a/argcomplete-3.0.8.tar.gz b/argcomplete-3.0.8.tar.gz new file mode 100644 index 0000000..1918894 --- /dev/null +++ b/argcomplete-3.0.8.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9ca96448e14fa459d7450a4ab5a22bbf9cee4ba7adddf03e65c398b5daeea28 +size 56035 diff --git a/python-argcomplete.changes b/python-argcomplete.changes index d3f3e75..f4f7e07 100644 --- a/python-argcomplete.changes +++ b/python-argcomplete.changes @@ -1,3 +1,49 @@ +------------------------------------------------------------------- +Fri May 5 11:23:29 UTC 2023 - Daniel Garcia + +- Add without_zsh.patch +- Delete skip_tcsh_tests.patch +- Delete without_fish.patch +- Update to 3.0.8: + * Test suite shell wrapper: Accept OSError on exit +- 3.0.7: + * Test suite: Use general regex to cut zsh reset ANSI sequences (#425) +- 3.0.6: + * Allow importlib-metadata 6.x; skip test failures on Python 3.7 (#420, #424) + * Note completers can return iterables of strings, not just lists (#422) + * Documentation and test improvements +- 3.0.5: + * Call _default as fallback in zsh global completion hook + * Begin support for mapping-emitting completers +- 3.0.4: + * activate-global-python-argcomplete: do not overwrite existing dotfile in user directory + * Add NOTICE file + * Establish long term name for split_line as argcomplete.lexers.split_line +- 3.0.3: + * Re-add split_line to API (#419) +- 3.0.2: + * Fix zsh default completion issues +- 3.0.1: + * Fix zsh autoload issues +- 3.0.0: + * Fully support zsh. Argcomplete now supports completion + descriptions and global completion in zsh. + * Clean up top level namespace. + * Documentation and test improvements. +- 2.1.2: + * Test infrastructure improvements + * Indicate that there is no support commitment for fish and tcsh shells +- 2.1.1: + * Documentation and test improvements +- 2.1.0: + * Remove scripts for contrib-supported shells from global namespace +- 2.0.6: + * setup.py: exclude test.* subpackages from find_packages (#406) + * Support PowerShell (#405) + * CI updates +- 2.0.5: + * Revert "Support powershell (#392)" + ------------------------------------------------------------------- Fri Apr 21 12:21:56 UTC 2023 - Dirk Müller diff --git a/python-argcomplete.spec b/python-argcomplete.spec index 3d9ca4e..035cd12 100644 --- a/python-argcomplete.spec +++ b/python-argcomplete.spec @@ -20,21 +20,22 @@ %global skip_python2 1 %{?sle15_python_module_pythons} Name: python-argcomplete -Version: 2.0.0 +Version: 3.0.8 Release: 0 Summary: Bash tab completion for argparse License: Apache-2.0 Group: Development/Languages/Python URL: https://github.com/kislyuk/argcomplete Source: https://files.pythonhosted.org/packages/source/a/argcomplete/argcomplete-%{version}.tar.gz -Patch0: skip_tcsh_tests.patch Patch1: trim-test-deps.patch -# PATCH-FIX-UPSTREAM without_fish.patch gh#kislyuk/argcomplete!410 mcepl@suse.com -# Don't fail the test suite when fish is not available -Patch2: without_fish.patch +# Don't fail the test suite when zsh is not available +Patch2: without_zsh.patch +BuildRequires: %{python_module coverage} BuildRequires: %{python_module pexpect} BuildRequires: %{python_module pip} BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: ca-certificates BuildRequires: fdupes BuildRequires: python-rpm-macros Requires(post): update-alternatives @@ -68,8 +69,6 @@ resources over the network). %python_clone -a %{buildroot}%{_bindir}/python-argcomplete-check-easy-install-script rm -rf %{buildroot}%{python_sitelib}/test rm %{buildroot}%{_bindir}/activate-global-python-argcomplete -# tcsh support is broken -rm %{buildroot}%{_bindir}/python-argcomplete-tcsh %python_expand %fdupes %{buildroot}%{$python_sitelib} %check @@ -80,7 +79,7 @@ export LANG=en_US.UTF-8 # https://github.com/kislyuk/argcomplete/issues/299 sed -i -e "1s|#!.*python.*|#!%{_bindir}/$python|" test/prog scripts/* sed -i -e "s|python3 |$python |g" test/test.py - PYTHONPATH=%{buildroot}%{$python_sitelib} $python -m unittest discover -v + PYTHONPATH=%{buildroot}%{$python_sitelib} $python -m coverage run --source=argcomplete --omit=argcomplete/packages/_shlex.py ./test/test.py -v } %post diff --git a/skip_tcsh_tests.patch b/skip_tcsh_tests.patch deleted file mode 100644 index 30a3647..0000000 --- a/skip_tcsh_tests.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- - test/test.py | 34 ---------------------------------- - 1 file changed, 34 deletions(-) - ---- a/test/test.py -+++ b/test/test.py -@@ -1308,40 +1308,6 @@ class TestBashGlobal(TestBash): - self._test_console_script(package=True, wheel=True) - - --class TestTcsh(_TestSh, unittest.TestCase): -- expected_failures = [ -- 'test_unquoted_space', -- 'test_quoted_space', -- 'test_continuation', -- 'test_parse_special_characters', -- 'test_parse_special_characters_dollar', -- # Test case doesn't work under tcsh, could be fixed. -- 'test_comp_point', -- ] -- -- def setUp(self): -- sh = Shell('tcsh') -- path = ' '.join([os.path.join(BASE_DIR, 'scripts'), TEST_DIR, '$path']) -- sh.run_command('set path = ({0})'.format(path)) -- sh.run_command('setenv PYTHONPATH {0}'.format(BASE_DIR)) -- # 'dummy' argument unused; checks multi-command registration works -- # by passing 'prog' as the second argument. -- output = sh.run_command('eval `register-python-argcomplete --shell tcsh dummy prog`') -- self.assertEqual(output, '') -- # Register a dummy completion with an external argcomplete script -- # to ensure this doesn't overwrite our previous registration. -- output = sh.run_command('eval `register-python-argcomplete --shell tcsh dummy --external-argcomplete-script dummy`') -- self.assertEqual(output, '') -- self.sh = sh -- -- def tearDown(self): -- # The shell wrapper is fragile; exactly which exception is raised -- # differs depending on environment. -- with self.assertRaises((pexpect.EOF, OSError)): -- self.sh.run_command('exit') -- self.sh.run_command('') -- -- - class TestFish(_TestSh, unittest.TestCase): - expected_failures = [ - 'test_parse_special_characters', diff --git a/trim-test-deps.patch b/trim-test-deps.patch index d0c62b4..ff01026 100644 --- a/trim-test-deps.patch +++ b/trim-test-deps.patch @@ -1,13 +1,13 @@ -Index: argcomplete-1.12.3/setup.py +Index: argcomplete-3.0.8/setup.py =================================================================== ---- argcomplete-1.12.3.orig/setup.py -+++ argcomplete-1.12.3/setup.py -@@ -4,7 +4,7 @@ import glob - from setuptools import setup, find_packages +--- argcomplete-3.0.8.orig/setup.py ++++ argcomplete-3.0.8/setup.py +@@ -5,7 +5,7 @@ import glob + from setuptools import find_packages, setup install_requires = [] --tests_require = ["coverage", "flake8", "pexpect", "wheel"] +-tests_require = ["coverage", "pexpect", "wheel", "ruff", "mypy"] +tests_require = ["pexpect"] - importlib_backport_requires = ["importlib-metadata >= 0.23, < 5"] + importlib_backport_requires = ["importlib-metadata >= 0.23, < 7"] setup( diff --git a/without_fish.patch b/without_fish.patch deleted file mode 100644 index a280c20..0000000 --- a/without_fish.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- - test/test.py | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - ---- a/test/test.py -+++ b/test/test.py -@@ -30,7 +30,10 @@ COMP_WORDBREAKS = " \t\n\"'><=;|&(:" - - BASH_VERSION = subprocess.check_output(['bash', '-c', 'echo $BASH_VERSION']).decode() - BASH_MAJOR_VERSION = int(BASH_VERSION.split('.')[0]) --FISH_VERSION_STR = subprocess.check_output(['fish', '-c', 'echo -n $version']).decode() -+try: -+ FISH_VERSION_STR = subprocess.check_output(['fish', '-c', 'echo -n $version']).decode() -+except FileNotFoundError: -+ FISH_VERSION_STR = "0.0.0" - FISH_VERSION_TUPLE = tuple(int(x) for x in FISH_VERSION_STR.split('.')) - - -@@ -1308,6 +1311,7 @@ class TestBashGlobal(TestBash): - self._test_console_script(package=True, wheel=True) - - -+@unittest.skipIf(FISH_VERSION_TUPLE == (0, 0, 0), "Fish is not available") - class TestFish(_TestSh, unittest.TestCase): - expected_failures = [ - 'test_parse_special_characters', diff --git a/without_zsh.patch b/without_zsh.patch new file mode 100644 index 0000000..bab1836 --- /dev/null +++ b/without_zsh.patch @@ -0,0 +1,27 @@ +Index: argcomplete-3.0.8/test/test.py +=================================================================== +--- argcomplete-3.0.8.orig/test/test.py ++++ argcomplete-3.0.8/test/test.py +@@ -1299,22 +1299,6 @@ class TestBash(TestBashZshBase, unittest + self.test_simple_completion() + + +-class TestZsh(TestBashZshBase, unittest.TestCase): +- expected_failures = [ +- "test_parse_special_characters_dollar", +- "test_comp_point", # FIXME +- "test_completion_environment", # FIXME +- "test_continuation", # FIXME +- "test_wordbreak_chars", # FIXME +- ] +- +- def test_parse_special_characters(self): +- pass # FIXME: test crashes in teardown +- +- def repl_provider(self): +- return zsh_repl() +- +- + @unittest.skipIf(BASH_MAJOR_VERSION < 4, "complete -D not supported") + class TestBashGlobal(TestBash): + install_cmd = 'eval "$(activate-global-python-argcomplete --dest=-)"'