A simple, easy to use, unified manner of accessing program properties.
Project description
Library Package: application_properties
| Project | |
| Quality | |
| Community | |
| Maintainers |
Jumping Off Points
- I want a high-level overview.
Stay on this page to learn whatapplication_propertiesis, why you might use it, what it can do, and whether it fits your projects. - I've decided to use
application_propertiesand want to start quickly.
Follow our Quick Start guides to learn the core concepts and start incorporating configuration into your Python projects with easy-to-follow examples. - I've finished the Quick Starts or want deeper details.
Read the full documentation for TBD.
What Is application_properties?
The application_properties package was born out of necessity. During the creation
of the PyMarkdown project,
there was a distinct need for a configuration subsystem that was able to handle more
complex configuration scenarios, such as only exposing relevant configuration to
the Rule Plugins that are a key part of PyMarkdown's rule system.
The application_properties package is for Pythond developers who want to add
solidly-tested plug-and-play configuration retrieval to their projects with a
minimum of fuss and management. The package has the following advantages:
- Thoroughly tested
- The project currently has over 280 tests and coverage percentages over 99%.
- Simple... With Examples
- The package was created with the intention of being as easy to use as possbile.
- Complex When Required
- The default is simplicity, but the package can step up when required to do so.
- Any actions outside of the simple scenario of getting an optional string value should be relatively easy to request of the package API.
- Hierarchically Aware
- By default, uses the
.character in the property names to define levels of hierarchy. - Hierarchy levels can be used to find only those properties that exist under a given hierarchy.
- If desired for use cases that involve shared configuration, such as with PyMarkdown's Rule Plugins, the
ApplicationPropertiesFacadeobject can be used to restrict access to only those properties that exist under a given hierarchy.
- By default, uses the
- Command Line Aware
- The
set_manual_propertyfunction provides for one or more individual properties to be supplied by the command line.
- The
- Extensible
- The loading of the properties is separate from access to the values for those properties.
- Due to the separation of the loading and accessing parts of the library, custom loading
classes can be added with ease.
- Current loading classes include configuration file loaders for JSON files, YAML files, and TOML files.
Requirements
This project requires Python 3.10 or later to function.
Getting Started
If you are still with us at this point, you probably want to try this package out
for yourself and see if we can live up to our claims in the previous section. To
faciliate this, we have prepared Quick Start guides
that walk your through the most common use cases for the application_properties package.
When you finish trying out the Quick Start guides for yourself, consider walking through
one of more sections of our full documentation
to get more information on how application_properties can help you with your
Python configuration needs.
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 application_properties-0.9.3.tar.gz.
File metadata
- Download URL: application_properties-0.9.3.tar.gz
- Upload date:
- Size: 43.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7dc7d8f23d11e539427e7b8e3afa70353e159c16f703bad6dd082cc6cdfeeaa8
|
|
| MD5 |
6e44d2d40a79189de1a01a2f352c5dc7
|
|
| BLAKE2b-256 |
c0bb321da0e373416080801d05b8dd9c0a8da77fe305c697adf8c025470ce170
|
File details
Details for the file application_properties-0.9.3-py3-none-any.whl.
File metadata
- Download URL: application_properties-0.9.3-py3-none-any.whl
- Upload date:
- Size: 24.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32dbd62b3fb657ec1c7fdc352590463c2ffd14950ffd258a5c091e8798d8aec0
|
|
| MD5 |
248726a45f8dab0563b5cc5b5b803250
|
|
| BLAKE2b-256 |
95723ac1bda73e9c95444b1e13a0de73e847048a776e5ac5b3977c37f04167f9
|