A modern environment/dependency manager for Python.
Project description
epl (pronounced ‘epple’) provides enhanced package logistics
epl strives to be a new type of manager for virtual environments and packages. It will also attempt to incorporate several recent additions to the Python Standard Library in order to take advantage of all the wonder that is Python 3.
Background
When I first started developing with Python, the latest version was 3.4, which is what I used. I’ve never had any reason to to go back and learn much about Python2. Over the years now, my Python skills have (I hope) improved, as has the Python language itself.
One of the most difficult things I’ve had to master as a Python developer is dealing with Packaging and Dependency Management. In addition, although I’ve been a big fan of virtualenv and virtualenvwrapper, as of Python 3.3, the Standard Library includes its own venv module and I would like to explore the possibilities with that.
epl is an exploration for me at this point. If things go really, really well, it could be the next big thing 😜. On the other hand, it could die a horrible death next month, as I throw up my hands and run screaming for the exits…🤯
Objectives
epl is inspired by pip and Pipenv but yearns to be somehthing a little bit more - and also a little bit less.
No backwwards compatibility with Python 2
Avoid as many external dependencies as possible
Explore the possibility of a ‘core’ install capability that can be used to bootstrap the initial install of epl
Subclass the venv.EnvBuilder class in the Standard Library to implement virtual environments
Implement TDD and BDD right from the start
Implement type hints, using the new typing module, introduced in Python 3.5
Implement Pipfile and Pipfile.lock, rather than requirements.txt. See the Pipfile project on GitHub
Implement checks of signed code using GPG
Provide the ability to completely package and deploy the recursive set of dependencies in addition to the target package, for installation of packages when there is no network availability
Specify Build System dependencies using pyproject.toml, as described in PEP 518
Installing
Install and update using pip:
pip install -U epl
Links
Website:
Documentation:
Releases: https://pypi.org/project/epl/
Code:
Issue tracker:
Test status:
Test coverage:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file epl-0.0.2.tar.gz
.
File metadata
- Download URL: epl-0.0.2.tar.gz
- Upload date:
- Size: 23.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c0a074dde2bfa0d0b6633522849022cf9dab19297509af151c84f639fb575279 |
|
MD5 | c8a803f3227ce31cd20b13a06a5d4cbd |
|
BLAKE2b-256 | 8f4283b01ea777bbe18d82216799c2c01dc7ea4d031844d0185bf2b053557162 |
File details
Details for the file epl-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: epl-0.0.2-py3-none-any.whl
- Upload date:
- Size: 20.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f2bf36b30d15f29b6cc0a34ed77026e451747314d2747df281e4d2790dd4602 |
|
MD5 | 504a1ef6a9d0c12b417a5c2635fe41cf |
|
BLAKE2b-256 | d1ade700400c8327c372c21fa1a2f818669dbb13768ca1ddd61cc78e4716d96e |