mirror of
https://github.com/fankes/moshi.git
synced 2025-10-21 17:09:21 +08:00
Implement reflective support for Java Records (#1381)
* Standardize around JDK 8 * Update GJF to support newer JDKs * Fix misc java 8 issues in tests * Prepare java 16/records checking at runtime * Implement real RecordJsonAdapter * Spotless * Prepare build for JDK 16+ * Fix property name for kapt * Small cleanup * Make FallbackEnum java-8 happy * Remove animalsniffer * Fix format * Add opens for ExtendsPlatformClassWithProtectedFields * Return null every time in shim for main tests * Use JDK 16 + release 8 to replace animalsniffer * Simplify accessor accessible handling * Remove manifest attrs * Fix typo * Fix KCT tests + upgrade it * Cover another * Try explicit kotlin daemon args for java 17? * Disable 17-ea for now until kotlin 1.5.30 * Add JsonQualifier and Json(name) tests + fix qualifiers * Ensure constructor is accessible * GJF it properly * GJF 1.11 * Unwrap InvocationTargetException * Use MethodHandle for constructor * Use MethodHandle for accessor too * Revert "Remove manifest attrs" This reverts commit 3eb768fd6904bb5c979aa01c3c182e0fb9329d62. * Proper MR jar * *actually* fix GJF, which wasn't getting applied before We can just enable this everywhere now since we require JDK 16 anyway * Make IDE happy about modules access * Fixup records tests to play nice with modules Gotta be public * Add complex smoke test * Remove comment Not a regression test in this case
This commit is contained in:
@@ -21,11 +21,6 @@ object Dependencies {
|
||||
const val ktlintVersion = "0.41.0"
|
||||
const val okio = "com.squareup.okio:okio:2.10.0"
|
||||
|
||||
object AnimalSniffer {
|
||||
const val annotations = "org.codehaus.mojo:animal-sniffer-annotations:1.16"
|
||||
const val java7Signature = "org.codehaus.mojo.signature:java17:1.0@signature"
|
||||
}
|
||||
|
||||
object AutoService {
|
||||
private const val version = "1.0"
|
||||
const val annotations = "com.google.auto.service:auto-service-annotations:$version"
|
||||
@@ -53,7 +48,7 @@ object Dependencies {
|
||||
|
||||
object Testing {
|
||||
const val assertj = "org.assertj:assertj-core:3.11.1"
|
||||
const val compileTesting = "com.github.tschuchortdev:kotlin-compile-testing:1.4.0"
|
||||
const val compileTesting = "com.github.tschuchortdev:kotlin-compile-testing:1.4.3"
|
||||
const val junit = "junit:junit:4.13.2"
|
||||
const val truth = "com.google.truth:truth:1.0.1"
|
||||
}
|
||||
|
Reference in New Issue
Block a user