- Use `sonar.token` instead of `sonar.login` since the latter is
deprecated.
- Explicitly install Java 17 since v11 (bundled by default) is
deprecated by Sonarcloud.
Caching was not implemented this time around because it's not possible
to cache analysis results yet, only the installed binaries. See this
thread for information:
https://community.sonarsource.com/t/proper-caching-for-ci-builds/98320/2
Two separate duplicate checks have been introduced:
1. Within the same YAML file, YamlDotNet has been instructed to error on
duplicate keys.
2. Between different YAML files, custom logic enforces that there should
be no duplicate instance names.
This replacement is necessary to support parallelized unit tests.
TestCorrelator as well as even the InMemory sink rely on static objects,
which makes multithreaded tests impossible.
A score set is a collection of scores defined by a single custom format
JSON data file in the TRaSH Guides. Score sets provide a way to define
"themes" for scores that get used across multiple custom formats.
This feature adds the `score_sets` property to the top-level
`quality_profiles` objects.
When unable to connect to a service, we no longer send a confusing
message saying capabilities could not be obtained. This also involved
removing nullability in a few places to simplify logic an error
handling.
The reason for this is to avoid the need for `--no-same-owner` when
extracting the archive as a super user (e.g. `sudo`). Without this
change, the UID and GID of `recyclarr` after it is extracted is whatever
user was used in github actions to create the archive, which isn't
really useful.
This change does not affect extractions as normal users; by default, the
UID/GID inside the archive is not used in those cases.