Collection of utilities used in other python projects.
Project description
packg
Collection of utilities used in other python projects.
Features
caching
: Cache objects to disk (usingjoblib
) or to memoryconstclass.Const
: Base class for defining constants, as alternative toenum.Enum
debugging
: Connect to PyCharm debug serverdtime
: Wrappers and formatters fordatetime
and other timing utilitieslog
: Wrapper forloguru
, utilities for stdliblogging
iotools
: Index paths, compress and read files, git utilities, wrappers to load json/yamlmagic
: Wrapper aroundimportlib
maths
: Various small mathematical utilitiesmisc
:format_exception(e)
outputs the exception as it appears in the stacktrace.suppress_stdout_stderr
context manager to suppress all output of a block of code.
multiproc
: Multiprocessing utilitiespackaging
: Code to handle creation and running of python packagespaths
: Load paths from the global environment or .env files usingpython-dotenv
stats
: Simple statistics utilitiesstrings
: Base64, quote strings, create random strings, create hashes of objectssystem
: Wrapper forsubprocess.Popen
testing
: Import all modules from a package and other utilitiestqdmext
: Wrappertqdm_max_ncols
that limits the width of atqdm
progressbar by defaulttypext
: Type definitionsweb
: Download file and resume a partial download, disable web access
Install
Requires python>=3.7
pip install packg
Setup environment paths
# show environment
python -m packg.cli.show_env
# or
packg show_env
To override the defaults with your own values:
- Set the environment variables in your shell e.g. using .bashrc
- Create a file named
.env
in the root of your project as follows:
ENV_DATA_DIR=data
ENV_RESULT_DIR=results
ENV_ANNO_DIR=annotations
ENV_CODE_DIR=/home/${USER}/code
ENV_CACHE_DIR=/home/${USER}/.cache
Dev install
Clone repository and cd into, then:
pip install -e .
pip install pytest pytest-cov pylint
python -m pytest --cov
pylint packg
pylint tests
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
packg-0.18.5.tar.gz
(60.8 kB
view details)
Built Distribution
packg-0.18.5-py3-none-any.whl
(75.4 kB
view details)
File details
Details for the file packg-0.18.5.tar.gz
.
File metadata
- Download URL: packg-0.18.5.tar.gz
- Upload date:
- Size: 60.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bfa7ac23b5c354366bd1a2b1a0faa8ad52cb90defe67e1fa96138f605e68d4d5 |
|
MD5 | e749d32145cab5ae0910e15345bbdf4b |
|
BLAKE2b-256 | c3b39fc2c66140d4774ffdd26c5c6ebe261b6b7fac7339e433494e3375351114 |
File details
Details for the file packg-0.18.5-py3-none-any.whl
.
File metadata
- Download URL: packg-0.18.5-py3-none-any.whl
- Upload date:
- Size: 75.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f144924264f892cc2ed9c56ea8c3b4ca56a3a0f98ba174752a803c1cb82f3e4 |
|
MD5 | 6e05cd3d58ebc4a5f75644c1660fa612 |
|
BLAKE2b-256 | 65afc7dc9460b968a6e2db2ca88b377a4d8880f580b85f0fd8225f07c2330a7b |