From 8b55564269b20da09336b145b3ed032db04daa3a Mon Sep 17 00:00:00 2001 From: Jonas Hungershausen Date: Wed, 18 Feb 2026 08:42:45 -0500 Subject: [PATCH 1/2] chore: add page on feature deprecations --- docs/kratos/deprecations/index.mdx | 80 +++++++++++++++++++++ src/components/ConsoleLink/console-link.tsx | 7 +- src/sidebar.ts | 1 + 3 files changed, 86 insertions(+), 2 deletions(-) create mode 100644 docs/kratos/deprecations/index.mdx diff --git a/docs/kratos/deprecations/index.mdx b/docs/kratos/deprecations/index.mdx new file mode 100644 index 0000000000..8d9d7401ed --- /dev/null +++ b/docs/kratos/deprecations/index.mdx @@ -0,0 +1,80 @@ +--- +id: index +title: Feature Deprecations +sidebar_label: Feature Deprecations +--- + +This section lists all behavior that has been deprecated in Ory Kratos. It is recommended to check this section regularly to stay +up-to-date with the latest changes and to avoid relying on deprecated functionality in your implementation. While Ory Kratos is +designed to be backward compatible, some improvements require changes to the underlying implementation, which may lead to the +deprecation of certain functionality. + +Ory is committed to maintaining a high level of quality and performance in our products, and deprecating features is a rare but +necessary step to ensure that we can continue to innovate and improve our offerings. We understand that deprecations can be +disruptive, and we strive to provide clear communication and ample time for users to adapt to changes. We encourage users to +review the deprecation information provided in this section and to reach out to our support channels if they have any questions or +concerns about the deprecation of features in any Ory product. + +## Who does this apply to? + +Users of the Ory Network, Ory Kratos (open source) and the OEL (Ory Enterprise License) are affected by this section. + +## How to use this section + +Each entry in this section provides information about the deprecated feature, including: + +- A brief description of the feature and its purpose. +- The reason for deprecation, if available. +- The version in which the feature was deprecated. +- Any recommended alternatives or migration paths, if applicable. + +If you're using an Ory Network project, your configuration will not change, unless you have explicitly disabled the deprecated +feature via a project level feature flag. To check which flags are currently enabled, go to +. + +If you're self-hosting Ory Kratos (either through open source or the OEL), you should review your configuration and codebase to +identify any usage of deprecated features before upgrading to a new version. This will help you avoid any potential issues that +may arise from the removal of deprecated features in future releases. + +## Staying Informed + +Subscribe to the [Ory Changelog](https://changelog.ory.com) to receive updates on new releases, including information about +deprecated features and their removal timelines. Additionally, consider joining the Ory community on Slack or GitHub to stay +engaged with other users and developers, and to get support for any questions or issues related to deprecated features. + +## Impacted functionality + +### Admin session extension API (`faster_session_extend`) + +**Who is impacted by this change?** + +This improvement may impact users who are using the `/admin/sessions/{id}/extend` endpoint ([`extendSession`](../reference/api#tag/identity/operation/extendSession) SDK operation) to +extend their users' sessions. The new implementation may result in faster response times and improved performance when extending +sessions. + +**Why was this change made?** + +The change was made to improve the performance and efficiency of the session extension process. By decoupling the session +extension from the retrieval of the updated session information, we can reduce the processing time and resource usage for +extending sessions, especially in scenarios with high traffic or large session data. + +**How to adapt to this change?** + +If your application is using the updated session returned by the `/admin/sessions/{id}/extend` endpoint after the session +extension, you will need to update your implementation to retrieve the updated session information separately, using the +`/admin/sessions/{id}` endpoint ([`getSession`](../reference/api#tag/identity/operation/getSession) SDK operation) after the session extension. + +After you reviewed your usage of this API, follow the instructions below based on your deployment type to ensure that you are +benefiting from the improved session extension process. + + + + Go to and enable the + "Faster session extension" feature flag to benefit from this improvement. + + + Starting with [Ory Kratos v1.3.0](https://github.com/ory/kratos/releases/tag/v1.3.0), the faster session extension process is + enabled by default. If you need to disable this feature for any reason, you can set the `feature_flags.faster_session_extend` + configuration option to `false` in your Kratos configuration file. + + diff --git a/src/components/ConsoleLink/console-link.tsx b/src/components/ConsoleLink/console-link.tsx index 5bfe249d4c..92dcd748ff 100644 --- a/src/components/ConsoleLink/console-link.tsx +++ b/src/components/ConsoleLink/console-link.tsx @@ -4,6 +4,7 @@ import { projectPaths, workspacesPaths } from "./console-nav-data" type ConsoleLinkProps = { route: string + hash?: string } const flatConsolePaths = [...projectPaths, ...workspacesPaths].flatMap((p) => { @@ -33,7 +34,7 @@ const flatConsolePaths = [...projectPaths, ...workspacesPaths].flatMap((p) => { * @param route a (possible nested) accesor from the routes object * @returns */ -export default function ConsoleLink({ route }: ConsoleLinkProps) { +export default function ConsoleLink({ route, hash }: ConsoleLinkProps) { const routeObj = route.split(".").reduce((p, c) => p[c], routes) if (!routeObj || (typeof routeObj !== "string" && !("route" in routeObj))) { throw new Error("Route not found: " + route) @@ -61,7 +62,9 @@ export default function ConsoleLink({ route }: ConsoleLinkProps) { // TODO: add current project resolution via the console API const renderedRoute = - "https://console.ory.sh" + resolvedRoute.replace("[project]", "current") + "https://console.ory.sh" + + resolvedRoute.replace("[project]", "current") + + (hash ? `#${hash}` : "") return ( <> diff --git a/src/sidebar.ts b/src/sidebar.ts index d934da6619..0ff7861465 100644 --- a/src/sidebar.ts +++ b/src/sidebar.ts @@ -564,6 +564,7 @@ const kratos: SidebarItemsConfig = [ "identities/sign-in/login-hint", "identities/sign-in/actions", "identities/sign-in/code-submission-limit", + "kratos/deprecations/index", ], }, { From 015ea7eb05bc6255cdc4261e44861ac4f8665aad Mon Sep 17 00:00:00 2001 From: Vincent Date: Fri, 24 Apr 2026 12:24:11 -0300 Subject: [PATCH 2/2] chore: apply suggestions from code review Co-authored-by: Vincent --- docs/kratos/deprecations/index.mdx | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/docs/kratos/deprecations/index.mdx b/docs/kratos/deprecations/index.mdx index 8d9d7401ed..4b0d40089c 100644 --- a/docs/kratos/deprecations/index.mdx +++ b/docs/kratos/deprecations/index.mdx @@ -1,19 +1,11 @@ --- id: index -title: Feature Deprecations -sidebar_label: Feature Deprecations +title: Feature deprecations +sidebar_label: Feature deprecations --- -This section lists all behavior that has been deprecated in Ory Kratos. It is recommended to check this section regularly to stay -up-to-date with the latest changes and to avoid relying on deprecated functionality in your implementation. While Ory Kratos is -designed to be backward compatible, some improvements require changes to the underlying implementation, which may lead to the -deprecation of certain functionality. +This section lists deprecated behavior in Ory Kratos. Check this section regularly to avoid relying on deprecated functionality. -Ory is committed to maintaining a high level of quality and performance in our products, and deprecating features is a rare but -necessary step to ensure that we can continue to innovate and improve our offerings. We understand that deprecations can be -disruptive, and we strive to provide clear communication and ample time for users to adapt to changes. We encourage users to -review the deprecation information provided in this section and to reach out to our support channels if they have any questions or -concerns about the deprecation of features in any Ory product. ## Who does this apply to? @@ -36,7 +28,7 @@ If you're self-hosting Ory Kratos (either through open source or the OEL), you s identify any usage of deprecated features before upgrading to a new version. This will help you avoid any potential issues that may arise from the removal of deprecated features in future releases. -## Staying Informed +## Stay informed Subscribe to the [Ory Changelog](https://changelog.ory.com) to receive updates on new releases, including information about deprecated features and their removal timelines. Additionally, consider joining the Ory community on Slack or GitHub to stay @@ -46,19 +38,19 @@ engaged with other users and developers, and to get support for any questions or ### Admin session extension API (`faster_session_extend`) -**Who is impacted by this change?** +- Who is impacted by this change? This improvement may impact users who are using the `/admin/sessions/{id}/extend` endpoint ([`extendSession`](../reference/api#tag/identity/operation/extendSession) SDK operation) to extend their users' sessions. The new implementation may result in faster response times and improved performance when extending sessions. -**Why was this change made?** +- Why was this change made? The change was made to improve the performance and efficiency of the session extension process. By decoupling the session extension from the retrieval of the updated session information, we can reduce the processing time and resource usage for extending sessions, especially in scenarios with high traffic or large session data. -**How to adapt to this change?** +- How to adapt to this change? If your application is using the updated session returned by the `/admin/sessions/{id}/extend` endpoint after the session extension, you will need to update your implementation to retrieve the updated session information separately, using the