devpi-builder 6.1.0__tar.gz → 7.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/.github/workflows/tests.yml +13 -3
- devpi_builder-7.0.0/.python-version +1 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/CHANGELOG.rst +20 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/PKG-INFO +39 -8
- devpi_builder-7.0.0/core-requirements.txt +8 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder/cli.py +2 -2
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder.egg-info/PKG-INFO +39 -8
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder.egg-info/SOURCES.txt +2 -1
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder.egg-info/requires.txt +3 -3
- devpi_builder-7.0.0/pyproject.toml +8 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/requirements.in +2 -1
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/requirements.txt +109 -113
- devpi_builder-7.0.0/setup.cfg +4 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/setup.py +3 -6
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/test_cli.py +21 -12
- devpi-builder-6.1.0/core-requirements.txt +0 -8
- devpi-builder-6.1.0/setup.cfg +0 -10
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/.coveragerc +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/.github/workflows/publish.yml +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/.gitignore +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/.pyup.yml +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/COPYING +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/MANIFEST.in +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/README.rst +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder/__init__.py +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder/requirements.py +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder/wheeler.py +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder.egg-info/dependency_links.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder.egg-info/entry_points.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/devpi_builder.egg-info/top_level.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/non-ascii_package/dist/non-ascii-package-0.1.dev1.tar.gz +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/non-ascii_package/setup.cfg +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/non-ascii_package/setup.py +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/non-pure_package/dist/test_package-0.1.dev1-cp27-none-linux_x86_64.whl +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/non-pure_package/setup.cfg +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/non-pure_package/setup.py +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/pure_package/dist/test_package-0.1.dev1-py2.py3-none-any.whl +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/pure_package/setup.cfg +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/pure_package/setup.py +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/pure_package/test_package/__init__.py +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_blacklist.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_comments.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_continue_on_failed.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_different_styles.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_inexact_version.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_junit.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_multiple_versions.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_multiple_versions_on_line.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_no_version.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_non-ascii.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_pure_and_non-pure.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_simple.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_test_package.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_vcs.txt +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/test_requirements.py +0 -0
- {devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/test_wheeler.py +0 -0
|
@@ -10,8 +10,9 @@ jobs:
|
|
|
10
10
|
test:
|
|
11
11
|
runs-on: ubuntu-latest
|
|
12
12
|
strategy:
|
|
13
|
+
fail-fast: false
|
|
13
14
|
matrix:
|
|
14
|
-
python-version: ['3.
|
|
15
|
+
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
|
|
15
16
|
steps:
|
|
16
17
|
- uses: actions/checkout@v3
|
|
17
18
|
- name: Set up Python ${{ matrix.python-version }}
|
|
@@ -21,16 +22,25 @@ jobs:
|
|
|
21
22
|
- name: Install dependencies
|
|
22
23
|
run: |
|
|
23
24
|
python -m pip install --upgrade pip
|
|
25
|
+
# requirements.txt omits setuptools (pip-compile); setuptools<82 needed for pkg_resources (devpi-server)
|
|
26
|
+
python -m pip install 'setuptools<82'
|
|
24
27
|
python -m pip install -r requirements.txt
|
|
25
28
|
python -m pip install --no-deps -e .
|
|
26
|
-
python
|
|
29
|
+
if [ "${{ matrix.python-version }}" != "3.13" ]; then # workaround for TheKevJames/coveralls-python#523
|
|
30
|
+
python -m pip install coveralls
|
|
31
|
+
fi
|
|
27
32
|
python -m pip freeze
|
|
28
33
|
python -m pip --version
|
|
29
34
|
python -c 'import setuptools; print(f"setuptools=={setuptools.__version__}")'
|
|
30
35
|
- name: Test with pytest
|
|
31
36
|
run: |
|
|
32
|
-
|
|
37
|
+
if [ "${{ matrix.python-version }}" == "3.13" ]; then
|
|
38
|
+
pytest --no-cov # workaround for TheKevJames/coveralls-python#523
|
|
39
|
+
else
|
|
40
|
+
pytest
|
|
41
|
+
fi
|
|
33
42
|
- name: Upload coverage data
|
|
43
|
+
if: matrix.python-version != '3.13' # workaround for TheKevJames/coveralls-python#523
|
|
34
44
|
run: |
|
|
35
45
|
coveralls --service=github
|
|
36
46
|
env:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.9
|
|
@@ -5,6 +5,26 @@ Changelog
|
|
|
5
5
|
This lists the most important changes for each release.
|
|
6
6
|
|
|
7
7
|
|
|
8
|
+
Version 7.0.0 - 2026-02-16
|
|
9
|
+
==========================
|
|
10
|
+
|
|
11
|
+
Added
|
|
12
|
+
-----
|
|
13
|
+
|
|
14
|
+
* Support for Python 3.12 and 3.13.
|
|
15
|
+
* Compatibility with junit-xml >= 2.0.
|
|
16
|
+
|
|
17
|
+
Fixed
|
|
18
|
+
-----
|
|
19
|
+
|
|
20
|
+
* Ensure Setuptools and ``wheel-filename`` are installed in compatible versions.
|
|
21
|
+
|
|
22
|
+
Removed
|
|
23
|
+
-------
|
|
24
|
+
|
|
25
|
+
* Python 3.6 to 3.8 are no longer supported. They likely still works but we will no longer run CI against it.
|
|
26
|
+
* Compatibility with junit-xml < 1.9. Junit-xml 1.9 was released more than three years ago.
|
|
27
|
+
|
|
8
28
|
Version 6.1.0 — 2023-09-22
|
|
9
29
|
==========================
|
|
10
30
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: devpi-builder
|
|
3
|
-
Version:
|
|
3
|
+
Version: 7.0.0
|
|
4
4
|
Summary: Devpi-builder takes a requirements.txt and incrementally fills a devpi index with wheels of the listed python packages.
|
|
5
5
|
Home-page: https://github.com/blue-yonder/devpi-builder
|
|
6
6
|
Author: Matthias Bach
|
|
@@ -13,22 +13,33 @@ Classifier: Intended Audience :: System Administrators
|
|
|
13
13
|
Classifier: License :: OSI Approved :: BSD License
|
|
14
14
|
Classifier: Topic :: System :: Archiving :: Packaging
|
|
15
15
|
Classifier: Programming Language :: Python :: 3
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
17
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
18
16
|
Classifier: Programming Language :: Python :: 3.9
|
|
19
17
|
Classifier: Programming Language :: Python :: 3.10
|
|
20
18
|
Classifier: Programming Language :: Python :: 3.11
|
|
21
|
-
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Requires-Python: >=3.9
|
|
22
22
|
Description-Content-Type: text/x-rst
|
|
23
23
|
License-File: COPYING
|
|
24
24
|
Requires-Dist: devpi-plumber>=0.2.14
|
|
25
|
-
Requires-Dist: setuptools
|
|
25
|
+
Requires-Dist: setuptools<82
|
|
26
26
|
Requires-Dist: wheel
|
|
27
|
-
Requires-Dist: wheel-filename
|
|
27
|
+
Requires-Dist: wheel-filename<2
|
|
28
28
|
Requires-Dist: wheel-inspect>=1.6.0
|
|
29
29
|
Requires-Dist: pip>=1.5.3
|
|
30
|
-
Requires-Dist: junit-xml
|
|
30
|
+
Requires-Dist: junit-xml>=1.9
|
|
31
31
|
Requires-Dist: pip-requirements-parser>=32.0.1
|
|
32
|
+
Dynamic: author
|
|
33
|
+
Dynamic: author-email
|
|
34
|
+
Dynamic: classifier
|
|
35
|
+
Dynamic: description
|
|
36
|
+
Dynamic: description-content-type
|
|
37
|
+
Dynamic: home-page
|
|
38
|
+
Dynamic: license
|
|
39
|
+
Dynamic: license-file
|
|
40
|
+
Dynamic: requires-dist
|
|
41
|
+
Dynamic: requires-python
|
|
42
|
+
Dynamic: summary
|
|
32
43
|
|
|
33
44
|
=========================
|
|
34
45
|
Brandon the Devpi Builder
|
|
@@ -137,6 +148,26 @@ Changelog
|
|
|
137
148
|
This lists the most important changes for each release.
|
|
138
149
|
|
|
139
150
|
|
|
151
|
+
Version 7.0.0 - 2026-02-16
|
|
152
|
+
==========================
|
|
153
|
+
|
|
154
|
+
Added
|
|
155
|
+
-----
|
|
156
|
+
|
|
157
|
+
* Support for Python 3.12 and 3.13.
|
|
158
|
+
* Compatibility with junit-xml >= 2.0.
|
|
159
|
+
|
|
160
|
+
Fixed
|
|
161
|
+
-----
|
|
162
|
+
|
|
163
|
+
* Ensure Setuptools and ``wheel-filename`` are installed in compatible versions.
|
|
164
|
+
|
|
165
|
+
Removed
|
|
166
|
+
-------
|
|
167
|
+
|
|
168
|
+
* Python 3.6 to 3.8 are no longer supported. They likely still works but we will no longer run CI against it.
|
|
169
|
+
* Compatibility with junit-xml < 1.9. Junit-xml 1.9 was released more than three years ago.
|
|
170
|
+
|
|
140
171
|
Version 6.1.0 — 2023-09-22
|
|
141
172
|
==========================
|
|
142
173
|
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
devpi-plumber>=0.2.14
|
|
2
|
+
setuptools<82 # setuptools 82 drops pkg_resources
|
|
3
|
+
wheel
|
|
4
|
+
wheel-filename<2 # wheel-filename 2 breaks imports of InvalidFilenameError, parse_wheel_filename
|
|
5
|
+
wheel-inspect>=1.6.0
|
|
6
|
+
pip>=1.5.3
|
|
7
|
+
junit-xml>=1.9 # First version to support to_xml_report_file
|
|
8
|
+
pip-requirements-parser>=32.0.1
|
|
@@ -11,7 +11,7 @@ import locale
|
|
|
11
11
|
import logging
|
|
12
12
|
import os
|
|
13
13
|
|
|
14
|
-
from junit_xml import TestSuite, TestCase
|
|
14
|
+
from junit_xml import TestSuite, TestCase, to_xml_report_file
|
|
15
15
|
from devpi_plumber.client import DevpiClient, DevpiClientError
|
|
16
16
|
|
|
17
17
|
from devpi_builder import requirements, wheeler
|
|
@@ -127,7 +127,7 @@ class Processor(object):
|
|
|
127
127
|
encoding = locale.getpreferredencoding()
|
|
128
128
|
with codecs.open(self._junit_xml, 'w', encoding) as output:
|
|
129
129
|
test_suite = TestSuite('devpi-builder results', self._results)
|
|
130
|
-
|
|
130
|
+
to_xml_report_file(output, [test_suite], encoding=encoding)
|
|
131
131
|
|
|
132
132
|
|
|
133
133
|
def main(args=None):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: devpi-builder
|
|
3
|
-
Version:
|
|
3
|
+
Version: 7.0.0
|
|
4
4
|
Summary: Devpi-builder takes a requirements.txt and incrementally fills a devpi index with wheels of the listed python packages.
|
|
5
5
|
Home-page: https://github.com/blue-yonder/devpi-builder
|
|
6
6
|
Author: Matthias Bach
|
|
@@ -13,22 +13,33 @@ Classifier: Intended Audience :: System Administrators
|
|
|
13
13
|
Classifier: License :: OSI Approved :: BSD License
|
|
14
14
|
Classifier: Topic :: System :: Archiving :: Packaging
|
|
15
15
|
Classifier: Programming Language :: Python :: 3
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
17
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
18
16
|
Classifier: Programming Language :: Python :: 3.9
|
|
19
17
|
Classifier: Programming Language :: Python :: 3.10
|
|
20
18
|
Classifier: Programming Language :: Python :: 3.11
|
|
21
|
-
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Requires-Python: >=3.9
|
|
22
22
|
Description-Content-Type: text/x-rst
|
|
23
23
|
License-File: COPYING
|
|
24
24
|
Requires-Dist: devpi-plumber>=0.2.14
|
|
25
|
-
Requires-Dist: setuptools
|
|
25
|
+
Requires-Dist: setuptools<82
|
|
26
26
|
Requires-Dist: wheel
|
|
27
|
-
Requires-Dist: wheel-filename
|
|
27
|
+
Requires-Dist: wheel-filename<2
|
|
28
28
|
Requires-Dist: wheel-inspect>=1.6.0
|
|
29
29
|
Requires-Dist: pip>=1.5.3
|
|
30
|
-
Requires-Dist: junit-xml
|
|
30
|
+
Requires-Dist: junit-xml>=1.9
|
|
31
31
|
Requires-Dist: pip-requirements-parser>=32.0.1
|
|
32
|
+
Dynamic: author
|
|
33
|
+
Dynamic: author-email
|
|
34
|
+
Dynamic: classifier
|
|
35
|
+
Dynamic: description
|
|
36
|
+
Dynamic: description-content-type
|
|
37
|
+
Dynamic: home-page
|
|
38
|
+
Dynamic: license
|
|
39
|
+
Dynamic: license-file
|
|
40
|
+
Dynamic: requires-dist
|
|
41
|
+
Dynamic: requires-python
|
|
42
|
+
Dynamic: summary
|
|
32
43
|
|
|
33
44
|
=========================
|
|
34
45
|
Brandon the Devpi Builder
|
|
@@ -137,6 +148,26 @@ Changelog
|
|
|
137
148
|
This lists the most important changes for each release.
|
|
138
149
|
|
|
139
150
|
|
|
151
|
+
Version 7.0.0 - 2026-02-16
|
|
152
|
+
==========================
|
|
153
|
+
|
|
154
|
+
Added
|
|
155
|
+
-----
|
|
156
|
+
|
|
157
|
+
* Support for Python 3.12 and 3.13.
|
|
158
|
+
* Compatibility with junit-xml >= 2.0.
|
|
159
|
+
|
|
160
|
+
Fixed
|
|
161
|
+
-----
|
|
162
|
+
|
|
163
|
+
* Ensure Setuptools and ``wheel-filename`` are installed in compatible versions.
|
|
164
|
+
|
|
165
|
+
Removed
|
|
166
|
+
-------
|
|
167
|
+
|
|
168
|
+
* Python 3.6 to 3.8 are no longer supported. They likely still works but we will no longer run CI against it.
|
|
169
|
+
* Compatibility with junit-xml < 1.9. Junit-xml 1.9 was released more than three years ago.
|
|
170
|
+
|
|
140
171
|
Version 6.1.0 — 2023-09-22
|
|
141
172
|
==========================
|
|
142
173
|
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
.coveragerc
|
|
2
2
|
.gitignore
|
|
3
|
+
.python-version
|
|
3
4
|
.pyup.yml
|
|
4
5
|
CHANGELOG.rst
|
|
5
6
|
COPYING
|
|
6
7
|
MANIFEST.in
|
|
7
8
|
README.rst
|
|
8
9
|
core-requirements.txt
|
|
10
|
+
pyproject.toml
|
|
9
11
|
requirements.in
|
|
10
12
|
requirements.txt
|
|
11
|
-
setup.cfg
|
|
12
13
|
setup.py
|
|
13
14
|
.github/workflows/publish.yml
|
|
14
15
|
.github/workflows/tests.yml
|
|
@@ -1,193 +1,187 @@
|
|
|
1
1
|
#
|
|
2
|
-
# This file is autogenerated by pip-compile with Python 3.
|
|
2
|
+
# This file is autogenerated by pip-compile with Python 3.9
|
|
3
3
|
# by the following command:
|
|
4
4
|
#
|
|
5
|
-
# pip-compile --no-emit-index-url
|
|
5
|
+
# pip-compile --no-emit-index-url --strip-extras
|
|
6
6
|
#
|
|
7
|
-
|
|
8
|
-
# via
|
|
9
|
-
|
|
10
|
-
# via aiohttp
|
|
11
|
-
argon2-cffi==21.3.0
|
|
7
|
+
anyio==4.9.0
|
|
8
|
+
# via httpx
|
|
9
|
+
argon2-cffi==23.1.0
|
|
12
10
|
# via
|
|
13
11
|
# devpi-server
|
|
14
12
|
# passlib
|
|
15
13
|
argon2-cffi-bindings==21.2.0
|
|
16
14
|
# via argon2-cffi
|
|
17
|
-
|
|
18
|
-
# via aiohttp
|
|
19
|
-
attrs==21.4.0
|
|
15
|
+
attrs==25.3.0
|
|
20
16
|
# via
|
|
21
|
-
# aiohttp
|
|
22
17
|
# devpi-server
|
|
23
|
-
#
|
|
18
|
+
# headerparser
|
|
24
19
|
# wheel-inspect
|
|
25
|
-
|
|
26
|
-
# via readme-renderer
|
|
27
|
-
build==0.8.0
|
|
28
|
-
# via check-manifest
|
|
29
|
-
certifi==2023.7.22
|
|
30
|
-
# via requests
|
|
31
|
-
cffi==1.15.0
|
|
32
|
-
# via argon2-cffi-bindings
|
|
33
|
-
charset-normalizer==2.0.12
|
|
20
|
+
build==1.2.2.post1
|
|
34
21
|
# via
|
|
35
|
-
#
|
|
22
|
+
# check-manifest
|
|
23
|
+
# devpi-client
|
|
24
|
+
certifi==2025.1.31
|
|
25
|
+
# via
|
|
26
|
+
# httpcore
|
|
27
|
+
# httpx
|
|
36
28
|
# requests
|
|
37
|
-
|
|
29
|
+
cffi==1.17.1
|
|
30
|
+
# via argon2-cffi-bindings
|
|
31
|
+
charset-normalizer==3.4.1
|
|
32
|
+
# via requests
|
|
33
|
+
check-manifest==0.50
|
|
38
34
|
# via devpi-client
|
|
39
|
-
coverage
|
|
35
|
+
coverage==7.8.0
|
|
40
36
|
# via pytest-cov
|
|
41
37
|
defusedxml==0.7.1
|
|
42
38
|
# via devpi-server
|
|
43
|
-
|
|
39
|
+
deprecated==1.2.18
|
|
40
|
+
# via headerparser
|
|
41
|
+
devpi-client==7.2.0
|
|
44
42
|
# via devpi-plumber
|
|
45
|
-
devpi-common==
|
|
43
|
+
devpi-common==4.0.4
|
|
46
44
|
# via
|
|
47
45
|
# devpi-client
|
|
48
46
|
# devpi-server
|
|
49
|
-
devpi-plumber
|
|
47
|
+
devpi-plumber==0.7.0
|
|
50
48
|
# via
|
|
51
49
|
# -r core-requirements.txt
|
|
52
50
|
# -r requirements.in
|
|
53
|
-
devpi-server==6.
|
|
51
|
+
devpi-server==6.14.0
|
|
54
52
|
# via devpi-plumber
|
|
55
|
-
|
|
56
|
-
# via virtualenv
|
|
57
|
-
docutils==0.19
|
|
53
|
+
docutils==0.21.2
|
|
58
54
|
# via readme-renderer
|
|
59
|
-
entry-points-txt==0.1
|
|
55
|
+
entry-points-txt==0.2.1
|
|
60
56
|
# via wheel-inspect
|
|
61
|
-
|
|
62
|
-
# via
|
|
63
|
-
# tox
|
|
64
|
-
# virtualenv
|
|
65
|
-
frozenlist==1.3.3
|
|
57
|
+
exceptiongroup==1.2.2
|
|
66
58
|
# via
|
|
67
|
-
#
|
|
68
|
-
#
|
|
69
|
-
|
|
59
|
+
# anyio
|
|
60
|
+
# pytest
|
|
61
|
+
h11==0.16.0
|
|
62
|
+
# via httpcore
|
|
63
|
+
headerparser==0.5.2
|
|
70
64
|
# via wheel-inspect
|
|
71
|
-
|
|
65
|
+
httpcore==1.0.9
|
|
66
|
+
# via httpx
|
|
67
|
+
httpx==0.28.1
|
|
68
|
+
# via devpi-server
|
|
69
|
+
hupper==1.12.1
|
|
72
70
|
# via pyramid
|
|
73
|
-
idna==3.
|
|
71
|
+
idna==3.10
|
|
74
72
|
# via
|
|
73
|
+
# anyio
|
|
74
|
+
# httpx
|
|
75
75
|
# requests
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
#
|
|
79
|
-
|
|
76
|
+
importlib-metadata==8.6.1
|
|
77
|
+
# via
|
|
78
|
+
# build
|
|
79
|
+
# setuptools-scm
|
|
80
|
+
iniconfig==2.1.0
|
|
81
|
+
# via
|
|
82
|
+
# devpi-client
|
|
83
|
+
# pytest
|
|
84
|
+
itsdangerous==2.2.0
|
|
80
85
|
# via devpi-server
|
|
81
86
|
junit-xml==1.9
|
|
82
87
|
# via -r core-requirements.txt
|
|
83
|
-
lazy==1.
|
|
88
|
+
lazy==1.6
|
|
84
89
|
# via
|
|
85
90
|
# devpi-common
|
|
86
91
|
# devpi-server
|
|
87
|
-
|
|
92
|
+
legacy-cgi==2.6.4
|
|
88
93
|
# via -r requirements.in
|
|
89
|
-
|
|
90
|
-
# via
|
|
91
|
-
|
|
92
|
-
#
|
|
93
|
-
packaging==
|
|
94
|
+
mock==5.2.0
|
|
95
|
+
# via -r requirements.in
|
|
96
|
+
nh3==0.2.21
|
|
97
|
+
# via readme-renderer
|
|
98
|
+
packaging==25.0
|
|
94
99
|
# via
|
|
95
100
|
# build
|
|
101
|
+
# packaging-legacy
|
|
96
102
|
# pip-requirements-parser
|
|
97
103
|
# pytest
|
|
98
104
|
# setuptools-scm
|
|
99
|
-
#
|
|
105
|
+
# wheel
|
|
100
106
|
# wheel-inspect
|
|
101
|
-
|
|
107
|
+
packaging-legacy==23.0.post0
|
|
108
|
+
# via devpi-common
|
|
109
|
+
passlib==1.7.4
|
|
102
110
|
# via devpi-server
|
|
103
|
-
pastedeploy==
|
|
111
|
+
pastedeploy==3.1.0
|
|
104
112
|
# via plaster-pastedeploy
|
|
105
|
-
pep517==0.12.0
|
|
106
|
-
# via build
|
|
107
113
|
pip-requirements-parser==32.0.1
|
|
108
114
|
# via -r core-requirements.txt
|
|
109
|
-
pkginfo==1.
|
|
115
|
+
pkginfo==1.12.1.2
|
|
110
116
|
# via devpi-client
|
|
111
|
-
plaster==1.
|
|
117
|
+
plaster==1.1.2
|
|
112
118
|
# via
|
|
113
119
|
# plaster-pastedeploy
|
|
114
120
|
# pyramid
|
|
115
|
-
plaster-pastedeploy==0.
|
|
121
|
+
plaster-pastedeploy==1.0.1
|
|
116
122
|
# via pyramid
|
|
117
|
-
platformdirs==
|
|
118
|
-
# via
|
|
119
|
-
# devpi-server
|
|
120
|
-
# virtualenv
|
|
121
|
-
pluggy==1.0.0
|
|
123
|
+
platformdirs==4.3.7
|
|
122
124
|
# via
|
|
123
125
|
# devpi-client
|
|
124
126
|
# devpi-server
|
|
125
|
-
|
|
126
|
-
# tox
|
|
127
|
-
py==1.11.0
|
|
127
|
+
pluggy==1.5.0
|
|
128
128
|
# via
|
|
129
129
|
# devpi-client
|
|
130
|
-
# devpi-common
|
|
131
130
|
# devpi-server
|
|
132
131
|
# pytest
|
|
133
|
-
|
|
134
|
-
|
|
132
|
+
py==1.11.0
|
|
133
|
+
# via devpi-server
|
|
134
|
+
pycparser==2.22
|
|
135
135
|
# via cffi
|
|
136
|
-
pygments==2.
|
|
136
|
+
pygments==2.19.1
|
|
137
137
|
# via readme-renderer
|
|
138
|
-
pyparsing==3.
|
|
139
|
-
# via
|
|
140
|
-
|
|
141
|
-
#
|
|
138
|
+
pyparsing==3.2.3
|
|
139
|
+
# via pip-requirements-parser
|
|
140
|
+
pyproject-hooks==1.2.0
|
|
141
|
+
# via build
|
|
142
142
|
pyramid==2.0.2
|
|
143
143
|
# via devpi-server
|
|
144
|
-
pytest==
|
|
144
|
+
pytest==8.3.5
|
|
145
145
|
# via
|
|
146
146
|
# -r requirements.in
|
|
147
147
|
# pytest-cov
|
|
148
148
|
# pytest-mock
|
|
149
|
-
pytest-cov==
|
|
149
|
+
pytest-cov==6.1.1
|
|
150
150
|
# via -r requirements.in
|
|
151
|
-
pytest-mock==3.
|
|
151
|
+
pytest-mock==3.14.0
|
|
152
152
|
# via -r requirements.in
|
|
153
|
-
python-dateutil==2.
|
|
153
|
+
python-dateutil==2.9.0.post0
|
|
154
154
|
# via strictyaml
|
|
155
|
-
readme-renderer==
|
|
155
|
+
readme-renderer==44.0
|
|
156
156
|
# via wheel-inspect
|
|
157
157
|
repoze-lru==0.7
|
|
158
158
|
# via devpi-server
|
|
159
|
-
requests==2.
|
|
159
|
+
requests==2.32.4
|
|
160
160
|
# via
|
|
161
161
|
# devpi-common
|
|
162
162
|
# devpi-plumber
|
|
163
|
-
ruamel-yaml==0.
|
|
163
|
+
ruamel-yaml==0.18.10
|
|
164
164
|
# via devpi-server
|
|
165
|
-
ruamel-yaml-clib==0.2.
|
|
165
|
+
ruamel-yaml-clib==0.2.12
|
|
166
166
|
# via ruamel-yaml
|
|
167
|
-
setuptools-scm==
|
|
167
|
+
setuptools-scm==8.3.1
|
|
168
168
|
# via -r requirements.in
|
|
169
|
-
six==1.
|
|
169
|
+
six==1.17.0
|
|
170
170
|
# via
|
|
171
|
-
# bleach
|
|
172
|
-
# headerparser
|
|
173
171
|
# junit-xml
|
|
174
172
|
# python-dateutil
|
|
175
|
-
|
|
176
|
-
#
|
|
177
|
-
strictyaml==1.
|
|
173
|
+
sniffio==1.3.1
|
|
174
|
+
# via anyio
|
|
175
|
+
strictyaml==1.7.3
|
|
178
176
|
# via devpi-server
|
|
179
|
-
|
|
180
|
-
# via tox
|
|
181
|
-
tomli==2.0.1
|
|
177
|
+
tomli==2.2.1
|
|
182
178
|
# via
|
|
183
179
|
# build
|
|
184
180
|
# check-manifest
|
|
185
181
|
# coverage
|
|
186
|
-
#
|
|
182
|
+
# devpi-client
|
|
187
183
|
# pytest
|
|
188
184
|
# setuptools-scm
|
|
189
|
-
tox==3.25.0
|
|
190
|
-
# via devpi-client
|
|
191
185
|
translationstring==1.4
|
|
192
186
|
# via pyramid
|
|
193
187
|
twitter-common-contextutil==0.3.11
|
|
@@ -196,31 +190,33 @@ twitter-common-dirutil==0.3.11
|
|
|
196
190
|
# via twitter-common-contextutil
|
|
197
191
|
twitter-common-lang==0.3.11
|
|
198
192
|
# via twitter-common-dirutil
|
|
199
|
-
|
|
193
|
+
typing-extensions==4.13.2
|
|
194
|
+
# via
|
|
195
|
+
# anyio
|
|
196
|
+
# setuptools-scm
|
|
197
|
+
urllib3==2.6.3
|
|
200
198
|
# via requests
|
|
201
|
-
venusian==3.
|
|
199
|
+
venusian==3.1.1
|
|
202
200
|
# via pyramid
|
|
203
|
-
|
|
204
|
-
# via tox
|
|
205
|
-
waitress==2.1.2
|
|
201
|
+
waitress==3.0.2
|
|
206
202
|
# via devpi-server
|
|
207
|
-
|
|
208
|
-
# via bleach
|
|
209
|
-
webob==1.8.7
|
|
203
|
+
webob==1.8.9
|
|
210
204
|
# via pyramid
|
|
211
|
-
wheel==0.
|
|
205
|
+
wheel==0.46.2
|
|
212
206
|
# via -r core-requirements.txt
|
|
213
|
-
wheel-filename==1.4.
|
|
207
|
+
wheel-filename==1.4.2
|
|
214
208
|
# via
|
|
215
209
|
# -r core-requirements.txt
|
|
216
210
|
# wheel-inspect
|
|
217
|
-
wheel-inspect==1.7.
|
|
211
|
+
wheel-inspect==1.7.2
|
|
218
212
|
# via -r core-requirements.txt
|
|
219
|
-
|
|
220
|
-
# via
|
|
221
|
-
|
|
213
|
+
wrapt==1.17.2
|
|
214
|
+
# via deprecated
|
|
215
|
+
zipp==3.21.0
|
|
216
|
+
# via importlib-metadata
|
|
217
|
+
zope-deprecation==5.1
|
|
222
218
|
# via pyramid
|
|
223
|
-
zope-interface==
|
|
219
|
+
zope-interface==7.2
|
|
224
220
|
# via pyramid
|
|
225
221
|
|
|
226
222
|
# The following packages are considered to be unsafe in a requirements file:
|
|
@@ -19,10 +19,7 @@ setup(
|
|
|
19
19
|
long_description_content_type='text/x-rst',
|
|
20
20
|
license='new BSD',
|
|
21
21
|
install_requires=requirements,
|
|
22
|
-
python_requires='>=3.
|
|
23
|
-
setup_requires=[
|
|
24
|
-
'setuptools_scm',
|
|
25
|
-
],
|
|
22
|
+
python_requires='>=3.9',
|
|
26
23
|
classifiers=[
|
|
27
24
|
'Development Status :: 5 - Production/Stable',
|
|
28
25
|
'Environment :: Console',
|
|
@@ -31,11 +28,11 @@ setup(
|
|
|
31
28
|
'License :: OSI Approved :: BSD License',
|
|
32
29
|
'Topic :: System :: Archiving :: Packaging',
|
|
33
30
|
'Programming Language :: Python :: 3',
|
|
34
|
-
'Programming Language :: Python :: 3.7',
|
|
35
|
-
'Programming Language :: Python :: 3.8',
|
|
36
31
|
'Programming Language :: Python :: 3.9',
|
|
37
32
|
'Programming Language :: Python :: 3.10',
|
|
38
33
|
'Programming Language :: Python :: 3.11',
|
|
34
|
+
'Programming Language :: Python :: 3.12',
|
|
35
|
+
'Programming Language :: Python :: 3.13',
|
|
39
36
|
],
|
|
40
37
|
entry_points={
|
|
41
38
|
'console_scripts': [
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import xml.etree.ElementTree as ET
|
|
4
4
|
|
|
5
5
|
import pytest
|
|
6
|
+
import requests
|
|
6
7
|
|
|
7
8
|
from mock import patch
|
|
8
9
|
from devpi_plumber.server import TestServer
|
|
@@ -26,7 +27,7 @@ INDICES = {
|
|
|
26
27
|
}
|
|
27
28
|
|
|
28
29
|
|
|
29
|
-
@pytest.
|
|
30
|
+
@pytest.fixture()
|
|
30
31
|
def devpi():
|
|
31
32
|
with TestServer(USERS, INDICES) as _devpi:
|
|
32
33
|
yield _devpi
|
|
@@ -187,20 +188,28 @@ def test_reports_junit_xml(devpi, tmpdir):
|
|
|
187
188
|
_assert_junit_xml_content(junit_filename)
|
|
188
189
|
|
|
189
190
|
|
|
190
|
-
def test_handles_non_ascii_build_output(
|
|
191
|
-
monkeypatch.setenv('PIP_INDEX_URL', devpi.url + '/' + PURE_INDEX)
|
|
191
|
+
def test_handles_non_ascii_build_output(tmpdir, monkeypatch):
|
|
192
192
|
|
|
193
|
-
with
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
193
|
+
with TestServer(USERS, {
|
|
194
|
+
PURE_INDEX: {'bases': '/root/pypi'},
|
|
195
|
+
INDEX: {'bases': ''},
|
|
196
|
+
}) as devpi:
|
|
197
|
+
sdist_index = devpi.url + '/' + PURE_INDEX
|
|
197
198
|
|
|
198
|
-
|
|
199
|
+
monkeypatch.setenv('PIP_INDEX_URL', sdist_index)
|
|
199
200
|
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
201
|
+
# trigger retrieval of setuptools from upstream as that can take forever
|
|
202
|
+
requests.get(sdist_index + '/+simple/setuptools/', timeout=300).raise_for_status()
|
|
203
|
+
|
|
204
|
+
with DevpiClient(sdist_index, USER, PASSWORD) as client:
|
|
205
|
+
client.upload('tests/fixture/non-ascii_package/dist/non-ascii-package-0.1.dev1.tar.gz')
|
|
206
|
+
|
|
207
|
+
junit_filename = str(tmpdir.join('junit.xml'))
|
|
208
|
+
|
|
209
|
+
# our main assertion is that the main does not fail
|
|
210
|
+
main(['tests/fixture/sample_non-ascii.txt', devpi.url + '/' + INDEX,
|
|
211
|
+
'--user={}'.format(USER),
|
|
212
|
+
'--password={}'.format(PASSWORD), '--junit-xml', junit_filename])
|
|
204
213
|
|
|
205
214
|
# check that the build failure shows up in the build output
|
|
206
215
|
assert 'No non-ascii 4 you!' in open(junit_filename).read()
|
devpi-builder-6.1.0/setup.cfg
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/pure_package/test_package/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{devpi-builder-6.1.0 → devpi_builder-7.0.0}/tests/fixture/sample_multiple_versions_on_line.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|