Skip to main content

devpi-server: backend for hosting private package indexes and PyPI on-demand mirrors

Project description

devpi-server: backend for hosting private package indexes and PyPI on-demand mirrors

PyPI on-demand package mirror

You can point uv, pip or another Python package installer to the root/pypi/+simple/ index, serving as a transparent on-demand mirror for PyPI-hosted packages.

User specific indexes

Each user (which can represent a person, project or team) can have multiple indexes, and can upload packages and documents to these indexes 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.

Sensible defaults for a low friction deployment

Get started easily and deploy a devpi-server instance with 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 package 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.20.2 (2026-06-11)

Bug Fixes

  • Fix logic error which allowed unauthorized fetching of replication data.

6.20.1 (2026-05-11)

Bug Fixes

  • Pass through request headers when streaming .metadata from mirror. Refs #1018

6.20.0 (2026-04-30)

Features

Bug Fixes

  • Update replica status when the replica is waiting for new serials using the streaming changelog endpoint.

6.19.3 (2026-04-13)

Bug Fixes

  • Fix #1112: Parse simple JSON reply even with wrong content-type in reply if the body seems to contain JSON.

  • Return stale project list for mirrors when the lock can’t be acquired within the timeout.

  • Fix importing of toxresults from devpi-server 6.5.0 to 6.9.0 where the wrong hash was stored.

6.19.2 (2026-03-17)

Bug Fixes

  • Preserve log for documentation uploads in export.

  • Any missing file on mirrors will be ignored during event processing as is already the case in other places.

  • Use short timeout when project list is requested for has_project call on mirrors instead of the long one used for list_projects. This prevents installers from timing out and retrying several times.

  • Fix error handling for proxy requests from replica to primary.

Other Changes

  • Removed limit of reported missing files for devpi-fsck.

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

devpi_server-6.20.2.tar.gz (309.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devpi_server-6.20.2-py3-none-any.whl (321.7 kB view details)

Uploaded Python 3

File details

Details for the file devpi_server-6.20.2.tar.gz.

File metadata

  • Download URL: devpi_server-6.20.2.tar.gz
  • Upload date:
  • Size: 309.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: devpi-server/6.20.1.dev0 (py3.11.2; linux)

File hashes

Hashes for devpi_server-6.20.2.tar.gz
Algorithm Hash digest
SHA256 5bb681881a2e7ddc7f4942945d2fc92d6448e50b9f683ba3c148e492476599b1
MD5 448981ffc70eeb0eb4114d7a149ba7ab
BLAKE2b-256 45a0ab7db15967820429bc355c2cf0904d9f0df241a8fe403c1013bc35646582

See more details on using hashes here.

File details

Details for the file devpi_server-6.20.2-py3-none-any.whl.

File metadata

  • Download URL: devpi_server-6.20.2-py3-none-any.whl
  • Upload date:
  • Size: 321.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: devpi-server/6.20.1.dev0 (py3.11.2; linux)

File hashes

Hashes for devpi_server-6.20.2-py3-none-any.whl
Algorithm Hash digest
SHA256 60b7361ee9995415ae93234359d77806b5692e523a495c255cf0d75aeaa156ec
MD5 125c9bd5dd237e92a948766555218c8f
BLAKE2b-256 c5c6c9004cc245afcfd784a7ad577cb9854d5da67bbf19efcbe2efa9abf532ef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page