plz

PLZ Python PIP alternative


Keywords
python, pip, nimpy, cpython, package-manager, pip3, pypi, pypi-packages, python3
License
MIT
Install
nimble install plz

Documentation

PLZ

Use

$ plz install pre-commit   # Install 1 or more packages
$ plz uninstall pre-commit # Uninstall 1 or more packages
$ plz reinstall pre-commit # Reinstall 1 or more packages
$ plz download pre-commit  # Download 1 or more packages
$ plz hash file.py         # Show SHA CheckSum of file/package
$ plz open file.py         # Open a module in your default code editor
$ plz backup               # Compressed signed backup of file/package (GPG+SHA512)
$ plz init                 # New Python project template (Interactive)
$ plz stats                # PyPI official service status report
$ plz newpackages          # List all the new Packages uploaded to PyPI recently
$ plz lastupdates          # List all existing Packages updated on PyPI recently
$ plz lastjobs             # List all new Job Posts updated on Python recently
$ plz userpackages         # List all existing Packages by User (Interactive)
$ plz latestversion        # Show the Latest Version of a PYPI Package (SemVer)
$ plz forceInstallPip      # Force install PIP on arbitrary folder (get-pip.py)
$
$ plz --enUsUtf8           # Force Encoding to UTF-8 and Language to English
$ plz --nopyc              # Recursively remove all __pycache__ and *.pyc
$ plz --debug              # Show Debug info (for Developers and Bug Reporting)
$ plz --version            # Show Version
$ plz --help               # Show Help
  • For more info see the Help.

Install

  • Download it!.
  • ~1 MegaByte single-file standalone native binary executable, no install required, just copy it and run it.

Compile

Manually compiling is usually not needed, but if you want to do it
$ nimble install https://github.com/juancarlospaco/plz.git

Or even more manual:

$ git clone https://github.com/juancarlospaco/plz.git
$ cd plz
$ nim c plz/plz.nim

Uninstall

  • Delete it.

Dependencies

  • None
  • It does NOT depend on pip (Not a pip wrapper).

Platforms

  • Linux
  • Windows
  • Mac
  • Raspberry Pi
  • ARM
  • BSD
  • Anything that can compile C.

Features

  • 1 Megabyte, 1 file.
  • 0 Dependencies.
  • The only PIP alternative in the world that just works even with PIP/Python/Virtualenv completely broken.
  • Works fully independently self-contained standalone application.
  • Design by Contract, Contract Programming.
  • Security Hardened by default (based from Gentoo Hardened and Debian Hardened, checked with hardening-check).
  • Coded following the Power of 10: NASA Coding guidelines for safety-critical code (as much as possible).
  • No Regular Expressions used, No Regex Bugs and Vulnerabilities.
  • Compiled machine code performance, as fast as optimized hand crafted C.
  • Faster than Cython, Pypy, Go, NodeJS, D.
  • High performance with low resources (RPi, VPS, cloud, old pc, etc).
  • Immutable programming, No Global Mutable State.
  • Single file binary, it can even delete itself after use.
  • No Installs, no setups, just copy & paste and run (even on Alpine).
  • New Python project skeleton creator (supports GitHub, Pre-Commit, etc).
  • Self-Linting, Self-Documented.
  • Real Inferred Static Typed.
  • Colored output on the Terminal.
  • Project skeleton creator to create your own new Python projects.
  • Wont save any passwords, databases, keys, secrets, to disk nor Internet.
  • No temporary folders nor files.
  • Optimize Python native module binary (PIP Wont optimize binaries).
  • Not meant as a drop-in replacement for anything pre-existing.
  • 1 language for the whole stack, including high performance modules.
  • No Global Interpreter Lock.
  • No user Tracking Analytics by default.
  • No YAML used on the Core, No YAML Vulnerabilities (you can still use YAML).
  • Tiny single file source code.
  • No node_modules.
  • DRY code via Templates.

FAQ

  • This requires Cython ?.

No.

  • This requires DotNet Frameworks on Windows ?.

No.

  • This runs on Python2 ?.

I dunno. (Not supported)

  • This runs on 32Bit ?.

I dunno. (Not supported)

  • This works on Mac?.

Yes.

  • This works with SSL ?.

Yes.

  • This is a drop-in replacement of PIPEnv ?.

No.

  • This requires Nim ?.

No.

API Bugs

From XML-RPC API Server-side this endpoints wont work anymore (Not my Bug):

  • release_downloads, top_packages, updated_releases, changed_packages.
  • Sometimes it returns Python Tracebacks as strings on the body of the response.
  • Its a big project, some features are not yet implemented as App, but source contains the functionanity whatsoever.

Notes

Quote from PIPEnv Project:

pipenv release cadence came to a super dramatic halt because of a lot of upstream issues (pip broke, setuptools broke, then pip and setuptools both released breaking fixes, and we have about 15 dependencies which I personally maintain).