Python package manager comparison


Self-introduction

--Shota Yamamoto --VisasQ Advisor Development Team --Front end center


Introduction

--Python doesn't have clear de facto standard tools like npm, bundler --Most tools use pip internally ――Select in consideration of what you want to do and development speed


Thing you want to do

--Fixed version including child dependency --Package upgrade --Simple script registration


Don't talk

--Building packages, publishing to PyPI, etc.


Tools to introduce


Tools not to talk about this time


pip-tools


version control


Version upgrade

--Packages can be updated individually


Register a simple script

--None


pipenv


version control

https://pipenv-ja.readthedocs.io/ja/translate-ja/basics.html

[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[packages]
requests = "*"


[dev-packages]
pytest = "*"

Version upgrade

--Update all packages at once --Packets cannot be updated individually --Update all packages during install --Do not exceed the version described in Pipfile


Register a simple script

--Write in scripts of Pipfile --Run with pipenv run foo

[scripts]
lint = "flake8"

Other

--There was a time when it wasn't released for about a year and a half --Released in April of this year and several times since: ideograph_advantage:


poetry


version control

https://github.com/python-poetry/poetry

[tool.poetry.dependencies]
requests = { version = "^2.13", extras = [ "security" ] }

[tool.poetry.scripts]
my-script = 'my_package:main'

Version upgrade

--Packages can be updated individually --Need to update individually until child dependency


Register a simple script

--There is a function to prepare * .py and execute it. --You cannot write commands directly ――It's not easy because you need to prepare a file each time. --Convenient for doing complicated things


Other

--There are few maintainers and the development speed is slow


Summary

Recommended Posts

Python package manager comparison
First Python 3 ~ First comparison ~
Python SDP runtime comparison
Python package development notes
Python ipaddress package notes
python> Link> PyUserInput package |
Python, Java, C ++ speed comparison
Python package management in IntelliJ
Null object comparison in Python
Comparison of 4 Python web frameworks
About Python string comparison operators
Python 3 sorted and comparison functions
[CovsirPhy] COVID-19 Python Package for Data Analysis: Scenario Analysis (Parameter Comparison)
A record of patching a python package
manager
[Package cloud] Manage python packages with package cloud
Python Note: About comparison using is
Java and Python basic grammar comparison
Bayesian optimization package GPyOpt in Python
Python package management tool personal summary
Visualize python package dependencies with graphviz
How to use Nix package manager
Introduction of python drawing package pygal
Python executable file conversion module comparison 2
Speed comparison of Python XML parsing
Docker environment update: add Python package
CentOS 6.x x86_64 Python-2.7.4 rpm Package Creation
msgpack deserialization performance comparison (C ++ / Python / Ruby)
How to package and distribute Python scripts
Closure 4 language comparison (Python, JavaScript, Java, C ++)
(Java, JavaScript, Python) Comparison of string processing
Python installation and package management with pip
Comparison of Japanese conversion module in Python3
Python environment tool comparison chart for Rubyist
python string comparison / use'list'and'in' instead of'==' and'or'
Playing card class in Python (with comparison)
Install Python package management tool pip (Windows)
Create a deb file from a python package
Comparison of Python serverless frameworks-Zappa vs Chalice
[Python] Get Python package information with PyPI API
Comparison of matrix transpose speeds with Python
Directory move tool to Python package (pycd)
Time comparison: Correlation coefficient calculation in Python