e-volv-openfeature
OpenFeature provider for e-volv Launch flags, on top of the e-volv-logs Python SDK.
Evaluation underneath stays synchronous and never raises (the e-volv Launch SDK contract); only initialize waits — and only because OpenFeature's provider handshake asked it to.
Usage
from openfeature import api
from openfeature.evaluation_context import EvaluationContext
from evolve_logs import LogsClient, FlagsOptions
from evolve_openfeature import EvolveProvider
logs = LogsClient(
key="evk_…", url="https://api.e-volv.io/api/public/v1/logs", flags=FlagsOptions()
)
api.set_provider(EvolveProvider(logs.flags))
client = api.get_client()
details = client.get_boolean_details(
"checkout.new",
False,
EvaluationContext(targeting_key="u_1", attributes={"plan": "pro"}),
)
details.value, details.variant, details.flag_metadata["evolveReason"]
Reason and error mapping
| e-volv reason | OpenFeature reason |
error_code |
|---|---|---|
RULE:*, TARGET_MATCH |
TARGETING_MATCH |
— |
ROLLOUT |
SPLIT |
— |
OFF, KILLED |
DISABLED |
— |
FLAG_NOT_FOUND |
ERROR |
FLAG_NOT_FOUND |
TYPE_MISMATCH |
ERROR |
TYPE_MISMATCH |
ERROR |
ERROR |
GENERAL |
| anything else | DEFAULT |
— |
The native e-volv reason is always preserved as flag_metadata["evolveReason"].
Metadata
Release files for e-volv-openfeature 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| e_volv_openfeature-0.1.0.tar.gz | 15.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| e_volv_openfeature-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.2 kB
Release files / e_volv_openfeature-0.1.0.tar.gz
| Download URL | e_volv_openfeature-0.1.0.tar.gz |
|---|---|
| Size | 15.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9fcb23642270d0a77be5a20354673ed7d8d0268e4dfe7dc2c51fc98f00bef177
|
|
BLAKE2b-256 checksum How to use checksums |
e8256ab3dae382f46d2f298b1f08b3bdcd6d00d7a577eab7a64fe7269fa20a89
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / e_volv_openfeature-0.1.0-py3-none-any.whl
| Download URL | e_volv_openfeature-0.1.0-py3-none-any.whl |
|---|---|
| Size | 3.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7ebd17e003369e00671477b3c2dea7ea98e7af7379f9798ea3993249595cd645
|
|
BLAKE2b-256 checksum How to use checksums |
07fe665b1689567f39815441e753189cd1b48ac7b8a8301921f19c799f2dbb28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|