deftinc / feature_gate

MIT License
0 stars 2 forks source link

Add posthog local eval support #15

Open ajsharp opened 1 month ago

ajsharp commented 1 month ago

This PR adds posthog's local eval support. The posthog python sdk essentially downloads all the feature flags for a project periodically and when you ask it if a flag is enabled for a user, it calculates that locally based on the person_properties passed in.

This is a backwards-incompatible change, as it replaces the existing is_enabled method in the PosthogAPIClient class.

This also adds the posthog SDK as a dependency of this project. I'm not sure the "right" way to do this sort of thing in poetry/python, where you probably want the codebase upstream to define which version of the posthog client they have in their own project, but you still need some posthog sdk in this project.