devpi-server: reliable private and pypi.org caching server
Project description
devpi-server: server for private package indexes and PyPI caching
PyPI cache
You can point pip or easy_install to the root/pypi/+simple/ index, serving as a transparent cache for pypi-hosted packages.
User specific indexes
Each user (which can represent a person, project or team) can have multiple indexes and upload packages and docs via standard twine or setup.py invocations. Users and indexes can be manipulated through devpi-client and a RESTful HTTP API.
Index inheritance
Each index can be configured to merge in other indexes so that it serves both its uploads and all releases from other index(es). For example, an index using root/pypi as a parent is a good place to test out a release candidate before you push it to PyPI.
Good defaults and easy deployment
Get started easily and create a permanent devpi-server deployment including pre-configured templates for nginx and process managers.
Separate tool for Packaging/Testing activities
The complementary devpi-client tool helps to manage users, indexes, logins and typical setup.py-based upload and installation workflows.
See https://doc.devpi.net on how to get started and further documentation.
Support
If you find a bug, use the issue tracker at Github.
For general questions use GitHub Discussions or the devpi-dev@python.org mailing list.
For support contracts and paid help contact mail at pyfidelity.com.
Changelog
6.13.0 (2024-09-19)
Deprecations and Removals
Remove/Deprecate “master” related terminology in favor of “primary”. Usage related changes are the switch to --primary-url instead of --master-url and --role=primary instead of --role=master. Using the old terms will now output warnings. The +status API has additional fields and the role field content will change with 7.0.0.
Features
Enable logging command line options for all commands.
Added support uv pip as an installer.
Bug Fixes
Don’t report on lagging event processing while replicating.
Report primary serial correctly with streaming replication.
Don’t store file data in memory when fetching a release while pushing from a mirror.
Only warn about replica not being in sync instead of fatal status while still replicating.
6.12.1 (2024-07-24)
Bug Fixes
Support Python 3.13 by depending on legacy-cgi.
Preserve query string when proxying requests from replica to primary. This fixes force removal on non-volatile indexes and probably other bugs.
Fix #1044: Correctly update cache expiry time when mirrored server returns 304 Not Modified.
6.12.0 (2024-06-25)
Features
Added devpiserver_on_toxresult_store hook to allow blocking or skipping a toxresult upload on more specific conditions as acl_toxresult_upload would allow.
Added devpiserver_on_toxresult_upload_forbidden hook to allow returning a custom message and result (403 or 200).
Bug Fixes
Return json data if toxresult upload is forbidden.
6.11.0 (2024-04-20)
Features
The devpi-fsck script now returns an error code when there have been missing files or checksum errors.
Fix #983: Add plugin hook for mirror authentication header.
Bug Fixes
Preserve last modified of docs and toxresults during export/import.
Fix #1033: Use int for --mirror-cache-expiry to fix value of proxy_cache_valid in nginx caching config.
6.10.0 (2023-12-19)
Features
Use Authorization header instead of adding username/password to URL when fetching from mirror.
Fix #998: Use the pure Python httpx library instead of aiohttp to prevent delays in supporting newest Python releases.
Bug Fixes
Fix #996: support hashes other than sha256 in application/vnd.pypi.simple.v1+json responses.
Only compare hostname instead of full URL prefix when parsing mirror packages to fix mirrors with basic authentication and absolute URLs. See #1006
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file devpi-server-6.13.0.tar.gz
.
File metadata
- Download URL: devpi-server-6.13.0.tar.gz
- Upload date:
- Size: 269.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4301e2c52747866138080570a9140f96fe91ae5678a54ee7de025ab4eaeb7836 |
|
MD5 | 34031a4576b33b14131e22bf1458c3f9 |
|
BLAKE2b-256 | 1a96722081aec89931f3e7e97f1e91ad4baa79b150982abed22ab39d808a44ce |
File details
Details for the file devpi_server-6.13.0-py3-none-any.whl
.
File metadata
- Download URL: devpi_server-6.13.0-py3-none-any.whl
- Upload date:
- Size: 284.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb06bed9b4a40b950683df501e72444f4f4e8d8345e390482e7781017bfa79ff |
|
MD5 | 2d71b2bcbd98b0da78dedb98b2576f0a |
|
BLAKE2b-256 | 9c0ab1d953eca9a5d12c5195b6cbe1fb6aeb9f5c4e96c85deb6e351aa4b75f7d |