Skip to content

Conversation

thomaspoignant
Copy link
Member

@thomaspoignant thomaspoignant commented May 23, 2025

This PR

This is a complete rebuild of the GO Feature Flag provider.
This version is using a webassembly module to do in-process evaluation inside the provider.

You can still use the remote evaluation if you prefer through the OFREP endpoint of GO Feature Flag.

Things to know:

  • The wasm module is download during the process-resources of maven using this script.
  • The default evaluation method is now the in-process one.
  • If you are using the remote evaluation, we are not managing any cache.
  • The provider is also now supporting tracking method
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
@thomaspoignant thomaspoignant requested a review from a team as a code owner May 23, 2025 16:56
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
@thomaspoignant thomaspoignant force-pushed the goff-inprocess-eval branch 2 times, most recently from a3f31fd to 3e777b2 Compare May 24, 2025 09:33
@thomaspoignant thomaspoignant marked this pull request as draft May 24, 2025 09:35
@thomaspoignant thomaspoignant force-pushed the goff-inprocess-eval branch 5 times, most recently from b328b00 to 25ecbc0 Compare May 24, 2025 10:20
@thomaspoignant thomaspoignant marked this pull request as ready for review May 24, 2025 10:33
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
@toddbaert toddbaert requested a review from beeme1mr May 28, 2025 19:14
@toddbaert
Copy link
Member

cc @beeme1mr this uses WASM, you might be interested.

Copy link
Member

@toddbaert toddbaert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is really cool.

I was worried about making sure all the memory resources were cleaned/closed, but it looks like chicory is doing most of that for you (which is cool). Things make sense to me. Very interested to see how this works at scale.

I left one comment because I think you are possibly missing some Jackson deps.

@toddbaert
Copy link
Member

You might also want to mention tracking in your title.

@thomaspoignant thomaspoignant changed the title feat(go-feature-flag)!: Introduce in-process evaluation feat(go-feature-flag)!: Introduce in-process evaluation + tracking May 30, 2025
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
@toddbaert
Copy link
Member

@thomaspoignant feel free to merge.

@thomaspoignant
Copy link
Member Author

@thomaspoignant feel free to merge.

I am waiting other major providers to be ready to release them all together.
I am working on .NET and nodeJS.

Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
@thomaspoignant
Copy link
Member Author

I forgot that merging does not mean release 🤦
I'll merge it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

4 participants