Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Twisted History of Python Packaging

Mahdi Yusuf
November 07, 2012

Twisted History of Python Packaging

Python Packaging has had a more than less than ideal evolution. This talk aims to clarify this evolution so we can build a better future.

Mahdi Yusuf

November 07, 2012
Tweet

More Decks by Mahdi Yusuf

Other Decks in Programming

Transcript

  1. FOCUS UP. This journey is a story of growth which

    is often extremely convoluted.
  2. import os import sys try: from setuptools import setup except

    ImportError: from distutils.core import setup sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) from octogit import __version__ def publish(): os.system("python setup.py sdist upload") if sys.argv[-1] == "publish": publish() sys.exit() dependencies = ['clint2','requests'] setup( name='octogit', version=".".join(str(x) for x in __version__), description='giving git tentacles to work better with github', url='https://github.com/myusuf3/octogit', author='Mahdi Yusuf', author_email='[email protected]', install_requires=dependencies, tests_require=['tox==1.3'], packages=['octogit', ], license='MIT License', long_description=open('README.rst').read(), entry_points={ 'console_scripts': [ 'octogit = octogit.cli:begin', ], }, classifiers=( 'Development Status :: 4 - Beta', 'Intended Audience :: Developers', 'Natural Language :: English', 'License :: OSI Approved :: MIT License', 'Programming Language :: Python', 'Programming Language :: Python :: 2.6', 'Programming Language :: Python :: 2.7', ))
  3. 1.1 “Return of the Mac” Musky Monkey demo5.unreleased 5 6

    42 Public API Changes Features, Deprecations Bug Fixes
  4. distutils2 [metadata] name = sadness version = 11.0 author =

    Mahdi Yusuf author-email = [email protected] summary = sending you sadness description-file = README.rst project-url: http://www.twitter.com/myusuf3 [files] packages = sadness extra_files = setup.py README resources = etc/pytz.timezones
  5. PEP 386 -- Changing the version comparison modules PEP 376

    -- Database of Installed Python Distributions PEP 345 -- Metadata for Python Software Packages 1.2