Build Performance Improvement: Fix Incremental Annotation Processor Issue
- Dominant language
- Kotlin
- Stars
- 5.6k
- Forks
- 2k
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 92
Description
### How to use GitHub
* Please use the 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to show that you are interested into the same feature.
* Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
* Subscribe to receive notifications on status change and new comments.
**Is your feature request related to a problem? Please describe.**
Currently Incremental Annotation Processing is enabled in the gradle.properties file. however it's not working because one of the annotation processor (io.noties:prism4j-bundler) used by the app is non-incremental. You can check more about it here: https://kotlinlang.org/docs/kapt.html#incremental-annotation-processing
**Describe the solution you'd like**
I would suggest to move this annotation processor along with its libraries (Markwon & Prism4j) and its usage (which I only found at PreviewTextFragment.kt) to a separate module. It would eventually make the app module start supporting incremental annotation processor resulting in faster build.
**Describe alternatives you've considered**
I was actually looking for alternate libraries to replace Markwon & Prism4j because they no longer maintained and even though there are some alternate libraries like [Flexmark-Java](https://github.com/vsch/flexmark-java) but they alone wouldn't be enough to support all the plugins of Markwon especially Syntax highlighting for all different languages which currently supported through Prism4j. So, If have to consider alternate then it would required some additional research and refactoring to assure all existing cases are covered.
**Additional context**
N/A
Contributor guide
Assessment
This issue has not been assessed yet.