• Stars
    star
    578
  • Rank 77,250 (Top 2 %)
  • Language
    Python
  • License
    MIT License
  • Created about 6 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

πŸ—½ Like yarn outdated/upgrade, but for pip. Upgrade all your pip packages and automate your Python Dependency Management.

pipupgrade

The missing command for pip

Table of Contents

Features

  • Updates system packages and local packages.
  • Discovers packages present within multiple Python Environments.
  • Updates packages mentioned within a requirements.txt file (Also pins up-to-date versions if mentioned).
  • Smart requirements.txt detector.
  • Pipfile support.
  • Detects semantic version to avoid updates that break changes. Also ensures to avoid child dependencies that break changes.
  • View Dependency Graph.
  • Parallel updates (blazingly fast).
  • Python 2.7+ and Python 3.4+ compatible. Also pip 9+, pip 10+, pip 18+ and pip 19.0.1+ compatible.
  • Automate your Dependencies by installing pipupgrade in your CI workflow.
  • Zero Dependencies!

Quick Start

$ pip install pipupgrade

Check out installation for more details.

Usage

Basic Usage

That's basically it! Run the help for more details...

$ pipupgrade --help
usage: pipupgrade [--pip-path PIP_PATH] [-y] [-c]
                  [--upgrade-type {major,minor,patch} [{major,minor,patch} ...]]
                  [-l] [-f {table,tree,json,yaml}] [-a] [--pip] [-s]
                  [-r REQUIREMENTS] [--pipfile PIPFILE] [-i] [-p PROJECT]
                  [--git-username GIT_USERNAME] [--git-email GIT_EMAIL]
                  [--pull-request] [--github-access-token GITHUB_ACCESS_TOKEN]
                  [--github-reponame GITHUB_REPONAME]
                  [--github-username GITHUB_USERNAME]
                  [--target-branch TARGET_BRANCH] [-j JOBS] [-u]
                  [--no-included-requirements] [--no-cache] [-o OUTPUT]
                  [--ignore-error] [--force] [--no-color] [-V] [-v] [-h]
                  [packages [packages ...]]

pipupgrade (v VERSION)

UPGRADE ALL THE PIP PACKAGES!

positional arguments:
  packages              Packages to Upgrade. (default: None)

optional arguments:
  --ignore IGNORE       Ignore packages to upgrade. (default: None)
  --pip-path PIP_PATH   Path to pip executable to be used. (default: None)
  -y, --yes             Confirm for all dialogs. (default: 0)
  -c, --check           Perform a dry-run, avoid updating packages. (default:
                        0)
  --upgrade-type {major,minor,patch} [{major,minor,patch} ...]
                        Upgrade Type (default: ['minor', 'patch'])
  -l, --latest          Update all packages to latest. (default: 0)
  -f {table,tree,json,yaml}, --format {table,tree,json,yaml}
                        Display packages format. (default: table)
  -a, --all             List all packages. (default: 0)
  --pip                 Update pip. (default: 0)
  -s, --self            Update pipupgrade. (default: False)
  -r REQUIREMENTS, --requirements REQUIREMENTS
                        Path(s) to requirements.txt file. (default: None)
  --pipfile PIPFILE     Path(s) to Pipfile (default: None)
  -i, --interactive     Interactive Mode. (default: 0)
  -p PROJECT, --project PROJECT
                        Path(s) to Project (default: None)
  --git-username GIT_USERNAME
                        Git Username (default: None)
  --git-email GIT_EMAIL
                        Git Email (default: None)
  --pull-request        Perform a Pull Request. (default: False)
  --github-access-token GITHUB_ACCESS_TOKEN
                        GitHub Access Token (default: None)
  --github-reponame GITHUB_REPONAME
                        Target GitHub Repository Name (default: None)
  --github-username GITHUB_USERNAME
                        Target GitHub Username (default: None)
  --target-branch TARGET_BRANCH
                        Target Branch (default: master)
  -j JOBS, --jobs JOBS  Number of Jobs to be used. (default: 4)
  -u, --user            Install to the Python user install directory for
                        environment variables and user configuration.
                        (default: 0)
  --no-included-requirements
                        Avoid updating included requirements. (default: 0)
  --no-cache            Avoid fetching latest updates from PyPI server.
                        (default: 0)
  -o OUTPUT, --output OUTPUT
                        Print Output to File. (default: None)
  --ignore-error        Ignore Error in case of upgrade failure. (default: 0)
  --force               Force search for files within a project. (default: 0)
  --no-color            Avoid colored output. (default: 0)
  -V, --verbose         Display verbose output. (default: False)
  -v, --version         Show pipupgrade's version number and exit.
  -h, --help            Show this help message and exit.

Docker

Using pipupgrade's Docker Image to generate a Pull Request can be done as follows:

$ docker run \
    -e "PIPUPGRADE_GIT_USERNAME=<YOUR_GIT_USERNAME>" \
    -e "PIPUPGRADE_GIT_EMAIL=<YOUR_GIT_EMAIL>" \
    -e "PIPUPGRADE_GITHUB_REPONAME=<YOUR_GIT_REPONAME>" \
    -e "PIPUPGRADE_GITHUB_USERNAME=<YOUR_GIT_USERNAME>" \
    --rm \
    -it \
    -v $(pwd):/path/to/project \
      achillesrasquinha/pipupgrade \
        --project /path/to/project \
        --pull-request \
        --force \
        --yes \
        --verbose

Similar Packages

pipupgrade attempts to provide an all-in-one solution as compared to the following packages:

Known Issues

License

This repository has been released under the MIT License.


Made with ❀️ using boilpy.

More Repositories

1

bulbea

πŸ— 🐻 Deep Learning based Python Library for Stock Market Prediction and Modelling
Python
2,013
star
2

spockpy

✊ βœ‹ ✌️ ☝️ πŸ–– A Python hand gesture recognition library for Kinetic User Interface (KUI).
Python
55
star
3

brains-from-scratch

Machine Learning for dummies - https://bit.do/brains-from-scratch
Jupyter Notebook
30
star
4

pehchaan

Devanagari Character Recognition
Python
29
star
5

digdet

A realtime digit OCR on the browser using Machine Learning
Jupyter Notebook
22
star
6

PyGram

An Instagram-like photo editor in Python
Python
15
star
7

boilpy

πŸ“¦ The Best Python Package Template in the Universe
Python
12
star
8

Chat

Minimalistic, modern and extensible chat Client + UI Library for the web.
JavaScript
11
star
9

awesome-foss

A curated list of Free and Open Source Software (FOSS) alternatives for Commercial Software.
9
star
10

Practical-Deep-Learning

The only Deep Learning course you'll ever need.
Jupyter Notebook
8
star
11

nude.cpp

Nudity Detection in OpenCV
C++
7
star
12

git-wow

many add, such commit, very push, git wow.
7
star
13

16SMaRT

16s rRNA Sequencing Meta-analysis Reproducibility Tool (using mothur).
Python
7
star
14

Minitron.js

A dot-matrix display-like javascript plugin.
TypeScript
5
star
15

Flask-React-Boilerplate

A basic Flask + React + Redux Boilerplate for scalable apps.
Python
4
star
16

docker-postgres

A docker image for postgres, but better.
Shell
3
star
17

docker-rpy2

Alpine-based Docker Image for rpy2
Dockerfile
3
star
18

awesome-tools

A curated list of Awesome Developer Tools!
3
star
19

SnackJS

Android Snackbars done right for the web. https://achillesrasquinha.github.io/SnackJS
JavaScript
3
star
20

schema

πŸ”– Metadata, for humans.
Python
3
star
21

docker-template

A template repository for building and testing docker images
Shell
2
star
22

frappe-noob

If this is your first day at @frappe, this repository is definitely what you need.
Python
2
star
23

fluxml

Flux Balance Analysis using Machine Learning
Python
2
star
24

docker-redis

A docker image for redis, but better.
Shell
2
star
25

balboa_core

ROS Package for Balboa 32U4
CMake
1
star
26

k.ai

A female chatbot assistant
JavaScript
1
star
27

bootstrap-scoped

Scope your Bootstrap assets in a jiffy!
Python
1
star
28

deeply

A library for Deep Learning Implementations and utils
Python
1
star
29

fluxviz

A visualizer for metabolic models.
Python
1
star
30

upyog

A collection of various common Python utilities
Python
1
star
31

dash-class

A simple light-weight javascript utility for the class attribute.
JavaScript
1
star
32

gixpert

GI Endoscopy using Deep Learning
Python
1
star
33

docker-ipython

Alpine-based Dockerfile for IPython
Dockerfile
1
star
34

docker-docker-compose

Docker-Compose in Alpine-Based Docker Image
Dockerfile
1
star
35

docker-cobrapy

Alpine-based Docker Image for CobraPy
Dockerfile
1
star