Skip to content

refactor(build): Create a dedicated analytics convention plugin#3961

Merged
jamesarich merged 1 commit into
mainfrom
fix/datadog-compose
Dec 11, 2025
Merged

refactor(build): Create a dedicated analytics convention plugin#3961
jamesarich merged 1 commit into
mainfrom
fix/datadog-compose

Conversation

@jamesarich

@jamesarich jamesarich commented Dec 10, 2025

Copy link
Copy Markdown
Collaborator

This centralizes the analytics and crash reporting configuration into a new meshtastic.analytics convention plugin. This simplifies the app/build.gradle.kts and core/analytics/build.gradle.kts files and makes the build logic more modular and reusable.

  • Created AnalyticsConventionPlugin.kt to handle the application of Google Services, Firebase Crashlytics, and DataDog plugins for the google product flavor.
  • Registered the new meshtasticAnalytics convention plugin in build-logic/convention/build.gradle.kts.
  • Applied the new convention plugin to the main app module.
  • Moved the application of analytics-related plugins from the app module's build.gradle.kts to the new convention plugin.
  • Changed analytics dependencies in the core-analytics module from googleImplementation to googleApi to ensure they are correctly exposed to the app module which now applies the necessary plugins.

@github-actions github-actions Bot added the bugfix PR tag label Dec 10, 2025
@jamesarich jamesarich enabled auto-merge December 10, 2025 20:16
@jamesarich jamesarich disabled auto-merge December 10, 2025 20:19
@codecov

codecov Bot commented Dec 10, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 0.52%. Comparing base (14f6a46) to head (bc9a91f).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@          Coverage Diff          @@
##            main   #3961   +/-   ##
=====================================
  Coverage   0.52%   0.52%           
=====================================
  Files        394     394           
  Lines      23170   23170           
  Branches    2943    2943           
=====================================
  Hits         122     122           
  Misses     23027   23027           
  Partials      21      21           

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

This commit centralizes the analytics and crash reporting configuration into a new `meshtastic.analytics` convention plugin. This simplifies the `app/build.gradle.kts` and `core/analytics/build.gradle.kts` files and makes the build logic more modular and reusable.

- Created `AnalyticsConventionPlugin.kt` to handle the application of Google Services, Firebase Crashlytics, and DataDog plugins for the `google` product flavor.
- Registered the new `meshtasticAnalytics` convention plugin in `build-logic/convention/build.gradle.kts`.
- Applied the new convention plugin to the main `app` module.
- Moved the application of analytics-related plugins from the `app` module's `build.gradle.kts` to the new convention plugin.
- Changed analytics dependencies in the `core-analytics` module from `googleImplementation` to `googleApi` to ensure they are correctly exposed to the `app` module which now applies the necessary plugins.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
@jamesarich jamesarich added this pull request to the merge queue Dec 11, 2025
Merged via the queue into main with commit fdff731 Dec 11, 2025
7 checks passed
@jamesarich jamesarich deleted the fix/datadog-compose branch December 11, 2025 05:02
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