| --- |
| title: "Gerrit 3.4.x" |
| permalink: 3.4.html |
| hide_sidebar: true |
| hide_navtoggle: true |
| toc: true |
| --- |
| |
| Download: **[3.4.8](https://gerrit-releases.storage.googleapis.com/gerrit-3.4.8.war)** |
| | [3.4.6](https://gerrit-releases.storage.googleapis.com/gerrit-3.4.6.war) |
| | [3.4.5](https://gerrit-releases.storage.googleapis.com/gerrit-3.4.5.war) |
| | [3.4.4](https://gerrit-releases.storage.googleapis.com/gerrit-3.4.4.war) |
| | [3.4.3](https://gerrit-releases.storage.googleapis.com/gerrit-3.4.3.war) |
| | [3.4.2](https://gerrit-releases.storage.googleapis.com/gerrit-3.4.2.war) |
| | [3.4.1](https://gerrit-releases.storage.googleapis.com/gerrit-3.4.1.war) |
| | [3.4.0](https://gerrit-releases.storage.googleapis.com/gerrit-3.4.0.war) |
| |
| Documentation: **[3.4.8](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.8/index.html)** |
| | [3.4.6](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.6/index.html) |
| | [3.4.5](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.5/index.html) |
| | [3.4.4](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.4/index.html) |
| | [3.4.3](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.3/index.html) |
| | [3.4.2](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.2/index.html) |
| | [3.4.1](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.1/index.html) |
| | [3.4.0](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.0/index.html) |
| |
| ## Release highlights |
| |
| ## Important notes |
| |
| ### JCraft JSch client library is disabled per default |
| |
| Deprecated JCraft JSch client library is replaced with MINA SSHD client library |
| per default. There is still option to switch to using JCraft JSch client library. |
| Support for JCraft JSch will be removed in the next gerrit release. |
| |
| ### Default support for Java 11 |
| |
| The java language level is now set to Java 11 by default for Gerrit. |
| |
| * [Issue 13494](https://bugs.chromium.org/p/gerrit/issues/detail?id=13494); |
| Generate a Java 11 Eclipse project by default |
| |
| * Update dev-{eclipse,intellij} development for Java 11. |
| |
| Gerrit source code is still compatible with Java 8. |
| |
| ### Schema changes |
| |
| This release doesn't contain schema changes. |
| |
| The changes index version has been increased to version 61, new change search |
| operators were added: `mergedafter` and `mergedbefore`. |
| |
| To run off-line reindexing of the changes (optional): |
| |
| ```sh |
| java -jar gerrit.war reindex --index changes -d site_path |
| ``` |
| |
| By default the changes index is automatically rebuilt upon the Gerrit startup |
| after the upgrade. |
| |
| ### Zero-downtime upgrade |
| |
| Gerrit supports zero-downtime upgrade from Gerrit v3.3 when configured using |
| a [high-availability configuration](https://gerrit.googlesource.com/plugins/high-availability/+/refs/heads/master/README.md), |
| when the Git repositories are stored in a shared filesystem such as NFS or similar. |
| |
| For upgrading with zero-downtime, you should enable the rolling upgrade migration |
| in `gerrit.config` on both Gerrit servers by setting the |
| [`gerrit.experimentalRollingUpgrade`](http://gerrit-documentation.storage.googleapis.com/Documentation/3.3.3/config-gerrit.html#gerrit.experimentalRollingUpgrade) |
| to `true`. |
| |
| During the zero-downtime upgrade, Gerrit end-users would not notice any outage |
| or service disruption. They will be able to perform any read/write Gerrit operation |
| on the GUI or using the Git protocol. |
| |
| The zero-downtime upgrade consists of the following steps: |
| |
| 1. Have Gerrit servers upgraded to v3.3 in high-availability configuration, |
| healthy and able to handle the incoming traffic properly. |
| 2. Set `gerrit.experimentalRollingUpgrade` to `true` in `gerrit.config` on both Gerrit servers. |
| 3. Set the first Gerrit server unhealthy. |
| 4. Shutdown the first Gerrit server, upgrade to v3.4 and start Gerrit again. |
| 5. Verify that the first Gerrit server is working properly and then make it healthy again. |
| 6. Wait for the first Gerrit server to start serving traffic normally. |
| 7. Repeat steps 3. to 6. for the second Gerrit server. |
| 8. Remove `gerrit.experimentalRollingUpgrade` from `gerrit.config` on both Gerrit servers. |
| |
| ### Downgrade |
| |
| Downgrade to any Gerrit v3.3.x release is possible, but requires the following manual steps: |
| |
| 1. Shutdown a migrated Gerrit v3.4.x server |
| 2. Run Gerrit v3.3.x init |
| 3. Startup Gerrit v3.3.x server |
| |
| ### Breaking changes |
| |
| #### `is:mergeable` predicate is disabled per default. |
| |
| Computing `is:mergeable` has a O(N^2) runtime computation complexity depending |
| on the number of open changes on a branch and on the size of the changes. |
| Hence skip this computation per default to avoid the associated runtime effort. |
| |
| Most Gerrit installation already disabled this feature and thus wouldn't need |
| to change anything. Otherwise, to restore the previous behaviour this option: |
| [`change.mergeabilityComputationBehavior`](http://gerrit-documentation.storage.googleapis.com/Documentation/3.4.0/config-gerrit.html#change.mergeabilityComputationBehavior) |
| should be changed to `API_REF_UPDATED_AND_CHANGE_REINDEX`. |
| |
| #### HTML plugin support is removed |
| |
| HTML plugins should be migrated to JavaScript plugins. |
| This also implies Polymer 2 plugins wouldn't work any more. See also this announcement |
| for more [details](https://groups.google.com/g/repo-discuss/c/YJY8oQZZo44/m/wt-OAosQBAAJ). |
| |
| These unused JavaScript Plugin API methods were removed: |
| |
| * `plugin.annotationApi().setLayer()`, `plugin.annotationApi().enableToggleCheckbox()` |
| * `plugin.changeMetadata().*` |
| * `plugin.changeReply().send()` |
| * `plugin.eventHelper().on()`, `plugin.eventHelper().captureClick()`, |
| `plugin.eventHelper().captureTap()` |
| * `plugin.project().*` |
| * `plugin.settings().*` |
| * `plugin.styles().*` |
| * `plugin.theme().*` |
| * `plugin.get()`, `plugin.post()`, `plugin.put()`, `plugin.delete()`: Replaced by their counterparts in |
| `plugin.restApi()`. |
| |
| #### ChangeAttributeFactory is removed |
| |
| As noted in the [v3.3 release notes](/3.3.html#changeattributefactory-deprecated-and-changeplugindefinedinfofactory-supported), |
| ChangeAttributeFactory has been removed. |
| |
| ## Native packaging |
| |
| ## New features |
| |
| ### Checks UI |
| |
| Gerrit now has a native UI for displaying run/result info from builds, tests, analyzers, etc. |
| The data for this new Checks UI must be provided by JavaScript plugins using the |
| [Checks API](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.0/pg-plugin-checks-api.html). |
| Checks information will be summarized by chips below the commit message. Detailed information |
| is shown on a dedicated `Checks` tab next to the `Files` and `Comments` tabs. |
| |
| ### Unresolved Comments ported to latest patchset |
| |
| Unresolved comments that were left on older patchsets will now also be shown on newer patchsets. |
| The backend provides two new endpoints `ported_comments/` and `ported_drafts/` for the UI to |
| retrieve the data and for showing the comments in the correct position. |
| |
| ### Comment Chips and Context |
| |
| Comment state (resolved, unresolved, draft) is summarized by chips below the commit message. The |
| Comments Tab and the Change Log will not just show the comment thread, but also the snippet of |
| code (where the comment was made) as context. |
| |
| ### REST APIs |
| |
| * Accounts |
| * Changes |
| * Groups |
| * Projects |
| |
| ## End-to-end tests |
| |
| ## Plugin changes |
| |
| ## Gerrit UI changes |
| |
| * Limit overview image interactions to primary mouse button |
| |
| * Fix: cannot select names in hovercards in the reply dialog |
| |
| * Fix thick border on votes in reply dialog |
| |
| * Add a simple hovercard for check runs |
| |
| * Add hover states to summary chips |
| |
| * Align relation chain section with the change info section and button |
| |
| * Show 'show all' button only when commit message has 17 or more lines |
| |
| * Show hovercard actions in submit requirement account chips |
| |
| * Update UX for selecting and filter checks |
| |
| * Show hovercard actions in change log |
| |
| * Fix condition check of show_file_comment_button |
| |
| * Do not try to open reply dialog when change is not loaded |
| |
| * Fix Show all button on related changes for wide screen |
| |
| * Explicitly refit overlay for cherry pick dialog |
| |
| * Align text and radio button in cherry pick dialog |
| |
| * PolyGerrit: Simplify some regular expressions |
| |
| * Redesign Show all button in related changes |
| |
| * Add View Diff button to comment context |
| |
| * Fix show more button |
| |
| * Comments tab - radio buttons |
| |
| * [Issue 14057](https://bugs.chromium.org/p/gerrit/issues/detail?id=14057); |
| Add check for undefined commentThread property in submit dialog |
| |
| * Do not render confirm submit dialog until it is opened |
| |
| * Show unresolved comments in the confirm submit dialog |
| |
| * Show View Diff button for merge change messages |
| |
| * trigger range highlight on long range comment chip hover |
| |
| * [Issue 13905](https://bugs.chromium.org/p/gerrit/issues/detail?id=13905); |
| Fix attention icon in reply dialog |
| |
| * Enable prev/next button on first/last file to go to change page |
| |
| * A11y - when dialog opened make rest of page unfocusable |
| |
| * Add feedback button to top bar |
| |
| * Fix the "View Diff" button padding |
| |
| * Disable cherry pick button if branch is not specified |
| |
| * Add tooltip when Send Reply button is disabled |
| |
| * Do not show quick approve button on merged changes |
| |
| * Use RestApiService instead of Polymer element |
| |
| * Move chunks - UX improvements |
| |
| * Show quick-approve button even when change is already approved |
| |
| * A11y - Shortcuts tables in dialog |
| |
| * A11y - return focus when closing dialog |
| |
| * Provide clearer above / below mapping for context expansion buttons |
| |
| * Ensure changes with outdated patchsets have a disabled submit button |
| |
| * Add Publish button to editor |
| |
| * Update Save button to Save & Close file in edit view |
| |
| * A11y - Fix reading whole diff preferences dialog |
| |
| * Replace polymer readonly attribute with ts readonly |
| |
| * [Issue 13511](https://bugs.chromium.org/p/gerrit/issues/detail?id=13511); |
| Fix repositioning the reply dialog when the attention section expands |
| |
| * [Issue 13506](https://bugs.chromium.org/p/gerrit/issues/detail?id=13506); |
| Change the tooltip of the 'MODIFY' button to be fancier |
| |
| * Fix 'Send' button being enabled even without the user making any changes |
| |
| * Add more functionalities to hovercard |
| |
| * Change when and how attention can be modified in the reply dialog |
| |
| * Use a selection chip also in the attention summary of the reply dialog |
| |
| * [Issue 13427](https://bugs.chromium.org/p/gerrit/issues/detail?id=13427); |
| Do not show attention related hovercard actions to guest users |
| |
| ## Documentation changes |
| |
| * Documentation: SHA-1 iso. SHA1 |
| |
| * [Issue 14295](https://bugs.chromium.org/p/gerrit/issues/detail?id=14295); |
| Tidy up cross-repository-changes documentation |
| |
| * Add user privacy documentation |
| |
| * Document how to get pretty-printed JSON for REST calls |
| |
| * Fix image url in documentation page |
| |
| * Documentation: avoid * in ref expressions. |
| |
| * Document a 24h waiting period for features/API extension |
| |
| * Update the documentation of `ReviewInput.tag` |
| |
| * Document when cherry pick fields in ChangeInfo are set |
| |
| * Fix documentation of config_web_links field in ProjectAccessInfo |
| |
| * Add documentation for change.maxFiles and change.maxPatchSets |
| |
| * Add user documentation for ported comments |
| |
| * DeleteTags: document corner case behavior |
| |
| * CreateTag: document why we don't check for visibility |
| |
| * CommitsCollection: document parseBody() call |
| |
| * Tidy up dev-plugins documentation table of files |
| |
| * Add more details of what a plugin's documentation contains |
| |
| * Fix documentation for MoveAPI keepAllVotes option |
| |
| * [Issue 11621](https://bugs.chromium.org/p/gerrit/issues/detail?id=11621); |
| Document that a CVE should be filed for security issues |
| |
| * Document that external-ids paths variably nested |
| |
| * Documentation: clarify how the default branch is set |
| |
| * Document log4j config override |
| |
| * Document how to generate the html documentation |
| |
| * Replace obsolete ACCOUNT_GROUPS table in documentation |
| |
| * Document how vacant non-Google ESC seats get refilled |
| |
| ## JGit changes |
| |
| * Update JGit to c82818e0e |
| |
| This update includes this [change](https://git.eclipse.org/r/c/jgit/jgit/+/122288), |
| which (when configured) will make repacking with Gerrit less racy by ensuring a pruned |
| object is still available for some amount of time after repacking finishes. |
| |
| * Update jgit to 9bfb0f3a4 |
| |
| * Update jgit to 4560bdf7e |
| |
| * InitJgitConfig: Git protocol v2 is enabled per default |
| |
| * Add passing the 'compression-level' argument to the JGit ArchiveCommand |
| |
| * Update JGit to 59420886e98bfcb574511cea191ccb3953004610 |
| |
| * Update JGit to 415788df2 |
| |
| * [Issue 13544](https://bugs.chromium.org/p/gerrit/issues/detail?id=13544); |
| Upgrade JGit to 5cd485e5 |
| |
| ## Elasticsearch changes |
| |
| * Move elasticsearch back to WORKSPACE |
| |
| * Elasticsearch: Add support for configuring REST client timeouts |
| |
| ## Other dependency changes |
| |
| * [Issue 14075](https://bugs.chromium.org/p/gerrit/issues/detail?id=14075); |
| Bazel: Specify exact dependencies for licenses rules |
| |
| * Upgrade Flexmark to 0.50.42 |
| |
| * Upgrade jackson-core to 2.12.0 |
| |
| * Upgrade protobuf version to 3.14.0 |
| |
| * Upgrade jetty version to 9.4.36.v20210114 |
| |
| * Upgrade rules_nodejs version to 3.2.3 |
| |
| * Upgrade MINA SSHD version to 2.6.0 |
| |
| * Trim dependencies in httpd/auth/restapi/BUILD |
| |
| ## Other core changes |
| |
| * [Issue 13140](https://bugs.chromium.org/p/gerrit/issues/detail?id=13140); |
| [Issue 14330](https://bugs.chromium.org/p/gerrit/issues/detail?id=14330); |
| OpenID: Remove support for Yahoo! OpenID provider |
| |
| * ChangeInfo: change _number from int to Integer |
| |
| * PatchScriptFactory: Access Metrics constants in static way |
| |
| * MissingMetaObjectException: Add default serialVersionUID |
| |
| * Flush file diff cache after change Ic1eeccfeb6b18f6 |
| |
| * Support panning magnified image by dragging |
| |
| * Add comments on boolean arg for calls of ProjectLevelConfig#getWithInheritance |
| |
| * Re-render diff when useNewImageDiffUi is changed |
| |
| * Include the boy scout rule in Gerrit contribution guide |
| |
| * Add the meta_diff endpoint to the Change API |
| |
| * Indicate soft hyphen in diff |
| |
| * Use MINA sshd library for key generation and export |
| |
| * [Issue 12599](https://bugs.chromium.org/p/gerrit/issues/detail?id=12599); |
| Git transport: Switch to using Apache MINA ssh client per default |
| |
| * [Issue 12599](https://bugs.chromium.org/p/gerrit/issues/detail?id=12599); |
| Git transport: Add option to switch to using MINA ssh client |
| |
| * Update file status colors |
| |
| * Make rows in change log with same height (36px) |
| |
| * Fix file size for executable files in new diff cache |
| |
| * Ensure image diff data URLs are accepted by goog.html.SafeUrl |
| |
| * [Issue 14301](https://bugs.chromium.org/p/gerrit/issues/detail?id=14301); |
| Fix change reload not loading because js error in checks service |
| |
| * [Issue 14300](https://bugs.chromium.org/p/gerrit/issues/detail?id=14300); |
| Revert "Revert "Convert gr-app_test to typescript"" |
| |
| * Convert SectionSortCache to use get/loader instead of getIfPresent/put |
| |
| * Add comments chips to tab navigation |
| |
| * [Issue 14300](https://bugs.chromium.org/p/gerrit/issues/detail?id=14300); |
| Revert "Convert gr-app_test to typescript" |
| |
| * Expose auto-value-gson in plugin API |
| |
| * Improve vote chips in dark theme |
| |
| * Let image diff builder know when to use new UI |
| |
| * Add border outline for +1, -1 |
| |
| * Glossary terms regarding Events |
| |
| * Improve alert message for syntax highlighting turned off |
| |
| * Show both 'Expand All' and 'Collapse All' if some files are expanded |
| |
| * Add the missing green-400 color |
| |
| * Add basic overlay / blink image viewer |
| |
| * Fix regression - enable insensitive search for repo search |
| |
| * Introduce a glossary section |
| |
| * Move all soy templates files to unique namespaces |
| |
| * Add commitSha to the Checks API fetch() interface |
| |
| * Load multiple groups more efficiently |
| |
| * Persist group cache by uuid |
| |
| * Preload comments with context |
| |
| * Add simple attempt support to Checks UI |
| |
| * Update the header of the Checks tab |
| |
| * Specify background color for dark theme for ported comments |
| |
| * Move InternalGroup to the entities package |
| |
| * Add an internalId to check runs and results |
| |
| * Fix expanded result rows to not react on click to expand/collapse |
| |
| * [Issue 12639](https://bugs.chromium.org/p/gerrit/issues/detail?id=12639); |
| Bump guice version to 5.0.1 |
| |
| * Compute AutoMerge commits synchronously when processing merge commits |
| |
| * Reduce tooltip delay from 500 to 200 ms |
| |
| * Add comment context to draft comments |
| |
| * Add 6 colors for check result tags |
| |
| * Update colors |
| |
| * SubmitRecords: Accept empty records from the change index |
| |
| * ChangeData: Disallow computing submit rules when serving query results |
| |
| * Fix computation of ChangeData#merge |
| |
| * Describe Timing reporting constants |
| |
| * Adapt old path in FileInfoJsonNewImpl to old diff cache representation |
| |
| * Fix NPE in FileInfoJsonComparingImpl when base = null |
| |
| * Add ChangeInfo to the ChangeData that the Checks API send to plugins |
| |
| * Introduce reporting constants - Timing |
| |
| * Navigate to previous unreviewed file when pressing "p" |
| |
| * Add timeout to DiffOperations |
| |
| * Switch GetDiff to use the new diff cache |
| |
| * Add spacing between party poppers and text in the comment tab |
| |
| * Add more spacing between related changes sections |
| |
| * Stop container jump on show all/less in Other Labels |
| |
| * Implement host-level default for 'HEAD' when new projects are created. |
| |
| * Add user guide for using topics. |
| |
| * Fix auto-merge detection in new diff cache |
| |
| * Replace tap by click event |
| |
| * Ignore new work-in-progress status if it hasn't changed |
| |
| * Add frontend reporting of "usp" URL parameter |
| |
| * Add tracking to the global Gerrit object |
| |
| * Fix endpoint parameters for check result rows |
| |
| * Fix typing of 'reply' event |
| |
| * Add link that mentions bots to the attention set user guide |
| |
| * Introduce reporting constants - Execution |
| |
| * Lowercase C in 'No Comments' |
| |
| * GrCursorManager: One-way-bind index |
| |
| * Move GrCursorManager element hooks to parents |
| |
| * [Issue 14214](https://bugs.chromium.org/p/gerrit/issues/detail?id=14214); |
| Fix alert text color |
| |
| * Replace this.async() with setTimeout() |
| |
| * Dark launch the new diff cache for the list files endpoint |
| |
| * Nothing to be forward-compatible with Lit 2 |
| |
| * Replace at-/de-tached with dis-connectedCallback |
| |
| * Introduce reporting constants - Life Cycle |
| |
| * Related changes sections use all space if needed |
| |
| * Autocomplete for adding topic |
| |
| * Update designdoc to current state |
| |
| * Show toast when user stars a change |
| |
| * [Issue 14199](https://bugs.chromium.org/p/gerrit/issues/detail?id=14199); |
| Add attention operator for auto-complete |
| |
| * UI improvements for show all bar in commit message |
| |
| * Clean up ported comments experiment |
| |
| * Fix tracking of plugin-api calls |
| |
| * Update logic for clicking checks chips in the summary |
| |
| * Adapt old/new paths of the new diff cache to current Get Diff behaviour |
| |
| * Add tooltips to check links |
| |
| * Do not mark file reviewed when navigating using "n" |
| |
| * Read SubmitRecords back from NoteDb if allowClosed is false |
| |
| * PatchScriptFactory: Add logging statements for dark launch in mismatch |
| |
| * Minor improvements to ported comments message without range |
| |
| * Show arrows that indicate collapsed ancestors/descendents |
| |
| * Add count of results to section headers of check results |
| |
| * Add a 'usp' URL parameter that can be used for tracking |
| |
| * Hide comment context if screen width is less than 1200 px |
| |
| * Minor improvements to comment context |
| |
| * Add a request parameter to the Get Diff endpoint to use new diff cache |
| |
| * [Issue 12983](https://bugs.chromium.org/p/gerrit/issues/detail?id=12983); |
| Allow users to specify default branch when creating a repo |
| |
| * Add commit message to ChangeData of Checks API interface |
| |
| * Move show file comment to RenderPreferences |
| |
| * Convert ranged comment and move chips into hints |
| |
| * Implement syntax highlighting for comment context |
| |
| * Only show run and results filters in new Checks UI when needed |
| |
| * Modify the GetDiff endpoint to use the redesigned diff cache |
| |
| * Use Python 3 in populate-fixture-data.py |
| |
| * Fix reading empty subsections from plugin config |
| |
| * Add tracking for all frontend API calls |
| |
| * Add regular polling for checks |
| |
| * Implement patchset picker for new Checks UI |
| |
| * ProjectLevelConfig: Cache parsed config and avoid reparsing |
| |
| * Feedback for triggered actions |
| |
| * Fix tiny performance nit in ApprovalInferance |
| |
| * Enforce size limits for post submit diffs |
| |
| * Do not call Diff Cache when not needed |
| |
| * New Change Summary - fixing styling issues |
| |
| * Use StringBuilder instead of String concatenation to avoid O(n^2) performance. |
| |
| * Add separator between date and patchset in change log |
| |
| * Add a loading state to the checks model and use it for the summary |
| |
| * Fix how the change gets updated in the change-model and -service |
| |
| * [Issue 14141](https://bugs.chromium.org/p/gerrit/issues/detail?id=14141); |
| Add more data to successful runs in the new Checks UI |
| |
| * Update all rows of a change on the dashboard when one is changed |
| |
| * Handle checks summary chip clicks by filtering the tab accordingly |
| |
| * ReviewJson: Load SubmitRecords from ChangeData to avoid reevaluation in loop |
| |
| * Fix caching for SubmitRecords in ChangeData |
| |
| * Implement expanding and collapsing of run and result sections |
| |
| * Replace all colors with css vars defined in app-theme |
| |
| * Fix chip styles in Checks UI for dark theme |
| |
| * Introduce components for new image diff UI |
| |
| * Fix alignment of runnable chip title |
| |
| * Retry the creation of auto-merge commits more persistently |
| |
| * Use primary background color var to support dark theme |
| |
| * Retry submits more persistently |
| |
| * Add 'parentof' operator that matches parent changes for a change |
| |
| * Allow CCs to change the attention set |
| |
| * Avoid using underscores for private properties |
| |
| * Implement filtering and lazy loading of checks |
| |
| * New change summary - align count nonvisible changes |
| |
| * Change the long comment threshold from 5 to 10. |
| |
| * Adding sameTopic, mergeConflicts, cherrypicks to new change summary |
| |
| * Fix rebase action in new change summary |
| |
| * Expose instanceId in GerritInfo |
| |
| * Add readonly to restApiService property |
| |
| * Properly check the required 'action' property |
| |
| * Change the Checks fetch API to send a data object |
| |
| * Add a plugin endpoint to the expanded check result |
| |
| * Add support for top-level actions |
| |
| * Do not render more than 5 links in one check result row |
| |
| * Fix the gap between commit message and summaries |
| |
| * Limit total lines of context shown |
| |
| * Highlight the entire line in comment context for line comments |
| |
| * Click on comment chip will select same category in comments tab |
| |
| * Move render only properties to RenderPreferences |
| |
| * Filter out merged changes when submitting a topic |
| |
| * [Issue 14102](https://bugs.chromium.org/p/gerrit/issues/detail?id=14102); |
| Return empty context if the comment range is outside file boundaries |
| |
| * GetChange: provide meta=SHA1 option |
| |
| * Change expand diff context shortcut to be a toggle |
| |
| * New Change Summary - small fixes |
| |
| * Disallow creating projects with Gerrit internal refs as branch input |
| |
| * Add context padding to comment context request |
| |
| * Add zero state messages for Checks and Comments |
| |
| * Reduce the gap between commit message and summaries |
| |
| * GetChange: populate ChangeInfo.metaRevId with the NoteDb meta ref SHA1 |
| |
| * Change cursor to pointer for run selection chips |
| |
| * Fix 'Completed without results.' font-weight |
| |
| * Highlight comment range |
| |
| * Vertically align first run section with first result section |
| |
| * Show the lines of code around a comment as context |
| |
| * Adding Related changes to new change summary |
| |
| * Request comment context along with the comments from server |
| |
| * Exclude unneeded ref prefixes when getting refs |
| |
| * Set commit message min-height to 100px |
| |
| * Add resolved text to comment |
| |
| * Filter robotComments without Human Reply |
| |
| * Change horizontal padding of summary chip from 4px to 8px |
| |
| * Add experiment ID for new image diff UI |
| |
| * Support experiment features in Gerrit backend |
| |
| * Create and move plugin APIs to api/ folder |
| |
| * [Issue 14080](https://bugs.chromium.org/p/gerrit/issues/detail?id=14080); |
| Split configs for RevisionDiffIT to different subclasses |
| |
| * Manually revert RefFilterOptions.returnMostRecentRefChanges |
| |
| * Check for old and new file modes in FileDiffCacheImpl |
| |
| * Handle single file diffs for non-existent files |
| |
| * Fix the alignment of the Change Info section |
| |
| * Change SAVE to SEND AS WIP |
| |
| * Set min-width for search |
| |
| * Add handling for run actions in new Checks UI |
| |
| * uploadPackAuditEventLog: Avoid commit timestamp mismatch |
| |
| * Find out why the error-manager initiates page reloads |
| |
| * Fix bug: don't lookup in NoteDb when reading cached changes |
| |
| * InternalServerWithUserMessageException: Add serialVersionUID |
| |
| * [Issue 14046](https://bugs.chromium.org/p/gerrit/issues/detail?id=14046); |
| Fix bug: Do not change WIP status when not needed during rebase |
| |
| * Fix long range comment selection on Firefox |
| |
| * Clarify LOST value of LineNumber |
| |
| * Fix the height and background color of comments tab header |
| |
| * Fix the metadata reviewers line height |
| |
| * Small styling fix of successful check summary |
| |
| * Collapsing related changes |
| |
| * [Issue 13836](https://bugs.chromium.org/p/gerrit/issues/detail?id=13836); |
| Add a css var for coloring change log entries by service users |
| |
| * Fix account overflow problems in Change Log |
| |
| * Fix bug: also advertise refs/changes/../robot-comments when applicable |
| |
| * Fix bug not loading robot comments notes |
| |
| * Show all bar when editing commit message |
| |
| * Clean up auto reload dashboard experiment |
| |
| * Fix CmdLineParser.MyParser to not throw ClassCastException |
| |
| * Add option to dismiss new messages toast |
| |
| * [Issue 13717](https://bugs.chromium.org/p/gerrit/issues/detail?id=13717); |
| Add reviewers to attention set when replying to WIP changes |
| |
| * Some small checks summary UI tweaks |
| |
| * Fix a tiny bug in FileDiffCache for commit messages |
| |
| * Add selection of check run chips |
| |
| * Update comment tooltip if shortcuts are disabled |
| |
| * Drop outdated comments from Change.java |
| |
| * Configure maximum allowed value for the number of context padding lines |
| |
| * Add the context-padding parameter to the comment context |
| |
| * [Issue 13571](https://bugs.chromium.org/p/gerrit/issues/detail?id=13571); |
| Suppress keyboard shortcuts if user has disabled them |
| |
| * Revise the summary of the new Checks UI |
| |
| * Inline entity protobufs directly into cache protobufs |
| |
| * Fix FilesInCommitCollection when parent = 0 |
| |
| * Add to missing `declare` statements |
| |
| * New Change Summary - Submitted together |
| |
| * FileEdits: Simplify instance creation |
| |
| * Retry more often on submit |
| |
| * Show avatars for unresolved comments authors |
| |
| * Extract persistent cache base factory |
| |
| * Move DiffLayer to the API |
| |
| * Move move-link-click event details to API |
| |
| * Move LineNumber to API |
| |
| * Move ContentLoadNeededEventDetail to the API |
| |
| * Make GrDiffGroupRange use LineRange |
| |
| * Fix being able to reload the Checks UI |
| |
| * Comments summary - unresolved comments + styling |
| |
| * Introducing new component for relation chain |
| |
| * Use a new custom exception instead of StorageException on submit |
| |
| * Left align 'No changes need your attention' message' |
| |
| * Add a RefFilterOption to always return all most recent ref changes |
| |
| * Send all user's votes instead of only changed votes |
| |
| * Add single file diff to the DiffOperations interface |
| |
| * [Issue 14034](https://bugs.chromium.org/p/gerrit/issues/detail?id=14034); |
| Fix bug of removableReviewers without votes |
| |
| * Add extra width to display full names |
| |
| * Resolve TODO about removing SPECIAL_PATCH_SET_NUM |
| |
| * Comments Summary - initial work |
| |
| * [Issue 13392](https://bugs.chromium.org/p/gerrit/issues/detail?id=13392); |
| Fix text overflow in account labels |
| |
| * [Issue 12536](https://bugs.chromium.org/p/gerrit/issues/detail?id=12536); |
| Auto focus on the first input field |
| |
| * [Issue 14000](https://bugs.chromium.org/p/gerrit/issues/detail?id=14000); |
| Fix being able to flip your own attention flag |
| |
| * Fix font-weight in new Checks UI |
| |
| * LocalDiskRepositoryManager: Don't compute base path before it is needed |
| |
| * Handle the comment context for merge list |
| |
| * Fix comment context for commit messages |
| |
| * New change summary - commit message with show all bar |
| |
| * Apply same spacing rules for long range chips as in move detection |
| |
| * Add message that files were not changed on submit |
| |
| * Fix loading of plugin provided coverage layer |
| |
| * Allow user to re-vote their same vote |
| |
| * ReviewerRecommender: Fix an imprecise comment |
| |
| * Add author name to new messages toast |
| |
| * [Issue 2335](https://bugs.chromium.org/p/gerrit/issues/detail?id=2335); |
| Add repository browser link to repo detail page |
| |
| * Adapt getRefs + filter to use the more efficient implementation |
| |
| * Use quotes in search query only when neccessary |
| |
| * Use the redesigned diff cache in the list files endpoint |
| |
| * Fix diff cursor side for chunks on first or last line of file |
| |
| * Add undefined check for accessing account id |
| |
| * Change linked URL for topic |
| |
| * Return the commit message and merge list for auto-merge with \> 2 parents |
| |
| * Prevent duplicate ranged comment chips on rerender |
| |
| * Update message text in ported comments |
| |
| * Replace the placeholders in checks tab with something more decent |
| |
| * Allow posting the same vote on a new patchset |
| |
| * Do not show fake runs by default, but allow them to be toggled |
| |
| * Introduce material web components for use |
| |
| * Prevent skipping chunks on first or last line of file |
| |
| * A11y - announce that change is in edit mode |
| |
| * Propagate error's text received from backend to a plugin |
| |
| * Add an option for checks to provide HTML results |
| |
| * [Issue 12838](https://bugs.chromium.org/p/gerrit/issues/detail?id=12838); |
| Add manual sync of cursor for gr-change-list |
| |
| * Move CommentRange to api/ |
| |
| * Move GetOAuthToken out of the core restapi |
| |
| * Return empty comment context if line and range info are not available |
| |
| * Add basic support for expanding a checks row |
| |
| * Fix issue with rounding in calculation of time duration |
| |
| * Reload dashboard when visibility changes |
| |
| * [Issue 13970](https://bugs.chromium.org/p/gerrit/issues/detail?id=13970); |
| Increase the memory allocation for acceptance tests to 512m |
| |
| * Move the Side enum to the API |
| |
| * Reload ported comments when patchset picker is changed |
| |
| * [Issue 13914](https://bugs.chromium.org/p/gerrit/issues/detail?id=13914); |
| Prioritize 'ADDED' entries over 'DELETED' for file diffs |
| |
| * Refine the Checks Results UI |
| |
| * A11y - Each page should have only one main |
| |
| * Fix getSelection error |
| |
| * Reland: Use LoadingCache#getAll in AccountCacheImpl |
| |
| * Adapt voting chips to new chip style sizing |
| |
| * Handle clicks on new checks chips |
| |
| * Refine the UI of the checks chips |
| |
| * Add long range comment chip |
| |
| * Add ported drafts to comment count string |
| |
| * Throw one exception for both unresolvable commits and permission denied |
| |
| * Move OAuth and LDAP support out of server target |
| |
| * Add lit elements for Runs and Results |
| |
| * Only allow involved users to change the attention set |
| |
| * Disallow creating branches in Gerrit internal or tag refs namespaces |
| |
| * Create Branch: clarify that BranchInput and URL should match for ref |
| |
| * Add tracking when user navigates to original comment |
| |
| * Propagate the exception cause in CherryPickChange#cherryPick |
| |
| * DeleteRef: clarify 'prefix' argument |
| |
| * Make code compile in Eclipse |
| |
| * Rebase: Include conflicting files into the conflict response |
| |
| * Allow rebase with conflicts |
| |
| * Exempt JimFS from Library-Compliance. |
| |
| * tools/coverage.sh: Expand bash aliases and source bash profile |
| |
| * Add handling for Commit message and Rebase change messages |
| |
| * Add handling for ported comments with side=Parent |
| |
| * CheckAccess: print a useful message if no rules apply |
| |
| * restapi/project: move CheckAccessReadView into CheckAccess |
| |
| * restapi/project: add some comments |
| |
| * restapi/accounts: clarify permission related behaviors |
| |
| * Introduce the new DiffsOperations interface |
| |
| * Replace enable_context with enable-context in docs |
| |
| * Set path to null after filling the comment context |
| |
| * Allow users to select which changes to cherry pick |
| |
| * Create enum for the progress status of cherry picked change |
| |
| * Expose the entire commit message instead of only the subject |
| |
| * Disallow creating changes on internal Gerrit refs |
| |
| * Filter disabled experiments from settings view |
| |
| * Add the file diff cache |
| |
| * ExternalUser: Allow specifying a PropertyMap |
| |
| * Expose email addresses for ExternalUsers |
| |
| * Increase visibility of failed retries |
| |
| * Avoid passing @Singleton to args4j |
| |
| * Move ExternalUser from change.query into server package |
| |
| * Add status chip to file dropdown in diff view |
| |
| * [Issue 13571](https://bugs.chromium.org/p/gerrit/issues/detail?id=13571); |
| Add preference to disable all keyboard shortcuts |
| |
| * Update _computeMessageContent to use optional properties |
| |
| * Add diff between patchset N vs N - 1 on uploaded messages |
| |
| * Use current timestamp for creating group |
| |
| * CurrentUser: Expose set of ExternalId.Keys |
| |
| * GroupBackend: Accept CurrentUser instead of IdentifiedUser |
| |
| * CreateChange: Allow specifying correct project |
| |
| * Take empty arrays into account to break down chunks |
| |
| * Disallow creating changes on NoteDb refs |
| |
| * Fix compile error because of required new `actions` parameter |
| |
| * Fix unquoted properties of HTMLElementEventMap |
| |
| * Verify destination change of cherry-pick before trying to update it |
| |
| * Fix the z-index of the main header |
| |
| * Add top-level actions for Checks API |
| |
| * Allow porting comments to contribute to comment count string |
| |
| * Update comment route to handle comments created with side=PARENT |
| |
| * Only request ported comments when experiment is enabled |
| |
| * Add checks service |
| |
| * Add a model for router and change |
| |
| * Update existing change on cherry-pick with CommitApi |
| |
| * Implement mergedafter and mergedbefore change search operator |
| |
| * Change the default permissions from READ on refs/* to refs/heads/* |
| |
| * Support refs/users/self for the GET branch rest endpoint |
| |
| * Fixes for tools/coverage.sh |
| |
| * Adopt last updated time predicates to reuse for merged time predicates |
| |
| * Add an extension point to extend the change message on post review |
| |
| * Port drafts across patchsets |
| |
| * New change summary - introduce edit pencil |
| |
| * Fix PluginLogFile to not open multiple appenders when run in parallel |
| |
| * Port comments across patchsets |
| |
| * Fix for text selection in comment |
| |
| * Hide quick-approve for your own change or if you have already given max vote |
| |
| * Move __editing property to be part of only UIDraft |
| |
| * Add missing parameter to getThreadsBy* call |
| |
| * Add an option to keep votes when moving the change to another branch. |
| |
| * Clean up error reporting |
| |
| * [Issue 13770](https://bugs.chromium.org/p/gerrit/issues/detail?id=13770); |
| Do not add owner to the attention set when added as reviewer |
| |
| * Define a default errFn for REST API calls from plugins |
| |
| * Convert commentSide to diffSide in GrCommentThread |
| |
| * Move chunks: Add links to line numbers |
| |
| * Change all components to use the service for rest-api-interface |
| |
| * Add a service for rest-api |
| |
| * Set AutocompleteSuggestion property value to be string |
| |
| * Expose the mergedOn date of a change in ChangeNotes |
| |
| * Ignore no-unused-vars rule on args pattern ^_ |
| |
| * Do not collapse lines of code with less than 4 lines |
| |
| * Get rid of some globals |
| |
| * Avoid throwing IllegalArgumentException when failing to parse an enum |
| |
| * Extend PatchSetWebLink to include subject and branch name |
| |
| * Replace non-standard event.path with event.composedPath |
| |
| * Show Submitted Date in change summary |
| |
| * [Issue 13728](https://bugs.chromium.org/p/gerrit/issues/detail?id=13728); |
| Fix dashboard not showing up for not-logged in user |
| |
| * A11y - improve announcing |
| |
| * Add a constant for 'current' |
| |
| * [Issue 13734](https://bugs.chromium.org/p/gerrit/issues/detail?id=13734); |
| Fix the change message for removing cc |
| |
| * Move java_tools javac argument into tools parameter. |
| |
| * Fix A11y regression |
| |
| * Fix DynamicOptions to support a custom bean |
| |
| * Exempt guava from LC review |
| |
| * New change summary ui - flag, metadata |
| |
| * Do not re-initialise toast displayed time when navigating |
| |
| * Add braces to arrow functions returning void |
| |
| * Add simple visual distinction for move control text |
| |
| * A11y - Fix tabbing out of searchbar |
| |
| * Replace comment route in url bar with meaningful url |
| |
| * Clean-up ChangeNotesCache.Weigher |
| |
| * Add basic scaffolding for the checks tab |
| |
| * Add 'prefer null' to frontend style guide |
| |
| * Wrap isAtStart/End() in GrDiffCursor |
| |
| * Move some of the old diff cache entities to a new package |
| |
| * Add the git file diff cache |
| |
| * Make isAtStart/End() return true when no stops |
| |
| * Show all comments upon creation if user had hidden them |
| |
| * Show robot id for robot comments in comment card |
| |
| * Pass on CursorMoveResult |
| |
| * Show reviewer on comment tooltip |
| |
| * ChangeInfo: Serve reviewers when LABELS are requested |
| |
| * A11y - Improve diff a11y |
| |
| * Show alert when syntax highlighting is turned off |
| |
| * Improve description of moved chunks |
| |
| * Fix empty filter handling in list-view |
| |
| * [Issue 13689](https://bugs.chromium.org/p/gerrit/issues/detail?id=13689); |
| Bazel: Fix eclipse project generation |
| |
| * Fix Shift-A shortcut for hiding the left side of the diff |
| |
| * Update stops when a diff starts or stops loading |
| |
| * Make show_on... fields boolean |
| |
| * ProjectConfig: Write resolved groups to file |
| |
| * ChangeNotes: Don't use ChangeIndex when we can avoid it |
| |
| * [Issue 13612](https://bugs.chromium.org/p/gerrit/issues/detail?id=13612); |
| Fix bazel run_shell usage for newer versions |
| |
| * [Issue 13669](https://bugs.chromium.org/p/gerrit/issues/detail?id=13669); |
| Remove --line-height-code in favor of calc() rules |
| |
| * Reduce boiler plate for event listening |
| |
| * When added as author, be added as CC and not reviewer |
| |
| * auth-check: Set content length only if authorization is valid |
| |
| * Add new ChecksApi to PluginApi |
| |
| * Treat spaces as ordinary characters in diff view |
| |
| * [Issue 13658](https://bugs.chromium.org/p/gerrit/issues/detail?id=13658); |
| Convert comment counts to comment thread counts around the UI |
| |
| * Specify line-height for code in terms of rem |
| |
| * Refuse to expand skip groups with WHOLE_FILE |
| |
| * Fix showing "Add Patchset Description" for users that are not logged in |
| |
| * Support diffing for octopus merges against a specific parent |
| |
| * Fix broken link to release notes of 2.2.2 in prolog cookbook |
| |
| * Update developer list in Maven pom files |
| |
| * Abort cursor movements across a loading diff |
| |
| * [Issue 7458](https://bugs.chromium.org/p/gerrit/issues/detail?id=7458); |
| Fix iron-dropdown positioning |
| |
| * Abort cursor moves via a sentinel, not a callback |
| |
| * Don't unset scroll on non-existant stop |
| |
| * ported draft comments: Require authentication |
| |
| * Allow multiple plugins to provide coverage data |
| |
| * Hide patch file download when the commit has multiple parents |
| |
| * Add support to skip chunks |
| |
| * [Issue 13336](https://bugs.chromium.org/p/gerrit/issues/detail?id=13336); |
| Support accessing other users' named queries |
| |
| * Only request ported drafts if user is logged in |
| |
| * Catch errors in getPortedComments request |
| |
| * Allow adding and removing invisible users to the attention set |
| |
| * [Issue 13336](https://bugs.chromium.org/p/gerrit/issues/detail?id=13336); |
| Support to query for user specific named destinations |
| |
| * Ensure users are active on the change when adding to attention set |
| |
| * Use ChangeData in LabelJson |
| |
| * Add latency tracking for porting comments |
| |
| * Add hasDrafts property to re-compute attention set |
| |
| * Fix headline for user queries for users without name |
| |
| * A11y - headlines for Diff Page |
| |
| * A11y - headlines for Change Page |
| |
| * Flip the defaults of the attention and assignee flags |
| |
| * A11y - headlines for Dashboard Page |
| |
| * Add the GitModifiedFilesCache and ModifiedFilesCache |
| |
| * Add constant for Service Users |
| |
| * Linkify branch name in repo detail list |
| |
| * Do not navigate to Base vs X if X is Base and file is unchanged |
| |
| * Submit emails should always be sent |
| |
| * [Issue 13522](https://bugs.chromium.org/p/gerrit/issues/detail?id=13522); |
| Fix topic creation in command line to send a topicEditedEvent |
| |
| * Improve message if submit fails due to non-fulfilled submit requirements |
| |
| * Add fatal to consistency and validation error enums |
| |
| * Add keyboard shortcut 'f' to open file list in diff view |
| |
| * Fix DefaultPermissionBackend#absentUser to work outside the request scope |
| |
| * [Issue 13543](https://bugs.chromium.org/p/gerrit/issues/detail?id=13543); |
| Fix navigate back to change page with '[' on first diff. |
| |
| * Update mixins to avoid compilation issues |
| |
| * Required fixes to match internal google rules |
| |
| * Ensure that all assignment to window.Gerrit properties are safe |
| |
| * Use overridden ChangeEmail#add instead of OutgoingEmail#add |
| |
| * Show comment in viewport when navigating to Base vs X |
| |
| * Do not skip lines marked as dueToMove |
| |
| * Replace parseInt() with Number |
| |
| * Fix TseTse errors |
| |
| * DefaultPermissionBackend: Reuse current user where possible |
| |
| * Add event detail interfaces for dispatchEventThroughTarget |
| |
| * Replace "Since" by "Waiting" |
| |
| * Fix patchset comparison when adding coverages |
| |
| * Compute known groups lazily when writing groups to the trace |
| |
| * Fix TseTse errors. |
| |
| * Toggle default to show unresolved comments |
| |
| * Do not add reviewer to the attention set when they add themselves |
| |
| * Fix attention set tip not showing up |
| |
| * Add email notification option ATTENTION_SET_ONLY |
| |
| * Add more fine logging to SubmitStrategyOp |
| |
| * Replace dispatchEvent with dispatchEventThroughTarget |
| |
| * Add a header about attention set for all change emails |
| |
| * IdentifiedUser.RequestFactory#runAs allow passing properties |
| |
| * Allow user preference to receive emails only when in attention set |
| |
| * Fix TseTse error |
| |
| * Convert patchNum into integer if possible |
| |
| * Bold the user name, if they are in the attention set |
| |
| * Fix showing the CC section in the attention modify section |
| |
| * Change attention set logic to take unresolved state into account |
| |
| * Do not add the owner to an otherwise empty attention set |
| |
| * Fix "Do not update attention set" message |
| |
| * Do not rely on SortedMap / Set semantics for Flogger tags |
| |
| * Cache the comment context |
| |
| * Add 'Since' and 'Submitted' columns to dashboard sections |
| |
| * Change the sorting of changes in the 'Your Turn' dashboard section |
| |
| * Highlight the dashboard rows with attention as reviewer |
| |
| * Use auto-value-gson |
| |
| * Maintain all attention set updates in ChangeNotesState |
| |
| * ReceivePackRefCache, locate patch-sets instead of refs |
| |
| * Include repo config into CommitReceivedEvent |
| |
| * PostWatchedProjects: Throw BRE in case of empty input |
| |
| * CheckAccess: Return ACL debug logs |
| |
| * download-commands: use unqiue constants for each download command |
| |
| ## Bugfix releases |
| |
| ### 3.4.8 |
| |
| * Performance Improvements |
| |
| * [Change 350236](https://gerrit-review.googlesource.com/c/gerrit/+/350236) |
| Optimized change visibilty checking when the project is hidden |
| |
| Looping over every change when the whole project isn't readable is a |
| waste of CPU. It's a bigger waste to fetch all the change data in the |
| first place. |
| |
| * Native packaging |
| |
| * GerritForge RPM repository updated for arm64 architecture |
| |
| [GerritForge RPM v1.4](https://gerritforge.com/gerritforge-repo-1-4.noarch.rpm) |
| has been released, including the native packages for arm64 architecutre. |
| |
| * DockerHub images for arm64 architecture |
| |
| [DockerHub Gerrit images](https://hub.docker.com/r/gerritcodereview/gerrit/tags?page=1&name=3.4.8) |
| include images for arm64 architecture. |
| |
| * Bug Fixes |
| |
| * [Issue 16404](https://crbug.com/gerrit/16404): |
| Fix disabled caches when reading all keys at once |
| |
| When disabling some caches like `git_file_diff` the fetching of the keys |
| was causing a ClassCastException and the associated Gerrit functionality |
| was broken. This change fixes the bulk loading of all keys and allows |
| to disable any of the Gerrit caches without regressions. |
| |
| * [Change 350414](https://gerrit-review.googlesource.com/c/gerrit/+/350414) |
| Fix index rewriter to rewrite all Or/AndPredicates. |
| AndSource chooses right source more often |
| |
| ### 3.4.7 - Not recommended |
| |
| * Known issues |
| |
| * [Issue 16404](https://crbug.com/gerrit/16404): |
| Fix disabled caches when reading all keys at once |
| |
| * New features |
| |
| * [Issue 16322](https://crbug.com/gerrit/16322): |
| Limit the number of changes that can be submitted together |
| |
| When chaining changes together, the sequence of commits to navigate |
| was previously unbound, causing the potential operations explosion. |
| The explosion could have also been accidental and caused by the push |
| of a change with a non-existent branch, which would have resulted |
| in the full scan of the repository for changes. |
| Introduce a new Gerrit configuration `change.maxSubmittableAtOnce` with |
| a safe default of `1024`, which would allow any use case that would have |
| also worked before this change. |
| |
| * [Change 347496](https://gerrit-review.googlesource.com/c/gerrit/+/347496): |
| Enable project_list cache warmer when `cache.project_list.maxAge` is set |
| |
| * [Change 341454](https://gerrit-review.googlesource.com/c/gerrit/+/341454): |
| GitwebServlet: Retrieve git path from FileRepository so that it can be used |
| with multi-site and cached-refdb modules |
| |
| * Performance Fixes |
| |
| * [Issue 16379](https://crbug.com/gerrit/16379): |
| Remove key locking for disabled caches |
| |
| This change also makes the memoryLimit behaviour consistent with the |
| diskLimit set to zero means disabling the implementation of the cache. |
| |
| * [Change 349895](https://gerrit-review.googlesource.com/c/gerrit/+/349895): |
| Add AndCardinalPredicate and OrCardinalPredicate |
| |
| Before this change, IndexSource derived cardinality from predicate |
| which implement `HasCardinality`. Since `AndPredicate` and `OrPredicate` |
| does not return cardinality, IndexSource defaults to 10 when query |
| comprises more than one predicate. Due to this behavior, `AndSource` |
| chooses IndexSource almost always when query contains more than one |
| index predicate. |
| This helps `AndSource` to choose the right source more often. |
| |
| * [Change 347956](https://gerrit-review.googlesource.com/c/gerrit/+/347956): |
| Introduce possibility to define the cardinality so that `AndSource` predicate |
| can work more efficiently |
| |
| Before this change, cardinality of the IndexSource was always set to |
| 10. This makes `AndSource` to choose IndexSource over other sources most of |
| the time. |
| Add a `HasCardinality` interface which can be used by all the predicates |
| which implement IndexPredicate to set a cardinality. This helps |
| AndSource to choose the right datasource. |
| |
| * [Change 349355](https://gerrit-review.googlesource.com/c/gerrit/+/349355): |
| Cache repository locations in LocalDiskRepositoryManager |
| |
| Obtaining the actual location of a repository using base-path |
| and project name can be slow as it involves some guessing to |
| locate the repository. Cache the locations once they are |
| obtained to avoid repeated work, thereby improving performance |
| when opening repositories. |
| |
| * [Change 347955](https://gerrit-review.googlesource.com/c/gerrit/+/347955): |
| Consider cardinality while choosing the data source for `AndSource` predicate |
| |
| Before this change, `AndSource` considered cost to choose a datasource. |
| Ideally cost should be used to determine which predicate to run |
| `#match()` against first, so that queries are faster. Cardinality should |
| be used to determine which datasource to be picked so that there are |
| fewer changes to process. |
| Consider cardinality of the datasource to choose the source and use |
| cost when cardinality is same. |
| |
| * Bug Fixes |
| |
| * [Change 350014](https://gerrit-review.googlesource.com/c/gerrit/+/350014): |
| Do not set cherryPickOf on RevertSubmission |
| |
| The RevertSubmission internally uses CherryPickChange operation. It |
| creates the 'normal' revert for the first change in the relation chain, |
| for each subsequent change it creates a revert commit that is then |
| cherry-picked. This cherry-pick is not a cherry-pick of the reverted |
| change. This is a cherry-pick of the revert commit of the original |
| change. |
| This change fixes the bug in the logic that sets cherryPickOf to the |
| original (reverted) change, using the CherryPickChange operation. |
| |
| * [Change 349894](https://gerrit-review.googlesource.com/c/gerrit/+/349894): |
| Don't always rewrite And/OrPredicate to And/OrSource |
| |
| Before this change OrPredicate was always rewritten to OrSource. This |
| is not the right thing to do as `OrSource#read()` will eventually fail |
| when there is at least one non-datasource child. Since |
| [Change 347955](https://gerrit-review.googlesource.com/c/gerrit/+/347955), |
| `AndSource` picks a source which has the lowest cardinality |
| which makes the `OrSource#read()` failures more visible. |
| Rewrite `OrPredicate` to `OrSource` only when all the children in the |
| predicate are DataSources. |
| |
| * [Change 348715](https://gerrit-review.googlesource.com/c/gerrit/+/348715); |
| Clarify that a restart is needed before changes to email templates take |
| effect |
| |
| * [Issue 16182](https://crbug.com/gerrit/16182): |
| Reintroduce the Change-Id footer in change screen |
| |
| This change reintroduce the Change-Id footer below the commit message on |
| the Gerrit UI. |
| |
| * [Issue 10168](https://crbug.com/gerrit/10168): |
| Fix HTTP 404 when browsing tags on Gitweb |
| |
| The Gitweb links to tags have been broken in v2.14.10 onwards. |
| Gitweb supports the 'a=tags' rendering action for annotated tags |
| only, returning 404 for all lightweight tags. |
| Use the generic 'a=shortlog' for Gitweb links to tags which would |
| work for both annotated and lightweight ones. |
| |
| * [Change 347495](https://gerrit-review.googlesource.com/c/gerrit/+/347495): |
| Fix for IllegalStateException during the Gerrit start when |
| `cache.projects.refreshAfterWrite` is set to true and prolog rules are used |
| |
| * [Issue 15997](https://crbug.com/gerrit/15997): |
| Make DelegateRepository#delegate() method public to allow plugins/modules to |
| access it |
| |
| ### 3.4.6 |
| |
| * Security Fixes |
| |
| * [Issue 16054](https://crbug.com/gerrit/16054): |
| Fix confidentiality leak by users with create ref permission |
| using the create branch REST-API |
| |
| Any user with create ref permission was able to gain |
| access to any SHA1 or refs, including the ones that they would |
| not have permission to see. |
| |
| * Breaking changes |
| |
| * [Issue 15941](https://crbug.com/gerrit/15941): |
| Fix SSH queries to not show commit-message unless --commit-message is provided |
| |
| This issue has existed for several years and should be considered |
| breaking as users might expect commit message to be included by |
| default in SSH query results. |
| Obtaining the commit message is a costly operation as the commit |
| data has to be loaded. So, showing it even when --commit-message |
| is not provided degrades the performance of SSH queries. |
| |
| * [Change 344300](https://gerrit-review.googlesource.com/344300): |
| Add missing return values in MetricMaker's `newCallbackMetric` and |
| `newConstantMetric` |
| |
| When new callback and constant metrics were created the RegistrationHandle |
| was not returned, making impossible to de-register them. |
| The method signature is now aligned, however, all plugins, including the core ones, |
| that were registering callback or constant metrics would need to be rebuilt from |
| source or downloaded from the latest build on |
| [Gerrit-CI](https://gerrit-ci.gerritforge.com). |
| |
| * New features |
| |
| * [Change 343096](https://gerrit-review.googlesource.com/343096): |
| Introduce `index.paginationType=SEARCH_AFTER` configuration for speeding up |
| query pagination |
| |
| * [Change 343798](https://gerrit-review.googlesource.com/343798): |
| Introduce `index.pageSizeMultiplier` configuration to paginate index |
| queries with increasing size |
| |
| * [Change 344334](https://gerrit-review.googlesource.com/344334): |
| Implement `no-limit` queries with multiple pages, make them usable with |
| Elasticsearch |
| |
| * [Change 345017](https://gerrit-review.googlesource.com/345017): |
| Add public `EventTypes.getRegisteredEvents()` for accessing all stream |
| event types from plugins |
| |
| * [Change 340714](https://gerrit-review.googlesource.com/340714): |
| Introduce metrics configuration for different data reservoirs |
| |
| * Performance Fixes |
| |
| * [Change 338834](https://gerrit-review.googlesource.com/338834): |
| Avoid creating an IdentifiedUser multiple times in a SSH query |
| This improves performance of SSH queries. |
| |
| * [Change 338574](https://gerrit-review.googlesource.com/338574): |
| Cache ProjectControl instances in SSH queries |
| A PerThreadCache is used to cache ProjectControl instances to |
| improve SSH query performance. |
| |
| * [Change 338474](https://gerrit-review.googlesource.com/338474): |
| Allow async receive-commits to have a thread-local cache |
| Improve caching when merging changes through git push |
| |
| * [Change 338154](https://gerrit-review.googlesource.com/338154): |
| Lazy load change notes when submit by push |
| Improves performance of change submit via push |
| |
| * Bug Fixes |
| |
| * [Change 347474](https://gerrit-review.googlesource.com/347474): |
| Fix DefaultMemoryCacheFactory to correctly set refreshAfterWrite |
| Setting refreshAfterWrite in gerrit.config now works and does not mistakenly |
| set expireAfterAccess |
| |
| * [Issue 15997](https://crbug.com/gerrit/15997): |
| Make delegate() method public |
| git-repo-metrics plugin now works with multi-site setup |
| |
| * [Issue 16038](https://crbug.com/gerrit/16038): |
| Fix "internal error" when pushing to refs/users/xx/xxxx |
| Push over HTTP to refs/users/* branch now works and doesn't fail with "error: internal error" / Not Signed In |
| |
| * [Issue 16001](https://crbug.com/gerrit/16001): |
| AsciiDoctor: skip attribute when looking for title |
| Fix documentation search showing :linkattrs: instead of the document title |
| |
| * [Issue 15134](https://crbug.com/gerrit/15134): |
| Apply the match operator to filter projects |
| Next-arrow is now not hidden when searching for repositories in the Repository section |
| |
| * [Change 337474](https://gerrit-review.googlesource.com/337474): |
| Use sane value for QueryProcessor's effective limit on "--no-limit" |
| Fix errors seen when --no-limit query option is used with ES index backend |
| |
| * [Change 339754](https://gerrit-review.googlesource.com/339754): |
| Fix gerrit review command with branch option |
| |
| The gerrit review command was not able to find the commit with branch |
| option; ensure "refs/heads/" prefix is present for branch option. |
| |
| * [Issue 16106](https://crbug.com/gerrit/16106): |
| Fix label operator to work with external groups, which never worked before since |
| its addition in v2.10. |
| |
| * [Change 331762](https://gerrit-review.googlesource.com/331762): |
| Cache permission filtering for All-Projects, allowing a faster ACL evaluation |
| to any refs. |
| |
| * [Change 343694](https://gerrit-review.googlesource.com/343694): |
| Improve performance of queries that check the visibility of changes wrt a non-current user |
| |
| * [Change 346254](https://gerrit-review.googlesource.com/346254): |
| Fix change queries evaluation of `AND` terms to run match on predicate whose cost is |
| least |
| |
| Sort the change queries predicates in `AND` based on cost and cardinality, which |
| was broken since [Change 79391](). |
| |
| **WARNING**: queries containing predicates with poorly defined costs or cardinalities |
| could perform worse now. |
| |
| * Dependency Updates |
| |
| * Update JGit to 035e0e23f251fdb766a6630509bcf342efb8b3ad, including the following fixes |
| and improvements: |
| |
| * 011c26ff3 - Fix connection leak for smart http connections |
| * d67ac798f - Remove stray files (probes or lock files) created by background threads |
| * 035e0e23f - UploadPack: don't prematurely terminate timer in case of error |
| * 66ace4b9a - UploadPack: do not check reachability of visible SHA1s |
| |
| * Other Fixes |
| |
| * [Change 340534](https://gerrit-review.googlesource.com/340534): |
| Fix link to change.mergeabilityComputationBehavior in user-search.txt |
| |
| * [Change 337835](https://gerrit-review.googlesource.com/337835): |
| rest-api-projects: Fix documentation for #inherited-boolean-info |
| |
| ### 3.4.5 |
| |
| * Bug Fixes |
| |
| * [Change 335705](https://gerrit-review.googlesource.com/335705): |
| Fix bazel build on Mac M1 (aarch64) |
| |
| * [Change 334762](https://gerrit-review.googlesource.com/334762): |
| Use original javax.servlet-api instead of tomcat's copy |
| |
| * [Change 334299](https://gerrit-review.googlesource.com/334299): |
| Reject invalid queries with status code 400 on `POST /accounts/<account-identifier>/watched.projects` |
| |
| * [Issue 14109](https://crbug.com/gerrit/14109): |
| Fix NPE with cherry pick REST-API onto an existing change in a different branch |
| |
| * Dependency Updates |
| |
| * Update rules_nodejs version to 5.1.0. |
| |
| * Update JGit to 78c9b9260a5287d09c87b407e396021590714513. |
| |
| * Update Apache sshd-mina, sshd-sftp and sshd-osgi to 2.7.0. |
| |
| * Update hamcrest to 2.2. |
| |
| ### 3.4.4 |
| |
| * Security Fixes |
| |
| * [Change 333304](https://gerrit-review.googlesource.com/333304): |
| Ignore `--no-limit` query changes option for anonymous users |
| |
| Prevent the use of `no-limit` option with query changes REST API. |
| The option can result in excessive resources usage make Gerrit subject |
| to DoS and DDoS by any remote endpoint without the need to have any |
| Gerrit account or signing in. |
| |
| * Breaking changes |
| |
| * [Issue 15589](https://crbug.com/gerrit/15589): |
| Add SHA-1 hash variable to gitweb file links |
| |
| This change necessitates a Gitiles plugin update to |
| [v3.4.4](https://gerrit.googlesource.com/plugins/gitiles/+/refs/tags/v3.4.4). |
| |
| * Docker Images |
| |
| * [Change 329639](https://gerrit-review.googlesource.com/329639): |
| CentOS 8 AppStream has disappeared: use AlmaLinux 8.5 as replacement for Gerrit image |
| |
| * Bug Fixes |
| |
| * [Issue 14945](https://crbug.com/gerrit/14945): |
| Account cache is not caching the access to the account data refs |
| |
| Account cache in Gerrit v3.4 does not cache the access to the All-Users.git |
| repository because of the refactoring of the cache key, which requires lookup |
| of the All-Users.git refs. Gerrit allows now the refs in-memory caching using |
| the [cached-refs](https://gerrit.googlesource.com/modules/cached-refdb) libModule. |
| |
| * [Issue 14912](https://crbug.com/gerrit/14912): |
| Fix lost watch notifications when attention-set-only is configured |
| |
| * [Issue 15407](https://crbug.com/gerrit/15407): |
| MultiBaseLocalDiskRepositoryManager cannot be overloaded by libModules |
| |
| Allow the replacement of multi-base git repositories through libModules, which |
| wasn't possible before. Allow to use multi-base git repositories with the |
| [multi-site](https://gerrit.googlesource.com/plugins/multi-site/) plugin and the |
| [cached-refs](https://gerrit.googlesource.com/modules/cached-refdb) libModule |
| |
| * [Issue 15500](https://crbug.com/gerrit/15500): |
| Fix java.util.IllegalFormatArgumentIndexException on Java 17 in |
| MergeUtil#mergeWithConflicts |
| |
| * [Issue 15590](https://crbug.com/gerrit/15590): |
| Fix SLF4J binding to Reload4J |
| |
| Use Reload4J-specific binding for SLF4J, fixing the broken MDC |
| since the swap of Log4J with Reload4J done in |
| [Change 328081](https://gerrit-review.googlesource.com/c/gerrit/+/328081). |
| |
| * [Change 330359](https://gerrit-review.googlesource.com/c/gerrit/+/330359): |
| Fix gerrit ls-members --recursive |
| |
| Fix a regression introduced with |
| [Change 134334](https://gerrit-review.googlesource.com/c/gerrit/+/134334) |
| that caused it to ignore the --recursive flag. |
| |
| * [Change 327950](https://gerrit-review.googlesource.com/c/gerrit/+/327950): |
| PrologRuleEvaluator: Fix endless loop on type error |
| |
| * Documentation Fixes |
| |
| * [Change 331361](https://gerrit-review.googlesource.com/c/gerrit/+/331361): |
| Fixup old references to Database in documentation |
| |
| * [Change 331360](https://gerrit-review.googlesource.com/c/gerrit/+/331360): |
| Remove leftover receive.changeUpdateThreads references |
| |
| * [Change 290603](https://gerrit-review.googlesource.com/c/gerrit/+/290603): |
| Fix gerrit ls-groups flag `-g` in documentation |
| |
| * Other Fixes |
| |
| * [Issue 15667](https://crbug.com/gerrit/15667): |
| Fix Zuul build with obsolete Python 3.5. |
| |
| * Dependency Updates |
| |
| * Update SLF4J version to 1.7.36. |
| |
| * Replace Log4J with reload4j version 1.2.19. |
| |
| ### 3.4.3 |
| |
| * Security Fixes |
| |
| * [Issue 15481](https://crbug.com/gerrit/15481): |
| Remove support for Elasticsearch versions vulnerable to [CVE-2021-44228](https://nvd.nist.gov/vuln/detail/CVE-2021-44228) |
| |
| [Elasticsearch v7.16.2](https://www.elastic.co/guide/en/elasticsearch/reference/current/release-notes-7.16.2.html) |
| includes the fix for the Log4J v2 vulnerability CVE-2021-44228. |
| |
| Remove support in Gerrit for all other vulnerable Elasticsearch versions and keep |
| compatibility with v7.16.2 only. |
| |
| * [Change 325218](https://gerrit-review.googlesource.com/325218): |
| Show the bi-directional Unicode chars as red exclamation marks. |
| |
| Bidirectional Unicode chars can be used to hack code base, as shown |
| in [Trojan Source web-site](https://trojansource.codes/). |
| Gerrit diff-view finds bidirectional unicode and shows them as red |
| exclamation marks. |
| |
| * New Features |
| |
| * [Change 325217](https://gerrit-review.googlesource.com/325217): |
| Soft hyphen are used in localization, show them similarly to tab indicator in diff-view. |
| |
| * Reindexing performance improvements |
| |
| * [Change 325417](https://gerrit-review.googlesource.com/325417): |
| Changes off-line reindex: schedule slices immediately |
| |
| If a site has one huge repository and several small/medium sized repos, |
| then slice creation for the large repo will effectively block other |
| smaller repos from starting to reindex their changes. Schedule slices |
| without waiting for any other slice creation, providing up to 25% |
| performance improvement for large sites. |
| |
| * Bug Fixes |
| |
| * [Change 325299](https://gerrit-review.googlesource.com/325299): |
| Disable cache display stats when initializing new Gerrit sites, as not useful. |
| |
| * Replication Plugin Fixes |
| |
| * [Issue 15315](https://crbug.com/gerrit/15315): |
| Document in the replication plugin that remoteNameStyle might result in a names clashes |
| |
| * [Issue 15318](https://crbug.com/gerrit/15318): |
| Document in the replication plugin that remoteNameStyle is for non-Gerrit remote repos |
| |
| * Gitiles Plugin Fixes |
| |
| * [Issue 15307](https://crbug.com/gerrit/15307): |
| Fix Bazel build on MacOS |
| |
| * [Change 273397](hhttps://gerrit-review.googlesource.com/273397): |
| Load fonts directly from Gerrit instead of 3rd party domains |
| |
| In environments without public Internet access or where tight control |
| of loaded resources is necessary, loading fonts from 3rd party domains |
| might be restricted. Use only the fonts included in the Gerrit war |
| distribution and domain. |
| |
| ### 3.4.2 |
| |
| * Breaking changes |
| |
| * [Change 323855](https://gerrit-review.googlesource.com/323855) [Change 324115](https://gerrit-review.googlesource.com/324115): |
| ProjectCache#evict no longer triggers a reindex. |
| |
| During offline project reindexing evict() was triggering a duplicate reindex |
| on the project when we only wanted to evict the project cache entry. This same |
| issue occurred with the HA plugin and could be/been present in other plugins. |
| |
| If you have relied on a reindex being done on evict() you need to use |
| evictAndReindex() instead. This behavior is now consistent with other evict() |
| methods in Gerrit. |
| |
| * New features |
| |
| * [Change 324095](https://gerrit-review.googlesource.com/324095): |
| Display cache statistics after reindex operation. |
| |
| Help analyzing the cache utilization during reindex command |
| and provide insight into sizing them for optimal performance. |
| |
| * [Change 323786](https://gerrit-review.googlesource.com/323786): |
| Allow context-dependent group suggestions in gr-permission. |
| |
| * [Change 322975](https://gerrit-review.googlesource.com/322975): |
| Shows the number of changes that failed reindexing even if less than 10% fail. |
| |
| * [Issue 14930](https://bugs.chromium.org/p/gerrit/issues/detail?id=14930): |
| Include `Command-Status` in the `httpd_log` and the `httpd_log.json` |
| |
| Indicates the overall result of the GIT _command_ over HTTP. |
| |
| Refer to the [docs](https://gerrit-documentation.storage.googleapis.com/Documentation/3.4.2/logs.html#_httpd_log) |
| for more details. |
| |
| * [Issue 14895](https://bugs.chromium.org/p/gerrit/issues/detail?id=14895): |
| Support author:self and committer:self in change queries |
| |
| It is possible to use `self` for searching own changes (for both author and |
| committer predicates). |
| |
| * Reindexing performance improvements |
| |
| * [Change 323215](https://gerrit-review.googlesource.com/323215) |
| [Change 322296](https://gerrit-review.googlesource.com/322296): |
| Disable auto flushing during offline Lucene indexing. |
| |
| * [Change 322835](https://gerrit-review.googlesource.com/322835): |
| Use thread count specified on offline reindex command line. |
| |
| Honor the "--threads" command line option when provided instead of |
| batchThreads property from `gerrit.config`. |
| |
| * [Change 323396](https://gerrit-review.googlesource.com/323396): |
| Avoid lucene index deletes during offline reindexing. |
| |
| * [Change 323297](https://gerrit-review.googlesource.com/323297): |
| Avoid scanning for change refs for each project slices when reindexing all changes. |
| |
| Avoiding the duplicate work brings down the reindex time from 45 mins to 15 mins |
| for a test-site with 160k changes across 4 repos on NFS. |
| |
| * [Change 324115](https://gerrit-review.googlesource.com/324115): |
| Avoid double indexing work during project reindexing. |
| |
| * Bug Fixes |
| |
| * [Issue 14963](https://crbug.com/gerrit/14963): |
| Fix /access REST APIs returning incorrect rule when group is duplicated for same rule. |
| |
| * [Issue 14097](https://crbug.com/gerrit/14097): |
| Fix GC action not shown in project commands with Gerrit in multi-site configuration. |
| |
| * [Issue 15293](https://crbug.com/gerrit/15293): |
| Fix fetch of group suggestions for projects with a `/` in their name. |
| |
| * [Issue 15251](https://crbug.com/gerrit/15251): |
| Ensure that user without edit permission can't change plugin configuration. |
| |
| * [Change 313561](https://gerrit-review.googlesource.com/313561): |
| Handle null account-ids when sending e-mails. |
| |
| * [Change 307602](https://gerrit-review.googlesource.com/307602): |
| Fix NPE while accessing draft refs. |
| |
| * [Change 307482](https://gerrit-review.googlesource.com/307482): |
| EqualsLabelPredicate: fix bug that prevents matching owner votes. |
| |
| * [Change 321875](https://gerrit-review.googlesource.com/321875): |
| Ignore patchset level comments when computing unresolved count. |
| |
| * [Change 322935](https://gerrit-review.googlesource.com/322935): |
| Fix buggy Index-Interactive Executor. |
| |
| Fix index.threads when set to a negative value which was not using a |
| direct executor as mentioned in docs. |
| |
| * [Issue 9812](https://crbug.com/gerrit/9812) [Issue 7338](https://crbug.com/gerrit/7338): |
| Merge commit cannot be moved |
| |
| If a merge was targetting branch A, but then it was decided to create |
| a new branch for this merge named B, which starts from A - The merge |
| is still valid for B, and the user has no way to move it without amending |
| and creating a new change. |
| |
| * [Issue 15024](https://crbug.com/gerrit/15024): |
| Gerrit event json formatter produces inconsistent payload for different projects |
| |
| AllProjectsName and AllUsersName were serialised as: {"name":"All-Projects"} and {"name":"All-Users"} |
| while all other projects were serialised as a JSON string. The different JSON |
| payloads were causing issues with the HA configuration using the |
| [high-availability plugin](https://gerrit.googlesource.com/plugins/high-availability). |
| |
| * [Issue 14968](https://crbug.com/gerrit/14968): |
| PluginServletContext does not implement javax.servlet.ServletContext.getVirtualServerName() |
| |
| Remove the noise on error_log of c.g.g.h.p.PluginServletContext does not implement |
| j.s.ServletContext.getVirtualServerName(), when running Gerrit on Tomcat 8.5.69. |
| |
| * Plugin API fixes |
| |
| * [Change 314962](https://gerrit-review.googlesource.com/314962): |
| Fix DynamicOptions to invoke listeners registered to BeanParseListener. |
| |
| * Dependency Updates |
| |
| * Update JGit to 60b81c5a9280e44fa48d533a61f915382b2b9ce2. |
| |
| ### 3.4.1 |
| |
| * Security Fixes |
| |
| * [Issue 14732](https://crbug.com/gerrit/14732): |
| Commits/IncludedIn exposes branch names without respecting the ACLs on branches |
| |
| When calling the REST endpoint for listing all branches that a commit SHA1 |
| is part of, the commit is properly checked for visibility against the ACLs |
| (it is a REST resource) but the branches are not checked. |
| |
| The included-in may expose the list of non-visible branches to a user that |
| has visibility of the SHA1. |
| |
| * [Issue 7282](https://crbug.com/gerrit/7282): |
| Hide repository name and description when user has no access |
| |
| Gitiles did not respect Gerrit's permission and would show the repo name |
| and description to any user who could guess the name. |
| The repositories list as well as the content APIs were not affected. |
| |
| * New Features |
| |
| * Pop up accounts when typing within assignee or attention on the searchbar |
| |
| * Add attention operator for auto-complete on the searchbar |
| |
| * Bug Fixes |
| |
| * [Issue 14726](https://crbug.com/gerrit/14726): |
| Make "conflicts" cache reentrant for preventing deadlocks with concurrent |
| cache loads of change conflicts computation. |
| |
| * [Issue 14785](https://crbug.com/gerrit/14785): |
| Limit returned changes for a triplet without Change-Id |
| |
| Fix a bug where invoking the REST-API /changes/repo~branch~ without |
| mentioning the change-id resulted in the full scan of all changes |
| on a repository/branch causing a high CPU overload and occupying |
| the request threads for a long time. |
| |
| * [Issue 14776](https://crbug.com/gerrit/14776): |
| Prevent removing e-mail associated with OpenID external IDs |
| |
| Gerrit prevents the user from removing the email address |
| associated with their OpenId account. |
| |
| * [Issue 14872](https://crbug.com/gerrit/14872): |
| Disable setting cancelLeftPadding if avatars are not set in the config |
| |
| * [Issue 13745](https://crbug.com/gerrit/13745) |
| [Issue 14173](https://crbug.com/gerrit/14173): |
| Firefox: fix suggested reviewers pop up instantly and not disappearing when out of focus |
| |
| |
| * [Issue 13955](https://crbug.com/gerrit/13955): |
| Safari 14.1 for Mac OS BigSur 11.3.1: Multi-line code comment broken |
| |
| * [Issue 14495](https://crbug.com/gerrit/14495): |
| SSH thread leak with authentication exception |
| |
| A show-queue will show tasks in the Batch (or Interactive) queue hanging forever |
| as a consequence of a Git/HTTP thread ended because of an error. |
| |
| * [Issue 14561](https://crbug.com/gerrit/14561): |
| Conflicting changes section not visible even when change.mergeabilityComputationBehavior is enabled |
| |
| * [Issue 14577](https://crbug.com/gerrit/14577): |
| Dedicated mergeable endpoint shouldn't be called if change.mergeabilityComputationBehavior |
| is set to API_REF_UPDATED_AND_CHANGE_REINDEX |
| |
| * [Issue 14600](https://crbug.com/gerrit/14600): |
| Empty registered field on profile settings screen |
| |
| * [Issue 14603](https://crbug.com/gerrit/14603): |
| Attention-set operations count towards change.maxUpdates limit. |
| |
| * [Issue 14613](https://crbug.com/gerrit/14613): |
| Gerrit is killed before the gracefulStopTimeout |
| |
| Avoids gerrit.sh killing the in-flight Git/HTTP just after 30 seconds regardless of |
| the `httpd.gracefulStopTimeout` configuration value. |
| |
| * [Issue 14628](https://crbug.com/gerrit/14628): |
| Project deletion replication events are failing to be serialized |
| |
| * [Issue 14639](https://crbug.com/gerrit/14639): |
| Searching repositories by name is case-sensitive |
| |
| Restore the correct project search that was case-insensitive in 2.16.27, |
| 3.1.3 and 3.3.2. |
| |
| * [Issue 14644](https://crbug.com/gerrit/14644): |
| Weak security settings accidentally removed in SSH transport |
| |
| * [Issue 14645](https://crbug.com/gerrit/14645): |
| Username to lowercase conversion fails with duplicates |
| |
| Duplicated accounts names associated with the same account id was making |
| the conversion to lowercase fail. |
| |
| * [Issue 14649](https://crbug.com/gerrit/14649): |
| Config setting change.maxUpdates was skipped when the change involved an update |
| to the attention-set without comments |
| |
| * [Issue 14676](https://crbug.com/gerrit/14676): |
| Legacy host key file with RSA algorithm is overridden with ecdsa key during init. |
| |
| * [Change 312602](https://gerrit-review.googlesource.com/c/gerrit/+/312602): |
| Fix Mariadb status matching for AccountPatchReview |
| |
| Mariadb connector uses SQLException.getSQLState() which returns the ANSI |
| SQLSTATE value, not the MariaDB/mysql error code. |
| Fix the removal of duplicate key detection when an already reviewed file |
| opened up again returned 500 because of the incorrect handling of SQLSTATE |
| value. |
| |
| * [Change 312382](https://gerrit-review.googlesource.com/c/gerrit/+/312382): |
| Fix deleting edits when change is merged |
| |
| Fix the support of deleting a change edit after it has been merged or |
| abandoned. |
| |
| * [Change 313702](https://gerrit-review.googlesource.com/c/gerrit/+/313702): |
| Remove contenteditable="false" from within dragDropArea which caused issues with uploading |
| |
| * Plugins Fixes |
| |
| * [Change 314364](https://gerrit-review.googlesource.com/c/plugins/codemirror-editor/+/314364): |
| codemirror-editor: stop propagation for all keys but exempt the save button |
| |
| This fixes an issue where if using contenteditable (default on mobile) |
| and you typed "/", it would get intercepted within the app. |
| |
| * Dependency Updates |
| |
| * Update CodeMirror to 5.62.2. |
| |
| Fix an issue on mobile where typing causes the keyboard line to go out |
| of sync. |
| |
| * Update JGit to 06ca6cb3b01cdd618cc80f94bf0bf2fb78ab6e82. |
| |
| * [JGit bug 573791](https://bugs.eclipse.org/bugs/show_bug.cgi?id=573791): |
| Stale file handle raised when loading a collection of notes with a NoteMap over NFS |
| |
| * [JGit Bug 574178](https://bugs.eclipse.org/bugs/show_bug.cgi?id=574178): |
| Fix garbage collection failing to delete pack file |
| |
| * Noteworthy improvements for gerrit in this jgit update, improving performance |
| from O(nˆ2) to O(n): |
| |
| [Change 180697](https://git.eclipse.org/r/c/jgit/jgit/+/180697): |
| BatchRefUpdate: Skip saving conflicting ref names and prefixes in memory |
| |
| [Change 180559](https://git.eclipse.org/r/c/jgit/jgit/+/180559): |
| Optimize RefDirectory.isNameConflicting(): this fix reduces number of open file |
| handles jgit needs in all scenarios where lock files are created (e.g. ref updates). |
| |
| [Change 180432](https://git.eclipse.org/r/c/jgit/jgit/+/180432): |
| LockFile: create OutputStream only when needed |