Commit Graph

436 Commits

Author SHA1 Message Date
renovate[bot] fe63b64d8f
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.5.3 (#350)
* chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.5.3

* fix linting

Signed-off-by: gruebel <anton.gruebel@gmail.com>

---------

Signed-off-by: gruebel <anton.gruebel@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: gruebel <anton.gruebel@gmail.com>
2024-07-20 14:42:21 +02:00
renovate[bot] 931e0cb3a8
chore(deps): update pre-commit hook pre-commit/mirrors-mypy to v1.11.0 (#351)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-20 13:01:32 +02:00
renovate[bot] 299a4f4630
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.5.2 (#349)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-14 20:03:38 +02:00
renovate[bot] 5dff1e89b2
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.5.1 (#348)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-05 15:07:35 +00:00
Michael Beemer 0ed625f186
fix: remove exception logging during evaluation (#347)
Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com>
2024-07-02 11:37:39 -04:00
renovate[bot] 5c7bd14b41
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.5.0 (#346)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-27 18:03:14 +00:00
renovate[bot] b553dfa607
chore(deps): update pre-commit hook pre-commit/mirrors-mypy to v1.10.1 (#345)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-25 11:53:16 +02:00
renovate[bot] 2a45af895c
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.10 (#344)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-20 21:12:12 +02:00
renovate[bot] f3982dc8c6
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.9 (#342)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-14 17:54:00 +02:00
renovate[bot] e6a353e475
chore(deps): update codecov/codecov-action action to v4.5.0 (#341)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-13 12:27:56 +00:00
Anton Grübel 5abcf3b157
fix: make global hooks thread safe (#331)
Signed-off-by: gruebel <anton.gruebel@gmail.com>
2024-06-07 10:53:51 -04:00
Anton Grübel f2389da024
ci: update release please to new GHA (#340)
update release please to new GHA

Signed-off-by: gruebel <anton.gruebel@gmail.com>
2024-06-07 00:22:49 +02:00
renovate[bot] 44b07879b0
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.8 (#339)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-05 18:39:37 +00:00
renovate[bot] 1bf4682b46
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.7 (#338)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-01 03:18:19 +00:00
renovate[bot] cf61e5b682
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.6 (#337)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-29 01:00:56 +00:00
renovate[bot] 2f93524063
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.5 (#336)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-23 07:22:34 +02:00
renovate[bot] fa677092f8
chore(deps): update codecov/codecov-action action to v4.4.1 (#335)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-20 22:51:58 +02:00
renovate[bot] 6acbef94e6
chore(deps): update codecov/codecov-action action to v4.4.0 (#334)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-15 00:13:57 +00:00
renovate[bot] bd0bc1e2b7
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.4 (#333)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-09 21:58:13 +02:00
renovate[bot] f8544ffaf6
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.3 (#330)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-04 10:47:16 +10:00
Federico Bond 3217575f4f
fix: event handler methods are not thread-safe (#329)
The _client_handlers dictionary allowed modifications during iteration
without proper concurrency control. I added some reentrant locks to manage
concurrent access to the _global_handlers and _client_handlers data
structures.

See #326

Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-05-03 00:42:43 +10:00
Federico Bond c3ad697a80
refactor: bind providers explicitly to a registry with attach/detach (#324)
* test: make sure provider is registered in events test

Signed-off-by: Federico Bond <federicobond@gmail.com>

* refactor: bind providers explicitly to a registry with attach/detach

Signed-off-by: Federico Bond <federicobond@gmail.com>

---------

Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-05-02 09:13:30 +10:00
renovate[bot] f352045055
chore(deps): update codecov/codecov-action action to v4.3.1 (#327)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-01 11:43:21 -04:00
github-actions[bot] 3b967a9a3e
chore(main): release 0.7.0 (#308)
chore(main): release 0.7.0

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-30 11:08:50 +10:00
renovate[bot] f109df671c
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.2 (#323)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-25 23:17:11 +02:00
renovate[bot] 6dedd275cf
chore(deps): update pre-commit hook pre-commit/mirrors-mypy to v1.10.0 (#322)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-25 20:27:33 +10:00
renovate[bot] 44f12239ff
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.1 (#321)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-19 21:27:05 +02:00
renovate[bot] abb14f5ed9
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.4.0 (#320)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-19 00:15:20 +00:00
renovate[bot] 563662054c
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.7 (#318)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-12 15:42:09 +10:00
Federico Bond 96ba7938de
refactor!: move AbstractProvider to openfeature.provider (#314)
Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-04-12 11:19:21 +10:00
Federico Bond cd605c4f5d
chore: update codecov/codecov-action action to v4 (#317)
Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-04-12 09:53:57 +09:00
renovate[bot] 49f0948e51
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.6 (#316)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-11 21:45:00 +00:00
Federico Bond 34ac91c707
fix!: restrict exported names with __all__ (#306)
* fix!: restrict exported names with __all__

Signed-off-by: Federico Bond <federicobond@gmail.com>

* restrict codecov upload to Python 3.11

Signed-off-by: gruebel <anton.gruebel@gmail.com>

* disable codecov ci fail on error

Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com>

---------

Signed-off-by: Federico Bond <federicobond@gmail.com>
Signed-off-by: gruebel <anton.gruebel@gmail.com>
Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com>
Co-authored-by: gruebel <anton.gruebel@gmail.com>
Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com>
2024-04-09 11:15:30 +09:00
Federico Bond 9966c14e16
feat: update provider status when provider emits events (#309)
* refactor: move registry singleton to the registry module

Signed-off-by: Federico Bond <federicobond@gmail.com>

* refactor: make openfeature.provider.registry a private module

Signed-off-by: Federico Bond <federicobond@gmail.com>

* feat: update provider status when provider emits events

Signed-off-by: Federico Bond <federicobond@gmail.com>

* refactor: avoid duplicate code

Signed-off-by: Federico Bond <federicobond@gmail.com>

* fix: fix provider event dispatch on initialize/shutdown

Signed-off-by: Federico Bond <federicobond@gmail.com>

* refactor: rename default_registry to provider_registry

Signed-off-by: Federico Bond <federicobond@gmail.com>

---------

Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-04-07 22:59:02 +10:00
renovate[bot] faf02a9888
chore(deps): update pre-commit hook pre-commit/pre-commit-hooks to v4.6.0 (#312)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-06 21:34:15 +00:00
Anton Grübel 9ba82e3b63
ci: switch to hatch (#297)
switch to hatch

Signed-off-by: gruebel <anton.gruebel@gmail.com>
2024-04-05 18:08:16 +11:00
renovate[bot] 47ae16c167
chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.3.5 (#311)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-05 12:48:51 +11:00
Federico Bond ff626374ae
chore: update renovate config (#310)
Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-04-05 12:46:02 +11:00
Federico Bond de36b214dc
fix: remove ProviderEvent.PROVIDER_FATAL (#307)
Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-03-28 16:54:00 +11:00
github-actions[bot] f00bc89caa
chore(main): release 0.6.1 (#304) 2024-03-28 00:10:46 +11:00
Federico Bond 05d0da2e3d
chore: add keywords to pyproject.toml (#305)
Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-03-26 07:31:57 +01:00
Federico Bond 78ea3b9914
feat: populate provider and client metadata in HookContext (#302)
* feat: populate provider and client metadata in HookContext

Signed-off-by: Federico Bond <federicobond@gmail.com>

* fix: ensure provider consistency during flag evaluation

Signed-off-by: Federico Bond <federicobond@gmail.com>

---------

Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-03-25 18:15:26 +11:00
Federico Bond 4a323b0f96
refactor: mark hook_support module as private/internal (#303)
Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-03-25 18:02:36 +11:00
github-actions[bot] 2c23c9e971
chore(main): release 0.6.0 (#283)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-22 15:30:50 +01:00
Federico Bond 58d27c4011
docs: update spec version to 0.8.0 (#299)
Release-As: 0.6.0

Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-03-22 08:06:08 +01:00
renovate[bot] a70ae0cb2e
chore(deps): update dependency pytest-mock to v3.14.0 (#300)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-22 13:25:00 +11:00
Federico Bond 679409fad2
feat: implement provider events (#278)
* feat: implement provider events

Signed-off-by: Federico Bond <federicobond@gmail.com>

* feat: add error_code field to EventDetails and ProviderEventDetails

Signed-off-by: Federico Bond <federicobond@gmail.com>

* fix: replace strings with postponed evaluation of annotations

Signed-off-by: Federico Bond <federicobond@gmail.com>

* feat: run handlers immediately if provider already in associated state

Signed-off-by: Federico Bond <federicobond@gmail.com>

* feat: remove unused _provider from openfeature.api

Signed-off-by: Federico Bond <federicobond@gmail.com>

* test: add some comments to test cases

Signed-off-by: Federico Bond <federicobond@gmail.com>

* test: add provider event late binding test cases

Signed-off-by: Federico Bond <federicobond@gmail.com>

* fix: fix status handlers running immediately if provider already in associated state

Signed-off-by: Federico Bond <federicobond@gmail.com>

* refactor: reuse provider property in OpenFeatureClient

Signed-off-by: Federico Bond <federicobond@gmail.com>

* refactor: move _provider_status_to_event to ProviderEvent.from_provider_status

Signed-off-by: Federico Bond <federicobond@gmail.com>

* refactor: move EventSupport class to an internal module

Signed-off-by: Federico Bond <federicobond@gmail.com>

* refactor: replace EventSupport class with module-level functions

Signed-off-by: Federico Bond <federicobond@gmail.com>

* style: fix code style

---------

Signed-off-by: Federico Bond <federicobond@gmail.com>
2024-03-22 07:45:00 +11:00
renovate[bot] 04b4009dbf
chore(deps): update dependency pytest-mock to v3.13.0 (#298)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-22 07:22:24 +11:00
Anton Grübel 6e4eebce20
chore: update mypy and ruff (#296)
update mypy and ruff

Signed-off-by: gruebel <anton.gruebel@gmail.com>
2024-03-19 06:16:16 +11:00
renovate[bot] f5987ef8f4
chore(deps): update dependency coverage to v7.4.4 (#293)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-15 07:41:41 +11:00