diff --git a/content/admin/managing-iam/provisioning-user-accounts-with-scim/configuring-scim-provisioning-with-okta.md b/content/admin/managing-iam/provisioning-user-accounts-with-scim/configuring-scim-provisioning-with-okta.md
index 5890a7681df3..578abab86e35 100644
--- a/content/admin/managing-iam/provisioning-user-accounts-with-scim/configuring-scim-provisioning-with-okta.md
+++ b/content/admin/managing-iam/provisioning-user-accounts-with-scim/configuring-scim-provisioning-with-okta.md
@@ -120,7 +120,16 @@ Before starting this section, ensure you have followed steps **1 to 4** in [AUTO
1. Click **Configure API integration**.
1. In the "API Token" field, enter the {% data variables.product.pat_v1 %} belonging to the setup user.
- {% data reusables.scim.import-groups-unsupported %}
+ {% data reusables.scim.import-groups-unsupported %}
+
+ {% ifversion ghec %}
+
+ > [!IMPORTANT]
+ > For an enterprise on {% data variables.enterprise.data_residency %} (GHE.com), please enter the following URL in the **Base URL** field: {% raw %}`https://api.{subdomain}.ghe.com/scim/v2/enterprises/{subdomain}`{% endraw %} (ensuring to replace {% raw %}`{subdomain}`{% endraw %} with your enterprise's subdomain).
+ >
+ > **For example**: if your enterprise's subdomain is {% raw %}`acme`{% endraw %}, the base URL would be {% raw %}`https://api.acme.ghe.com/scim/v2/enterprises/acme`{% endraw %}.
+
+ {% endif %}
1. Click **Test API Credentials**. If the test is successful, a verification message will appear at the top of the screen.
1. To save the token, click **Save**.
diff --git a/content/admin/managing-iam/understanding-iam-for-enterprises/getting-started-with-enterprise-managed-users.md b/content/admin/managing-iam/understanding-iam-for-enterprises/getting-started-with-enterprise-managed-users.md
index 517d4d6dacd6..70b65a0ee210 100644
--- a/content/admin/managing-iam/understanding-iam-for-enterprises/getting-started-with-enterprise-managed-users.md
+++ b/content/admin/managing-iam/understanding-iam-for-enterprises/getting-started-with-enterprise-managed-users.md
@@ -39,7 +39,10 @@ Using an **incognito or private browsing window**:
1. Enable two-factor authentication (2FA), and save the recovery codes. See [AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication).
> [!WARNING]
- > All subsequent login attempts for the setup user account will require a successful 2FA challenge response or the use of an enterprise recovery code to complete authentication. To avoid being locked out of your account, after enabling single sign-on, save your enterprise recovery codes. See [AUTOTITLE](/admin/managing-iam/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes#downloading-codes-for-an-enterprise-with-enterprise-managed-users).
+ > All subsequent login attempts for the setup user account will require a successful 2FA challenge response.
+
+ > [!IMPORTANT]
+ > If the enterprise account has enabled single sign-on and the setup user hasn’t enabled 2FA, they must use an enterprise recovery code to authenticate. To avoid being locked out of your account, after enabling single sign-on, save your enterprise recovery codes. For more information, see [AUTOTITLE](/admin/managing-iam/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes#downloading-codes-for-an-enterprise-with-enterprise-managed-users) and the related [changelog in our {% data variables.product.prodname_blog %}](https://github.blog/changelog/2025-01-17-setup-user-for-emu-enterprises-requires-2fa-or-use-of-a-recovery-code/).
{% data reusables.enterprise-accounts.emu-password-reset-session %}
diff --git a/content/admin/upgrading-your-instance/preparing-to-upgrade/overview-of-the-upgrade-process.md b/content/admin/upgrading-your-instance/preparing-to-upgrade/overview-of-the-upgrade-process.md
index 620fdd2d62a4..29d21889f203 100644
--- a/content/admin/upgrading-your-instance/preparing-to-upgrade/overview-of-the-upgrade-process.md
+++ b/content/admin/upgrading-your-instance/preparing-to-upgrade/overview-of-the-upgrade-process.md
@@ -80,7 +80,7 @@ Check if you need to upgrade the following applications:
> [!NOTE]
> Hotpatches require a configuration run, which can cause a brief period of errors or unresponsiveness for some or all services on {% data variables.location.product_location %}. You are not required to enable maintenance mode during installation of a hotpatch, but doing so will guarantee that users see a maintenance page instead of errors or timeouts. See [AUTOTITLE](/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode).
* Patch releases using an upgrade package typically require less than five minutes of downtime.
- * Upgrading to a new feature release that include data migrations may cause a few hours of downtime, depending on storage performance and the amount of data that is migrated. During this time none of your users will be able to use the enterprise.
+ * Upgrading to a new feature release that includes data migrations may cause a few hours of downtime, depending on storage performance and the amount of data that is migrated. During this time none of your users will be able to use the enterprise.{% ifversion ghes > 3.16 %} You may notice that upgrades to a new feature release take less time. This is because selective database transitions will now run concurrently, with the number of concurrent workers defaulting to the number of CPU cores, up to a maximum of 16.{% endif %}
## Communicating your upgrade
diff --git a/content/get-started/learning-about-github/github-language-support.md b/content/get-started/learning-about-github/github-language-support.md
index 52d249658d9b..e713c0654e4b 100644
--- a/content/get-started/learning-about-github/github-language-support.md
+++ b/content/get-started/learning-about-github/github-language-support.md
@@ -42,6 +42,7 @@ Some features are supported for additional languages or package managers. If you
{% data reusables.supported-languages.typescript %}
> [!NOTE]
-{% ifversion fpt or ghec %}> * The language support for {% data variables.product.prodname_copilot %} varies depending on the volume and diversity of training data for that language.{% endif %}
-> * The support of Gradle for the dependency graph and {% data variables.product.prodname_dependabot_alerts %} is limited to the upload of data obtained using the {% data variables.dependency-submission-api.name %}.
-> * PHP, Rust, and Scala are supported for {% data variables.product.prodname_code_scanning %} by third-party actions.
+> {% ifversion fpt or ghec %}The language support for {% data variables.product.prodname_copilot %} varies depending on the volume and diversity of training data for that language.{% endif %}
+> The support of Gradle for the dependency graph and {% data variables.product.prodname_dependabot_alerts %} is limited to the upload of data obtained using the {% data variables.dependency-submission-api.name %}.
+
+[^1]: PHP, Rust, and Scala are supported for code scanning by third-party actions, but not by {% data variables.product.prodname_codeql %}.
diff --git a/content/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization.md b/content/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization.md
index 8cf96eb921bc..217646e1740e 100644
--- a/content/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization.md
+++ b/content/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization.md
@@ -94,8 +94,6 @@ Generally, the outside collaborator and repository collaborator roles are equiva
* Repository collaborators cannot bypass single sign-on (SSO) requirements, because SSO is managed at the enterprise level in an {% data variables.enterprise.prodname_emu_enterprise %}. However, like outside collaborators, they do not need to provide SSO authorization of credentials for organizations where they are a collaborator.
* Repository collaborators are subject to your enterprise IP allow list policy and your identity provider's conditional access policy. However, they are not subject to the organization's IP allow list policy.
-{% data reusables.repositories.repository-collaborators-release-phase %}
-
{% endif %}
#### Managing outside collaborators{% ifversion repository-collaborators %} or repository collaborators{% endif %}
diff --git a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/adding-outside-collaborators-to-repositories-in-your-organization.md b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/adding-outside-collaborators-to-repositories-in-your-organization.md
index 31239bb85a4d..a63c6642b4c2 100644
--- a/content/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/adding-outside-collaborators-to-repositories-in-your-organization.md
+++ b/content/organizations/managing-user-access-to-your-organizations-repositories/managing-outside-collaborators/adding-outside-collaborators-to-repositories-in-your-organization.md
@@ -28,7 +28,7 @@ permissions: People with admin access to a repository can add an outside collabo
{% ifversion fpt %}
Organizations that use {% data variables.product.prodname_ghe_cloud %} can restrict the ability to invite collaborators. For more information, see [AUTOTITLE](/enterprise-cloud@latest/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators) in the {% data variables.product.prodname_ghe_cloud %} documentation.
{% else %}
-An organization owner can restrict the ability to invite collaborators. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators).
+Organization and enterprise owners can restrict the ability to invite collaborators. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators) and [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories).
{% endif %}
{% ifversion ghes %}
diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository.md
index 4312ca42b2e3..6781a9dc49f9 100644
--- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository.md
+++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository.md
@@ -27,8 +27,6 @@ This overview can help you audit access to your repository, onboard or off-board
If you're a member of an {% data variables.enterprise.prodname_emu_enterprise %}, you can invite a member of your enterprise to collaborate in a repository that either a user or organization owns. The invited user will only have access to the repository, even if the repository belongs to an organization. The user must be provisioned by your company's identity provider (IdP). For more information, see [AUTOTITLE](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization#outside-collaborators-or-repository-collaborators).
-{% data reusables.repositories.repository-collaborators-release-phase %}
-
{% endif %}
For more information about repository roles, see [AUTOTITLE](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/permission-levels-for-a-personal-account-repository) and [AUTOTITLE](/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization).
diff --git a/data/reusables/repositories/repository-collaborators-release-phase.md b/data/reusables/repositories/repository-collaborators-release-phase.md
deleted file mode 100644
index 2feeeec47374..000000000000
--- a/data/reusables/repositories/repository-collaborators-release-phase.md
+++ /dev/null
@@ -1 +0,0 @@
->[!NOTE] The repository collaborator role for enterprises that use {% data variables.enterprise.prodname_managed_users %} is in {% data variables.release-phases.public_preview %} and subject to change.
diff --git a/data/reusables/supported-languages/php.md b/data/reusables/supported-languages/php.md
index 7c5cf6848937..74c5f624af2a 100644
--- a/data/reusables/supported-languages/php.md
+++ b/data/reusables/supported-languages/php.md
@@ -1 +1 @@
-| PHP {% ifversion fpt or ghec %}| {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} third-party | {% octicon "check" aria-label="Supported" %} Composer | {% octicon "check" aria-label="Supported" %} Composer | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% elsif ghes %}| {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} Composer | {% octicon "check" aria-label="Supported" %} Composer | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% endif %}
+| PHP {% ifversion fpt or ghec %}| {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} third-party [^1] | {% octicon "check" aria-label="Supported" %} Composer | {% octicon "check" aria-label="Supported" %} Composer | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% elsif ghes %}| {% octicon "check" aria-label="Supported" %} third-party [^1] | {% octicon "check" aria-label="Supported" %} Composer | {% octicon "check" aria-label="Supported" %} Composer | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% endif %}
diff --git a/data/reusables/supported-languages/rust.md b/data/reusables/supported-languages/rust.md
index 91088362278f..1c3524a27de2 100644
--- a/data/reusables/supported-languages/rust.md
+++ b/data/reusables/supported-languages/rust.md
@@ -1 +1 @@
-| Rust {% ifversion fpt or ghec %}| {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} third-party | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% elsif ghes > 3.13 %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% else %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% endif %}
+| Rust {% ifversion fpt or ghec %}| {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} third-party [^1] | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% elsif ghes > 3.13 %} | {% octicon "check" aria-label="Supported" %} third-party [^1] | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% else %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% endif %}
diff --git a/data/reusables/supported-languages/scala.md b/data/reusables/supported-languages/scala.md
index 1074fb728e5b..6ddbd8506d4b 100644
--- a/data/reusables/supported-languages/scala.md
+++ b/data/reusables/supported-languages/scala.md
@@ -1 +1 @@
-| Scala {% ifversion fpt or ghec %}| {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "check" aria-label="Supported" %} third-party | {% octicon "check" aria-label="Supported" %} Maven | {% octicon "check" aria-label="Supported" %} Maven, Gradle | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% elsif ghes %}| {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} Maven, Gradle | {% octicon "check" aria-label="Supported" %} Maven, Gradle | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% endif %}
+| Scala {% ifversion fpt or ghec %}| {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} | {% octicon "check" aria-label="Supported" %} third-party [^1] | {% octicon "check" aria-label="Supported" %} Maven | {% octicon "check" aria-label="Supported" %} Maven, Gradle | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% elsif ghes %}| {% octicon "check" aria-label="Supported" %} third-party [^1] | {% octicon "check" aria-label="Supported" %} Maven, Gradle | {% octicon "check" aria-label="Supported" %} Maven, Gradle | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Unsupported" %} |{% endif %}
diff --git a/data/ui.yml b/data/ui.yml
index 87dd1ea68685..97704600fc80 100644
--- a/data/ui.yml
+++ b/data/ui.yml
@@ -66,8 +66,10 @@ search:
ai_title: There was an error loading Copilot.
description: You can still use this field to search our docs.
cta:
- heading: New! Copilot for Docs
- description: Ask your question in the search bar and get help in seconds.
+ heading: Get quick answers!
+ description: Ask Copilot your question.
+ dismiss: Dismiss
+ ask_copilot: Ask Copilot
old_search:
description: Enter a search term to find it in the GitHub Docs.
placeholder: Search GitHub Docs
diff --git a/src/fixtures/fixtures/data/ui.yml b/src/fixtures/fixtures/data/ui.yml
index 87dd1ea68685..97704600fc80 100644
--- a/src/fixtures/fixtures/data/ui.yml
+++ b/src/fixtures/fixtures/data/ui.yml
@@ -66,8 +66,10 @@ search:
ai_title: There was an error loading Copilot.
description: You can still use this field to search our docs.
cta:
- heading: New! Copilot for Docs
- description: Ask your question in the search bar and get help in seconds.
+ heading: Get quick answers!
+ description: Ask Copilot your question.
+ dismiss: Dismiss
+ ask_copilot: Ask Copilot
old_search:
description: Enter a search term to find it in the GitHub Docs.
placeholder: Search GitHub Docs
diff --git a/src/frame/components/DefaultLayout.tsx b/src/frame/components/DefaultLayout.tsx
index ec22f51f7f35..f3a92cac2fd0 100644
--- a/src/frame/components/DefaultLayout.tsx
+++ b/src/frame/components/DefaultLayout.tsx
@@ -14,6 +14,7 @@ import { Breadcrumbs } from 'src/frame/components/page-header/Breadcrumbs'
import { useLanguages } from 'src/languages/components/LanguagesContext'
import { ClientSideLanguageRedirect } from './ClientSideLanguageRedirect'
import { DomainNameEditProvider } from 'src/links/components/useEditableDomainContext'
+import { SearchOverlayContextProvider } from '@/search/components/context/SearchOverlayContext'
const MINIMAL_RENDER = Boolean(JSON.parse(process.env.MINIMAL_RENDER || 'false'))
@@ -76,96 +77,98 @@ export const DefaultLayout = (props: Props) => {
return (
-
- {error === '404' ? (
- {t('oops')}
- ) : (!isHomepageVersion && page.fullTitle) ||
- (currentPathWithoutLanguage.includes('enterprise-server') && page.fullTitle) ? (
- {page.fullTitle}
- ) : null}
-
- {/* For Google and Bots */}
-
- {page.hidden && }
- {Object.values(languages)
- .filter((lang) => lang.code !== router.locale)
- .map((variant) => {
- return (
-
- )
- })}
-
- {/* For local site search indexing */}
- {page.topics.length > 0 && }
-
- {/* For analytics events */}
- {router.locale && }
- {currentVersion && }
- {currentProduct && }
- {relativePath && (
-
- )}
- {page.type && }
- {page.documentType && }
- {status && }
-
- {/* OpenGraph data */}
- {page.fullTitle && (
- <>
-
-
-
-
-
- >
- )}
- {/* Twitter Meta Tags */}
-
-
-
-
- {page.introPlainText && }
-
-
-
- Skip to main content
-
-
-
-
- {isHomepageVersion ? null : }
- {/* Need to set an explicit height for sticky elements since we also
- set overflow to auto */}
-