Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adopting K2, some feature drops, and rewrite core logic #172

Merged
merged 10 commits into from
Aug 17, 2024
Merged

Adopting K2, some feature drops, and rewrite core logic #172

merged 10 commits into from
Aug 17, 2024

Conversation

jisungbin
Copy link
Owner

@jisungbin jisungbin commented Jun 15, 2024

Resolves #99, #133, #170 (fixed)
Closes #168, #177 (no longer valid; won't fix)

Artifact ID changes

  • compiler-hosted -> compiler
  • compiler -> compiler-embeddable

Key changes

  • Use K2 compilers for Kotlin and Compose.
  • The main logic has been completely rewritten. This ensures that all composable groups are supported and are durable against Compose compiler changes.

Feature drops

TODO explain why they were dropped, and offer alternatives.

  • Callstack tracing
  • Effects API
  • Listeners API
  • State change tracing
  • AffectedComposable's startLine and startColumn

Note

There's still a lot of work to do before we can release it.

* cleanup

* Move GoldenTransformRule to the golden package

* compiler and compiler-embeddable

* origin const to object class
@jisungbin jisungbin added the enhancement New feature or request label Jun 15, 2024
@jisungbin jisungbin self-assigned this Jun 15, 2024
- Callstack tracing
- Effects
- Additional listener
- State change tracing
- AffectedComposable's startLine and startColumn
@jisungbin jisungbin changed the title Adopting K2 and some feature drop Adopting K2, some feature drops, and rewrite core logic. Jun 16, 2024
@jisungbin jisungbin changed the title Adopting K2, some feature drops, and rewrite core logic. Adopting K2, some feature drops, and rewrite core logic Jun 16, 2024
* Clean Gradle

* Make spotless happy
* Clean dependencies

* Clean Gradle

* WIP: clean runtime module

* WIP: clean compiler module

* WIP: clean compiler module

* Update Kotlin version

* Correct file name

* Cleanup

* Integrating runtime usage diagnostics into FIR

* WIP: clean compiler module

* Recode compiler and runtime modules

* Correct FIR checker type

* Minor fixes for FIR

* WIP: Writing compiler tests

* wip wip

* API stability and performance improvements

* Cleanup

* Simplifying code

* Cleanup

* Write more tests

* Cleanup

* Cleanup

* TODO!

* Add a FeatureFlag that allows only some features to run

* Reimplementing FirChecker

* Write and Fix tests

* Write and Fix tests

* Cleanup

* TODOs

* TEST TEST TEST
@jisungbin jisungbin marked this pull request as ready for review August 17, 2024 18:31
@jisungbin jisungbin merged commit 00d2cef into main Aug 17, 2024
2 checks passed
@jisungbin jisungbin deleted the k2 branch August 17, 2024 18:32
jisungbin added a commit that referenced this pull request Aug 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
1 participant