gitlab gitlab-org/gitlab-foss v16.11.0

latest releases: v17.3.7, v17.4.4, v17.5.2...
7 months ago

21 new features 2160 total badges

Sidebar for metadata on the project overview page: Groups & Projects

We've redesigned the project overview page. Now you can find all of the project information and links in one sidebar rather than multiple areas.

GitLab Duo Chat now generally available: Duo Chat

GitLab Duo Chat is now generally available. As part of this release, we are also making these capabilities generally available:

  • Code explanation helps developers and less technical users understand unfamiliar code faster
  • Code refactoring enables developers to simplify and improve existing code
  • Test generation automates repetitive tasks and helps teams catch bugs sooner

Users can access GitLab Duo Chat in the GitLab UI, in the Web IDE, in VS Code, or in JetBrains IDEs.

Learn more about this release of GitLab Duo Chat from this blog post.

Chat is currently freely accessible by all Ultimate and Premium users. Instance administrators, group owners, and project owners can choose to restrict Duo features from accessing and processing their data.

The GitLab Duo Chat is part of GitLab Duo Pro. To ease the transition for Chat beta users who have yet to purchase GitLab Duo Pro, Duo Chat will remain available to existing Premium and Ultimate customers (without the add-on) for a short period of time. We will announce when access will be restricted to Duo Pro subscribers at a later date.

Feel free to share your thoughts by clicking the feedback button in the chat or by creating an issue and mentioning GitLab Duo Chat. We’d love to hear from you!

Omnibus improvements (self-managed only): Omnibus Package
  • In GitLab 17.0, the minimum-supported version of PostgreSQL will become 14. In preparation for this change, in GitLab 16.11 we have changed the attempt_auto_pg_upgrade? setting to true, which will attempt to automatically upgrade the version of PostgreSQL to 14.

    This process is the same as for last time we bumped the minimum-supported PostgreSQL version.

Updated project archiving functionality: Groups & Projects

Now it's easier to identify archived projects in project lists. From 16.11, archived projects display an Archived badge in the Archived tab of the group overview. This badge is also part of the project title on the project overview page.

An alert message clarifies that archived projects are read-only. This message is visible on all project pages to ensure that this context is not lost even when working on sub-pages of the archived project.

In addition, when deleting a group, the confirmation modal now lists the number of archived projects to prevent accidental deletions.

Build step of Auto DevOps upgraded: Auto DevOps

Because the heroku/buildpacks:20 image used by the Auto Build component of Auto DevOps was deprecated upstream, we are moving to the heroku/builder:20 image.

This breaking change arrives outside a GitLab major release to accommodate a breaking change upstream. The upgrade is unlikely to break your pipelines. As a temporary workaround, you can also manually configure the heroku/builder:20 image and skip the builder sunset errors.

Additionally, we're planning another major upgrade from heroku/builder:20 to heroku/builder:22 in GitLab 17.0.

Users list search and filter improvements (self-managed only): System Access

The Admin Area users page has been improved.

Previously, tabs horizontally spanned across the top of the users list, making it difficult to navigate to the desired filter.

Now, filters have been combined into the search box, making it much easier to search and filter users.

Thank you Ivan Shtyrliaiev for your contribution!

Renew application secret with API (self-managed only): System Access

You can now use the Applications API to renew application secrets. Previously, you had to use the UI to do this. Now you can use the API to rotate secrets programatically.

Thank you Phawin for your contribution!

More username options: User Management

Usernames can only include non-accented letters, digits, underscores (_), hyphens (-), and periods (.). Usernames must not start with a hyphen (-), or end in a period (.), .git, or .atom.

Username validation now more accurately states this criteria. This improved validation means that you are clearer on your options when choosing your username.

Thank you Justin Zeng for your contribution!

Manage
Custom webhook headers: Webhooks

Previously, GitLab webhooks did not support custom headers. This meant you could not use them with systems that accept authentication tokens from headers with specific names.

With this release, you can add up to 20 custom headers when you create or edit a webhook. You can use these custom headers for authentication to external services.

With this feature and the custom webhook template introduced in GitLab 16.10, you can now fully design custom webhooks. You can configure your webhooks to:

  • Post custom payloads.
  • Add any required authentication headers.

Like secret tokens and URL variables, custom headers are reset when the target URL changes.

Thanks to Niklas for this community contribution!

Test project hooks with the REST API: Webhooks

Previously, you could test project hooks in the GitLab UI only. With this release, you can now trigger test hooks for specified projects by using the REST API.

Thanks to Phawin for this community contribution!

GitLab for Slack app configurable for groups and instances: Integrations

Previously, you could configure the GitLab for Slack app for one project at a time only. With this release, it's now possible to configure the integration for groups or instances and make changes to many projects at once.

This improvement brings the GitLab for Slack app closer to feature parity with the deprecated Slack notifications integration.

Configurable import jobs limit (self-managed only): Importers

Until now, the maximum number of import jobs for:

  • GitHub importer was 1000.
  • Bitbucket Cloud and Bitbucket Server importers was 100.

These limits were hard-coded and couldn't be changed. These limits might have slowed down imports, because they might have been insufficient to allow the import jobs to be processed at the same rate they were enqueued.

In this release, we've moved the hard-coded limits to application settings. Although we are not increasing these limits on GitLab.com, administrators of self-managed GitLab instances can now configure the number of import jobs according to their needs.

Plan
Autocomplete support for links to wiki pages: Wiki

We're thrilled to introduce autocomplete support for links to wiki pages in GitLab 16.11! With this new feature, linking to wiki pages from your epics and issues has never been easier - it's just a matter of a few keystrokes.

Gone are the days of having to copy and paste wiki page URLs into epic and issue comments. Now, simply navigate to any group or project with wiki pages, access an epic or issue, and use the autocomplete shortcut to seamlessly link to your wiki pages from the epic or issue!

Improved GitLab Pages visibility in sidebar: Pages

In previous releases, for projects with a GitLab Pages site, it was difficult to find the site URL.

From GitLab 16.11, the right sidebar has a shortcut link to the site, so you can find the URL without needing to check the docs.

Create
GitLab Duo Chat available in JetBrains IDEs: Editor Extensions

We are happy to announce the availability of GitLab Duo Chat in JetBrains IDEs.

As part of GitLab's AI offerings, Duo Chat further streamlines the developer experience by directly bringing an interactive chat window into any supported JetBrains IDE and the ability to explain code, write tests, and refactor existing code.

For a complete list of capabilities, see our Duo Chat documentation.

Group comment templates: Code Review Workflow, Team Planning

Across an organization it can be helpful to have the same templated response in issues, epics, or merge requests. These responses might include standard questions that need to be answered, responses to common problems, or maybe structure for merge request review comments.

Group comment templates enable you to create saved responses that you can apply in comment boxes around GitLab to speed up your workflow. This new addition to comment templates allows organizations to create and manage templates centrally, so all of their users benefit from the same templates.

To create a comment template, go to any comment box on GitLab and select Insert comment template > Manage group comment templates. After you create a comment template, it's available for all group members. Select the Insert comment template icon while making a comment, and your saved response will be applied.

We're really excited about this next iteration of comment templates and will also be adding project-level comment templates soon too. If you have any feedback, please leave it in issue 45120.

Verify
Option to cancel a pipeline immediately if any jobs fails: Continuous Integration (CI)

Sometimes after you notice a job fails, you might manually cancel the rest of the pipeline to save resources while you work on the issue causing the failure. With GitLab 16.11, you can now configure pipelines to be cancelled automatically when any job fails. With large pipelines that take a long time to run, especially with many long-running jobs that run in parallel, this can be an effective way to reduce resource usage and costs.

You can even configure a pipeline to immediately cancel if a downstream pipeline fails, which cancels the parent pipeline and all other downstream pipelines.

Special thanks to Marco for contributing to the feature!

Improve automatic retry for failed CI jobs with specific exit codes: Pipeline Composition

Previously, you could use retry:when in addition to retry:max to configure how many times a job is retried when specific failures occur, like when a script fails.

With this release, you can now use retry:exit_codes to configure automatic retries of failed jobs based on specific script exit codes. You can use retry:exit_codes with retry:when and retry:max to fine-tune your pipeline's behavior according to your specific needs and improve your pipeline execution.

Thanks to Baptiste Lalanne for this community contribution!

GitLab Runner 16.11: GitLab Runner Core

We’re also releasing GitLab Runner 16.11 today! GitLab Runner is the lightweight, highly-scalable agent that runs your CI/CD jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

Bug Fixes:

The list of all changes is in the GitLab Runner CHANGELOG.

Control who can download job artifacts: Pipeline Composition

By default, all generated artifacts from CI/CD jobs in a public pipeline are available for download by all users with access to the pipeline. However, there are cases where artifacts should never be downloaded, or only be accessible for download by team members with a higher access level.

So in this release, we've added the artifacts:access keyword. Now, users can control whether artifacts can be downloaded by all users with access to the pipeline, only users with the Developer role or higher, or no user at all.

Improved pipeline details page: Pipeline Composition

The pipeline graph offers a comprehensive overview of your pipelines, showing job statuses, runtime updates, multi-project pipelines, and parent-child pipelines.

Today, we're excited to announce the release of the redesigned pipeline graph with enhanced aesthetics, grouped jobs visualization, improved mobile expirence and expanded downstream pipeline visibility within your existing view.

We'd greatly appreciate it if you could try it out and share your feedback through this dedicated issue.

Don't miss a new gitlab-foss release

NewReleases is sending notifications on new releases.