* Update to Kotlin 1.4.0
* Remove moshi-kotlin rules in favor of Kotlin's
* Ignore tests for now
* Update to OptIn
* Update test for kotlin 1.4 behavior
* Extract target constructor signature into TargetConstructor.kt
We'll need this to know what the runtime types are for proguard rules
* Add ProguardConfig
* Wire in proguard config
* Write proguard configs out with adapters
* Add full tests
* Now remove the rules!
* Ignore on inline classes for now
* Pass adapter constructor params correctly
* KotlinPoet 1.4.1 & Kotlin 1.3.50
KotlinPoet uses 1.3.50, so this just matches that now
* Remove now-unnecessary custom shade
This uses the same common package prefix in kotlinpoet now
* Add backwardReferencingTypeVars() regression test
Coverage for #955
* Add kotlinpoet version to properties
* Swap in kotlinpoet-metadata for kotlin-metadata in dependencies
* Don't use KotlinMetadataUtils and KotlinAbstractProcessor anymore
* Upcast to TypeElement
* Temporarily add direct kotlinx-metadata dependency
Something is wrong with packaging in my local kotlinpoet, will remove before
* Remove tags API from TargetParameter
No longer needed
* Add PropertySpec directly to TargetProperty, remove holder funs
Simplifies some things!
* Move generated annotation gen into type callback
Removes JsonClassCodegenProcessor completely from codegen API
* Remove unstable autocommon dependency
Won't be using this anymore after this change
* Manually put quotes jsonName in AdapterGenerator
Otherwise we could incur double escaping from kotlinpoet since we directly reuse possible-escaped parsed `@Json` name values
* Opt in to use `@UseExperimental` annotation for preview
* Rework and simplify metadata to just use kotlinpoet-metadata
This is hard to do in broken down 1:1 steps, but the net result is a much smaller implementation footprint, better error messages, and a simpler API interaction with the code gen API. There is some raw parsing of kotlinpoet types required (mostly around annotations), but otherwise it's pretty smooth sailing and a good test of the upcoming kotlinpoet-metadata support
* Declare KotlinPoetMetadataPreview directly
* Try to point to snapshots for CI build
* Update to classinspector API
* Remove TypeResolver API
No longer needed
* Kotlinpoet 1.4.0 final
* Fix missing import from rebase
* Remove old kotlin-metadata version
* Add kotlin-compile-testing dependency
* Add Okio dependency to tests to match kotlin-compile-testing
Without this, Okio.sink() fails to resolve at runtime
* Try converting privateConstructor() to kotlin-compile-testing
* Space
* Update to 1.2.2
* Use new kotlin source file API
* Use temporaryFolder as workingDir
* Extract prepareCompilation helper method
This allows for modifying the compilation with extra bits as needed
* Migrate tests entirely to new API
* Remove incorrect error message
This passed before, but was picked up in https://github.com/square/moshi/pull/903 before and observed to be incorrect.
* Remove custom kotlin compiler implementations
* Add an OK exit code test
This wasn't possible before!
* Remove jitpack dependency now that it's on mavencentral
* Move versions to parent pom
* Fix new test from rebase
* Support gradle incremental processing in code gen
This adds support for incremental compilation in gradle via incap helper and marking the code gen as `ISOLATING`.
Depends on a newer version of KotlinPoet that has https://github.com/square/kotlinpoet/pull/647Resolves#589
* Opportunistically update to auto-service 1.0-rc5
Supports incremental compilation and moves annotations to a separate artifact
* 1.2.0 final!
* Mark compiler embeddales as test only
* Update to kotlinpoet 1.0.0-RC1
* Move to WildcardTypeName.STAR
* simpleNames() function -> simpleNames property
* packageName() fun -> packageName property
* simpleName() fun -> simpleName property
* Check if bounds are empty for TypeVariableName. If so, use no-bounds creator
* Use new parameterizedBy/plusParameter API where appropriate