Skip to main content

devpi-server: reliable private and pypi.org caching server

Project description

devpi-server: pypi server for caching and private indexes

consistent robust pypi-cache

You can point pip or easy_install to the root/pypi/+simple/ index, serving as a self-updating transparent cache for pypi-hosted and external packages. Cache-invalidation uses the latest and greatest PyPI protocols. The cache index continues to serve when offline and will resume cache-updates once network is available.

user specific indexes

Each user (which can represent a person or a project, team) can have multiple indexes and upload packages and docs via standard setup.py invocations command. Users and indexes can be manipulated through 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 cron.

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 for getting started and documentation.

Changelog

4.6.0 (2018-07-13)

Features

  • implement #448: allow deletion of single release files.

  • implement #530: set caching headers for release files to expire far in the future.

  • implement #535: Generate absolute URLs on project simple index pages when --absolute-urls option is used or X-DEVPI-ABSOLUTE-URLS header is set.

  • add –max-request-body-size option to control maximum upload size

  • add –request-timeout option to provide adjustable request timeout

Bug Fixes

  • fix #549: reduce timeout for requests to PyPI etc from 30 to 5 seconds. This can be changed with the --request-timeout option.

  • fix raising of UpstreamError by using correct status_code attribute of response instead of not existing status.

  • Fix cumulating log tags for request numbers by wrapping the responsible code in a try/finally block to always remove the tag, even when there was an exception.

4.5.0 (2018-05-04)

Features

  • add devpiserver_on_remove_file hook to handle removal of files in plugins. Thanks to Dr Colin Kong for the PR.

  • Use pypi.org as new default for root/pypi mirror index.

Bug Fixes

  • adjust minimum version of pyramid to 1.8 (related to #430)

  • fix #494: PEP 503 compliance, html and redirect fixes.

  • fix #510: catch another possible error when trying to open sqlite db with uri keyword.

4.4.0 (2018-01-17)

Features

  • fix issue469: Add acl_toxresult_upload to index configuration.

Bug Fixes

  • fix issue477: importing with –no-root-pypi failed.

4.3.2 (2017-12-19)

Bug Fixes

  • fix issue480: store additional metadata for packages.

  • fix issue489: ignore download errors in replica thread for mirrored files that were removed from the filesystem on master and from the mirrored source.

4.3.1 (2017-11-23)

Bug Fixes

  • fix +api on replica when master is down.

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-4.6.0.tar.gz (169.8 kB view hashes)

Uploaded Source

Built Distribution

devpi_server-4.6.0-py2.py3-none-any.whl (175.5 kB view hashes)

Uploaded Python 2 Python 3

Supported by

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