mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	chore: update outdated sdks list (#6556)
This commit is contained in:
		
							parent
							
								
									146fbbb875
								
							
						
					
					
						commit
						dc1d5ce4f2
					
				@ -4,7 +4,7 @@ describe('findOutdatedSDKs', () => {
 | 
			
		||||
    it('should return an empty array when all SDKs are up to date', () => {
 | 
			
		||||
        const sdkVersions = [
 | 
			
		||||
            'unleash-client-node:6.0.0',
 | 
			
		||||
            'unleash-client-php:2.0.0',
 | 
			
		||||
            'unleash-client-php:3.0.0',
 | 
			
		||||
        ];
 | 
			
		||||
        const result = findOutdatedSDKs(sdkVersions);
 | 
			
		||||
        expect(result).toEqual([]);
 | 
			
		||||
@ -45,7 +45,7 @@ describe('findOutdatedSDKs', () => {
 | 
			
		||||
    it('should correctly handle semver versions', () => {
 | 
			
		||||
        const sdkVersions = [
 | 
			
		||||
            'unleash-client-node:6.1.0',
 | 
			
		||||
            'unleash-client-php:1.20.3-beta.0',
 | 
			
		||||
            'unleash-client-php:3.20.3-beta.0',
 | 
			
		||||
        ];
 | 
			
		||||
        const result = findOutdatedSDKs(sdkVersions);
 | 
			
		||||
        expect(result).toEqual([]);
 | 
			
		||||
 | 
			
		||||
@ -6,12 +6,12 @@ type SDKConfig = {
 | 
			
		||||
 | 
			
		||||
const config: SDKConfig = {
 | 
			
		||||
    'unleash-client-node': '5.3.2',
 | 
			
		||||
    'unleash-client-java': '9.0.0',
 | 
			
		||||
    'unleash-client-java': '9.2.0',
 | 
			
		||||
    'unleash-client-go': '4.1.0',
 | 
			
		||||
    'unleash-client-python': '5.9.2',
 | 
			
		||||
    'unleash-client-python': '5.11.0',
 | 
			
		||||
    'unleash-client-ruby': '5.0.0',
 | 
			
		||||
    'unleash-client-dotnet': '4.1.3',
 | 
			
		||||
    'unleash-client-php': '1.13.0',
 | 
			
		||||
    'unleash-client-php': '2.3.0',
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export const isOutdatedSdk = (sdkVersion: string) => {
 | 
			
		||||
 | 
			
		||||
@ -16,13 +16,13 @@ Since every token had a dedicated repository with 10 tokens we were making 10 DB
 | 
			
		||||
What's more each repository kept its own copy of the flags. What it means in practice is that two different tokens with the same
 | 
			
		||||
project and environments would store the same flags twice. 
 | 
			
		||||
 | 
			
		||||
[Frontend API before](/img/frontend-api-before.png)
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
## Decision
 | 
			
		||||
 | 
			
		||||
To address these challenges, we came up with a new design:
 | 
			
		||||
 | 
			
		||||
[Frontend API after](/img/frontend-api-after.png)
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
We decided to swap ProxyRepository with a drop-in replacement FrontendApiRepository. FrontendApiRepository doesn't store any flags on its own but always filters
 | 
			
		||||
the flags that we keep in a GlobalFrontendApiCache. The cache stores all the flags and updates on every revision ID change. 
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user