Skip to content

chore(deps): bump flutter_gemma from 0.3.1 to 0.15.0#58

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pub/flutter_gemma-0.14.5
Closed

chore(deps): bump flutter_gemma from 0.3.1 to 0.15.0#58
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pub/flutter_gemma-0.14.5

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github May 9, 2026

Bumps flutter_gemma from 0.3.1 to 0.15.0.

Release notes

Sourced from flutter_gemma's releases.

Release v0.15.0

What's new in 0.15.0

  • MTP / speculative decoding for Gemma 4 — LiteRT-LM 0.11.0 enables Multi-Token Prediction on macOS / iOS / Android / Windows. New enableSpeculativeDecoding flag on getActiveModel() overrides the model default if needed.
  • 🤖 Android NPU restored for .litertlm (regression fix from 0.14.0) — PreferredBackend.npu again drives Qualcomm QNN / Google Tensor / MediaTek dispatch libs through LiteRT-LM's Backend::NPU.
  • 🖥️ Desktop NPUPreferredBackend.npu accepted on macOS / Linux / Windows (#261). Same dispatch-lib requirement as Android.
  • 🐧 Linux known limitation — pre-MTP Gemma 4 revision required until upstream fixes google-ai-edge/LiteRT-LM#2225. Workaround in README → Linux Setup.
  • 🛠️ Hook native cache — marker-file based invalidation (.flutter_gemma_native_version) — bumps clean stale companion libs automatically.

See https://github.com/DenisovAV/flutter_gemma/blob/HEAD/CHANGELOG.md for full release notes.

native-v0.11.0-a

Native LiteRT-LM v0.11.0 (Multi-Token Prediction support).

Built from upstream tag v0.11.0 with patch_c_api.sh applied (set_max_num_images, set_litert_dispatch_lib_dir, 6-arg conversation_config_create, sampler params propagation, Apple gpu_registry dlopen path).

Apple builds: vtool minos 26.2 → 16.0 patch on libGemmaModelConstraintProvider.dylib (App Store ITMS-90208), -c opt --strip=always. Android: -Wl,-z,max-page-size=16384 (Google Play 16KB). Windows: MSVC /OPT:REF /OPT:ICF.

7 platforms: Android arm64, iOS arm64 device + sim, Linux x86_64 + arm64, macOS arm64, Windows x86_64.

Release v0.14.5

What's Changed

Full Changelog: DenisovAV/flutter_gemma@v0.14.4...v0.14.5

Release v0.14.4

What's Changed

Full Changelog: DenisovAV/flutter_gemma@v0.14.3...v0.14.4

Native dylibs native-v0.10.2-b (size optimization)

native-v0.10.2-b — size optimization (-c opt --strip=always)

Same upstream LiteRT-LM v0.10.2 source as native-v0.10.2-a (iOS still on commit 5e0d86b for Metal accelerator ABI parity). The difference is build flags — all bazelisk build invocations now pass -c opt --strip=always (or MSVC equivalent /OPT:REF /OPT:ICF on Windows).

Aggregate size reductions vs native-v0.10.2-a:

Platform Before After Δ
Android arm64 libLiteRtLm.so 53 MB 38 MB -28%
macOS arm64 libLiteRtLm.dylib 49 MB 28 MB -43%
iOS arm64 libLiteRtLm.dylib 51 MB 19 MB -63%
iOS Sim arm64 libLiteRtLm.dylib 51 MB 19 MB -63%

... (truncated)

Changelog

Sourced from flutter_gemma's changelog.

0.15.0

  • LiteRT-LM 0.11.0: MTP-capable Gemma 4 + speculative decoding on macOS / iOS / Android / Windows.
  • enableSpeculativeDecoding flag on getActiveModel() (null = model default; true/false to override).
  • Restore Android NPU support for .litertlm (regression from 0.14.0): PreferredBackend.npu on Android .litertlm models routes through LiteRT-LM's Backend::NPU again — same as 0.13.x's Kotlin path before the FFI migration silently dropped it. Requires a Qualcomm QNN / Google Tensor / MediaTek dispatch lib on the device; without one, engine_create fails with a dispatch error. MediaPipe .task models still don't support NPU (MediaPipe SDK limitation, unchanged).
  • PreferredBackend.npu on desktop (#261): macOS / Linux / Windows backend arm wired. Same dispatch-lib requirement as Android.
  • Linux known limitation: post-MTP HF Gemma 4 revisions blocked upstream — libLiteRtWebGpuAccelerator.so segfaults during graph compile (filed google-ai-edge/LiteRT-LM#2225) and multi-signature vision encoder rejected by native (engine_create error). Workaround: pin pre-MTP HF revision 7fa1d78473894f7e736a21d920c3aa80f950c0db for Linux users. Other platforms unaffected.
  • hook native cache: marker-file based invalidation (.flutter_gemma_native_version) — bumps clean stale companion libs automatically.

0.14.5

  • Fix desktop embedding on pub.dev installs (#250 follow-up): tensorflowlite_c.{dll,so,dylib} now bundled via Native Assets — regression from 0.14.0 setup-script removal.

0.14.4

  • Fix macOS dylib loading on pub.dev installs (#255).
  • Fix fromAsset install on desktop (#250 mode 2).
  • Fix Android x86_64 emulator crash on embedding init (#250 mode 3).
  • Reduce native lib size: iOS -63%, macOS -43%, Android -28%, Linux -16-18%.

0.14.3

  • Fix App Store ITMS-90208 rejection on iOS (#245): downgraded patched libGemmaModelConstraintProvider.dylib minos 26.2 → 14.0 to match the other companion dylibs.
  • Fix Android Google Play 16KB page-size requirement (#253): rebuilt libLiteRtLm.so with -Wl,-z,max-page-size=16384.
  • Fix Web RAG build pipeline (#251): cross-platform npm run build, bundles cache_api.js + LiteRT WASM into dist/, ships package.json + vite.config.js in pub tarball.

0.14.2

  • Fix macOS install_name_tool failure (#247): dart run / build_runner / flutter test on a pure-Dart library aborted with larger updated load commands do not fit because upstream Apple companion dylibs lack -headerpad_max_install_names. Skip them from Native Assets on macOS and bundle via Podfile post_install instead.
  • Fix Gemma 4 escape-token leakage in chat history (#248): <|"|> tokens from tool_calls.arguments were written to history raw, making the model echo them on later turns. Strip recursively before persist via new SdkResponseParser.cleanRawForHistory.
  • Fix modelFromAsset install on desktop (#250): the large_file_handler channel call threw MissingPluginException on macOS / Windows / Linux because the package only ships Android + iOS plugins. Now catches it and falls back to the in-memory loadAsset → writeFile path. Embedding (localagents-rag) and .litertlm FFI paths additionally fail fast with a typed message on non-arm64 Android (x86_64 emulator / armeabi-v7a) instead of a generic JVM crash — see new "Platform & Architecture Support" section in README.
  • macOS Podfile setup (BREAKING for macOS app projects): app projects must update macos/Podfile post_install to the new snippet (see README → macOS Setup). iOS / Linux / Windows / Android unaffected.
  • Perf debug logs: [*/perf] lines break out cost of dylib load, engine_create, prefill, decode — visible via debugPrint in both debug and release builds.

0.14.1

  • Web build fix (#244): 0.14.0 broke web compilation by statically importing core/ffi/litert_lm_client.dart (which imports dart:ffi) through the flutter_gemma_interface.dartmobile/flutter_gemma_mobile.dart chain. JS/Wasm targets cannot compile dart:ffi. Added conditional imports in mobile/flutter_gemma_mobile.dart that swap litert_lm_client.dart and ffi_inference_model.dart for *_stub.dart shims on dart.library.js_interop. The web plugin (FlutterGemmaWeb) registers itself as FlutterGemmaPlugin.instance before any FFI code path runs, so the stubs' constructors (which throw UnsupportedError) are never actually invoked on web.
  • App Store fix (#245, ITMS-90432): 0.14.0 dropped lib*.dylib symlinks alongside the bundled .framework/ accelerators in Runner.app/Frameworks/ so LiteRT-LM's gpu_registry could dlopen them by basename — App Store Connect rejected those builds with "Unexpected file found in Frameworks". 0.14.1 patches the upstream LiteRT-LM source (runtime/components/sampler_factory.cc and litert/runtime/accelerators/gpu_registry.cc) to load Apple platform accelerators via @executable_path/../Frameworks/<X>.framework/<X> (macOS) / @executable_path/Frameworks/<X>.framework/<X> (iOS) instead of libX.dylib. Native Assets bundles the framework bundles correctly out of the box; no host-side Podfile symlinks needed. Patch applied during local Bazel rebuild — see native/litert_lm/patch_c_api.sh section 10.
  • Gemma 4 native function calling: New ModelType.gemma4 routes tool definitions to LiteRT-LM SDK via litert_lm_conversation_config_set_tools (OpenAI Chat Completions JSON). SDK applies chat_template.jinja through minja, renders native <|tool>declaration:...<tool|> tokens, and parses the model's <|tool_call>...<tool_call|> response back into structured tool_calls JSON. flutter_gemma reads the result via SdkResponseParser.extractToolCalls (handles parallel calls and the multimodal content[] path) and returns FunctionCallResponse to the app — no Dart-side prompt engineering needed.
  • Escape token cleanup: Strips leftover <|"|> Gemma 4 escape tokens from string arguments (recursively, including nested maps/lists).
  • example/lib/models/model.dart: Gemma 4 E2B / E4B entries switched to modelType: ModelType.gemma4.

0.14.0

  • Desktop FFI rewrite: macOS, Linux, Windows now run LiteRT-LM directly via dart:ffi against the C API. Removed Kotlin/JVM gRPC server, Azul Zulu JRE 24 download, and litertlm-server.jar bundling. Engine creation ~2 s (was ~10–15 s incl. JVM cold-start)
  • iOS GPU acceleration: Metal delegate for .litertlm models on iPhone (Gemma 3 1B, Gemma 3n E2B, Gemma 4 E2B). Multimodal vision + audio work on device
  • Linux + Windows GPU: WebGPU/Vulkan on Linux, WebGPU/DX12 on Windows; DXC runtime (dxil.dll + dxcompiler.dll v1.9.2602) bundled in the Windows native archive — no manual install required
  • Android: drop Kotlin LiteRtLm dependency.litertlm models on Android now go through the same Dart FFI path as desktop/iOS (was com.google.ai.edge.litertlm:litertlm-android AAR before). MediaPipe stays for .task/.bin models
  • iOS Simulator: CPU-only — Metal sim has 256 MB single-allocation cap, LLM weight tensors exceed it
  • Unified FFI client: All five platforms (Android, iOS, macOS, Linux, Windows) share LiteRtLmFfiClient (lib/core/ffi/)
  • Native log capture: stream_proxy_redirect_stderr exposes glog/abseil output on iOS/Android via temp file; helps diagnose engine init failures
  • Native prebuilts: Fetched at build time via hook/build.dart from GitHub release native-v0.10.2; SHA256-verified, bundled via Native Assets
  • macOS / iOS setup: requires a small post_install block in your Podfile to symlink lib*.dylib next to the bundled .frameworks — gpu_registry calls dlopen by basename. See the macOS Setup section in README for the exact snippet (iOS works via the same pattern in example/ios/Podfile)

0.13.6

  • ModelType.qwen3: New model type for Qwen3 models with thinking support
  • Disable Qwen3 thinking at model level: /no_think appended automatically when isThinking: false — faster TTFT

... (truncated)

Commits

@dependabot dependabot Bot added dart Pull requests that update dart code dependencies Pull requests that update a dependency file labels May 9, 2026
@dependabot dependabot Bot requested a review from NITISH-R-G as a code owner May 9, 2026 05:34
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file dart Pull requests that update dart code labels May 9, 2026
@dependabot dependabot Bot force-pushed the dependabot/pub/flutter_gemma-0.14.5 branch 2 times, most recently from 1077b89 to 13ed68e Compare May 9, 2026 15:09
Bumps [flutter_gemma](https://github.com/DenisovAV/flutter_gemma) from 0.3.1 to 0.15.0.
- [Release notes](https://github.com/DenisovAV/flutter_gemma/releases)
- [Changelog](https://github.com/DenisovAV/flutter_gemma/blob/main/CHANGELOG.md)
- [Commits](https://github.com/DenisovAV/flutter_gemma/commits/v0.15.0)

---
updated-dependencies:
- dependency-name: flutter_gemma
  dependency-version: 0.14.5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot Bot changed the title chore(deps): bump flutter_gemma from 0.3.1 to 0.14.5 chore(deps): bump flutter_gemma from 0.3.1 to 0.15.0 May 12, 2026
@dependabot dependabot Bot force-pushed the dependabot/pub/flutter_gemma-0.14.5 branch from 13ed68e to b0d5eb6 Compare May 12, 2026 04:18
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github May 16, 2026

Superseded by #100.

@dependabot dependabot Bot closed this May 16, 2026
@dependabot dependabot Bot deleted the dependabot/pub/flutter_gemma-0.14.5 branch May 16, 2026 05:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dart Pull requests that update dart code dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants