desktop_photo_search sample (fluent_ui) doesn't build against Flutter master branch
cbracken opened this issue · comments
Chris Bracken commented
Repro steps:
cd desktop_photo_search/fluent_ui
flutter run -d mac
Expected behaviour: app compiles and runs.
Actual behaviour: compile error:
% flutter run -d mac
Running "flutter pub get" in fluent_ui... 2 638ms
Launching lib/main.dart on macOS in debug mode...
Running pod install... 1 384ms
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/form/selection_controls.dart:26:29: Error: The parameter 'clipboardStatus' of the method '_FluentTextSelectionControls.buildToolbar' has type 'ClipboardStatusNotifier', which does not match the corresponding type, 'ClipboardStatusNotifier?', in the overridden method, 'TextSelectionControls.buildToolbar'.
- 'ClipboardStatusNotifier' is from 'package:flutter/src/widgets/text_selection.dart' ('../../../flutter/packages/flutter/lib/src/widgets/text_selection.dart').
Change to a supertype of 'ClipboardStatusNotifier?', or, for a covariant parameter, a subtype.
ClipboardStatusNotifier clipboardStatus,
^
../../../flutter/packages/flutter/lib/src/widgets/text_selection.dart:138:10: Context: This is the overridden method ('buildToolbar').
Widget buildToolbar(
^
lib/src/widgets/unsplash_notice.dart:30:20: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../flutter/packages/flutter/lib/src/widgets/binding.dart').
WidgetsBinding.instance!.addPostFrameCallback((timeStamp) {
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/inputs/dropdown_button.dart:350:20: Warning: Operand of null-aware operation '?.' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../flutter/packages/flutter/lib/src/widgets/binding.dart').
WidgetsBinding.instance?.addPostFrameCallback((timeStamp) {
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/navigation/navigation_view/indicators.dart:50:20: Warning: Operand of null-aware operation '?.' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../flutter/packages/flutter/lib/src/widgets/binding.dart').
WidgetsBinding.instance?.addPostFrameCallback((timeStamp) {
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/navigation/navigation_view/indicators.dart:56:20: Warning: Operand of null-aware operation '?.' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../flutter/packages/flutter/lib/src/widgets/binding.dart').
WidgetsBinding.instance?.addPostFrameCallback((timeStamp) {
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/surfaces/tooltip.dart:190:41: Warning: Operand of null-aware operation '!' has type 'RendererBinding' which excludes null.
- 'RendererBinding' is from 'package:flutter/src/rendering/binding.dart' ('../../../flutter/packages/flutter/lib/src/rendering/binding.dart').
_mouseIsConnected = RendererBinding.instance!.mouseTracker.mouseIsConnected;
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/surfaces/tooltip.dart:197:21: Warning: Operand of null-aware operation '!' has type 'RendererBinding' which excludes null.
- 'RendererBinding' is from 'package:flutter/src/rendering/binding.dart' ('../../../flutter/packages/flutter/lib/src/rendering/binding.dart').
RendererBinding.instance!.mouseTracker
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/surfaces/tooltip.dart:201:20: Warning: Operand of null-aware operation '!' has type 'GestureBinding' which excludes null.
- 'GestureBinding' is from 'package:flutter/src/gestures/binding.dart' ('../../../flutter/packages/flutter/lib/src/gestures/binding.dart').
GestureBinding.instance!.pointerRouter.addGlobalRoute(_handlePointerEvent);
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/surfaces/tooltip.dart:250:25: Warning: Operand of null-aware operation '!' has type 'RendererBinding' which excludes null.
- 'RendererBinding' is from 'package:flutter/src/rendering/binding.dart' ('../../../flutter/packages/flutter/lib/src/rendering/binding.dart').
RendererBinding.instance!.mouseTracker.mouseIsConnected;
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/surfaces/tooltip.dart:463:20: Warning: Operand of null-aware operation '!' has type 'GestureBinding' which excludes null.
- 'GestureBinding' is from 'package:flutter/src/gestures/binding.dart' ('../../../flutter/packages/flutter/lib/src/gestures/binding.dart').
GestureBinding.instance!.pointerRouter
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/surfaces/tooltip.dart:465:21: Warning: Operand of null-aware operation '!' has type 'RendererBinding' which excludes null.
- 'RendererBinding' is from 'package:flutter/src/rendering/binding.dart' ('../../../flutter/packages/flutter/lib/src/rendering/binding.dart').
RendererBinding.instance!.mouseTracker
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/form/combo_box.dart:1075:54: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../flutter/packages/flutter/lib/src/widgets/binding.dart').
final FocusManager focusManager = WidgetsBinding.instance!.focusManager;
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/form/combo_box.dart:1082:20: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../flutter/packages/flutter/lib/src/widgets/binding.dart').
WidgetsBinding.instance!.removeObserver(this);
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/controls/form/combo_box.dart:1084:20: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../flutter/packages/flutter/lib/src/widgets/binding.dart').
WidgetsBinding.instance!.focusManager
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/layout/dynamic_overflow.dart:615:26: Warning: Operand of null-aware operation '?.' has type 'SchedulerBinding' which excludes null.
- 'SchedulerBinding' is from 'package:flutter/src/scheduler/binding.dart' ('../../../flutter/packages/flutter/lib/src/scheduler/binding.dart').
SchedulerBinding.instance?.addPostFrameCallback((_) {
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/styles/acrylic.dart:93:20: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../flutter/packages/flutter/lib/src/widgets/binding.dart').
WidgetsBinding.instance!.addPostFrameCallback((timeStamp) {
^
../../../../../.pub-cache/hosted/pub.dartlang.org/fluent_ui-3.10.3/lib/src/utils/horizontal_scroll_view.dart:52:32: Warning: Operand of null-aware operation '!' has type 'GestureBinding' which excludes null.
- 'GestureBinding' is from 'package:flutter/src/gestures/binding.dart' ('../../../flutter/packages/flutter/lib/src/gestures/binding.dart').
GestureBinding.instance!.pointerSignalResolver.register(event,
^
../../../../../.pub-cache/git/flutter-desktop-embedding-5c51870ced62a00e809ba4b81a846a052d241c9f/plugins/menubar/lib/src/menu_channel.dart:19:1: Error: 'MenuItem' is imported from both 'package:flutter/src/widgets/platform_menu_bar.dart' and 'package:menubar/src/menu_item.dart'.
import 'menu_item.dart';
^^^^^^^^
Command PhaseScriptExecution failed with a nonzero exit code
** BUILD FAILED **
Doctor:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, 2.13.0-0.0.pre.696, on macOS 12.3.1 21E258 darwin-x64, locale fr-CA)
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
✗ cmdline-tools component is missing
Run `path/to/sdkmanager --install "cmdline-tools;latest"`
See https://developer.android.com/studio/command-line for more details.
✗ Android license status unknown.
Run `flutter doctor --android-licenses` to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS (Xcode 13.3.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.2)
[✓] VS Code (version 1.66.2)
[✓] Connected device (2 available)
[✓] HTTP Host Availability
! Doctor found issues in 1 category.
Chris Bracken commented
Brett Morgan commented
Compiling clean against master
isn't something that flutter/samples
has as a goal. The samples
and codelabs
repos aim to compile green on stable, and be ready with PRs in place for the quarterly stable release when it happens.
See #1132 for an example of a pre-release fixup PR for desktop_photo_search
.