-
Notifications
You must be signed in to change notification settings - Fork 77
chore(docs): clarify some breaking changes in v10 #368
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
c535d37
128e682
c89802c
90492b1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -2,6 +2,17 @@ | |||||
|
|
||||||
| This guide highlights the key changes you need to be aware of when upgrading to v10.0.0 of the Unleash client. | ||||||
|
|
||||||
| ## Version guidance | ||||||
|
|
||||||
| For ongoing updates, prefer v12. | ||||||
|
|
||||||
| The latest patch releases in v10, v11, and v12 are currently aligned on the same optimized | ||||||
| implementation path. | ||||||
|
|
||||||
| Early v11 introduced a WASM-engine direction that we later reverted in v11 patch releases. | ||||||
|
|
||||||
| If you need to stay on a specific major version, make sure you run the latest patch in that major. | ||||||
|
|
||||||
| ## Custom bootstrapping | ||||||
|
|
||||||
| The Bootstrapping interface now requires an `Optional<String>` to be returned rather than a `String`. If the bootstrapper fails to load the feature set, return an `Optional` of empty. | ||||||
|
|
@@ -16,6 +27,12 @@ The Bootstrapping interface now requires an `Optional<String>` to be returned ra | |||||
|
|
||||||
| The strategy interface has changed to only include the two methods `getName` and `isEnabled`. `isEnabled` now requires both a parameter map and an `UnleashContext`. This only affects users who are implementing custom or fallback strategies. | ||||||
|
|
||||||
| Built-in strategy classes from `io.getunleash.strategy` (for example | ||||||
| `GradualRolloutRandomStrategy`, `GradualRolloutUserWithIdStrategy`, and | ||||||
| `GradualRolloutSessionIdStrategy`) are no longer part of the Java SDK public API in v10. | ||||||
|
|
||||||
| These strategies are evaluated internally by Yggdrasil. There is no class-for-class replacement to import for built-ins; use the built-ins via Unleash configuration, and implement `Strategy` only for custom or fallback behavior. | ||||||
|
||||||
| These strategies are evaluated internally by Yggdrasil. There is no class-for-class replacement to import for built-ins; use the built-ins via Unleash configuration, and implement `Strategy` only for custom or fallback behavior. | |
| These strategies are evaluated internally by Yggdrasil. There is no class-for-class replacement to import for built-ins in the Java SDK; to use these built-ins, select the corresponding built-in strategy names when configuring your feature flags in the Unleash server/UI, and implement `Strategy` only for custom or fallback behavior in your own code. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| # Migrating to Unleash-Client-Java 11.x | ||
|
|
||
| This guide highlights what to know when upgrading from v10 to v11. | ||
|
|
||
| ## Java runtime requirement | ||
|
|
||
| v11 requires Java 11+. | ||
|
|
||
| ## Migration path | ||
|
|
||
| For API-level migration details, refer to the v10 guide: | ||
| [v10_MIGRATION_GUIDE.md](v10_MIGRATION_GUIDE.md) | ||
|
|
||
| The latest patch releases in v10, v11, and v12 are currently aligned on the same optimized | ||
| implementation path. | ||
|
|
||
| Early v11 introduced a WASM-engine direction that we later reverted in v11 patch releases. | ||
|
|
||
| ## Recommendation | ||
|
|
||
| v11 is maintained for stability and critical fixes when needed, but for ongoing updates and new | ||
| improvements, prefer v12. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| # Migrating to Unleash-Client-Java 12.x | ||
|
|
||
| This guide highlights what to know when upgrading from v11 to v12. | ||
|
|
||
| ## Java runtime requirement | ||
|
|
||
| v12 requires Java 11+. | ||
|
|
||
| ## Migration path | ||
|
|
||
| For API-level migration details that still apply, refer to the v10 guide: | ||
| [v10_MIGRATION_GUIDE.md](v10_MIGRATION_GUIDE.md) | ||
|
|
||
| For current guidance on the v11 line, refer to: | ||
| [v11_MIGRATION_GUIDE.md](v11_MIGRATION_GUIDE.md) | ||
|
|
||
| The latest patch releases in v10, v11, and v12 are currently aligned on the same optimized | ||
| implementation path. | ||
|
|
||
| ## Recommendation | ||
|
|
||
| Use v12 for ongoing updates and future improvements. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Grammar: “if the client receives a strategy name it does not recognize” (missing article) reads awkwardly. Consider rephrasing to “if the client receives a strategy name that it does not recognize” or similar for clarity.