Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/workflows/electron-native-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -359,8 +359,9 @@ jobs:

# Replaces a hand-copied C:\actions-runner-state directory that carried no
# version information and had already gone stale once (QAIRT 2.45.x staged
# against a newer install). Now a checksum-pinned public asset, and the
# pairing gate proves it is the SDK this engine was built against.
# against a newer install). Now a checksum-pinned PRIVATE asset on the
# neurun repo (NEURUN_TOKEN below), and the pairing gate proves it is the
# SDK this engine was built against.
- name: Download the pinned QAIRT runtime (win-arm64)
shell: bash
env:
Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ platform services (file I/O, HTTP, Keychain, audio) via an inversion-of-control
call into the C core for all inference. Protobuf IDL schemas generate type-safe bindings
for every language.

**Current version**: `0.20.26` (canonical source: `core/VERSION`)
**Current version**: `0.20.27` (canonical source: `core/VERSION`)

| SDK | Path | Bridge mechanism | Platforms |
|-----|------|-------------------|-----------|
Expand Down
4 changes: 2 additions & 2 deletions Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import Foundation
// This is the SINGLE Package.swift for both local development and SPM consumption.
//
// FOR EXTERNAL USERS (consuming via GitHub):
// .package(url: "https://github.com/RunanywhereAI/runanywhere-swift.git", from: "0.20.26")
// .package(url: "https://github.com/RunanywhereAI/runanywhere-swift.git", from: "0.20.27")
//
// Consume the SWIFT DISTRIBUTION REPO, never this monorepo. Two reasons, and
// the first one is fatal:
Expand Down Expand Up @@ -120,7 +120,7 @@ let mlxRuntimeDistributionSwiftSettings: [SwiftSetting] = buildMLXDistributionFr
// republished carrying Windows x64 and ARM64 natives, and 0.20.22 fixes their
// packaging; none of v0.20.20, v0.20.21 or v0.20.22 exists as a tag with
// release assets, so the remote binaryTargets must keep resolving 0.20.19.
let sdkVersion = "0.20.26"
let sdkVersion = "0.20.27"

let homebrewPrefix = ProcessInfo.processInfo.environment["RUNANYWHERE_HOMEBREW_PREFIX"]
?? ProcessInfo.processInfo.environment["HOMEBREW_PREFIX"]
Expand Down
2 changes: 1 addition & 1 deletion bindings/electron/native/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@runanywhere/electron-native",
"version": "0.20.26",
"version": "0.20.27",
"description": "RunAnywhere Electron SDK — native N-API addon over the rac_* C ABI (on-device LLM/VLM/STT/TTS, Windows-first, Hexagon-ready).",
"private": true,
"license": "SEE LICENSE IN ../../../LICENSE",
Expand Down
4 changes: 2 additions & 2 deletions bindings/electron/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions bindings/electron/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@runanywhere/electron",
"version": "0.20.26",
"version": "0.20.27",
"description": "RunAnywhere Electron SDK — on-device LLM/VLM/STT/TTS/embeddings for Electron & Node (prebuilds: darwin-arm64, win32-x64; win32-arm64 QHexRT/Hexagon NPU).",
"publishConfig": {
"access": "public"
Expand Down Expand Up @@ -75,7 +75,7 @@
"@runanywhere/proto-ts": "file:../proto-ts"
},
"peerDependencies": {
"@runanywhere/proto-ts": "^0.20.26"
"@runanywhere/proto-ts": "^0.20.27"
},
"devDependencies": {
"@types/node": "^22.7.0",
Expand Down
2 changes: 1 addition & 1 deletion bindings/electron/packages/llamacpp/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@runanywhere/electron-llamacpp",
"version": "0.20.26",
"version": "0.20.27",
"description": "RunAnywhere Electron SDK — LlamaCPP backend plugin (LLM / VLM / GGUF embeddings)",
"publishConfig": {
"access": "public"
Expand Down
2 changes: 1 addition & 1 deletion bindings/electron/packages/neurt/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@runanywhere/electron-neurt",
"version": "0.20.26",
"version": "0.20.27",
"description": "RunAnywhere Electron SDK — NeuRT backend plugin (Apple Neural Engine via Core ML; macOS only)",
"license": "SEE LICENSE IN LICENSE",
"type": "commonjs",
Expand Down
2 changes: 1 addition & 1 deletion bindings/electron/packages/onnx/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@runanywhere/electron-onnx",
"version": "0.20.26",
"version": "0.20.27",
"description": "RunAnywhere Electron SDK — ONNX backend plugin (embeddings / segmentation)",
"publishConfig": {
"access": "public"
Expand Down
2 changes: 1 addition & 1 deletion bindings/electron/packages/qhexrt/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@runanywhere/electron-qhexrt",
"version": "0.20.26",
"version": "0.20.27",
"description": "RunAnywhere Electron SDK \u2014 QHexRT backend plugin (Qualcomm Hexagon NPU; Snapdragon X / X2 Elite on Windows ARM64)",
"license": "SEE LICENSE IN LICENSE",
"type": "commonjs",
Expand Down
2 changes: 1 addition & 1 deletion bindings/electron/packages/sherpa/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@runanywhere/electron-sherpa",
"version": "0.20.26",
"version": "0.20.27",
"description": "RunAnywhere Electron SDK — Sherpa backend plugin (STT / TTS / VAD)",
"publishConfig": {
"access": "public"
Expand Down
4 changes: 2 additions & 2 deletions bindings/flutter/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ bindings/flutter/
└── runanywhere_qhexrt/ # QHexRT Qualcomm Hexagon NPU backend (Android-only)
```

All four backend packages depend on `runanywhere ^0.20.26`; the core package vendors
All four backend packages depend on `runanywhere ^0.20.27`; the core package vendors
`RACommons`, each backend vendors its own XCFrameworks/`.so` files. Example app:
`bindings/flutter/example/` (setup/troubleshooting in `docs/DEVELOPMENT.md`;
`example/scripts/verify.sh` is the clean-clone build gate).
Expand Down Expand Up @@ -218,7 +218,7 @@ strict-raw-types, error-level `dead_code`/`unused_import`/`unused_local_variable

| Package / Artifact | Version |
|---|---|
| `runanywhere`, `runanywhere_llamacpp`, `runanywhere_mlx`, `runanywhere_onnx`, `runanywhere_qhexrt` | 0.20.26 (all 5, confirmed identical) |
| `runanywhere`, `runanywhere_llamacpp`, `runanywhere_mlx`, `runanywhere_onnx`, `runanywhere_qhexrt` | 0.20.27 (all 5, confirmed identical) |
| `RACommons` native | 0.1.6 |
| llama.cpp engine | runanywhere-b10453.4 |
| ONNX Runtime | 1.28.0 |
Expand Down
16 changes: 8 additions & 8 deletions bindings/flutter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,36 +40,36 @@ ARM64 devices are recommended. Metal on iOS and NEON on Android provide signific

## Installation

Add the packages you need to `pubspec.yaml`. Pin to **0.20.26**:
Add the packages you need to `pubspec.yaml`. Pin to **0.20.27**:

**Core + LlamaCpp (LLM):**

```yaml
dependencies:
runanywhere: 0.20.26
runanywhere_llamacpp: 0.20.26
runanywhere: 0.20.27
runanywhere_llamacpp: 0.20.27
```

**Core + ONNX (STT / TTS / VAD):**

```yaml
dependencies:
runanywhere: 0.20.26
runanywhere_onnx: 0.20.26
runanywhere: 0.20.27
runanywhere_onnx: 0.20.27
```

**Core + MLX (Apple LLM / VLM / speech on physical iOS devices):**

```yaml
dependencies:
runanywhere: 0.20.26
runanywhere_mlx: 0.20.26
runanywhere: 0.20.27
runanywhere_mlx: 0.20.27
```

**Optional NPU (Snapdragon Android):**

```yaml
runanywhere_qhexrt: 0.20.26
runanywhere_qhexrt: 0.20.27
```

Then run:
Expand Down
12 changes: 6 additions & 6 deletions bindings/flutter/docs/ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ bindings/flutter/
└── runanywhere_qhexrt/ # Qualcomm Hexagon NPU (Android-only)
```

Backend packages depend on `runanywhere ^0.20.26`. Source checkouts prefer
Backend packages depend on `runanywhere ^0.20.27`. Source checkouts prefer
package-owned XCFramework/JNI staging, while public pub archives omit those
large binaries and resolve versioned, checksum-verified release archives through
CocoaPods/SwiftPM on iOS and Gradle on Android. MLX is CocoaPods-only because
Expand Down Expand Up @@ -463,11 +463,11 @@ lives in the bundled native backend (C++ engines or the Swift MLX runtime).

| Component | Version |
|-----------|---------|
| `runanywhere` (Dart) | 0.20.26 |
| `runanywhere_llamacpp` | 0.20.26 |
| `runanywhere_mlx` | 0.20.26 |
| `runanywhere_onnx` | 0.20.26 |
| `runanywhere_qhexrt` | 0.20.26 |
| `runanywhere` (Dart) | 0.20.27 |
| `runanywhere_llamacpp` | 0.20.27 |
| `runanywhere_mlx` | 0.20.27 |
| `runanywhere_onnx` | 0.20.27 |
| `runanywhere_qhexrt` | 0.20.27 |
| `RACommons` native | 0.1.6 |
| llama.cpp engine | runanywhere-b10453.4 |
| ONNX Runtime | 1.28.0 |
Expand Down
2 changes: 1 addition & 1 deletion bindings/flutter/docs/Documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -534,7 +534,7 @@ import 'package:runanywhere_onnx/runanywhere_onnx.dart';

## Versioning

- Canonical SDK version: `RunAnywhere.version` (currently `0.20.26`).
- Canonical SDK version: `RunAnywhere.version` (currently `0.20.27`).
- Native commons version: vendored `RACommons` build (`0.1.6`).
- llama.cpp engine: `runanywhere-b10453.4`.
- ONNX Runtime: `1.28.0`.
Expand Down
14 changes: 14 additions & 0 deletions bindings/flutter/packages/runanywhere/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,20 @@ All notable changes to the RunAnywhere Flutter SDK will be documented in this fi
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.20.27] - 2026-08-24

### Changed

- The Apple Neural Engine (NeuRT) and Hexagon NPU (QHexRT) engines now ship from
pinned, prebuilt archives published by the private engine repository rather
than being compiled from source. Each archive is verified by SHA-256 and by a
build receipt naming the plugin ABI version it was built against.
- The Hexagon engine's QAIRT/QNN runtime dependency is now pinned and fetched
the same way — as a private, checksum-verified artifact from the engine
repository, paired against the engine's own build identity so the two can
never silently drift apart.
- No Flutter-facing API change.

## [0.20.26] - 2026-08-23

### Changed
Expand Down
2 changes: 1 addition & 1 deletion bindings/flutter/packages/runanywhere/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

```yaml
dependencies:
runanywhere: 0.20.26
runanywhere: 0.20.27
```

Add backend packages as needed (`runanywhere_llamacpp`, `runanywhere_onnx`, etc.). See the [Flutter SDK README](../../README.md) for iOS Podfile, Android permissions, and platform setup.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ ext {
// =============================================================================
// Version Configuration (MUST match Swift Package.swift and Kotlin build.gradle.kts)
// =============================================================================
fallbackCoreVersion = "0.20.26"
fallbackCoreVersion = "0.20.27"
coreVersion = coreVersionFile.exists() ? coreVersionFile.text.trim() : fallbackCoreVersion

// =============================================================================
Expand Down
2 changes: 1 addition & 1 deletion bindings/flutter/packages/runanywhere/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
// Version: Must match Swift SDK's Package.swift and Kotlin SDK's build.gradle.kts

group = 'ai.runanywhere.sdk'
version = '0.20.26'
version = '0.20.27'

// Load binary configuration
apply from: 'binary_config.gradle'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ class RunAnywherePlugin : FlutterPlugin, MethodCallHandler {
companion object {
private const val TAG = "RunAnywherePlugin"
private const val CHANNEL_NAME = "runanywhere"
private const val SDK_VERSION = "0.20.26"
private const val COMMONS_VERSION = "0.20.26"
private const val SDK_VERSION = "0.20.27"
private const val COMMONS_VERSION = "0.20.27"

init {
// Load the Flutter-owned helper through the JVM so JNI_OnLoad can
Expand Down
4 changes: 2 additions & 2 deletions bindings/flutter/packages/runanywhere/ios/runanywhere.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@ end

Pod::Spec.new do |s|
s.name = 'runanywhere'
s.version = '0.20.26'
s.version = '0.20.27'
# TEMP: iOS archives are downloaded from the v#{asset_version} GitHub release.
# s.version leads the published release because 0.20.20 republished only the
# Electron npm packages -- no v0.20.20 tag or iOS archives were ever cut, and
# the checksums below are still the 0.20.19 ones. Bump this back to
# s.version once a matching release exists.
asset_version = '0.20.26'
asset_version = '0.20.27'
s.summary = 'RunAnywhere: Privacy-first, on-device AI SDK for Flutter'
s.description = <<-DESC
Privacy-first, on-device AI SDK for Flutter. This package provides the core
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import PackageDescription
import Foundation

let sdkVersion = "0.20.26"
let sdkVersion = "0.20.27"
let packageRoot = URL(fileURLWithPath: #filePath).deletingLastPathComponent()

func runAnywhereBinaryTarget(name: String, checksum: String) -> Target {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,9 @@ public class RunAnywherePlugin: NSObject, FlutterPlugin {
case "getPlatformVersion":
result("iOS " + UIDevice.current.systemVersion)
case "getSDKVersion":
result("0.20.26")
result("0.20.27")
case "getCommonsVersion":
result("0.20.26")
result("0.20.27")
default:
result(FlutterMethodNotImplemented)
}
Expand Down
2 changes: 1 addition & 1 deletion bindings/flutter/packages/runanywhere/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: runanywhere
description: Privacy-first, on-device AI SDK for Flutter. Run LLMs, STT, TTS, and VAD directly on device with no data leaving the device.
version: 0.20.26
version: 0.20.27
homepage: https://runanywhere.ai
repository: https://github.com/RunanywhereAI/runanywhere-sdks
issue_tracker: https://github.com/RunanywhereAI/runanywhere-sdks/issues
Expand Down
6 changes: 6 additions & 0 deletions bindings/flutter/packages/runanywhere_llamacpp/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ All notable changes to the RunAnywhere LlamaCpp Backend will be documented in th
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.20.27] - 2026-08-24

### Changed

- Version-train bump only; no llama.cpp-facing changes in this release.

## [0.20.26] - 2026-08-23

### Changed
Expand Down
4 changes: 2 additions & 2 deletions bindings/flutter/packages/runanywhere_llamacpp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@

```yaml
dependencies:
runanywhere: 0.20.26
runanywhere_llamacpp: 0.20.26
runanywhere: 0.20.27
runanywhere_llamacpp: 0.20.27
```

Platform setup (Podfile, permissions) is documented in the [Flutter SDK README](../../README.md).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ ext {
// =============================================================================
// Version Configuration (MUST match Swift Package.swift and Kotlin build.gradle.kts)
// =============================================================================
fallbackCoreVersion = "0.20.26"
fallbackCoreVersion = "0.20.27"
coreVersion = coreVersionFile.exists() ? coreVersionFile.text.trim() : fallbackCoreVersion

// =============================================================================
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
// Version: Must match Swift SDK's Package.swift and Kotlin SDK's build.gradle.kts

group = 'ai.runanywhere.sdk.llamacpp'
version = '0.20.26'
version = '0.20.27'

// Load binary configuration
apply from: 'binary_config.gradle'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@ end

Pod::Spec.new do |s|
s.name = 'runanywhere_llamacpp'
s.version = '0.20.26'
s.version = '0.20.27'
# TEMP: iOS archives are downloaded from the v#{asset_version} GitHub release.
# s.version leads the published release because 0.20.20 republished only the
# Electron npm packages -- no v0.20.20 tag or iOS archives were ever cut, and
# the checksums below are still the 0.20.19 ones. Bump this back to
# s.version once a matching release exists.
asset_version = '0.20.26'
asset_version = '0.20.27'
s.summary = 'RunAnywhere LlamaCPP: LLM text generation for Flutter'
s.description = <<-DESC
LlamaCPP backend for RunAnywhere Flutter SDK. Provides LLM text generation
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import PackageDescription
import Foundation

let sdkVersion = "0.20.26"
let sdkVersion = "0.20.27"
let packageRoot = URL(fileURLWithPath: #filePath).deletingLastPathComponent()

func runAnywhereBinaryTarget(name: String, checksum: String) -> Target {
Expand Down
Loading
Loading