GitLab's 50th Release: 8.4

Jan 22, 2016

What better way to kick off a new year than with the 50th release of GitLab, 8.4!

No matter how you use GitLab, you're going to like this release. Your diffs will look better than ever, you can browse through your build artifacts in CI and search has been super powered with Elasticsearch in EE!

We're extremely happy to receive some amazing contributions this release. Kyungchul Shin contributed a fuzzy file finder to GitLab this release, a much requested and truly MVP-worthy contribution.

Thanks Kyungchul Shin and congratulations on being this month's MVP!

GitLab's Tanuki is loading

Super-powered Search with Elasticsearch (EE only)

If you have a lot of data, searching through everything in GitLab can require a lot of number crunching, which can take a while. Search is the last thing you want to wait for, which is why GitLab can now leverage Elasticsearch to speed up those searches!

Elasticsearch is a flexible, scalable and powerful search service that lives on its own server(s). Connecting it to GitLab is easy as pie.

Just like good-old search, Elasticsearch will search through your issues, merge requests, milestones, comments, projects, repositories, snippets and wikis.

Read about setting up Elasticsearch in our documentation

Artifacts browser

Since GitLab 8.2, you've been able to have CI output artifacts, which you could then download as a single compressed file containing all artifacts of a build.

Build artifacts browser in GitLab 8.4

With GitLab 8.4, you can now browse all your artifacts directly in GitLab's interface and download files individually. GitLab does not extract the entire compressed file when viewing and when downloading, it'll only extract the requested file. This can save you a lot of storage space and makes it much easier to work with large files or large volumes of artifacts, as you don't need to download everything to get a single file.

Read the documentation on build artifacts browser

Improved GitHub Importer

Want to move your projects from GitHub? GitLab now imports your repositories, wikis, issues and pull requests from GitHub!

On the new project page /projects/new, simply click on the GitHub link and click to import any or all projects. GitLab will automatically take care of the rest.

Read the documentation on the GitHub importer

Fuzzy File Finder

The new Fuzzy File Finder lets you quickly navigate to a file by name in the current repository without having to reach for the mouse!

Find files easily with GitLab 8.4

You can quickly access the Fuzzy File Finder by pressing t anywhere in a project.

For more shortcuts, press ? anywhere in GitLab!

Read the documentation on the File finder

Code highlighting in Diffs

Diffs in GitLab now have highlighted syntax!

Diffs are now highlighted in GitLab 8.4

Diffs are now highlighted in GitLab 8.4

Unsubscribe from Threads in Email

If you're getting notifications from issues or merge requests you're no longer interested in, there is now a quick link in every email to unsubscribe from that thread.

Quickly unsubscribe from a thread in GitLab 8.4

The link doesn't require you to sign in, so you can easily use it from your phone, watch, or VR headset.

When pasting a GitLab link in Slack, Twitter or Facebook, it now automagically becomes a little bit prettier and informative by making use of the Open Graph standard.

For instance, if you post a GitLab link in Slack, you now get some extra information about the issue or merge request:

Slack unfurls in GitLab 8.4

We're looking forward to seeing pretty GitLab links all over the internet!

CAS Support

GitLab user tduehr contributed CAS support for GitLab, allowing you to use your CAS single sign-on server to sign into GitLab. Thanks, tduehr!

Read the documentation on using CAS with GitLab

Performance Monitoring

We've said in multiple places that improving performance of GitLab.com is a big priority for us. To give us more insights into this, we've built performance monitoring into GitLab.

GitLab can now send performance data to an InfluxDB database, which in turn can be connected to graphing software such as Grafana (shown below).

Data gathered by Performance Monitoring includes:

Using Grafana to plot GitLab Performance Monitoring data Using Grafana to plot GitLab Performance Monitoring data

Right now Performance Monitoring still requires some setup to be useful, but we're planning to bundle all the required software with our EE Omnibus packages in the coming releases.

View the documentation on GitLab Performance Monitoring

Filter Commit Messages

Want to quickly find a specific commit in the list of commits? You can now quickly filter them by commit message, using the input on top!

Filter commits in GitLab 8.4

Find the commit filter on the commits page of any of your projects.

Emoji Picker Improvements

Now you can quickly search all available emoji!

Search and find your favorite Emoji quickly in GitLab 8.4

The new Emoji picker also stores your favorite Emoji and is available in any issue and merge request.

Design Updates

Upgrading the looks and usability of GitLab is very important to us. GitLab 8.4 introduces several design changes that will be built upon in future releases.

Groups now look cleaner:

Upgraded Group page for GitLab 8.4

And issues are also easier on the eyes, especially if you're using a smaller window:

Renewed issue design in GitLab 8.4

We're working hard to improve the design of GitLab and put more emphasis on content, while making everything easier to use. We'd love to get your feedback on the latest changes.

New CI features in API

The build artifacts browser is not the only enhancement in GitLab CI. With GitLab 8.4 we are introducing new CI features in our API:

Other changes

Some other notable changes include:

This release has many more improvements. Please check out the Changelog to see the all named changes.

Upgrade barometer

Downtime required

This upgrade requires downtime as it brings a couple of migrations that are updating a large set of records.

Most notably, the update iterates through all services, updating default values. For instances that have LDAP enabled, it iterates through the whole user base to update LDAP email settings.

On GitLab.com these migrations took around 5 minutes to complete. Do note that GitLab.com doesn't have LDAP enabled so on instances that do have it enabled, migration will take longer.

Upgrading from 7.x or prior?

Note If you are upgrading from a GitLab version prior to 8.0 and you have CI enabled, you have to upgrade to GitLab 8.0 first.

Default upgrade behavior

Please be aware that by default the Omnibus packages will stop, run migrations, and start again, no matter how “big” or “small” the upgrade is. This behavior can be changed by adding a /etc/gitlab/skip-auto-migrations file.


Installation

If you are setting up a new GitLab installation please see the download GitLab page.

Updating

Check out our update page.

Enterprise Edition

The mentioned EE only features and things like LDAP group support can be found in GitLab Enterprise Edition. For a complete overview please have a look at the feature list of GitLab EE.

Access to GitLab Enterprise Edition is included with a subscription. No time to upgrade GitLab yourself? A subscription also entitles you to our upgrade and installation services.

Join us for a live Q & A

If you'd like to find out more about GitLab 8.4, sign up to the webcast. We'll give a live walk-through for this release and talk about what's coming up next for GitLab. It's on Thursday, January 28, 5pm (17:00) UTC; 12pm EST; 9am PST.


Install GitLab on your own server in 2 minutes

Browse all posts

For the latest and most detailed news follow @gitlab on Twitter. Future blog posts suggestions.