Skip to main content

Sync requirements from Pipfile to pyproject.toml

Project description

pyproject-pipenv

ci PyPI pyversions PyPI version Very popular Code style: black

Sync properties from Pipfile to pyproject.toml.

Never need again to change dependencies manually in pyproject.toml (or forget to do it and publish a broken package), and enjoy the same dependency locking or semantic versioning.

Also allows just checking to be used as part of CI lint/format steps.

Install

# in your project virtualenv (or globally / pipx)
$ pip install pyproject-pipenv
...

Usage

Check:

$ pyproject-pipenv
Dependencies out of sync:
- tomlkit<2.0.0
+ tomlkit<1.0.0
pyproject.toml NEEDS UPDATE!

Apply:

$ pyproject-pipenv --fix
Dependencies out of sync:
- tomlkit<2.0.0
+ tomlkit<1.0.0
pyproject.toml UPDATED!

Features

  • Syncs
    • Dependencies
    • Python version required

ToDo

  • Handle markers and all that extra crap besides version
  • Sync more fields

Context

For some reason, neither pyproject nor pipenv interact with each other:

  • You use pipenv (and Pipfile) while developing, because it's great
  • You add all the package details to pyproject.toml
  • You work on the code and add new dependencies
  • Then you publish the new version only to notice you forgot to add the dependencies also to pyproject dependencies entry...

dephell seemed to be a solution but it is dead. Forking it sounds too much, as it supports many different things than I need.

pipenv-setup seems to be the same but for setup.py instead of pyproject.toml. Probably a good source for inspiration after this initial version.

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

pyproject_pipenv-1.1.3.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyproject_pipenv-1.1.3-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file pyproject_pipenv-1.1.3.tar.gz.

File metadata

  • Download URL: pyproject_pipenv-1.1.3.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for pyproject_pipenv-1.1.3.tar.gz
Algorithm Hash digest
SHA256 b2eddb37eee3c704f10618923b2d8b494b8f81432964a54400f9bf5792c730ac
MD5 3d2fe8e728643e386e0460e67333b26c
BLAKE2b-256 d7bce6e271164c9c0fd641430b0fcbf41c94286815443138e7dd34d2d3921edd

See more details on using hashes here.

File details

Details for the file pyproject_pipenv-1.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for pyproject_pipenv-1.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8eef81ee44657cdf232550975820bb28a7cc70c31f3d61abced9092d0b264ae3
MD5 5b33e433ff6b6a2c45a8217559a98067
BLAKE2b-256 3929d114455b25c842dbff20e947cced941f751d7fbe552204ec04929bd2eda1

See more details on using hashes here.

Supported by

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