Skip to content

refactor(build): Centralize Dokka configuration into convention plugin#4173

Merged
jamesarich merged 2 commits into
mainfrom
fix/dokka
Jan 9, 2026
Merged

refactor(build): Centralize Dokka configuration into convention plugin#4173
jamesarich merged 2 commits into
mainfrom
fix/dokka

Conversation

@jamesarich

Copy link
Copy Markdown
Collaborator

This commit refactors the Dokka documentation generation setup by centralizing its configuration into a new DokkaConventionPlugin.

Key changes include:

  • Removing the fragmented Dokka configuration from the root build.gradle.kts file.
  • Creating a DokkaConventionPlugin to apply a standardized Dokka setup across all modules.
  • Applying the new convention plugin to Android application, Android library, and KMP library modules.
  • Removing outdated Dokka V2 properties from gradle.properties.
  • Updating dependency declarations for the Dokka plugin.

This commit refactors the Dokka documentation generation setup by centralizing its configuration into a new `DokkaConventionPlugin`.

Key changes include:
- Removing the fragmented Dokka configuration from the root `build.gradle.kts` file.
- Creating a `DokkaConventionPlugin` to apply a standardized Dokka setup across all modules.
- Applying the new convention plugin to Android application, Android library, and KMP library modules.
- Removing outdated Dokka V2 properties from `gradle.properties`.
- Updating dependency declarations for the Dokka plugin.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
@github-actions github-actions Bot added the bugfix PR tag label Jan 9, 2026
This commit refactors the build logic by creating dedicated convention plugins for Kover (code coverage) and Dokka (documentation).

Key changes:
- Created `KoverConventionPlugin` to apply and configure Kover for each module.
- Moved Dokka configuration logic from `DokkaConventionPlugin` into a reusable `configureDokka` function.
- Removed duplicated Kover and Dokka plugin applications and configurations from individual module `build.gradle.kts` files.
- Centralized Kover and Dokka aggregation logic in the `RootConventionPlugin`.
- Updated Android and KMP convention plugins to apply the new `meshtastic.kover` and `meshtastic.dokka` plugins.
- Updated copyright years across various build files.

This centralization simplifies module build scripts, reduces redundancy, and makes the build configuration more maintainable.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
@codecov

codecov Bot commented Jan 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 0.00%. Comparing base (02f99bd) to head (7b0c8a3).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@          Coverage Diff          @@
##            main   #4173   +/-   ##
=====================================
  Coverage   0.00%   0.00%           
=====================================
  Files          2       3    +1     
  Lines         19      23    +4     
  Branches       7       7           
=====================================
- Misses        19      23    +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@jamesarich jamesarich added this pull request to the merge queue Jan 9, 2026
Merged via the queue into main with commit 731430d Jan 9, 2026
6 checks passed
@jamesarich jamesarich deleted the fix/dokka branch January 9, 2026 16:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugfix PR tag

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant