diff --git a/content/_changelogs/10.6.0.md b/content/_changelogs/10.6.0.md
new file mode 100644
index 0000000000..6cdff70078
--- /dev/null
+++ b/content/_changelogs/10.6.0.md
@@ -0,0 +1,39 @@
+## 10.6.0
+
+_Released 8/16/2022_
+
+**Features:**
+
+- Introduced a new Cypress experiment,
+ [`experimentalSingleTabRunMode`](/guides/references/experiments), for
+ Component Testing. When enabled, all specs will execute in a single tab,
+ similar to the execution behavior observed in Component Testing alpha in
+ Cypress 9, which can improve `run` mode performance, but can impact spec
+ isolation and reliability on large test suites. Addresses
+ [#22353](https://github.com/cypress-io/cypress/issues/22353).
+- Enhanced the
+ [`CYPRESS_DOWNLOAD_PATH_TEMPLATE`](/guides/references/advanced-installation#Environment-variables)
+ environment variable interpolation to accept and replace `${version}` to allow
+ version-specific download paths to be honored. Addresses
+ [#5141](https://github.com/cypress-io/cypress/issues/5141),
+ [#16976](https://github.com/cypress-io/cypress/issues/16976), and
+ [#22864](https://github.com/cypress-io/cypress/issues/22864).
+
+**Bugfixes:**
+
+- Fixed an issue where the Firefox browser was not downloading files to the
+ expected directory in Windows. Fixes
+ [#17896](https://github.com/cypress-io/cypress/issues/17896).
+- Fixed an issue in `cy.session()` where the unique session id logic was not
+ persisting registered session ids, which incorrectly allowed session ids to
+ override previously used session ids with different setups. Fixes
+ [#22381](https://github.com/cypress-io/cypress/issues/22381).
+- Fixed an issue where absolute path glob manipulation was incorrectly breaking
+ `supportFile` and `specPattern` glob patterns that contained deep instances of
+ the working directory. Fixes
+ [#23361](https://github.com/cypress-io/cypress/issues/23361).
+- Fixed an issue with the Specs list search that prevented full path matching.
+ Fixes [#22463](https://github.com/cypress-io/cypress/issues/22463) and
+ [#21879](https://github.com/cypress-io/cypress/issues/21879).
+- Fixed an issue where Specs list popovers would not display a spec's full
+ filename. Fixes [#23064](https://github.com/cypress-io/cypress/issues/23064).
diff --git a/content/guides/references/advanced-installation.md b/content/guides/references/advanced-installation.md
index 32a7d50173..a57c5393e2 100644
--- a/content/guides/references/advanced-installation.md
+++ b/content/guides/references/advanced-installation.md
@@ -4,16 +4,16 @@ title: Advanced Installation
## Environment variables
-| Name | Description |
-| -------------------------------- | -------------------------------------------------------------------------------------------------------- |
-| `CYPRESS_INSTALL_BINARY` | [Destination of Cypress binary that's downloaded and installed](#Install-binary) |
-| `CYPRESS_DOWNLOAD_MIRROR` | [Downloads the Cypress binary though a mirror server](#Mirroring) |
-| `CYPRESS_CACHE_FOLDER` | [Changes the Cypress binary cache location](#Binary-cache) |
-| `CYPRESS_RUN_BINARY` | [Location of Cypress binary at run-time](#Run-binary) |
-| `CYPRESS_VERIFY_TIMEOUT` | Overrides the timeout duration for the `verify` command. The default value is 30000. |
-| `CYPRESS_DOWNLOAD_PATH_TEMPLATE` | Allows to specify custom download url. Replaces ${endpoint}, ${platform}, ${arch} with respective values |
-| ~~CYPRESS_SKIP_BINARY_INSTALL~~ | removed use `CYPRESS_INSTALL_BINARY=0` instead |
-| ~~CYPRESS_BINARY_VERSION~~ | removed use `CYPRESS_INSTALL_BINARY` instead |
+| Name | Description |
+| -------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
+| `CYPRESS_INSTALL_BINARY` | [Destination of Cypress binary that's downloaded and installed](#Install-binary) |
+| `CYPRESS_DOWNLOAD_MIRROR` | [Downloads the Cypress binary though a mirror server](#Mirroring) |
+| `CYPRESS_CACHE_FOLDER` | [Changes the Cypress binary cache location](#Binary-cache) |
+| `CYPRESS_RUN_BINARY` | [Location of Cypress binary at run-time](#Run-binary) |
+| `CYPRESS_VERIFY_TIMEOUT` | Overrides the timeout duration for the `verify` command. The default value is 30000. |
+| `CYPRESS_DOWNLOAD_PATH_TEMPLATE` | Allows to specify custom download url. Replaces ${endpoint}, ${version}, ${platform}, ${arch} with respective values |
+| ~~CYPRESS_SKIP_BINARY_INSTALL~~ | removed use `CYPRESS_INSTALL_BINARY=0` instead |
+| ~~CYPRESS_BINARY_VERSION~~ | removed use `CYPRESS_INSTALL_BINARY` instead |
## Install binary
diff --git a/content/guides/references/best-practices.md b/content/guides/references/best-practices.md
index 22788b71ad..4436a5fdaf 100644
--- a/content/guides/references/best-practices.md
+++ b/content/guides/references/best-practices.md
@@ -799,9 +799,9 @@ beforeEach(() => {
One final question you should ask yourself is - is resetting the state even
necessary? Remember, Cypress already automatically enforces
-[test isolation](/guides/core-concepts/test-isolation) by clearing state before
-each test. Make sure you are not trying to clean up state that is already
-cleaned up by Cypress automatically.
+[test isolation](/guides/core-concepts/writing-and-organizing-tests#Test-Isolation)
+by clearing state before each test. Make sure you are not trying to clean up
+state that is already cleaned up by Cypress automatically.
If the state you are trying to clean lives on the server - by all means, clean
that state. You will need to run these types of routines! But if the state is
diff --git a/content/guides/references/configuration.md b/content/guides/references/configuration.md
index 1cb956fccd..ee1dd53c9d 100644
--- a/content/guides/references/configuration.md
+++ b/content/guides/references/configuration.md
@@ -76,7 +76,6 @@ default values.
| `reporter` | `spec` | The [reporter](/guides/tooling/reporters) used during `cypress run`. |
| `reporterOptions` | `null` | The [reporter options](/guides/tooling/reporters#Reporter-Options) used. Supported options depend on the reporter. |
| `retries` | `{ "runMode": 0, "openMode": 0 }` | The number of times to retry a failing test. Can be configured to apply to `cypress run` or `cypress open` separately. See [Test Retries](/guides/guides/test-retries) for more information. |
-| `testIsolation` | `legacy` | The [test isolation level](/guides/core-concepts/test-isolation) applied to ensure a clean slate between tests. |
| `watchForFileChanges` | `true` | Whether Cypress will watch and restart tests on test file changes. |
### Timeouts
@@ -208,7 +207,9 @@ object:
| `supportFile` | `cypress/support/e2e.{js,jsx,ts,tsx}` | Path to file to load before spec files load. This file is compiled and bundled. (Pass `false` to disable) |
| `specPattern` | `cypress/e2e/**/*.cy.{js,jsx,ts,tsx}` | A String or Array of glob patterns of the test files to load. |
| `excludeSpecPattern` | `*.hot-update.js` | A String or Array of glob patterns used to ignore test files that would otherwise be shown in your list of tests. [Please read the notes on using this.](#excludeSpecPattern) |
+| `experimentalSessionAndOrigin` | `false` | Enables cross-origin and improved session support, including the [`cy.origin()`](/api/commands/origin) and [`cy.session()`](/api/commands/session) commands. This enables `testIsolation=strict` by default. Only available in end-to-end testing. |
| `slowTestThreshold` | `10000` | Time, in milliseconds, to consider a test "slow" during `cypress run`. A slow test will display in orange text in the default reporter. |
+| `testIsolation` | `legacy` | The [test isolation level](/guides/core-concepts/writing-and-organizing-tests#Test-Isolation) applied to ensure a clean slate between tests. |
:::cypress-config-example{noJson}
@@ -234,6 +235,7 @@ object:
| `supportFile` | `cypress/support/component.js` | Path to file to load before spec files load. This file is compiled and bundled. (Pass `false` to disable) |
| `specPattern` | `**/*.cy.{js,jsx,ts,tsx}` | A glob pattern String or Array of glob pattern Strings of the spec files to load.
Note that any files found matching the `e2e.specPattern` value will be automatically **excluded.** |
| `excludeSpecPattern` | `['/snapshots/*', '/image_snapshots/*']` | A String or Array of glob patterns used to ignore spec files that would otherwise be shown in your list of specs. [Please read the notes on using this.](#excludeSpecPattern) |
+`experimentalSingleTabRunMode` | `false` | Run all specs in a single tab, instead of creating a new tab per spec. This can improve run mode performance, but can impact spec isolation and reliability on large test suites. This experiment currently only applies to Component Testing.
| `slowTestThreshold` | `250` | Time, in milliseconds, to consider a test "slow" during `cypress run`. A slow test will display in orange text in the default reporter. |
:::cypress-config-example{noJson}
@@ -847,20 +849,21 @@ DEBUG=cypress:cli,cypress:server:specs
## History
-| Version | Changes |
-| --------------------------------------------- | ------------------------------------------------------------------------------------ |
-| [10.0.0](/guides/references/changelog#10-0-0) | Reworked page to support new `cypress.config.js` and deprecated `cypress.json` files |
-| [8.7.0](/guides/references/changelog#8-7-0) | Added `slowTestThreshold` option |
-| [8.0.0](/guides/references/changelog#8-0-0) | Added `clientCertificates` option |
-| [7.0.0](/guides/references/changelog#7-0-0) | Added `e2e` and `component` options. |
-| [7.0.0](/guides/references/changelog#7-0-0) | Added `redirectionLimit` option. |
-| [6.1.0](/guides/references/changelog#6-1-0) | Added `scrollBehavior` option. |
-| [5.2.0](/guides/references/changelog#5-2-0) | Added `includeShadowDom` option. |
-| [5.0.0](/guides/references/changelog#5-0-0) | Added `retries` configuration. |
-| [5.0.0](/guides/references/changelog#5-0-0) | Renamed `blacklistHosts` configuration to `blockHosts`. |
-| [4.1.0](/guides/references/changelog#4-12-0) | Added `screenshotOnRunFailure` configuration. |
-| [4.0.0](/guides/references/changelog#4-0-0) | Added `firefoxGcInterval` configuration. |
-| [3.5.0](/guides/references/changelog#3-5-0) | Added `nodeVersion` configuration. |
+| Version | Changes |
+| --------------------------------------------- | ------------------------------------------------------------------------------------- |
+| [10.4.0](/guides/references/changelog#10-4-0) | Added `e2e.testIsolation` option. |
+| [10.0.0](/guides/references/changelog#10-0-0) | Reworked page to support new `cypress.config.js` and deprecated `cypress.json` files. |
+| [8.7.0](/guides/references/changelog#8-7-0) | Added `slowTestThreshold` option. |
+| [8.0.0](/guides/references/changelog#8-0-0) | Added `clientCertificates` option. |
+| [7.0.0](/guides/references/changelog#7-0-0) | Added `e2e` and `component` options. |
+| [7.0.0](/guides/references/changelog#7-0-0) | Added `redirectionLimit` option. |
+| [6.1.0](/guides/references/changelog#6-1-0) | Added `scrollBehavior` option. |
+| [5.2.0](/guides/references/changelog#5-2-0) | Added `includeShadowDom` option. |
+| [5.0.0](/guides/references/changelog#5-0-0) | Added `retries` configuration. |
+| [5.0.0](/guides/references/changelog#5-0-0) | Renamed `blacklistHosts` configuration to `blockHosts`. |
+| [4.1.0](/guides/references/changelog#4-12-0) | Added `screenshotOnRunFailure` configuration. |
+| [4.0.0](/guides/references/changelog#4-0-0) | Added `firefoxGcInterval` configuration. |
+| [3.5.0](/guides/references/changelog#3-5-0) | Added `nodeVersion` configuration. |
## See also
diff --git a/content/guides/references/experiments.md b/content/guides/references/experiments.md
index d689e2f50a..db600debe6 100644
--- a/content/guides/references/experiments.md
+++ b/content/guides/references/experiments.md
@@ -27,12 +27,14 @@ configuration to Cypress.
| `experimentalInteractiveRunEvents` | `false` | Allows listening to the [`before:run`](/api/plugins/before-run-api), [`after:run`](/api/plugins/after-run-api), [`before:spec`](/api/plugins/before-spec-api), and [`after:spec`](/api/plugins/after-spec-api) events in the [setupNodeEvents](/guides/tooling/plugins-guide#Using-a-plugin) function during interactive mode. |
| `experimentalModifyObstructiveThirdPartyCode` | `false` | Whether Cypress will search for and replace obstructive code in third party `.js` or `.html` files. NOTE: Setting this flag removes [Subresource Integrity (SRI)](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity). |
| `experimentalSessionAndOrigin` | `false` | Enables cross-origin and improved session support, including the [`cy.origin()`](/api/commands/origin) and [`cy.session()`](/api/commands/session) commands. This enables `testIsolation=strict` by default. Only available in end-to-end testing. |
+| `experimentalSingleTabRunMode` | `false` | Run all specs in a single tab, instead of creating a new tab per spec. This can improve run mode performance, but can impact spec isolation and reliability on large test suites. This experiment currently only applies to Component Testing. |
| `experimentalSourceRewriting` | `false` | Enables AST-based JS/HTML rewriting. This may fix issues caused by the existing regex-based JS/HTML replacement algorithm. See [#5273](https://github.com/cypress-io/cypress/issues/5273) for details. |
## History
| Version | Changes |
| --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
+| [10.6.0](/guides/references/changelog#10-6-0) | Added support for `experimentalSingleTabRunMode`. |
| [10.4.0](/guides/references/changelog#10-4-0) | Added support for `experimentalModifyObstructiveThirdPartyCode`. |
| [9.6.0](/guides/references/changelog#9-6-0) | Added support for `experimentalSessionAndOrigin` and removed `experimentalSessionSupport`. |
| [8.2.0](/guides/references/changelog#8-2-0) | Added support for `experimentalSessionSupport`. |