GitLab Changelog

What's new in GitLab 12.7.0

Jan 22, 2020
  • Faster and More Efficient Pipelines and Teams:
  • Large, complex pipelines can be both slow to execute and hard to understand. Parent-child pipelines will speed things up by allowing separate, child pipelines to run concurrently. By also separating and simplifying visualization and configuration per pipeline, and even allowing shared, reusable configuration, parent-child pipelines are easier to manage and will make both your CI/CD and your team more efficient.
  • Manage Shared Pipeline Resources:
  • Many organizations have shared environments and resources where they want to prevent multiple changes from being made at the same time. Resource Groups help you limit pipeline concurrency to more efficiently and effectively manage jobs and resources.
  • Windows Shared Runners Beta:
  • Windows developers can now choose to take advantage of Shared Runners on GitLab.com, instead of or in addition to setting up their own. This beta release enables running CI/CD jobs on Windows virtual machines with the added efficiency of a fully-managed, auto-scaling, and secure environment, managed by the GitLab.com team.
  • Faster Merge Request Management:
  • Timely code review keeps your team shipping. Code Review Analytics will make it easy to find Merge Requests in review that need intervention, helping teams manage their cycle time. Improved Merge Request widgets now show when changes had made it to a specific environment, saving time tracking down the latest deploy.

New in GitLab 12.6.4 (Jan 20, 2020)

  • Private objects exposed through project import:
  • Using the project import feature, it was possible for someone to obtain issues from private projects. The issue is now mitigated in the latest release and is assigned CVE-2020-6832.

New in GitLab 12.6 (Dec 27, 2019)

  • Security Visibility with Project Security Status:
  • With GitLab 12.6, a new Project Security Status panel shows how projects are ranked according to their security profile. This makes it easier for development leaders to quickly understand which projects may have greater risk and therefore might warrant additional attention to address specific issues.
  • Streamline Audits with Release Evidence:
  • Almost every enterprise development team is expected to document and demonstrate that each release complies with their organization’s policies, procedures, and controls. Often it means they have a manual processes to save the documentation so that future audits can review the compliance evidence. GitLab 12.6 makes audits and compliance much easier, with a release evidence file in the form of a JSON object that includes links to the milestones and issues that were included in the release, which can help to streamline future audits.
  • Efficiently Manage and Share C/C++ Resources:
  • Many teams are actively developing new high performance applications in C and C++ and they need the ability to easily store and manage the compiled files and binaries from their projects. GitLab 12.6 now helps teams writing code in C and C++ to manage and share both privately and publicly the binaries from their projects with the popular Conan repository built into GitLab. They can now benefit from having source code, automated GitLab CI pipelines and the resulting packages in the same application which will help improve their overall efficiency and velocity.

New in GitLab 12.5.4 (Dec 16, 2019)

  • Path traversal with potential remote code execution:
  • Insufficient parameter sanitization for Maven package registry could lead to privilege escalation and remote code execution vulnerabilities under certain conditions. The issue is now mitigated in the latest release and is assigned CVE-2019-19628.

New in GitLab 12.5.2 (Nov 28, 2019)

  • This version contains important security fixes that were inadvertently not included in our most recent security release. We strongly recommend that all GitLab installations be upgraded to one of these versions immediately.

New in GitLab 12.3.1 (Sep 27, 2019)

  • Fix ordering of issue board lists not being persisted.
  • Fix error when duplicate users are merged in approvers list.
  • Fix bug that caused a merge to show an error message.
  • Fix CSS leak in job log.

New in GitLab 12.0.3 (Jul 6, 2019)

  • This version contains important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of this version immediately.

New in GitLab 12.0 (Jun 26, 2019)

  • Dev, Sec, and Ops:
  • GitLab 12.0 marks a key step in our journey to create an inclusive approach to DevSecOps, empowering "everyone to contribute".
  • For the past year, we've been on an amazing journey, collaborating and creating a solution that brings teams together. There have been thousands of community contributions making GitLab more lovable.
  • We believe everyone can contribute, and we’ve enabled cross-team collaboration, faster delivery of great code, and bringing together Dev, Ops, and Security.
  • Visual Reviews:
  • GitLab review applications are a fantastic tool to enable stakeholders from Operations to QA to business owners to evaluate and approve application changes before production.
  • In GitLab 12.0, we make it easy to provide visual feedback directly from the review app. It’s simple and streamlined, no toggling between different tabs and typing your feedback, helping to shorten review cycles and accelerate delivery.
  • Project Dependency List:
  • Projects typically include dozens of individual components, which can introduce vulnerabilities. Often, security and compliance teams need to be aware of the specific components included in a project.
  • Now, we're making making it easy to view a project's dependencies in a single source of truth.
  • Limit access based on IP address:
  • Some organizations want to limit access to their repositories based on specific IP addresses.
  • In GitLab 12.0, you can specifically prohibit traffic from outside IP addresses from accessing your GitLab data.

New in GitLab 11.9.4 (Apr 2, 2019)

  • This version contains important security fixes, and we strongly recommend that all GitLab installations be upgraded to this version immediately.

New in GitLab 11.9.1 (Mar 28, 2019)

  • Resolve "Z-Index Issue on Pipeline Dropdown"
  • Add option to whitelist _html fields from attributes on CacheMarkdownField
  • Fix duplicated bottom match line
  • Allow users to create protected branches via CLI
  • Resolve "Android template is missing .gitlab-ci.yml"
  • Refresh commit count after repository head changes
  • Set proper default-branch on GitHub Import

New in GitLab 11.9 (Mar 25, 2019)

  • Quickly learn if secrets have been leaked:
  • Inadvertently committing credentials to a shared repository can have serious consequences, yet it is a simple mistake to make. Once an attacker gets your password or API key, they can take over your account, lock you out, and fraudulently spend money. This can even lead to a domino effect where access to one account grants access to others. With the stakes so high, it’s of paramount importance to learn as quickly as possible if secrets have been leaked.
  • With this release, we’re introducing secret detection as part of our SAST functionality. Each commit is scanned by a CI/CD job to ensure it doesn’t contain secrets. If the scan detects secrets, the developer is alerted in the merge request, allowing them to take action quickly to invalidate the leaked credentials and generate new ones.
  • Enforce proper change management:
  • As an organization grows and becomes more complex, it becomes difficult to keep alignment across different parts of the organization. At the same time, the consequences of merging improper or insecure code also increase when an application has more users and generates more revenue. For many organizations, ensuring proper review process is followed before code is merged is a hard requirement because the risks of not doing so are so great.
  • With GitLab 11.9, we’re providing greater controls and more structure with Merge request approval rules. Previously, you could specify either an individual or a group for required approval (where any single member of the group can provide approval). Now, multiple rules can be added to a merge request to require individual approvers specifically, or even require a number of approvers from a particular group. Additionally, the Code Owners feature is an integrated part of approval rules, making it easy to track down who should approve.
  • This allows organizations to implement complex approval flows, all while maintaining the simplicity of GitLab’s single application where issues, code, pipelines, and monitoring data are visible and accessible to inform decisions and speed approval.
  • ChatOps is now open source:
  • GitLab ChatOps is a powerful automation tool, allowing you to execute any CI/CD job and receive the status of the job directly from chat apps like Slack and Mattermost. Originally released in GitLab 10.6, ChatOps was part of the GitLab Ultimate tier. As part of our product strategy and commitment to open source, we occasionally move features down in tier and never move them up.
  • With ChatOps, we felt this was functionality that everyone could benefit from and that the feature itself could benefit from community contributions.
  • In GitLab 11.9, we’ve open sourced ChatOps so it is available to use in GitLab self-managed Core and GitLab.com Free, and is open for community contributions.

New in GitLab 11.8.2 (Mar 19, 2019)

  • Docs review: MR diffs external storage
  • Remove padding for mr-widget-section
  • Update minimum ruby version to 2.5.
  • Properly handle multiple X-Forwarded-For addresses in runner IP
  • Allow :read_list when :read_group is allowed
  • Fix method to mark a project repository as writable
  • Resolve "Gitlab Project import fails: sidekiq undefined method import_jid"
  • Remove feature_flags_environment_scope feature flag
  • Fix GroupSAML metadata feature flag
  • Fix typo in Roadmap sorting causing scrolling to fail on null dates
  • Compute approved approver for merged MR if it is absent
  • Fix multiple approval rules license level
  • Fix bridge jobs than can be hidden keys too
  • Fix Approval UI showing up for free plan
  • Resolve "Add "No approval required" state to approval rules MR component"
  • Security fix:
  • Sharing a public project with a private group makes the group page publicly accessible. The issue is now mitigated in the latest release and is assigned CVE-2019-9732.

New in GitLab 11.7 (Jan 23, 2019)

  • Managing releases just got a whole lot easier:
  • GitLab 11.7 delivers Releases in GitLab Core. Users now have release snapshots that not only include the source code but all related artifacts. This eliminates the need for manual collection of source code, build output, and other metadata or artifacts associated with a released version of your code. Additionally, Releases sets the stage for broader, more robust release orchestration in the future.
  • Portfolio Management supports more complex work breakdown structures:
  • Multi-level Child Epics are the newest addition to GitLab portfolio management, available in Ultimate. Child Epics enable multi-level work breakdown structures, helping you manage more complex projects and workplans. You can now have an epic containing both issues and epics. This structure enables a direct connection between planning and actionable issues to implement.
  • Streamlining JavaScript development with NPM registries:
  • Gitlab 11.7 Premium delivers NPM registries directly in GitLab, providing a standard, more secure way to share and version control NPM packages across projects. Simply share the package name and NPM and GitLab handles the rest, all within a single interface!
  • And so much more:
  • It is always so hard to pick which features are our top features in our monthly releases, so we are calling out a couple of additional cool features:
  • Remediate vulnerability with patch file: As you know, GitLab security features help you to detect vulnerabilities. With GitLab 11.7, you now have the ability to remediate that vulnerability and suggest a solution for Node.js projects managed with Yarn. While this is our first official remediation-type feature, you can be sure it is only just the beginning!
  • API integration with Kubernetes: If you are into creating a lot of Kubernetes clusters or consider yourself a Kubernetes ninja, we have a Kubernetes API to greatly reduce manual efforts and make your life a whole lot easier!
  • Cross-project pipeline browsing: With the ability to view pipelines across projects, the sky's the limit on what information is readily at your fingertips with this feature!

New in GitLab 11.6.5 (Jan 21, 2019)

  • Add syntax highlighting to suggestion diff.
  • Fix broken templated "Too many changes to show" text
  • Fix requests profiler in admin page not rendering HTML properly.
  • Fix no avatar not showing in user selection box.
  • Fix diff suggestions removing dashes

New in GitLab 11.6 (Jan 8, 2019)

  • Deploy serverless workloads to any cloud via GitLab:
  • Serverless computing dynamically allocates cloud resources whenever a piece of code is executed, optimizing allocation and distribution of the resources used to run your code. It is growing in popularity with developers because it allows them to focus on what matters most, namely writing code, without worrying about the underlying information technology infrastructure. GitLab Serverless uses Knative, a Kubernetes-based platform, to build, deploy, and manage serverless workloads. This feature provides developers with an easy way to build and manage serverless workloads alongside the rest of their code, in a familiar user interface. For businesses, serverless enables a multi-cloud strategy and prevents being locked into a specific cloud provider.
  • GitLab continues to simplify development of cloud native applications:
  • With a built-in Container Registry and Kubernetes integration, GitLab makes it easier than ever to get started with containers and cloud native development. With 11.6, users will be able to create Kubernetes clusters for groups that can be used by all the projects contained within the group or sub-groups. This further simplifies cloud native configuration and allow developers to focus on developing great applications.
  • It's the holidays! Get excited! We've stuffed many more features into 11.6:
  • A few of our favorites include Suggested Changes, Web Terminal for Web IDE, and the Group Security Dashboard Vulnerability Chart. Team contributions are more easily accepted now that changes suggested (when leaving a comment on a merge request diff) can be accepted with a single click. Also, from the Web IDE, you can now launch a Web Terminal, the first server-side evaluation feature of the popular Web IDE. Building upon Group Security Dashboards released last month, the new Vulnerability Chart shows the security team how the number of vulnerabilities is changing day by day to provide resolution metrics.

New in GitLab 11.5.3 (Dec 13, 2018)

  • This version contain an important security fix, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately. The vulnerability details will be made public on our issue tracker in approximately 30 days.

New in GitLab 11.5 (Nov 23, 2018)

  • Group dashboard for security teams:
  • For a long time, developers have used GitLab as a tool to secure their code. But now, GitLab is making security teams first-class citizens so they can use GitLab to effect better application security and ensure compliance. With 11.5, the Group Security Dashboard pulls together all of the information security personnel need into one place, so folks like CISOs, CIOs, and application security leaders get a specific view designed for them. The group dashboard has a redesigned look and new visualizations, bringing together security information across multiple projects and providing a high-level view while also enabling the ability to drill down into specific reports. With 11.5, we're starting with SAST reports, and we'll be adding more to the group dashboard in the future. Our goal is to build a single tool that security teams can use instead of needing to switch back and forth between multiple tools.
  • New dashboard for operations teams:
  • In the same way that the Group Security Dashboard makes security teams first-class citizens, the Operations Dashboard provides a tailored experience for operations professionals. This instance-wide dashboard provides a single view across projects to get a summary of each project’s operational health, including pipeline and alert status.
  • Control access to GitLab Pages:
  • GitLab Pages is an easy way to serve static content on the web, making it perfect for use cases such as documentation for your project. But what about private projects where documentation and other static artifacts should only be accessed by project members? In the past, you'd either have to make your assets public to take advantage of Pages, or you would not be able to use the feature at all.
  • Now, in GitLab 11.5, the same access control permissions that apply to your issues and code can also be applied to static webpages served by GitLab Pages. Unauthenticated users will get a 404 when visiting the link. As of today, access controls for GitLab pages is available for self-managed GitLab, with GitLab.com support coming soon.
  • This is a unique feature that we're particularly proud of because it comes from our open source community. Access control for Pages has been one of our most requested features and the code has been community contributed as well!
  • Knative for Kubernetes:
  • “Serverless” is a popular, yet often misunderstood industry term. Some folks equate serverless with "Function as a Service," or FaaS, but this isn't quite accurate. In a nutshell, serverless enables a programming paradigm where you are able to focus on writing business logic without having to understand or even worry about the underlying infrastructure where your software is deployed. As such, both functions and applications can be serverless.
  • Knative is a Kubernetes-based platform to build, deploy, and manage modern serverless workloads, and GitLab 11.5 comes with the ability to easily deploy and integrate Knative with GitLab. You can now install Knative to your connected Kubernetes cluster with a single click. With GitLab 11.5, you'll be able to use Knative for your serverless applications, with serverless functions coming in 11.6.
  • Today, Knative is still in alpha, but there are some compelling reasons to deploy applications using Knative as it comes with some powerful functionality out-of-the-box. In particular, Knative manages pod scaling for you so you can automatically scale up, or even scale down to zero without additional configuration. Additionally, Knative comes with eventing built in so using it to deploy microservices makes it easier to manage inter-process communication between your producer and consumer services.
  • And so much more:
  • With so many great features in this release, we couldn't pack them all into the intro. Be sure to read up on other exciting new features like the parallel attribute for faster pipelines, redesigned Issue Board cards, and an initial Jaeger integration. We’ve made big improvements in this release to make code review easier and more useful, including the ability to comment on unchanged lines in merge requests, preview merge request reviews before submitting, and assign approvers based on Code Owners along with Review App direct links.

New in GitLab 11.4.7 (Nov 22, 2018)

  • Fix code owner suggestion missing in GitLab Starter

New in GitLab 11.4.5 (Nov 8, 2018)

  • Fix merge request tree toggle not respecting the users fluid width preference
  • Fix the link to enable usage ping
  • Fix duplicate escape in job sidebar
  • Fix missing messages for stuck runner
  • Fix stage dropdown rendering only in English
  • Update gitlab-ui dependency to 1.8.0-hotfix.1

New in GitLab 11.4 (Oct 24, 2018)

  • New features:
  • Merge Request Reviews
  • Create and toggle feature flags for your applications (alpha)
  • File tree for browsing merge request diff
  • Suggest Code Owners as merge request approvers
  • New user profile page overview
  • Set and show your status message within the user menu
  • Move ability to use includes in .gitlab-ci.yml from Starter to Core
  • Run jobs only/except for modifications on a path or file
  • Add timed incremental rollouts to Auto DevOps
  • Support Kubernetes RBAC for GitLab managed apps
  • Auto DevOps support for RBAC
  • Support PostgreSQL DB migration and initialization for Auto DevOps
  • Improvements:
  • List of subscribed labels
  • Filter by WIP merge requests
  • Highlight @mentions for yourself distinctly
  • Click to insert Markdown table and link
  • Include new issues created in Burndown Chart
  • Expanded weight values in issues API
  • Lock discussion quick action
  • Close epics
  • Improve Admin Area settings structure
  • Explore projects by popularity
  • Display code language percentage on project overview
  • Download two-factor recovery codes
  • Filter admin Runners view by Runner type and state
  • Add support for interactive web terminal to Docker executor
  • Skip Auto DevOps jobs based on feature availability
  • Allow pipelines to schedule delayed jobs
  • Interactive runbooks with Nurtch and JupyterHub
  • Add manual entries for License Management
  • Alert thresholds now displayed on metrics dashboard
  • Git protocol v2
  • Geo UX improvements in Admin Area
  • Prometheus 2.0 upgrade for Omnibus GitLab
  • Geo improvements
  • Geo improvements for SSH Git commands proxy to primary node
  • Performance improvements
  • Some of the more noteworthy performance improvements in GitLab 11.4 include:
  • Rendering Markdown with many label references is faster
  • Issue discussions with many cross-project commit references are faster
  • Fetching related branches for an issue runs fewer queries
  • Fetching environments for a merge request runs fewer queries
  • Computing recipients for notification emails runs fewer queries
  • Creating a new diff discussion on a merge request is faster
  • Fetching “Last commit” info in tree view makes fewer Gitaly calls
  • Loading merge request is faster after removing dead code
  • Omnibus improvements
  • redis has been updated to 3.2.12, which is a critical security update that fixes multiple vulnerabilities. After upgrading to 11.4, run gitlab-ctl restart redis to ensure the new version is running.
  • GitLab 11.4 includes Mattermost 5.3, an open source Slack-alternative whose newest release includes enhanced search on desktop and mobile, plus much more. It includes security updates and upgrading is recommended.
  • git has been updated to 2.18.1, and libpng to 1.6.35.
  • gnupg has been updated to 2.2.10, gpgme to 1.10.0, libgcrypt to 1.8.3, npth to 1.6, libgpg-error to 1.32, and libassuan to 2.5.1.
  • Certificates in the trusted_certs directory are now set to 0644 permissions instead of 0755.

New in GitLab 11.2.1 (Aug 26, 2018)

  • GitLab 11.2.1 patch release resolves a number of regressions and bugs in 11.2 release.

New in GitLab 11.0.3 (Jul 6, 2018)

  • Revert merge request widget button max height
  • Implement upload copy when moving an issue with upload on object storage
  • Fix broken '!' support to autocomplete MRs in GFM fields
  • Restore showing Elasticsearch and Geo status on dashboard.
  • Fix merge request page rendering error when its target/source branch is missing
  • Fix sidebar collapse breapoints for job and wiki pages
  • Fix size of code blocks in headings
  • Fix loading screen for search autocomplete dropdown
  • Fix ambiguous due_date column for Issue scopes.
  • Always serve favicon from main GitLab domain so that CI badge can be drawn over it.
  • Fix tooltip flickering bug.
  • Fix refreshing cache keys for open issues count.
  • Replace deprecated bs.affix in merge request tabs with sticky polyfill.
  • Prevent pipeline job tooltip from scrolling off dropdown container.
  • Fix 500 Error when attempting to view MR after its target branch was deleted
  • Fix issue count not updating for project members
  • Fix No UI element to edit group label
  • Fix Tooltips scroll along the list within Pipeline jobs dropdown on MR widget
  • Fix Tooltips flicker when highlighting award emoji

New in GitLab 10.8.2 (May 31, 2018)

  • This version contains a number of important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately.

New in GitLab 10.8.1 (May 25, 2018)

  • Fixes runtime errors related to modifying frozen strings
  • Fixes wrong value on CI_DEPLOY_USER environment variable
  • Handle connection errors on environment's prometheus clients properly
  • Fixes error when deleting an empty list of refs
  • Fix system hook not firing for blocked users when LDAP sign-in is used
  • Makes GenericCommitStatus responds to Presentable methods
  • Fixes 500 error viewing admin page due to statement timeouts
  • Fixes dropdown actions in mini pipeline graphs
  • Bump prometheus-client-mmap to 0.9.3
  • Fixes IDE file finder ordering
  • Fixes web IDE review & commit editors getting into incorrect state
  • Render 404 when prometheus adapter is disabled in Prometheus metrics controller
  • Fixes upgrade to 10.8.0-ce.0 fails because of AddIndexesToProjectMirrorData
  • Fixed U2F authentication when used with LDAP

New in GitLab 10.8.0 (May 23, 2018)

  • We've improved release automation, sped up security vulnerability remediation, open sourced a highly requested paid feature, and plenty more.

New in GitLab 10.7.1 (Apr 25, 2018)

  • GitLab 10.7 released with open source Web IDE and SAST for Go and C/C++:
  • Contributing features, reviewing changes, and deploying code is a day in the life of a developer. Today we are making these tasks easier and more efficient with an amazing Web IDE, more flexible pipelines, additional security testing, and so much more.
  • Web IDE is now open source and generally available:
  • At GitLab, we want everyone to be able to contribute, whether you are working on your first commit and getting familiar with git, or an experienced developer reviewing a stack of changes. Setting up a local development environment, or needing to stash changes and switch branches locally, can add friction to the development process. Using the Web IDE you can change multiple files, preview Markdown, review the changes and commit directly all from a browser. You can even open the diff from a merge request and get a side by side view of the changes. The Web IDE is generally available in 10.7 and is now open source, so everyone can benefit.
  • Deploy Tokens:
  • For any organization working with containers, their registry is a key component in their infrastructure. It serves as a versioned repository, providing an easy and secure way of interacting with your container images. A common use for the registry is to serve images to an orchestrator like Kubernetes. It's important for Kubernetes to have access on an ongoing basis. For example, Kubernetes will pull an image on initial deployment, any time a pod restarts, or when scaling additional pods.
  • Previously there were two ways to grant access to the registry and repository. One way is the CI job token which provides temporary access for length of the job, after which it expires. Personal Access Tokens provide long term access but are tied to a specific user. When using the CI Job Token, Kubernetes loses access once the CI job has completed, so ongoing events like pod restarts and scaling fail. Using Personal Access Tokens is also undesirable, because access has to be either shared with a user, or a separate service account must be created which takes up a license.
  • To address these needs more cleanly we have added Deploy Tokens, providing long lived read-only authentication. With a Deploy Token, Kubernetes can now get the images it needs, when it needs them, without being associated with a particular user or having unnecessary access rights.
  • CI/CD flow control based on variables:
  • A company's CI/CD service is the engine of their software engineering process, performing a wide variety of roles from building and testing software, deploying it to production, and frequently more creative tasks as well. With such a varied and open-ended set of uses, it is important for users to be able to run specific jobs only when they need to. GitLab CI/CD already provides a rich set of options for managing flow control, but there were some use cases like a nightly build that were not easy to address. In 10.7 jobs can now be started based on the value of specific variables, enabling new use cases like jobs specific to particular a pipeline schedule or API trigger.
  • SAST for Go and C/C++ languages:
  • As part of Complete DevOps, we are providing a great set of security tools out of the box. Static Application Security Testing (SAST) analyzes your source code for known vulnerabilities, and outputs the results directly on the merge request for easy review. In order to analyze your code however, SAST needs to have support for your language. For this reason we have been broadening the scope of SAST, and now support Go and C/C++.

New in GitLab 10.6.4 (Apr 13, 2018)

  • GitLab 10.6.4 patch release resolves a number of regressions and bugs in 10.6 release.

New in GitLab 10.5.3 (Mar 7, 2018)

  • This version contains a number of important security fixes, and we strongly recommend that all GitLab installations be upgraded to one of these versions immediately.

New in GitLab 10.5.2 (Feb 28, 2018)

  • CE/EES/EEP: Avoid slow File Lock checks when not used
  • CE/EES/EEP: Only check LFS integrity for first branch in push
  • CE/EES/EEP: Fix bug for MR stating "Could not connect to the CI server"
  • CE/EES/EEP: Fix bug when loading an invalid upload URL
  • CE/EES/EEP: Fix bug when checking for a repo in GitAccessWiki
  • CE/EES/EEP: Enable "Legacy Authorization" by default when creating a Cluster on GCP
  • CE/EES/EEP: Fix stacked progress bar bug
  • CE/EES/EEP: Fix bug when attempting to update tracked field for read-only DB
  • CE/EES/EEP: Fix bug to allow branchnames to be named the same as the commit it points to
  • CE/EES/EEP: Fix bug for sidekiq metrics
  • CE/EES/EEP: Fix issue with CI cache key being empty when variable used as the key
  • CE/EES/EEP: Fix bug where diff errors displayed unnecessarily
  • CE/EES/EEP: Improve query performance for Dashboard::SnippetsController#index
  • CE/EES/EEP: Performance improvements when searching for Project members
  • CE/EES/EEP: Improve performance of searching for and auto completing of users
  • CE/EES/EEP: Performance improvements regarding feature flags
  • EES/EEP: Fix performance bar bug
  • EEP: Fix Geo bug uninitialized constant Gitlab::Geo::SignatureTimeInvalidError
  • Omnibus: Fix bug where nginx['redirect_http_to_https'] is ignored
  • Omnibus: Geo: Support a custom database login for PostgreSQL FDW to work with pgbouncer

New in GitLab 9.5.0 (Sep 4, 2017)

  • Everything we do at GitLab, from our integrated product to our monthly releases, is centered on the goal of helping development teams reduce time to value. With each release, we want to help you do more in less time, while also providing an intuitive and user-friendly experience in our product. GitLab 9.5 takes a big step in furthering this goal. This release features improvements to our navigation, new project templates with pre-configured CI, and new automation features for CI and performance monitoring that will save you time and effort.
  • This will be the last 9.x release, as we're preparing to release GitLab 10.0 on September 22nd! Nonetheless, we're shipping some great new features to round off our 9.x releases:
  • To help improve your experience navigating GitLab, we've updated the new navigation, streamlining the UI and reducing the number of clicks it takes to move through your GitLab instance. With the newly added icons and subnav on hover, it's easier and faster than ever to explore GitLab.
  • Getting started on a new project just got faster. In GitLab 9.5, we've introduced Project Templates, which allow you to quickly create a new project that has CI pre-configured.
  • Continuing on our mission to save you time, we've made it possible for GitLab to automatically retry failed jobs ran with GitLab CI/CD. Now, you don't have to worry about losing time going back to your project's pipelines just to hit retry on a failed job.
  • GitLab 9.5 also brings improvements to the latter part of the development lifecycle. With the addition of Automatic Monitoring for Auto Deployed applications we've made it easier for you to collect response and system metrics from your apps.

New in GitLab 9.4.0 (Jul 25, 2017)

  • Surprise is harder to achieve when you do everything in the open. But working in the open gives us the power to tell you why we're shipping what we're releasing today and how this release is setting up GitLab for something even better in the future.
  • GitLab 9.4 lays the foundation of much that is to come, while still giving you some new powers today. You can now formally relate issues to each other, our out-of-the-box-magic monitoring now collects many more metrics without any configuration and we've quadrupled the things you can do with variables in CI.
  • On top of this, we're giving you an actual glimpse into the future with a opt-in Beta of our new navigation. We hope that we can work with you to make it an improvement everyone loves.
  • We are also thrilled to announce that we are shipping a GitLab PowerUp for Trello, making it easy for you to integrate your Trello boards with GitLab!
  • Additionally, to empower our integrations set, we're keen to make your life easier with our new Slack App for GitLab.com!
  • And if one glimpse doesn't suffice, we're aiming to fully automate the configuration of your DevOps toolchain with the vision of Auto DevOps, which will analyze your application and automatically configure your CI/CD pipeline to build, test, and deploy to Kubernetes. To see where we’re heading, check out our vision for Auto DevOps!
  • Related Issues EES EEP:
  • Whenever you share a link from one issue to another, GitLab shortens it and crosslinks it automatically. But when issues get longer and projects more complex, it becomes hard to manage links and quickly find related issues. To solve this problem, we’re introducing Related issues. With Related issues, you can formally declare another issue as related. A link to the other issue, its status and name will be shown in each issue. Simply paste a link to the issue you want to link or search for it by typing # (as you were able to do already) to link it. In the future, we will introduce different types of relationships through this mechanism.
  • New Navigation CE EES EEP:
  • To make it easier and faster to get around GitLab, we’re working on updating our navigation. Because a new navigation can be a big disruption, we’re releasing the first step as an opt-in configuration with GitLab 9.4. To enable the new navigation, click on your profile image in the top right corner and choose Turn on new navigation. We have made adjustments to the global top navigation and introduced contextual navigation in the left menu depending on what page you are currently viewing. The new UI is still a work in progress and will replace the existing navigation in the next few months, please see our blog post about our process and what work still needs to be done.
  • Web Application Monitoring CE EES EEP:
  • As part of GitLab 9.0 we launched system performance management integrated with CI/CD deployments, monitoring deployed applications on Kubernetes by tracking CPU and Memory utilization. This was a great first step, and with GitLab 9.4 we are excited to launch Web Application Monitoring with support beyond Kubernetes. GitLab will now automatically detect key user experience indicators like throughput, error rate, and latency. Simply connect Prometheus to a supported load balancer or HTTP server, and it will identify and begin tracking these statistics. Delivering a great experience is everyone’s responsibility, and GitLab is making this easier by closing the performance feedback loop in the tool developers use every day.
  • Group-level Secret Variables CE EES EEP:
  • Secret variables are really useful when you need a safe place to store sensitive information. Until now, secret variables were stored at the project level. However, we know its common for different projects in the same group to share information on deployment or credentials for accessing external services. Group-level Secret Variables remove the need to duplicate variables from one project to the next: now you can enter these values once, and each project or subgroup in the group will access them automatically. It’s also really simple to update these values. You just change them in one place and they’ll be automatically modified for all of the projects.
  • Variables in Pipeline Schedules CE EES EEP:
  • In GitLab 9.2 we introduced Pipeline Schedules to automatically run pipelines at a specific interval of time, but most teams also want to specify different values for specific variables when running the schedule. In GitLab 9.4, we’ve added the ability to define variables when creating or modifying a pipeline schedule: these values will be added to all the other variables already defined. Using this feature, you can also redefine existing variables to have a different value only for that specific run, for example if you want to have a “daily” pipeline running some tests in a different way.
  • Environment-specific Secret Variables EEP:
  • Variables are often the right solution to define values that are then used during deployments to specific environments. Since different environments (e.g.: staging and production) may require different values for the same task, such as the app name, it is important to create a direct binding between some variables and the related environment. With GitLab 9.4, Environment-specific Variables are introduced to solve this issue, as developers can now define which environments will receive a variable, even using wildcards to include dynamic environments, like `review/*. It is now easy to deploy to different environments with a minimal effort!
  • GitLab Power-Up for Trello CE EES EEP:
  • Using both Trello and GitLab? Now you can make that experience even better with the new GitLab Power-Up! In Trello, when viewing one of your boards, simply go to Power-Ups and scroll to the GitLab Power-Up. After set-up, you will be able to attach merge requests to Trello cards. In Trello, you will need to configure your domain, such as gitlab.com/api/v4 for GitLab.com, and add your personal token.
  • GitLab Slack App for GitLab.com CE EES EEP:
  • GitLab already integrated deeply with Slack (and Mattermost, Microsoft Teams, and HipChat), but we didn’t have an app in the Slack App Directory yet. Today we do! That means setting up Slack integration with your projects on GitLab.com is now much easier. You can set it up from your project settings in GitLab (Settings > Integrations). Soon it will be available from the Slack App directory as well. We’re working together with Slack on making sure private instances will be able to use the same Slack App in the near future. Of course, private instances are able to integrate with Slack using the manual steps outlined in the documentation.
  • Other Improvements in GitLab 9.4:
  • Improved Internationalization CE EES EEP
  • Unified Slack Interface CE EES EEP
  • Group Milestones CE EES EEP
  • Additional GitLab Service Metrics CE EES EEP
  • Customizable Path for CI/CD Configuration CE EES EEP
  • New Cache Policy for CI/CD Configuration CE EES EEP
  • Extended Docker Configuration for CI/CD CE EES EEP
  • Improved Prometheus Monitoring of Kubernetes Deployments CE EES EEP
  • Upcoming Omnibus Package Signing CE EES EEP
  • Security - Add LDAP SSL Certificate Verification CE EES EEP
  • GitLab Runner 9.4 CE EES EEP
  • GitLab Mattermost 4.0 CE EES EEP
  • Omnibus Improvements CE EES EEP
  • Performance Improvements CE EES EEP
  • Experimental PostgreSQL High Availability EEP
  • Mini-Graph for Multi-Project Pipelines EEP
  • GitLab Geo Improvements EEP
  • Object Storage for CI Artifacts EEP
  • Deprecations:
  • openSUSE 42.1:
  • As the openSUSE community has ended support for version 42.1, GitLab has ended support as well as previously announced. Please upgrade to OpenSUSE 42.2 which is officially supported.
  • GitLab CI API v1, GitLab Runner 1.11.x
  • In 9.0 we released a new version of GitLab Runner that is based on the new API v4 instead of the old CI API v1. We are still supporting the old version of the API in GitLab, so users that are still using GitLab Runners 1.11.x can take their time for the migration process. With GitLab 9.6, planned to be shipped on September 22nd, we are going to remove the old CI API from GitLab, making GitLab Runner 1.11.x unable to communicate with the system. If you are using old GitLab Runner (

New in GitLab 9.1.4 (May 19, 2017)

  • CE/EE: Fixed search terms highlight. (!11198)
  • CE/EE: Fixed bug where merge request JSON would be displayed. (!11096)
  • CE/EE: Handle incoming emails from aliases correctly. (!11079)
  • CE/EE: Sort the network graph both by commit date and topographically. (!11057)
  • CE/EE: Handle failures for incoming emails. (!11014/!1810)
  • CE/EE: Fix error on CI/CD Settings page related to invalid pipeline trigger. (!10948)
  • CE/EE: Fix cross referencing for private and internal projects. (!11243)
  • CE/EE: Add missing project attributes to Import/Export. (!10880)
  • EE: GitLab Geo: Backfill projects where the last attempt to backfill failed. (!1785)

New in GitLab 9.1.2 (May 2, 2017)

  • CE/EE: Lazily set UUID in ApplicationSetting for new installations. (!10893/!1733)
  • CE/EE: Remove description for build_events, add pipeline_events. (!10908)
  • CE/EE: Resolve "Milestone sidebar display incorect number of MR when minimized". (!10933)
  • CE/EE: Add index on ci_runners.contacted_at. (!10876)
  • CE/EE: Fix ordering of commits in the network graph. (!10936)
  • CE/EE: Skip validation when creating internal (ghost, service desk) users. (!10949)
  • CE/EE: Refactoring rake task to import GitHub repositories. (!10695)
  • CE/EE: Accept default branch param on notification services. (!10959)
  • CE/EE: correct documentation on opt-out-ness of usage ping. (!10945)
  • EE: Fix commit search on some elasticsearch indexes. (!1745)
  • EE: Fix bug where Geo secondary Sidekiq cron jobs would not be activated if settings changed. (!1754)
  • EE: Fix creating issues by email with Service Desk on. (!1743)

New in GitLab 9.1.1 (Apr 29, 2017)

  • CE/EE: Add a transaction around move_issues_to_ghost_user. (!10465)
  • CE/EE: Properly expire cache for all MRs of a pipeline. (!10770)
  • CE/EE: Add sub-nav for Project Integration Services edit page. (!10813)
  • CE/EE: Fix missing duration for blocked pipelines. (!10856)
  • CE/EE: Fix lastest commit status text on main project page. (!10863)
  • CE/EE: Add index on ci_builds.updated_at. (!10870) (blackst0ne)
  • CE/EE: Fix 500 error due to trying to show issues from pending deleting projects. (!10906)
  • CE/EE: Ensure replying to an individual note by email creates a note with its own discussion ID. (!10890)
  • CE/EE: Fix OAuth, LDAP and SAML SSO when regular sign-ups are disabled. (!10904)
  • CE/EE: Fix usage ping docs link from empty cohorts page. (!10907)
  • CE/EE: Eliminate N+1 queries in loading namespaces for every issuable in milestones. (!10871)

New in GitLab 8.16.1 (Jan 27, 2017)

  • Prevent users from creating notes on resources they can't access:
  • An attacker was able to use the API to post comments on resources that they would not otherwise be able to view, which would "subscribe" them to the notifications for that resource and allow them to receive future updates about it, which may contain sensitive information. See #26249 and #26250 for more details.
  • Prevent users from deleting system deploy keys via the project deploy key API:
  • An attacker was able to delete a system-level deploy key by deleting it from a project they owned via the Deploy Key API. See #26243 for more details.
  • Ensure export files are removed after a namespace is deleted:
  • If a user performed a project export and then deleted (or moved) its containing namespace, an attacker could claim the namespace and access the existing project export if less than an hour had passed. We now ensure that project exports are immediately removed along with the namespace. See #26242 for more details.

New in GitLab 8.15.4 (Jan 15, 2017)

  • Security fixes in 8.15.4, 8.14.6 and 8.13.11:
  • Cross-Site Scripting Vulnerability in Turbolinks:
  • These releases include a patch for a cross-site scripting vulnerability in the Ruby gem Turbolinks. Versions 2.5.4 and earlier of Turbolinks are vulnerable to cross-site scripting attacks when loading attachments with HTML content types. We've released a temporary GitLab fork of Turbolinks while we make a decision on migrating to Turbolinks version 5 or abandoning Turbolinks.
  • Cross-Site Scripting Vulnerability in GitLab-Markup:
  • Also included with these releases is a patch for a cross-site scripting vulnerability in the GitLab Markup gem, forked from the GitHub Markup gem. This vulnerability can be exploited by tricking users into clicking on ReStructuredText files that specify a raw HTML format. Thanks to Jason Ritzke (@Rtzq0) for reporting this vulnerability.
  • Additional changes in 8.15.4:
  • CE/EE: Use #parts instead of #part to read all the parts of the Message.
  • CE/EE: Re-add Google Cloud Storage as a backup strategy
  • CE/EE: Don't instrument 405 Grape calls
  • CE/EE: Speed up group milestone index by passing group_id to IssuesFinder
  • CE/EE: With Gitea v1.0.0, notes are imported
  • CE/EE: Make successful pipeline emails off for watchers
  • Omnibus GitLab: Switch to using gitlab-psql for query against db
  • Omnibus GitLab: Adding /bin/sh to command for analyze_new_cluster.sh call

New in GitLab 8.14.5 (Dec 19, 2016)

  • CE/EE: Fix missing Note access checks in by moving Note#search to updated NoteFinder (#23867)
  • CE/EE: Filter incoming_email_token and runners_token parameters (#25687)
  • CE/EE: Issue#visible_to_user moved to IssuesFinder (#24637)
  • CE/EE: API: Memoize the current_user so that the sudo can work properly. (!8017)
  • Omnibus GitLab: Add attribute client_output_buffer_limit_slave for redis (!1147)
  • CE/EE: Remove 'Leave Project' and 'Leave Group' from settings dropdowns (!7600)
  • CE/EE: Fix display hook error message (!7775)
  • CE/EE: Shows group members in the project members list (!7899)
  • CE/EE: Correct autocomplete for values with special characters (!7910)
  • CE/EE: Remove wrong '.builds-feature' class from the MR settings fieldset (!7930)
  • CE/EE: Avoid escaping relative links in Markdown twice (!7940)
  • CE/EE: Allow branch names with dots on API endpoint (!7963)
  • CE/EE: Fixed timeago re-rendering every element (!7969)
  • CE/EE: Use a single query in Projects::ProjectMembersController to fetch members (!7997)
  • CE/EE: Displays milestone remaining days only when it's present (!7998)
  • CE/EE: Fix Crontab typo for PruneOldEventsWorker to run 4x/day instead of 60x/hour (!8051)
  • CE/EE: Encode when migrating ProcessCommitWorker jobs (!8064)
  • CE/EE: Updates the docs to require GitLab Shell 4.0.3 (!8050)
  • EE: Fix milestone total weight is missing on the milestone page (!944)
  • EE: Remove wrong '.builds-feature' class from the MR settings fieldset (!947)
  • EE: Group members in project members view (!958)

New in GitLab 8.14.4 (Dec 13, 2016)

  • Security fixes in 8.14.4:
  • CE/EE: Replace MR access checks with use of MergeRequestsFinder (#23867)
  • Security fixes in 8.14.4:
  • CE/EE: Destroy a user's session when they delete their account. (#25015)
  • CE/EE: Filter authentication tokens from Sentry output.
  • CE/EE: XSS when LegacyDiffNote is created on a merge request diff containing HTML (#25249)
  • Other fixes in 8.14.4:
  • CE/EE: Fix pipeline author for Slack and use pipeline id for pipeline link (!7506)
  • CE/EE: Resolve "Highlighting lines is broken" (!7090)
  • CE/EE: Fix pipelines tabs (!7709)
  • CE/EE: Fix compatibility with Internet Explorer 11 for merge requests (!7525)
  • CE/EE: Authorize users into imported GitLab project (!7936)
  • CE/EE: Remove caching of Repository#has_visible_content? (!7947)
  • CE/EE: Bump gitlab-shell version to 4.0.3 (!7953)
  • EE: Prevent remote mirrors from failing when project is in pending_delete (!938)

New in GitLab 8.11.2 (Aug 29, 2016)

  • CE/EE: Document protected branches new behavior. (!5934)
  • CE/EE: Fix typo in gitlab-workhorse header. (!5891)
  • CE/EE: Documentation for Issue Boards. (!5713)
  • CE/EE: Fix file links on project page Files view. (!5933)
  • CE/EE: Also check if Akismet is enabled, before showing the Submit as spam button. (!5948)
  • CE/EE: Fix incorrect "stopped impersonation" log message. (!5949)
  • CE/EE: Fix project namespace links. (!5912)
  • CE/EE: Fixed enter key in search input not working. (!5888)
  • CE/EE: Bump SimpleCov merge timeout to 365 days. (!5932)
  • CE/EE: Remove tab stop from issuable form added by description templates. (!5929)
  • CE/EE: Add Ruby 2.3 upgrade notes. (!5940)
  • CE/EE: Use gitlab-workhorse 0.7.11. (!5983)
  • CE/EE: Does not halt the GitHub import process when an error occurs. (!5763)
  • CE/EE: last_push_event widget considers fork events on the main project. (!5978)
  • Omnibus GitLab: Fix mail_room URL for Redis. (!954)
  • Omnibus GitLab: Fixed a regression where the default container registry and mattermost nginx proxy headers were not being set. (!958)

New in GitLab 8.10.4 (Aug 8, 2016)

  • EE: Fix available users in userselect dropdown when there is more than one userselect on the page. (!604)
  • EE: Fix updating skipped approvers in search list on removal. (!604)
  • CE/EE: Don't close referenced upstream issues from a forked project. (#20527)
  • CE/EE: Fix issue with dropdowns enter key not working correctly. (!5544)
  • CE/EE: Fix Import/Export project import not working in HA mode. (!5618)
  • CE/EE: Fix Import/Export error checking versions. (!5638)
  • Omnibus GitLab: Revert Host and X-Forwarded-Host headers in NGINX. (!902)
  • Omnibus GitLab: Better handle the SSL certs whitelisted files when the directory has been symlinked. (!907)
  • Omnibus GitLab: Fix issue where Mattermost log file is created by the root user. (!908)

New in GitLab 8.8.5 (Jun 17, 2016)

  • CE/EE: Import GitHub repositories respecting the API rate limit (!4166)
  • CE/EE: Fix todos page throwing errors when you have a project pending deletion (!4300)
  • CE/EE: Disable Webhooks before proceeding with the GitHub import (!4470)
  • CE/EE: Fix importer for GitHub comments on diff (!4488)
  • CE/EE: Adjust the SAML control flow to allow LDAP identities to be added to an existing SAML user (!4498)
  • CE/EE: Fix incremental trace upload API when using multi-byte UTF-8 chars in trace (!4541)

New in GitLab 8.8.2 (May 26, 2016)

  • EE: [Elastic] Search through the filenames. (!409)
  • EE: Fix repository mirror updates for new imports stuck in "started" state. (!416)
  • CE/EE: Added remove due date button. (!4209)
  • CE/EE: Fix Error 500 when accessing application settings due to nil disabled OAuth sign-in sources. (!4242)
  • CE/EE: Fix Error 500 in CI charts by gracefully handling commits with no durations. (!4245)
  • CE/EE: Fix table UI on CI builds page. (!4249)
  • CE/EE: Fix backups if Docker Registry is disabled. (!4263)
  • CE/EE: Fixed issue with "Merge Immediately" button color. (!4211)
  • CE/EE: Fixed issue with Enter key selecting wrong option in dropdown. (!4210)
  • CE/EE: When creating a .gitignore file a dropdown with templates will be provided. (!4075)
  • CE/EE: Fix concurrent request when updating build log in browser. (!4183)

New in GitLab 8.2.1 (Nov 27, 2015)

  • Fix saving GitLabCiService as Admin Template
  • Fix the artifacts storage path
  • Update required version of LFS client and separate the docs for users and admins
  • Omnibus: create directories for artifacts and lfs-objects
  • Omnibus: Make deploy page show on all pages when up

New in GitLab 7.13.2 (Jul 29, 2015)

  • Fix randomly failed spec
  • Create project services on Project creation
  • Add admin_merge_request ability to Developer level and up
  • Fix Error 500 when browsing projects with no HEAD (Stan Hu)
  • Fix labels / assignee / milestone for the merge requests when issues are disabled
  • Show the first tab automatically on MergeRequests#new
  • Add rake task ‘gitlab:update_commit_count’ (Daniel Gerhardt)
  • Fix Gmail Actions

New in GitLab 7.7.1 (Jan 26, 2015)

  • Improve @mention autocomplete performance
  • Show setup instructions for GitHub import if it is disabled
  • Allow use of http for OAuth applications

New in GitLab 7.6.2 (Jan 8, 2015)

  • This release fixes the services that were broken with the release of 7.6, including Slack and Hipchat integrations.

New in GitLab 7.5.2 (Dec 5, 2014)

  • Don't log Sidekiq arguments by default

New in GitLab 7.4.3 (Nov 19, 2014)

  • Fix raw snippets view
  • Fix security issue for member api
  • Fix buildbox integration

New in GitLab 6.5.0 (Jan 23, 2014)

  • Dropdown menus on issue#show page for assignee and milestone (Jason Blanchard)
  • Add color custimization and previewing to broadcast messages
  • Fixed notes anchors
  • Load new comments in issues dynamically
  • Added sort options to Public page
  • New filters (assigned/authored/all) for Dashboard#issues/merge_requests (sponsored by Say Media)
  • Add project visibility icons to dashboard
  • Enable secure cookies if https used
  • Protect users/confirmation with rack_attack
  • Default HTTP headers to protect against MIME-sniffing, force https if enabled
  • Bootstrap 3 with responsive UI
  • New repository download formats: tar.bz2, zip, tar (Jason Hollingsworth)
  • Restyled accept widgets for MR
  • SCSS refactored
  • Use jquery timeago plugin
  • Fix 500 error for rdoc files
  • Ability to customize merge commit message (sponsored by Say Media)
  • Search autocomplete via ajax
  • Add website url to user profile
  • Files API supports base64 encoded content (sponsored by O'Reilly Media)
  • Added support for Go's repository retrieval (Bruno Albuquerque)

New in GitLab 6.4.0 (Dec 23, 2013)

  • Internal projects:
  • Internal projects can be cloned and browsed by any logged in user. It will also be listed on the public access directory for logged in users.
  • Side-by-side diff view:
  • The unified diff view is still the default but you now can also switch to a side-by-side diff view.
  • Archive old projects:
  • Archiving a project will mark its repository as read-only. It is hidden from the dashboard and it does not show up in searches.
  • Archived projects you have access to will still be listed on your profile page (gitlab.example.com/u/my_user).
  • Project web hooks:
  • Project web hooks were extended with new types of events. Web hooks can now also be triggered when an issue is created or a merge requst is closed.
  • Awesome sorting for the Issues page:
  • Thanks to Jason Blanchard for contributing this very useful feature.
  • README link at the project home page:
  • For projects that have a README that is recognized by GitLab you can now go straight to the README from the project home page.
  • And some good news for people who want easier upgrades;
  • We included an upgrade script with GitLab CE 6.4. This means you will be able to upgrade to next version (6.5) with just one command.

New in GitLab 5.1.0 (Mar 27, 2013)

  • You can login with email or username now
  • Corrected project transfer rollback when repository cannot be moved
  • Move both repo and wiki when project transfer requrested
  • Admin area: project editing was removed from admin namespace
  • Access: admin user has now access to any project.

New in GitLab 4.1 (Jan 23, 2013)

  • Optional Sign-Up
  • Discussions
  • Satellites outside of tmp
  • Line numbers for blame
  • Project public mode
  • Public area with unauthorized access
  • Load dashboard events with ajax
  • Remember dashboard filter in cookies
  • Replace resque with sidekiq
  • Fix routing issues
  • Cleanup rake tasks
  • Fix backup/restore
  • Show preview for note images
  • Improved network-graph
  • Reduce amount of gitolite calls
  • Ability to add user in all group projects
  • Remove deprecated configs
  • Replaced Korolev font with open font
  • Restyled admin/dashboard page
  • Restyled admin/projects page

New in GitLab 4.0 (Dec 28, 2012)

  • Application behaviour changes:
  • New projects will be namespaced (ex. gitlab/vagrant )
  • Every group got own directory in gitolite
  • All projects of group will be moved under group directory ( git remote should be updated )
  • Projects w/o groups will stay with same remote
  • User got username ( For existsing users it will be generated based on email )
  • User create project under his username ( ex. randx/my-project )
  • User can change username. All projects under his username will be moved
  • Group got owner
  • Owner can create projects within group
  • Owner can access every project within a group
  • Admin can transfer any project from one namespace(group, user, global) to another
  • Group or user is a namespace for project. Owner of namespace is an owner of project
  • Other changes:
  • Better PostgreSQL support
  • Added email notificatino on project move
  • Fixed email notification on issue close/reopen
  • Reorganized settings
  • Fixed commits compare
  • Update the UI to allow downloading Patch or Diff for Commit, MR
  • Milestones can be closed now. Milestone stays open unless you close it
  • Show comment events on dashboard
  • Quick add team members via group#people page
  • UI improvements
  • In admin area projects, users and groups sorted alphabetically
  • Issue management page on dashboard improved
  • Better integration with GitLab CI ( requires GitLab CI v1.1.1 )
  • What we removed in 4.0:
  • gitolite 2 support
  • SQLite support (I like it but this database got locked when several users use gitlab at once)
  • API v2 support (its simply incompatible with namespaced projects)
  • What should be updated during migration:
  • gitlab.yml config
  • gitolite post-receive hooks
  • permissions on /home/git/repositories/
  • python2 symlink

New in GitLab 3.0 (Oct 25, 2012)

  • Project groups, web editor and much more