Skip to main content

A simple, easy to use, unified manner of accessing program properties.

Project description

Library Package: application_properties

Project Version Python Versions platforms License GitHub top language
Quality GitHub Workflow Status (event) Issues codecov Sourcery Dynamic JSON Badge
Dynamic JSON Badge Dynamic JSON Badge Dynamic JSON Badge Dynamic JSON Badge Dynamic JSON Badge Dynamic JSON Badge Dynamic JSON Badge
Community Maintenance Stars Forks Contributors Downloads
Maintainers LinkedIn

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.

The application_properties library has the following advantages:

  • Thoroughly tested
    • The project currently has over 65 tests and coverage percentages over 99%.
  • Simple... With Examples
    • The package was created with the intention of being as easy to use as possbile.
    • To that extent, there are 4 basic usage examples and over 10 advanced usage examples.
  • 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, the ApplicationPropertiesFacade object can be used to restrict access to only those properties that exist under a given hierarchy.
  • Command Line Aware
    • The set_manual_property function allows for one or more individual properties to be supplied by the command line.
  • 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 loaders for Json files, with Simple Property files right around the corner

Requirements

This project requires Python 3.10 or later to function.

How To Use This Package

Our documentation for this project is hosted on ReadTheDocs.

This documentation includes:

  • Index
    • Similar to this page, just nicer formatting!
  • Getting Started
    • Explanation of the terms and concepts that we believe will help you understand the rest of the documents.
  • Configuration Files
    • Information about the configuration file types that we support.
  • Command Line
    • How to interact with application_properties from the command line.
  • User Guide
    • Walk-through of executable examples to help you get up to speed quicker.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

application_properties-0.9.2.tar.gz (40.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

application_properties-0.9.2-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file application_properties-0.9.2.tar.gz.

File metadata

  • Download URL: application_properties-0.9.2.tar.gz
  • Upload date:
  • Size: 40.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for application_properties-0.9.2.tar.gz
Algorithm Hash digest
SHA256 d8e7858bbf72c9d834117d74f561efb65d31e5193f1a5e803d6adc2d556c8465
MD5 b64efb93b64071283dd9d5cefb40c845
BLAKE2b-256 2c638a0491538205ec5af39addd80263c764fa57a044cadcbcf981092a1e8b57

See more details on using hashes here.

File details

Details for the file application_properties-0.9.2-py3-none-any.whl.

File metadata

File hashes

Hashes for application_properties-0.9.2-py3-none-any.whl
Algorithm Hash digest
SHA256 503388017a8d12436ba0914c8d24820adf658f765f9ac7dc9dc77a4733115238
MD5 55fa9f0550d768d89d4eb44a772398d3
BLAKE2b-256 d2a5b79d86c972e8dd888fd8e4b2ea4c277791f455b86f25c458c2917bf9cff9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page