summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-04-23Upgrade kotlinx.serialization to v1.6.3mainClara Fok
This project was upgraded with external_updater. Usage: tools/external_updater/updater.sh update external/kotlinx.serialization For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md Test: TreeHugger Change-Id: I0a33712c9ac0a953307b3e8c3470f29cdd6dcaec
2024-04-23Update Android.bpClara Fok
Test: TH Bug: 330586494 Change-Id: I29be214476819056a253d391e33791f3e0935040 Merged-In: I29be214476819056a253d391e33791f3e0935040 (cherry picked from commit 5b6a599727845581dc6935ec2f83c0f01b63543e)
2024-04-17Update name to `kotlinx_serialization_core`Vineel Sadineni
Bug: 322508920, 328943579 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:1f01bf41f9b5f039e0cd1426c1ff6999ddef36c2) Merged-In: Idf955e7995d9d4754e3855259d99095a2993f981 Change-Id: Idf955e7995d9d4754e3855259d99095a2993f981
2024-03-28Add kotlinx_serialization_jsonColin Cross
Add a kotlinx_serialization_json module based off kotlinx_serialization. Bug: 330586494 Test: builds Change-Id: I05e6f2f08ed218d385d85d79bd8c81e9835b4001
2024-03-28Fix kotlinx_serializationColin Cross
Use the right path for the core sources, and use -opt-in instead of -Xuse-experimental. Test: mma Change-Id: Ic99904546866f0bfb2097373859e88e85e34a004
2024-03-25Fix incorrect quotation symbol.Clara Fok
Bug: 327649027 Change-Id: Ie43c2d46a60da3529caa8ccc71f10e9a725cc1fa Test: TH
2024-03-20Merge remote-tracking branch 'origin/upstream'Frank Piva
2024-03-12Third-Party Import of: <https://github.com/Kotlin/kotlinx.serialization/>upstreamClara Fok
Request Document: go/android3p For CL Reviewers: go/android3p#cl-review For Build Team: go/ab-third-party-imports Bug: http://b/327649027 Test: ./gradlew build Change-Id: I77b17252a31ef9eb8b98c8c5bbde4adec39213de
2024-03-06Initial empty repositoryrassb@google.com
2024-02-16Prepare 1.6.3 release, update Kotlin to 1.9.22 (#2571)upstream/v1.6.3Leonid Startsev
2024-02-16Merge remote-tracking branch 'origin/master' into devLeonid Startsev
2024-02-16Actualize lenient mode documentation (#2568)Leonid Startsev
Because after #2440 quoted boolean values are allowed by default, and quoted numbers were allowed even before that.
2024-02-14Better approach to configuring common sources for KotlinJvmCompile taskYahor Berdnikau
Kotlin's language version 2.0 has a new model to compile common/shared sources which requires more fine-grained task configuration. For language versions lower than 2.0, task configuration is different and all common sources should be set as input.
2024-02-13Added annotation to keep generated serializer when a custom one is specified ↵Sergey Shanshin
(#2566) If the @KeepGeneratedSerializer annotation is specified on the class, and a custom serializer is specified, then keep to generate a plugin serializer. Resolves #1169 Co-authored-by: Leonid Startsev <sandwwraith@users.noreply.github.com>
2024-02-12Fix AbstractKotlinCompile.ownModuleName usage (#2567)Yahor Berdnikau
* Fix usage of deprecated method on creating a standalone KotlinJvmCompile task * Use compilerOptions DSL for standalone KotlinJvmCompile task * Add a workaround for AbstractKotlinCompile.ownModuleName property usage The workaround tried to configure it only when it is available as via KT-64504 it will be removed in Kotlin 2.0.0 release.
2024-02-06Fix a typo in polymorphism.md (#2562)Shreck Ye
2024-02-06Align Kotlin Native targets with Kotlin documentation (#2560)Loïc Lamarque
This commit moves the 'linuxX64' target to tier 2 and reorders targets of this tier. References: https://kotlinlang.org/docs/native-target-support.html https://kotlinlang.org/docs/whatsnew1920.html#change-to-our-target-tiers-policy https://youtrack.jetbrains.com/issue/KT-58711
2024-01-25Minor, move decodeDuration logic to a function reference (#2550)Alexander Udalov
This is needed because once we enable indy lambdas by default (KT-45375), `@SuppressAnimalSniffer` annotation stops working, because animalsnifferMain does not handle indy lambdas correctly, and the `animalsnifferMain` task reports several errors about `java.time.Duration` being used. There are multiple ways to workaround this issue, for example we could annotate the lambda with `@JvmSerializableLambda` or compile the whole module with `-Xlambdas=class`, but I chose to use a simple function reference instead, since we don't generate those via invokedynamic yet (KT-45658), and it doesn't make the code any more difficult.
2024-01-24Add kebab-case naming strategy (#2531)Emil Kantis
2024-01-12Add value class support to the ProtoBufSchemaGenerator (#2542)Felipe Rotilho
Fixes #2089
2024-01-08Slightly improve error messages thrown from serializer<T>() function (#2533)Leonid Startsev
and mention intrinsics to keep them in sync.
2023-12-19Implement ClassDiscriminatorMode.ALL, .NONE, and .POLYMORPHIC (#2532)Leonid Startsev
Implement ClassDiscriminatorMode.ALL, .NONE, and .POLYMORPHIC As a part of the solution for #1247
2023-12-18Do not try to coerce input values for properties (#2530)Leonid Startsev
Do not try to coerce input values for properties that do not have default values. Trying so leads to confusing errors about missing values despite a json key actually present in the input. Fixes #2529
2023-12-06Reorder and filter mavenLocal() for more reproducible builds (#2527)Leonid Startsev
The mavenLocal() repository has been moved down below and filtered to ensure that it is checked last and only for kotlinx-serialization:1.x.y-SNAPSHOT. Also replace the outdated `stdlib-common` artifact name. (cherry picked from commit 1116f5f13a957feecda47d5e08b0aa335fc010fa)
2023-12-06Reorder and filter mavenLocal() for more reproducible builds (#2527)Leonid Startsev
The mavenLocal() repository has been moved down below and filtered to ensure that it is checked last and only for kotlinx-serialization:1.x.y-SNAPSHOT. Also replace the outdated `stdlib-common` artifact name.
2023-12-05Simplify Dokka source link configuration (#2524)Oleg Yukhnevich
2023-12-05Fix: Hocon polymorphic serialization (#2151)Matt
Fixes #1581
2023-12-05Update Dokka to 1.9.10 (#2525)Oleg Yukhnevich
2023-12-04Make empty objects and arrays collapsed in pretty print mode (#2506)Leonid Startsev
because it is a widespread convention. Fixes #2502
2023-12-04Update Gradle dokka configuration to make sure "source" button is visible in ↵Oleg Yukhnevich
all API docs (#2518)
2023-12-01Remove metaInfo usage (#2519)Ilya Goncharov
2023-11-30Prepare 1.6.2 release (#2515)upstream/v1.6.2Leonid Startsev
2023-11-21Add Wasm WASI target (#2510)igoriakovlev
This is implementation of Wasm WASI target support. Please notice, that due to lack of support this target in okio we are forced to escape building this formatter and all formatters unit tests for WASI. We hope that WasmJS target (i.e. backend and compiler plugin) are fully similar to the WasmWASI target so the library functionality is fully covered by WasmJS.
2023-11-16Enable error loglevel for partial linkage messages (#2507)Stanislav Ruban
The change is related to building serialization as a Kotlin user project. See https://youtrack.jetbrains.com/issue/QA-1115 for more details.
2023-11-16Bring back linuxArm32Hfp target because it is deprecated, but not removed ↵Leonid Startsev
yet. (#2505)
2023-11-15Prepare 1.6.1 release (#2503)upstream/v1.6.1Leonid Startsev
2023-11-13Merge remote-tracking branch 'origin/master' into devLeonid Startsev
2023-10-27Fix TaggedDecoder nullable decoding (#2456)Phillip Schichtel
Make the TaggedDecoder.decodeNullableSerializableElement implementation consistent with AbstractDecoder, so it is possible to differentiate nullable and non-nullable serializers. Fixes #2455
2023-10-26Run knit on README.md after ba38b7099e502c16efd30386d18174e3a7aefb3aLeonid Startsev
2023-10-26Fix IllegalAccessException (#2469)Leonid Startsev
Being thrown on an attempt to retrieve serializer for some private implementation classes from stdlib. Fixes #2449
2023-10-25Suppress experimental expect/actual warning for verifyKotlinModule task (#2482)Leonid Startsev
See also #2427
2023-10-24Add Gradle properties for disabling project's TC integration (#2483)Leonid Startsev
Use Gradle property no_teamcity_interaction (e.g. gradle -Pno_teamcity_interaction ...) to disable project's TeamCity integration (printing of the library version as build number in this case). Gradle property build_snapshot_up is also supported. Co-authored-by: Stanislav Ruban <stanislav.ruban@jetbrains.com>
2023-10-20Cbor: check if inline value classes is marked as @ByteString (#2466)eater
Fixes #2187
2023-10-19Improve polymorphic deserialization optimization: (#2481)Leonid Startsev
Previously, when discriminator was found as the first key in Json, but there was no deserializer for it, we still fell back to a slow path with JsonTree. It was actually meaningless because a slow path always throws exception when a serializer is not found. Such behavior led to unnecessary memory pressure & consumption in exceptional cases (see linked ticket for details). Also make polymorphic deserialization exception messages more meaningful and make them more consistent with serialization ones. Also fix behavior when the actual discriminator value is JsonNull (it should be treated as missing, not as "null" string). Fixes #2478
2023-10-19Add a flag to allow parser to accept trailing commas. (#2480)Leonid Startsev
This is one of the popular community requests and one of the main reasons people ask for Json5 support. Implementing this flag separately will allow for alleviating large paint points quickly without waiting for full Json5 support. Fixes #1812 Relates to: #797, #2221
2023-10-18Build improvements: Kotlin 1.9.20-RC, default target hierarchy, bump Okio ↵Leonid Startsev
(#2473) * Build improvements: Kotlin 1.9.20-RC, default target hierarchy, bump Okio Updated to Kotlin 1.9.20-RC: - Kotlin 1.9.0/10 had some blockers in XCode 15 support. - Simplify WASM setup (it has been changed in 1.9.20). - Drop obsolete Native targets Apply default target hierarchy: - Greatly simplified buildscript for native targets. - Supported targets are now runnable from gutter in the IDE. - Now all possible targets are built by default (without -Pnative.deploy flag), resulting in less confusion for contributors and CI (but longer local `check` times). - Publishing library with K2 should be possible now, no more incorrect `publishNativeKotlinMetadata` failing task. - More targets available in integration-test project. Updated Okio for: - linuxArm64 target support
2023-10-13Fix JPMS verification task for K2Alexander.Likhachev
The task for verification of Kotlin sources for JPMS problems tries to replicate the setup of the default Kotlin/JVM compilation task. The change here introduces copying of `K2MultiplatformCompilationTask.multiplatformStructure` to set up compilation arguments properly within K2. #KT-61952 Fixed
2023-10-12README: Hide old Gradle plugin instructions, clear up setup flow (#2470)Sebastian Aigner
2023-10-10Add protobuf conformance tests (#2404)Doğaç Eldenk
Add conformance tests using test_messages_proto3 construct google provides
2023-10-10Update MissingFieldException documentation (#2465)Vsevolod Tolstopyatov