Skip to content
master
Switch branches/tags
Go to file
Code

Latest commit

This was previously not included in the readme although implemented
b364d78

Git stats

Files

Permalink
Failed to load latest commit information.

README.md

Chat at https://gitter.im/python/typing

PEP 484: Type Hints

This GitHub repo is used for three separate things:

  • The issue tracker is used to discuss PEP-level type system issues. However, typing-sig is more appropriate these days.

  • A copy of the typing module for older Python versions (2.7 and 3.4) is maintained here. Note that the canonical source lives upstream in the CPython repo.

  • The typing_extensions module lives here.

Workflow

  • The typing.py module and its unittests are edited in the src subdirectory of this repo. The python2 subdirectory contains the Python 2 backport.

Workflow for PyPI releases

  • Run tests under all supported versions. As of May 2019 this includes 2.7, 3.4, 3.5, 3.6, 3.7.

  • On macOS, you can use pyenv <https://github.com/pyenv/pyenv>_ to manage multiple Python installations. Long story short:

    • xcode-select --install
    • brew install pyenv
    • echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
    • Open a new shell
    • pyenv install 3.5.3
    • pyenv install 3.4.6
    • (assuming you already have 2.7.13 and 3.6.1 from Homebrew)
    • pyenv global system 3.5.3 3.4.6
  • You can use tox to automate running tests.

  • Update the version number in setup.py.

  • Build the source and wheel distributions:

    • pip3 install -U setuptools wheel
    • pip2 install -U setuptools wheel
    • rm -rf dist/ build/
    • python3 setup.py sdist bdist_wheel
    • rm -rf build/ (Works around a Wheel bug <https://bitbucket.org/pypa/wheel/issues/147/bdist_wheel-should-start-by-cleaning-up>_)
    • python2 setup.py bdist_wheel
  • Install the built distributions locally and test (if you were using tox, you already tested the source distribution).

  • Make sure twine is up to date, then run twine upload dist/*.

About

Work related to PEP 484: typing.py and typing_extensions.py (both released via PyPI) and issue tracker for type system bugs/features.

Topics

Resources

License

Packages

No packages published