Skip to content

Instantly share code, notes, and snippets.

@dcramer
Created October 16, 2012 10:40
Show Gist options
  • Star 4 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dcramer/3898601 to your computer and use it in GitHub Desktop.
Save dcramer/3898601 to your computer and use it in GitHub Desktop.
pmp Concept

CLI (inspired by Composer): http://dl.dropbox.com/u/116385/Slingshot/Pictures/Screen%20Shot%202012-10-16%20at%203.39.43%20AM.png

As pip installs packages, pmp manages projects.

It provides a simple extensible command interface designed to influence good behavior in project management using existing tools (and minor hacks/additions).

Optional Behaviors

  • vendor packages vs using an external virtualenv (vendor/)
    • have bin/python deal with sites (as buildout does) so only items listed in lockfile (version specific) get bound
  • manage package version via publish? (project/VERSION?)
  • maintain a lockfile/requirements file (similar to requirements.txt, also used by the install commands)
    • this could happen via a second command, or via install

CLI

pmp [command] [options]
pmp install  # pip install .
pmp install <name>  # pip install <name>
pmp install <github url|bitbucket url|googlecode url>  # pip install <repo>
pmp develop  # pip install -e .
pmp test [options] # install test dependencies and run setup.py [test|nosetests]
# publish will register the package if its not already present on pypi
pmp publish  # python setup.py sdist upload
pmp publish disqus  # python setup.py sdist upload -r disqus
pmp register
pmp register disqus
pmp add-pypi [name] [url]  # register remote pypi, attempt to fix bad urls you enter

Concepts

# add to lockfile
pmp require [name]
# update any top-level dependencies which have a newer version within range
# requires lockfile
pmp update 
# generates a new setup.py, etc. for you
pmp it
@d1ffuz0r
Copy link

pip for humans :)

@aldeka
Copy link

aldeka commented Oct 16, 2012

Can we preemptively declare that it's pronounced, say, "pump" (not "pimp")? :/

@kennethreitz
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment