Skip to content

Typed objects block model#216

Merged
denis-simo merged 29 commits intoSeequentEvo:mainfrom
BenLewis-Seequent:typed-objects-block-model
Feb 25, 2026
Merged

Typed objects block model#216
denis-simo merged 29 commits intoSeequentEvo:mainfrom
BenLewis-Seequent:typed-objects-block-model

Conversation

@denis-simo
Copy link
Contributor

@denis-simo denis-simo commented Feb 19, 2026

This PR brings block models under the same typed object envolope as recently added objects.

Key parts of this pull requets:

  • BLock models are now an OPTIONAL dependency for objects. We want to have a single point of entry and block models on evo are not just references from the perspective of the user - they are actual block models that the user expects to interact with. If the user does not install block models, they can interact with block model metadata handling the current dependency in a similar way to pandas and numpy. Evo-sdk user will get the whole package, sneaky developer who only cares about very thin set of changes - can get evo-objects with cut down dependencies.

  • Block model dependencies were adjusted so that by default it can be used just to parse metadata. Interaction with data is now an optional dependency, this way for basic services that don't care about interacting with evo-data and that user evo-objects there is no extra dependency added.

  • Block models support dataframe conversions, pretty printing via widgets, report creation, and automated mapping/creation from object_from_reference/path.

  • I have shared typed definitions in Common, without going as far as adding shared functionality that relies on numpy to avoid new depenency on common.

  • Block model in objects acts as a wrapper for a fully featured typed objects in evo-block models that can exist by itself.

  • I have not added any converters to and from block model and 3D grid... but it is not that hard as interfaces are similar though not identical and because the objects are different enough - we do not want to have more shared interfaces at this stage other than common base blocks.

  • OCTREE and FULLY SUBBLOCKED modes support was left out for now (via typed Objects) - PR is large already

This is a meaninful update, so I have bumped up the versions. If we want to release this, I can write up the changelong now as well, though there is one more PR to come after this for Kriging compute.

Checklist

  • I have read the contributing guide and the code of conduct

…ion and more convenient interactions as part of notebooks by novice python users (geologists). Updated some of the method names to match pandas/tables syntax.
# Conflicts:
#	packages/evo-widgets/docs/examples/displaying-typed-objects.ipynb
#	packages/evo-widgets/src/evo/widgets/formatters.py
…jects-variogram

# Conflicts:
#	code-samples/geoscience-objects/README.md
#	code-samples/geoscience-objects/simplified-object-interactions/simplified-object-interactions.ipynb
#	packages/evo-objects/docs/examples/typed-objects.ipynb
#	packages/evo-objects/src/evo/objects/typed/__init__.py
#	packages/evo-objects/src/evo/objects/typed/base.py
#	packages/evo-widgets/README.md
#	packages/evo-widgets/docs/examples/displaying-typed-objects.ipynb
#	packages/evo-widgets/pyproject.toml
#	packages/evo-widgets/src/evo/widgets/__init__.py
#	packages/evo-widgets/src/evo/widgets/formatters.py
#	packages/evo-widgets/src/evo/widgets/urls.py
#	packages/evo-widgets/tests/test_formatters.py
#	packages/evo-widgets/tests/test_urls.py
#	uv.lock
…ped-objects-block-model

# Conflicts:
#	code-samples/geoscience-objects/running-kriging-compute/running-kriging-compute.ipynb
…jects-block-model

# Conflicts:
#	code-samples/geoscience-objects/running-kriging-compute/running-kriging-compute.ipynb
#	packages/evo-widgets/src/evo/widgets/__init__.py
#	packages/evo-widgets/src/evo/widgets/formatters.py
#	packages/evo-widgets/tests/test_formatters.py
@denis-simo denis-simo requested review from a team as code owners February 19, 2026 23:47
@denis-simo denis-simo requested a review from a team as a code owner February 22, 2026 20:08
Copy link

@RyanMillerSeequent RyanMillerSeequent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have only looked at packages/evo-objects and everything LGTM there.

@denis-simo denis-simo merged commit f6f04be into SeequentEvo:main Feb 25, 2026
87 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants