Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use poetry for Python dependency management #19

Merged
merged 1 commit into from
Mar 30, 2023
Merged

Use poetry for Python dependency management #19

merged 1 commit into from
Mar 30, 2023

Commits on Jan 24, 2023

  1. Use poetry for Python dependency management

    Poetry is emerging as the best / most updated tool for this purpose, and has achieved enough maturity to adopt.
    See, for example, https://towardsdatascience.com/packages-part-2-how-to-publish-test-your-package-on-pypi-with-poetry-9fc7295df1a5
    
    1.  Remove setup.py in lieu of `pyproject.toml` and `poetry.lock`
        Most of the configuration is pasted, but I made some updates, e.g. to classifiers to work out-of-the-box for most new synbio projects.
    
    2.  Use the `poetry-dynamic-versioning` plugin
        Enables (as configured) creating a PEP440-compliant release number from tags in the `git` repo.  This plugin automates updating multiple files, including `pyproject.toml` and `__init__.py`, which would likely become inconsistent over time using only manual updates.
    
    3.  Update Python version to 3.10
        Included in pyproject.toml, so also updating in related CI files.  At the time of writing, Python 3.11 is the latest, but only recently released.  Likely that some libraries won't have added support for 3.11 yet.  Earlier `setup.py `and CI configs were inconsistent on the Python version, but poetry will enforce consistency during CI builds.
    
    4.  Update CI to use `poetry`
    chimaerase committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    e6dc6be View commit details
    Browse the repository at this point in the history