Skip to content

rive_native 0.1.9 fails to compile on Flutter 3.29.3 #643

Description

@brightyorcerf

Submission checklist

  • I have confirmed the issue is present in the latest version of the rive Flutter package
  • I have searched the documentation and forums and could not find an answer
  • I have searched existing issues and this is not a duplicate

Description

SemanticsConfiguration.isRequired and SemanticsRole undefined despite flutter: ">=3.28.0" declared minimum

rive_native 0.1.9 (shipped as a transitive dependency of rive 0.14.9) fails to compile on Flutter 3.29.3
across all platforms (iOS, Android, web). The package declares flutter: ">=3.28.0" in its pubspec but uses
Flutter semantics APIs that do not exist in Flutter 3.29.3:

  • SemanticsConfiguration.isRequired (setter)
  • SemanticsRole (class — with values .tab, .listItem, .list, .tabBar, .dialog, .alertDialog, .radioGroup)

Both are referenced in rive_native/lib/src/semantics/rive_semantics_overlay.dart.

Reproduction steps / code

  1. Install Flutter 3.29.3
  2. Create a Flutter project and add rive: ^0.14.9 to pubspec.yaml
  3. Run flutter pub get
  4. Run flutter run on any target (iOS device, simulator, or web)
  5. Compilation fails

Upload your reproduction files / stack trace

No response

Source .riv / .rev file

No response

Screenshots / video

No response

Rive Flutter package version

0.14.9 (rive_native 0.1.9)

Flutter version

Flutter 3.29.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision ea121f8859 (1 year, 2 months ago) • 2025-04-11 19:10:07
+0000
Engine • revision cf56914b32
Tools • Dart 3.7.2 • DevTools 2.42.3

Device

iMac 2017, Intel, macOS Ventura 13.6.7

OS version

macOS 13.6.7 (22G720)

Additional context

macOS Ventura (13.x) cannot run Flutter 3.44+ which requires macOS 14+.

This means any developer on an older Mac who upgrades to rive 0.14.9 is blocked from building their app. Downgrading to rive 0.13.x restores compilation but requires rewriting all ViewModel binding code since the API changed significantly between 0.13 and 0.14.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions