Publish-ready atomic_lib Flutter SDK (precompiled binaries + CI) - #1241
Draft
joepio wants to merge 8 commits into
Draft
Publish-ready atomic_lib Flutter SDK (precompiled binaries + CI)#1241joepio wants to merge 8 commits into
atomic_lib Flutter SDK (precompiled binaries + CI)#1241joepio wants to merge 8 commits into
Conversation
Move auth, session, sync, pairing UI, drive switching, and the FRB bridge into dart/atomic_flutter so app builders can depend on one package without managing a server or rebuilding QR/sync screens. Canvas now consumes the package and keeps drawing/gallery UI only. Co-authored-by: Joep Meindertsma <joep@ontola.io>
Co-authored-by: Joep Meindertsma <joep@ontola.io>
Rename the Flutter SDK to atomic_lib (consistent with Rust/JS naming; atomic_flutter is taken on pub.dev). Merge the FFI plugin into the package so there is no path dependency for publishing. Wire Cargokit precompiled binaries (path A) with cargokit.yaml + a GitHub Actions workflow that signs and uploads release artifacts. Co-authored-by: Joep Meindertsma <joep@ontola.io>
atomic_flutter Dart/Flutter SDK from the canvas appatomic_lib Flutter SDK (precompiled binaries + CI)
Document atomic_lib as if live on pub.dev: why local-first matters, what Atomic takes off the plate, and a guided setup → identity → data → sync path. Wire into SUMMARY, tooling, get-started, and planning checklists. Co-authored-by: Joep Meindertsma <joep@ontola.io>
Resolve simple conflicts in CHANGELOG.md and README.md: keep the atomic_lib SDK extraction notes and take develop's beta.2 date. Co-authored-by: Joep Meindertsma <joep@ontola.io>
Co-authored-by: Joep Meindertsma <joep@ontola.io>
Include dart/atomic_lib/pubspec.yaml in bump-version.mjs --check/bump, align docs pins, and trigger precompile on v* tags as well as atomic_lib-v*. Co-authored-by: Joep Meindertsma <joep@ontola.io>
|
Follow-up after this merges (Android / multi-app) — don't block publish on it This PR lands the publishable Flutter
That is Also still listed in this PR: generic query/blobs on the Dart bridge — same extract, Dart-facing first if you want pub.dev completeness before Kotlin. Happy to append a short “Next” section to |
After the Flutter package publishes, extract the generic Rust node API and add uniffi Kotlin + atomic-android Binder host (android-data-reuse Phase 1). Do not block pub.dev on that work. Co-authored-by: Joep Meindertsma <joep@ontola.io>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Extracts and renames the Flutter SDK to
package:atomic_lib(matches Rustatomic_lib/ JS@tomic/lib;atomic_flutteris taken on pub.dev), merges the FFI plugin into one publishable package, and wires Cargokit path A: signed precompiled binaries uploaded to GitHub Releases.Package
dart/atomic_lib/0.41.0-beta.2— lockstep with the monorepo viascripts/bump-version.mjs(16 sites;--checkcovers the pubspec)dart pub publishLICENSE,CHANGELOG.md,example/,rust/cargokit.yaml(public key + release URL prefix)path: ../dart/atomic_libCI
New workflow
.github/workflows/atomic_lib_precompile.yml:cargo testbuild_tool precompile-binariesprecompiled_<crate_hash>releasesv*/atomic_lib-v*tags and pushes todevelopthat touchdart/atomic_lib/**orlib/**Required secret:
CARGOKIT_PRIVATE_KEY(set on the repo).Docs (as if live)
docs/src/flutter.md— SDK referencedocs/src/flutter-guide/— local-first tutorialStill before first pub.dev publish
develop(after merge)Next after this merges (do not block publish)
Landed in
planning/atomic-flutter-sdk.md“Next after this PR merges”:simple.rs(canvas stays a consumer) → towardAtomicNodeatomic-androidAAR — Binder ContentProvider/AIDL for other apps (android-data-reusePhase 1)That substrate also unblocks SearchLauncher/Atomic Launcher (#1252) via APIs at HOME without merging products yet.
Checklist
Test plan
flutter analyze+flutter testindart/atomic_libnode scripts/bump-version.mjs --check 0.41.0-beta.2dart/atomic_lib/pubspec.yamldart pub publish