uppd


Nameuppd JSON
Version 1.6.0 PyPI version JSON
download
home_pageNone
SummaryUpdate dependencies and optional dependencies in pyproject.toml files.
upload_time2024-11-29 20:42:06
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords dependency management maintenance utility
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ..  Copyright (c) 2024, Janus Heide.
..  All rights reserved.
..
.. Distributed under the "BSD 3-Clause License", see LICENSE.rst.

Update Python Project Dependencies (UPPD)
=========================================

.. image:: https://github.com/janusheide/uppd/actions/workflows/unittests.yml/badge.svg
    :target: https://github.com/janusheide/uppd/actions/workflows/unittests.yml
    :alt: Unit tests

.. image:: https://img.shields.io/pypi/pyversions/uppd
   :alt: PyPI - Python Version

.. image:: https://img.shields.io/librariesio/github/janusheide/uppd
   :alt: Libraries.io dependency status for GitHub repo

Update dependencies and optional dependencies in ``pyproject.toml`` files based on
defined match operators.

This project aims to enable a similar workflow as pur_ does for ``requirements.txt`` files.


Getting Started
---------------

Install and run::

    pip install uppd
    uppd
    INFO: dlister==1.1.0 -> dlister==1.2.0
    INFO: pytest-aiohttp==1.0.0 -> pytest-aiohttp==1.0.5
    INFO: pytest==8.0.0 -> pytest==8.3.3

Set inputs and output files::

    uppd -i dev/pyproject.toml
    uppd -i pyproject.toml -o pyproject.toml.updated

Skip dependencies::

    uppd --skip foo bar

Allow upgrade to pre releases::

    uppd --pre foo bar

Print help::

    uppd --help

    usage: uppd [-h]
                [-i INFILE]
                [-o OUTFILE]
                [-m [{<,<=,==,>=,>,~=} ...]]
                [--skip [SKIP ...]]
                [--dev [DEV ...]]
                [--pre [PRE ...]]
                [--post [POST ...]]
                [--index-url INDEX_URL]
                [--log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
                [--log-file LOG_FILE]
                [--dry-run]
                [-v]

    Update Python Project Dependencies.

    options:
    -h, --help            show this help message and exit
    -i INFILE, --infile INFILE
                          path(s) to input file(s) (default: pyproject.toml)
    -o OUTFILE, --outfile OUTFILE
                            path(s) to output file(s). (default: [])
    -m [{<,<=,==,>=,>,~=} ...], --match-operators [{<,<=,==,>=,>,~=} ...]
                          operators to upgrade. (default: ['==', '<=', '~='])
    --skip [SKIP ...]     dependencies to skip upgrade. (default: [])
    --dev [DEV ...]       dependencies to upgrade to dev release. (default: [])
    --pre [PRE ...]       dependencies to upgrade to pre release. (default: [])
    --post [POST ...]     dependencies to upgrade to post release. (default: ['*'])
    --index-url INDEX_URL
                          base URL of the Python Package Index. (default: https://pypi.org)
    --log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}
                          logging level. (default: INFO)
    --log-file LOG_FILE   pipe loggining to file instead of stdout. (default: None)
    --dry-run             do not save changes to output file(s). (default: False)
    -v, --version         show program's version number and exit


The following settings (with defaults) can be set/overwritten in the ``infile``::

    [tool.uppd]
    match_operators = ["==", "<=", "~="]
    skip = []
    dev = []
    pre = []
    post = ["*"]
    index_url = "https://pypi.org"


Development
-----------

Setup, run tests and release::

    pip install -e .[dev]
    brundle
    pytest
    bouillon release

Credits
-------

This project aims to enable a similar workflow as pur_ for requirements.txt files, and essentially exists because pur_ (at the time of writing) does not support upgrading dependencies in ``pyproject.toml`` files.

.. _pur: https://github.com/alanhamlett/pip-update-requirements

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "uppd",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "dependency management, maintenance, utility",
    "author": null,
    "author_email": "Janus Heide <janusheide@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/e8/b0/954358eca5e86935eaf75d2d3cb2bdddd5429884105b7fbeeb2302b5cc1f/uppd-1.6.0.tar.gz",
    "platform": null,
    "description": "..  Copyright (c) 2024, Janus Heide.\n..  All rights reserved.\n..\n.. Distributed under the \"BSD 3-Clause License\", see LICENSE.rst.\n\nUpdate Python Project Dependencies (UPPD)\n=========================================\n\n.. image:: https://github.com/janusheide/uppd/actions/workflows/unittests.yml/badge.svg\n    :target: https://github.com/janusheide/uppd/actions/workflows/unittests.yml\n    :alt: Unit tests\n\n.. image:: https://img.shields.io/pypi/pyversions/uppd\n   :alt: PyPI - Python Version\n\n.. image:: https://img.shields.io/librariesio/github/janusheide/uppd\n   :alt: Libraries.io dependency status for GitHub repo\n\nUpdate dependencies and optional dependencies in ``pyproject.toml`` files based on\ndefined match operators.\n\nThis project aims to enable a similar workflow as pur_ does for ``requirements.txt`` files.\n\n\nGetting Started\n---------------\n\nInstall and run::\n\n    pip install uppd\n    uppd\n    INFO: dlister==1.1.0 -> dlister==1.2.0\n    INFO: pytest-aiohttp==1.0.0 -> pytest-aiohttp==1.0.5\n    INFO: pytest==8.0.0 -> pytest==8.3.3\n\nSet inputs and output files::\n\n    uppd -i dev/pyproject.toml\n    uppd -i pyproject.toml -o pyproject.toml.updated\n\nSkip dependencies::\n\n    uppd --skip foo bar\n\nAllow upgrade to pre releases::\n\n    uppd --pre foo bar\n\nPrint help::\n\n    uppd --help\n\n    usage: uppd [-h]\n                [-i INFILE]\n                [-o OUTFILE]\n                [-m [{<,<=,==,>=,>,~=} ...]]\n                [--skip [SKIP ...]]\n                [--dev [DEV ...]]\n                [--pre [PRE ...]]\n                [--post [POST ...]]\n                [--index-url INDEX_URL]\n                [--log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}]\n                [--log-file LOG_FILE]\n                [--dry-run]\n                [-v]\n\n    Update Python Project Dependencies.\n\n    options:\n    -h, --help            show this help message and exit\n    -i INFILE, --infile INFILE\n                          path(s) to input file(s) (default: pyproject.toml)\n    -o OUTFILE, --outfile OUTFILE\n                            path(s) to output file(s). (default: [])\n    -m [{<,<=,==,>=,>,~=} ...], --match-operators [{<,<=,==,>=,>,~=} ...]\n                          operators to upgrade. (default: ['==', '<=', '~='])\n    --skip [SKIP ...]     dependencies to skip upgrade. (default: [])\n    --dev [DEV ...]       dependencies to upgrade to dev release. (default: [])\n    --pre [PRE ...]       dependencies to upgrade to pre release. (default: [])\n    --post [POST ...]     dependencies to upgrade to post release. (default: ['*'])\n    --index-url INDEX_URL\n                          base URL of the Python Package Index. (default: https://pypi.org)\n    --log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}\n                          logging level. (default: INFO)\n    --log-file LOG_FILE   pipe loggining to file instead of stdout. (default: None)\n    --dry-run             do not save changes to output file(s). (default: False)\n    -v, --version         show program's version number and exit\n\n\nThe following settings (with defaults) can be set/overwritten in the ``infile``::\n\n    [tool.uppd]\n    match_operators = [\"==\", \"<=\", \"~=\"]\n    skip = []\n    dev = []\n    pre = []\n    post = [\"*\"]\n    index_url = \"https://pypi.org\"\n\n\nDevelopment\n-----------\n\nSetup, run tests and release::\n\n    pip install -e .[dev]\n    brundle\n    pytest\n    bouillon release\n\nCredits\n-------\n\nThis project aims to enable a similar workflow as pur_ for requirements.txt files, and essentially exists because pur_ (at the time of writing) does not support upgrading dependencies in ``pyproject.toml`` files.\n\n.. _pur: https://github.com/alanhamlett/pip-update-requirements\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Update dependencies and optional dependencies in pyproject.toml files.",
    "version": "1.6.0",
    "project_urls": {
        "Changelog": "https://github.com/janusheide/uppd/blob/main/NEWS.rst",
        "Homepage": "https://github.com/janusheide/uppd",
        "Repository": "https://github.com/janusheide/uppd"
    },
    "split_keywords": [
        "dependency management",
        " maintenance",
        " utility"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c1f285158a1786709ec73992c66804348fca5a6e5b643e3a66581dfbbec525ad",
                "md5": "27f7c7896a4ab328d61c4724ef62b094",
                "sha256": "e0fbd3945609e6342d3586ce50157946b19c933cecec6cce31870bbc20307f6e"
            },
            "downloads": -1,
            "filename": "uppd-1.6.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "27f7c7896a4ab328d61c4724ef62b094",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 7094,
            "upload_time": "2024-11-29T20:41:53",
            "upload_time_iso_8601": "2024-11-29T20:41:53.461221Z",
            "url": "https://files.pythonhosted.org/packages/c1/f2/85158a1786709ec73992c66804348fca5a6e5b643e3a66581dfbbec525ad/uppd-1.6.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e8b0954358eca5e86935eaf75d2d3cb2bdddd5429884105b7fbeeb2302b5cc1f",
                "md5": "64624ada5e17c35db4ca940e59b8548d",
                "sha256": "aa87c53b24378e460dfe0fdb861f167346a5321c0a513fabb6c77bc019625105"
            },
            "downloads": -1,
            "filename": "uppd-1.6.0.tar.gz",
            "has_sig": false,
            "md5_digest": "64624ada5e17c35db4ca940e59b8548d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 11172,
            "upload_time": "2024-11-29T20:42:06",
            "upload_time_iso_8601": "2024-11-29T20:42:06.325375Z",
            "url": "https://files.pythonhosted.org/packages/e8/b0/954358eca5e86935eaf75d2d3cb2bdddd5429884105b7fbeeb2302b5cc1f/uppd-1.6.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-29 20:42:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "janusheide",
    "github_project": "uppd",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "uppd"
}
        
Elapsed time: 0.32173s