Fundamental elements for any Python project, like configuration handling. | |
---|---|
Project | |
QA | |
Release |
This library collects ‘miscellaneous’ functionality that is unspecific in nature and shared among many projects.
It also collects small extensions to other support packages that don't warrant their own project,
in the rudiments.reamed
package.
See “Other Packages” below for problem domains that are already covered by good to excellent solutions.
💬 | To get help or talk about this project, please use the python.rudiments@librelist.com mailing list. |
---|
Rudiments can be installed from PyPI via pip install rudiments
as usual,
see releases for an overview of available versions
– the project uses semantic versioning
and follows PEP 440 conventions.
To get a bleeding-edge version from source, use these commands:
repo="jhermann/rudiments"
pip install -r "https://raw.githubusercontent.com/$repo/master/requirements.txt"
pip install -UI -e "git+https://github.com/$repo.git#egg=${repo#*/}"
See Contributing on how to create a full development environment.
This is a list of packages that solve a certain problem domain and are (hopefully) best-of-breed.
Project | Description |
---|---|
Arrow | Better dates and times for Python – see also Pendulum, Delorean, and Maya |
boltons | A set of pure-Python utilities augmenting the stdlib |
Click | Command line interface framework |
colorama | Cross-platform colored terminal text |
github3.py | GitHub API v3 client |
netifaces | Portable network interface information |
pyparsing | A library of classes that allows to construct a grammar in pure Python code |
poyo | A pure-Python YAML parser |
Requests | Anything HTTP |
Reusables | Utilities that programmers may find themselves often recreating |
sh | Full-fledged subprocess interface, treat any program as if it were a function |
sorted_containers | Ordered collections (list, dict, set), pure Python and as fast as C |
Soupy | Soupy wraps a fluent query interface around BeautifulSoup. |
Specifically on the subject of configuration handling, these are the ones to consider…
Project | Description |
---|---|
configobj | Config file reading, writing and validation |
dectate | A powerful configuration engine for Python frameworks, based on decorators. |
dynaconf | OSM (Object Settings Mapper) reading from a set of different data stores such as Python settings files, environment variables, Redis, Memcached, INI files, JSON files, YAML files, or your custom extension |
configman | The grand unified configuration system from Mozilla |
prettyconf | Easy separation of configuration and code, following the recomendations for 12 Factor apps |
biome | Provides painless typed access to namespaced environment variables |
The following help you with writing your unit and integration tests.
Project | Description |
---|---|
pytest-localserver | py.test plugin to test server connections locally |
Responses | A utility for mocking out the Requests library |
To create a working directory for this project, call these commands:
git clone "https://github.com/jhermann/rudiments.git"
cd "rudiments"
. .env --yes --develop
invoke build --docs test check
Contributing to this project is easy, and reporting an issue or adding to the documentation also improves things for every user. You don’t need to be a developer to contribute. See CONTRIBUTING for more.
Tools
Packages
- Documentation hosted by Read the Docs.