The 2.2 series release notes contain important changes in this release series.
Bug Fixes
- Ubuntu packages have been updated to the latest bug fix versions.
- Upgrading to GitHub Enterprise 2.2 with a lot of repositories could take a very long time.
- Transition to the new repository layout could fail if a repository was missing an owner. We've made the transition more resilient to bad data.
- With LDAP authentication enabled, users who renamed their accounts and then had their DN changed couldn't log in.
- Logging of notification deliveries was extremely verbose, which could put I/O pressure on busy instances.
- Site-wide audit logs didn't appear in the site admin interface.
- Setting the admin management console password with
ghe-set-password
failed.
- When maintenance mode was enabled, we ignored the configured support email address and always showed the default.
- It was not possible to forward logs over IPv6.
- We showed the wrong clone URL when displaying a Gist when subdomain isolation was enabled.
- Elasticsearch wasn't properly tuned based on available memory.
- Notification, event, and session database entries weren't properly archived, which could cause those tables to grow very large on busy instances.
- Some valid SSL certificates were incorrectly rejected in the management console.
- Promoting a high availability replica that had previously been a primary could show out of date pages due to a stale cache.
- Pushing large repositories over HTTPS could timeout.
- Some upgrade messages were not shown.
- Replication status did not show queued repositories.
- The activity dashboard graph could dip to zero periodically, creating misleading sawtooth patterns.
- Checking file size limits for Git pushes could be expensive and time consuming.
Changes
- Unlock repository administrator dialog contained information not relevant to GitHub Enterprise.
- Elasticsearch, Memcached, MySQL, Redis, Nginx, tcpconns and netlink Collectd plugins are now enabled.
- More performance statistics are shown in the administrators' toolbar.
- User sessions are updated less frequently, reducing load on the database.
Security Fixes
Repository storage changes
Changing the repository storage layout has been improved significantly in this release, cutting down the migration time from hours to minutes. If your instance contains more than 20,000 repositories (including gists and wikis) you can now upgrade to 2.2.2.
Please refer to the "Repository storage changes" section of the 2.2.0 release notes for further advice on upgrading.
SAML response requirement changes
We've improved the validation of the SAML responses we receive. A response message must now contain a Recipient
set to the Assertion Consumer Service URL, http(s)://[hostname]/saml/consume
.
In addition to the Recipient
attribute, GitHub Enterprise will now also verify the Destination
and Audience
attributes, if they are supplied in the response message.
Most SAML implementations already provide this information in their responses.
Known Issues
- Service hooks may log passwords used for HTTP Basic authentication to disk. (updated 2015-07-28)
- Organization invitation emails are sent from the configured support email address rather than the no-reply address.
- The management console settings interface doesn't clearly show if you have previously uploaded certificate files or a private key.
- Jobs stuck on code indexing can delay other jobs from running.
- Dashboard activity feed links point to wrong hostname after restoring from backup if the hostname has changed.
- In some circumstances, after an upgrade we prompt you to upload a license, even though there's already a valid license.
- On a freshly set up GitHub Enterprise without any users, an attacker could create the first admin user.
- Events in the
github_audit
log stream are being logged twice.
- Gists can't be created when using Safari 8.x in Private Mode.
- Gist repositories are not garbage collected by the maintenance scheduler.
- Gist profile pages don't have proper styling when subdomain isolation is disabled.
Mail delivery to localhost fails. (updated 2015-07-14)
- Replication setup fails for IPv6 hosts.
- We can fail to properly create the key for the secure connection between a high availability replica and the primary, which causes replication setup to fail.
- Promoting a high availability replica can fail if Elasticsearch takes too long to restart.
- Deleting a user doesn't delete their gists, which can cause problems with replication.
- In our instructions to merge a pull request on the command line, we show the steps to merge using the Git protocol even when private mode is on. Private mode forces authentication but the Git protocol is unauthenticated so the steps will always fail. We also don't show the steps to merge using SSH.
- We incorrectly redirect to the dashboard if you access GitHub Enterprise using an alias while in private mode. This might happen if you set a fully qualified domain name but the subdomain resolves correctly.
- SNMP can't be run on high availability replicas.
- Custom firewall rules aren't maintained during an upgrade.
- A high availability replica that's been promoted to primary and then set up as a replica again doesn't properly show the replica status page, but shows "Starting..." instead.
- Management console sessions can expire too quickly for Safari users.
- Enabling Hyper-V Dynamic Memory causes kernel panics. (updated 2015-05-30)
- Suspended LDAP users are unsuspended if no LDAP restricted groups are configured. (updated 2015-05-30)
- We show your gravatar or identicon on Gists instead of your custom profile picture. (updated 2015-06-15)
- We display the time in the scheduled maintenance banner in UTC instead of the viewer's timezone. (updated 2015-06-18)
- Users with LDAP DNs longer than 255 characters are suspended if LDAP Sync is enabled. (updated 2015-06-19)
- Images uploaded to issues save with an absolute URL, so they can be broken if the hostname changes. (updated 2015-07-14)
- With private mode enabled, a Pages site with no default page serves a generic error rather than an informative message. (updated 2015-07-14)
- Editing a Gist can cause a 500 error. This is an authentication problem between Gist and GitHub Enterprise, so logging out and back in again should fix the problem. (updated 2015-07-15)
- Using uppercase characters in the hostname causes a redirect loop. (updated 2015-07-28)
- When a fork is detached from its repository network by an administrator or by changing visibility, its filesystem path won't be updated on a high availability replica until at least one commit has been pushed. (updated 2015-08-13)
- Updates to Wiki pages by users without a primary email address set throw errors. (updated 2015-08-25)
- Viewing raw files in repositories owned by a user or organization named "github" fails with a 400 error. (updated 2015-12-15)
- Trying to add a file to a repository with Subversion 1.9 clients incorrectly detects the file already exists and fails. (updated 2016-01-14)
Errata
- Failure to deliver mail to localhost was fixed in 2.2.0. (updated 2015-07-14)
Thanks!
The GitHub Team