blob: 5f9c8265845be2ef93d8910a27f85e147cbc5dfa [file] [log] [blame] [view]
---
title: "Gerrit Project News #8: February-March 2020"
tags: news
keywords: news
permalink: 2020-03-31-gerrit-news-feb-mar-2020.html
summary: "Gerrit project news from February and March 2020."
hide_sidebar: true
hide_navtoggle: true
toc: true
---
## Cancellation of Spring Hackathon
Due to the ongoing situation with COVID-19, there will be no Spring hackathon
this year. We are looking into the possibility of doing a remote/virtual
hackathon, and discussing plans for the release of Gerrit 3.2 which would have
been done during the hackathon.
## New plugins home page
A [new page](https://www.gerritcodereview.com/plugins.html) that lists all Gerrit plugins has been
added to the homepage. Beside listing the plugins known to the project, that page shows the current
compatibility status of each plugin towards every supported Gerrit version. The page gets updated
at least daily, which makes its CI build status for each plugin and version fairly current.
For each plugin, the known plugin maintainers are also listed. New plugin maintainer candidates are
welcome, to help cover unmaintained plugins. Existing maintainer lists could also be augmented, or
amended, based on maintainer or community feedback.
This new page is reachable from the Code top menu, selecting Plugins.
## Emerging end-to-end test framework
There is an [initial framework](https://gerrit-review.googlesource.com/Documentation/dev-e2e-tests.html)
based on [Gatling](https://gatling.io/), to start implementing end-to-end (e2e) tests. Initially
meant for load testing, the framework started to support functional e2e test scenarios,
[reusing that stack](https://gatling.io/load-testing-continuous-integration/) further.
The [GerritForge](https://www.gerritforge.com) team, who originally
[introduced the framework](https://gitenterprise.me/2019/12/20/stress-your-gerrit-with-gatling/)
for Gerrit, have been using load test scenarios for the high-availability and multi-site plugins,
as well as to validate the Gerrit 3.1 release. Other community members are as welcome to start
using the framework, for either load or functional e2e test purposes. The
[documentation](https://gerrit-review.googlesource.com/Documentation/dev-e2e-tests.html) explains
the test scope differences in Gerrit, and how to use the framework where the e2e scopes apply.
Beside core, Gerrit plugins can now start reusing that framework in turn. Initial yet basic
functional scenarios were recently introduced for the
[high-availability](https://gerrit.googlesource.com/plugins/high-availability/) and
[multi-site](https://gerrit.googlesource.com/plugins/multi-site) plugins. It is currently likely
that more will come, as internal e2e test suites become open-sourced (thus reusable) that way.
## New 'Revert Submission' Feature
Development of the 'Revert Submission' feature has completed, and it is now live
on gerrit-review. See more about this feature in the
[design document](https://www.gerritcodereview.com/design-docs/revert-submit.html).
## New 'Preview/Apply Fix' Feature
When posting robot comments, suggestions for a fix can be directly attached to it. This feature has
been present in Gerrit for some years. However, those fixes weren't shown on Gerrit's UI. This has
changed. Robot comments now have a `Show fix` button when at least one fix is available for them.
![Robot Comment With Show Fix](/images/news-feb-march-2020-show-fix.png)
The button opens a dialog indicating how the fix would modify the code.
![Preview Fix Dialog](/images/news-feb-march-2020-preview-fix.png)
If several fixes are present, users can switch between them and use `Apply fix` on the one they
prefer. The code modifications will end up in a change edit which can be further adjusted before
being published.
## New 'Findings' Tab
The `Findings` tab next to the `Files` section gives an overview of and quick access to all robot
comments on a patch set.
![Findings Tab](/images/news-feb-march-2020-findings-tab.png)
## Frontend framework changes
Frontend development has moved from Bower to NPM, and from HTML to JS for imports.