Skip to content

beanbaginc/python-typelets

Repository files navigation

Typelets for Python

Typelets is a Python typing utility module designed to augment some of the types provided in Python and third-party libraries. It was built to help develop Review Board, our premier code review product from Beanbag, and we're making it available for use in other projects.

This includes general Python additions, including:

  • typelets.funcs: Typing for general keyword arguments in functions.

  • typelets.json: Typing for JSON structures, and for application-defined data that can be serialized to JSON.

  • typelets.symbols: Symbols for marking types as unset/unsettable.

Plus typing useful for Django developers:

Installation

To install typelets, run:

$ pip install typelets

Typelets follows semantic versioning, meaning no surprises when you upgrade.

Documentation

See the Typelets documentation for usage.

License

Typelets is available under the MIT license.

Contributing

Contributions to Typelets can be made on our Review Board server at https://reviews.reviewboard.org/.

To post a change for review:

  1. Download RBTools:

    $ pip install rbtools
  2. Create a branch in your Git clone and make your changes.

  3. Post the change for review:

    $ rbt post

    To update your change:

    $ rbt post -u

Our Other Projects

  • Review Board - Our open source, extensible code review, document review, and image review tool.

  • Djblets - Our pack of Django utilities for datagrids, API, extensions, and more. Used by Review Board.

  • Housekeeping - Deprecation management for Python modules, classes, functions, and attributes.

  • kgb - A powerful function spy implementation to help write Python unit tests.

  • Registries - A flexible, typed implementation of the Registry Pattern for more maintainable and extensible codebases.

You can see more on github.com/beanbaginc and github.com/reviewboard.