Enhancement: Generate manual Type construction in moshi-ir adapter lookups. Prior to this, we generated IR
code that leveraged typeOf(), but this appears to be too late to leverage compiler intrinsics support for it and
appears to cause some issues if kotlin-reflect is on the classpath. This should improve runtime performance as a
result.
0.16.4
Fix: Add moshi/moshi-sealed-runtime dependencies as implementation rather than api when applying the
moshi-ir plugin. #200
Fix: A second attempt at fixing extension point issues with AnalysisHandlerExtension in moshi-ir's proguard
rule generation. #201
Thanks to @gpeal for contributing to this release!
0.16.3
Fix: Build new type parameters when generating classes in moshi-ir rather than incorrectly reuse the original class's parameters. Resolves this issue (that was originally believed to be a Compose issue).
Fix: Best-effort avoid synchronization race with IntelliJ openapi when registering proguard rule gen extension
0.16.1
moshi-ir now supports dynamic generation of proguard rules, bringing it to feature parity with Moshi's existing
code gen.
Note that if you have any issues, this can be disabled via the Gradle extension's generateProguardRules
property and using the manual rules mentioned in version 0.16.0's notes.
moshi {
generateProguardRules.set(false)
}
New: To help with debugging moshi-ir, a new debug property is available in the Gradle extension. It is off
by default and can be enabled like below. Please try this out and include its output when reporting issues. Thanks!
Enhancement: Generate manual Type construction in moshi-ir adapter lookups. Prior to this, we generated IR
code that leveraged typeOf(), but this appears to be too late to leverage compiler intrinsics support for it and
appears to cause some issues if kotlin-reflect is on the classpath. This should improve runtime performance as a
result.
Version 0.16.4
2022-01-13
Fix: Add moshi/moshi-sealed-runtime dependencies as implementation rather than api when applying the
moshi-ir plugin. #200
Fix: A second attempt at fixing extension point issues with AnalysisHandlerExtension in moshi-ir's proguard
rule generation. #201
Thanks to @gpeal for contributing to this release!
Version 0.16.3
2022-01-11
Fix: Build new type parameters when generating classes in moshi-ir rather than incorrectly reuse the
original class's parameters. Resolves this issue (that was
originally believed to be a Compose issue).
Fix: Best-effort avoid synchronization race with IntelliJ openapi when registering proguard rule gen extension
Version 0.16.1
2022-01-06
moshi-ir now supports dynamic generation of proguard rules, bringing it to feature parity with Moshi's existing
code gen.
Note that if you have any issues, this can be disabled via the Gradle extension's generateProguardRules
property and using the manual rules mentioned in version 0.16.0's notes.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps moshi-sealed-codegen from 0.12.0 to 0.16.5.
Release notes
Sourced from moshi-sealed-codegen's releases.
... (truncated)
Changelog
Sourced from moshi-sealed-codegen's changelog.
... (truncated)
Commits
d7c7b1d
Prepare for release 0.16.5.2658b1a
Render type references directly in IR (#203)1f63e2e
Prepare next development version.52b8861
Prepare for release 0.16.4.bec40fe
Simplify extension adding (#201)324d99a
@GenerateAdapter
can be applied without the gradle plugin (#200)ec3b769
Prepare next development version.0836033
Prepare for release 0.16.3.38c1c55
Merge remote-tracking branch 'origin/main'7d8c1d1
Fix IrTypeParameters not being copied (#199)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)