Skip to main content

Automatic upgrade of PyPI packages

Project description

https://img.shields.io/pypi/v/autoupgrade-ng.svg https://img.shields.io/github/issues/vuolter/autoupgrade.svg https://img.shields.io/pypi/dm/autoupgrade-ng.svg https://img.shields.io/pypi/l/autoupgrade-ng.svg https://img.shields.io/pypi/format/autoupgrade-ng.svg https://img.shields.io/pypi/pyversions/autoupgrade-ng.svg https://img.shields.io/pypi/status/autoupgrade-ng.svg https://img.shields.io/twitter/url/https/twitter.com/WalterPurcaro.svg?style=social https://img.shields.io/github/stars/vuolter/autoupgrade.svg

Quick Start

from autoupgrade import Package
Package(<packagename>).smartupgrade()

Example:

from autoupgrade import Package
Package('pip').smartupgrade()

The above will upgrade the Python package pip only if there is a new version available on the PyPI. The upgrade will be unattended and the python script will be restarted.

Old methods are still supported; you can accomplish the same task calling:

from autoupgrade import AutoUpgrade
AutoUpgrade('pip').upgrade_if_needed()

Installation

pip install autoupgrade-ng

All the modules will be installed under the autoupgrade package, so make sure you have already removed the old AutoUpgrade package (https://pypi.python.org/pypi/autoupgrade) before install this to avoid an installation conflict.

Usage

Classes

class Package(__builtin__.object)

Decription: Basic package class, holds one package.

class AutoUpgrade(__builtin__.object)

Decription: Legacy class refering to Package one.

Methods

__init__(self, pkg, index=None, verbose=False)

Decription: None.

Arguments:

  • pkg (str) name of package.

  • index (str) alternative index, if not given default from pip will be used.
    Include full index url _(e.g. https://example.com/simple)_.
    Return: None.
check(self)

Decription: Check if pkg has a later version.

Arguments: None.

Return: True if later version exists, else False.

restart(self)

Decription: Restart application with same args as it was started.

Arguments: None.

Return: None.

upgrade(self, dependencies=False, prerelease=False, force=False)

Decription: Upgrade the package unconditionaly.

Arguments:

  • dependencies update dependencies if True (see ``pip –no-deps``).

  • prerelease update to pre-release and development versions.

  • force reinstall all packages even if they are already up-to-date.

Return: None.

smartupgrade(self, restart=True, dependencies=False,
prerelease=False)

Decription: Upgrade the package if there is a later version available.

Arguments:

  • restart restart app if True.

  • dependencies update dependencies if True (see ``pip –no-deps``).

  • prerelease update to pre-release and development versions.

Return: None.

upgrade\_if\_needed(self, restart=True, dependencies=False,
prerelease=False)

Decription: Legacy method refering to smartupgrade one.

Arguments: Same as smartupgrade.

Return: Same as smartupgrade.

Release notes

0.3.0:

  • Fork of autoupgrade (https://pypi.python.org/pypi/autoupgrade).

  • Python 3 support.

  • Removed unnecessary dependencies.

  • Pre-release and force-reinstall support.

  • Massive code refactoring and cleaning.

  • Updated README and LICENSE.

  • New exception PIPError to handle pip errors.

  • Main class renamed to Package.

  • More verbose messages.

  • Small code optimizations and improvements.

0.2.0:

  • Issue #2, Index did not work when specified.

  • Issue #3, Autoupgrade should not print to console (added verbose flag to keep backward compatibility.

  • Issue #4, Support for pip > v0.6 .

0.1.5:

  • Issue #1, Extra index did not work for all servers.

0.1.4:

  • Fixed bug when version contains characters.

0.1.3:

  • Fixed vital fault in v0.1.2 .

0.1.2:

  • Setup file fixes

  • Removed verbose output as default.

  • Return value fixed of method upgrade.

0.1.1:

  • Dependencies updated.

0.1.0:

  • Initial release.

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

autoupgrade-ng-0.3.0.zip (9.3 kB view details)

Uploaded Source

Built Distribution

autoupgrade_ng-0.3.0-py2.py3-none-any.whl (7.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file autoupgrade-ng-0.3.0.zip.

File metadata

  • Download URL: autoupgrade-ng-0.3.0.zip
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for autoupgrade-ng-0.3.0.zip
Algorithm Hash digest
SHA256 ef9c7b0b6eece6f75d3b231642c5a63e6c2c91731b855c6397ea2b464723c13c
MD5 b954fa574214559879fd238bc56d3173
BLAKE2b-256 559da0991db939723670aadfdbac94684084aac64839d653991f0b9a13419698

See more details on using hashes here.

File details

Details for the file autoupgrade_ng-0.3.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for autoupgrade_ng-0.3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a59af897ca39e00771374a4a47e82dbf81f7d010fd69ef222058d22c4a62239e
MD5 5db014f5d56453509e8921ed1524ab40
BLAKE2b-256 285b6b5d00683947815f666464abd1930ea1deed2a41b96dea2c8e75abc5b60a

See more details on using hashes here.

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