Skip to content

Instantly share code, notes, and snippets.

View gist:9144129
#!/usr/bin/python
from setuptools import setup, find_packages
setup(name='pkg',
version="1.0",
packages=find_packages(),
data_files=[('/opt', ['data_file'])]
)
View gist:9127153
pip
---
.. contents::
Usage
*****
::
@qwcode
qwcode / gist:8431828
Last active Jan 3, 2016
"Pypa Standard Docs Template"
View gist:8431828

A basic structure for Pypa project docs

why a consistent structure? in large part for making the "Python Packaging User Guide" more effective when linking and less redundant

All the projects should use the default RTD theme to match the User Guide.

Introduction

@qwcode
qwcode / gist:6040828
Created Jul 19, 2013
vendor pkg_resources/setuptools analysis
View gist:6040828

3 problems to be solved:

  1. making pip a self-sufficient wheel installer
  2. removing the headache of users being responsible for managing the setuptools build dependency themselves (most notably a pain in non-virtualenv environments),
  3. the burden/fragility of supporting any pip version with any setuptools version.

solutions for #1:

  1. vendor pkg_resources
  2. emulate pkg_resources using the already vendored distlib (#909 )
View gist:4270246
virtualenv myVE
source myVE/bin/activate
cd myproject
pip -e .[testing] #installs project into myVE in develop mode with dependencies and the testing extras
pip install somepkg #install something else you want to try
View gist:4247512
Synopsis:
pip install [options] <package> [<package> ...]
General Options:
-V, --version
show version and exit
View gist:4231109
Usage: pip COMMAND [OPTIONS]
Commands:
bundle Create pybundles (archives containing multiple packages)
freeze Output all currently installed packages (exact versions) to stdout
help Show available commands
install Install packages
search Search PyPI
show Output installed distributions (exact versions, files) to stdout
uninstall Uninstall packages
View gist:3828762
"--package-cache"
- a new "pip install" config option that offers name-based (i.e. not url-based) caching.
- the "--download-cache" option would stay as it is, and not be altered
- the package-cache dir would just contain packages (e.g. "nose-1.2.tar.gz", or lxml-2.5[..].whl), anything you've installed while using it.
- the package-cache would be turned off by default, since the user assumes a certain amount of risk/responsibility in using it (no hash checking)
- the package-cache (if turned on) would be checked prior to using the PackageFinder (which searches pypi and findlinks)
(if the req was "nose", any nose version in the package-cache would "win", unless --upgrade is specified)
- package-cache offers an alternative to this workflow:
- pip install -d DIR PACKAGES
View gist:3828683
Usage: pip wheel [OPTIONS] PACKAGE_NAMES...
Creates wheel archives from your requirements and place into ./wheels
(requires distribute>0.6.28 and wheel)
-w --wheel-dir <DIR> //alternative dir to place wheels into
--force-rebuild //rewrite existing wheels
--unpack-only <DIR> //unpack to dir, for manual building with "setup.py bdist_wheel"
-r, --requirement <FILENAME>
-f, --find-links <URL>