Python Packaging

Open-source Python projects categorized as Packaging | Edit details
Related topics: #Python #Pypi #Pip #Linux #iOS

Top 23 Python Packaging Projects

  • GitHub repo Pipenv

    Python Development Workflow for Humans.

    Project mention: Moving from pipenv to poetry or PDM | reddit.com/r/Python | 2021-12-19
  • GitHub repo Poetry

    Python dependency management and packaging made easy.

    Project mention: Teaching Programming With VS Code | reddit.com/r/vscode | 2022-01-13

    how to integrate Poetry with VS Code so hitting the "run" button does what one would expect? (I found advice online to set a "venvpath" in the Command Palette, but I don't see it when I look it up)

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • GitHub repo pip

    The Python package installer

    Project mention: How do I untangle these piece of trash Conda Environments? | reddit.com/r/learnpython | 2022-01-15

    I spent a bunch of time last year helping fix the most common issue of being stuck backtracking: https://github.com/pypa/pip/issues/10479

  • GitHub repo python-for-android

    Turn your Python application into an Android APK

    Project mention: My first app made with Buildozer crashes on start | reddit.com/r/kivy | 2022-01-06

    AAB support was added to python for android, see here. You may need to install the development version for this, and I don't know if it integrates with buildozer yet (or how).

  • GitHub repo setup.py

    📦 A Human's Ultimate Guide to setup.py.

    Project mention: I am frustrated with packaging python, please educate me. | reddit.com/r/Python | 2021-11-16

    Here is a wonderful setup.py template I like to use: https://github.com/navdeep-G/setup.py. But to be fair, I have also switched to poetry in the last year.

  • GitHub repo exodus

    Painless relocation of Linux binaries–and all of their dependencies–without containers.

    Project mention: FreeBSD Jails for Fun and Profit | news.ycombinator.com | 2021-12-22

    Exodus?

    Exodus – relocation of Linux binaries–and all of their deps–without containers - https://github.com/intoli/exodus

  • GitHub repo PDM

    A modern Python package manager with PEP 582 support.

    Project mention: Ask HN: Good Python projects to read for modern Python? | news.ycombinator.com | 2021-12-26

    Here's a few that haven't been mentioned yet:

    - PDM: A modern Python package manager with PEP 582 support[1]

    - Spleeter: Deezer source separation library including pretrained models[2]

    ---

    [0]: https://github.com/pdm-project/pdm

    [1]: https://github.com/deezer/spleeter

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • GitHub repo buildozer

    Generic Python packager for Android and iOS

    Project mention: Build iOS-like Apps in Python | reddit.com/r/Python | 2021-03-31

    I believe buildozer does not work on Windows, but you can likely get around it with something like WSL or a virtual machine

  • GitHub repo peru

    a generic package manager, for including other people's code in your projects

    Project mention: How to have separate Git projects that can be worked on individually under that same GitHub repo? | reddit.com/r/github | 2021-12-16

    I do this with a dependency manager, called Mary Poppins. It's a re-implementation of peru.

  • GitHub repo kivy-ios

    Toolchain for compiling Python / Kivy / other libraries for iOS

    Project mention: Unable to load music | reddit.com/r/kivy | 2022-01-03

    I'm guessing this options.h and other files are from sdl2_mixer recipe which probably builds libtimidity, which have been extracted into the directory you are talking about. This is likely from the sdl2_mixer recipe or perhaps sdl2 recipe.

  • GitHub repo devpi

    Python PyPi staging server and packaging, testing, release tool

    Project mention: Is there away to install Packages when not online? | reddit.com/r/pycharm | 2021-08-11

    devpi-server will probably for the bill

  • GitHub repo gitchangelog

    Creates a changelog from git log history.

    Project mention: Back to bash: Quoting | dev.to | 2022-01-09

    One notable thing to point out here is the irregular behavior of escaping !. When escaped, the backslash is maintained! As an example, consider creating a git commit that follows the default formatting guidelines of gitchangelog

  • GitHub repo localshop

    local pypi server (custom packages and auto-mirroring of pypi)

  • GitHub repo tito

    A tool for managing rpm based git projects.

    Project mention: Blogpost: Building RHEL packages with Tito | reddit.com/r/Fedora | 2021-09-22

    I recently started maintaining some RHEL packages and described my workflow using Tito.

  • GitHub repo nvchecker

    New version checker for software releases

    Project mention: Is the AUR down for everyone? | reddit.com/r/archlinux | 2021-04-26

    https://github.com/lilydjwg/nvchecker or rss feeds

  • GitHub repo fades

    fades is a system that automatically handles the virtualenvs in the cases normally found when writing scripts and simple programs, and even helps to administer big projects.

  • GitHub repo poetry-version-plugin

    Poetry plugin for dynamically extracting the package version from a __version__ variable or a Git tag.

    Project mention: Poetry packages with dynamic version from __init__.py | reddit.com/r/Python | 2021-05-28

    I thought it could be useful for others here: https://github.com/tiangolo/poetry-version-plugin

  • GitHub repo sailboat

    🐍 A quick and easy way to distribute your Python projects!

    Project mention: cole-wilson/sailboat Python build tool | reddit.com/r/Python | 2021-02-02
  • GitHub repo appimage-builder

    GNU/Linux packaging solution using the AppImage format

    Project mention: Good news AppImage makers and Arch Linux users! Now it's possible to use the appimage-builder generator feature to create bundle recipes using pacman. This is feature comes with a great remake of the whole generator implementation. Give it a try | reddit.com/r/linux | 2021-05-18
  • GitHub repo pyroma

    Rate your Python packages package friendliness

    Project mention: What are your CI tests for your Python Project | reddit.com/r/Python | 2021-10-01

    There is a package called Pyroma (https://github.com/regebro/pyroma) and it is something like a comprehensive checker for "best practices" and provides some nice output in the shell.

  • GitHub repo pyrustic

    Collection of lightweight Python projects that share the same policy

    Project mention: Show HN: GUI As Stapled Pages (GASP) – A new way to quickly build Python apps | news.ycombinator.com | 2021-11-16

    Hi HN !

    I am excited to publish my very first white paper. I've been working on a framework called TkF (originally called Pyrustic Framework) for several months now, to make Python applications. The framework uses Tkinter (the default Python GUI toolkit), comes with new widgets (megawidgets to be precise), a dark theme, a CLI tool to manage Python projects, and other libraries I have developed for styling, multithreading, etc. I did other side projects to test the framework and discover weaknesses which I then correct. I was happy with the project because it just works.

    But I was not really productive with TkF. It takes a long time to create a GUI [1]. So I thought about creating a GUI builder. After several days of thinking, my thoughts drifted away from the Python philosophy: simple is better than complex. I eventually gave up on the idea of the GUI builder because among other reasons, I don't like using a GUI builder, for example it hides a lot of the complexity that comes back like a boomerang afterwards. A big software bazooka does not necessarily convince everyone, for example many people still prefer to use Vim or Emacs instead of an IDE [2].

    So I created the framework Dresscode. I chose this name Dresscode only to be able to make the sentence "Dress up your code with a beautiful GUI !". If TkF is C, Dresscode would be Python. With Dresscode, main views are Pages and widgets are graphical Components. Dresscode is not a GUI builder but it is designed to build a GUI as fast as a GUI builder but with two drawbacks: you will have to type some code (although it is not a lot of code compared to TkF), and the layout mechanism is not very flexible. Still to allow the developer to be productive, I implemented a very simple idea: a navigation bar automatically populated with references to the Pages (example: Home, About, etc) of the application.

    A few days ago, I was editing the READMEs of each of the Pyrustic Open Ecosystem [3] projects to improve them. The README of the TkF project has a nice cover image [4] which is a screenshot of a demo made with TkF. I wanted such a pretty image for the README of Dresscode. But this demo cannot be done as is with Dresscode without cheating. There are two buttons "Cancel" and "Connect" under a form which cannot be reproduced as it with Dresscode because the layout mechanism is not very flexible (flexibility restricted to gain in productivity).

    I wanted to unlock the potential of the layout mechanism without sacrificing developer productivity. To do this, I introduced the notion of "parent" which allows the developer to freely decide where he wants to install a widget (or group of widgets) on a view. Thanks to serendipity [5], I had other interesting ideas. I thought that all of this might form a concept that can be implemented in other programming languages. So I named the concept GASP: GUI As Stapled Pages. Here, the navigation bar represents the staple. I decided to create a new project and to abandon Dresscode. I wrote the reference framework named Gaspium [6] then wrote a white paper to encourage other people to adopt the concept and implement it in other programming languages (even other implementations still in Python but with Qt or wxWidgets or GTK etc).

    Gaspium is a lightweight framework for building GASP applications and it was created with TkF. In short, we define pages to which we add graphical components. With a single line we add a complex graphical component to a page and the layout mechanism is controlled with only 5 keyword arguments ('parent', 'side', 'anchor', 'fill', and 'expand') whose defaults are sufficient in most cases. Then we add these pages to an instance of the App class. The first page added is de facto the home page and it will be open when the application is started. Adding a page makes it automatically referenced in the application's navigation bar. Each graphical component can be identified with a unique identifier in order to be able to read its content or update it. Each page has a unique identifier assigned automatically or manually. You can open an arbitrary page directly from the command line and even pass data to it. Gaspium is suitable for: building internal tools, teaching GUI programming, building GUI wrapper for command line scripts, prototyping, building utilities for yourself or other programmers, lightweight commercial apps, et cetera.

    The concept of GASP not only makes it possible to be more productive in GUI programming, but it changes the relationship that developer and user have with an application. On the developer side, the concept of GASP structures his ideas to think of his project in independent parts (the pages), which represents a big advantage in terms of organization and maintainability of his project. For the application user familiar with monolithic applications, the concept of GASP turns the application into a series of useful programs, each with a graphical interface that can be invoked arbitrarily from the command line.

    I already use Gaspium according to the principle of dogfooding. Gaspium documentation is still precarious for the moment, but that will change soon. The Pyrustic Open Ecosystem of which Gaspium is a part, has been updated (Generation of documentation, git workflow, packaging, versioning, PyPI release ...) with an internal tool that I created in a very short time with Gaspium and Backstage (Backstage [7] is a CLI tool to manage Python projects). I can't wait to read your thoughts [8] on all of this, or show me a similar project etc. If you hate GUI programming or find it too difficult, I would like to know if this GASP concept makes you want to do GUI programming and why. Thank you for your attention !

    [1] https://blog.codinghorror.com/ui-is-hard/

    [2] https://news.ycombinator.com/item?id=25036036 (Why are so many coders still using Vim and Emacs?)

    [3] https://pyrustic.github.io (Pyrustic Open Ecosystem)

    [4] https://raw.githubusercontent.com/pyrustic/misc/master/asset... (Cover image for the README of the TkF project)

    [5] https://news.ycombinator.com/item?id=1826666 (Paul Buchheit: Serendipity finds you)

    [6] https://github.com/pyrustic/gaspium

    [7] https://github.com/pyrustic/backstage

    [8] http://sl4.org/crocker.html (Crocker's Rules)

  • GitHub repo wagon

    Creates Wheel based archives to allow portable offline installation of Python packages and their dependencies (by cloudify-cosmo)

    Project mention: How to develop multiple inter-dependent Python packages? | reddit.com/r/learnpython | 2021-09-07

    Of the existing (non-) solutions, there's https://github.com/cloudify-cosmo/wagon but it's kinda lame... I wouldn't use it.

  • GitHub repo deezer-linux

    An universal linux port of deezer, supporting both Flatpak and AppImage

    Project mention: Help installing snap package | reddit.com/r/Crostini | 2022-01-12

    How about this? A Linux port of the Windows desktop app here. Download the deb package, right-click in the files app and install directly into your Linux container. A launch icon is placed in the Linux apps folder. Alternatively, download the appimage to your Linux files folder, make it executable in Terminal with sudo chmod +x file.appimage then run it from Terminal by entering ./file.appimage. Both appear to work in my container (Debian Bullseye in Chrome OS 97 stable channel).

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-01-15.

Python Packaging related posts

Index

What are some of the best open-source Packaging projects in Python? This list will help you:

Project Stars
1 Pipenv 22,571
2 Poetry 17,815
3 pip 7,668
4 python-for-android 6,793
5 setup.py 4,960
6 exodus 2,593
7 PDM 1,784
8 buildozer 1,263
9 peru 942
10 kivy-ios 582
11 devpi 520
12 gitchangelog 514
13 localshop 375
14 tito 336
15 nvchecker 305
16 fades 185
17 poetry-version-plugin 174
18 sailboat 161
19 appimage-builder 129
20 pyroma 116
21 pyrustic 89
22 wagon 88
23 deezer-linux 25
Find remote jobs at our new job board 99remotejobs.com. There are 29 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
OPS - Build and Run Open Source Unikernels
Quickly and easily build and deploy open source unikernels in tens of seconds. Deploy in any language to any cloud.
github.com/nanovms