Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

experimental/pedometer need to be upgraded to support the Dart 3.0 language version #1767

Closed
domesticmouse opened this issue May 2, 2023 · 5 comments
Assignees

Comments

@domesticmouse
Copy link
Contributor

Analyzing pedometer...                 3.0s

  error • lib/pedometer_bindings_generated.dart:26235:7 • The type 'ObjCSel' must be 'base', 'final' or 'sealed' because the supertype
          'Opaque' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:26237:7 • The type 'ObjCObject' must be 'base', 'final' or 'sealed' because the
          supertype 'Opaque' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:26241:7 • The type '_NSZone' must be 'base', 'final' or 'sealed' because the supertype
          'Opaque' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:29351:7 • The type '_NSRange' must be 'base', 'final' or 'sealed' because the supertype
          'Struct' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:31662:7 • The type '_ObjCBlockDesc' must be 'base', 'final' or 'sealed' because the
          supertype 'Struct' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:31676:7 • The type '_ObjCBlock' must be 'base', 'final' or 'sealed' because the
          supertype 'Struct' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:33591:7 • The type 'NSFastEnumerationState' must be 'base', 'final' or 'sealed' because
          the supertype 'Struct' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:46215:7 • The type 'NSDecimal' must be 'base', 'final' or 'sealed' because the supertype
          'Opaque' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:46613:7 • The type '__CFRunLoop' must be 'base', 'final' or 'sealed' because the
          supertype 'Opaque' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:51189:7 • The type 'dispatch_queue_s' must be 'base', 'final' or 'sealed' because the
          supertype 'Opaque' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:51961:7 • The type 'NSOperatingSystemVersion' must be 'base', 'final' or 'sealed'
          because the supertype 'Struct' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:54309:7 • The type '__SecIdentity' must be 'base', 'final' or 'sealed' because the
          supertype 'Opaque' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed
  error • lib/pedometer_bindings_generated.dart:54311:7 • The type '__SecTrust' must be 'base', 'final' or 'sealed' because the
          supertype 'Opaque' is 'base'. • subtype_of_base_or_final_is_not_base_final_or_sealed

13 issues found.
@mit-mit
Copy link
Member

mit-mit commented May 2, 2023

I cannot repro this with current beta:

$ flutter --version
Flutter 3.10.0-1.4.pre • channel beta • https://github.com/flutter/flutter.git
Framework • revision a14a4eac61 (6 days ago) • 2023-04-26 12:54:31 +0700
Engine • revision f7ac42e8a2
Tools • Dart 3.0.0 (build 3.0.0-417.3.beta) • DevTools 2.23.1

$ dart run ffigen --config ffigen.yaml

$ flutter analyze
Analyzing pedometer...
No issues found! (ran in 3.2s)

Is there some repro step I'm missing @domesticmouse ?

@domesticmouse
Copy link
Contributor Author

Ahh, yep. Switch to beta branch first. The primary difference is that I've bumped the minimum Dart version to 3.0.0-0 which turns on Dart 3 semantics. The PR to land this branch to main is #1746

@mit-mit
Copy link
Member

mit-mit commented May 2, 2023

If you change your lower constraint, then you are selecting a new language version (3.0), which by design is considered opting into breaking changes. So it's not really "broken on Flutter 3.10"; it needs to be "upgraded to support the Dart 3 language version"

@mit-mit mit-mit changed the title experimental/pedometer is broken on Flutter 3.10 beta experimental/pedometer need to be upgraded to support the Dart 3.0 language version May 2, 2023
@mit-mit
Copy link
Member

mit-mit commented May 2, 2023

Updating ffigen seems to fix it:

dev_dependencies:
  ffigen: ^8.0.0-dev.3

I'm now determining when that will be published as a stable version.

@mit-mit
Copy link
Member

mit-mit commented May 3, 2023

ffigen 8.0.0 is out: https://pub.dev/packages/ffigen/versions/8.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants