Enterprise Server 3.7.19
Download GitHub Enterprise Server 3.7.19December 21, 2023
📣 This is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.19: Security fixes
HIGH: A path traversal vulnerability was identified in GitHub Enterprise Server that allowed arbitrary file reading when building a GitHub Pages site. To exploit this vulnerability, an attacker would need permission to create and build a GitHub Pages site on the GitHub Enterprise Server instance. This vulnerability was reported via the GitHub Bug Bounty program and assigned CVE-2023-46645.
MEDIUM: An insertion of sensitive information into log file vulnerability was identified in the log files for a GitHub Enterprise Server backend service that could permit an adversary in the middle attack when combined with other phishing techniques. To exploit this, an attacker would need access to the log files for the GitHub Enterprise Server instance, a backup archive created with GitHub Enterprise Server Backup Utilities, or a service which received streamed logs. GitHub has requested CVE ID CVE-2023-6746 for this vulnerability.
MEDIUM: Due to an improper access control, an attacker could view private repository names by enumerating check run IDs with the "Get a check run" API endpoint. This vulnerability did not allow unauthorized access to any repository content other than the name. GitHub has requested CVE ID CVE-2023-46646 for this vulnerability, which was reported via the GitHub Bug Bounty program.
MEDIUM: An incorrect authorization vulnerability was identified that allowed issue comments to be updated with an improperly scoped token. This vulnerability did not allow unauthorized access to any repository content as it also required
contents.write
andissues.read
permissions. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2023-51379.MEDIUM: An incorrect authorization vulnerability was identified that allowed issue comments to be read with an improperly scoped token. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2023-51380.
LOW: To render interactive maps in an instance's web UI using Azure Maps, GitHub Enterprise Server has migrated from use of an unsecure Azure Maps API token to a more secure access token provided by role-based access control (RBAC) in Entra ID. After upgrading to this release, to re-enable interactive maps, an administrator must reconfigure authentication to Azure Maps in the Management Console. For more information, see "Configuring interactive maps."
To address scenarios that could lead to denial of service, HAProxy has been upgraded to version 2.8.4. [Updated 2024-01-03]
Packages have been updated to the latest security versions.
3.7.19: Bug fixes
When an administrator ran the
ghe-support-bundle
orghe-cluster-support-bundle
command, the-p
flag did not produce bundles with log durations as specified. The duration period can now only be specified indays
. Additionally, unnecessary files were sanitized by the commands.On an instance in a cluster configuration, upgrades could fail due to a background job running during database migration.
On an instance in a high availability configuration, the
ghe-repl-teardown
command failed when provided with a UUID.In some environments, stale
.backup
log files could accumulate in the system.On an instance hosted on AWS, when configuring GitHub Packages, virtual-hosted-style AWS S3 URLs would default to path-style URLs if a
region-code
was included. For more information, see Virtual hosting of buckets in the AWS documentation.Because the
|
character was not permitted, administrators could not add an SMTP username to authenticate with the Azure Communication Service.On an instance with a GitHub Advanced Security license and secret scanning enabled, site administrators using the
ghe-secret-scanning
command would not see a relevant error message if their input was invalid.After importing a migration archive using
ghe-migrator
or REST API endpoints for organization migrations, in some cases, some review comments within pull requests were not associated with lines of code.On an instance with a GitHub Advanced Security license and secret scanning enabled, secret scanning alert emails were sent to organization owners even if their email address did not comply with domain restrictions.
A missing executable on the PATH caused the
ghe-spokesctl ssh
command to fail.On an instance with GitHub Connect enabled, some system users were incorrectly counted as consuming a license following license sync.
A user in the process of being converted into an organization could be added as a collaborator on a repository. This resulted in the new organizations owners unexpectedly receiving access to the repository.
Pre-receive hook failures were not visible in the administrator audit log.
On an instance with a GitHub Advanced Security license and secret scanning enabled, dry runs sometimes incorrectly reported no results for custom patterns.
3.7.19: Changes
When adding a node to an instance, performance is improved during initial database replication.
An administrator can run the new
ghe-check-background-upgrade-jobs
command to ensure all upgrade jobs that run in the background have finished. This allows the administrator to know when they can start the next upgrade to their GitHub Enterprise Server instance.When using
ghe-migrator prepare
to import an archive, a missingschema.json
file results in anUnsupportedArchive
error rather than anUnsupportedSchemaVersion
error.As a security measure, GitHub Pages does not build sites that contain symbolic links except when using custom GitHub Actions workflows. When the page builder encounters a symbolic link, the build will fail with an error indicating that the symbolic link should be dereferenced. Custom workflows for GitHub Pages are available in GitHub Enterprise Server 3.7 and later.
3.7.19: Known issues
Custom firewall rules are removed during the upgrade process.
The GitHub Packages npm registry no longer returns a time value in metadata responses. This was done to allow for substantial performance improvements. We continue to have all the data necessary to return a time value as part of the metadata response and will resume returning this value in the future once we have solved the existing performance issues.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Custom patterns for secret scanning have
.*
as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the.*
delimiter.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support.
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance.
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.Restoring backups with
ghe-restore
on a GHES cluster will exit prematurely ifredis
has not restarted properly.The upgrade of
HAProxy
to version2.8.4
(to address scenarios that could lead to denial of service) is causing elevated error rates when HAProxy is upgraded as part of a hotpatch upgrade to a GitHub Enterprise Server instance. These elevated error rates should resolve within 5 minutes of the hotpatch being applied.Please note, when performing a hotpatch upgrade to GitHub Enterprise Server version 3.7.19 or higher you will encounter this known issue only if you are hotpatching from GitHub Enterprise Server version 3.7.18 or lower . [Updated 2024-01-03]
3.7.19: Deprecations
Interactive maps in the web UI no longer allow authentication using an Azure Maps API key
To allow users to render interactive maps in an instance's web UI by writing GeoJSON or TopoJSON syntax, GitHub Enterprise Server previously required a potentially unsecure API key for authentication with Azure Maps. If an administrator previously enabled interactive maps on an instance, the feature is disabled upon upgrade to this release.
To re-enable interactive maps for your instance, you must configure an application on an Entra ID tenant that has access to Azure Maps using role-based access control (RBAC). For more information, see "Configuring interactive maps" and the security fixes for this release.
Enterprise Server 3.7.18
Download GitHub Enterprise Server 3.7.18October 24, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.18: Security fixes
LOW: Due to an incorrect permission assignment for some configuration files, an attacker with access to a local operating system user account could read MySQL connection details including the MySQL password. [Updated: 2023-11-13]
Packages have been updated to the latest security versions.
3.7.18: Bug fixes
/var/log/lastlog
was not copied over as a sparse file duringghe-upgrade
, which could cause issues by using additional disk space.ghe-repl-status
did not identify Git replicas in certain incomplete states and incorrectly suggested that a failover could be performed safely. In some cases, this led to data loss during failover.Repository exports using
ghe-migrator
or the REST API's operation for organization migrations could fail when a large number of commit comments or long commit comments were present.On an instance with a GitHub Advanced Security license and secret scanning enabled, secret scanning suggested incorrect filters when viewing both open and closed alerts.
On an instance with multiple nodes,
ghe-spokes status
did not identify Git replicas in certain incomplete states, causing a false report that replication was in sync and leading to data loss or replication issues during failover.On an instance with a GitHub Advanced Security license and secret scanning enabled, dry runs sometimes incorrectly reported no results for custom patterns.
3.7.18: Changes
On an instance in a cluster configuration, administrators can identify the repository networks or gists that are common across a specified set of storage nodes using the
spokesctl find-on-replicas
command.As a security measure, GitHub Pages does not build sites that contain symbolic links except when using custom GitHub Actions workflows. This change strengthens GitHub Pages's symbolic link detection.
3.7.18: Known issues
Custom firewall rules are removed during the upgrade process.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Custom patterns for secret scanning have
.*
as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the.*
delimiter.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support.
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.17
Download GitHub Enterprise Server 3.7.17September 21, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.17: Security fixes
HTTP Strict Transport Security (HSTS) is enabled within the Management Console.
To prevent commits from a detached repository from syncing to prior forks that are now in a separate repository network, GitHub Enterprise Server closes pull requests between repositories during detachment.
Packages have been updated to the latest security versions.
3.7.17: Bug fixes
When displaying a list of subdomains in the Management Console, the list included the outdated
render
subdomain, and excluded the newercontainers
,docker
,notebook
, andviewscreen
subdomains.On an instance in a cluster configuration, the Cluster-Balance daemon would run against jobs not specified in the configuration.
Duplicated intermediate commit trailers wont appear in pull request squash messages.
On an instance with a GitHub Advanced Security license and secret scanning enabled, and when using Safari, changing additional match requirements for a custom pattern did not retrigger custom pattern evaluation against a user submitted test string.
When viewing git blame data, the reviewer menu was loaded even when the suggested reviewer calculation timed out.
When migrating a repository from a GitHub Enterprise Server instance to another location, the
ghe-migrator target_url
command allows you to record the repository's new location. The new URL is displayed when you visit the main page of the repository in the web interface.On an instance with subdomain isolation disabled, a notebook could not be loaded due to an extra
/
character in the URL path.On an instance with a GitHub Advanced Security license and secret scanning enabled, in some cases, custom patterns would erroneously show no results for a dry run.
3.7.17: Changes
Site administrators can see improved diagnostic information about repositories that have been deleted.
When providing data to GitHub Support, GitHub Enterprise Server displays a notice describing how support data is used before uploading the support files.
3.7.17: Known issues
Custom firewall rules are removed during the upgrade process.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Custom patterns for secret scanning have
.*
as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the.*
delimiter.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support.
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.16
Download GitHub Enterprise Server 3.7.16August 24, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.16: Security fixes
An authorization/sensitive information disclosure vulnerability was identified in GitHub Enterprise Server that allowed a fork to retain read access to an upstream repository after the fork's visibility was changed to private. This vulnerability was reported via the GitHub Bug Bounty Program and assigned CVE-2023-23763. [Updated: 2023-09-01]
Packages have been updated to the latest security versions.
3.7.16: Bug fixes
syslog-ng configurations for containerized services caused errors for log forwarding services. The configurations have been removed.
When an instance exhausted available memory, in some cases, the system's out-of-memory killer (OOMK) killed the process for
dockerd
, causing Nomad to fail to recover after systemd restarted Docker.When running the ghe-migrator, certain error messages contained an invalid link to import documentation.
On an instance with Dependabot alerts enabled, repository creation could fail if an organization owner did not set a primary email address.
On an instance with a GitHub Advanced Security license and secret scanning enabled, in some cases, custom patterns would erroneously show no results for a dry run.
3.7.16: Changes
Administrators with SSH access to an instance can view the version of GitHub Enterprise Server on the instance by using the
-v
flag with theghe-version
utility.As a security measure, GitHub Pages does not build sites that contain symbolic links except when using custom GitHub Actions workflows. When the page builder encounters a symbolic link, the build will fail with an error indicating that the symbolic link should be dereferenced. Custom workflows for GitHub Pages are available in GitHub Enterprise Server 3.7 and later.
3.7.16: Known issues
Custom firewall rules are removed during the upgrade process.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Custom patterns for secret scanning have
.*
as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the.*
delimiter.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-09-04]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.15
Download GitHub Enterprise Server 3.7.15August 10, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.15: Security fixes
LOW: An incorrect comparison vulnerability was identified in GitHub Enterprise Server that allowed commit smuggling by displaying an incorrect diff in a reopened pull request. To exploit this vulnerability, an attacker would need write access to the repository. This vulnerability was reported via the GitHub Bug Bounty program and was assigned CVE-2023-23766. [Updated: 2023-09-22]
Packages have been updated to the latest security versions.
3.7.15: Bug fixes
In rare circumstances, Git commits signed with SSH keys using the RSA algorithm would incorrectly indicate the signature was invalid.
Issues with cross references to pull requests from deleted accounts would not load.
The site admin page for organizations erroneously included a "Blocked Copilot Repositories" link.
The checks in the merge box for a pull request did not always match the the checks for the most recent commit in the pull request.
When a site administrator used GitHub Enterprise Importer on versions 3.7 and below to migrate repositories from GitHub Enterprise Server, the system backup size would increase after running many migrations due to storage files not being cleaned up.
API results were incomplete, and ordering of results was incorrect if
asc
ordesc
appeared in lowercase within the API query.A collaborator with the "Set the social preview" permission inherited from the "Read" role couldnt upload the social preview image of a repository.
In some cases, on an instance with GitHub Actions enabled, deployment of GitHub Pages site using a GitHub Actions workflow failed with a status of
deployment_lost
.On an instance in a high availability configuration, existing nodes with out-of-sync repositories prevented new nodes from replicating those repositories.
GitHub Enterprise Server was queuing zip jobs unnecessarily.
On an instance configured to use an outbound web proxy server, an administrator could not exclude private domains in this list from the proxy configuration. [Updated: 2023-11-27]
3.7.15: Changes
The description of the
ghe-cluster-balance
command line utility clarifies that it can be used to balance jobs other thangithub-unicorn
.Administrators can display all repositories in a network with
spokesctl
by using therepositories
subcommand.Site administrators can see improved diagnostic information about repositories that have been deleted.
The secondary abuse rate limits of the GraphQL API are now configurable in the Management Console. [Updated: 2023-09-01]
3.7.15: Known issues
Custom firewall rules are removed during the upgrade process.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Custom patterns for secret scanning have
.*
as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the.*
delimiter.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.14
Download GitHub Enterprise Server 3.7.14July 28, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.14: Known issues
Custom firewall rules are removed during the upgrade process.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
On an instance that is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles uploaded by a site administrator using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
3.7.14: Changes
Adjusted the timeout threshold for shutting down MySQL to prevent premature termination when upgrading to GHES 3.9.
Enterprise Server 3.7.13
Download GitHub Enterprise Server 3.7.13July 18, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.13: Security fixes
An attacker with access to the password hash of the root site administrator user for the instance's Management Console could make requests to the password API endpoint from outside of the instance.
Packages have been updated to the latest security versions.
LOW: An incorrect comparison vulnerability was identified in GitHub Enterprise Server that allowed commit smuggling by displaying an incorrect diff in a re-opened Pull Request. To exploit this vulnerability, an attacker would need write access to the repository. This vulnerability was reported via the GitHub Bug Bounty Program and was assigned CVE-2023-23765.
3.7.13: Bug fixes
If MinIO was configured for external blob storage on an instance with GitHub Actions enabled and MinIO was configured for bucket replication, the instance's credential validation with MinIO would occasionally fail.
Customers who use Azure Blob store as the remote blob provider to back GitHub Packages would have validation errors if the
EndpointSuffix
part of their Connection string was anything other thancore.windows.net
. Now all validEndpointSuffix
are accepted.After creation of a blob object from the web UI, pre-receive hook events were missing from the instance's audit log.
On an instance with custom firewall rules defined, a configuration run with
ghe-config-apply
could take longer than expected.On an instance with an outbound web proxy server configured, the proxy interfered with internal operations that used
nomad alloc exec
.On an instance in a cluster configuration, the
ghe-cluster-balance
behaved inconsistently when displaying status or managing jobs with more than one task group.On an instance configured for LDAP authentication, if the LDAP server sent an empty string for the
sshPublicKey
attribute, LDAP user sync would fail.When an administrator updated an instance's TLS certificate via the API as a query parameter instead of in the request body, the certificate and key appeared in
unicorn.log
.On an instance with Dependabot enabled, in some situations, Dependabot alerts were not updated when a user pushed to a repository.
Determining suggested reviewers on a pull request could time out or be very slow.
After a migration using GitHub Enterprise Importer, some repository autolink references were created with an incorrect format.
On an instance that was not configured to deliver email notifications using SMTP, background jobs to deliver email were enqueued unnecessarily.
Events related to repository notifications did not appear in the audit log.
On an instance with a GitHub Advanced Security license and secret scanning enabled, in some cases, a committer would not receive an email notification for a secret scanning alert where push protections were bypassed.
On an instance with a GitHub Advanced Security license, if a user filtered by a custom pattern on an organizations "Code & security analysis" page using an invalid query, the entire GitHub Advanced Security disappeared and an error reading "Sorry, something went wrong loading GitHub Advanced Security settings" appeared.
On an instance with a GitHub Advanced Security license and secret scanning enabled, output from Git for a push blocked by push protection always included an
http://
link.The audit log reported the incorrect target repository for pre-receive hook failures.
On an instance in a high availability configuration, existing nodes with out-of-sync repositories prevented new nodes from replicating those repositories.
On an instance with multiple nodes, when using the
spokesctl
command-line utility to manage repositories with replicas that failed to fully create, the utility would spuriously attempt to repair healthy replicas.
3.7.13: Changes
On an instance in a cluster configuration, the
ghe-cluster-config-check
command-line utility will return an affirmative message when no warnings or errors are detected. The affirmative message is "Configuration validation complete. No errors found."During initialization of a cluster configuration, output from the
ghe-cluster-config-init
command-line utility is improved and simplified.On an instance with 170 or fewer vCPUs, the default for
app.babeld.threads-max
is 512 instead of 3 times the number of vCPUs. The monitor dashboard also includes metrics within the "Babeld threads" section.The Management Console displays a warning about unexpected consequences that may result from modification of the instance's hostname after initial configuration.
3.7.13: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
Custom firewall rules are removed during the upgrade process.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.12
Download GitHub Enterprise Server 3.7.12June 20, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.12: Security fixes
If a user's request to the instance's API included authentication credentials within a URL parameter, administrators could see the credentials in JSON within the instance's audit log.
Packages have been updated to the latest security versions.
3.7.12: Bug fixes
If an administrator updated the instance's TLS certificate using the Management Console API's Set settings endpoint, sending the certificate and key data as a URL query parameter resulted in the data appearing unmasked in system logs.
After an enterprise owner set a permanent rate limit for a users GitHub App at
http(s)://HOSTNAME/stafftools/users/USERNAME/installations
, the instance did not respect the rate limit.If an instance had tens of thousands of deleted repositories, an upgrade to GitHub Enterprise Server 3.7 could take longer than expected.
On an instance with multiple nodes, when using the
spokesctl
command-line utility to manage repositories with replicas that failed to fully create, the utility would spuriously attempt to repair healthy replicas.
3.7.12: Changes
If a configuration runs fails due to Elasticsearch errors,
ghe-config-apply
displays a more actionable error message.
3.7.12: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]Custom firewall rules are removed during the upgrade process.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
When using an outbound web proxy server, the
ghe-btop
command may fail in some circumstances with the error "Error querying allocation: Unexpected response code: 401".If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.11
Download GitHub Enterprise Server 3.7.11May 30, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.11: Security fixes
MEDIUM: Scoped installation tokens for a GitHub App kept approved permissions after the permissions on the integration installation were downgraded or removed. This vulnerability was reported via the GitHub Bug Bounty program.
3.7.11: Bug fixes
On an instance in a cluster configuration, when upgrading the MySQL master node, the post-upgrade configuration run would take 600 seconds longer than required due to incorrect detection of unhealthy nodes.
In some situations on an instance with multiple nodes, Git replication failed to fully replicate repositories that had previously been deleted, which resulted in a warning in
ghe-repl-status
output.If an instance had tens of thousands of deleted repositories, an upgrade to GitHub Enterprise Server 3.7 could take longer than expected.
On an instance with the dependency graph enabled, the correct path appears for manifests that originate from build-time submission snapshots.
3.7.11: Changes
People with administrative SSH access to an instance can configure the maximum memory usage in gigabytes for Redis using
ghe-config redis.max-memory-gb VALUE
.
3.7.11: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]Custom firewall rules are removed during the upgrade process.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
When using an outbound web proxy server, the
ghe-btop
command may fail in some circumstances with the error "Error querying allocation: Unexpected response code: 401".If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. The performance of this upgrade has been improved in 3.6.14 and 3.7.11, however if you have tens of thousands of recently deleted repositories the upgrade could still take multiple hours. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have tens of thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-30]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.10
Download GitHub Enterprise Server 3.7.10May 09, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.10: Security fixes
MEDIUM: Updated Git to include fixes from 2.40.1. For more information, see Git security vulnerabilities announced on the GitHub Blog.
3.7.10: Bug fixes
Users were unable to upload GIF files as attachments within a comment in an issue or pull request.
On an instance in a high availability configuration, a
git push
operation could fail if GitHub Enterprise Server was simultaneously creating the repository on a replica node.A site administrator could not bypass a proxy for a top-level domain (TLD) from the instance's exception list or IANAs registered top-level domains (TLDs).
On some platforms, after someone with administrative SSH access ran
ghe-diagnostics
, the command's output included a cosmeticSG_IO
error.In some cases on an instance with a GitHub Advanced Security license, users could not load the security analysis page and saw a
500
error.When a site administrator used GitHub Enterprise Importer to import data from GitHub Enterprise Cloud, migrations failed during the import of file-level comments. This failure no longer prevents the import from proceeding.
On an instance with a GitHub Advanced Security license, users with the security manager role for an organization could not view GitHub Advanced Security settings for the organization.
If a user clicked the link to share feedback or report bugs for the beta of user lists, the web interface responded with a
404
error.When a site administrator used GitHub Enterprise Importer, import of a repository failed if a project column in the repository contained 2,500 or more archived cards.
On an instance with Dependabot alerts enabled, alerts were erroneously hidden when different vulnerabilities were detected by multiple build-time submission detectors.
GitHub Enterprise Server published distribution metrics that cannot be processed by collectd. The metrics included
pre_receive.lfsintegrity.dist.referenced_oids
,pre_receive.lfsintegrity.dist.unknown_oids
, andgit.hooks.runtime
.In some cases, on an instance with GitHub Actions enabled, deployment of GitHub Pages site using a GitHub Actions workflow failed with a status of
deployment_lost
.On an instance with a GitHub Advanced Security license that was also configured for a timezone greater than UTC, the list of secret scanning alerts displayed a "Loading secrets failed" error if a user sorted secrets by date in descending order.
3.7.10: Changes
On an instance with the dependency graph enabled, background services can handle more traffic.
People with administrative SSH access who generate a support bundle using the
ghe-support-bundle
orghe-cluster-support-bundle
utilities can specify the period of time to gather data with-p
or--period
without using spaces or quotes. For example, in addition to'-p 5 days'
or-p '4 days 10 hours'
,-p 5days
or-p 4days10hours
are valid.
3.7.10: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]Custom firewall rules are removed during the upgrade process.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.On an instance in a high-availability configuration, passive replica nodes accept Git client requests and forward the requests to the primary node.
When using an outbound web proxy server, the
ghe-btop
command may fail in some circumstances with the error "Error querying allocation: Unexpected response code: 401".If an instance is configured to forward logs to a target server with TLS enabled, certificate authority (CA) bundles that a site administrator uploads using
ghe-ssl-ca-certificate-install
are not respected, and connections to the server fail.When running
ghe-config-apply
, the process may stall with the messageDeployment is running pending automatic promotion
.An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories.
On an instance with audit log streaming enabled, the
driftwood
service does not start, preventing the normal operation of audit log streaming. [Updated: 2023-06-06]In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.9
Download GitHub Enterprise Server 3.7.9April 18, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.9: Security fixes
MEDIUM: An attacker with write access to a repository could craft a pull request that would hide commits made in its source branch. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2023-23764. [Updated: 2023-07-26]
3.7.9: Bug fixes
On an instance with GitHub Actions enabled, nested calls to reusable workflows within a reusable workflow job with a matrix correctly evaluate contexts within expressions, like
strategy: ${{ inputs.strategies }}
.Download requests for Git LFS objects did not complete until reporting the final download size, which affected the latency of these requests, particularly on an instance with nodes functioning as repository caches.
For instances with both GitHub Connect and automatic access to GitHub.com actions enabled, Dependabot would fail to update actions hosted on GitHub.com.
In some cases on an instance with a GitHub Advanced Security license, users could not load the security analysis page and saw a
500
error.On an instance with GitHub Connect enabled, if "Users can search GitHub.com" was enabled, issues in private and internal repositories were not included in users search results for GitHub.com.
After restoration of a deleted organization, the organization did not appear in the instance's list of organizations.
Collectd logs could grow rapidly in size due to the inclusion of
kredz.*
metrics, which can't be parsed by StatsD and resulted in error messages.Dropped
launch.*
metrics that can't be parsed by statsd, as the resulting statsd errors caused collectd logs to grow rapidly in size.
3.7.9: Changes
If a site administrator provides an invalid configuration for blob storage for GitHub Actions or GitHub Packages on an instance, the preflight checks page displays details and troubleshooting information.
3.7.9: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]Custom firewall rules are removed during the upgrade process.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.8
Download GitHub Enterprise Server 3.7.8March 23, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.8: Security fixes
HIGH: Addressed an improper authentication vulnerability that allowed an unauthorized actor to modify other users' secret gists by authenticating through an SSH certificate authority. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2023-23761. [Updated: 2023-04-07]
MEDIUM: Addressed an incorrect comparison vulnerability that allowed commit smuggling by displaying an incorrect diff. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2023-23762. [Updated: 2023-04-07]
3.7.8: Bug fixes
On an instance with GitHub Actions enabled, nested calls to reusable workflows within a reusable workflow job with a matrix correctly evaluate contexts within expressions, like
strategy: ${{ inputs.strategies }}
.On an instance in a high availability configuration, a
git push
operation could fail if GitHub Enterprise Server was simultaneously creating the repository on a replica node.In the Management Console's monitor dashboard, the
Cached Requests
andServed Requests
graphs, which are retrieved by thegit fetch catching
command, did not display metrics for the instance.After a site administrator exempted the @github-actions[bot] user from rate limiting by using the
ghe-config app.github.rate-limiting-exempt-users "github-actions[bot]"
command, runningghe-config-check
caused aValidation is-valid-characterset failed
warning to appear.GitHub Actions (
actions
) and Microsoft SQL (mssql
) did not appear in the list of processes within the instances monitor dashboard.In some cases, graphs on the Management Console's monitor dashboard failed to render.
On an instance in a high availability configuration, if an administrator tore down replication from a replica node using
ghe-repl-teardown
immediately after runningghe-repl-setup
, but beforeghe-repl-start
, an error indicated that the scriptcannot launch /usr/local/bin/ghe-single-config-apply - run is locked
.ghe-repl-teardown
now displays an informational alert and continues the teardown.After an administrator used the
/setup/api/start
REST API endpoint to upload a license, the configuration run failed with aConnection refused
error during the migrations phase.On an instance in a cluster configuration, when a site administrator set maintenance mode using
ghe-maintenance -s
, aPermission denied
error appeared when the utility tried to access/data/user/common/cluster.conf
.During configuration of high availability, if a site administrator interrupted the
ghe-repl-start
utility, the utility erroneously reported that replication was configured, and the instance would not perform expected clean-up operations.On instances configured to use the private beta of SCIM for GitHub Enterprise Server, users' authentication with SSH keys and personal access tokens failed due to an erroneous requirement for authorization.
After a user imported a repository with push protection enabled, the repository was not immediately visible in the security overview's "Security Coverage" view.
Responses from the
/repositories
REST API endpoint erroneously included deleted repositories.When a site administrator used
ghe-migrator
to migrate data to GitHub Enterprise Server, in some cases, nested team relationships would not persist after teams were imported.If a repository contained a
CODEOWNERS
file with check annotations, pull requests "Files changed" tab returned a500
error and displayed "Oops, something went wrong" in the "Unchanged files with check annotations" section.On an instance with GitHub Actions enabled, if a user manually triggered a workflow using the REST API but did not specify values for optional booleans, the API failed to validate the request and returned a
422
error.The CSV reports for all users and all active users, available from the site admin dashboard, did not consider recent access using SSH or personal access tokens.
In some cases on an instance with multiple nodes, GitHub Enterprise Server erroneously stopped writing to replica fileservers, causing repository data to fall out of sync.
GitHub Enterprise Server published distribution metrics that cannot be processed by collectd. The metrics included
pre_receive.lfsintegrity.dist.referenced_oids
,pre_receive.lfsintegrity.dist.unknown_oids
, andgit.hooks.runtime
.On an instance with a GitHub Advanced Security license, if code scanning had been used while running GitHub Enterprise Server 3.4 or earlier, a subsequent upgrade from 3.5 to 3.6 or 3.7 could fail when attempting to add a unique index to a database table.
An enterprise owner could not enable two-factor authentication (2FA) for an instance if any enterprise owners had not enabled 2FA for their user accounts. [Updated: 2023-04-17]
On an instance with GitHub Packages enabled, after users pushed to the Container registry, the instance erroneously responded with a
429 Too Many Requests
error in cases when the instance could accommodate the request. The limits have been raised, and users should receive this message less often. [Updated: 2023-05-30]
3.7.8: Changes
When the dependency submission API received a submission with one or more dependencies without a version, the dependency graph will now correctly report this fact.
To avoid a failure during a configuration run on a cluster, validation of
cluster.conf
with theghe-cluster-config-check
utility ensures that theconsul-datacenter
field for each node matches the top-levelprimary-datacenter
field.On an instance in a cluster configuration, when a site administrator sets maintenance mode on a single cluster node using
ghe-maintenance -s
, the utility warns the administrator to useghe-cluster-maintenance -s
to set maintenance mode on all of the clusters nodes. For more information, see "Enabling and scheduling maintenance mode."When a site administrator configures an outbound web proxy server for GitHub Enterprise Server, the instance now validates top-level domains (TLDs) excluded from the proxy configuration. By default, you can exclude public TLDs that the IANA specifies. Site administrators can specify a list of unregistered TLDs to exclude using
ghe-config
. The.
prefix is required for any public TLDs. For example,.example.com
is valid, butexample.com
is invalid. For more information, see "Configuring an outbound web proxy server."To avoid intermittent issues with the success of Git operations on an instance with multiple nodes, GitHub Enterprise Server checks the status of the MySQL container before attempting a SQL query. The timeout duration has also been reduced.
The default path for output from
ghe-saml-mapping-csv -d
is/data/user/tmp
instead of/tmp
. For more information, see "Command-line utilities."
3.7.8: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
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.An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.7
Download GitHub Enterprise Server 3.7.7March 02, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.7: Security fixes
HIGH: A path traversal vulnerability was identified in GitHub Enterprise Server that allowed remote code execution when building a GitHub Pages site. To exploit this vulnerability, an attacker would need permission to create and build a GitHub Pages site on the GitHub Enterprise Server instance. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2023-23760. [Updated: 2023-03-10]
3.7.7: Bug fixes
When viewing a list of open sessions for the devices logged into a user account, the GitHub Enterprise Server web UI could display an incorrect location.
In the rare case when primary shards for Elasticsearch were located on a replica node, the
ghe-repl-stop
command would fail withERROR: Running migrations
.
3.7.7: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results.
Actions services need to be restarted after restoring an instance from a backup taken on a different host.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
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.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In some cases, while converting an issue to a discussion, the conversion process may hang. In this situation, an enterprise owner can try the following troubleshooting steps to resolve the issue.
- At the end of the stuck discussion's URL, note the discussion's number.
- In the web UI, browse to the repository where the conversion is stuck.
- In the top-right corner of the web UI, click .
- Under "Collaboration", click NUMBER discussions.
- In the list, click the number from step 1.
- Under "Conversion", click Enqueue conversion job.
- Wait a few minutes, then check the issue's status.
If the conversion still hasn't completed, contact GitHub Enterprise Support for assistance.
On instances in a high availability configuration,
git push
operations may fail in the following situations.- During creation of the repository on a replica node
- After failure to create the repository on a replica node, before automatic repair of the repository [Updated: 2023-03-17]
On instances in a high availability configuration, site administrators should only run the
ghe-repl-start
andghe-repl-stop
commands while the instance is in maintenance mode. For more information, see "Enabling and scheduling maintenance mode" and "About high availability configuration." [Updated: 2023-03-17]An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.6
Download GitHub Enterprise Server 3.7.6February 16, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.6: Security fixes
HIGH: Updated Git to include fixes from 2.39.2, which address CVE-2023-22490 and CVE-2023-23946.
HIGH: A path traversal vulnerability was identified in GitHub Enterprise Server that allowed arbitrary file reading when building a GitHub Pages site. To exploit this vulnerability, an attacker would need permission to create and build a GitHub Pages site on the instance. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2023-22380.
Packages have been updated to the latest security versions.
3.7.6: Bug fixes
When using a VPC endpoint URL as an AWS S3 URL for GitHub Packages, publication and installation of packages failed.
For instances with both GitHub Connect and automatic access to GitHub.com actions enabled, Dependabot would fail to update actions hosted on GitHub.com.
The CSV file containing details about GitHub Advanced Security contributors could not be downloaded if the instance did not have a GitHub Advanced Security license.
Collectd logs could grow rapidly in size due to the inclusion of
kredz.*
metrics, which can't be parsed by StatsD and resulted in error messages.On an instance with a GitHub Advanced Security license, if code scanning had been used while running GitHub Enterprise Server 3.4 or earlier, a subsequent upgrade from 3.5 to 3.6 or 3.7 could fail when attempting to add a unique index to a database table.
3.7.6: Changes
After the Dependency submission REST API receives a submission with one or more dependencies without a version, the dependency graph will now correctly report this fact.
3.7.6: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results.
Actions services need to be restarted after restoring an instance from a backup taken on a different host.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
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.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In some cases, while converting an issue to a discussion, the conversion process may hang. In this situation, an enterprise owner can try the following troubleshooting steps to resolve the issue.
- At the end of the stuck discussion's URL, note the discussion's number.
- In the web UI, browse to the repository where the conversion is stuck.
- In the top-right corner of the web UI, click .
- Under "Collaboration", click NUMBER discussions.
- In the list, click the number from step 1.
- Under "Conversion", click Enqueue conversion job.
- Wait a few minutes, then check the issue's status.
If the conversion still hasn't completed, contact GitHub Enterprise Support for assistance.
On instances in a high availability configuration,
git push
operations may fail in the following situations.- During creation of the repository on a replica node
- After failure to create the repository on a replica node, before automatic repair of the repository [Updated: 2023-03-17]
On instances in a high availability configuration, site administrators should only run the
ghe-repl-start
andghe-repl-stop
commands while the instance is in maintenance mode. For more information, see "Enabling and scheduling maintenance mode" and "About high availability configuration." [Updated: 2023-03-17]An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.5
Download GitHub Enterprise Server 3.7.5February 02, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.5: Security fixes
MEDIUM: A code injection vulnerability was identified in GitHub Enterprise Server that allowed setting arbitrary environment variables from a single environment variable value in GitHub Actions when using a Windows based runner due to improper sanitization of null bytes. To exploit this vulnerability, an attacker would need existing permission to control the value of environment variables for use with GitHub Actions. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2023-22381.
Packages have been updated to the latest security versions.
3.7.5: Bug fixes
After a site administrator adjusted the cutoff date for allowing SSH connections with RSA keys using
ghe-config app.gitauth.rsa-sha1
, the instance would still disallow connections with RSA keys if the connection attempt was signed by the SHA-1 hash function.During the validation phase of a configuration run, a
No such object error
may have occurred for the Notebook and Viewscreen services.After disabling Dependabot updates, the avatar for Dependabot was displayed as the @ghost user in the Dependabot alert timeline.
In some cases, users could experience a
500
error when viewing the Code security & analysis settings page for an instance with a very high number of active committers.Some links to contact GitHub Support or view the GitHub Enterprise Server release notes were incorrect.
The additional committers count for GitHub Advanced Security always showed 0.
In some cases, users were unable to convert existing issues to discussions. If an issue is stuck while being converted to a discussion, enterprise owners can review the "Known issues" section below for more information.
3.7.5: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results.
Actions services need to be restarted after restoring an instance from a backup taken on a different host.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
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.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
In some cases, while converting an issue to a discussion, the conversion process may hang. In this situation, an enterprise owner can try the following troubleshooting steps to resolve the issue.
- At the end of the stuck discussion's URL, note the discussion's number.
- In the web UI, browse to the repository where the conversion is stuck.
- In the top-right corner of the web UI, click .
- Under "Collaboration", click NUMBER discussions.
- In the list, click the number from step 1.
- Under "Conversion", click Enqueue conversion job.
- Wait a few minutes, then check the issue's status.
If the conversion still hasn't completed, contact GitHub Enterprise Support for assistance.
On instances in a high availability configuration,
git push
operations may fail in the following situations.- During creation of the repository on a replica node
- After failure to create the repository on a replica node, before automatic repair of the repository [Updated: 2023-03-17]
On instances in a high availability configuration, site administrators should only run the
ghe-repl-start
andghe-repl-stop
commands while the instance is in maintenance mode. For more information, see "Enabling and scheduling maintenance mode" and "About high availability configuration." [Updated: 2023-03-17]An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.4
Download GitHub Enterprise Server 3.7.4January 17, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.4: Security fixes
-
HIGH: Updated Git to include fixes from 2.39.1, which address CVE-2022-41903 and CVE-2022-23521.
3.7.4: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results.
Actions services need to be restarted after restoring an instance from a backup taken on a different host.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
In some cases, users cannot convert existing issues to discussions.
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.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
On instances in a high availability configuration,
git push
operations may fail in the following situations.- During creation of the repository on a replica node
- After failure to create the repository on a replica node, before automatic repair of the repository [Updated: 2023-03-17]
On instances in a high availability configuration, site administrators should only run the
ghe-repl-start
andghe-repl-stop
commands while the instance is in maintenance mode. For more information, see "Enabling and scheduling maintenance mode" and "About high availability configuration." [Updated: 2023-03-17]An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.3
Download GitHub Enterprise Server 3.7.3January 12, 2023
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.3: Security fixes
Sanitize additional secrets in support bundles and the configuration log.
Dependencies for the CodeQL action have been updated to the latest security versions.
Packages have been updated to the latest security versions.
3.7.3: Bug fixes
Some services incorrectly connected directly to kafka-lite instead of through its internal proxy. In a cluster environment where web services and job services execute on separate nodes, messages generated from the Insights job service werent delivered to kafka-lite.
The metrics
Active workers
andQueued requests
forgithub
(renamed from metadata),gitauth
, andunicorn
container services werent correctly read from collectd and displayed in the Management Console.Dependabot Alert emails would be sent to disabled repositories.
Data migrations could fail when the underlying database table contained only a single record.
Sorting and filtering the list of custom patterns for secret scanning at the organization level did not work correctly.
After upgrading to GitHub Enterprise Server 3.7, viewing the security settings page for an organization or repository could result in a
500
error due to a GitHub Advanced Security backfill job not completing before the upgrade started.The
git-janitor
command was unable to fix outdatedmulti-pack-index.lock
files, resulting in the repository failing maintenance.Dropped
launch.*
metrics that can't be parsed by statsd, as the resulting statsd errors caused collectd logs to grow rapidly in size.When updating custom patterns, the pattern state was immediately set to published.
3.7.3: Changes
Improved the reliability of the real time updates service (Alive) to make it more resilient against network issues with Redis.
The
ghe-support-bundle
andghe-cluster-support-bundle
commands were updated to include the-p/--period
flag to generate a time constrained support bundle. The duration can be specified in days and hours, for example:-p '2 hours'
,-p '1 day'
,-p '2 days 5 hours'
.When upgrading an instance with a new root partition, running the
ghe-upgrade
command with the-t/--target
option ensures the preflight check for the minimum disk storage size is executed against the target partition.The performance of configuration runs started with
ghe-config-apply
has been improved.When exporting account data, backing up a repository, or performing a migration, the link to a repository archive now expires after 1 hour. Previously the archive link expired after 5 minutes.
3.7.3: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results.
Actions services need to be restarted after restoring an instance from a backup taken on a different host.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
In some cases, users cannot convert existing issues to discussions.
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.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
On instances in a high availability configuration,
git push
operations may fail in the following situations.- During creation of the repository on a replica node
- After failure to create the repository on a replica node, before automatic repair of the repository [Updated: 2023-03-17]
On instances in a high availability configuration, site administrators should only run the
ghe-repl-start
andghe-repl-stop
commands while the instance is in maintenance mode. For more information, see "Enabling and scheduling maintenance mode" and "About high availability configuration." [Updated: 2023-03-17]An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.2
Download GitHub Enterprise Server 3.7.2December 13, 2022
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.2: Security fixes
HIGH: A path traversal vulnerability was identified in GitHub Enterprise Server that allowed remote code execution when building a GitHub Pages site. To exploit this vulnerability, an attacker would need permission to create and build a GitHub Pages site on the instance. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2022-46256.
3.7.2: Bug fixes
A race condition blocked upgrades to GitHub Enterprise Server 3.6 or later until a site administrator retried the upgrade.
When a site administrator ran the
ghe-repl-status
command on a cache replica via the administrative shell (SSH), the command incorrectly reported overall Git and Alambic cluster replication status information as if it pertained only to cache replication.When a site administrator ran the
ghe-repl-sync-ca-certificates
command from an instances primary node via the administrative shell (SSH), the command only replicated CA certificates from the instances primary node to a single replica node. The command did not replicate the certificates to all available replica nodes.In a high availability configuration, after promotion of a replica to be the primary node, a site administrator could not force replication to stop on a secondary replica node using the
ghe-repl-stop -f
command.When using repository caching with an instance in a high availability configuration, if a Git client used SSH instead of HTTPS for a repositorys remote URL, Git LFS would fetch objects from the instances primary node instead of the appropriate cache replica node.
Installation of GitHub Enterprise Server on the VMware ESXi hypervisor failed due to the generation of an OVA file with an invalid capacity value.
When users performed an operation using the API, GitHub Enterprise Server enforced repository size quotas even when disabled globally.
In some cases, searches via the API returned a
500
error.Adding a collaborator to a user-owned fork of a private, organization-owned repository with triage, maintain, or custom access resulted in a
500
error.In some cases, the page for setting up code scanning would erroneously report that GitHub Actions was not configured for the instance.
Dismissing a Dependabot alert that contained certain characters could result in a
400
error.After a user's account was deleted from the instance, image attachments that the user uploaded in comments were no longer visible in the web interface.
On an instance that uses SAML for authentication, the Configure SSO dropdown menu appeared erroneously for personal access tokens and SSH keys.
An upgrade from GitHub Enterprise Server 3.5 to 3.7 could fail because the instance had not yet purged deleted repositories.
In a high availability or repository caching configuration, Unicorn services on nodes other than the primary node were unable to send log events to the primary node.
Fixes a bug in which a GHES log file could get filled very quickly and cause the root drive to run out of free space.
When viewing code scanning results for Ruby, an erroneous beta label appeared.
3.7.2: Changes
After an enterprise owner enables Dependabot alerts, GitHub Enterprise Server enqueues the synchronization of advisory data to ensure hourly updates from GitHub.com.
A user's list of recently accessed repositories no longer includes deleted repositories.
For participants in the private beta of SCIM for GitHub Enterprise Server, custom mappings for SAML user attributes are now supported. Custom mappings allow the use of a value other than
NameID
as the unique identifying claim during SAML authentication. For more information, see "Configuring user provisioning with SCIM for your enterprise." [Updated: 2023-02-27]
3.7.2: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results.
Actions services need to be restarted after restoring an instance from a backup taken on a different host.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
In some cases, users cannot convert existing issues to discussions.
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.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
When validating domain settings on an instance with TLS and subdomain isolation enabled, the Management Console does not display GitHub Enterprise Server 3.7's two new subdomains,
http(s)://notebooks.HOSTNAME
andhttp(s)://viewscreen.HOSTNAME
, in the list of domains. [Updated: 2023-01-12]For participants in the private beta of SCIM for GitHub Enterprise Server, authentication for requests to resources other than the REST API using a personal access token or SSH key may not succeed. A fix will be available in a forthcoming release of GitHub Enterprise Server. [Updated: 2023-02-27]
On instances in a high availability configuration,
git push
operations may fail in the following situations.- During creation of the repository on a replica node
- After failure to create the repository on a replica node, before automatic repair of the repository [Updated: 2023-03-17]
On instances in a high availability configuration, site administrators should only run the
ghe-repl-start
andghe-repl-stop
commands while the instance is in maintenance mode. For more information, see "Enabling and scheduling maintenance mode" and "About high availability configuration." [Updated: 2023-03-17]An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.1
Download GitHub Enterprise Server 3.7.1November 22, 2022
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
3.7.1: Security fixes
HIGH: An improper neutralization of argument delimiters in a command vulnerability was identified in GitHub Enterprise Server that enabled remote code execution. To exploit this vulnerability, an attacker would need permission to create and build GitHub Pages using GitHub Actions. This bug was originally reported via GitHub's Bug Bounty program and assigned CVE-2022-23740. [Updated: 2022-12-02]
HIGH: A check was added within Pages to ensure the working directory is clean before unpacking new content to prevent an arbitrary file overwrite bug. This vulnerability has been assigned CVE-2022-46255.
MEDIUM: Updated CommonMarker to address a scenario where parallel requests to the Markdown REST API could result in unbounded resource exhaustion. This vulnerability has been assigned CVE-2022-39209.
MEDIUM: Scoped user-to-server tokens from GitHub Apps could bypass authorization checks in GraphQL API requests when accessing non-repository resources. This vulnerability was reported via the GitHub Bug Bounty Program and has been assigned CVE-2022-23739.
MEDIUM: Pull request preview links did not properly sanitize URLs, allowing a malicious user to embed dangerous links in the instances web UI. This vulnerability was reported via the GitHub Bug Bounty program.
3.7.1: Bug fixes
If a GitHub Actions dependency uses a pinned SHA version, Dependabot will no longer mark the dependency as vulnerable.
Running the
ghe-spokesctl
command returned afailed to get repo metrics
error.Setting the maintenance mode with an IP Exception List would not persist across upgrades.
GitHub Pages builds could time out on instances in AWS that are configured for high availability.
Status details for the replication of Git LFS objects to repository cache replica nodes were not visible in the
ghe-repl-status
output on those nodes.The audit log timestamp for Dependabot alert events returned the creation date of the alert instead of the timestamp when a user took action on the alert.
When accessing an instances JavaScript resources from behind a proxy, the browser displayed Cross-Origin Resource Sharing (CORS) errors.
If a user named a status check with leading or trailing spaces, the instance created a duplicate check if another check existed with the same name and no leading or trailing spaces.
If a user configured a pre-receive hook for multiple repositories, the instances Hooks page would not always display the correct status for the hook.
In some cases, an instance could replace an active repository with a deleted repository.
Git LFS objects in a repository with a cache replication policy would not be copied to cache replicas if the total number of objects in the repository exceeded 5,000.
After running migrations for the GitHub Enterprise Importer on an instance configured for high availability, replication of migration storage assets would not catch up.
Zombie processes no longer accumulate in the
gitrpcd
container.On an instance with GitHub Packages configured, package upload and installation could fail for customers using a VPC endpoint URL for AWS S3 blob storage.
In some cases, after upgrading to GitHub Enterprise Server 3.7.0, users may encounter
Internal Server Error
or500
errors when initiating Git operations over SSH or HTTPS.
3.7.1: Changes
If a site administrator has not yet configured GitHub Actions for the instance, the UI for setting up code scanning will prompt the user to configure GitHub Actions.
To avoid failing domain verification due to the 63-character limit enforced by DNS providers for DNS records, the GitHub-generated
TXT
record to verify domain ownership is now limited to 63 characters.
3.7.1: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results.
Resource limits that are specific to processing pre-receive hooks may cause some pre-receive hooks to fail.
Actions services need to be restarted after restoring an instance from a backup taken on a different host.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
In some cases, users cannot convert existing issues to discussions.
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.Following an upgrade to GitHub Enterprise Server 3.6 or later, existing inconsistencies in a repository such as broken refs or missing objects, may now be reported as errors like
invalid sha1 pointer 0000000000000000000000000000000000000000
,Zero-length loose reference file
, orZero-length loose object file
. Previously, these indicators of repository corruption may have been silently ignored. GitHub Enterprise Server now uses an updated Git version with more diligent error reporting enabled. For more information, see this upstream commit in the Git project.If you suspect a problem like this exists in one of your repositories, contact GitHub Enterprise Support for assistance.
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
When validating domain settings on an instance with TLS and subdomain isolation enabled, the Management Console does not display GitHub Enterprise Server 3.7's two new subdomains,
http(s)://notebooks.HOSTNAME
andhttp(s)://viewscreen.HOSTNAME
, in the list of domains. [Updated: 2023-01-12]On instances in a high availability configuration,
git push
operations may fail in the following situations.- During creation of the repository on a replica node
- After failure to create the repository on a replica node, before automatic repair of the repository [Updated: 2023-03-17]
On instances in a high availability configuration, site administrators should only run the
ghe-repl-start
andghe-repl-stop
commands while the instance is in maintenance mode. For more information, see "Enabling and scheduling maintenance mode" and "About high availability configuration." [Updated: 2023-03-17]An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
Enterprise Server 3.7.0
Download GitHub Enterprise Server 3.7.0October 25, 2022
📣 This is not the latest patch release of this release series, and this is not the latest release of Enterprise Server. Please use the latest release for the latest security, performance, and bug fixes.
For upgrade instructions, see "Upgrading GitHub Enterprise Server."
3.7.0: Features
Instance administration
To increase the security of the Management Console, site administrators can configure the rate limit for sign-in attempts, as well as the lockout duration after exceeding the rate limit. For more information, see "Configuring rate limits."
The minimum password requirements for the Management Console are more stringent.
Attempts to authenticate to the Management Console and changes made by a site administrator within the Management Console are written to a log file in
/var/log/enterprise-manage/audit.log
.
Instance services
Azure Maps replaces MapBox for rendering GeoJSON files as graphical maps. Administrators can enable map rendering and provide an Azure Maps token in the Management Console. For more information, see "Administering your instance from the Management Console."
Authentication
Users can verify commits using an SSH public key. For more information, see "About commit signature verification."
Site administrators can provision users and groups on a GitHub Enterprise Server instance automatically with SCIM. SCIM for GitHub Enterprise Server is in private beta and subject to change. For more information, see "Configuring user provisioning with SCIM for your enterprise" and "SCIM" in the REST API documentation.
GitHub Advanced Security
Users on an instance with a GitHub Advanced Security license can view and comment on code scanning alerts in their repository within a pull request's Conversation tab. If the Require conversation resolution before merging branch protection rule is enabled for the repository, all comments on these code scanning alerts must be resolved before a user merges the pull request. For more information, see "About code scanning," "About pull request reviews," and "About protected branches."
To simplify the rollout of secret scanning for instances with dozens, hundreds, or even thousands of organizations, enterprise owners on an instance with a GitHub Advanced Security license can enable secret scanning and push protection for the instance using the web interface. For more information, see "Managing GitHub Advanced Security features for your enterprise."
Organization owners on an instance with a GitHub Advanced Security license can perform a dry run of custom patterns for secret scanning for all repositories within an organization. For more information, see "Defining custom patterns for secret scanning."
If a site administrator has enabled email notifications for an instance with a GitHub Advanced Security license, users who watch a repository's secret scanning alerts will receive an email notification when a contributor bypasses a secret blocked by push protection. Previously, notifications were not sent if the secret was marked as a false positive or used in tests. For more information, see "Protecting pushes with secret scanning" and "Configuring email for notifications."
To ease the management of dozens or hundreds of custom patterns for secret scanning, users, organization owners, or enterprise owners on an instance with a GitHub Advanced Security license can sort and filter the list of patterns for a repository, organization, or the entire instance. For more information, see "Defining custom patterns for secret scanning."
Users on an instance with a GitHub Advanced Security license who protect pushes with secret scanning can specify a custom link that will display in the error message when push protection detects and blocks a potential secret. For more information, see "Protecting pushes with secret scanning."
Users can publish CodeQL packs to the Container registry. For more information, see Creating and working with CodeQL packs in the CodeQL CLI documentation.
Users on an instance with a GitHub Advanced Security license can use CodeQL packs with code scanning, including packs that are published to the instance's GitHub Container registry. For more information, see "Configuring code scanning" and Publishing and using CodeQL packs" in the CodeQL CLI documentation.
Users on an instance with a GitHub Advanced Security license can exclude unnecessary CodeQL queries for code scanning by using query filters. For more information, see "Configuring code scanning."
Enterprise owners on an instance with a GitHub Advanced Security license can retrieve code scanning results for the entire instance using the REST API. The new endpoint supplements the existing endpoints for repositories and organizations. For more information, see "Code Scanning" in the REST API documentation.
Organization owners on an instance with a GitHub Advanced Security license can retrieve the enablement status or configure the automatic enablement of the following features using the REST API.
- GitHub Advanced Security
- Secret scanning
- Push protection
For more information, see "Organizations" in the REST API documentation.
Users on an instance with a GitHub Advanced Security license can use cursors to paginate secret scanning alert results retrieved with the REST API's organization and repository endpoints. For more information, see "Secret scanning" in the REST API documentation.
Dependabot
The security overview for the instance includes information about Dependabot. For more information, see "Viewing the security overview."
Users can see more information about the activity associated with a Dependabot alert. Within the details for a Dependabot alert, users can see a timeline of events, such as when the alert was opened, fixed, or reopened. Events will also show additional metadata when available, like relevant pull requests. For more information, see "About Dependabot alerts."
Users' Dependabot alerts are sorted by importance by default. Importance considers CVSS as the primary factor, as well as potential risk, relevancy, and ease of fixing the vulnerability. The calculation will improve over time.
Users can sort Dependabot alerts by the scope of the dependency, either runtime or development.
Users can optionally add a comment when dismissing a Dependabot alert. Dismissal comments appear in the event timeline and within the
dismissComment
field in the GraphQL API'sRepositoryVulnerabilityAlert
object. For more information about the GraphQL API, see "Objects" in the GraphQL API documentation.Users can select multiple Dependabot alerts, then dismiss or reopen the alerts. For example, from the Closed alerts tab, you can select multiple alerts that have been previously dismissed, and then reopen them all at once.
Organization owners on an instance can retrieve the enablement status or configure the automatic enablement of the following features for dependency management using the REST API.
- Dependency graph
- Dependabot alerts
- Dependabot security updates
For more information, see "Organizations" in the REST API documentation.
Code security
Enterprise owners, organization owners, and security managers can access a centralized view of risk across the entire instance. The view also includes an alert-centric view of all code scanning, secret scanning, and Dependabot alerts. Enterprise owners can view alerts for organizations that they are owners of. Organization owners and security managers can view repositories and alerts for the organizations that they have full access to. For more information, see "About the security overview."
Organization owners can manage teams of security managers using the REST API. For more information, see "Security Managers" in the REST API documentation.
Users of the GitHub Advisory Database can now see advisories for GitHub Actions vulnerabilities. For more information, see "Browsing security advisories in the GitHub Advisory Database."
Users can populate a repository's dependency graph by submitting the dependencies for the repository using the REST API. The dependency graph powers Dependabot alerts and Dependabot security updates. For more information, see "Using the Dependency submission API."
GitHub Actions
GitHub Actions supports Google Cloud Storage as a storage provider for logs, artifacts, and caches. For more information, see "Enabling GitHub Actions with Google Cloud Storage."
GitHub Actions users who use dependency caching to speed up workflows can now use the GitHub CLI to manage the GitHub Actions cache for a repository. To manage caches using the GitHub CLI, install the
gh-actions-cache
extension. For more information, see thegh-actions-cache
documentation.Workflow re-runs in GitHub Actions use the actor who initially triggered the workflow for privilege evaluation. The actor who triggered the re-run will continue to be displayed in the UI, and can be accessed in a workflow via the
triggering_actor
field in thegithub
context. For more information, see "Re-running workflows and jobs" and "Contexts."Users can call reusable workflows from a matrix or other reusable workflows. For more information, see "Reusing workflows."
When querying GitHub Actions for artifacts, the REST API returns information about the run and branch that produced the artifact. For more information, see "GitHub Actions Artifacts" in the REST API documentation.
To support secure cloud deployments at scale, organization owners and repository administrators can complete the following tasks with the OpenID Connect REST API. For more information, see "GitHub Actions OIDC" in the REST API documentation
- Enable a standard OpenID Connect configuration across cloud deployment workflows by customizing the
subject
claim format. - Ensure additional compliance and security for OpenID Connect deployments by appending the
issuer
URL with the enterprise's slug. - Configure advanced OpenID Connect policies by using additional OpenID Connect token claims like
repository_id
andrepo_visibility
.
For more information, see "About security hardening with OpenID Connect."
- Enable a standard OpenID Connect configuration across cloud deployment workflows by customizing the
GitHub Actions users who use dependency caching to speed up workflows can now use the GitHub Actions Cache REST API to accomplish the following tasks.
- List all caches within a repository and sort by metadata.
- Delete a corrupt or stale cache entry. For more information, see "Caching dependencies to speed up workflows" and "GitHub Actions Cache" in the REST API documentation.
If a non-ephemeral self-hosted GitHub Actions runner does not communicate with the GitHub Enterprise Server instance for more than 14 days, the instance will automatically remove the runner. If an ephemeral self-hosted runner does not communicate with the instance for more than one day, the instance will automatically remove the runner. Previously, GitHub Enterprise Server removed runners after 30 days. For more information, see "About self-hosted runners."
GitHub Actions can run self-hosted macOS workflows in a macOS ARM64 runtime with runner support for Apple silicon, such as the M1 or M2 chip. For more information, see "Using self-hosted runners in a workflow."
GitHub Pages
Users can deploy a GitHub Pages site directly from a repository using GitHub Actions, without configuration of a publishing source. Using GitHub Actions provides control over the authoring framework and version, as well as more control over the publishing process with features like deployment gates. For more information, see "Configuring a publishing source for your GitHub Pages site."
Repositories
Enterprise owners can prevent users from creating repositories owned by their user accounts. For more information, see "Enforcing repository management policies in your enterprise."
Enterprise owners can control where users can fork repositories. Forking can be limited to preset combinations of organizations, the same organization as the parent repository, user accounts, or everywhere. For more information, see "Enforcing repository management policies in your enterprise."
Repository administrators can block potentially destructive pushes by limiting the number of branches and tags that can be updated by a single push. By default, there is no limit to the number of branches and tags that can be updated in a single push. For more information, see "Managing the push policy for your repository."
Users can further customize the default commit message when squash-merging a pull request. For more information, see "Configuring commit merging for pull requests" and "Configuring commit squashing for pull requests."
Users can create a branch from a repository's Branches overview page by clicking the New branch button. For more information, see "Creating and deleting branches within your repository."
When a user renames or moves a file to a new directory, if at least half of the file's contents are identical, the commit history indicates that the file was renamed, similar to
git log --follow
. For more information, see the GitHub Blog. [Updated: 2023-02-10]Improvements have been made to the creation and management of forks.
- When forking a repository, users can choose to only include the repository's default branch in the fork.
- Users can use a repository's' Fork button to see existing forks of the repository.
- The Fetch upstream button has been renamed to Sync fork to better describe the button's behavior. If the sync causes a conflict, the web UI prompts the user to contribute changes to the parent repository, discard changes, or resolve the conflict.
- To address situations where people work within one organization and don't want to fork a repository to a different organization or user account, users can fork a repository to the same organization as the parent repository.
- Users can fork an internal repository to another organization and the fork will retain internal visibility. When forking an internal repository, users can choose which organization should own the fork.
For more information, see "Fork a repo."
Repository administrators can block the creation of branches that match a configured name pattern with the Restrict pushes that create matching branches branch protection rule. For example, if a repository's default branch changes from
master
tomain
, a repository administrator can prevent any subsequent creation or push of themaster
branch. For more information, see "About protected branches" and "Managing a branch protection rule."Users can create files with geoJSON, topoJSON, and STL diagrams and render the diagrams in the web interface. For more information, see "Working with non-code files."
Users can create autolink references using either alphanumeric or numeric identifiers. For more information, see "Configuring autolinks to reference external resources autolinks."
Users can customize exclusions in the file finder like
vendor/
andbuild/
by usinglinguist
attributes in a.gitattributes
file. For more information, see "Finding files on GitHub" and "Customizing how changed files appear on GitHub."
Pull requests
Users can browse the files modified in an individual commit using the tree view. For more information, see "About commits."
Issues
Users can manually link existing branches or pull requests to an issue from the "Development" section in the issue's sidebar. For more information, see "Linking a pull request to an issue."
Markdown
Users can use Mermaid syntax when writing Markdown, which displays a diagram when rendering the Markdown. For more information, see "Creating diagrams."
Users can write mathematical expressions using fenced code blocks with the
math
syntax in addition to the existing delimiters.$$
is not required with this method. For more information, see "Writing mathematical expressions."- Note: This feature is unavailable in GitHub Enterprise Server 3.7. The feature will be available in an upcoming release. [Updated: 2022-11-16]
Users can render maps directly in Markdown using fenced code blocks with the
geojson
ortopojson
syntax, and embed STL 3D renders usingstl
syntax. For more information, see "Creating diagrams."In Markdown, users can write LaTeX-style syntax to render math expressions inline using
$
delimiters, or in blocks using$$
delimiters. For more information, see "Writing mathematical expressions."
3.7.0: Changes
To improve stability, the service for rendering GeoJSON, Jupyter Notebook, PDF, PSD, SVG, SolidWorks, and other binary formats has been replaced.
If TLS and subdomain isolation are configured for your instance and your certificate is not a wildcard certificate, you must generate a new certificate that includes the additional subdomains for these services,
notebooks.HOSTNAME
andviewscreen.HOSTNAME
. For more information, see "Enabling subdomain isolation." [Updated: 2022-12-02]Secret scanning no longer supports custom patterns that use
.*
as an end delimiter in the "After secret" field, as the pattern syntax would cause scan problems and inconsistencies.When creating a new release, users can now submit the form using Ctrl + Enter in macOS, or Ctrl + Enter in Windows or Linux.
The Wiki tab in a repository only appears when a wiki exists. Previously, the tab always appeared.
Rendered wikis display mathematical expressions and Mermaid diagrams.
The size of the search field for user, organization, and enterprise audit logs has increased.
The maximum number of self-hosted runners in a runner group is limited to 10,000. Previously, there was no limit. [Updated: 2023-05-24]
If a user refreshes the page while creating a new issue or pull request, the assignees, reviewers, labels and projects will all be preserved. [Updated: 2023-09-06]
3.7.0: Known issues
After an administrator upgrades from GitHub Enterprise Server 3.7 or 3.8, to 3.9 or 3.10, MySQL may not start back up. For more information, see "Known issues with upgrades to your instance." [Updated: 2023-08-11]
After restoration of a backup created using GitHub Enterprise Server Backup Utilities 3.7.0, users may not be able to sign into the instance. To fix this issue, plus a bug that was preventing secret scanning encryption keys from being backed up, upgrade your backup host to use GitHub Enterprise Server Backup Utilities 3.7.1 and generate a new full backup using
ghe-backup
. For more information on using an existing backup, see "Known issues with backups for your instance." [Updated: 2023-07-31]On a freshly set up GitHub Enterprise Server instance without any users, an attacker could create the first admin user.
Custom firewall rules are removed during the upgrade process.
When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results.
Resource limits that are specific to processing pre-receive hooks may cause some pre-receive hooks to fail.
Actions services need to be restarted after restoring an instance from a backup taken on a different host.
In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality.
In some cases, users cannot convert existing issues to discussions.
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.In some cases after upgrading to GitHub Enterprise Server 3.7.0, users may encounter
Internal Server Error
or500
errors when initiatinggit
operations over SSH or HTTPS. Example:git push origin master Total 0 (delta 0), reused 0 (delta 0) remote: Internal Server Error To ghes.hostname.com:User/repo.git ! [remote rejected] master -> master (Internal Server Error)
If these are encountered, please contact GitHub Enterprise Support with a support bundle. The known temporary workaround at this time is to restart the
github-gitauth
service with the commands below:nomad stop github-gitauth nomad run /etc/nomad-jobs/github/gitauth.hcl nomad status github-gitauth
We are currently investigating a permanent fix for a future hot patch [Updated: 2022-11-24].
Instances experiencing a high sustained number of concurrent Git requests may experience performance issues. If you suspect that this issue is affecting your instance, contact GitHub Support. For more information, see "Creating a support ticket."
When validating domain settings on an instance with TLS and subdomain isolation enabled, the Management Console does not display GitHub Enterprise Server 3.7's two new subdomains,
http(s)://notebooks.HOSTNAME
andhttp(s)://viewscreen.HOSTNAME
, in the list of domains. [Updated: 2023-01-12]On instances in a high availability configuration,
git push
operations may fail in the following situations.- During creation of the repository on a replica node
- After failure to create the repository on a replica node, before automatic repair of the repository [Updated: 2023-03-17]
On instances in a high availability configuration, site administrators should only run the
ghe-repl-start
andghe-repl-stop
commands while the instance is in maintenance mode. For more information, see "Enabling and scheduling maintenance mode" and "About high availability configuration." [Updated: 2023-03-17]An upgrade to GitHub Enterprise Server 3.6 or 3.7 from 3.5 or earlier may be long running if a large number of deleted repositories exist. Deleted repositories are purged automatically after 90 days, but for a faster upgrade they can be purged manually. If you suspect you have thousands of recently deleted repositories, and you are concerned about a long running upgrade, contact GitHub Enterprise Support for assistance purging deleted repositories. [Updated: 2023-05-09]
In rare circumstances, a small instance with both high availability and GitHub Actions configured may report that MSSQL replication is unhealthy after many upgrades with full upgrade packages. If you encounter this issue, contact GitHub Support. [Updated: 2023-08-24]
On an instance hosted in AWS, system time may lose synchronization with Amazon's servers after an administrator reboots the instance. [Updated 2023-11-10]
On an instance in a cluster configuration, restoration of a backup using
ghe-restore
will exit prematurely if Redis has not restarted properly. [Updated 2023-12-05]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. [Updated 2023-12-13]
3.7.0: Deprecations
Upcoming deprecation: In GitHub Enterprise Server 3.8 and later, unsecure algorithms will be disabled for SSH connections to the administrative shell.
Commit comments, which are comments that users add directly to a commit outside of a pull request, no longer appear in the pull request timeline. Users could not reply to or resolve these comments. The Timeline events REST API and the GraphQL API's
PullRequest
object also no longer return commit comments.Diffing GeoJSON, PSD, and STL files is no longer possible.
Package registries on the new GitHub Packages architecture, including Container registry and npm packages, no longer expose data through the GraphQL API. In a coming release, other GitHub Packages registries will migrate to the new architecture, which will deprecate the GraphQL API for those registries as well.
In GitHub Enterprise Server 3.6 and later, GitHub is changing the supported algorithms and hash functions for Git operations over SSH. By default, SSH connections that satisfy both of the following conditions will fail.
- The RSA key was added to a user account on your GitHub Enterprise Server instance after the cutoff date of midnight UTC on August 1, 2022.
- The SSH client signs the connection attempt with the SHA-1 hash function.
You can adjust the cutoff date. For more information, see "Configuring SSH connections to your instance." [Updated: 2023-09-29]
3.7.0: Errata
"Using secrets in GitHub Actions" incorrectly indicated that secrets for GitHub Actions are encrypted in the instance's database. The article has been updated to reflect that secrets are not encrypted on the instance. To encrypt secrets at rest, you must encrypt your instance's block storage device. For more information, refer to the documentation for your hypervisor or cloud service. [Updated: 2023-06-01]
"Features" incorrectly indicated that users of the GitHub Advisory Database can see advisories for both Elixir and malware. These features are unavailable in GitHub Enterprise Server 3.7, and will be available in a future release. [Updated 2023-08-21]