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

This MR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [com.uber.nullaway:nullaway](https://github.com/uber/NullAway) |  | patch | `0.10.5` -> `0.10.7` |
| [tech.picnic.error-prone-support:refaster-runner](https://error-prone.picnic.tech) ([source](https://github.com/PicnicSupermarket/error-prone-support)) |  | minor | `0.6.0` -> `0.7.0` |
| [tech.picnic.error-prone-support:error-prone-contrib](https://error-prone.picnic.tech) ([source](https://github.com/PicnicSupermarket/error-prone-support)) |  | minor | `0.6.0` -> `0.7.0` |
| [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.codehaus.mojo:versions-maven-plugin](https://www.mojohaus.org/versions/) ([source](https://github.com/mojohaus/versions)) | build | patch | `2.14.1` -> `2.14.2` |
| [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) | build | minor | `2.28.0` -> `2.29.0` |

---

### Configuration

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

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

â™» **Rebasing**: Renovate will not automatically rebase this PR, because other commits have been found.

👻 **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: dd3a5f61d8c230403db463e9a1a4a9dbac225cc4
  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")

  ...
}