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.33.0.tar.gz (779.4 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.33.0-py3-none-any.whl (61.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fmu_settings-0.33.0.tar.gz
  • Upload date:
  • Size: 779.4 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.33.0.tar.gz
Algorithm Hash digest
SHA256 5b62bb2c57f01183ddcf49ff45fc682864d4d0cbfb8110d5bb05b494af22851f
MD5 5076c8e5b4e1b61c7e0a80f7ba5520fe
BLAKE2b-256 2daeb7e86f87d43341425a0a264668eb40341fc78cd3a9f5b288793abc6a9d2d

See more details on using hashes here.

Provenance

The following attestation bundles were made for fmu_settings-0.33.0.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.33.0-py3-none-any.whl.

File metadata

  • Download URL: fmu_settings-0.33.0-py3-none-any.whl
  • Upload date:
  • Size: 61.3 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.33.0-py3-none-any.whl
Algorithm Hash digest
SHA256 489e79c9eceb00c35d2a69940556e4e7bfaacac4b8cd36a8b50abd3804dd949c
MD5 9eea47e471a95931255528c81faf37ee
BLAKE2b-256 df57e0233760fac9d60c7a99fcccc81330b88ee327128642383568e0f4992e99

See more details on using hashes here.

Provenance

The following attestation bundles were made for fmu_settings-0.33.0-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