Skip to main content

Opinionated Python template and metadata synchronizer for 2020.

Project description

Tyrannosaurus Reqs

Version status License PyPI - Python Version Docker GitHub release (latest SemVer including pre-releases) Latest version on PyPi Documentation status Build & test Travis Azure DevOps builds Maintainability Coverage

An opinionated Python template for 2020. No setup.py, requirements.txt, or eggs.

I wrote this after making nearly 50 commits to configure readthedocs, PyPi, Tox, Docker, Travis, and Github actions. This avoids that struggle for 99% of projects. Just clone and modify or use tyrannosaurus new. Install with pip install tyrannosaurus.

  • When you commit, your code will be linted.
  • When you push or make a pull request, your code will be built and tested. Metadata will be synced, security checks will be run, style will be checked, documentation will be generated, and docker images, sdists, and wheels will be built.
  • When you release on Github, your code will be published on PyPi. Just add PYPI_TOKEN as a Github repo secret.

⚠ Status: Alpha. Generally works pretty well, but the sync command does less than advertised.

Integrations:

Also comes with nice Github labels, issue templates, a changelog template, Travis support, Conda recipe and environment generation, and other integrations. Tyrannosaurus itself is included as a dependency. It will clean up unwanted files and sync metadata from pyproject.toml to other files, such as Anaconda recipes and environment files, license headers, doc and tox requirements, and author/contributor lists. Target files can be disabled in [tool.tyrannosaurus.targets].

To run:

To run locally, install Poetry and Tox (pip install tox). Then just type tox to build artifacts and run tests. To create an initial Anaconda recipe or environment file, run tyrannosaurus recipe or tyrannosaurus env.

See the docs for more information.

Contributing:

New issues and pull requests are welcome. Please refer to the contributing guide.

                                              .++++++++++++.
                                           .++HHHHHHH^^HHH+.
                                          .HHHHHHHHHH++-+-++.
                                         .HHHHHHHHHHH:t~~~~~
                                        .+HHHHHHHHHHjjjjjjjj.
                                       .+NNNNNNNNN/++/:--..
                              ........+NNNNNNNNNN.
                          .++++BBBBBBBBBBBBBBB.
 .tttttttt:..           .++BBBBBBBBBBBBBBBBBBB.
+tt+.      ``         .+BBBBBBBBBBBBBBBBBBBBB+++cccc.
ttt.               .-++BBBBBBBBBBBBBBBBBBBBBB++.ccc.
+ttt++++:::::++++++BBBBBBBBBBBBBBBBBBBBBBB+..++.
.+TTTTTTTTTTTTTBBBBBBBBBBBBBBBBBBBBBBBBB+.    .ccc.
  .++TTTTTTTTTTBBBBBBBBBBBBBBBBBBBBBBBB+.      .cc.
    ..:++++++++++++++++++BBBBBB++++BBBB.
           .......      -LLLLL+. -LLLLL.
                        -LLLL+.   -LLLL+.
                        +LLL+       +LLL+
                        +LL+         +ff+
                        +ff++         +++:
                        ++++:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tyrannosaurus-0.5.3.tar.gz (23.7 kB view hashes)

Uploaded Source

Built Distribution

tyrannosaurus-0.5.3-py3-none-any.whl (32.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page