Skip to content

Tool for working with python repositories (e.g. copy packages between repos)

License

Notifications You must be signed in to change notification settings

e3krisztian/pyrene

Repository files navigation

Pyrene

a Py thon Re pository Ne twork tool

I am a tool to help your interactions with Python package repositories.

For example I can copy packages between repos, or configure pip to use a private repository instead of the default http://pypi.python.org.

I provide a shell-like environment as primary interface - with help and completion for commands and attributes, but I can be used as a command-line tool as well.

There are two types of repos I know about:

  • http repos, e.g.
    • https://pypi.python.org - the global python public package repo
    • project specific PyPI server - defined by you or your company, for deployment
  • directory repos, that is
    • a directory with package files, for fast/offline development
    • ~/.pip/local - one such directory

Installation

From PyPI:

mkvirtualenv app-pyrene
pip install pyrene

master branch directly from GitHub:

mkvirtualenv app-pyrene
pip install git+https://github.com/krisztianfekete/pyrene.git

In order to have pyrene without activating its virtualenv do the following (assuming ~/bin is on your PATH):

ln -s ~/.virtualenvs/app-pyrene/bin/pyrene ~/bin

Usage

State consists of:

  • set of repositories
  • an active repository (initially None) that is used for the repo parameter when it is not given for most commands (also called implicit repo)

I listen to commands, that

Development

Pyrene is a work in progress, with sharp edges, miswordings...

So

contributions

  • reporting issues
  • improving documentation
  • improving on the simplicity and clarity of the code/interface
  • adding relevant tests
  • providing new badly missing features (preferably with tests)
  • showing alternatives

are welcome.

Guidelines:

  • all code should be extremely simple and clear, including tests
  • all features require unit tests
  • zero messages from flake8
  • usability, simplicity wins over feature completeness
  • the smallest the change, the better

The current code might violate these, but it is then considered a bug. Fixing any of these violations - even if it looks trivial is welcome!

External packages/tools:

  • packages are downloaded with pip
  • packages are uploaded to http/https repos with twine
  • local packages are served with pypiserver

About

Tool for working with python repositories (e.g. copy packages between repos)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages