Skip to main content

A library for managing FMU settings

Project description

fmu-settings

ci docs

Documentation: https://equinor.github.io/fmu-settings/

Source code: https://github.com/equinor/fmu-settings/

fmu-settings is the Python core library for reading, writing, and managing resources in .fmu/ directories for FMU projects and user environments.

It owns the filesystem behavior around those resources: initialization, discovery, configuration models, resource managers, locking, cache handling, changelogs, restore behavior, and synchronization helpers.

FMU Settings Architecture

FMU Settings is split across a few repositories:

flowchart LR
    CLI["fmu-settings-cli"]
    API["fmu-settings-api"]
    GUI["fmu-settings-gui"]
    LIB["fmu-settings"]
    MODELS["fmu-datamodels"]

    CLI --> API
    CLI --> GUI
    CLI --> LIB
    GUI --> API
    API --> LIB
    LIB --> MODELS
    API --> MODELS
  • fmu-settings is the core library for reading, writing, and managing .fmu/ resources.
  • fmu-datamodels provides shared Pydantic domain models.
  • fmu-settings-api exposes fmu-settings through a FastAPI application layer.
  • fmu-settings-gui provides the browser-based user interface.
  • fmu-settings-cli provides the user-facing command line interface, including commands that bootstrap local user state and launch the API and GUI.

See ARCHITECTURE.md for the library architecture and a high-level ecosystem overview.

Documentation

The published documentation is the best starting point for users:

Documentation sources live under docs/src/.

Developing

Clone and install into a virtual environment.

git clone git@github.com:equinor/fmu-settings.git
cd fmu-settings
# Create or source virtual/Komodo env
pip install -U pip
pip install -e ".[dev]"
# Make a feature branch for your changes
git checkout -b some-feature-branch

Run the tests with:

pytest -n auto tests

Ensure your changes will pass the various linters before making a pull request. It is expected that all code will be typed and validated with mypy.

ruff check
ruff format --check
mypy src tests

See CONTRIBUTING.md for more.

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

fmu_settings-0.32.1.tar.gz (777.8 kB view details)

Uploaded Source

Built Distribution

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

fmu_settings-0.32.1-py3-none-any.whl (61.1 kB view details)

Uploaded Python 3

File details

Details for the file fmu_settings-0.32.1.tar.gz.

File metadata

  • Download URL: fmu_settings-0.32.1.tar.gz
  • Upload date:
  • Size: 777.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fmu_settings-0.32.1.tar.gz
Algorithm Hash digest
SHA256 0c052eed3ba2391ec37085993fea48a3ca1b67250e841ae64a4b26a24d398614
MD5 4f9f6e176477ff51c7b62a616b345576
BLAKE2b-256 9d84db33f98a4708ad3bd4598234bd22513a3cabb9f4a49af7b9bf19b7dddf57

See more details on using hashes here.

Provenance

The following attestation bundles were made for fmu_settings-0.32.1.tar.gz:

Publisher: publish.yml on equinor/fmu-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fmu_settings-0.32.1-py3-none-any.whl.

File metadata

  • Download URL: fmu_settings-0.32.1-py3-none-any.whl
  • Upload date:
  • Size: 61.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fmu_settings-0.32.1-py3-none-any.whl
Algorithm Hash digest
SHA256 60dc8955b5ef1a3a5708f1d693879dcfe23a686b818ce9507135f443c3458501
MD5 8411686d79429f4d36f69ddd20714fde
BLAKE2b-256 45d5337712b17a0726e1fb24b40fec3b908dce4c4fa670d2fa1fdf342cc2aa45

See more details on using hashes here.

Provenance

The following attestation bundles were made for fmu_settings-0.32.1-py3-none-any.whl:

Publisher: publish.yml on equinor/fmu-settings

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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