Skip to content

Commit

Permalink
Prepare new version (#134)
Browse files Browse the repository at this point in the history
  • Loading branch information
jisungbin authored Mar 10, 2024
1 parent 81e59fa commit 27ad00a
Show file tree
Hide file tree
Showing 6 changed files with 34 additions and 14 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ plugins {
> In other words, you need to adjust the Compose Compiler version and Kotlin version to use ComposeInvestigator.
>
> It also depends slightly on the Compose Runtime and Compose Animation versions.
> The last tested versions are both `1.6.2`.
> The last tested versions are both `1.6.3`.
Snapshots of the development version are available in Sonatype's snapshots repository.

Expand Down
5 changes: 5 additions & 0 deletions documentation/docs/advanced.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,3 +129,8 @@ By default, any state variable that inherits from `State` or `Animatable` is tar
tracking. However, if you want to enable state tracking for state variables other than `State` and
`Animatable`, you can use the `State.registerStateObjectTracking` API. For more information, see the
documentation for that API.

## Suppress ComposeInvestigator behavior

If for some reason you need to suppress ComposeInvestigator behavior only to a certain range,
you can use the `@NoInvestigation` annotation. For more information, see the documentation for that API.
14 changes: 12 additions & 2 deletions documentation/docs/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,20 @@ In other words, you need to adjust the Compose Compiler version and Kotlin versi
ComposeInvestigator.

It also depends slightly on the Compose Runtime and Compose Animation versions.
The last tested versions are both `1.6.2`.
The last tested versions are both `1.6.3`.

---

## [Unreleased]

## [1.5.10-0.2.0] - 2024-03-10

- Eliminated a potential memory leak.
- Increase Compose Runtime and Compose Animation versions to 1.6.3.
- Adds the `@NoInvestigation` API to suppress the workings of ComposeInvestigator.

### Breaking Changes

- Fixed #121: Now pass the callstack information to the `ComposableInvalidationListener`.

## [1.5.10-0.1.1] - 2024-03-06
Expand All @@ -28,6 +34,10 @@ The last tested versions are both `1.6.2`.

- Initial release.

[Unreleased]: https://github.com/jisungbin/ComposeInvestigator/compare/1.5.10-0.1.1...HEAD
[Unreleased]: https://github.com/jisungbin/ComposeInvestigator/compare/1.5.10-0.2.0...HEAD

[1.5.10-0.2.0]: https://github.com/jisungbin/ComposeInvestigator/releases/tag/1.5.10-0.2.0

[1.5.10-0.1.1]: https://github.com/jisungbin/ComposeInvestigator/releases/tag/1.5.10-0.1.1

[1.5.10-0.1.0]: https://github.com/jisungbin/ComposeInvestigator/releases/tag/1.5.10-0.1.0
5 changes: 5 additions & 0 deletions documentation/docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,11 @@ looking for a fancier experience, consider using the runtime API.

If you want to learn about the runtime API, check out our [advanced](advanced.md) page.

## Caveats

- Currently, only Restartable Groups with all stable arguments are supported. In simple terms, most
composables are supported, but some special case composables are not. (#99, #133)

## License

ComposeInvestigator is available under
Expand Down
18 changes: 9 additions & 9 deletions documentation/docs/internals.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ val composableCallstack: Stack<String> = Stack()
affectFields.add(argsValueParam)
val invalidationReason = composeInvestigatorTable.computeInvalidationReason("fun-Main(Any,Composer,Int)Unit", affectFields)
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", composableCallstack.toList(), AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
ComposeInvestigatorConfig.invalidationLogger(composableCallstack.toList(), AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
val count = mutableStateOf(0).registerStateObjectTracking(
Expand All @@ -39,12 +39,12 @@ val composableCallstack: Stack<String> = Stack()
composableCallstack.pop()
}
} else {
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Skipped)
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", composableCallstack.toList(), AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Skipped)
ComposeInvestigatorConfig.invalidationLogger(composableCallstack.toList(), AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Skipped)
$composer.skipToGroupEnd()
}
$composer.endRestartGroup()?.updateScope { $composer: Composer?, $force: Int ->
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", composableCallstack.toList(), AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
ComposeInvestigatorConfig.invalidationLogger(composableCallstack.toList(), AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
Main(args, $composer, $changed)
}
Expand Down Expand Up @@ -128,7 +128,7 @@ val composeInvestigatorTable: ComposableInvalidationTrackTable = ComposableInval
val invalidationReason = composeInvestigatorTable.computeInvalidationReason("fun-Main(Any)Unit", affectFields)
composeInvestigatorTable.callListeners("fun-Main(Any)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
composeInvestigatorTable.callListeners("fun-Main(Any)Unit", callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
ComposeInvestigatorConfig.invalidationLogger(callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
Text(args.toString())
Expand All @@ -150,13 +150,13 @@ val composeInvestigatorTable: ComposableInvalidationTrackTable = ComposableInval
val invalidationReason = composeInvestigatorTable.computeInvalidationReason("fun-Main(Any,Composer,Int)Unit", affectFields)
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
ComposeInvestigatorConfig.invalidationLogger(callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
Text(args.toString())
$composer.endRestartGroup()?.updateScope { $composer: Composer?, $force: Int ->
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
ComposeInvestigatorConfig.invalidationLogger(callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
Main(args, $composer, $changed)
}
Expand All @@ -178,17 +178,17 @@ val composeInvestigatorTable: ComposableInvalidationTrackTable = ComposableInval
val invalidationReason = composeInvestigatorTable.computeInvalidationReason("fun-Main(Any,Composer,Int)Unit", affectFields)
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
ComposeInvestigatorConfig.invalidationLogger(callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(invalidationReason))
Text(args.toString())
} else {
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Skipped)
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Skipped)
ComposeInvestigatorConfig.invalidationLogger(callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Skipped)
$composer.skipToGroupEnd()
}
$composer.endRestartGroup()?.updateScope { $composer: Composer?, $force: Int ->
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
composeInvestigatorTable.callListeners("fun-Main(Any,Composer,Int)Unit", callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
ComposeInvestigatorConfig.invalidationLogger(callstacks, AffectedComposable("Main", "my.package.name", "MyFileName.kt", line, column), Processed(Invalidate))
Main(args, $composer, $changed)
}
Expand Down
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@ RELEASE_SIGNING_ENABLED=true
SONATYPE_AUTOMATIC_RELEASE=true

GROUP=land.sungbin.composeinvestigator
VERSION_NAME=1.5.10-0.1.1
VERSION_NAME=1.5.10-0.2.0

POM_DESCRIPTION=Trace the recomposition of a Composable with its cause without any boilerplate code.
POM_DESCRIPTION=Trace the recomposition of a Composable with its cause without boilerplate code.
POM_INCEPTION_YEAR=2024
POM_URL=https://github.com/jisungbin/ComposeInvestigator

Expand Down

0 comments on commit 27ad00a

Please sign in to comment.