pur


Namepur JSON
Version 7.3.1 PyPI version JSON
download
home_pagehttps://github.com/alanhamlett/pip-update-requirements
SummaryUpdate packages in a requirements.txt file to latest versions.
upload_time2023-09-04 11:55:45
maintainer
docs_urlNone
authorAlan Hamlett
requires_python
licenseBSD
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            [![Tests](https://img.shields.io/github/actions/workflow/status/alanhamlett/pip-update-requirements/tests.yml?branch=master)](https://github.com/alanhamlett/pip-update-requirements/actions)
[![Coverage](https://codecov.io/gh/alanhamlett/pip-update-requirements/branch/master/graph/badge.svg?token=Ob1I7eMhiS)](https://codecov.io/gh/alanhamlett/pip-update-requirements)
[![Version](https://img.shields.io/pypi/v/pur.svg)](https://pypi.python.org/pypi/pur)
[![Supported Python Versions](https://img.shields.io/pypi/pyversions/pur.svg)](https://pypi.python.org/pypi/pur)
[![WakaTime](https://wakatime.com/badge/github/alanhamlett/pip-update-requirements.svg)](https://wakatime.com/)

# pip-update-requirements

Update the packages in a `requirements.txt` file.

![Purring Cat](https://raw.githubusercontent.com/alanhamlett/pip-update-requirements/master/pur.gif)

## Installation

    pip install pur

## Usage

Give pur your `requirements.txt` file and it updates all your packages to
the latest versions.

For example, given a `requirements.txt` file:

    flask==0.9
    sqlalchemy==0.9.10
    alembic==0.8.4

Running pur on that file updates the packages to current latest versions:

    $ pur -r requirements.txt
    Updated flask: 0.9 -> 1.0.2
    Updated sqlalchemy: 0.9.10 -> 1.2.8
    Updated alembic: 0.8.4 -> 0.9.9
    All requirements up-to-date.


Pur never modifies your environment or installed packages, it only modifies
your `requirements.txt` file.

You can also use Pur directly from Python:

    $ python
    Python 3.6.1
    >>> from pur import update_requirements
    >>> print([x[0]['message'] for x in update_requirements(input_file='requirements.txt').values()])
    ['Updated flask: 0.9 -> 1.0.2', 'Updated sqlalchemy: 0.9.10 -> 1.2.8', 'Updated alembic: 0.8.4 -> 0.9.9']
    >>> print(open('requirements.txt').read())
    flask==1.0.2
    sqlalchemy==1.2.8
    alembic==0.9.9


## Options

    -r, --requirement PATH   The requirements.txt file to update; Defaults to
                             using requirements.txt from the current directory
                             if it exist.
    -o, --output PATH        Output updated packages to this file; Defaults to
                             overwriting the input requirements.txt file.
    --interactive            Interactively prompts before updating each package.
    -f, --force              Force updating packages even when a package has no
                             version specified in the input requirements.txt
                             file.
    -d, --dry-run            Output changes to STDOUT instead of overwriting the
                             requirements.txt file.
    --dry-run-changed        Enable dry run and only output packages with
                             updates, not packages that are already the latest.
    -n, --no-recursive       Prevents updating nested requirements files.
    --skip TEXT              Comma separated list of packages to skip updating.
    --skip-gt                Skip updating packages using > or >= spec, to allow
                             specifying minimum supported versions of packages.
    --index-url TEXT         Base URL of the Python Package Index. Can be
                             provided multiple times for extra index urls.
    --cert PATH              Path to PEM-encoded CA certificate bundle. If
                             provided, overrides the default.
    --no-ssl-verify          Disable verifying the server's TLS certificate.
    --only TEXT              Comma separated list of packages. Only these
                             packages will be updated.
    --minor TEXT             Comma separated list of packages to only update
                             minor versions, never major. Use "*" to limit every
                             package to minor version updates.
    --patch TEXT             Comma separated list of packages to only update
                             patch versions, never major or minor. Use "*" to
                             limit every package to patch version updates.
    --pre TEXT               Comma separated list of packages to allow updating
                             to pre-release versions. Use "*" to allow all
                             packages to be updated to pre-release versions. By
                             default packages are only updated to stable
                             versions.
    -z, --nonzero-exit-code  Exit with status 1 when some packages were updated,
                             0 when no packages updated, or a number greater
                             than 1 when there was an error. By default, exit
                             status 0 is used unless there was an error
                             irregardless of whether packages were or not
                             updated.
    --version                Show the version and exit.
    --help                   Show this message and exit.

## Contributing

Before contributing a pull request, make sure tests pass:

    virtualenv venv
    . venv/bin/activate
    pip install tox
    tox

Many thanks to all [contributors](https://github.com/alanhamlett/pip-update-requirements/blob/master/AUTHORS)!

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/alanhamlett/pip-update-requirements",
    "name": "pur",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "",
    "author": "Alan Hamlett",
    "author_email": "alan.hamlett@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/15/cb/622a569ff2467e481be1295fc49f9dd5796416d9a1583312aae2074dfb86/pur-7.3.1.tar.gz",
    "platform": "any",
    "description": "[![Tests](https://img.shields.io/github/actions/workflow/status/alanhamlett/pip-update-requirements/tests.yml?branch=master)](https://github.com/alanhamlett/pip-update-requirements/actions)\n[![Coverage](https://codecov.io/gh/alanhamlett/pip-update-requirements/branch/master/graph/badge.svg?token=Ob1I7eMhiS)](https://codecov.io/gh/alanhamlett/pip-update-requirements)\n[![Version](https://img.shields.io/pypi/v/pur.svg)](https://pypi.python.org/pypi/pur)\n[![Supported Python Versions](https://img.shields.io/pypi/pyversions/pur.svg)](https://pypi.python.org/pypi/pur)\n[![WakaTime](https://wakatime.com/badge/github/alanhamlett/pip-update-requirements.svg)](https://wakatime.com/)\n\n# pip-update-requirements\n\nUpdate the packages in a `requirements.txt` file.\n\n![Purring Cat](https://raw.githubusercontent.com/alanhamlett/pip-update-requirements/master/pur.gif)\n\n## Installation\n\n    pip install pur\n\n## Usage\n\nGive pur your `requirements.txt` file and it updates all your packages to\nthe latest versions.\n\nFor example, given a `requirements.txt` file:\n\n    flask==0.9\n    sqlalchemy==0.9.10\n    alembic==0.8.4\n\nRunning pur on that file updates the packages to current latest versions:\n\n    $ pur -r requirements.txt\n    Updated flask: 0.9 -> 1.0.2\n    Updated sqlalchemy: 0.9.10 -> 1.2.8\n    Updated alembic: 0.8.4 -> 0.9.9\n    All requirements up-to-date.\n\n\nPur never modifies your environment or installed packages, it only modifies\nyour `requirements.txt` file.\n\nYou can also use Pur directly from Python:\n\n    $ python\n    Python 3.6.1\n    >>> from pur import update_requirements\n    >>> print([x[0]['message'] for x in update_requirements(input_file='requirements.txt').values()])\n    ['Updated flask: 0.9 -> 1.0.2', 'Updated sqlalchemy: 0.9.10 -> 1.2.8', 'Updated alembic: 0.8.4 -> 0.9.9']\n    >>> print(open('requirements.txt').read())\n    flask==1.0.2\n    sqlalchemy==1.2.8\n    alembic==0.9.9\n\n\n## Options\n\n    -r, --requirement PATH   The requirements.txt file to update; Defaults to\n                             using requirements.txt from the current directory\n                             if it exist.\n    -o, --output PATH        Output updated packages to this file; Defaults to\n                             overwriting the input requirements.txt file.\n    --interactive            Interactively prompts before updating each package.\n    -f, --force              Force updating packages even when a package has no\n                             version specified in the input requirements.txt\n                             file.\n    -d, --dry-run            Output changes to STDOUT instead of overwriting the\n                             requirements.txt file.\n    --dry-run-changed        Enable dry run and only output packages with\n                             updates, not packages that are already the latest.\n    -n, --no-recursive       Prevents updating nested requirements files.\n    --skip TEXT              Comma separated list of packages to skip updating.\n    --skip-gt                Skip updating packages using > or >= spec, to allow\n                             specifying minimum supported versions of packages.\n    --index-url TEXT         Base URL of the Python Package Index. Can be\n                             provided multiple times for extra index urls.\n    --cert PATH              Path to PEM-encoded CA certificate bundle. If\n                             provided, overrides the default.\n    --no-ssl-verify          Disable verifying the server's TLS certificate.\n    --only TEXT              Comma separated list of packages. Only these\n                             packages will be updated.\n    --minor TEXT             Comma separated list of packages to only update\n                             minor versions, never major. Use \"*\" to limit every\n                             package to minor version updates.\n    --patch TEXT             Comma separated list of packages to only update\n                             patch versions, never major or minor. Use \"*\" to\n                             limit every package to patch version updates.\n    --pre TEXT               Comma separated list of packages to allow updating\n                             to pre-release versions. Use \"*\" to allow all\n                             packages to be updated to pre-release versions. By\n                             default packages are only updated to stable\n                             versions.\n    -z, --nonzero-exit-code  Exit with status 1 when some packages were updated,\n                             0 when no packages updated, or a number greater\n                             than 1 when there was an error. By default, exit\n                             status 0 is used unless there was an error\n                             irregardless of whether packages were or not\n                             updated.\n    --version                Show the version and exit.\n    --help                   Show this message and exit.\n\n## Contributing\n\nBefore contributing a pull request, make sure tests pass:\n\n    virtualenv venv\n    . venv/bin/activate\n    pip install tox\n    tox\n\nMany thanks to all [contributors](https://github.com/alanhamlett/pip-update-requirements/blob/master/AUTHORS)!\n",
    "bugtrack_url": null,
    "license": "BSD",
    "summary": "Update packages in a requirements.txt file to latest versions.",
    "version": "7.3.1",
    "project_urls": {
        "Homepage": "https://github.com/alanhamlett/pip-update-requirements"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "15cb622a569ff2467e481be1295fc49f9dd5796416d9a1583312aae2074dfb86",
                "md5": "60bee1c52faf71ae32fd6876cf2df330",
                "sha256": "ac693e4c1b7c8fa376b198ce797488befa65f0965ce13b4a8659fd44113a24ba"
            },
            "downloads": -1,
            "filename": "pur-7.3.1.tar.gz",
            "has_sig": false,
            "md5_digest": "60bee1c52faf71ae32fd6876cf2df330",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 1519331,
            "upload_time": "2023-09-04T11:55:45",
            "upload_time_iso_8601": "2023-09-04T11:55:45.704639Z",
            "url": "https://files.pythonhosted.org/packages/15/cb/622a569ff2467e481be1295fc49f9dd5796416d9a1583312aae2074dfb86/pur-7.3.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-09-04 11:55:45",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "alanhamlett",
    "github_project": "pip-update-requirements",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "requirements": [],
    "tox": true,
    "lcname": "pur"
}
        
Elapsed time: 0.11446s