Hello community, here is the log from the commit of package python-dulwich for openSUSE:Factory checked in at 2020-11-13 18:53:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-dulwich (Old) and /work/SRC/openSUSE:Factory/.python-dulwich.new.24930 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-dulwich" Fri Nov 13 18:53:46 2020 rev:34 rq:847411 version:0.20.11 Changes: -------- --- /work/SRC/openSUSE:Factory/python-dulwich/python-dulwich.changes 2020-10-29 09:45:16.119996463 +0100 +++ /work/SRC/openSUSE:Factory/.python-dulwich.new.24930/python-dulwich.changes 2020-11-13 18:54:10.341782405 +0100 @@ -1,0 +2,9 @@ +Tue Nov 10 07:49:41 UTC 2020 - Dirk Mueller <dmuel...@suse.com> + +- update to 0.20.11: + * Fix wheels build on Linux. (Ruslan Kuprieiev) + * Enable wheels build for Python 3.9 on Linux. (Jelmer Vernooij) + * Check core.repositoryformatversion. (Jelmer Vernooij, #803) + * Fix ACK/NACK handling in archive command handling in dulwich.client. + +------------------------------------------------------------------- Old: ---- dulwich-0.20.6.tar.gz New: ---- dulwich-0.20.11.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-dulwich.spec ++++++ --- /var/tmp/diff_new_pack.t10xAz/_old 2020-11-13 18:54:11.793784019 +0100 +++ /var/tmp/diff_new_pack.t10xAz/_new 2020-11-13 18:54:11.797784023 +0100 @@ -20,7 +20,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 Name: python-dulwich -Version: 0.20.6 +Version: 0.20.11 Release: 0 Summary: Pure-Python Git Library License: GPL-2.0-or-later OR Apache-2.0 @@ -47,7 +47,7 @@ Recommends: python-gpg Recommends: python-gevent Recommends: python-geventhttpclient -Obsoletes: %{oldpython}-dulwich-doc +Obsoletes: %{oldpython}-dulwich-doc < 0.20.5 %python_subpackages %description ++++++ dulwich-0.20.6.tar.gz -> dulwich-0.20.11.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/.github/workflows/pythonpackage.yml new/dulwich-0.20.11/.github/workflows/pythonpackage.yml --- old/dulwich-0.20.6/.github/workflows/pythonpackage.yml 2020-08-11 04:15:41.000000000 +0200 +++ new/dulwich-0.20.11/.github/workflows/pythonpackage.yml 2020-10-30 13:37:23.000000000 +0100 @@ -9,7 +9,7 @@ strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] - python-version: [3.5, 3.6, 3.7, 3.8, pypy3] + python-version: [3.5, 3.6, 3.7, 3.8, 3.9, pypy3] exclude: # sqlite3 exit handling seems to get in the way - os: macos-latest diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/.github/workflows/pythonpublish.yml new/dulwich-0.20.11/.github/workflows/pythonpublish.yml --- old/dulwich-0.20.6/.github/workflows/pythonpublish.yml 2020-06-24 14:14:40.000000000 +0200 +++ new/dulwich-0.20.11/.github/workflows/pythonpublish.yml 2020-10-30 14:47:29.000000000 +0100 @@ -12,7 +12,7 @@ strategy: matrix: os: [macos-latest, windows-latest] - python-version: ['3.5', '3.6', '3.7', '3.8'] + python-version: ['3.5', '3.6', '3.7', '3.8', '3.9'] include: - os: ubuntu-latest python-version: '3.x' @@ -20,6 +20,8 @@ exclude: - os: windows-latest python-version: 3.5 + - os: macos-latest + python-version: 3.5 fail-fast: false steps: @@ -38,23 +40,29 @@ - name: Build run: | python setup.py sdist bdist_wheel - mkdir wheelhouse - mv dist/*.whl wheelhouse if: "matrix.os != 'ubuntu-latest'" - name: Build and publish (Linux) - uses: RalfG/python-wheels-manylinux-build@v0.2.2 + uses: RalfG/python-wheels-manylinux-build@v0.3.1 + with: + python-versions: 'cp36-cp36m cp37-cp37m cp38-cp38 cp39-cp39' + env: + # Temporary fix for LD_LIBRARY_PATH issue. See + # https://github.com/RalfG/python-wheels-manylinux-build/issues/26 + LD_LIBRARY_PATH: /usr/local/lib:${{ env.LD_LIBRARY_PATH }} if: "matrix.os == 'ubuntu-latest'" - name: Publish (Linux) env: TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} run: | - twine upload wheelhouse/*manylinux* + # Only include *manylinux* wheels; the other wheels files are built but + # rejected by pip. + twine upload dist/*manylinux*.whl if: "matrix.os == 'ubuntu-latest'" - name: Publish env: TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} run: | - twine upload wheelhouse/* + twine upload dist/*.whl if: "matrix.os != 'ubuntu-latest'" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/NEWS new/dulwich-0.20.11/NEWS --- old/dulwich-0.20.6/NEWS 2020-08-29 23:19:44.000000000 +0200 +++ new/dulwich-0.20.11/NEWS 2020-10-30 14:50:02.000000000 +0100 @@ -1,3 +1,21 @@ +0.20.11 2020-10-30 + + * Fix wheels build on Linux. (Ruslan Kuprieiev) + + * Enable wheels build for Python 3.9 on Linux. (Jelmer Vernooij) + +0.20.8 2020-10-29 + + * Build wheels on Mac OS X / Windows for Python 3.9. + (Jelmer Vernooij) + +0.20.7 2020-10-29 + + * Check core.repositoryformatversion. (Jelmer Vernooij, #803) + + * Fix ACK/NACK handling in archive command handling in dulwich.client. + (DzmitrySudnik, #805) + 0.20.6 2020-08-29 * Add a ``RefsContainer.watch`` interface. @@ -12,6 +30,9 @@ * Fix porcelain.path_to_tree_path for Python 3.5. (Boris Feld, #777) + * Add support for honor proxy environment variables for HTTP. + (Aurélien Campéas, #797) + 0.20.5 2020-06-22 * Print a clearer exception when setup.py is executed on Python < 3.5. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/PKG-INFO new/dulwich-0.20.11/PKG-INFO --- old/dulwich-0.20.6/PKG-INFO 2020-08-29 23:20:51.697083200 +0200 +++ new/dulwich-0.20.11/PKG-INFO 2020-10-30 14:57:29.077870100 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: dulwich -Version: 0.20.6 +Version: 0.20.11 Summary: Python Git Library Home-page: https://www.dulwich.io/ Author: Jelmer Vernooij @@ -96,8 +96,8 @@ Supported versions of Python ---------------------------- - At the moment, Dulwich supports (and is tested on) CPython 3.5, 3.6, - 3.7, 3.8 and Pypy. + At the moment, Dulwich supports (and is tested on) CPython 3.5 and later and + Pypy. The latest release series to support Python 2.x was the 0.19 series. See the 0.19 branch in the Dulwich git repository. @@ -110,6 +110,7 @@ Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 Classifier: Programming Language :: Python :: 3.8 +Classifier: Programming Language :: Python :: 3.9 Classifier: Programming Language :: Python :: Implementation :: CPython Classifier: Programming Language :: Python :: Implementation :: PyPy Classifier: Operating System :: POSIX diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/README.rst new/dulwich-0.20.11/README.rst --- old/dulwich-0.20.6/README.rst 2020-08-11 04:15:50.000000000 +0200 +++ new/dulwich-0.20.11/README.rst 2020-10-30 13:37:23.000000000 +0100 @@ -85,8 +85,8 @@ Supported versions of Python ---------------------------- -At the moment, Dulwich supports (and is tested on) CPython 3.5, 3.6, -3.7, 3.8 and Pypy. +At the moment, Dulwich supports (and is tested on) CPython 3.5 and later and +Pypy. The latest release series to support Python 2.x was the 0.19 series. See the 0.19 branch in the Dulwich git repository. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/SECURITY.md new/dulwich-0.20.11/SECURITY.md --- old/dulwich-0.20.6/SECURITY.md 1970-01-01 01:00:00.000000000 +0100 +++ new/dulwich-0.20.11/SECURITY.md 2020-10-30 13:37:23.000000000 +0100 @@ -0,0 +1,12 @@ +# Security Policy + +## Supported Versions + +| Version | Supported | +| -------- | ------------------ | +| 0.20.x | :white_check_mark: | +| < 0.20.x | :x: | + +## Reporting a Vulnerability + +Please report security issues by e-mail to jel...@jelmer.uk, ideally PGP encrypted to the key at https://jelmer.uk/D729A457.asc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich/__init__.py new/dulwich-0.20.11/dulwich/__init__.py --- old/dulwich-0.20.6/dulwich/__init__.py 2020-08-29 23:16:38.000000000 +0200 +++ new/dulwich-0.20.11/dulwich/__init__.py 2020-10-30 14:49:45.000000000 +0100 @@ -22,4 +22,4 @@ """Python implementation of the Git file formats and protocols.""" -__version__ = (0, 20, 6) +__version__ = (0, 20, 11) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich/client.py new/dulwich-0.20.11/dulwich/client.py --- old/dulwich-0.20.6/dulwich/client.py 2020-08-11 04:15:41.000000000 +0200 +++ new/dulwich-0.20.11/dulwich/client.py 2020-10-30 13:37:23.000000000 +0100 @@ -969,9 +969,9 @@ pkt = proto.read_pkt_line() except HangupException: raise _remote_error_from_stderr(stderr) - if pkt == b"NACK\n": + if pkt == b"NACK\n" or pkt == b"NACK": return - elif pkt == b"ACK\n": + elif pkt == b"ACK\n" or pkt == b"ACK": pass elif pkt.startswith(b"ERR "): raise GitProtocolError( @@ -1476,11 +1476,18 @@ proxy_server = user_agent = None ca_certs = ssl_verify = None + if proxy_server is None: + for proxyname in ('https_proxy', 'http_proxy', 'all_proxy'): + proxy_server = os.environ.get(proxyname) + if proxy_server is not None: + break + if config is not None: - try: - proxy_server = config.get(b"http", b"proxy") - except KeyError: - pass + if proxy_server is None: + try: + proxy_server = config.get(b"http", b"proxy") + except KeyError: + pass try: user_agent = config.get(b"http", b"useragent") except KeyError: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich/protocol.py new/dulwich-0.20.11/dulwich/protocol.py --- old/dulwich-0.20.6/dulwich/protocol.py 2020-06-24 14:14:40.000000000 +0200 +++ new/dulwich-0.20.11/dulwich/protocol.py 2020-10-30 13:37:23.000000000 +0100 @@ -150,6 +150,17 @@ pass +def format_cmd_pkt(cmd, *args): + return cmd + b" " + b"".join([(a + b"\0") for a in args]) + + +def parse_cmd_pkt(line): + splice_at = line.find(b" ") + cmd, args = line[:splice_at], line[splice_at+1:] + assert args[-1:] == b"\x00" + return cmd, args[:-1].split(b"\0") + + def pkt_line(data): """Wrap data in a pkt-line. @@ -327,7 +338,7 @@ cmd: The remote service to access. args: List of arguments to send to remove service. """ - self.write_pkt_line(cmd + b" " + b"".join([(a + b"\0") for a in args])) + self.write_pkt_line(format_cmd_pkt(cmd, *args)) def read_cmd(self): """Read a command and some arguments from the git client @@ -337,10 +348,7 @@ Returns: A tuple of (command, [list of arguments]). """ line = self.read_pkt_line() - splice_at = line.find(b" ") - cmd, args = line[:splice_at], line[splice_at+1:] - assert args[-1:] == b"\x00" - return cmd, args[:-1].split(b"\0") + return parse_cmd_pkt(line) _RBUFSIZE = 8192 # Default read buffer size. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich/repo.py new/dulwich-0.20.11/dulwich/repo.py --- old/dulwich-0.20.6/dulwich/repo.py 2020-08-11 04:15:41.000000000 +0200 +++ new/dulwich-0.20.11/dulwich/repo.py 2020-10-30 13:37:23.000000000 +0100 @@ -963,6 +963,13 @@ return cs[len("gitdir: "):].rstrip("\n") +class UnsupportedVersion(Exception): + """Unsupported repository version.""" + + def __init__(self, version): + self.version = version + + class Repo(BaseRepo): """A git repository backed by local disk. @@ -1001,6 +1008,12 @@ self._commondir = self._controldir self.path = root config = self.get_config() + try: + format_version = int(config.get("core", "repositoryformatversion")) + except KeyError: + format_version = 0 + if format_version != 0: + raise UnsupportedVersion(format_version) object_store = DiskObjectStore.from_config( os.path.join(self.commondir(), OBJECTDIR), config) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich/server.py new/dulwich-0.20.11/dulwich/server.py --- old/dulwich-0.20.6/dulwich/server.py 2020-06-24 14:14:40.000000000 +0200 +++ new/dulwich-0.20.11/dulwich/server.py 2020-10-30 13:37:23.000000000 +0100 @@ -1081,7 +1081,7 @@ commit_sha = self.repo.refs[argument] tree = store[store[commit_sha].tree] i += 1 - self.proto.write_pkt_line(b'ACK\n') + self.proto.write_pkt_line(b'ACK') self.proto.write_pkt_line(None) for chunk in tar_stream( store, tree, mtime=time.time(), prefix=prefix, format=format): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich/tests/test_client.py new/dulwich-0.20.11/dulwich/tests/test_client.py --- old/dulwich-0.20.6/dulwich/tests/test_client.py 2020-08-11 04:15:41.000000000 +0200 +++ new/dulwich-0.20.11/dulwich/tests/test_client.py 2020-10-30 13:37:23.000000000 +0100 @@ -1108,6 +1108,18 @@ self.assertEqual(manager.proxy.host, 'localhost') self.assertEqual(manager.proxy.port, 3128) + def test_environment_proxy(self): + import urllib3 + config = ConfigDict() + os.environ['http_proxy'] = 'http://myproxy:8080' + manager = default_urllib3_manager(config=config) + self.assertIsInstance(manager, urllib3.ProxyManager) + self.assertTrue(hasattr(manager, 'proxy')) + self.assertEqual(manager.proxy.scheme, 'http') + self.assertEqual(manager.proxy.host, 'myproxy') + self.assertEqual(manager.proxy.port, 8080) + del os.environ['http_proxy'] + def test_config_proxy_custom_cls(self): import urllib3 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich/tests/test_repository.py new/dulwich-0.20.11/dulwich/tests/test_repository.py --- old/dulwich-0.20.6/dulwich/tests/test_repository.py 2020-08-11 04:15:41.000000000 +0200 +++ new/dulwich-0.20.11/dulwich/tests/test_repository.py 2020-10-30 13:37:23.000000000 +0100 @@ -41,6 +41,7 @@ Repo, MemoryRepo, check_user_identity, + UnsupportedVersion, ) from dulwich.tests import ( TestCase, @@ -872,6 +873,13 @@ r = Repo(self._repo_dir) self.assertEqual(r.object_store.loose_compression_level, 4) + def test_repositoryformatversion(self): + r = self._repo + c = r.get_config() + c.set(('core',), 'repositoryformatversion', '2') + c.write_to_path() + self.assertRaises(UnsupportedVersion, Repo, self._repo_dir) + def test_commit_encoding_from_config(self): r = self._repo c = r.get_config() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich.egg-info/PKG-INFO new/dulwich-0.20.11/dulwich.egg-info/PKG-INFO --- old/dulwich-0.20.6/dulwich.egg-info/PKG-INFO 2020-08-29 23:20:51.000000000 +0200 +++ new/dulwich-0.20.11/dulwich.egg-info/PKG-INFO 2020-10-30 14:57:28.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: dulwich -Version: 0.20.6 +Version: 0.20.11 Summary: Python Git Library Home-page: https://www.dulwich.io/ Author: Jelmer Vernooij @@ -96,8 +96,8 @@ Supported versions of Python ---------------------------- - At the moment, Dulwich supports (and is tested on) CPython 3.5, 3.6, - 3.7, 3.8 and Pypy. + At the moment, Dulwich supports (and is tested on) CPython 3.5 and later and + Pypy. The latest release series to support Python 2.x was the 0.19 series. See the 0.19 branch in the Dulwich git repository. @@ -110,6 +110,7 @@ Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 Classifier: Programming Language :: Python :: 3.8 +Classifier: Programming Language :: Python :: 3.9 Classifier: Programming Language :: Python :: Implementation :: CPython Classifier: Programming Language :: Python :: Implementation :: PyPy Classifier: Operating System :: POSIX diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/dulwich.egg-info/SOURCES.txt new/dulwich-0.20.11/dulwich.egg-info/SOURCES.txt --- old/dulwich-0.20.6/dulwich.egg-info/SOURCES.txt 2020-08-29 23:20:51.000000000 +0200 +++ new/dulwich-0.20.11/dulwich.egg-info/SOURCES.txt 2020-10-30 14:57:28.000000000 +0100 @@ -11,6 +11,7 @@ NEWS README.rst README.swift.rst +SECURITY.md TODO build.cmd dulwich.cfg diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dulwich-0.20.6/setup.py new/dulwich-0.20.11/setup.py --- old/dulwich-0.20.6/setup.py 2020-08-29 23:16:31.000000000 +0200 +++ new/dulwich-0.20.11/setup.py 2020-10-30 14:49:58.000000000 +0100 @@ -23,7 +23,7 @@ 'For 2.7 support, please install a version prior to 0.20') -dulwich_version_string = '0.20.6' +dulwich_version_string = '0.20.11' class DulwichDistribution(Distribution): @@ -124,6 +124,7 @@ 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', + 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', 'Operating System :: POSIX', _______________________________________________ openSUSE Commits mailing list -- commit@lists.opensuse.org To unsubscribe, email commit-le...@lists.opensuse.org List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette List Archives: https://lists.opensuse.org/archives/list/commit@lists.opensuse.org