From 5e16b15d843b669da284973b02aa641c12b02b26 Mon Sep 17 00:00:00 2001 From: Matthew Keeler Date: Tue, 28 Oct 2025 15:01:34 -0400 Subject: [PATCH 1/2] fix: Re-export underlying launchdarkly config type fixes #32 --- README.md | 3 +-- ld_openfeature/__init__.py | 2 ++ tests/test_provider.py | 8 ++++---- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 44fc74f..e511c13 100644 --- a/README.md +++ b/README.md @@ -39,8 +39,7 @@ $ pip install launchdarkly-openfeature-server ### Usage ```python -from ldclient import Config -from ld_openfeature import LaunchDarklyProvider +from ld_openfeature import LaunchDarklyProvider, Config from openfeature import api openfeature_provider = LaunchDarklyProvider(Config("sdk-key")) diff --git a/ld_openfeature/__init__.py b/ld_openfeature/__init__.py index d686d98..c5dd765 100644 --- a/ld_openfeature/__init__.py +++ b/ld_openfeature/__init__.py @@ -1,5 +1,7 @@ +from ldclient.config import Config from ld_openfeature.provider import LaunchDarklyProvider __all__ = [ + 'Config', 'LaunchDarklyProvider' ] diff --git a/tests/test_provider.py b/tests/test_provider.py index d4fd3e5..f2e2c15 100644 --- a/tests/test_provider.py +++ b/tests/test_provider.py @@ -3,7 +3,7 @@ from unittest.mock import patch import pytest -from ldclient import Config, LDClient +from ldclient import LDClient from ldclient.evaluation import EvaluationDetail from ldclient.integrations.test_data import TestData from openfeature.evaluation_context import EvaluationContext @@ -12,7 +12,7 @@ from openfeature.flag_evaluation import Reason from openfeature import api -from ld_openfeature import LaunchDarklyProvider +from ld_openfeature import LaunchDarklyProvider, Config from tests.test_data_sources import FailingDataSource, StaleDataSource, UpdatingDataSource, DelayedFailingDataSource @@ -115,7 +115,7 @@ def test_invalid_types_generate_type_mismatch_results(provider: LaunchDarklyProv pytest.param(['default-value'], True, ['default-value'], list, 'resolve_object_details'), pytest.param(['default-value'], 1, ['default-value'], list, 'resolve_object_details'), pytest.param(['default-value'], 'return-string', ['default-value'], list, 'resolve_object_details'), - + pytest.param({'key': 'default'}, {'key': 'return'}, {'key': 'return'}, dict, 'resolve_object_details'), pytest.param({'key': 'default'}, True, {'key': 'default'}, dict, 'resolve_object_details'), pytest.param({'key': 'default'}, 1, {'key': 'default'}, dict, 'resolve_object_details'), @@ -137,7 +137,7 @@ def test_check_method_and_result_match_type( method = getattr(provider, method_name) resolution_details = method("check-method-flag", default_value, evaluation_context) - + assert resolution_details.value == expected_value #assert isinstance(resolution_details.value, expected_type) From 4613a0b9e95563b49cb79e04db06211e692fed6a Mon Sep 17 00:00:00 2001 From: Matthew Keeler Date: Wed, 29 Oct 2025 13:50:10 -0400 Subject: [PATCH 2/2] Disable fail-fast --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f39d459..3ae383f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,6 +15,7 @@ jobs: runs-on: ubuntu-latest strategy: + fail-fast: false matrix: python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] @@ -45,6 +46,7 @@ jobs: shell: powershell strategy: + fail-fast: false matrix: python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]