develar / d2-intellij-plugin

IntelliJ Plugin for D2 (modern language that turns text to diagrams)
https://plugins.jetbrains.com/plugin/20630-d2
Apache License 2.0
18 stars 4 forks source link

chore(deps): update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.7.3 #66

Closed renovate[bot] closed 1 week ago

renovate[bot] commented 3 months ago

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.jetbrains.kotlinx:kotlinx-serialization-json 1.6.3 -> 1.7.3 age adoption passing confidence

Release Notes

Kotlin/kotlinx.serialization (org.jetbrains.kotlinx:kotlinx-serialization-json) ### [`v1.7.3`](https://redirect.github.com/Kotlin/kotlinx.serialization/blob/HEAD/CHANGELOG.md#173--2024-09-19) \================== This release aims to fix important issues that were discovered in the 1.7.2 release, including the inability to sync certain projects into Android Studio/IntelliJ IDEA and exceptions from custom Uuid serializers. It uses Kotlin 2.0.20 by default. - Use explicit kotlin-stdlib and kotlin-test versions from version catalog ([#​2818](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2818)) - Drop usage of deprecated Any?.freeze() in K/N target ([#​2819](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2819)) - Check against serialName instead of simpleClassName ([#​2802](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2802)) - Ignore NoClassDefFoundError when initializing builtins map for serializer() function ([#​2803](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2803)) - Clarify example for SerializationException ([#​2806](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2806)) ### [`v1.7.2`](https://redirect.github.com/Kotlin/kotlinx.serialization/blob/HEAD/CHANGELOG.md#172--2024-08-28) \================== This release provides several new features, including a major Cbor configuration rework. It uses Kotlin 2.0.20 by default. #### Cbor feature set for COSE compliance This change brings a lot of features to the CBOR format, namely: - Serial Labels — see `@CborLabel` annotation and `preferCborLabelsOverNames` flag. - Tagging of keys and values — see `encode*Tags` and `verify*Tags` set of flags - Definite length encoding — see `useDefiniteLengthEncoding`. This flag affects object encoding, since decoding of arrays with definite lenghts is automatically supported. - Option to globally prefer major type 2 for byte array encoding — see `alwaysUseByteString` flag. Since there are quite a lot of flags now, they were restructured to a separate `CborConfiguration` class, similarly to `JsonConfiguration`. It is possible to retrieve this configuration from `CborEncoder/CborDecoder` interfaces in your custom serializers (see their documentation for details). All of these features make it possible to serialize and parse [COSE-compliant CBOR](https://datatracker.ietf.org/doc/html/rfc8152), for example, ISO/IEC 18013-5:2021-compliant mobile driving license data. In case you want to make use of them, there is a predefined `Cbor.CoseCompliant` instance. However, some canonicalization steps (such as sorting keys) still need to be performed manually. This functionality [was contributed](https://redirect.github.com/Kotlin/kotlinx.serialization/pull/2412) to us by [Bernd Prünster](https://redirect.github.com/JesusMcCloud). #### Keeping generated serializers One of the most requested features for serialization plugin was to continue to generate a serializer even if a custom one is specified for the class. It allows using a plugin-generated serializer in a fallback or delegate strategy, accessing type structure via descriptor, using default serialization behavior in inheritors that do not use custom serializers. Starting with this release, you can specify the `@KeepGeneratedSerializer` annotation on the class declaration to instruct the plugin to continue generating the serializer. In this case, the serializer will be accessible using the `.generatedSerializer()` function on the class's companion object. > This annotation is currently experimental. Kotlin 2.0.20 or higher is required for this feature to work. You can check out the examples in [the documentation](docs/serializers.md#simultaneous-use-of-plugin-generated-and-custom-serializers) and in the PRs: [#​2758](https://redirect.github.com/Kotlin/kotlinx.serialization/pull/2758), [#​2669](https://redirect.github.com/Kotlin/kotlinx.serialization/pull/2669). #### Serializer for kotlin.uuid.Uuid Kotlin 2.0.20 [added](https://kotlinlang.org/docs/whatsnew2020.html#support-for-uuids-in-the-common-kotlin-standard-library) a common class to represent UUIDs in a multiplatform code. kotlinx.serialization 1.7.2 provides a corresponding `Uuid.serializer()` for it, making it possible to use it in `@Serializable` classes. Note that for now, serializer should be provided manually with [`@Contextual` annotation](https://redirect.github.com/Kotlin/kotlinx.serialization/blob/master/docs/serializers.md#contextual-serialization). Plugin will be able to automatically insert `Uuid` serializer in Kotlin 2.1.0. See more details in the [corresponding PR](https://redirect.github.com/Kotlin/kotlinx.serialization/pull/2744). #### Other bugfixes and improvements - Prohibited using of zero and negative field numbers in ProtoNumber ([#​2766](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2766)) - Improve readability of protobuf decoding exception messages ([#​2768](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2768)) (thanks to [xiaozhikang0916](https://redirect.github.com/xiaozhikang0916)) - docs(serializers): Fix grammatical errors ([#​2779](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2779)) (thanks to [jamhour1g](https://redirect.github.com/jamhour1g)) - Fixed VerifyError after ProGuard optimization ([#​2728](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2728)) - Add wasm-wasi target to Okio integration ([#​2727](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2727)) ### [`v1.7.1`](https://redirect.github.com/Kotlin/kotlinx.serialization/blob/HEAD/CHANGELOG.md#171--2024-06-25) \================== This is a bugfix release that aims to fix missing `kotlinx-serialization-hocon` artifact. It also contains experimental integration with `kotlinx-io` library. Kotlin 2.0.0 is used by default. #### Fixed HOCON publication Sadly, 1.7.0 release was published incomplete: `kotlinx-serialization-hocon` artifact is missing from 1.7.0 and 1.7.0-RC releases. This release fixes this problem and now `kotlinx-serialization-hocon` is available again with 1.7.1 version. No other changes were made to this artifact. Related ticket: [#​2717](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2717). #### Add integration with a kotlinx-io library [`kotlinx-io`](https://redirect.github.com/Kotlin/kotlinx-io) is an official multiplatform library that provides basic IO primitives, similar to Okio. kotlinx.serialization integration is now available in a separate artifact, located at the `kotlinx-serialization-json-io` coordinates. Integration artifact provides functions similar to existing [Okio integration](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json-okio/kotlinx.serialization.json.okio/): `encodeToSink`, `decodeFromSource`, and `decodeSourceToSequence`. Check out the [PR](https://redirect.github.com/Kotlin/kotlinx.serialization/pull/2707) for more details. #### Other bugfixes - Prohibited use of elements other than JsonObject in JsonTransformingSerializer with polymorphic serialization ([#​2715](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2715)) ### [`v1.7.0`](https://redirect.github.com/Kotlin/kotlinx.serialization/blob/HEAD/CHANGELOG.md#170--2024-06-05) \================== This release contains all of the changes from 1.7.0-RC and is compatible with Kotlin 2.0. Please note that for reasons explained in the [1.7.0-RC changelog](https://redirect.github.com/Kotlin/kotlinx.serialization/releases/tag/v1.7.0-RC), it may not be possible to use it with the Kotlin 1.9.x compiler plugin. Yet, it is still fully backwards compatible with previous versions. The only difference with 1.7.0-RC is that `classDiscriminatorMode` property in `JsonBuilder` is marked as experimental, as it should have been when it was introduced ([#​2680](https://redirect.github.com/Kotlin/kotlinx.serialization/issues/2680)).

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: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR was generated by Mend Renovate. View the repository job log.

github-actions[bot] commented 1 week ago

Qodana Community for JVM

46 new problems were found

Inspection name Severity Problems
'Enum.values()' is recommended to be replaced by 'Enum.entries' since 1.9 🔶 Warning 14
Inconsistent comment for Java parameter 🔶 Warning 6
Unstable API Usage 🔶 Warning 6
Unused symbol 🔶 Warning 2
Redundant semicolon 🔶 Warning 1
Explicit 'get' or 'set' call ◽️ Notice 9
Return or assignment can be lifted out ◽️ Notice 4
If-Null return/break/... foldable to '?:' ◽️ Notice 1
Redundant empty primary constructor ◽️ Notice 1
Unnecessary '@OptIn' annotation ◽️ Notice 1
Accessor call that can be replaced with property access syntax ◽️ Notice 1

💡 Qodana analysis was run in the pull request mode: only the changed files were checked

View the detailed Qodana report To be able to view the detailed Qodana report, you can either: - Register at [Qodana Cloud](https://qodana.cloud/) and [configure the action](https://github.com/jetbrains/qodana-action#qodana-cloud) - Use [GitHub Code Scanning with Qodana](https://github.com/jetbrains/qodana-action#github-code-scanning) - Host [Qodana report at GitHub Pages](https://github.com/JetBrains/qodana-action/blob/3a8e25f5caad8d8b01c1435f1ef7b19fe8b039a0/README.md#github-pages) - Inspect and use `qodana.sarif.json` (see [the Qodana SARIF format](https://www.jetbrains.com/help/qodana/qodana-sarif-output.html#Report+structure) for details) To get `*.log` files or any other Qodana artifacts, run the action with `upload-result` option set to `true`, so that the action will upload the files as the job artifacts: ```yaml - name: 'Qodana Scan' uses: JetBrains/qodana-action@v2024.2.5 with: upload-result: true ```
Contact Qodana team Contact us at [qodana-support@jetbrains.com](mailto:qodana-support@jetbrains.com) - Or via our issue tracker: https://jb.gg/qodana-issue - Or share your feedback: https://jb.gg/qodana-discussions