flagsmith-js-client
flagsmith-js-client copied to clipboard
Caching with multiple instance doesn't work
Hey,
I'm using Flagsmith with two instances, created using the createFlagsmithContext
. I have noticed that caching is not working properly when you are running two instances. Indeed, if you look at the local storage you will see that the values from both instance are cached against the same key and are overriding each other.
Reproduction case:
communitiesFlag.init({
environmentID: 'env-1',
api: FLAGSMITH_API,
cacheFlags: true,
cacheOptions: {
skipAPI: true,
ttl: 1000 * 60 * 5,
},
});
usersFlags.init({
environmentID: 'env-2',
api: FLAGSMITH_API,
cacheFlags: true,
cacheOptions: {
skipAPI: true,
ttl: 1000 * 60 * 5,
},
});
usersFlags.identify('1')
communitiesFlag.identify('2')
Check in the local storage of your browser and you will see that only one of the identity has been cached
Thanks for this @ldemesla, we will look into it and get back to you as soon as possible.
Thank you @ldemesla! we will soon start working on this issue, and keep you posted about the progress.
@kyle-ssg @novakzaballa what's the status here?
Hi @ldemesla, just to leave an update and let you know that we are considering if this use case would be solved by the implementation of contexts which is planned to be delivered by the second semester of this year.
Hi @ldemesla we will start working on the contexts next week, could you please explain the use case for this request? so we can know this is a good candidate for solving this with the implementation of the contexts
Also, we don't provide the function createFlagsmithContext
, in the javascript client, Could you please share where you found the code for using createFlagsmithContext
?
@novakzaballa I am interested in solving the problem, my use case is the use of cacheFlags in a microfrontend architecture where each project can have its own instance of flagsmith but they all share the same localStorage
Hi @oluizcarvalho, that makes total sense to me. If you'd like to submit a PR for this, then we'd love to receive it!
@matthewelwell PR open! 🚀 #246
This has been resolved in version 6.0.0, thanks so much @oluizcarvalho