diff --git a/docs/install/releases/feature-stages.md b/docs/install/releases/feature-stages.md index 216b9c01d28af..6dbd497c7f06d 100644 --- a/docs/install/releases/feature-stages.md +++ b/docs/install/releases/feature-stages.md @@ -1,7 +1,8 @@ # Feature stages -Some Coder features are released in feature stages before they are generally -available. +We release some Coder features or components in feature stages before we consider them "generally available" (GA). + +This gives Coder users the opportunity to use the latest Coder features and improve the open-source project. If you encounter an issue with any Coder feature, please submit a [GitHub issue](https://github.com/coder/coder/issues) or join the @@ -9,11 +10,34 @@ If you encounter an issue with any Coder feature, please submit a ## Feature stages -| Feature stage | Stable | Production-ready | Support | Description | -|----------------------------------------|--------|------------------|-----------------------|-------------------------------------------------------------------------------------------------------------------------------| -| [Early Access](#early-access-features) | No | No | GitHub issues | For staging only. Not feature-complete or stable. Disabled by default. | -| [Beta](#beta) | No | Not fully | Docs, Discord, GitHub | Publicly available. In active development with minor bugs. Suitable for staging; optional for production. Not covered by SLA. | -| [GA](#general-availability-ga) | Yes | Yes | License-based | Stable and tested. Enabled by default. Fully documented. Support based on license. | +| Feature stage | Stable | Production-ready | Support | Description | +|-------------------------------------------|--------|------------------|-----------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Experiment](#experiment-hidden) | No | No | N/A | For staging and testing only. Not feature-complete or stable.
Hidden and disabled by default. | +| [Early Access](#early-access-features) | No | No | Limited documentation
GitHub issues | For staging only. Functional, but not feature-complete or stable.
Disabled by default. | +| [Beta](#beta) | No | Not fully | Documentation
Discord
GitHub | Publicly available on an opt-in basis. In active development with minor bugs. Suitable for staging; optional for production. Not covered by SLA. | +| [GA](#general-availability-ga) | Yes | Yes | License-based / SLA | Stable and tested. Enabled by default. Fully documented. Support based on license. | +| [Legacy (Deprecated)](#legacy-deprecated) | Yes* | Yes* | Best-effort security updates | Legacy features continue to function, but will not be updated outside of the limits defined in a customer's license or agreement.
They will be removed in future versions of Coder. | + +## Experiment (Hidden) + +- **Stable**: No +- **Production-ready**: No +- **Support**: N/A + +Experimental features are in active development and hidden by default. +They are not ready for ongoing use and aspects might be broken or can lead to data loss. + +You can enable an experimental feature for testing, if you want to explore the latest Coder code, or if you'd like to contribute. + +
To enable an experimental feature: + +Use the [Coder CLI](../../install/cli.md) `--experiments` flag to enable the feature: + +```shell +coder server --experiments=featureName +``` + +
## Early access features @@ -21,25 +45,20 @@ If you encounter an issue with any Coder feature, please submit a - **Production-ready**: No - **Support**: GitHub issues -Early access features are neither feature-complete nor stable. We do not -recommend using early access features in production deployments. +Early access features are neither feature-complete nor stable. +We do not recommend using early access features in production deployments. -Coder sometimes releases early access features that are available for use, but -are disabled by default. You shouldn't use early access features in production -because they might cause performance or stability issues. Early access features -can be mostly feature-complete, but require further internal testing and remain -in the early access stage for at least one month. +Coder sometimes releases early access features that are available for use, but are disabled by default. +You shouldn't use early access features in production because they might cause performance or stability issues. +Early access features can be mostly feature-complete, but require further internal testing and remain in the early access stage for at least one month. -Coder may make significant changes or revert features to a feature flag at any -time. +Coder may make significant changes or revert features to a feature flag at any time. -If you plan to activate an early access feature, we suggest that you use a -staging deployment. +If you plan to activate an early access feature, we suggest that you use a staging deployment.
To enable early access features: -Use the [Coder CLI](../../install/cli.md) `--experiments` flag to enable early -access features: +Use the [Coder CLI](../../install/cli.md) `--experiments` flag to enable early access features: - Enable all early access features: @@ -80,27 +99,21 @@ You can opt-out of a feature after you've enabled it. Beta features are open to the public and are tagged with a `Beta` label. -They’re in active development and subject to minor changes. They might contain -minor bugs, but are generally ready for use. +They’re in active development and subject to minor changes. +They might contain minor bugs, but are generally ready for use. -Beta features are often ready for general availability within two-three -releases. You should test beta features in staging environments. You can use -beta features in production, but should set expectations and inform users that -some features may be incomplete. +Beta features are often ready for general availability within two-three releases. +You should test beta features in staging environments. +You can use beta features in production, but should set expectations and inform users that some features may be incomplete. -We keep documentation about beta features up-to-date with the latest -information, including planned features, limitations, and workarounds. If you -encounter an issue, please contact your -[Coder account team](https://coder.com/contact), reach out on -[Discord](https://discord.gg/coder), or create a -[GitHub issues](https://github.com/coder/coder/issues) if there isn't one -already. While we will do our best to provide support with beta features, most -issues will be escalated to the product team. Beta features are not covered -within service-level agreements (SLA). +We keep documentation about beta features up-to-date with the latest information, including planned features, limitations, and workarounds. +If you encounter an issue, please contact your [Coder account team](https://coder.com/contact), reach out on +[Discord](https://discord.gg/coder), or create a [GitHub issues](https://github.com/coder/coder/issues) if there isn't one already. +While we will do our best to provide support with beta features, most issues will be escalated to the product team. +Beta features are not covered within service-level agreements (SLA). -Most beta features are enabled by default. Beta features are announced through -the [Coder Changelog](https://coder.com/changelog), and more information is -available in the documentation. +Most beta features are enabled by default. +Beta features are announced through the [Coder Changelog](https://coder.com/changelog), and more information is available in the documentation. ## General Availability (GA) @@ -108,25 +121,37 @@ available in the documentation. - **Production-ready**: Yes - **Support**: Yes, [based on license](https://coder.com/pricing). -All features that are not explicitly tagged as `Early access` or `Beta` are -considered generally available (GA). They have been tested, are stable, and are -enabled by default. +All features that are not explicitly tagged as `Early access` or `Beta` are considered generally available (GA). +They have been tested, are stable, and are enabled by default. -If your Coder license includes an SLA, please consult it for an outline of -specific expectations. +If your Coder license includes an SLA, please consult it for an outline of specific expectations. -For support, consult our knowledgeable and growing community on -[Discord](https://discord.gg/coder), or create a -[GitHub issue](https://github.com/coder/coder/issues) if one doesn't exist -already. Customers with a valid Coder license, can submit a support request or -contact your [account team](https://coder.com/contact). +For support, consult our knowledgeable and growing community on [Discord](https://discord.gg/coder), or create a +[GitHub issue](https://github.com/coder/coder/issues) if one doesn't exist already. +Customers with a valid Coder license, can submit a support request or contact your [account team](https://coder.com/contact). -We intend [Coder documentation](../../README.md) to be the -[single source of truth](https://en.wikipedia.org/wiki/Single_source_of_truth) -and all features should have some form of complete documentation that outlines -how to use or implement a feature. If you discover an error or if you have a -suggestion that could improve the documentation, please +We intend [Coder documentation](../../README.md) to be the [single source of truth](https://en.wikipedia.org/wiki/Single_source_of_truth) +and all features should have some form of complete documentation that outlines how to use or implement a feature. +If you discover an error or if you have a suggestion that could improve the documentation, please [submit a GitHub issue](https://github.com/coder/internal/issues/new?title=request%28docs%29%3A+request+title+here&labels=["customer-feedback","docs"]&body=please+enter+your+request+here). -Some GA features can be disabled for air-gapped deployments. Consult the -feature's documentation or submit a support ticket for assistance. +Some GA features can be disabled for air-gapped deployments. +Consult the feature's documentation or submit a support ticket for assistance. + +## Legacy (Deprecated) + +- **Stable**: Yes* +- **Production-ready**: Yes* +- **Support**: Best-effort security updates + +On rare occasions, the Coder team may deprecate features that have been replaced by another functionality, or that tedious to maintain. + +In order to maintain stability and predictability, we avoid deprecating features that might lead to breaking changes as much as we can. +Before we deprecate a feature, we will communicate the upcoming changes and timeline to all customers and through various mediums, +and we'll provide guidance and documentation on how to ease the transition. + +After the feature is deprecated, we may continue to patch security vulnerabilities or include community patches as long as we can. + +*Legacy features might be stable and production ready, but there's no guarantee that they will continue working without issue or with new features and requirements. + +Support is available as defined in your license or agreement.