features:
# TOP FEATURE
  top:
    - name: "Group Security Dashboard"
      available_in: [ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/application_security/security_dashboard/'
      image_url: '/images/11_5/group-security-dashboard.png'
      reporter: bikebilly
      team: secure
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/6709'
      description: |
        Security teams need to easily access information about the security status of all their projects,
        so they know which is the most important task to take next. This is even more important for Directors
        of Security that need to have a high-level view of possible critical issues affecting the
        entire development.

        With GitLab 11.5, a first iteration of a new Security Dashboard is available at group level. It
        provides a summary for all the [SAST](https://docs.gitlab.com/ee/user/application_security/sast/)
        vulnerabilities in all the projects in that group, and a list of
        actionable entries that can be used to start a remediation process. For example, you can open an issue
        with a suggested solution, or simply dismiss the entry if you classify it as a false positive.
        Support for other tests (Dependency Scanning, Container Scanning, DAST) will be added in the future.

        **Note:** The Group Security Dashboard requires the new [`reports`](https://docs.gitlab.com/ee/ci/yaml/README.html#artifactsreports)
        syntax and GitLab Runner 11.5 or higher in order to display results.
        [Auto DevOps](https://docs.gitlab.com/ee/topics/autodevops/) will be supported in a future release.

# PRIMARY FEATURES
  primary:
    - name: "Operations Dashboard"
      available_in: [ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/operations_dashboard/'
      image_url: '/images/11_5/ops-dashboard.png'
      reporter: joshlambert
      team: monitor
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/5781'
      description: |
        For organizations who have embraced DevOps, and for teams with more operations-leaning members, it is important to be able to quickly
        ascertain the health of the projects in your organization.

        GitLab 11.5 introduces a new, operations-focused dashboard, providing a summary of the key operational metrics of each project
        a user is interested in. This includes the time since the last deployment, most recent commit, as well as whether there are any active alerts.

        The dashboard can be set as a user's preferred homepage, or accessed via clicking on the new dashboard icon in the top bar.

    - name: "Access control for Pages"
      available_in: [core, starter, premium, ultimate]
      gitlab_com: false
      documentation_link: 'https://docs.gitlab.com/ee/user/project/pages/introduction.html#gitlab-pages-access-control-core-only'
      image_url: '/images/11_5/access-control-pages.png'
      reporter: jyavorska
      team: release
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/33422'
      description: |
        The 11.5 release introduces a fantastic new community-contributed feature which enables
        access control for Pages. Now, instead of only supporting use cases where the content
        associated with the product is public, you can use Pages to build and publish protected
        content that should only be accessible by project members. Operational documentation, internal
        secrets, or even just private planning or other information can now be confidently published
        automatically in an easy-to-access way, while ensuring only the right people are able to see
        it.

        This is currently not enabled on GitLab.com, you can follow
        [issue 5576](https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/5576)
        for more information.

    - name: "Easily deploy and integrate Knative with GitLab"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/clusters/serverless/'
      image_url: '/images/11_5/knative.png'
      reporter: danielgruesso
      team: configure
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/54027'
      description: |
        Building serverless applications enables teams to focus their time on making a great product
        and eliminates the need of provisioning, managing, and operating servers.

        Starting in GitLab 11.5, you can now deploy [Knative](https://cloud.google.com/knative/) to your
        existing Kubernetes cluster with a single click using the GitLab Kubernetes integration. Knative
        is a Kubernetes-based platform to build, deploy, and manage modern serverless workloads. Tasks that
        were once difficult, such as source-to-container builds, routing and managing traffic,
        and scaling-to-zero, now work effortlessly out of the box.

    - name: "Assign approvers based on Code Owners"
      available_in: [starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/merge_requests/merge_request_approvals.html#eligible-approvers'
      image_url: '/images/11_5/approvals.png'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/1012'
      description: |
        Knowing who to ask to review your merge request isn't always obvious.
        Code Owners, which allow files to be assigned to the responsible team
        members, are now automatically assigned as merge request approvers.

        Assigning approvers automatically based on Code Owners will notify the
        relevant Code Owners of impending changes so that they are able to
        review and approve the changes.

        Support for defining Code Owners was introduced in
        [GitLab 11.3](/blog/2018/09/22/gitlab-11-3-released/#code-owners). In
        upcoming releases, Code Owners will be further integrated into the
        merge request workflow with
        [required approvals](https://gitlab.com/gitlab-org/gitlab-ee/issues/4418).

    - name: "Parallel attribute for faster pipelines"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/ci/yaml/#parallel'
      image_url: '/images/11_5/parallel-keyword.png'
      reporter: jyavorska
      team: verify
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/21480'
      description: |
        The speed of pipelines is an important factor for any team, and running tests or other parallelizable tasks
        tends to take a big chunk of the time for any build. Adding this new keyword gives teams the ability to
        simply parallelize tests, allowing everyone to accelerate their software delivery process. To use this
        feature, simply set the parallel attribute to how many copies of the task you'd like to split it into,
        and GitLab will handle the work of automatically creating the appropriate number of jobs running your task.

# SECONDARY FEATURES
  secondary:
    - name: "Comment on unchanged lines in merge request"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/discussions/index.html#resolvable-discussions'
      image_url: '/images/11_5/unchanged-comment.png'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/13950'
      description: |
        An important purpose of code review is to draw attention to aspects of
        the proposed change that may not have been considered. Often this means
        pointing out unforseen consequences in areas of the code base that are
        unchanged.

        GitLab now supports commenting on both changed and unchanged lines in
        merge request diffs, so that you can directly draw the attention of the
        author to changes that are required that have not yet been made. When
        reviewing a merge request diff you can expand collapsed, unchanged lines
        using the ellipsis (**…**) button.

        In upcoming releases, support for commenting on unchanged lines will be
        expanded from changed files to
        [unchanged files](https://gitlab.com/gitlab-org/gitlab-ce/issues/52501).

    - name: "Group file templates"
      available_in: [premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/group/#group-level-file-templates-premium'
      image_url: '/images/11_5/group-templates.png'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/5987'
      description: |
        File templates for `LICENSE`, `.gitignore`, `Dockerfile`, and
        `.gitlab-ci.yml` files make it easy to add these common files to
        projects. Custom file templates can now be shared with all the projects
        in a group and sub-groups, by configuring a template repository for the
        group.

        Custom templates are useful when the templates provided by GitLab are
        too generic, for example a custom license that should be used for every
        project in the company, or a complex Dockerfile that should be used for
        every microservice.

        Support for instance-wide template repositories was [introduced
        in GitLab 11.3](/blog/2018/09/22/gitlab-11-3-released/#custom-file-templates-for-self-managed-instances).

    - name: "Review App direct link"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/ci/environments.html#go-directly-from-source-files-to-public-pages-on-the-environment'
      image_url: '/images/11_5/direct-page-link.png'
      reporter: jyavorska
      team: release
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/33418'
      description: |
        When you're working on a branch and have only changed a few files, it's not very helpful for the
        Review App link to take you to the root of the website. To make this more useful, we've added a
        dropdown selector to the Review App link which can now take you directly to the page(s) that you've
        changed.

    - name: "Issue Analytics"
      available_in: [premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/group/issues_analytics/index.html'
      image_url: '/images/11_5/issue-analytics.png'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/7478'
      description: |
        In this release, we have provided a dynamic chart showing the number of
        issues created in your group, per month, for the past year. There is even
        a filter that allows you to filter down to a particular scope of issues.

        This will help teams dig more deeply into their issue analytics. For example,
        you can quickly see how many bug issues have been created, if you use a
        bug label.

        See how we plan to [expand on charting capabilities](https://gitlab.com/groups/gitlab-org/-/epics/313)
        and please participate in the discussion.

    - name: "Preview merge request review before submitting it"
      available_in: [premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/discussions/index.html#merge-request-reviews-premium'
      image_url: '/images/11_5/review-preview.png'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/4327'
      description: |
        Code review is an essential practice of successful projects, but
        providing clear and actionable feedback can be difficult. A particular
        challenge is avoiding leaving comments that become irrelevant or
        incomplete as one's understanding of the changes improves as one reads
        more of the diff.

        With this release you are now able to preview your merge request review
        before submitting. Merge request reviews, introduced in GitLab 11.4,
        allow reviewers to draft many items of feedback and submit them all as
        a single action.

        In future iterations, we will improve the feature to send
        [one email notification](https://gitlab.com/gitlab-org/gitlab-ee/issues/4326)
        per merge request review.

    - name: "Keep your email address private"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/profile/#private-commit-email'
      image_url: '/images/11_5/noreply-email.png'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/43521'
      description: |
        It's important to know who is contributing code to your project and be
        able to look up a commit author in the GitLab interface, using Git locally,
        or on a fork hosted elsewhere, but this exposes your email publicly.

        GitLab now provides a `noreply` email address that can be used locally
        and for web commits to help make it easier to keep your email address
        private.

    - name: "New CI/CD syntax for security, quality, and performance report types"
      available_in: [ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/ci/yaml/README.html#artifactsreports'
      reporter: bikebilly
      team: secure
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/52323'
      description: |
        Before GitLab 11.5, reports like SAST or DAST relied on a combination
        of job and artifacts names to be recognized as such by the system. This
        was not optimal to scale and to support more advanced features
        like the Group Security Dashboard, because of the performance implications to access artifacts. With the previous syntax you needed to use specific job names (like `sast`) but now you can specify custom job names.

        In GitLab 11.5 a new implementation has been introduced to leverage the new `reports` syntax. New job
        definitions are now available for
        [SAST](https://docs.gitlab.com/ee/user/application_security/sast/),
        [DAST](https://docs.gitlab.com/ee/user/application_security/dast/),
        [Dependency Scanning](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/),
        [Container Scanning](https://docs.gitlab.com/ee/user/application_security/container_scanning/),
        [License Management](https://docs.gitlab.com/ee/user/application_security/license_compliance/),
        [Code Quality](https://docs.gitlab.com/ee/ci/examples/code_quality.html), and
        [Browser Performance Testing](https://docs.gitlab.com/ee/ci/examples/browser_performance.html).
        The [old syntax has been deprecated](#old-ci/cd-syntax-for-security,-quality,-and-performance-report-types) and could be removed in a future release.
        You are encouraged to upgrade your definitions in order to benefit from improved
        performances and the Group Security Dashboard, even if the old syntax is still working.
        The new syntax requires GitLab Runner 11.5 or above.

    - name: "Open a merge request with a patch via email"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/merge_requests/#adding-patches-when-creating-a-merge-request-via-e-mail'
      video: 'https://www.youtube.com/embed/Y6jb_3hV8Po'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/40830'
      description: |
        GitLab has supported opening a merge request via email for a long time,
        but before sending the email the branch must already exist on the
        server. Now you can open a merge request with only an email by
        attaching one or more patch files (`.patch`).

        Patch files are the standard for sharing and transmitting changes
        between systems. In future releases of GitLab we will build on this
        foundation for
        [distributed merge requests](https://gitlab.com/groups/gitlab-org/-/epics/260),
        which will allow merge requests between GitLab instances, and other
        Git hosting tools too.

    - name: "Empty state for Wiki-only projects"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/wiki/index.html'
      image_url: '/images/11_5/wiki-project-empty-state.png'
      reporter: akaemmerle
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/48731'
      description: |
        We've improved the experience for Wiki-only projects without a default
        project overview page.
        The empty state for this project setup now better encourages users to add
        a page to the relevant Wiki and get these projects off to a great start.

    - name: "Open Jaeger from GitLab"
      available_in: [ultimate]
      image_url: '/images/11_5/jaeger.png'
      documentation_link: 'https://docs.gitlab.com/ee/user/project/operations/tracing.html'
      reporter: joshlambert
      team: monitor
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/4753'
      description: |
        Tracing provides deep introspection into the performance and health of a deployed application, tracking each function or microservice
        which handles a given request. This makes it easy to understand the end-to-end flow of a request, regardless of whether you are using
        a monolithic or distributed system.

        GitLab 11.5 includes an initial integration with [Jaeger](https://www.jaegertracing.io), the [CNCF](https://www.cncf.io)-hosted tracing project,
        allowing users to easily open the Jaeger UI from GitLab.

    - name: "Consistent status-check names for GitHub integration"
      available_in: [premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/integrations/github.html#static--dynamic-status-check-names'
      image_url: '/images/11_5/consistent-check-names.png'
      reporter: jyavorska
      team: verify
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/6696'
      description: |
        It is now possible to configure status checks on the GitHub side that can be marked as "required"
        without having to configure this one by one, based on their name. Previously, the check
        names included the branch name, so it was not possible to do this easily. This feature is
        enabled via the GitHub integration configuration section.

    - name: "Omnibus Go apps now use the GitLab cert directory"
      available_in: [core, starter, premium, ultimate]
      gitlab_com: false
      documentation_link: 'https://docs.gitlab.com/omnibus/settings/ssl.html#install-custom-public-certificates'
      reporter: joshlambert
      team: distribution
      issue_url: 'https://gitlab.com/gitlab-org/omnibus-gitlab/issues/3701'
      description: |
        GitLab includes a number of Go-based applications. Prior to 11.5, these applications utilized the standard OS
        system location for trusted certificates, instead of the Omnibus GitLab directory.

        With this release, Go applications now use the same directory for trusted certificates as the rest of GitLab,
        by default `/opt/gitlab/embedded/ssl/certs/`, making certificate management easier and more straightforward.

        GitLab installations which depended upon the Go applications using the system directory should move those certificates
        to the standard Omnibus GitLab location.

    - name: "Close epic notification"
      available_in: [ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/profile/notifications.html'
      image_url: '/images/11_5/epic-closed-notification.png'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/7272'
      description: |
        We recently released the ability to close epics, namely having different
        open and closed states for epics. In this release, we are adding notifications
        for closing and reopening epics, to help users follow more closely on work
        they are interested in.

    - name: "JSON logging for audit events"
      available_in: [core, starter, premium, ultimate]
      gitlab_com: false
      documentation_link: 'https://docs.gitlab.com/ee/administration/audit_events.html'
      reporter: jeremy
      team: manage
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/54244'
      description: |
        In order to make audit events easier to analyze and ingest outside of GitLab, we've added `audit_json.log` to
        capture audit events in a structured log file. With this change, shipping and parsing logs becomes much easier –
        especially for visualization and analysis in other tools.

    - name: "Autocomplete epic in issue and merge request"
      available_in: [ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/markdown.html#special-gitlab-references'
      image_url: '/images/11_5/autocomplete-epic.png'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/7472'
      description: |
        You can now more easily search and refer to epics while working in an issue
        or merge request. Just type `&` and enter a few numbers or characters in
        the issue or merge request's description or a comment. GitLab's autocomplete
        will search for epics in the immediate parent group, allowing you to select
        one easily all without leaving the current page.

    - name: "File list for browsing merge request diff"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/merge_requests/index.html#merge-request-diff-file-navigation'
      image_url: '/images/11_5/mr-tree-list.png'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/51859'
      description: |
        Moving backwards and forwards between files in the merge request diff
        is necessary in all but the smallest of changes. In addition to the
        [file tree added in
        GitLab 11.4](/blog/2018/10/22/gitlab-11-4-released/#file-tree-for-browsing-merge-request-diff),
        GitLab now includes a searchable file list of changes to
        make it easy to see which files have changed and jump between them,
        whether you prefer a tree or a list.

    - name: "More information about deployments in merge requests"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/merge_requests/index.html#pipeline-status-in-merge-requests'
      image_url: '/images/11_5/enhanced-deploy-information-MR.png'
      reporter: jyavorska
      team: release
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/25140'
      description: |
        Currently, environment information is hidden when a newer pipeline is running. With this change
        we are adding information on in-progress deployments to the widget, so you know that an update
        is on its way.

        One of the most exciting results of this functionality in this release is that the link to the
        current deployment will remain available in cases where a new deployment is running, allowing
        you to still find the link to the Review App. In cases where lots of deployments were constantly
        running, this previously made it quite difficult to get the timing right in some cases.

    - name: "Authenticate with Jira Cloud using email address and API token"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/integrations/jira.html#configuring-gitlab'
      image_url: '/images/11_5/jira-email-api-token.png'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/49936'
      description: |
        Jira Cloud is [removing usernames for authentication](https://confluence.atlassian.com/cloud/blog/2018/06/say-goodbye-to-usernames-in-atlassian-cloud).
        So to support this change, we now allow you to use an email address and
        API token to authenticate with Jira Cloud instead.

    - name: "Automatically navigate to last visited board"
      available_in: [starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/issue_board.html#multiple-issue-boards-starter'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/7760'
      description: |
        As teams use more and more issue boards, it can become cumbersome to navigate
        among many of them in the dropdown navigation. With this release, GitLab
        will automatically send you to the last visited board, whenever you access
        the boards navigation from the sidebar menu of a given project or a group.
        This is saved to the system, so even if you use GitLab between different
        browsers and devices, the last visited board will be saved.

        Note that you can still directly link to a specific board by saving the
        URL of the board when you are viewing it.

        See upcoming planned improvements to [managing multiple boards](https://gitlab.com/groups/gitlab-org/-/epics/336)
        and participate in the comments.

    - name: "Filter by open or closed epics in API"
      available_in: [ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/api/epics.html'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/7615'
      description: |
        We recently released the ability to close epics, namely having different
        open and closed states for epics. In this release, we are exposing that
        state in the API itself, so that you can filter on open or closed epics
        when retrieving a list of them, as well as see the state in a single epic
        retrieved itself.

    - name: "Milestone changed notification"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/profile/notifications.html#issue--epics--merge-request-events'
      image_url: '/images/11_5/milestone-changed-notification.png'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/51520'
      description: |
        GitLab milestones are useful for teams to plan and track work to be done
        in a time-boxed period or to associate with a code release. These dates
        are important for teams to communicate timelines with each other and
        stakeholders in general. So when milestones change, it is critical that
        people are updated.

        With this release, we've added email notifications for changing milestones
        in issues and merge requests, so that people can stay updated if a piece
        of work has been delayed, moved earlier, or just de-scoped.

    - name: "Epic keyboard shortcuts"
      available_in: [ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/shortcuts.html#epics-ultimate'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/4187'
      description: |
        Similar to issues and merge requests, you can perform basic operations in
        an epic page with keyboard shortcuts, helping those users who want to get
        more done, more quickly, without leaving the keyboard.

        Use <kbd>r</kbd> to start a new comment. (It will even quote selected text.)
        Use <kbd>e</kbd> to edit the description. And use <kbd>l</kbd> to change
        labels.

    - name: "Issue Board cards redesigned"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/issue_board.html'
      image_url: '/images/11_5/board-card-design.png'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/47008'
      description: |
        A central place of collaboration in GitLab is Issue Boards, where teams
        can organize and view planned and ongoing work in one location. With this
        release, we've improved the design of issue cards, showing relevant information
        in a simple and organized manner. We are showing the issue title, time-tracking
        information, confidentiality, labels, due date, weight, and assignee, all
        in the card.

    - name: "Render 'index' files like 'README's in repositories"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/repository/index.html#repository-readme-and-index-files'
      image_url: '/images/11_5/index-file-repository.png'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/18933'
      description: |
        When a `README.*` file is present in a directory of a repository, it's
        rendered automatically by GitLab without the need to explicitly
        open it. With GitLab 11.5, it's now possible to do the same thing with
        an `index.*` file.

        This is particularly useful when you also deploy your content online
        using a static site generator. Previously, if you used `README.md` it
        would render to `README.html`, whereas with `index.html` you can now
        have clean URLs since most web servers treat
        `http://example.com/page/index.html` and `http://example.com/page/` the
        same.

        This is not limited to Markdown files as GitLab supports a number of
        [markup languages](https://docs.gitlab.com/ee/user/project/repository/index.html#supported-markup-languages-and-extensions).

    - name: "RBAC creates service account restricted to project's namespace"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/project/clusters/#role-based-access-control-rbac'
      reporter: danielgruesso
      team: configure
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/51716'
      description: |
        Securing Kubernetes instances is paramount for running production-ready, mission-critical apps. RBAC
        provides great power and flexibility in securing your cluster.

        Starting in GitLab 11.5, our Kubernetes integration will create a dedicated service account and role
        binding for each project's namespace which will be used in GitLab CI jobs. This eliminates the need to
        use the `cluster-admin` token when interacting with GitLab CI runners.

    - name: "Discussion activity filter in issues and merge requests"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/discussions/'
      image_url: '/images/11_5/discussion-activity-filter.png'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/51323'
      description: |
        We are glad to see teams collaborating actively in issue and merge request
        comments. For more involved discussions and longer-lived issues and merge
        requests, the discussion activity can become very long, with a lot of generated
        system notes.

        With this release, we've implemented a filter to allow you to focus on just
        comments or system activity in the discussion area of an issue or merge request.
        Your selection is saved for all issues or all merge requests in GitLab.
        So if you prefer one mode, you can just make the selection once, and it
        will persist forever.

        We are planning to bring [the same functionality to epics](https://gitlab.com/gitlab-org/gitlab-ee/issues/7526)
        too.

    - name: "Update Git submodules via API"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/api/repository_submodules.html'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/41213'
      description: |
        Git submodules allow you to include a Git repository within another Git
        repository. GitLab now supports updating the submodule reference via
        the API. This is particularly useful for automation, allowing you to
        keep your project up to date with the latest dependencies using the
        API.

    - name: "Show feedback if Git push validation takes too long"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/topics/git/troubleshooting_git.html#timeout-during-git-pushpull'
      reporter: jramsay
      team: create
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/42790'
      description: |
        Every time you push changes to a Git repository on GitLab, GitLab
        performs checks on each commit to enforce permissions, repository size
        restrictions and validates the presence of LFS objects. In some cases
        large pushes can fail without feedback when validation takes too long.

        GitLab now provides feedback when Git push operations time out because
        validation is taking too long. This will help debug the source of the
        problem by providing better feedback to the user.

    - name: "Discussion activity redesign in issues, merge requests, and epics"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/discussions/'
      image_url: '/images/11_5/discussion-activity-design.png'
      reporter: victorwu
      team: plan
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/29294'
      description: |
        In this release, we've improved the design of discussion activity in issues,
        merge requests, and epics. We've made it easier to read comments and parse
        system note activity, so you can focus on the information that's relevant to
        you at the given moment.

    - name: "Quick access to prioritized Group settings"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/group/'
      image_url: '/images/11_5/group-settings-quick-access.png'
      reporter: akaemmerle
      team: manage
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/49417'
      description: |
        With GitLab 11.5, we are iterating on the settings page of Groups to
        prioritize the most sought-after configuration options. The top-most
        section is expanded by default, and we've clarified labels and links to
        provide clear direction on where to find settings and what they do.
        We're continuously working on this – Project and Admin settings improvements
        are coming soon!

    - name: "'Create new group' page redesign"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/group/'
      image_url: '/images/11_5/create-new-group-redesign.png'
      reporter: akaemmerle
      team: manage
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/50962'
      description: |
        With this release, we are aligning the 'New group' page with the 'New
        project' page, consolidating and repositioning relevant fields for clarity
        and consistency.

    - name: "Help menu in top navigation"
      available_in: [core, starter, premium, ultimate]
      image_url: '/images/11_5/top-navigation-help-item.png'
      reporter: akaemmerle
      team: manage
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/50728'
      description: |
        With this release, we are updating the top navigation bar by moving two
        items into a new, dedicated Help menu section.
        We'll continue to add additional items there related to instance-level
        support and feedback in future iterations coming soon!

    - name: "Remediation info for Gemnasium"
      available_in: [ultimate]
      documentation_link: 'https://docs.gitlab.com/ee/user/application_security/dependency_scanning/'
      image_url: '/images/11_5/gemnasium-remediation.png'
      reporter: bikebilly
      team: secure
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ee/issues/7069'
      description: |
        [Dependency Scanning](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/)
        relies on the [Gemnasium service](https://gitlab.com/gitlab-org/security-products/gemnasium) for the
        majority of supported languages. This allows GitLab to report known vulnerabilities in packages, but
        this information was missing a remediation that helps developers to easily fix the problem.

        With GitLab 11.5, Gemnasium service provides remediations every time the information is available.
        This is then reported in the vulnerability details window, and in the related issue. For example, the
        remediation could report the minimum version a library should be updated to in order to fix the security
        problem.

    - name: "Audit event logging for project features and group settings"
      available_in: [premium, ultimate]
      gitlab_com: false
      documentation_link: 'https://docs.gitlab.com/ee/administration/audit_events.html'
      reporter: jeremy
      team: manage
      description: |
        Audit Events captures important events that take place on your GitLab instance, and we're now capturing additional changes in 11.5:

        - [Project-level feature settings changes](https://gitlab.com/gitlab-org/gitlab-ee/issues/8027)
        - [Group settings changes](https://gitlab.com/gitlab-org/gitlab-ee/issues/8051)

    - name: "GitLab Helm chart improvements"
      available_in: [core, starter, premium, ultimate]
      gitlab_com: false
      documentation_link: 'https://gitlab.com/charts/gitlab/tree/master/doc'
      reporter: joshlambert
      team: distribution
      description: |
        - LDAP and OmniAuth settings have been [unified in the `global` settings](https://gitlab.com/charts/gitlab/blob/master/doc/charts/globals.md#omniauth), making it easier to configure. Users currently configuring it individually for each subchart will need to update their settings to upgrade to 11.5.
        - Git protocol v2 is now enabled.
        - The [GitLab Pseudonymizer](https://docs.gitlab.com/ee/administration/pseudonymizer.html) is [now supported](https://gitlab.com/charts/gitlab/blob/master/doc/charts/globals.md#pseudonymizer-settings).
        - Maven package support is [now available](https://gitlab.com/charts/gitlab/tree/master/doc/advanced/external-object-storage#lfs-artifacts-uploads-packages).

    - name: "Activity dashboard redesign"
      available_in: [core, starter, premium, ultimate]
      image_url: '/images/11_5/activity-dashboard-redesign.png'
      reporter: akaemmerle
      team: manage
      issue_url: 'https://gitlab.com/gitlab-org/gitlab-ce/issues/49403'
      description: |
        With this release, we are updating the activity dashboard design to give a better view into who is
        doing what in your GitLab instance. The new activity feed gives a reader more context on what
        actions have taken place to keep you always up to date.

    - name: "GitLab Runner 11.5"
      available_in: [core, starter, premium, ultimate]
      documentation_link: 'https://docs.gitlab.com/runner'
      documentation_text: "Read through the documentation of GitLab Runner"
      description: |
        We're also releasing GitLab Runner 11.5 today! GitLab Runner is the open source project
        that is used to run your CI/CD jobs and send the results back to GitLab.

        #### Most interesting changes:

        * [Support RAW artifacts](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1057).
        * [Add failure reason for execution timeout](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1051).

        A list of all changes can be found in GitLab Runner's [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-runner/blob/v11.5.0/CHANGELOG.md).

    - name: "Geo improvements"
      available_in: [premium, ultimate]
      gitlab_com: false
      documentation_link: 'https://docs.gitlab.com/ee/administration/geo/replication/configuration.html'
      reporter: akaemmerle
      issueboard_url: 'https://gitlab.com/groups/gitlab-org/-/boards/805065?milestone_title=11.5&label_name[]=Geo'
      description: |
        We continually focus on improving our [Geo](/solutions/geo/) feature for distributed teams. Some of the additional noteworthy improvements in GitLab 11.5 include:

        - [Rails console now always displays primary/secondary state correctly](https://gitlab.com/gitlab-org/gitlab-ee/issues/7963).
        - [Secondary instances now show a more specific flash message on actionable pages](https://gitlab.com/gitlab-org/gitlab-ee/issues/8124).
        - [Geo nodes projects list is now searchable](https://gitlab.com/gitlab-org/gitlab-ee/issues/8121).
        - [Recheck/resync of projects can now be triggered for all projects](https://gitlab.com/gitlab-org/gitlab-ee/issues/8120).
        - [Improved performance of Geo SQL queries](https://gitlab.com/gitlab-org/gitlab-ee/issues/6070).
        - [Major documentation improvements](https://docs.gitlab.com/ee/administration/geo/replication/).

# Omnibus and performance (required)

    - name: "Omnibus improvements"
      available_in: [core, starter, premium, ultimate]
      gitlab_com: false
      documentation_link: 'https://docs.gitlab.com/omnibus/'
      reporter: pm1
      team: teamname
      description: |
        - GitLab 11.5 includes [Mattermost 5.4](https://mattermost.com/blog/mattermost-5-4-user-focused-features-new-data-export-tool-mobile-enhancements-and-more/), an [open source Slack-alternative](https://mattermost.com/) whose newest release includes user-focused features, new data export tool, plus much more. This version also includes [security updates](http://about.mattermost.com/security-updates/) and upgrade is recommended.
        - It is now possible to set the [desired group name](https://docs.gitlab.com/omnibus/settings/configuration.html#disable-user-and-group-account-management) for each GitLab services to run as.
        - Go-based applications included in GitLab Omnibus now utilize the standard Omnibus Gitlab directory for trusted certificates.
        - The maximum number of concurrent connections to GitLab Pages can now be configured using `gitlab_pages['max_connections']`.
        - `bundler` has been updated to 1.16.6, `unicode-display_width` to 1.4.0, `gitlab-monitor` to 2.19.1, and `gitlab-elasticsearch-indexer` to 0.3.0
        - We have improved the readability of the [list of open source licenses in use by GitLab](http://gitlab-org.gitlab.io/omnibus-gitlab/licenses.html).

    - name: "Performance improvements"
      available_in: [core, starter, premium, ultimate]
      performance_url: 'https://gitlab.com/groups/gitlab-org/merge_requests?scope=all&utf8=%E2%9C%93&state=merged&label_name%5B%5D=performance&milestone_title=11.5'
      reporter: multiple
      team: multiple
      description: |
        Some of the more noteworthy performance improvements in GitLab 11.5 include:

        - [Issue board lists perform fewer SQL queries](https://gitlab.com/gitlab-org/gitlab-ce/issues/43034).
        - [Improved performance of the snippets dashboards by a factor of 250](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/22606).
        - [License Management doesn't require Docker-in-Docker, and can now be cached by GitLab Runner](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/22732). See the [new job definition](https://docs.gitlab.com/ee/user/application_security/license_compliance/).
        - [Improve performance of rendering large reports](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/8027).
        - [Significantly cut memory and SQL queries when reloading diffs](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/22725).
        - [Use cached readme blobs where appropriate](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/22325).
        - [Optimize merge request refresh by using the database to check commit SHAs](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/22731).
        - [Reduce SQL queries needed to load open merge requests](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/22709).

# MVP
mvp:
  fullname: "Tuomo Ala-Vannesluoma"
  gitlab: tuomoa
  description: |
    Tuomo did an amazing job by implementing [Access control for Pages](#access-control-for-pages), a highly requested feature.
    Private projects can now restrict access to their content to authorized users. This enables groups of
    people to host internal web pages that may contain sensitive information, for example.

    Thank you, Tuomo! This feature required a significant amount of work across
    [`gitlab-ce`](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/18589),
    [`gitlab-pages`](https://gitlab.com/gitlab-org/gitlab-pages/merge_requests/94),
    and [`omnibus-gitlab`](https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests/2583) GitLab projects.

# COVER IMAGE LICENCE
cover_img:
  image_url: 'https://unsplash.com/photos/yuiJO6bvHi4'
  licence: Unsplash
  licence_url: 'https://unsplash.com/license'

# CTA BUTTONS
cta:
  - title: "Join us for an upcoming event"
    link: '/events/'

barometer:
  reporter: pm1
  description: |
    To upgrade to GitLab 11.5 from the latest 11.4 version, no downtime is required. To upgrade without downtime, please consult the [documentation on downtimeless upgrades](https://docs.gitlab.com/ee/update/README.html#upgrading-without-downtime).

    For this release we have migrations, post-deploy migrations, and to help with the larger migrations we have introduced background migrations.

    GitLab.com migrations took approximately 9 minutes and post-deploy migrations amounted for a total of around 32 minutes. Background migrations on the other hand are sidekiq jobs that will run synchronously, for this release these migrations took around 2 days to complete, no side effects were expected nor present, these target older kubernetes cluster integrations so newer kubernets cluster integrations are not affected.

    GitLab Geo users, please consult the documentation on [upgrading Geo](https://docs.gitlab.com/ee/administration/geo/replication/updating_the_geo_nodes.html).

    Go apps in Omnibus [now use the standard GitLab certificate directory](#go-apps-in-omnibus-now-use-standard-gitlab-certificate-directory). Installations which depended upon the Go applications using the system directory, should move those certificates to the standard Omnibus GitLab location.

# DEPRECATIONS
deprecations:
  - feature_name: "<code>sast_container</code> value in <code>GITLAB_FEATURES</code> environment variable"
    due: Mar. 22, 2019.
    reporter: bikebilly
    description: |
      The `GITLAB_FEATURES` [environment variable](https://docs.gitlab.com/ee/ci/variables/#predefined-variables-environment-variables),
      available to CI/CD jobs, lists all the available features based on the current license/tier.

      The `sast_container` value for [Container Scanning](https://docs.gitlab.com/ee/user/application_security/container_scanning/)
      is now deprecated, and replaced with `container_scanning`. The old value could be removed in GitLab 12.0.
  - feature_name: "Old CI/CD syntax for security, quality, and performance report types"
    due: Mar. 22, 2019.
    reporter: bikebilly
    description: |
      Before GitLab 11.5, jobs and artifacts had to be named specifically to automatically extract report data and show it in the merge request widget.
      While these old job definitions are still working, they have been deprecated and may be removed in the next major release, GitLab 12.0.

      You are advised to update your current `.gitlab-ci.yml` configuration to reflect that change. You can find the new definitions in our
      documentation for
      [SAST](https://docs.gitlab.com/ee/user/application_security/sast/),
      [DAST](https://docs.gitlab.com/ee/user/application_security/dast/),
      [Dependency Scanning](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/),
      [Container Scanning](https://docs.gitlab.com/ee/user/application_security/container_scanning/),
      [License Management](https://docs.gitlab.com/ee/user/application_security/license_compliance/),
      [Code Quality](https://docs.gitlab.com/ee/ci/examples/code_quality.html), and
      [Browser Performance Testing](https://docs.gitlab.com/ee/ci/examples/browser_performance.html).

      The new syntax requires GitLab Runner 11.5 or newer to work correctly.

  - feature_name: "Pipelines older than three months are no longer re-runnable"
    due: Nov. 22, 2018.
    reporter: jyavorska
    description: |
      As of this release, older jobs (>3 months) will no longer be allowed to be "played" or "retried," and rollback
      will no longer be available. As of now we are not actually deleting this data so we can receive feedback on
      potential problems with this change. Please join the discussion in [#50939](https://gitlab.com/gitlab-org/gitlab-ce/issues/50939) if
      you have concerns.
  - feature_name: "Elasticsearch 5.5 and earlier not supported in GitLab 11.5"
    due: Nov. 22, 2018.
    reporter: victorw
    description: |
      GitLab 11.5 will no longer support Elasticsearch 5.5 and below. It will only
      support Elasticsearch 5.6 and 6.x. See the [blog post](/blog/2018/11/16/new-elasticsearch-version-requirements/)
      for additional details.
  - feature_name: "Support for Prometheus 1.x in Omnibus GitLab"
    due: GitLab 12.0
    reporter: joshlambert
    description: |
      With GitLab 11.4 (Oct. 22, 2018) the bundled Prometheus 1.0 version is deprecated in Omnibus GitLab. Prometheus 2.0 is [now included](#prometheus-20-upgrade-for-omnibus-gitlab),
      however the metrics format is incompatible with 1.0. Existing installations can upgrade to 2.0 and optionally migrate their data [using an included tool](https://docs.gitlab.com/omnibus/update/gitlab_11_changes.html#11-4).

      With GitLab 12.0 any installation not yet running Prometheus 2.0 will be automatically upgraded. Metric data from Prometheus 1.0 will not be migrated, and will be lost.
