Skip to main content

The Modular Autonomous Discovery for Science (MADSci) Common Definitions and Utilities.

Project description

MADSci Common

Common types, validators, serializers, utilities, and other flotsam and jetsam used across the MADSci toolkit.

Installation

The MADSci common components are available via the Python Package Index, and can be installed via:

pip install madsci.common

This python package is also included as part of the madsci Docker image.

MADSci Types

The MADSci toolkit uses a variety of "types", implemented as Pydantic Data Models. These data models allow us to easily create, validate, serialize, and de-serialize data structures used throughout the distributed systems. They can easily be serialized to JSON when being sent between system components over REST or stored in JSON-friendly databases like MongoDB or Redis, or to YAML for human-readable and editable definition files.

You can import these types from madsci.common.types, where they are organized by subsystem.

Settings

MADSci uses Pydantic Settings to configure many of it's subsystems. This allows users to configure managers, clients, nodes, and other MADSci components using command line arguments, environment variables, settings files in various formats (.env, .toml, .yaml, .json), and secrets files.

Settings Precedence

Detailed documentation for what configuration can be set is included in the Configuration.md, and an example .env is included in the root of the MADSci repository.

In general, each subsystem supports configuration via both a generic file (.env, settings.yaml, etc), and a subsystem-specific file (event_client.env, event_client.yaml, etc). In such cases, the subsystem specific version takes precedence over the generic version.

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

madsci_common-0.4.1.tar.gz (40.7 kB view details)

Uploaded Source

Built Distribution

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

madsci_common-0.4.1-py3-none-any.whl (54.2 kB view details)

Uploaded Python 3

File details

Details for the file madsci_common-0.4.1.tar.gz.

File metadata

  • Download URL: madsci_common-0.4.1.tar.gz
  • Upload date:
  • Size: 40.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.25.2 CPython/3.9.22 Linux/6.11.0-1015-azure

File hashes

Hashes for madsci_common-0.4.1.tar.gz
Algorithm Hash digest
SHA256 2022dfd13ccd96a4d678dd818cf0b25b0e67906eece93d15b046b74072f5ae5f
MD5 362e453005e7d841606f11bcc811c9a7
BLAKE2b-256 b60866de273500dc94473111e763ddcf7bd5385c549a5a4a424c52f5adb3fe1c

See more details on using hashes here.

File details

Details for the file madsci_common-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: madsci_common-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 54.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.25.2 CPython/3.9.22 Linux/6.11.0-1015-azure

File hashes

Hashes for madsci_common-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3017ca07b868af461407daaf4fdff38f726f4b8c5a68bf957172b27a8b46904f
MD5 878d51b79797f758aff59e52449b60f9
BLAKE2b-256 abc2794a074a7ac5129c6ace315d820d2f785c2edde9bdc828f3609fbede5cb5

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