Registry /
testing / great-expectations-experimental
Install & Compatibility
Where this runs
tested against v0.1.20240917055 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.910 runs
installs and imports cleanly · install 0.0s · import 10.454s · 374.2MB
glibcpy 3.10–3.910 runs
installs and imports cleanly · install 18.1s · import 9.618s · 360MB
375MB installed
● package 375MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
great_expectations
✓ import great_expectations as gx
DataContext
✓ from great_expectations.data_context import DataContext
✗ from great_expectations_experimental.data_context import DataContext
The experimental package exposes its modules under the main 'great_expectations' namespace.
This quickstart demonstrates how to set up an ephemeral Great Expectations DataContext using the `great-expectations-experimental` package, define a Pandas DataFrame as a data asset, and then apply and validate a couple of basic expectations. An ephemeral context is ideal for testing with this experimental package as it doesn't create persistent files.
import great_expectations as gx
import pandas as pd
import os
# Create a sample DataFrame
df = pd.DataFrame({
"col1": [1, 2, 3, 4, 5],
"col2": ["A", "B", "C", "D", "E"]
})
# Initialize an ephemeral DataContext
# This creates a temporary context in memory without modifying the filesystem.
context = gx.get_context(cloud_mode=False)
# Add an In-Memory Data Asset
# The name 'my_experimental_dataframe' is used to refer to this data within GX.
my_asset = context.add_pandas_dataframe_asset(
dataframe=df, name="my_experimental_dataframe"
)
# Build a batch request for validation
batch_request = my_asset.build_batch_request()
# Get a Validator for the specified batch
validator = context.get_validator(batch_request=batch_request)
# Add an expectation: expect values in 'col1' to be between 1 and 5 (inclusive)
validator.expect_column_values_to_be_between(column="col1", min_value=1, max_value=5)
# Add another expectation: expect 'col2' to contain distinct values from a set
validator.expect_column_distinct_values_to_contain_set(column="col2", value_set=["A", "C", "E"])
# Validate the data against the defined expectations
results = validator.validate()
print("\nValidation Results:")
print(f"Overall Validation Success: {results.success}")
# You can inspect individual expectation results
for result in results.results:
print(f" Expectation: {result.expectation_config.expectation_type}, Success: {result.success}")
great_expectations --version
Debug
Known issues
breakingAPIs and internal implementations within `great-expectations-experimental` can change daily without notice. It is built directly from the `great_expectations` main branch.fixAvoid using this package for stable development or production environments. Always pin specific versions if testing and be prepared for frequent breaking changes.
affects: All versions (0.1.YYYYMMDDHHMMSS)
gotchaThis package is explicitly for development and testing new features; it is not intended for production use. It may contain incomplete features, unannounced bugs, or performance issues.fixFor production or stable development, use the main `great_expectations` package (`pip install great-expectations`) which follows semantic versioning and has stable releases.
affects: All versions (0.1.YYYYMMDDHHMMSS)
gotchaVersion numbers are date-based (e.g., `0.1.20240917055`) and do not follow standard semantic versioning (MAJOR.MINOR.PATCH). This means that a 'newer' version number might not directly imply compatibility with an older one.fixWhen testing, always use explicit version pinning (`pip install great-expectations-experimental==0.1.20240917055`) rather than relying on `pip install --upgrade` or flexible version specifiers.
affects: All versions (0.1.YYYYMMDDHHMMSS)
gotchaWhile the package name is `great-expectations-experimental`, its Python modules are exposed under the `great_expectations` namespace (e.g., `import great_expectations as gx`). This can be confusing for new users.fixAlways use `import great_expectations as gx` or `from great_expectations.<module> import <Symbol>` even when installing the experimental package.
affects: All versions
Upgrade
Version history
0.1.20240917055latest on PyPI · released Sep 17, 2024
Audit
Dependencies
No dependency data recorded yet.