build
installer
Our great sponsors
build | installer | |
---|---|---|
7 | 2 | |
652 | 111 | |
3.1% | 2.7% | |
9.2 | 6.6 | |
11 days ago | 4 days ago | |
Python | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
build
- How can I download a software for my user automatically?
-
Underappreciated Challenges with Python Packaging
If it's pure Python, the only packaging file you need is `pyproject.toml`. You can fill that file with packaging metadata per PEP 518 and PEP 621, including using modern build tooling like flit[1] for the build backend and build[2] for the frontend.
With that, you entire package build (for all distribution types) should be reducible to `python -m build`. Here's an example of a full project doing everything with just `pyproject.toml`[3] (FD: my project).
[1]: https://github.com/pypa/flit
-
"Even with --dry-run pip will execute arbitrary code found in the package's setup.py. In fact, merely asking pip to download a package can execute arbitrary code"
RE the dislike of a "third-party tool", what do you mean by this? All the major tools for packaging in Python are under the PyPA, e.g. - twine - build - hatch
-
'Python: Please stop screwing over Linux distros'
building wheels/sdists to upload or install: build
-
An Interactive Cheat Sheet That Just Gives You The Answer
python3 setup.py sdist bdist_wheel - no need for an sdist when building wheels, also I'd recommend using pypa/build instead.
-
How to Structure a Python AWS Serverless Project
The first step is to turn the internal package into a wheel (a *.whl file). We can use the build tool for this purpose. After installing build with pip we can run it as follows:
-
The future of Python build systems and Gentoo
Shouldn't https://github.com/pypa/build help? I don't think it has enough features yet but I was under the impression that was the distro solution.
installer
-
The future of Python build systems and Gentoo
And probably https://github.com/pradyunsg/installer https://pypi.org/project/installer/ too, but that one isn't under the pypa org yet, given the author, it probably will be.
All that being said, the deprecations and removals are being done way before the replacements are in place and tested and features/rough edges rounded out, which I guess is python tradition at this point.
IMHO, the repos maintained by pypa should all be part of the core teams responsibility (e.g. pip is maintained by pypa, not core, but its installed as part of the python installer you download from the foundation's website...), along with solving building/installing/packaging/distributing as a whole. But the core team decided their volunteers didn't want to work on that (ok fair) and pypa stepped up to do it, but never really had enough manpower to tackle it well (ok also fair). And none of the tech companies ever thought "gee we rely so heavily on this awesome tool, maybe we should send them some money to keep the lights on..." So instead its just been a giant mess.
-
Python: Please stop screwing over Linux distros
python -m installer --destdir="$pkgdir" once pradyunsg/installer#66 is finally merged
What are some alternatives?
gh-action-pypi-publish - The blessed :octocat: GitHub Action, for publishing your :package: distribution files to PyPI: https://github.com/marketplace/actions/pypi-publish
pipx - Install and Run Python Applications in Isolated Environments
setuptools - Official project repository for the Setuptools build system
pipsi - pip script installer
pyunifiprotect - Unofficial UniFi Protect Python API and CLI
py2exe - Create standalone Windows programs from Python code
awesome-pyproject - An Awesome List of projects using the pyproject.toml Python configuration file.
requests - A simple, yet elegant, HTTP library.
Cargo - The Rust package manager
serverless-project-example - Example Python project using AWS serverless stack
Poetry - Python packaging and dependency management made easy