One example I found for this is when a property is annotated with android's `@SuppressLint`, which is only available from the android jar and not visible during apt. This should just be a warning (if even?) and not a hard error.
* Update KotlinPoet to 1.7.2
* Fix a Java NPE crash when processing a parameter annotated with an annotation that placed in annotation package
This problem happens with KotlinPoet 1.7.x.
From KotlinPoet 1.7.x, `TypeName.toString()` is escaped with backquotes if the package name contains keywords.
So NPE will be thrown if an annotation is placed in `annotation` package because `elements.getTypeElement(it.typeName.toString())` returns `null`.
* Reformat imports
* Use rawType().canonicalName instead of toString()
* Fix test case
* Require getTypeElement
* Exclude com.google.guava from shadowJar
* Move a test case of processing a qualifier placed in `annotation` package
* Use checkNull instead
* Make moshi-root a kotlin project
* Move moshi kotlin extensions to moshi core
* Add appropriate experimental annotations
* Add nextAdapter helper
* Add explicit return type on addAdapter
* Expression body for adapter
* Use nextAdapter helper
* Opportunistically fix a couple Util warnings
* Add Types extensions
* Spotless
* Use extensions in more places for added coverage
* Apply java versions on any java plugin type
This way the kotlin projects get this too
* Fix circularAdapters test?
* Use java 8 in java for code gen too
* Fixup with CircularAdaptersTest
* Add coverage for remaining
* Remove nextAdapter
* Remove leftover function
* Use asserts
left checkNotNull for the contract
* boxIfPrimitive
* Fixup docs
* Copyright fixes
* Add parameterized addAdapter
* Switch to using native javaType API
* Spotless
* Back to 2019
* Spotless
* Use rawType extension
* Fix rebase issues
The previous setup said to only look for those packages in jcenter. This is a more powerful alternative, which says only use jcenter for those packages
* Start recipes module with JsonString recipe
* Make recipes a kotlin project
* Move JsonString sample to examples
* Add license
* Include all java modules
* Add kotlin options
* Spotless
* Remove jvmtarget
I was today years old when I found out 1.7 isn't a valid target
* Make gradle happy
* Add codegen
* Spotless
* Update spotless and enable copyright header bits again
* Reformat square copyright headers
* Create separate format configuration for external files
* Update CI to use java 15 final
* include stacktrace in ci failures
* Update ktlint to 0.39
* Disable java formatting on JDK 15
* Fix google header
* Introduced tags to reader/writers
* Removed getTags method
* Added type safety to tag methods
* Changed to explicit class comparison
* Removed ? extends for tags
* Switched to LinkedHashMap
* Allowed polymorphism for tag values
* Simplified tags tests
* Update to shadow 6.0
* Exclude kotlinpoet core artifact from shading
* Replace runtime scopes with compile
* Opportunistically fix old artifact() dep
Gradle 6.6 supports providers now
* Use api instead
* Add link
* Remove accidental gradle plugin config
This only applies to gradle plugins