Skip to content

Commit 3d809be

Browse files
release-controller[bot]Release-Controllerpallsamamchammer01dooleydevin
authored
Patch release notes for GitHub Enterprise Server (#55577)
Co-authored-by: Release-Controller <releasecontroller@github.com> Co-authored-by: Pallavi <96553709+pallsama@users.noreply.github.com> Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com> Co-authored-by: Devin Dooley <dooleydevin@github.com> Co-authored-by: vgrl <vgrl@github.com>
1 parent 540d70b commit 3d809be

File tree

4 files changed

+354
-0
lines changed

4 files changed

+354
-0
lines changed
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
date: '2025-05-27'
2+
sections:
3+
security_fixes:
4+
- |
5+
**MEDIUM:** An attacker could inject HTML in the instances web UI because the web commit dialog did not properly sanitize repository rule violation messages. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com/).
6+
- |
7+
Packages have been updated to the latest security versions.
8+
bugs:
9+
- |
10+
Ephemeral runner registrations for GitHub Actions were not fully cleaned up after deletion.
11+
- |
12+
For instances in a high availability configuration, because there was no Nomad job for the `aqueduct-lite` service on replica nodes, generating a support bundle from the command line on a replica would result in the error `ERROR: Failed to get elastomer index build progress` being incorrectly reported.
13+
- |
14+
A pre-receive hook could fail due to blocked system calls.
15+
- |
16+
After updating the TLS certificate from the Management Console, users encountered 502 errors when creating releases and uploading artifacts. Running `ghe-config-apply` did not resolve the issue, as the alambic service required a manual restart.
17+
- |
18+
The sidebar menu did not display on the "Retired namespaces" page on the site admin dashboard.
19+
- |
20+
Site administrators could encounter a failure to load domain entries in the "Verified & Approved Domains" section of the site admin dashboard when one or more authoritative nameservers for the affected domain were unreachable or unresponsive due to inefficient DNS queries.
21+
- |
22+
Images embedded in Markdown tables did not display correctly.
23+
- |
24+
Deleted discussions could potentially prevent a repository from being exported using the export API or `ghe-migrator`.
25+
- |
26+
During an import, missing assignee models caused incomplete imports of issues, pull requests, and their dependent models.
27+
- |
28+
When the GitHub Enterprise Server application attempted to create an Elasticsearch index that already existed but lacked a routing configuration, the operation failed. This resulted in a state where the index appeared to exist, but the application could not write documents to it.
29+
- |
30+
Enterprise customers in very large organizations experienced performance issues with the GitHub API when making multiple API requests to retrieve Dependabot alerts for their enterprise.
31+
- |
32+
In some cases, a file in the code view would appear as JSON instead of HTML.
33+
- |
34+
Instances using Azure for migration API storage without a proxy configured could not export migration archives because the system incorrectly attempted to route requests through a proxy.
35+
- |
36+
When administrators downloaded large Advanced Security committer CSV files, the operation would fail due to insufficient timeout settings. The timeout duration has been increased to ensure successful downloads.
37+
- |
38+
Actions workflows were not able to access up to 1,000 organization variables when the total size of all variables was under 10 MB.
39+
- |
40+
Secret scanning alerts would sometimes incorrectly identify the location of a secret in a file after a custom pattern was edited.
41+
changes:
42+
- |
43+
Support tools now redact proxy credentials from their outputs in the admin terminal during connectivity checks.
44+
- |
45+
Live updates to the GitHub site were sometimes blocked by per-IP address rate limits, especially in environments where users accessed a GitHub Enterprise Server instance through a proxy.
46+
- |
47+
Merging a pull request using the "Rebase and merge" option is now limited to 100 commits. If you have a pull request with more than 100 commits, you can create a merge commit, or squash and merge, or split the commits into multiple pull requests.
48+
closing_down:
49+
- |
50+
Microsoft Exchange Online is retiring SMTP basic authentication in September 2025. If your GitHub Enterprise Server instance uses this method to send email, delivery may fail after the retirement date. Microsoft recommends switching to a supported alternative. As another option, you may consider using an SMTP OAuth proxy such as [email-oauth2-proxy](https://github.com/simonrob/email-oauth2-proxy), though this is not officially supported. For details and configuration guidance, see the [Microsoft announcement](https://techcommunity.microsoft.com/blog/exchange/exchange-online-to-retire-basic-auth-for-client-submission-smtp-auth/4114750) and the proxy’s [documentation](https://github.com/simonrob/email-oauth2-proxy/blob/main/emailproxy.config).
51+
known_issues:
52+
- |
53+
During the validation phase of a configuration run, a `No such object` error may occur for the Notebook and Viewscreen services. This error can be ignored as the services should still correctly start.
54+
- |
55+
If the root site administrator is locked out of the Management Console after failed login attempts, the account does not unlock automatically after the defined lockout time. Someone with administrative SSH access to the instance must unlock the account using the administrative shell. For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/troubleshooting-access-to-the-management-console#unlocking-the-root-site-administrator-account).
56+
- |
57+
On an instance with the HTTP `X-Forwarded-For` header configured for use behind a load balancer, all client IP addresses in the instance's audit log erroneously appear as 127.0.0.1.
58+
- |
59+
For an instance in a cluster configuration and with GitHub Actions enabled, restoring a cluster from backup requires targeting the primary DB node.
60+
- |
61+
When following instructions for [Replacing the primary MySQL node](/admin/monitoring-managing-and-updating-your-instance/configuring-clustering/replacing-a-cluster-node#replacing-the-primary-mysql-node), the step that includes running `ghe-cluster-config-apply` might fail with errors. If this occurs, re-running `ghe-cluster-config-apply` is expected to succeed.
62+
- |
63+
Running `ghe-cluster-config-apply` as part of the steps for [Replacing a node in an emergency](/admin/monitoring-managing-and-updating-your-instance/configuring-clustering/replacing-a-cluster-node#replacing-a-node-in-an-emergency) may fail with errors if the node being replaced is still reachable. If this occurs, shutdown the node and repeat the steps.
64+
- |
65+
{% data reusables.release-notes.2024-06-possible-frontend-5-minute-outage-during-hotpatch-upgrade %}
66+
- |
67+
When restoring data originally backed up from a 3.13 or greater appliance version, the Elasticsearch indices need to be reindexed before some of the data will show up. This happens via a nightly scheduled job. The reindexing can also be forced by running `/usr/local/share/enterprise/ghe-es-search-repair`.
68+
- |
69+
When restoring from a backup snapshot, a large number of `mapper_parsing_exception` errors may be displayed.
70+
- |
71+
After a restore, existing outside collaborators cannot be added to repositories in a new organization. This issue can be resolved by running `/usr/local/share/enterprise/ghe-es-search-repair` on the appliance.
72+
- |
73+
After a geo-replica is promoted to be a primary by running `ghe-repl-promote`, the actions workflow of a repository does not have any suggested workflows.
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
date: '2025-05-27'
2+
sections:
3+
security_fixes:
4+
- |
5+
**MEDIUM:** An attacker could inject HTML in the instances web UI because the web commit dialog did not properly sanitize repository rule violation messages. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com/).
6+
- |
7+
Packages have been updated to the latest security versions.
8+
bugs:
9+
- |
10+
Ephemeral runner registrations for GitHub Actions were not fully cleaned up after deletion.
11+
- |
12+
The alive process intermittently experienced segmentation faults (SIGSEGV) due to a `panic: runtime error: invalid memory address or nil pointer dereference` in the alive daemon during restore operations. These crashes caused services, such as mps, to appear unhealthy, leading to restore operation failures after 20 attempts.
13+
- |
14+
For instances in a high availability configuration, because there was no Nomad job for the `aqueduct-lite` service on replica nodes, generating a support bundle from the command line on a replica would result in the error `ERROR: Failed to get elastomer index build progress` being incorrectly reported.
15+
- |
16+
A pre-receive hook could fail due to blocked system calls.
17+
- |
18+
After updating the TLS certificate from the Management Console, users encountered 502 errors when creating releases and uploading artifacts. Running `ghe-config-apply` did not resolve the issue, as the alambic service required a manual restart.
19+
- |
20+
The sidebar menu did not display on the "Retired namespaces" page on the site admin dashboard.
21+
- |
22+
Site administrators could encounter a failure to load domain entries in the "Verified & Approved Domains" section of the site admin dashboard when one or more authoritative nameservers for the affected domain were unreachable or unresponsive due to inefficient DNS queries.
23+
- |
24+
When migrating from an instance with S3 on AWS Gov Cloud, an incorrect URL was generated.
25+
- |
26+
Images embedded in Markdown tables did not display correctly.
27+
- |
28+
Deleted discussions could potentially prevent a repository from being exported using the export API or `ghe-migrator`.
29+
- |
30+
During an import, missing assignee models caused incomplete imports of issues, pull requests, and their dependent models.
31+
- |
32+
When the GitHub Enterprise Server application attempted to create an Elasticsearch index that already existed but lacked a routing configuration, the operation failed. This resulted in a state where the index appeared to exist, but the application could not write documents to it.
33+
- |
34+
Enterprise customers in very large organizations experienced performance issues with the GitHub API when making multiple API requests to retrieve Dependabot alerts for their enterprise.
35+
- |
36+
Instances using Azure for migration API storage without a proxy configured could not export migration archives because the system incorrectly attempted to route requests through a proxy.
37+
- |
38+
When administrators downloaded large Advanced Security committer CSV files, the operation would fail due to insufficient timeout settings. The timeout duration has been increased to ensure successful downloads.
39+
- |
40+
The "Grouped security updates" button was not being displayed in the Dependabot settings at the organization and repository levels.
41+
- |
42+
Actions workflows were not able to access up to 1,000 organization variables when the total size of all variables was under 10 MB.
43+
- |
44+
Fetches from repository caches returned a "Repository not found" error when the cache is out of sync.
45+
- |
46+
Secret scanning alerts would sometimes incorrectly identify the location of a secret in a file after a custom pattern was edited.
47+
changes:
48+
- |
49+
Support tools now redact proxy credentials from their outputs in the admin terminal during connectivity checks.
50+
- |
51+
Live updates to the GitHub site were sometimes blocked by per-IP address rate limits, especially in environments where users accessed a GitHub Enterprise Server instance through a proxy.
52+
- |
53+
Merging a pull request using the "Rebase and merge" option is now limited to 100 commits. If you have a pull request with more than 100 commits, you can create a merge commit, or squash and merge, or split the commits into multiple pull requests.
54+
closing_down:
55+
- |
56+
Microsoft Exchange Online is retiring SMTP basic authentication in September 2025. If your GitHub Enterprise Server instance uses this method to send email, delivery may fail after the retirement date. Microsoft recommends switching to a supported alternative. As another option, you may consider using an SMTP OAuth proxy such as [email-oauth2-proxy](https://github.com/simonrob/email-oauth2-proxy), though this is not officially supported. For details and configuration guidance, see the [Microsoft announcement](https://techcommunity.microsoft.com/blog/exchange/exchange-online-to-retire-basic-auth-for-client-submission-smtp-auth/4114750) and the proxy’s [documentation](https://github.com/simonrob/email-oauth2-proxy/blob/main/emailproxy.config).
57+
known_issues:
58+
- |
59+
During the validation phase of a configuration run, a `No such object` error may occur for the Notebook and Viewscreen services. This error can be ignored as the services should still correctly start.
60+
- |
61+
If the root site administrator is locked out of the Management Console after failed login attempts, the account does not unlock automatically after the defined lockout time. Someone with administrative SSH access to the instance must unlock the account using the administrative shell. For more information, see [AUTOTITLE](/admin/configuration/administering-your-instance-from-the-management-console/troubleshooting-access-to-the-management-console#unlocking-the-root-site-administrator-account).
62+
- |
63+
On an instance with the HTTP `X-Forwarded-For` header configured for use behind a load balancer, all client IP addresses in the instance's audit log erroneously appear as 127.0.0.1.
64+
- |
65+
{% data reusables.release-notes.large-adoc-files-issue %}
66+
- |
67+
Admin stats REST API endpoints may timeout on appliances with many users or repositories. Retrying the request until data is returned is advised.
68+
- |
69+
When following instructions for [Replacing the primary MySQL node](/admin/monitoring-managing-and-updating-your-instance/configuring-clustering/replacing-a-cluster-node#replacing-the-primary-mysql-node), the step that includes running `ghe-cluster-config-apply` might fail with errors. If this occurs, re-running `ghe-cluster-config-apply` is expected to succeed.
70+
- |
71+
Running `ghe-cluster-config-apply` as part of the steps for [Replacing a node in an emergency](/admin/monitoring-managing-and-updating-your-instance/configuring-clustering/replacing-a-cluster-node#replacing-a-node-in-an-emergency) may fail with errors if the node being replaced is still reachable. If this occurs, shutdown the node and repeat the steps.
72+
- |
73+
{% data reusables.release-notes.2024-06-possible-frontend-5-minute-outage-during-hotpatch-upgrade %}
74+
- |
75+
When restoring data originally backed up from a 3.13 or greater appliance version, the Elasticsearch indices need to be reindexed before some of the data will show up. This happens via a nightly scheduled job. The reindexing can also be forced by running `/usr/local/share/enterprise/ghe-es-search-repair`.
76+
- |
77+
An organization-level code scanning configuration page is displayed on instances that do not use GitHub Advanced Security or code scanning.
78+
- |
79+
In the header bar displayed to site administrators, some icons are not available.
80+
- |
81+
When enabling automatic update checks for the first time in the Management Console, the status is not dynamically reflected until the "Updates" page is reloaded.
82+
- |
83+
When restoring from a backup snapshot, a large number of `mapper_parsing_exception` errors may be displayed.
84+
- |
85+
After a restore, existing outside collaborators cannot be added to repositories in a new organization. This issue can be resolved by running `/usr/local/share/enterprise/ghe-es-search-repair` on the appliance.
86+
- |
87+
After a geo-replica is promoted to be a primary by running `ghe-repl-promote`, the actions workflow of a repository does not have any suggested workflows.
88+
- |
89+
Repository cache replicas return `Repository not found` when changes have been pushed to the primary instance that have not yet synchronized to the cache replica. This issue can also occur in all previous patches of this release.
90+
- |
91+
Unexpected elements may appear in the UI on the repository overview page for locked repositories.

0 commit comments

Comments
 (0)