Skip to content

Update dependency dev.zacsweers.metro:runtime to v1.4.1 - #630

Merged
ychescale9 merged 1 commit into
mainfrom
renovate/metro
Aug 6, 2026
Merged

Update dependency dev.zacsweers.metro:runtime to v1.4.1#630
ychescale9 merged 1 commit into
mainfrom
renovate/metro

Conversation

@renovate

@renovate renovate Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
dev.zacsweers.metro:runtime 1.4.01.4.1 age confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

ZacSweers/metro (dev.zacsweers.metro:runtime)

v1.4.1

Compare Source

2026-08-06

New
  • [FIR/IR/Circuit] Generate CircuitSerializerRegistration Set contributions for @CircuitSerializable Screen and PopResult types when using Circuit 0.36.0 or newer.
Fixes
  • [FIR/IR] Generate contribution hints in FIR alongside IR class generation (Kotlin 2.4.20+), fixing downstream discovery for Metro's built-in contributions on all platforms.
  • [FIR] Report an error when one annotation class combines multiple qualifier, scope, or map-key markers, such as both @Qualifier and @MapKey.
  • [IR] Fix duplicate qualifier annotations on parameters of IR-generated member-injector methods.
  • [IR] Inject inherited members in superclass-first order when using graph injection methods.
  • [IR] Report duplicate bindings inherited from a parent graph when they are only requested by a child graph extension.
  • [IR] Fix @GraphExtension.Factory replacements across additionalScopes when generating classes in IR.
  • [IR] Correctly report dependency cycles when the same dependency is requested both directly and through a provider or lazy value.
  • [IR] Prevent stack overflows in large dependency graphs by checking cycles with heap-backed frames instead of recursive DFS traversal.
  • [IR] Minimize deferred bindings when breaking overlapping dependency cycles.
  • [IR] Do not require suspend provider support for caller-supplied suspend function @Assisted parameters.
  • [IR] Fix a stack overflow when a nested graph extension requests a parent-scoped binding with suspend providers enabled.
  • [IR] Prevent stack overflows while generating deeply nested/complex dependency graph expressions.
  • [IR] Show shorter, consistent dependency paths in graph errors with improved route caching.
  • [IC] Fix incremental compilation issue when adding or removing member injections from a superclass.
Changed
  • Mentioned above in the fixes, but worth reiterating! Previously, graph-level member injector functions would incorrectly inject subclasses before ancestor classes. Now it correctly injects ancestors first, matching how MembersInjector and constructor-injected classes with member injection work. If you were relying on that behavior by accident, it's going to be different now!
Contributors

Special thanks to the following contributors for contributing to this release!

Consider sponsoring Metro's development

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@blacksmith-sh

blacksmith-sh Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Found 26 test failures on Blacksmith runners:

Failures

Test View Logs
io.github.reactivecircus.routebinding.compiler.BoxTestGenerated/
testBindingFunctionSignatures()
View Logs
io.github.reactivecircus.routebinding.compiler.BoxTestGenerated/
testInstallFunctionCall()
View Logs
io.github.reactivecircus.routebinding.compiler.BoxTestGenerated/testManualBinding() View Logs
io.github.reactivecircus.routebinding.compiler.BoxTestGenerated/testMetadataProvider() View Logs
io.github.reactivecircus.routebinding.compiler.BoxTestGenerated/
testMultipleBindingsInMultipleCompilations()
View Logs
io.github.reactivecircus.routebinding.compiler.BoxTestGenerated/
testMultipleBindingsInSingleCompilation()
View Logs
io.github.reactivecircus.routebinding.compiler.BoxTestGenerated/
testSameBindingFunctionNameInDifferentPackages()
View Logs
io.github.reactivecircus.routebinding.compiler.BoxTestGenerated/testSingleBinding() View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testDuplicateParameterType()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testNonComposableFunction()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testNonObjectMetadataProvider()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testNonTopLevelFunction()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testPrivateFunction()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testPublicFunction()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testRouteParameterTypeMismatch()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testUnsupportedContextParameter()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testUnsupportedReceiverType()
View Logs
io.github.reactivecircus.routebinding.compiler.DiagnosticTestGenerated/
testUnsupportedValueParameter()
View Logs
io.github.reactivecircus.routebinding.compiler.DumpTestGenerated/
testNoReceiverAndParams()
View Logs
io.github.reactivecircus.routebinding.compiler.DumpTestGenerated/testStandard() View Logs
io.github.reactivecircus.routebinding.compiler.DumpTestGenerated/
testWithBackStackParamOnly()
View Logs
io.github.reactivecircus.routebinding.compiler.DumpTestGenerated/
testWithMetadataProvider()
View Logs
io.github.reactivecircus.routebinding.compiler.DumpTestGenerated/
testWithParamWithDefaultValue()
View Logs
io.github.reactivecircus.routebinding.compiler.DumpTestGenerated/
testWithRouteParamOnly()
View Logs
io.github.reactivecircus.routebinding.compiler.DumpTestGenerated/
testWithSharedTransitionScopeAsContextParam()
View Logs
io.github.reactivecircus.routebinding.compiler.DumpTestGenerated/
testWithSharedTransitionScopeAsValueParam()
View Logs

Fix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@renovate renovate Bot changed the title Update metro to v1.4.0 Update metro to v1.4.0 - autoclosed Jul 31, 2026
@renovate renovate Bot closed this Jul 31, 2026
@renovate
renovate Bot deleted the renovate/metro branch July 31, 2026 03:18
@renovate renovate Bot changed the title Update metro to v1.4.0 - autoclosed Update dependency dev.zacsweers.metro:runtime to v1.4.1 Aug 6, 2026
@renovate renovate Bot reopened this Aug 6, 2026
@renovate
renovate Bot force-pushed the renovate/metro branch 2 times, most recently from c967bf9 to 1b5b36e Compare August 6, 2026 20:54
@ychescale9
ychescale9 merged commit 41e6de6 into main Aug 6, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant