fzyzcjy / flutter_smooth

Achieve ~60 FPS, no matter how heavy the tree is to build/layout
https://fzyzcjy.github.io/flutter_smooth/
MIT License
1.52k stars 65 forks source link

Error: No named parameter with the name 'fallbackVsyncTargetTime'. #188

Open jmquilez opened 1 year ago

jmquilez commented 1 year ago

First of all, I'd like to thank everybody working on this astonishing project. I truly believe it will bring flutter to a whole different level of completeness and crucially assist with the creation of more performant and production-ready apps. I am actually trying it out because of micro-stutter issues with a listview of videos, where the reported jank does not appear in the devtools' performance view. As it is not raster nor ui thread jank, I believe it might be related to some of the things that this packages aims to solve.

Describe the bug After installing "flutter_smooth" (downloading and building the custom engine, and downloading the custom flutter framework), building a project with it throws a series of error messages, amid which there is the "No named parameter with the name 'fallbackVsyncTargetTime'" that has been mentioned in other issues recently (#154 , #150 ). Here is the complete error message:

/C:/Apps/flutter_smooth/packages/smooth/lib/src/infra/binding.dart:169:9: Error: No named parameter with the name 'fallbackVsyncTargetTime'.
        fallbackVsyncTargetTime: effectiveFallbackVsyncTargetTime,
        ^^^^^^^^^^^^^^^^^^^^^^^
/C:/Apps/flutter_smooth/packages/smooth/lib/src/infra/binding.dart:217:11: Error: No named parameter with the name 'forceDirectlyCallNextVsyncTargetTime'.
          forceDirectlyCallNextVsyncTargetTime:
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/C:/Apps/flutter_smooth/packages/smooth/lib/src/infra/proxy.dart:145:27: Error: No named parameter with the name 'fallbackVsyncTargetTime'.
      inner.render(scene, fallbackVsyncTargetTime: fallbackVsyncTargetTime);
                          ^^^^^^^^^^^^^^^^^^^^^^^
/C:/Apps/flutter_smooth/packages/smooth/lib/src/infra/proxy.dart:263:11: Error: No named parameter with the name 'forceDirectlyCallNextVsyncTargetTime'.
          forceDirectlyCallNextVsyncTargetTime:
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/C:/Apps/smooth_flutter/packages/flutter/lib/src/scheduler/binding.dart:873:38: Error: No named parameter with the name 'forceDirectlyCallNextVsyncTargetTime'.
    platformDispatcher.scheduleFrame(forceDirectlyCallNextVsyncTargetTime: forceDirectlyCallNextVsyncTargetTime);
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/C:/Apps/smooth_flutter/packages/flutter/lib/src/gestures/binding.dart:290:28: Error: Member not found: 'PlatformDispatcher.pointerDataPacketStorageReadPendingAndClear'.
        PlatformDispatcher.pointerDataPacketStorageReadPendingAndClear();
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/C:/Apps/flutter_smooth/packages/smooth/lib/src/infra/actor.dart:135:9: Error: No named parameter with the name 'fallbackVsyncTargetTime'.
        fallbackVsyncTargetTime:
        ^^^^^^^^^^^^^^^^^^^^^^^
/C:/Apps/flutter_smooth/packages/smooth/lib/src/infra/actor.dart:143:34: Error: The method 'notifyIdle' isn't defined for the class 'PlatformDispatcher'.
 - 'PlatformDispatcher' is from 'dart:ui'.
Try correcting the name to the name of an existing method, or defining a method named 'notifyIdle'.
      binding.platformDispatcher.notifyIdle(
                                 ^^^^^^^^^^
/C:/Apps/smooth_flutter/packages/flutter_test/lib/src/window.dart:387:27: Error: No named parameter with the name 'fallbackVsyncTargetTime'.
    _window.render(scene, fallbackVsyncTargetTime: fallbackVsyncTargetTime);
                          ^^^^^^^^^^^^^^^^^^^^^^^
Target kernel_snapshot failed: Exception

FAILURE: Build failed with an exception.

* Where:
Script 'C:\Apps\smooth_flutter\packages\flutter_tools\gradle\flutter.gradle' line: 1151

* What went wrong:
Execution failed for task ':app:compileFlutterBuildRelease'.
> Process 'command 'C:\Apps\smooth_flutter\bin\flutter.bat'' finished with non-zero exit value 1

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 40s
Running Gradle task 'assembleRelease'...                           41,6s
Exception: Gradle task assembleRelease failed with exit code 1
#0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
#1      AndroidGradleBuilder.buildGradleApp (package:flutter_tools/src/android/gradle.dart:408:9)
<asynchronous suspension>
#2      AndroidGradleBuilder.buildApk (package:flutter_tools/src/android/gradle.dart:184:5)
<asynchronous suspension>
#3      AndroidDevice.startApp (package:flutter_tools/src/android/android_device.dart:574:7)
<asynchronous suspension>
#4      FlutterDevice.runCold (package:flutter_tools/src/resident_runner.dart:518:33)
<asynchronous suspension>
#5      ColdRunner.run (package:flutter_tools/src/run_cold.dart:57:28)
<asynchronous suspension>
#6      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:715:27)
<asynchronous suspension>
#7      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1257:27)
<asynchronous suspension>
#8      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#9      CommandRunner.runCommand (package:args/command_runner.dart:209:13)
<asynchronous suspension>
#10     FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:283:9)      
<asynchronous suspension>
#11     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#12     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)
<asynchronous suspension>
#13     run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:64:9)
<asynchronous suspension>
#14     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#15     main (package:flutter_tools/executable.dart:91:3)
<asynchronous suspension>

To Reproduce Below I list the steps used to build the custom engine and download the custom flutter framework (I used the "flutter-smooth" branch in both of them, as mentioned here):

1) git clone --branch flutter-smooth https://github.com/fzyzcjy/engine.git smooth_engine

2) cd smooth_engine

3) create ".gclient" file & set its contents to "solutions = [ { "managed": False, "name": "src/flutter", "url": "https://github.com/fzyzcjy/engine.git@465ccd29740625d20ab0cdf2529a9dda19824e99", "custom_deps": {}, "deps_file": "DEPS", "safesync_url": "", }, ]"

4) set DEPOT_TOOLS_WIN_TOOLCHAIN=0

5) gcloud auth login

6) gcloud auth application-default login

7) gclient sync

8) cd src

9) set GYP_MSVS_VERSION=2017

10) set GYP_MSVS_OVERRIDE_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community

11) .\flutter\tools\gn --unoptimized --> WITHOUT "--no-goma --no-prebuilt-dart-sdk"

12) ninja -C out/host_debug_unopt

13) cd ../../

14) git clone --branch flutter-smooth https://github.com/fzyzcjy/flutter.git smooth_flutter

15) git clone https://github.com/fzyzcjy/flutter_smooth.git flutter_smooth

Expected behavior The app compiling without errors.

Desktop (please complete the following information):

Smartphone (please complete the following information):

Thank you so much for your work and time :).

welcome[bot] commented 1 year ago

Hi! Thanks for opening your first issue here! :smile:

fzyzcjy commented 1 year ago

Hi, have you checkout the custom flutter framework and flutter engine? That error looks like some version (custom hack) does not match

jmquilez commented 1 year ago

I apologize for not being able to answer these previous days. Would it be possible to continue the discussion in #182? (just posted a comment there) as I believe both issues are almost the same. Thank you for your help and attention

fzyzcjy commented 1 year ago

Yes, sure!