Update all non-major dependencies (mulk/jgvariant!22)

This MR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [com.google.errorprone:error_prone_core](https://errorprone.info) ([source](https://github.com/google/error-prone)) |  | minor | `2.16` -> `2.18.0` |
| [com.google.errorprone:error_prone_annotations](https://errorprone.info) ([source](https://github.com/google/error-prone)) | compile | minor | `2.16` -> `2.18.0` |
| [org.apache.maven.plugins:maven-failsafe-plugin](https://maven.apache.org/surefire/) | build | patch | `3.0.0-M7` -> `3.0.0-M8` |
| [org.apache.maven.plugins:maven-surefire-plugin](https://maven.apache.org/surefire/) | build | patch | `3.0.0-M7` -> `3.0.0-M8` |

---

### Release Notes

<details>
<summary>google/error-prone</summary>

### [`v2.18.0`](https://github.com/google/error-prone/releases/tag/v2.18.0): Error Prone 2.18.0

[Compare Source](https://github.com/google/error-prone/compare/v2.17.0...v2.18.0)

New Checkers:

-   [`InjectOnBugCheckers`](https://errorprone.info/bugpattern/InjectOnBugCheckers)
-   [`LabelledBreakTarget`](https://errorprone.info/bugpattern/LabelledBreakTarget)
-   [`UnusedLabel`](https://errorprone.info/bugpattern/UnusedLabel)
-   [`YodaCondition`](https://errorprone.info/bugpattern/YodaCondition)

Fixes issues: [#&#8203;1650](https://github.com/google/error-prone/issues/1650), [#&#8203;2706](https://github.com/google/error-prone/issues/2706), [#&#8203;3404](https://github.com/google/error-prone/issues/3404), [#&#8203;3493](https://github.com/google/error-prone/issues/3493), [#&#8203;3504](https://github.com/google/error-prone/issues/3504), [#&#8203;3519](https://github.com/google/error-prone/issues/3519), [#&#8203;3579](https://github.com/google/error-prone/issues/3579), [#&#8203;3610](https://github.com/google/error-prone/issues/3610), [#&#8203;3632](https://github.com/google/error-prone/issues/3632), [#&#8203;3638](https://github.com/google/error-prone/issues/3638), [#&#8203;3645](https://github.com/google/error-prone/issues/3645), [#&#8203;3646](https://github.com/google/error-prone/issues/3646), [#&#8203;3652](https://github.com/google/error-prone/issues/3652), [#&#8203;3690](https://github.com/google/error-prone/issues/3690)

**Full Changelog**: https://github.com/google/error-prone/compare/v2.17.0...v2.18.0

### [`v2.17.0`](https://github.com/google/error-prone/releases/tag/v2.17.0): Error Prone 2.17.0

[Compare Source](https://github.com/google/error-prone/compare/v2.16...v2.17.0)

New Checkers:

-   [`AvoidObjectArrays`](https://errorprone.info/bugpattern/AvoidObjectArrays)
-   [`Finalize`](https://errorprone.info/bugpattern/Finalize)
-   [`IgnoredPureGetter`](https://errorprone.info/bugpattern/IgnoredPureGetter)
-   [`ImpossibleNullComparison`](https://errorprone.info/bugpattern/ProtoFieldNullComparison)
-   [`MathAbsoluteNegative`](https://errorprone.info/bugpattern/MathAbsoluteNegative)
-   [`NewFileSystem`](https://errorprone.info/bugpattern/NewFileSystem)
-   [`StatementSwitchToExpressionSwitch`](https://errorprone.info/bugpattern/StatementSwitchToExpressionSwitch)
-   [`UnqualifiedYield`](https://errorprone.info/bugpattern/UnqualifiedYield)

Fixed issues: [#&#8203;2321](https://github.com/google/error-prone/issues/2321), [#&#8203;3144](https://github.com/google/error-prone/issues/3144), [#&#8203;3297](https://github.com/google/error-prone/issues/3297), [#&#8203;3428](https://github.com/google/error-prone/issues/3428), [#&#8203;3437](https://github.com/google/error-prone/issues/3437), [#&#8203;3462](https://github.com/google/error-prone/issues/3462), [#&#8203;3482](https://github.com/google/error-prone/issues/3482), [#&#8203;3494](https://github.com/google/error-prone/issues/3494)

**Full Changelog**: https://github.com/google/error-prone/compare/v2.16...v2.17.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

â™» **Rebasing**: Whenever MR is behind base branch, or you tick the rebase/retry checkbox.

👻 **Immortal**: This MR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4yNC4wIiwidXBkYXRlZEluVmVyIjoiMzQuMjQuMCJ9-->
tree: 378566b962f01469b86585ea3355cfeb52e04a1f
  1. .mvn/
  2. .reuse/
  3. jgvariant-bom/
  4. jgvariant-core/
  5. jgvariant-ostree/
  6. jgvariant-parent/
  7. LICENSES/
  8. .gitignore
  9. .gitlab-ci.yml
  10. COPYING
  11. pom.xml
  12. README.md
  13. renovate.json
README.md

GVariant for Java

This library provides a GVariant parser in pure Java.

Overview

jgvariant-core provides Decoder<T>, which read a given type of GVariant-encoded value from a ByteBuffer. The class also contains factory methods to acquire those instances.

The various subclasses of Decoder together implement the GVariant serialization specification.

jgvariant-ostree provides instances of Decoder<T> for various GVariant types used in OSTree repositories.

Example

To parse a GVariant value of type "a(si)", which is an array of pairs of String and int, you can use the following code:

record ExampleRecord(String s, int i) {}

var decoder =
  Decoder.ofArray(
    Decoder.ofStructure(
      ExampleRecord.class,
      Decoder.ofString(StandardCharsets.UTF_8),
      Decoder.ofInt().withByteOrder(ByteOrder.LITTLE_ENDIAN)));

byte[] bytes = ...;
List<ExampleRecord> example = decoder.decode(ByteBuffer.wrap(bytes));

Installation

Usage with Maven

<project>
  ...

  <dependencyManagement>
    ...

    <dependencies>
      <dependency>
        <groupId>eu.mulk.jgvariant</groupId>
        <artifactId>jgvariant-bom</artifactId>
        <version>0.1.7</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>

    ...
  </dependencyManagement>

  <dependencies>
    ...

    <dependency>
      <groupId>eu.mulk.jgvariant</groupId>
      <artifactId>jgvariant-core</artifactId>
    </dependency>
    <dependency>
      <groupId>eu.mulk.jgvariant</groupId>
      <artifactId>jgvariant-ostree</artifactId>
    </dependency>

    ...
  </dependencies>

  ...
</project>

Usage with Gradle

dependencies {
  ...

  implementation(platform("eu.mulk.jgvariant:jgvariant-bom:0.1.7")
  implementation("eu.mulk.jgvariant:jgvariant-core")
  implementation("eu.mulk.jgvariant:jgvariant-ostree")

  ...
}