rook.fixes.providers package

Dataset fix provider registry.

rook.fixes.providers.get_dataset_fix_provider(name=None)[source]

Return a configured dataset fix provider.

Submodules

rook.fixes.providers.base module

Base classes for dataset fix providers.

rook.fixes.providers.base.DatasetFixProvider

alias of FixProvider

class rook.fixes.providers.base.FixContext(dataset_id: str | None = None, operation: str | None = None, phase: str | None = None, output_dir: str | None = None, recipe_id: str | None = None)[source]

Bases: object

Rook-side context passed to a fix provider.

dataset_id: str | None = None
operation: str | None = None
output_dir: str | None = None
phase: str | None = None
recipe_id: str | None = None
class rook.fixes.providers.base.FixProvider[source]

Bases: ABC

Base class for dataset fix providers.

abstractmethod apply(ds, *, context=None)[source]

Apply fixes and return the dataset.

available()[source]

Return whether the provider dependencies are importable.

dependency_names = ()
finalise(ds, *, context=None)[source]

Finalise a dataset after the main fix step.

missing_dependencies()[source]

Return provider dependencies that are not importable.

name = 'base'
prepare(ds, *, context=None)[source]

Prepare a dataset before the main fix step.

require_available()[source]

Raise a clear error when provider dependencies are missing.

unavailable_message = 'The selected fix provider has missing dependencies.'

rook.fixes.providers.legacy module

Legacy Rook dataset fix provider.

class rook.fixes.providers.legacy.LegacyDatasetFixProvider[source]

Bases: FixProvider

Rook’s legacy dataset fix provider.

apply(ds, *, context=None)[source]

Apply fixes and return the dataset.

name = 'legacy'
prepare(ds, *, context=None)[source]

Prepare a dataset before the main fix step.

rook.fixes.providers.woodpecker module

Woodpecker-backed dataset fix provider.

class rook.fixes.providers.woodpecker.WoodpeckerDatasetFixProvider[source]

Bases: FixProvider

Woodpecker-backed dataset fix provider.

apply(ds, *, context=None)[source]

Apply fixes and return the dataset.

dependency_names = ('woodpecker', 'woodpecker_atlas_plugin', 'woodpecker_cmip6_decadal_plugin')
name = 'woodpecker'
prepare(ds, *, context=None)[source]

Prepare a dataset before the main fix step.

unavailable_message = 'Woodpecker is required to apply fixes with the woodpecker backend. Install woodpecker, the woodpecker-atlas plugin, and the woodpecker-cmip6-decadal plugin, or use the legacy backend.'
property woodpecker

Return the Woodpecker module after checking provider dependencies.