Skip to main content

A very simple pypi cache

Project description

A very simple pypi cache.

features

  • uses aiohttp, aiofiles, inotipy

  • queries metadata via pypi JSON API

  • filesystem is the database

  • serve releases while downloading

todo

  • private channels with user, groups and permissions

  • use python-libaio for file stuff

  • nice ui

running the cache

# pypare --help
Usage: pypare [OPTIONS] COMMAND [ARGS]...

Options:
  --log-level [NOTSET|DEBUG|INFO|WARNING|ERROR|CRITICAL]
                                  The logging level.  [default: INFO]
  --loop [asyncio|uvloop]         Use a different loop policy.  [default:
                                  asyncio]
  --version                       Show the version and exit.
  --help                          Show this message and exit.

Commands:
  pypi  Run a simple pypi caching proxy.
# pypare pypi --help
Usage: pypare pypi [OPTIONS]

  Run a simple pypi caching proxy.

Options:
  -p, --port INTEGER          The port to run the server  [default: 3141]
  -h, --host TEXT             The server host IP.  [default: 0.0.0.0]
  -b, --base-path PATH        The base path for this application.  [default:
                              /pypi]
  -c, --cache-root DIRECTORY  The cache directory, where files are stored.
                              [default: ~/.cache/pypare]
  --cache-timeout INTEGER     The age of metatdata, when it will be refreshed.
                              [default: 86400]
  --plugin LIST               A plugin in pkg_resources notation to load.
  --help                      Show this message and exit.

Run from virtual environment:

pip install pypare

pypare pypi --cache-dir /tmp/pypi-data

Run in docker:

docker run -it diefans/pypare:latest pypi

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypare-0.2.3.tar.gz (16.8 kB view details)

Uploaded Source

Built Distribution

pypare-0.2.3-py3-none-any.whl (53.3 kB view details)

Uploaded Python 3

File details

Details for the file pypare-0.2.3.tar.gz.

File metadata

  • Download URL: pypare-0.2.3.tar.gz
  • Upload date:
  • Size: 16.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

File hashes

Hashes for pypare-0.2.3.tar.gz
Algorithm Hash digest
SHA256 544a06f179fc6803493f79cc72efe5fbe594f7af8c71c9046191ac9336b81643
MD5 28855fccba2009d2b4309cadbcfbca4b
BLAKE2b-256 fab17b3696d09c1dc31706c40e5b062f4285fdd14eee2f1287beef07abc54c69

See more details on using hashes here.

File details

Details for the file pypare-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: pypare-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 53.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

File hashes

Hashes for pypare-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b4e6ba5c32cefbb26b5502e48c3978d990235960353dd5c20c8b50d7fd913193
MD5 aa4be60b81cbd47b5d1d29dfd4b2b0ee
BLAKE2b-256 c98149c14c0294b7d279efc1577808d9b14547dfa8d8c2e2e3f97734a63773a3

See more details on using hashes here.

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