devpi-server 6.12.0__tar.gz → 6.13.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.
Files changed (134) hide show
  1. {devpi_server-6.12.0 → devpi-server-6.13.0}/.flake8 +2 -2
  2. {devpi_server-6.12.0 → devpi-server-6.13.0}/CHANGELOG +49 -0
  3. {devpi_server-6.12.0 → devpi-server-6.13.0}/PKG-INFO +52 -37
  4. devpi-server-6.13.0/devpi_server/__init__.py +1 -0
  5. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/config.py +189 -92
  6. devpi-server-6.13.0/devpi_server/filestore.py +630 -0
  7. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/fileutil.py +2 -0
  8. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/fsck.py +7 -9
  9. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/genconfig.py +3 -3
  10. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/hookspecs.py +4 -4
  11. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/importexport.py +40 -26
  12. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/init.py +7 -7
  13. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/keyfs.py +49 -30
  14. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/log.py +27 -22
  15. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/main.py +38 -19
  16. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/mirror.py +9 -9
  17. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/model.py +67 -26
  18. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/mythread.py +37 -0
  19. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/passwd.py +4 -4
  20. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/replica.py +192 -98
  21. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/sizeof.py +1 -1
  22. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/vendor/_pip.py +6 -6
  23. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/views.py +104 -65
  24. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server.egg-info/PKG-INFO +52 -37
  25. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server.egg-info/SOURCES.txt +0 -1
  26. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server.egg-info/requires.txt +4 -1
  27. devpi-server-6.13.0/pyproject.toml +99 -0
  28. {devpi_server-6.12.0 → devpi-server-6.13.0}/setup.py +5 -3
  29. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/functional.py +20 -2
  30. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/plugin.py +195 -132
  31. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_config.py +93 -22
  32. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_conftest.py +24 -3
  33. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_filestore.py +16 -20
  34. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_fileutil.py +2 -2
  35. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_fsck.py +5 -8
  36. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_importexport.py +98 -81
  37. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_keyfs.py +58 -16
  38. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_keyfs_sqlite_fs.py +6 -7
  39. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_main.py +35 -31
  40. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_mirror.py +34 -0
  41. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_model.py +5 -3
  42. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_mythread.py +4 -2
  43. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_nginx.py +2 -2
  44. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_nginx_replica.py +5 -4
  45. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_permissions.py +7 -2
  46. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_replica.py +131 -77
  47. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_replica_functional.py +9 -9
  48. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_stage_customizer.py +2 -2
  49. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_streaming.py +8 -8
  50. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_streaming_nginx.py +2 -2
  51. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_streaming_replica.py +2 -2
  52. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_streaming_replica_nginx.py +2 -2
  53. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_views.py +72 -35
  54. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_views_push_external.py +24 -3
  55. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_views_status.py +67 -14
  56. devpi-server-6.13.0/tox.ini +78 -0
  57. devpi_server-6.12.0/CHANGELOG.short.rst +0 -97
  58. devpi_server-6.12.0/devpi_server/__init__.py +0 -1
  59. devpi_server-6.12.0/devpi_server/filestore.py +0 -335
  60. devpi_server-6.12.0/pyproject.toml +0 -26
  61. devpi_server-6.12.0/tox.ini +0 -40
  62. {devpi_server-6.12.0 → devpi-server-6.13.0}/AUTHORS +0 -0
  63. {devpi_server-6.12.0 → devpi-server-6.13.0}/LICENSE +0 -0
  64. {devpi_server-6.12.0 → devpi-server-6.13.0}/MANIFEST.in +0 -0
  65. {devpi_server-6.12.0 → devpi-server-6.13.0}/README.rst +0 -0
  66. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/__main__.py +0 -0
  67. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/auth.py +0 -0
  68. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/auth_basic.py +0 -0
  69. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/auth_devpi.py +0 -0
  70. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/__init__.py +0 -0
  71. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/crontab.template +0 -0
  72. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/devpi.service.template +0 -0
  73. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/launchd-macos.txt.template +0 -0
  74. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/nginx-devpi-caching-http.conf.template +0 -0
  75. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/nginx-devpi-caching-location.conf.template +0 -0
  76. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/nginx-devpi-caching-proxy.conf.template +0 -0
  77. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/nginx-devpi-caching-server.conf.template +0 -0
  78. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/nginx-devpi.conf.template +0 -0
  79. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/supervisor-devpi.conf.template +0 -0
  80. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/supervisord.conf.template +0 -0
  81. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/cfg/windows-service.txt.template +0 -0
  82. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/exceptions.py +0 -0
  83. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/filestore_fs.py +0 -0
  84. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/interfaces.py +0 -0
  85. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/keyfs_sqlite.py +0 -0
  86. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/keyfs_sqlite_fs.py +0 -0
  87. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/keyfs_types.py +0 -0
  88. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/markers.py +0 -0
  89. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/middleware.py +0 -0
  90. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/readonly.py +0 -0
  91. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/vendor/__init__.py +0 -0
  92. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server/view_auth.py +0 -0
  93. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server.egg-info/dependency_links.txt +0 -0
  94. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server.egg-info/entry_points.txt +0 -0
  95. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server.egg-info/not-zip-safe +0 -0
  96. {devpi_server-6.12.0 → devpi-server-6.13.0}/devpi_server.egg-info/top_level.txt +0 -0
  97. {devpi_server-6.12.0 → devpi-server-6.13.0}/pytest_devpi_server/__init__.py +0 -0
  98. {devpi_server-6.12.0 → devpi-server-6.13.0}/setup.cfg +0 -0
  99. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/__init__.py +0 -0
  100. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/conftest.py +0 -0
  101. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/example.py +0 -0
  102. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/badindexname/dataindex.json +0 -0
  103. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/badusername/dataindex.json +0 -0
  104. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/basescycle/dataindex.json +0 -0
  105. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/createdmodified/dataindex.json +0 -0
  106. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/deletedbase/dataindex.json +0 -0
  107. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/mirrordata/dataindex.json +0 -0
  108. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/mirrordata/root/pypi/dddttt/0.1.dev1/dddttt-0.1.dev1.tar.gz +0 -0
  109. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/modifiedpypi/dataindex.json +0 -0
  110. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/nocreatedmodified/dataindex.json +0 -0
  111. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/normalization/dataindex.json +0 -0
  112. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/normalization/root/dev/hello.pkg/hello.pkg-1.0.tar.gz +0 -0
  113. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/normalization_merge/dataindex.json +0 -0
  114. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/normalization_merge/root/dev/hello-pkg/hello.pkg-1.1.tar.gz +0 -0
  115. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/normalization_merge/root/dev/hello.pkg/hello.pkg-1.0.tar.gz +0 -0
  116. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/norootpypi/dataindex.json +0 -0
  117. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/nouser/dataindex.json +0 -0
  118. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/removedindexplugin/dataindex.json +0 -0
  119. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/removedindexplugin/user/dev/pkg/pkg-1.0.tar.gz +0 -0
  120. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/toxresult_naming_scheme/dataindex.json +0 -0
  121. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/toxresult_naming_scheme/root/dev/hello/0.9/hello-0.9.tar.gz +0 -0
  122. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/toxresult_naming_scheme/root/dev/hello/sha256=ed7002b439e9ac845f22357d822bac1444730fbdb6016d3ec9432297b9ec9f73/hello-0.9.tar.gz.toxresult0 +0 -0
  123. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/importexportdata/toxresult_upload_default/dataindex.json +0 -0
  124. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/reqmock.py +0 -0
  125. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/simpypi.py +0 -0
  126. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_auth.py +0 -0
  127. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_authcheck.py +0 -0
  128. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_genconfig.py +0 -0
  129. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_log.py +0 -0
  130. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_mirror_no_project_list.py +0 -0
  131. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_readonly.py +0 -0
  132. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_reqmock.py +0 -0
  133. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_view_auth.py +0 -0
  134. {devpi_server-6.12.0 → devpi-server-6.13.0}/test_devpi_server/test_views_patch.py +0 -0
@@ -1,9 +1,9 @@
1
1
  [flake8]
2
2
  ignore = E501,E741,W503
3
3
  per-file-ignores =
4
- plugin.py:E127,E128,E225,E231,E265,E402,E712
4
+ plugin.py:E127,E128,E225,E231
5
5
  importexport.py:E127
6
6
  model.py:E128,E225,E231
7
7
  setup.py:E121,E126
8
8
  test_importexport.py:E121
9
- test*.py:E117,E126,E127,E128,E225,E226,E231,E251,E265,E712,E721
9
+ test*.py:E126,E127,E128,E225,E226,E231,E251
@@ -2,6 +2,55 @@
2
2
 
3
3
  .. towncrier release notes start
4
4
 
5
+ 6.13.0 (2024-09-19)
6
+ ===================
7
+
8
+ Deprecations and Removals
9
+ -------------------------
10
+
11
+ - Remove/Deprecate "master" related terminology in favor of "primary".
12
+ Usage related changes are the switch to ``--primary-url`` instead of ``--master-url`` and ``--role=primary`` instead of ``--role=master``.
13
+ Using the old terms will now output warnings.
14
+ The ``+status`` API has additional fields and the ``role`` field content will change with 7.0.0.
15
+
16
+
17
+
18
+ Features
19
+ --------
20
+
21
+ - Enable logging command line options for all commands.
22
+
23
+ - Added support uv pip as an installer.
24
+
25
+
26
+
27
+ Bug Fixes
28
+ ---------
29
+
30
+ - Don't report on lagging event processing while replicating.
31
+
32
+ - Report primary serial correctly with streaming replication.
33
+
34
+ - Don't store file data in memory when fetching a release while pushing from a mirror.
35
+
36
+ - Only warn about replica not being in sync instead of fatal status while still replicating.
37
+
38
+
39
+
40
+ 6.12.1 (2024-07-24)
41
+ ===================
42
+
43
+ Bug Fixes
44
+ ---------
45
+
46
+ - Support Python 3.13 by depending on legacy-cgi.
47
+
48
+ - Preserve query string when proxying requests from replica to primary. This fixes force removal on non-volatile indexes and probably other bugs.
49
+
50
+ - Fix #1044: Correctly update cache expiry time when mirrored server returns 304 Not Modified.
51
+
52
+
53
+
5
54
  6.12.0 (2024-06-25)
6
55
  ===================
7
56
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: devpi-server
3
- Version: 6.12.0
3
+ Version: 6.13.0
4
4
  Summary: devpi-server: reliable private and pypi.org caching server
5
5
  Home-page: https://devpi.net
6
6
  Maintainer: Florian Schulze
@@ -9,6 +9,7 @@ License: MIT
9
9
  Project-URL: Bug Tracker, https://github.com/devpi/devpi/issues
10
10
  Project-URL: Changelog, https://github.com/devpi/devpi/blob/main/server/CHANGELOG
11
11
  Project-URL: Documentation, https://doc.devpi.net
12
+ Project-URL: Funding, https://github.com/sponsors/devpi
12
13
  Project-URL: Source Code, https://github.com/devpi/devpi
13
14
  Keywords: pypi realtime cache server
14
15
  Classifier: Development Status :: 5 - Production/Stable
@@ -27,25 +28,10 @@ Classifier: Programming Language :: Python :: 3.9
27
28
  Classifier: Programming Language :: Python :: 3.10
28
29
  Classifier: Programming Language :: Python :: 3.11
29
30
  Classifier: Programming Language :: Python :: 3.12
31
+ Classifier: Programming Language :: Python :: 3.13
30
32
  Requires-Python: >=3.7
31
33
  License-File: LICENSE
32
34
  License-File: AUTHORS
33
- Requires-Dist: py>=1.4.23
34
- Requires-Dist: httpx
35
- Requires-Dist: argon2-cffi
36
- Requires-Dist: attrs>=21.3.0
37
- Requires-Dist: defusedxml
38
- Requires-Dist: devpi_common<5,>3.6.0
39
- Requires-Dist: itsdangerous>=0.24
40
- Requires-Dist: platformdirs
41
- Requires-Dist: pyramid>=2
42
- Requires-Dist: waitress>=1.0.1
43
- Requires-Dist: repoze.lru>=0.6
44
- Requires-Dist: passlib[argon2]
45
- Requires-Dist: pluggy<2.0,>=0.6.0
46
- Requires-Dist: ruamel.yaml
47
- Requires-Dist: strictyaml
48
- Requires-Dist: lazy
49
35
 
50
36
  =============================================================================
51
37
  devpi-server: server for private package indexes and PyPI caching
@@ -119,6 +105,55 @@ Changelog
119
105
 
120
106
  .. towncrier release notes start
121
107
 
108
+ 6.13.0 (2024-09-19)
109
+ ===================
110
+
111
+ Deprecations and Removals
112
+ -------------------------
113
+
114
+ - Remove/Deprecate "master" related terminology in favor of "primary".
115
+ Usage related changes are the switch to ``--primary-url`` instead of ``--master-url`` and ``--role=primary`` instead of ``--role=master``.
116
+ Using the old terms will now output warnings.
117
+ The ``+status`` API has additional fields and the ``role`` field content will change with 7.0.0.
118
+
119
+
120
+
121
+ Features
122
+ --------
123
+
124
+ - Enable logging command line options for all commands.
125
+
126
+ - Added support uv pip as an installer.
127
+
128
+
129
+
130
+ Bug Fixes
131
+ ---------
132
+
133
+ - Don't report on lagging event processing while replicating.
134
+
135
+ - Report primary serial correctly with streaming replication.
136
+
137
+ - Don't store file data in memory when fetching a release while pushing from a mirror.
138
+
139
+ - Only warn about replica not being in sync instead of fatal status while still replicating.
140
+
141
+
142
+
143
+ 6.12.1 (2024-07-24)
144
+ ===================
145
+
146
+ Bug Fixes
147
+ ---------
148
+
149
+ - Support Python 3.13 by depending on legacy-cgi.
150
+
151
+ - Preserve query string when proxying requests from replica to primary. This fixes force removal on non-volatile indexes and probably other bugs.
152
+
153
+ - Fix #1044: Correctly update cache expiry time when mirrored server returns 304 Not Modified.
154
+
155
+
156
+
122
157
  6.12.0 (2024-06-25)
123
158
  ===================
124
159
 
@@ -179,23 +214,3 @@ Bug Fixes
179
214
  - Only compare hostname instead of full URL prefix when parsing mirror packages to fix mirrors with basic authentication and absolute URLs. See #1006
180
215
 
181
216
 
182
-
183
- 6.9.2 (2023-08-06)
184
- ==================
185
-
186
- Bug Fixes
187
- ---------
188
-
189
- - Prevent duplicates when adding values to lists in index configuration with ``+=`` operator.
190
-
191
-
192
- 6.9.1 (2023-07-02)
193
- ==================
194
-
195
- Bug Fixes
196
- ---------
197
-
198
- - Prevent error in find_pre_existing_file in case of incomplete metadata.
199
-
200
- - Fix #980: Remove long deprecated backward compatibility for old pluggy versions to fix error with pluggy 1.1.0.
201
-
@@ -0,0 +1 @@
1
+ __version__ = '6.13.0'