Skip to content

Commit

Permalink
Merge branch 'master' into java-sdk-v9-catnip-update
Browse files Browse the repository at this point in the history
  • Loading branch information
novalisdenahi committed Jan 16, 2024
2 parents d4f9bd7 + 87ef027 commit bd26d8d
Show file tree
Hide file tree
Showing 3 changed files with 79 additions and 8 deletions.
32 changes: 27 additions & 5 deletions website/docs/advanced/config-v2-migration-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,19 @@ description: A detailed guide on how to migrate from Config V1 to Config V2.

This guide will help you migrate from Config V1 to Config V2.

## What is Config V2?

Config V2 is the next generation of ConfigCat. It comes with a new dashboard, API, SDKs, and features. It's not backward compatible with Config V1. Read more about the new features in the [Config V2 Overview](advanced/config-v2).

## A few things to consider before migration

- Config V2 and V1 are completely separate. They don't affect each other in any way. You can use them side by side.
- Every newly created config is a V2 config.
- You can migrate your V1 configs to V2. That will mean that a V1 and a V2 version of your config will be available at the same time. The V2 version will have a new SDK key for each environment.
- There is no automatic sync between the V1 and V2 configs. You have to manually update the V2 config if you make changes to the V1 config and vice versa.
- Once started it's recommended to migrate your V1 configs to V2 as quickly as possible to avoid confusion.
- There is no pressure to migrate. You can stay on V1 for a long time.

## Migrating from Config V1 to Config V2

### Step 1: Create the V2 config
Expand All @@ -15,15 +28,24 @@ This guide will help you migrate from Config V1 to Config V2.

It's important to note that the V2 config was created with the same settings as the V1 config and the V1 config is still accessible and unchanged.

### Step 2: Update the ConfigCat SDK
### Step 2: Upgrade the ConfigCat SDK version

In your application, update the ConfigCat SDK to the latest version. Old versions of the SDK will not be able to access the new config. Make sure you update every application that uses the migrated config.
In your application, upgrade the ConfigCat SDK to the latest version. Old versions of the SDK will not be able to access the new config. Make sure you upgrade every application that uses the migrated V2 config.

Here is a list of the SDKs that support Config V2: [See the supported SDK versions.](advanced/config-v2-sdk-compatibility.md)

### Step 3: Update the ConfigCat SDK Key

In your application, update the ConfigCat SDK Key to the one that belongs to the V2 config. The new key can be found on the ConfigCat Dashboard on the V2 config's page.
In your application, update the ConfigCat SDK Key to the one that belongs to the V2 config in every environment. The new key can be found on the ConfigCat Dashboard on the V2 config's page.

### Step 4: Deploy your application

Deploy your application to production and wait until all your users are migrated to the new config. You can check the migration status on the ConfigCat Dashboard on the V2 config's page.

### Step 4: Clean up
### Step 5: Clean up

After you've updated all your applications to use the V2 config, you can delete the V1 config. You can check the config JSON download trends page to see if there are any applications that still access the V1 config.
Once you are sure that all your users are migrated (no downloads on the V1 configs for a long while) to the new config, you can delete the V1 config. This will prevent confusion and accidental use of the old config.

:::caution
Once you delete the V1 config, you won't be able to restore it.
:::
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
id: config-v2-sdk-support-table
title: Config V2 SDK Support Table
id: config-v2-sdk-compatibility
title: Config V2 SDK Compatibility
description: This table shows which SDK versions support Config V2.
---

This table shows which SDK versions already support Config V2.
This table shows which SDK versions support Config V2.

| SDK | Version | Release Notes |
| ------------------------------- |---------| --------------------------------------------------------------- |
Expand Down
49 changes: 49 additions & 0 deletions website/docs/advanced/config-v2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
id: config-v2
title: Config V2 Overview
description: Config V2 is the next generation of ConfigCat. It comes with a new dashboard, API, SDKs, and features.
---

Config V2 is a new version of ConfigCat. It comes with a new dashboard, API, SDKs, and features.

## What's new?

- A bunch of new features and improvements listed below.
- New config editor UI on the Dashboard.
- [New config JSON schema.](https://github.com/configcat/config-json)
- New API: [See the API Docs.](https://api.configcat.com/docs/)
- New SDKs: [See the supported SDK versions.](advanced/config-v2-sdk-compatibility)

## How to migrate from Config V1 to Config V2?

See the [Config V2 Migration Guide](advanced/config-v2-migration-guide). If you get stuck or have any questions about the migration, [contact us](https://configcat.com/support/).

## New features

### AND conditions

With AND conditions, you can create more complex targeting rule sets for your feature flags. You can add multiple conditions to a targeting rule and they will be evaluated as a logical AND.

### New comparators

With the new comparators, you can create date based targeting rules and schedule releases, compare arrays etc.

- New text and sensitive text comparators: EQUALS, NOT EQUALS, STARTS WITH ANY OF, ENDS WITH ANY OF, NOT STARTS WITH ANY OF, NOT ENDS WITH ANY OF.
- New array comparators: ARRAY CONTAINS ANY OF, ARRAY NOT CONTAINS ANY OF.
- New date comparators: BEFORE, AFTER.

### Prerequisite flags

With prerequisite flags, you can create feature flags that depend on other feature flags. Prerequisite feature flags are particularly useful for managing complex feature dependencies and ensuring a smooth user experience during feature rollouts.

### Comparison value hints

With comparison value hints, you can add hints to your comparison values. This way you can add a description to your comparison value list items that helps you remember what they are for.

### Percentage options for targeting rules

You can add percentage options to your targeting rules. This is useful if you want to create percentage options based on your user attributes.

### Custom percentage attributes

With custom percentage attributes, you can create percentage options based on custom attributes. This way you can create percentage options based on any of your user attributes.

0 comments on commit bd26d8d

Please sign in to comment.