Skip to content

refactor: finalize Android package namespace - #38

Merged
zefutoff merged 1 commit into
mainfrom
refactor/finalize-android-package
Oct 12, 2026
Merged

zefutoff merged 1 commit into
mainfrom
refactor/finalize-android-package

Conversation

@zefutoff

Copy link
Copy Markdown
Owner

Summary

Finalize the Android namespace and application ID before public distribution.

The final identifier is:

fr.zefut.grammalecte

The previous development identifier was:

fr.grammalecteandroid.unofficial

This change:

  • updates namespace and applicationId
  • moves application Kotlin sources to the final package
  • moves debug and instrumentation sources to the final package
  • updates the local Android deployment helper
  • adds an automated package-identity guard to make check
  • documents the finalized identifier for F-Droid
  • documents that previous development installations do not upgrade in place

Package identity

The project now uses the same stable identifier for both:

namespace
applicationId

Expected value:

fr.zefut.grammalecte

The new tools/check-android-package-id.sh check prevents an accidental future
change to this public application identity.

Physical-device validation

Validated on:

Samsung Galaxy S21 SM-G998B
Android 15

Installation:

adb install -r app-debug.apk
Success

Installed package:

fr.zefut.grammalecte

The previous development package was not installed.

MainActivity launched successfully as:

fr.zefut.grammalecte/.MainActivity

Instrumentation validation

Executed on the physical device:

:app:connectedDebugAndroidTest

Result:

BUILD SUCCESSFUL

The suite covers, among other integrations:

  • application and component manifest exposure
  • SpellCheckerService integration
  • PROCESS_TEXT integration
  • IME discovery and InputConnection integration
  • setup and status screens
  • packaged Grammalecte engine
  • visual identity and accessibility integration

Build validation

Successful validation included:

make check
make assemble
:app:assembleRelease
:app:assembleDebugAndroidTest
:app:connectedDebugAndroidTest
shellcheck
git diff --check

The privacy invariant remains unchanged and the application still declares no
INTERNET permission.

Distribution impact

The previous identifier was used only for development builds.

Android treats:

fr.grammalecteandroid.unofficial

and:

fr.zefut.grammalecte

as different applications.

This rename is intentionally performed before the first stable/public
distribution. The new identifier is considered permanent after publication.

Roadmap

This implements the Phase 5 package-namespace decision.

The roadmap item will be marked complete after merge and successful CI/release
validation on main.

@zefutoff
zefutoff merged commit 7a016e6 into main Oct 12, 2026
4 checks passed
@zefutoff
zefutoff deleted the refactor/finalize-android-package branch October 12, 2026 20:54
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.

1 participant