Simple Console Application with Logging, Yaml Configuration and Argparse
Project description
This package aims to provide a simple common framework for console jobs in Python. There is nothing really new about the whole approach and everything can be done using existing tools and packages. SCALYCA just wraps it all together into a reusable class that should be easy to extend for use in batch jobs or simple pipeline stages.
It is supposed to be very lightweight and easily integrable. More complex tasks are probably better suited for custom solutions using the same modules. The programs are not supposed to be interactive, everything has to be initialized either from the command line or, in case of SCALYCA, also from a selectable configuration file.
SCALA -- Simple Console Application with Logging and Argparse
The main class is called Scala. It has two main components:
- Logging, primarily to
stdoutduring the execution of the program. This is implemented with theloggingmodule, using just a single logger. - Parsing and processing command line arguments, that configure the initial state of the application
and tell it what and where should exactly be done. The tool for the job is
argparse.
SCALYCA -- Simple Console Application with Logging, YAML Configuration and Argparse
Scalyca is a subclass of Scala that adds persistent configuration
to the program, which is read from a YAML file during the initialization process,
then stored as a static DotMap from module dotmap.
This is similar to a Python dictionary except that it allows for dot access, which is much more legible.
All of the properties can be overridden from the command line.
The resulting object is accessible through the config variable of the class.
Usage
Just extend the Scala class:
- Static attribute
app_namesets the name of the application that will be displayed byargparse. - Static attribute
descriptionsets the long description forargparse. - In
add_argumentsyou are supposed to add all arguments to the built-inArgumentParser.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file scalyca-0.2.4.tar.gz.
File metadata
- Download URL: scalyca-0.2.4.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.2 Linux/6.1.0-26-amd64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c009f995d69713ce4e31b62537d2cd27aac1bf9e6e38c4a5330b3ed1c5759c8c
|
|
| MD5 |
e81058f6d2924bb3d6aa78879981444e
|
|
| BLAKE2b-256 |
aaf351cd05a59d58c534a0f52bb9ae07696d847230a088485d4f996db46afcc0
|
File details
Details for the file scalyca-0.2.4-py3-none-any.whl.
File metadata
- Download URL: scalyca-0.2.4-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.2 Linux/6.1.0-26-amd64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d63fb19dbf500bffbf6576a0c3cc1bdf32069e60ecab463f421977f0a9a22b4
|
|
| MD5 |
9da4dda17ff242005bd216b781550473
|
|
| BLAKE2b-256 |
0382d0884d8704880fe1c85760fdb504a70a0b4c42c57f25dc3441e87802a3e0
|