Skip to content

chore: sync main into workstation/kotlin-migration - #789

Merged
thomson-t merged 8 commits into
workstation/kotlin-migrationfrom
chore/sync-main-into-workstation-kotlin-migration
Sep 10, 2026
Merged

chore: sync main into workstation/kotlin-migration#789
thomson-t merged 8 commits into
workstation/kotlin-migrationfrom
chore/sync-main-into-workstation-kotlin-migration

Conversation

@thomson-t

Copy link
Copy Markdown
Collaborator

Brings workstation/kotlin-migration up to date with main.

⚠️ Merge this with "Create a merge commit" — not squash, not rebase

The branch already contains a real merge commit with two parents (7907bbe4 from the integration branch, a1377d39 from main). Squashing would flatten the upstream commits into one synthetic commit on the integration branch and lose the branch point; rebasing would rewrite main's commits with new SHAs. Either one makes the eventual workstation/kotlin-migrationmain merge harder to read and harder to bisect.

What it picks up

#616 chore: bump androidx.test.ext:junit from 1.1.4 to 1.3.0
#769 docs: trim AGENTS.md to the non-derivable core and add CLAUDE.md
#784 chore: bump actions/setup-java from 5 to 6
#765 chore: bump gradle/actions/setup-gradle from 5.0.2 to 6.3.0
#764 chore: bump trunk-io/trunk-action from 1.3.1 to 2.0.0
#775 chore: prepare release 6.0.4

14 files, +194 / −211. No conflicts.

Why the migration tooling is unaffected

Nothing on main touched android-core or android-kit-base src/main, so the committed api/*.api files are still exact. The androidTest manifest and testutils/build.gradle junit bump do not affect the public API guard or the Kotlin migration tracker.

Stacked PRs #777 and #778 will rebase onto this once it lands.

Made with Cursor

mparticle-automation and others added 7 commits September 2, 2026 15:34
Co-authored-by: thomson-t <125323226+thomson-t@users.noreply.github.com>
Bumps [trunk-io/trunk-action](https://github.com/trunk-io/trunk-action) from 1.3.1 to 2.0.0.
- [Release notes](https://github.com/trunk-io/trunk-action/releases)
- [Commits](trunk-io/trunk-action@04ba50e...e1234e6)

---
updated-dependencies:
- dependency-name: trunk-io/trunk-action
  dependency-version: 2.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [gradle/actions/setup-gradle](https://github.com/gradle/actions) from 5.0.2 to 6.3.0.
- [Release notes](https://github.com/gradle/actions/releases)
- [Commits](gradle/actions@0723195...9c97196)

---
updated-dependencies:
- dependency-name: gradle/actions/setup-gradle
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore: bump actions/setup-java from 5 to 6

Bumps [actions/setup-java](https://github.com/actions/setup-java) from 5 to 6.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](actions/setup-java@v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: pin actions/setup-java to v6 commit hash in workflows

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Thomson Thomas <thomson.thomas@rokt.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
AGENTS.md is loaded into every agent session, so it should carry only what
an agent cannot get from the repository itself. Config-derivable detail was
crowding out the parts that actually prevent mistakes.

Removed: the SDK feature list, glossary, persona preamble, the full key-path
tree, the pinned plugin/test-dependency versions, the duplicated project
overview, and the generic engineering advice. Setup, the Maven-local flow and
the isolated-kit builds now point at ONBOARDING.md and CONTRIBUTING.md instead
of being restated.

Added verified traps around the multiple Gradle settings files, test tasks that
pass having run nothing, the kit lint modules that set abortOnError false, the
misnamed lint-baseline.xml, the unwired org.sonarqube plugin, and the narrow
required-status-check set on main.

Also adds a CLAUDE.md that imports AGENTS.md, matching mparticle-apple-sdk and
mparticle-maui-sdk, so Claude Code (which reads CLAUDE.md, not AGENTS.md) sees
these instructions at all.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
* chore: bump androidx.test.ext:junit from 1.1.4 to 1.3.0

Bumps androidx.test.ext:junit from 1.1.4 to 1.3.0.

---
updated-dependencies:
- dependency-name: androidx.test.ext:junit
  dependency-version: 1.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: align dependabot with main and unblock junit 1.3.0 androidTest merge

Remove the stale chore/dependabot target branch so Gradle dependency PRs
match other mParticle SDK repos. Add androidTest manifest overrides for
androidx.test libraries that require minSdk 21.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Thomson Thomas <thomson.thomas@rokt.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@thomson-t
thomson-t requested a review from a team as a code owner September 10, 2026 16:42
@github-actions

Copy link
Copy Markdown

Kotlin migration progress

No change to the Java/Kotlin balance in this PR.

Module Kotlin LOC Java LOC Java (facade, staying) Java left to migrate Kotlin %
android-core 3225 22457 9241 13216 12.6%
android-kit-base 557 5380 1651 3729 9.4%
kits/rokt/rokt 1122 0 0 0 100.0%
Total 4904 27837 10892 16945 15.0%

Migration goal progress: 22.4% (Kotlin LOC as a share of everything that is not a designated public-API facade.)

132 Java files / 43 Kotlin files in scope.

Largest Java files still to migrate
LOC File
1514 android-core/src/main/java/com/mparticle/internal/ConfigManager.java
1441 android-kit-base/src/main/java/com/mparticle/kits/KitManagerImpl.java
1089 android-core/src/main/java/com/mparticle/internal/MessageManager.java
1069 android-kit-base/src/main/java/com/mparticle/kits/KitConfiguration.java
858 android-core/src/main/java/com/mparticle/internal/MPUtility.java
840 android-core/src/main/java/com/mparticle/internal/MParticleJSInterface.java
809 android-core/src/main/java/com/mparticle/internal/KitFrameworkWrapper.java
786 android-core/src/main/java/com/mparticle/internal/database/services/MParticleDBManager.java
490 android-kit-base/src/main/java/com/mparticle/kits/mappings/CustomMapping.java
482 android-core/src/main/java/com/mparticle/internal/MParticleApiClientImpl.java
431 android-core/src/main/java/com/mparticle/identity/MParticleIdentityClientImpl.java
375 android-core/src/main/java/com/mparticle/internal/UploadHandler.java
350 android-core/src/main/java/com/mparticle/internal/DeviceAttributes.java
322 android-core/src/main/java/com/mparticle/networking/MParticleBaseClientImpl.java
319 android-core/src/main/java/com/mparticle/internal/MessageHandler.java

@thomson-t

Copy link
Copy Markdown
Collaborator Author

Needed so #777 and #778 can sit on latest main. Please use Create a merge commit (not squash/rebase). After this lands, #777's extra sync files will drop out of its diff automatically.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit a7c92d7. Configure here.

Comment thread VERSION

@nickolas-dimitrakas nickolas-dimitrakas left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will cause a release of the SDK from the workstation branch. We need to open a PR to remove the on: push: branches: workstation in release-publish.yml

workstation/kotlin-migration matches workstation/* and would re-publish
6.0.4 when this branch picks up the VERSION bump already released on main.

Co-authored-by: Cursor <cursoragent@cursor.com>
@thomson-t

Copy link
Copy Markdown
Collaborator Author

This will cause a release of the SDK from the workstation branch. We need to open a PR to remove the on: push: branches: workstation in release-publish.yml

Thanks for flagging. Changed the branch rule to workstation/*-Release to pickup only release versions when merged.

@BrandonStalnaker BrandonStalnaker left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just make sure its a merge commit 👍

@thomson-t
thomson-t merged commit 71a6a17 into workstation/kotlin-migration Sep 10, 2026
45 checks passed
@thomson-t
thomson-t deleted the chore/sync-main-into-workstation-kotlin-migration branch September 10, 2026 17:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants