GPU error when loading pictures

Steps to reproduce
On a rockchip device, when I load a local image, the app crashes. Looking at the logs, there are only errors in the gpu code.The GPU model used is Mali-G610.
http://<IP_ADDRESS>:9101?uri=http://<IP_ADDRESS>:40527/MIA7AuF-ft8=/
[ +161 ms] t5x: ../src/gallium/drivers/panfrost/pan_context.c:902:
panfrost_fence_server_sync: Assertion `!ret' failed.

Expected results
Normal display of pictures
Actual results
The app crashes.
Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        // This is the theme of your application.
        //
        // TRY THIS: Try running your application with "flutter run". You'll see
        // the application has a purple toolbar. Then, without quitting the app,
        // try changing the seedColor in the colorScheme below to Colors.green
        // and then invoke "hot reload" (save your changes or press the "hot
        // reload" button in a Flutter-supported IDE, or press "r" if you used
        // the command line to start the app).
        //
        // Notice that the counter didn't reset back to zero; the application
        // state is not lost during the reload. To reset the state, use hot
        // restart instead.
        //
        // This works for code too, not just values: Most code changes can be
        // tested with just a hot reload.
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  // This widget is the home page of your application. It is stateful, meaning
  // that it has a State object (defined below) that contains fields that affect
  // how it looks.

  // This class is the configuration for the state. It holds the values (in this
  // case the title) provided by the parent (in this case the App widget) and
  // used by the build method of the State. Fields in a Widget subclass are
  // always marked "final".

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;

  void _incrementCounter() {
    setState(() {
      // This call to setState tells the Flutter framework that something has
      // changed in this State, which causes it to rerun the build method below
      // so that the display can reflect the updated values. If we changed
      // _counter without calling setState(), then the build method would not be
      // called again, and so nothing would appear to happen.
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    // This method is rerun every time setState is called, for instance as done
    // by the _incrementCounter method above.
    //
    // The Flutter framework has been optimized to make rerunning build methods
    // fast, so that you can just rebuild anything that needs updating rather
    // than having to individually change instances of widgets.
    return Scaffold(
      appBar: AppBar(
        // TRY THIS: Try changing the color here to a specific color (to
        // Colors.amber, perhaps?) and trigger a hot reload to see the AppBar
        // change color while the other colors stay the same.
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        // Here we take the value from the MyHomePage object that was created by
        // the App.build method, and use it to set our appbar title.
        title: Text(widget.title),
      ),
      body: Center(
        // Center is a layout widget. It takes a single child and positions it
        // in the middle of the parent.
        child: Column(
          // Column is also a layout widget. It takes a list of children and
          // arranges them vertically. By default, it sizes itself to fit its
          // children horizontally, and tries to be as tall as its parent.
          //
          // Column has various properties to control how it sizes itself and
          // how it positions its children. Here we use mainAxisAlignment to
          // center the children vertically; the main axis here is the vertical
          // axis because Columns are vertical (the cross axis would be
          // horizontal).
          //
          // TRY THIS: Invoke "debug painting" (choose the "Toggle Debug Paint"
          // action in the IDE, or press "p" in the console), to see the
          // wireframe for each widget.
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            const Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.headlineMedium,
            ),
            Image.network(
                'https://imgs.699pic.com/images/500/628/783.jpg!list1x.v2')
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: const Icon(Icons.add),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
yfit@visfit:~/project/flutter_application$ flutter run -v
[  +75 ms] executing: uname -m
[  +11 ms] Exit code 0 from: uname -m
[   +1 ms] aarch64
[  +70 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required,
skipping update.
[   +3 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping
update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping
update.
[        ] Artifact Instance of 'LegacyCanvasKitRemover' is not required,
skipping update.
[   +3 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping
update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping
update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required,
skipping update.
[   +3 ms] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required,
skipping update.
[   +5 ms] Flutter assets will be downloaded from https://storage.flutter-io.cn.
Make sure
           you trust this source!
[  +70 ms] executing: /usr/lib/android-sdk/platform-tools/adb devices -l
[  +55 ms] List of devices attached
[   +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required,
skipping update.
[   +2 ms] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping
update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping
update.
[        ] Artifact Instance of 'LegacyCanvasKitRemover' is not required,
skipping update.
[   +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping
update.
[   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required,
skipping update.
[ +137 ms] Skipping pub get: version match.
[ +398 ms] Generating
/home/visbodyfit/project/flutter_application/android/app/src/main/java/io/flutte
r/plugins/GeneratedPluginRegistrant.java
[ +278 ms] No packages with native assets. Skipping native assets compilation.
[  +14 ms] Initializing file store
[  +37 ms] Skipping target: gen_localizations
[   +8 ms] gen_dart_plugin_registrant: Starting due to
{InvalidatedReasonKind.inputChanged: The following inputs have updated contents:
/home/visbodyfit/project/flutter_application/.dart_tool/package_config_subset}
[ +144 ms] gen_dart_plugin_registrant: Complete
[   +4 ms] Skipping target: _composite
[   +8 ms] complete
[  +28 ms] Launching lib/main.dart on Linux in debug mode...
[  +14 ms]
/home/visbodyfit/development/flutter/bin/cache/dart-sdk/bin/dartaotruntime
--disable-dart-dev
/home/visbodyfit/development/flutter/bin/cache/dart-sdk/bin/snapshots/frontend_s
erver_aot.dart.snapshot --sdk-root
/home/visbodyfit/development/flutter/bin/cache/artifacts/engine/common/flutter_p
atched_sdk/ --incremental --target=flutter --experimental-emit-debug-metadata
--output-dill /tmp/flutter_tools.NQCWGT/flutter_tool.RCHBSC/app.dill --packages
/home/visbodyfit/project/flutter_application/.dart_tool/package_config.json
-Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts
--track-widget-creation --filesystem-scheme org-dartlang-root
--initialize-from-dill build/cache.dill.track.dill --verbosity=error
--enable-experiment=alternative-invalidation-strategy
[  +44 ms] Building Linux application...
[  +22 ms] <- compile package:flutter_application/main.dart
[   +7 ms] executing: [build/linux/arm64/debug/] cmake -G Ninja
-DCMAKE_BUILD_TYPE=Debug -DFLUTTER_TARGET_PLATFORM=linux-arm64
/home/visbodyfit/project/flutter_application/linux
[  +92 ms] -- Configuring done
[   +7 ms] -- Generating done
[  +27 ms] -- Build files have been written to:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug
[  +10 ms] executing: ninja -C build/linux/arm64/debug install
[  +16 ms] ninja: Entering directory `build/linux/arm64/debug'
[+7337 ms] [1/5] Generating
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/libflutter_
linux_gtk.so,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_basic_message_channel.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_binary_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_binary_messenger.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_dart_project.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_engine.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_json_message_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_json_method_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_message_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_method_call.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_method_channel.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_method_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_method_response.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_plugin_registrar.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_plugin_registry.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_standard_message_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_standard_method_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_string_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_value.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_view.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/flutter_linux.h, _phony_
[   +3 ms] [  +57 ms] executing: uname -m
[        ] [  +11 ms] Exit code 0 from: uname -m
[        ] [        ] aarch64
[        ] [  +35 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is
not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'LegacyCanvasKitRemover' is not
required, skipping update.
[        ] [   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not
required, skipping update.
[        ] [   +4 ms] Flutter assets will be downloaded from
https://storage.flutter-io.cn. Make sure you trust this source!
[        ] [ +145 ms] Artifact Instance of 'MaterialFonts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'GradleWrapper' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is
not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'LegacyCanvasKitRemover' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterSdk' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'WindowsEngineArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not
required, skipping update.
[   +2 ms] [   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not
required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not
required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not
required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'FontSubsetArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'PubDependencies' is not required,
skipping update.
[        ] [  +27 ms] Initializing file store
[        ] [  +22 ms] Done initializing file store
[        ] [  +55 ms] Skipping target: gen_localizations
[        ] [  +13 ms] Skipping target: gen_dart_plugin_registrant
[        ] [ +761 ms] Skipping target: unpack_linux
[        ] [ +544 ms] kernel_snapshot_program: Starting due to
{InvalidatedReasonKind.inputChanged: The following inputs have updated contents:
/home/visbodyfit/project/flutter_application/lib/main.dart,/home/visbodyfit/proj
ect/flutter_application/.dart_tool/flutter_build/b397c571e087e1a5294f9675d09a5a7
8/program.dill}
[   +3 ms] [  +17 ms]
/home/visbodyfit/development/flutter/bin/cache/dart-sdk/bin/dartaotruntime
--disable-dart-dev
/home/visbodyfit/development/flutter/bin/cache/dart-sdk/bin/snapshots/frontend_s
erver_aot.dart.snapshot --sdk-root
/home/visbodyfit/development/flutter/bin/cache/artifacts/engine/common/flutter_p
atched_sdk/ --target=flutter --no-print-incremental-dependencies
-Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts
--track-widget-creation --no-link-platform --packages
/home/visbodyfit/project/flutter_application/.dart_tool/package_config.json
--output-dill
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/program.dill --depfile
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/kernel_snapshot_program.d --incremental
--initialize-from-dill
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/program.dill --verbosity=error
package:flutter_application/main.dart
[   +1 ms] [+1531 ms] kernel_snapshot_program: Complete
[        ] [ +670 ms] Skipping target: native_assets
[        ] [   +1 ms] Skipping target: kernel_snapshot_native_assets
[        ] [   +1 ms] kernel_snapshot: Starting due to
{InvalidatedReasonKind.inputChanged: The following inputs have updated contents:
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/program.dill}
[        ] [ +123 ms] kernel_snapshot: Complete
[        ] [ +697 ms] debug_bundle_linux-arm64_assets: Starting due to
{InvalidatedReasonKind.inputChanged: The following inputs have updated contents:
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/app.dill,/home/visbodyfit/project/flutter_application/bui
ld/flutter_assets/kernel_blob.bin}
[   +1 ms] [ +270 ms] shaderc command:
[/home/visbodyfit/development/flutter/bin/cache/artifacts/engine/linux-arm64/imp
ellerc, --sksl, --runtime-stage-gles, --runtime-stage-vulkan, --iplr,
--sl=/home/visbodyfit/project/flutter_application/build/flutter_assets/shaders/i
nk_sparkle.frag,
--spirv=/home/visbodyfit/project/flutter_application/build/flutter_assets/shader
s/ink_sparkle.frag.spirv,
--input=/home/visbodyfit/development/flutter/packages/flutter/lib/src/material/s
haders/ink_sparkle.frag, --input-type=frag,
--include=/home/visbodyfit/development/flutter/packages/flutter/lib/src/material
/shaders,
--include=/home/visbodyfit/development/flutter/bin/cache/artifacts/engine/linux-
arm64/shader_lib]
[   +1 ms] [+1019 ms] debug_bundle_linux-arm64_assets: Complete
[        ] [ +356 ms] Persisting file store
[        ] [  +11 ms] Done persisting file store
[        ] [  +10 ms] build succeeded.
[        ] [  +16 ms] "flutter assemble" took 6,310ms.
[        ] [   +7 ms] ensureAnalyticsSent: 0ms
[        ] [        ] Running 1 shutdown hook
[        ] [        ] Shutdown hooks complete
[        ] [        ] exiting with code 0
[ +866 ms] [2/5] Building CXX object
CMakeFiles/flutter_application.dir/flutter/generated_plugin_registrant.cc.o
[  +87 ms] [3/5] Building CXX object
CMakeFiles/flutter_application.dir/my_application.cc.o
[ +290 ms] [4/5] Linking CXX executable
intermediates_do_not_run/flutter_application
[        ] [4/5] Install the project...
[  +22 ms] -- Install configuration: "Debug"
[  +31 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/flut
ter_application
[        ] -- Set runtime path of
"/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/flu
tter_application" to "$ORIGIN/lib"
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/icudtl.dat
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/lib/
libflutter_linux_gtk.so
[  +80 ms] -- Up-to-date:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/lib
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/shaders
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/shaders/ink_sparkle.frag
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/FontManifest.json
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/fonts
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/fonts/MaterialIcons-Regular.otf
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/AssetManifest.json
[   +3 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/version.json
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/kernel_blob.bin
[  +64 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/packages
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/packages/cupertino_icons
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/packages/cupertino_icons/assets
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/packages/cupertino_icons/assets/CupertinoIcons.ttf
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/NOTICES.Z
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/AssetManifest.bin
[  +42 ms] Building Linux application... (completed in 9.0s)
[   +9 ms] \u2713 Built build/linux/arm64/debug/bundle/flutter_application
[ +669 ms] VM Service URL on device: http://<IP_ADDRESS>:33033/axXCjTOBxXU=/
[   +6 ms] Caching compiled dill
[  +62 ms] Connecting to service protocol: http://<IP_ADDRESS>:33033/axXCjTOBxXU=/
[ +223 ms] Launching a Dart Developer Service (DDS) instance at
http://<IP_ADDRESS>:0, connecting to VM service at
http://<IP_ADDRESS>:33033/axXCjTOBxXU=/.
[ +138 ms] DDS is listening at http://<IP_ADDRESS>:46155/lOZZ9q6RJpk=/.
[ +120 ms] Successfully connected to service protocol:
http://<IP_ADDRESS>:33033/axXCjTOBxXU=/
[  +52 ms] DevFS: Creating new filesystem on the device (null)
[  +47 ms] DevFS: Created new filesystem on the device
(file:///tmp/flutter_applicationPRAJVV/flutter_application/)
[   +3 ms] Updating assets
[ +158 ms] Syncing files to device Linux...
[   +4 ms] Compiling dart to kernel with 0 updated files
[        ] Processing bundle.
[   +2 ms] <- recompile package:flutter_application/main.dart
a72223bb-65fd-48e5-b8c4-35bfc7621075
[        ] <- a72223bb-65fd-48e5-b8c4-35bfc7621075
[   +2 ms] Bundle processing done.
[ +105 ms] Updating files.
[        ] Pending asset builds completed. Writing dirty entries.
[        ] DevFS: Sync finished
[   +1 ms] Syncing files to device Linux... (completed in 116ms)
[        ] Synced 0.0MB.
[   +1 ms] <- accept
[   +3 ms] Connected to _flutterView/0x55956b5370.
[   +2 ms] Flutter run key commands.
[   +1 ms] r Hot reload. \U0001f525\U0001f525\U0001f525
[        ] R Hot restart.
[        ] h List all available interactive commands.
[        ] d Detach (terminate "flutter run" but leave application running).
[        ] c Clear the screen
[        ] q Quit (terminate the application on the device).
[        ] A Dart VM Service on Linux is available at:
http://<IP_ADDRESS>:46155/lOZZ9q6RJpk=/
[ +485 ms] The Flutter DevTools debugger and profiler on Linux is available at:

http://<IP_ADDRESS>:9101?uri=http://<IP_ADDRESS>:46155/lOZZ9q6RJpk=/
[ +312 ms] flutter_application:
../src/gallium/drivers/panfrost/pan_context.c:902: panfrost_fence_server_sync:
Assertion `!ret' failed.
[ +108 ms] Service protocol connection closed.
[        ] Lost connection to device.
[        ] DevFS: Deleting filesystem on the device
(file:///tmp/flutter_applicationPRAJVV/flutter_application/)
[   +1 ms] DevFS: Deleted filesystem on the device
(file:///tmp/flutter_applicationPRAJVV/flutter_application/)
[   +3 ms] "flutter run" took 12,916ms.
[   +2 ms] ensureAnalyticsSent: 0ms
[        ] Running 2 shutdown hooks
[  +15 ms] Shutdown hooks complete
[   +2 ms] exiting with code 0

Flutter Doctor output
Doctor output
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
[!] Flutter (Channel [user-branch], 3.24.3, on Ubuntu 22.04.5 LTS 5.10.160, locale en_US.UTF-8)
    ! Flutter version 3.24.3 on channel [user-branch] at /home/visbodyfit/development/flutter
      Currently on an unknown channel. Run `flutter channel` to switch to an official channel.
      If that doesn't fix the issue, reinstall Flutter by following instructions at https://flutter.dev/setup.
    ! Upstream repository unknown source is not a standard remote.
      Set environment variable "FLUTTER_GIT_URL" to unknown source to dismiss this error.
    • Framework revision 2663184aa7 (4 months ago), 2024-09-11 16:27:48 -0500
    • Engine revision 36335019a8
    • Dart version 3.5.3
    • DevTools version 2.37.3
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to
      perform update checks and upgrades.

[✗] Android toolchain - develop for Android devices
    • Android SDK at /usr/lib/android-sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.

[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Linux toolchain - develop for Linux desktop
    • Ubuntu clang version 14.0.0-1ubuntu1.1
    • cmake version 3.22.1
    • ninja version 1.10.1
    • pkg-config version 0.29.2

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/to/linux-android-setup for detailed instructions).

[✓] Connected device (1 available)
    • Linux (desktop) • linux • linux-arm64 • Ubuntu 22.04.5 LTS 5.10.160

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 4 categories.

So, lets breakdown your error
First of all the code is perfectly working i will attach the screenshot here .
As your error tells you need to proper install the flutter
This are the important component
[✗] Android toolchain - develop for Android devices
• Android SDK at /usr/lib/android-sdk
✗ cmdline-tools component is missing
Run path/to/sdkmanager --install "cmdline-tools;latest"
See https://developer.android.com/studio/command-line for more details.
[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
just install that and the error will be gone
You can refer this documentation : https://docs.flutter.dev/get-started/install/windows/mobile

Sorry, maybe there is something wrong with my description. I am developing on the Linux side, so I have not installed the Android SDK and Chrome. When I use the Image widget on the Linux side, the following error occurs.I know this is the code in the gpu driver, but I don't know under what circumstances this issue will occur and how to solve it.
http://<IP_ADDRESS>:9101?uri=http://<IP_ADDRESS>:46155/lOZZ9q6RJpk=/
[ +312 ms] flutter_application:
../src/gallium/drivers/panfrost/pan_context.c:902: panfrost_fence_server_sync:
Assertion `!ret' failed.
[ +108 ms] Service protocol connection closed.
[        ] Lost connection to device.
[        ] DevFS: Deleting filesystem on the device
(file:///tmp/flutter_applicationPRAJVV/flutter_application/)
[   +1 ms] DevFS: Deleted filesystem on the device

那么，让我们分解一下你的错误 首先代码完美运行我会在这里附上截图。 正如你的错误告诉你需要正确安装flutter 这是重要的组件 [✗] Android 工具链 - 为 Android 设备开发 • Android SDK 位于 /usr/lib/android-sdk ✗ cmdline-tools 组件缺少 运行有关更多详细信息，path/to/sdkmanager --install "cmdline-tools;latest" 请参阅https://developer.android.com/studio/command-line 。
[✗] Chrome - 为网络开发 (无法在 google-chrome 上找到 Chrome 可执行文件) ！无法找到 Chrome。尝试将 CHROME_EXECUTABLE 设置为 Chrome 可执行文件。
只需安装它，错误就会消失 您可以参考此文档：https：//docs.flutter.dev/get-started/install/windows/mobile

Sorry, maybe there is something wrong with my description. I am developing on the Linux side, so I have not installed the Android SDK and Chrome. When I use the Image widget on the Linux side, the following error occurs.I know this is the code in the gpu driver, but I don't know under what circumstances this issue will occur and how to solve it.
http://<IP_ADDRESS>:9101?uri=http://<IP_ADDRESS>:46155/lOZZ9q6RJpk=/
[ +312 ms] flutter_application:
../src/gallium/drivers/panfrost/pan_context.c:902: panfrost_fence_server_sync:
Assertion `!ret' failed.
[ +108 ms] Service protocol connection closed.
[        ] Lost connection to device.
[        ] DevFS: Deleting filesystem on the device
(file:///tmp/flutter_applicationPRAJVV/flutter_application/)
[   +1 ms] DevFS: Deleted filesystem on the device

Steps to reproduce
On a rockchip device, when I load a local image, the app crashes. Looking at the logs, there are only errors in the gpu code.The GPU model used is Mali-G610.
http://<IP_ADDRESS>:9101?uri=http://<IP_ADDRESS>:40527/MIA7AuF-ft8=/
[ +161 ms] t5x: ../src/gallium/drivers/panfrost/pan_context.c:902:
panfrost_fence_server_sync: Assertion `!ret' failed.

Expected results
Normal display of pictures
Actual results
The app crashes.
Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        // This is the theme of your application.
        //
        // TRY THIS: Try running your application with "flutter run". You'll see
        // the application has a purple toolbar. Then, without quitting the app,
        // try changing the seedColor in the colorScheme below to Colors.green
        // and then invoke "hot reload" (save your changes or press the "hot
        // reload" button in a Flutter-supported IDE, or press "r" if you used
        // the command line to start the app).
        //
        // Notice that the counter didn't reset back to zero; the application
        // state is not lost during the reload. To reset the state, use hot
        // restart instead.
        //
        // This works for code too, not just values: Most code changes can be
        // tested with just a hot reload.
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  // This widget is the home page of your application. It is stateful, meaning
  // that it has a State object (defined below) that contains fields that affect
  // how it looks.

  // This class is the configuration for the state. It holds the values (in this
  // case the title) provided by the parent (in this case the App widget) and
  // used by the build method of the State. Fields in a Widget subclass are
  // always marked "final".

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;

  void _incrementCounter() {
    setState(() {
      // This call to setState tells the Flutter framework that something has
      // changed in this State, which causes it to rerun the build method below
      // so that the display can reflect the updated values. If we changed
      // _counter without calling setState(), then the build method would not be
      // called again, and so nothing would appear to happen.
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    // This method is rerun every time setState is called, for instance as done
    // by the _incrementCounter method above.
    //
    // The Flutter framework has been optimized to make rerunning build methods
    // fast, so that you can just rebuild anything that needs updating rather
    // than having to individually change instances of widgets.
    return Scaffold(
      appBar: AppBar(
        // TRY THIS: Try changing the color here to a specific color (to
        // Colors.amber, perhaps?) and trigger a hot reload to see the AppBar
        // change color while the other colors stay the same.
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        // Here we take the value from the MyHomePage object that was created by
        // the App.build method, and use it to set our appbar title.
        title: Text(widget.title),
      ),
      body: Center(
        // Center is a layout widget. It takes a single child and positions it
        // in the middle of the parent.
        child: Column(
          // Column is also a layout widget. It takes a list of children and
          // arranges them vertically. By default, it sizes itself to fit its
          // children horizontally, and tries to be as tall as its parent.
          //
          // Column has various properties to control how it sizes itself and
          // how it positions its children. Here we use mainAxisAlignment to
          // center the children vertically; the main axis here is the vertical
          // axis because Columns are vertical (the cross axis would be
          // horizontal).
          //
          // TRY THIS: Invoke "debug painting" (choose the "Toggle Debug Paint"
          // action in the IDE, or press "p" in the console), to see the
          // wireframe for each widget.
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            const Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.headlineMedium,
            ),
            Image.network(
                'https://imgs.699pic.com/images/500/628/783.jpg!list1x.v2')
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: const Icon(Icons.add),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }
}

Screenshots or Video
Screenshots / Video demonstration
[Upload media here]
Logs
Logs
yfit@visfit:~/project/flutter_application$ flutter run -v
[  +75 ms] executing: uname -m
[  +11 ms] Exit code 0 from: uname -m
[   +1 ms] aarch64
[  +70 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required,
skipping update.
[   +3 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping
update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping
update.
[        ] Artifact Instance of 'LegacyCanvasKitRemover' is not required,
skipping update.
[   +3 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping
update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping
update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required,
skipping update.
[   +3 ms] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required,
skipping update.
[   +5 ms] Flutter assets will be downloaded from https://storage.flutter-io.cn.
Make sure
           you trust this source!
[  +70 ms] executing: /usr/lib/android-sdk/platform-tools/adb devices -l
[  +55 ms] List of devices attached
[   +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required,
skipping update.
[   +2 ms] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping
update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping
update.
[        ] Artifact Instance of 'LegacyCanvasKitRemover' is not required,
skipping update.
[   +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping
update.
[   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required,
skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required,
skipping update.
[ +137 ms] Skipping pub get: version match.
[ +398 ms] Generating
/home/visbodyfit/project/flutter_application/android/app/src/main/java/io/flutte
r/plugins/GeneratedPluginRegistrant.java
[ +278 ms] No packages with native assets. Skipping native assets compilation.
[  +14 ms] Initializing file store
[  +37 ms] Skipping target: gen_localizations
[   +8 ms] gen_dart_plugin_registrant: Starting due to
{InvalidatedReasonKind.inputChanged: The following inputs have updated contents:
/home/visbodyfit/project/flutter_application/.dart_tool/package_config_subset}
[ +144 ms] gen_dart_plugin_registrant: Complete
[   +4 ms] Skipping target: _composite
[   +8 ms] complete
[  +28 ms] Launching lib/main.dart on Linux in debug mode...
[  +14 ms]
/home/visbodyfit/development/flutter/bin/cache/dart-sdk/bin/dartaotruntime
--disable-dart-dev
/home/visbodyfit/development/flutter/bin/cache/dart-sdk/bin/snapshots/frontend_s
erver_aot.dart.snapshot --sdk-root
/home/visbodyfit/development/flutter/bin/cache/artifacts/engine/common/flutter_p
atched_sdk/ --incremental --target=flutter --experimental-emit-debug-metadata
--output-dill /tmp/flutter_tools.NQCWGT/flutter_tool.RCHBSC/app.dill --packages
/home/visbodyfit/project/flutter_application/.dart_tool/package_config.json
-Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts
--track-widget-creation --filesystem-scheme org-dartlang-root
--initialize-from-dill build/cache.dill.track.dill --verbosity=error
--enable-experiment=alternative-invalidation-strategy
[  +44 ms] Building Linux application...
[  +22 ms] <- compile package:flutter_application/main.dart
[   +7 ms] executing: [build/linux/arm64/debug/] cmake -G Ninja
-DCMAKE_BUILD_TYPE=Debug -DFLUTTER_TARGET_PLATFORM=linux-arm64
/home/visbodyfit/project/flutter_application/linux
[  +92 ms] -- Configuring done
[   +7 ms] -- Generating done
[  +27 ms] -- Build files have been written to:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug
[  +10 ms] executing: ninja -C build/linux/arm64/debug install
[  +16 ms] ninja: Entering directory `build/linux/arm64/debug'
[+7337 ms] [1/5] Generating
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/libflutter_
linux_gtk.so,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_basic_message_channel.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_binary_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_binary_messenger.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_dart_project.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_engine.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_json_message_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_json_method_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_message_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_method_call.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_method_channel.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_method_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_method_response.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_plugin_registrar.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_plugin_registry.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_standard_message_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_standard_method_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_string_codec.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_value.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/fl_view.h,
/home/visbodyfit/project/flutter_application/linux/flutter/ephemeral/flutter_lin
ux/flutter_linux.h, _phony_
[   +3 ms] [  +57 ms] executing: uname -m
[        ] [  +11 ms] Exit code 0 from: uname -m
[        ] [        ] aarch64
[        ] [  +35 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is
not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'LegacyCanvasKitRemover' is not
required, skipping update.
[        ] [   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not
required, skipping update.
[        ] [   +4 ms] Flutter assets will be downloaded from
https://storage.flutter-io.cn. Make sure you trust this source!
[        ] [ +145 ms] Artifact Instance of 'MaterialFonts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'GradleWrapper' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is
not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'LegacyCanvasKitRemover' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterSdk' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'WindowsEngineArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not
required, skipping update.
[   +2 ms] [   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not
required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not
required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not
required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required,
skipping update.
[        ] [        ] Artifact Instance of 'FontSubsetArtifacts' is not
required, skipping update.
[        ] [        ] Artifact Instance of 'PubDependencies' is not required,
skipping update.
[        ] [  +27 ms] Initializing file store
[        ] [  +22 ms] Done initializing file store
[        ] [  +55 ms] Skipping target: gen_localizations
[        ] [  +13 ms] Skipping target: gen_dart_plugin_registrant
[        ] [ +761 ms] Skipping target: unpack_linux
[        ] [ +544 ms] kernel_snapshot_program: Starting due to
{InvalidatedReasonKind.inputChanged: The following inputs have updated contents:
/home/visbodyfit/project/flutter_application/lib/main.dart,/home/visbodyfit/proj
ect/flutter_application/.dart_tool/flutter_build/b397c571e087e1a5294f9675d09a5a7
8/program.dill}
[   +3 ms] [  +17 ms]
/home/visbodyfit/development/flutter/bin/cache/dart-sdk/bin/dartaotruntime
--disable-dart-dev
/home/visbodyfit/development/flutter/bin/cache/dart-sdk/bin/snapshots/frontend_s
erver_aot.dart.snapshot --sdk-root
/home/visbodyfit/development/flutter/bin/cache/artifacts/engine/common/flutter_p
atched_sdk/ --target=flutter --no-print-incremental-dependencies
-Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts
--track-widget-creation --no-link-platform --packages
/home/visbodyfit/project/flutter_application/.dart_tool/package_config.json
--output-dill
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/program.dill --depfile
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/kernel_snapshot_program.d --incremental
--initialize-from-dill
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/program.dill --verbosity=error
package:flutter_application/main.dart
[   +1 ms] [+1531 ms] kernel_snapshot_program: Complete
[        ] [ +670 ms] Skipping target: native_assets
[        ] [   +1 ms] Skipping target: kernel_snapshot_native_assets
[        ] [   +1 ms] kernel_snapshot: Starting due to
{InvalidatedReasonKind.inputChanged: The following inputs have updated contents:
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/program.dill}
[        ] [ +123 ms] kernel_snapshot: Complete
[        ] [ +697 ms] debug_bundle_linux-arm64_assets: Starting due to
{InvalidatedReasonKind.inputChanged: The following inputs have updated contents:
/home/visbodyfit/project/flutter_application/.dart_tool/flutter_build/b397c571e0
87e1a5294f9675d09a5a78/app.dill,/home/visbodyfit/project/flutter_application/bui
ld/flutter_assets/kernel_blob.bin}
[   +1 ms] [ +270 ms] shaderc command:
[/home/visbodyfit/development/flutter/bin/cache/artifacts/engine/linux-arm64/imp
ellerc, --sksl, --runtime-stage-gles, --runtime-stage-vulkan, --iplr,
--sl=/home/visbodyfit/project/flutter_application/build/flutter_assets/shaders/i
nk_sparkle.frag,
--spirv=/home/visbodyfit/project/flutter_application/build/flutter_assets/shader
s/ink_sparkle.frag.spirv,
--input=/home/visbodyfit/development/flutter/packages/flutter/lib/src/material/s
haders/ink_sparkle.frag, --input-type=frag,
--include=/home/visbodyfit/development/flutter/packages/flutter/lib/src/material
/shaders,
--include=/home/visbodyfit/development/flutter/bin/cache/artifacts/engine/linux-
arm64/shader_lib]
[   +1 ms] [+1019 ms] debug_bundle_linux-arm64_assets: Complete
[        ] [ +356 ms] Persisting file store
[        ] [  +11 ms] Done persisting file store
[        ] [  +10 ms] build succeeded.
[        ] [  +16 ms] "flutter assemble" took 6,310ms.
[        ] [   +7 ms] ensureAnalyticsSent: 0ms
[        ] [        ] Running 1 shutdown hook
[        ] [        ] Shutdown hooks complete
[        ] [        ] exiting with code 0
[ +866 ms] [2/5] Building CXX object
CMakeFiles/flutter_application.dir/flutter/generated_plugin_registrant.cc.o
[  +87 ms] [3/5] Building CXX object
CMakeFiles/flutter_application.dir/my_application.cc.o
[ +290 ms] [4/5] Linking CXX executable
intermediates_do_not_run/flutter_application
[        ] [4/5] Install the project...
[  +22 ms] -- Install configuration: "Debug"
[  +31 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/flut
ter_application
[        ] -- Set runtime path of
"/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/flu
tter_application" to "$ORIGIN/lib"
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/icudtl.dat
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/lib/
libflutter_linux_gtk.so
[  +80 ms] -- Up-to-date:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/lib
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/shaders
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/shaders/ink_sparkle.frag
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/FontManifest.json
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/fonts
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/fonts/MaterialIcons-Regular.otf
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/AssetManifest.json
[   +3 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/version.json
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/kernel_blob.bin
[  +64 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/packages
[   +1 ms] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/packages/cupertino_icons
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/packages/cupertino_icons/assets
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/packages/cupertino_icons/assets/CupertinoIcons.ttf
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/NOTICES.Z
[        ] -- Installing:
/home/visbodyfit/project/flutter_application/build/linux/arm64/debug/bundle/data
/flutter_assets/AssetManifest.bin
[  +42 ms] Building Linux application... (completed in 9.0s)
[   +9 ms] \u2713 Built build/linux/arm64/debug/bundle/flutter_application
[ +669 ms] VM Service URL on device: http://<IP_ADDRESS>:33033/axXCjTOBxXU=/
[   +6 ms] Caching compiled dill
[  +62 ms] Connecting to service protocol: http://<IP_ADDRESS>:33033/axXCjTOBxXU=/
[ +223 ms] Launching a Dart Developer Service (DDS) instance at
http://<IP_ADDRESS>:0, connecting to VM service at
http://<IP_ADDRESS>:33033/axXCjTOBxXU=/.
[ +138 ms] DDS is listening at http://<IP_ADDRESS>:46155/lOZZ9q6RJpk=/.
[ +120 ms] Successfully connected to service protocol:
http://<IP_ADDRESS>:33033/axXCjTOBxXU=/
[  +52 ms] DevFS: Creating new filesystem on the device (null)
[  +47 ms] DevFS: Created new filesystem on the device
(file:///tmp/flutter_applicationPRAJVV/flutter_application/)
[   +3 ms] Updating assets
[ +158 ms] Syncing files to device Linux...
[   +4 ms] Compiling dart to kernel with 0 updated files
[        ] Processing bundle.
[   +2 ms] <- recompile package:flutter_application/main.dart
a72223bb-65fd-48e5-b8c4-35bfc7621075
[        ] <- a72223bb-65fd-48e5-b8c4-35bfc7621075
[   +2 ms] Bundle processing done.
[ +105 ms] Updating files.
[        ] Pending asset builds completed. Writing dirty entries.
[        ] DevFS: Sync finished
[   +1 ms] Syncing files to device Linux... (completed in 116ms)
[        ] Synced 0.0MB.
[   +1 ms] <- accept
[   +3 ms] Connected to _flutterView/0x55956b5370.
[   +2 ms] Flutter run key commands.
[   +1 ms] r Hot reload. \U0001f525\U0001f525\U0001f525
[        ] R Hot restart.
[        ] h List all available interactive commands.
[        ] d Detach (terminate "flutter run" but leave application running).
[        ] c Clear the screen
[        ] q Quit (terminate the application on the device).
[        ] A Dart VM Service on Linux is available at:
http://<IP_ADDRESS>:46155/lOZZ9q6RJpk=/
[ +485 ms] The Flutter DevTools debugger and profiler on Linux is available at:

http://<IP_ADDRESS>:9101?uri=http://<IP_ADDRESS>:46155/lOZZ9q6RJpk=/
[ +312 ms] flutter_application:
../src/gallium/drivers/panfrost/pan_context.c:902: panfrost_fence_server_sync:
Assertion `!ret' failed.
[ +108 ms] Service protocol connection closed.
[        ] Lost connection to device.
[        ] DevFS: Deleting filesystem on the device
(file:///tmp/flutter_applicationPRAJVV/flutter_application/)
[   +1 ms] DevFS: Deleted filesystem on the device
(file:///tmp/flutter_applicationPRAJVV/flutter_application/)
[   +3 ms] "flutter run" took 12,916ms.
[   +2 ms] ensureAnalyticsSent: 0ms
[        ] Running 2 shutdown hooks
[  +15 ms] Shutdown hooks complete
[   +2 ms] exiting with code 0

Flutter Doctor output
Doctor output
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
[!] Flutter (Channel [user-branch], 3.24.3, on Ubuntu 22.04.5 LTS 5.10.160, locale en_US.UTF-8)
    ! Flutter version 3.24.3 on channel [user-branch] at /home/visbodyfit/development/flutter
      Currently on an unknown channel. Run `flutter channel` to switch to an official channel.
      If that doesn't fix the issue, reinstall Flutter by following instructions at https://flutter.dev/setup.
    ! Upstream repository unknown source is not a standard remote.
      Set environment variable "FLUTTER_GIT_URL" to unknown source to dismiss this error.
    • Framework revision 2663184aa7 (4 months ago), 2024-09-11 16:27:48 -0500
    • Engine revision 36335019a8
    • Dart version 3.5.3
    • DevTools version 2.37.3
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to
      perform update checks and upgrades.

[✗] Android toolchain - develop for Android devices
    • Android SDK at /usr/lib/android-sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.

[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Linux toolchain - develop for Linux desktop
    • Ubuntu clang version 14.0.0-1ubuntu1.1
    • cmake version 3.22.1
    • ninja version 1.10.1
    • pkg-config version 0.29.2

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/to/linux-android-setup for detailed instructions).

[✓] Connected device (1 available)
    • Linux (desktop) • linux • linux-arm64 • Ubuntu 22.04.5 LTS 5.10.160

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 4 categories.

The device used is the rockchip series. rk3588

Hi @WWQ819781590, can you upgrade to the latest version of flutter stable (3.27.1) to see if you still experience this issue? If you do, please provide the updated output of flutter doctor -v.
Thank you

你好@WWQ819781590，您可以升级到 Flutter 稳定版（3.27.1）来看看是否还会遇到此问题吗？如果仍然遇到，请提供 的更新输出flutter doctor -v。
谢谢

I guess it's because the system doesn't support opengl or vulkan. After I upgraded Ubuntu to 24, opengl was supported, and the error "No GL implementation is available" appeared instead of exiting the application directly. Of course, I can also roll back the previous system version and upgrade the flutter version for testing.


[Coverity CID: 183040] Incorrect expression in /tests/kernel/static_idt/src/static_idt.c

Static code scan issues seen in File: /tests/kernel/static_idt/src/static_idt.c
Category: Incorrect expression
Function: test_static_idt
Component: Tests
CID: 183040
Please fix or provide comments to square it off in coverity in the link: https://scan9.coverity.com/reports.htm#v32951/p12996

thanks


WIP: new script to watch for new PRs and execute sync into downstream

Fixes #9

Since #17 is based on this, I'll rebase and try to go on on with this.

We can close this in favour of #20


Add missing ini.py file

What was wrong?
The discovery plugin does not have an __init__.py file. While this does not have any effect during development, it will blow up once we cut a new release (because directories without __init__.py files won't be included in the distribution package)
How was it fixed?
Added __init__.py file.
Cute Animal Picture

This has been approved before the repo migration (See https://github.com/ethereum/py-evm/pull/1638)


release 2.4.0-rc0

The release is targeted for tomorrow (06 Sept). I currently am replacing one of our prometheus with this overnight.
It'll be an RC with no commits to master other than bugfixes until a stable release is cut. See: https://docs.google.com/document/u/2/d/1RQgGTwAgkdtZu7DelMwqlmDqmpSH1e8Y6IcL3fD2WQI/edit for some of the details.
@krasi-georgiev @sipian Would be cool if you could run the benchmarks on this.

@beorn7 let's test this.

@gouthamve we are still tweaking the benchmark  settings, but in  general any Prometheus maintainer can start a test by a single comment  /benchmark to test to master  or /benchmark 2.3.1 to test against another release.

@brian-brazil @grobie Thanks for the review. Incorporated everything, another look appreciated.


The distribution file includes compiled classes

On the distribution file there are .pyc files on the data folder.
They should be removed.

Seems to be fixed, but I'm not sure I did anything for it.


feat(providers): Add support for fetching from k8s secrets

Allows fetching values from Kubernetes secrets.
Authentication to the Kubernetes cluster is managed by referencing the local kubeconfig.
Covers #185

@bersalazar could you add some tests for this feature?

What about config maps? Maybe we can prep to support them in the future by leaving room in the api for them?

What about config maps? Maybe we can prep to support them in the future by leaving room in the api for them?
Maybe /[namespace/][apiVersion/kind/]name[#path.to.key]

Definitely worth considering. Maybe in a future PR, happy to raise an issue for it once this one's merged.

What about config maps? Maybe we can prep to support them in the future by leaving room in the api for them?
Maybe /[namespace/][apiVersion/kind/]name[#path.to.key]

Definitely worth considering. Maybe in a future PR, happy to raise an issue for it once this one's merged.

I still think we should ensure this implementation is future proof to reduce chances of breaking changes when we implement this.

@bersalazar could you add some tests for this feature?

@yxxhero added it

@bersalazar please see my newest comments. it will be perfect after you update.

What about config maps? Maybe we can prep to support them in the future by leaving room in the api for them?
Maybe /[namespace/][apiVersion/kind/]name[#path.to.key]

Definitely worth considering. Maybe in a future PR, happy to raise an issue for it once this one's merged.

I still think we should ensure this implementation is future proof to reduce chances of breaking changes when we implement this.

@aslafy-z sure thing, I have modified the proposed API so its more generic and can cover ConfigMaps as well, eventually. Thanks for suggesting! it makes sense to avoid future breaking changes, as you mentioned.

@bersalazar please see my newest comments. it will be perfect after you update.

@yxxhero I've had a look at them and pushed updates, including unit tests.

@bersalazar please fix lint error.

@bersalazar please fix lint error.

@yxxhero all good now, thanks.
Do you mind having a look at https://github.com/helmfile/helmfile/discussions/1212?
It's not directly related to this PR, but it's one of the first use cases for this new k8s provider.
Would appreciate understanding how to deal with passing the kube context down to other helmfiles, or at least see if we need to raise an issue for it.


Flexible Pricing:  Add data model for FlexiblePriceTier

We need to add a data model that represents the income thresholds needed to receive a given discount. This will enable us to then create a corresponding UserDiscount record that officially assigns the discount to a given user.
class FlexiblePriceTier(TimestampedModel):
    """
    The tiers for discounted pricing
    """
    discount= models.ForeignKey(Discount, null=True, related_name="flexible_price_tiers", on_delete=models.PROTECT)
    courseware_content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)  # add a filter to limit this to program/course contenttypes
    courseware_object_id = models.PositiveIntegerField()
    courseware_object = GenericForeignKey('courseware_content_type', 'courseware_object_id')
    current = models.BooleanField(null=False, default=False)
    income_threshold_usd = models.IntegerField(null=False)

A record with discount=None will be the full price tier
The courseware_object relation will allow us to look up pricing tiers that a FlexiblePrice has been submitted for

Do you mean an mitxonline version of this ?

(screenshot from /admin/financialaid/tier/)

@pdpinch no, those records are purely textual descriptions and it's a bit overdesigned so I wasn't planning on having us mirror that. The record that's comparable is ProgramTier.

closed as already done in https://github.com/mitodl/mitxonline/pull/580


Bugfix/#2409 check for multiple order placing

Related issues
closes #2409
Short description and why it's useful
There are three things here:

[x] fixes inputs validation types from #2485
[x] refactor checkout/placeOrder action to async/await and adds store type to its getters
[x] fixes problem if any payment module has error and accidentaly emit checkout-do-placeOrder. I tested it with multiple emiting and only single order is placed. In case of server error order can be placed once more. Tested also placing order on same item, with same params multiple times in a row - there is no problem with that.

Upgrade Notes and Changelog

[x] No upgrade steps required (100% backward compatibility)
[x] I've updated the Upgrade notes and Changelog on how to port existing VS sites with this new feature

Ok! Go on with merge


Adding memory leak detections for the json fuzzer.

Lgtm

Changes on Jenkins:

Changed the fuzzer period to two hours instead of one so to leave some breathing room instead of having everything back to back
Added parameters for repository and branch so we can test stuff before merging

Running a fuzz on that PR here: https://grpc-testing.appspot.com/view/Fuzzers/job/gRPC_fuzzer_json/5/

Fixed typos, and re-triggered a fuzz test:
https://grpc-testing.appspot.com/view/Fuzzers/job/gRPC_fuzzer_json/6/console

Aaand missing include: https://grpc-testing.appspot.com/view/Fuzzers/job/gRPC_fuzzer_json/7/

Another fix or two needed
On Tue, Mar 29, 2016, 7:48 PM Nicolas Noble<EMAIL_ADDRESS>wrote:

Fixed typos, and re-triggered a fuzz test:
https://grpc-testing.appspot.com/view/Fuzzers/job/gRPC_fuzzer_json/6/console
—
You are receiving this because you were assigned.
Reply to this email directly or view it on GitHub
https://github.com/grpc/grpc/pull/6012#issuecomment-203212908

Queued a fuzzer run on that branch: https://grpc-testing.appspot.com/view/Fuzzers/job/gRPC_fuzzer_json/33/ (still waiting for 32 to finish...)


stack overflow when validating data

When attempting to validate certain data files, I get a java.lang.StackOverflowError:
Exception in thread "main" java.lang.StackOverflowError
	at cats.data.KleisliFunctions.$anonfun$pure$1(Kleisli.scala:168)
	at cats.data.Kleisli.$anonfun$map$1(Kleisli.scala:19)
	at cats.data.Kleisli.$anonfun$flatMap$1(Kleisli.scala:31)
	at cats.package$$anon$1.flatMap(package.scala:41)
	at cats.data.Kleisli$.$anonfun$shift$1(Kleisli.scala:112)
	at cats.data.Kleisli.$anonfun$flatMap$2(Kleisli.scala:31)
	at cats.package$$anon$1.flatMap(package.scala:41)
	at cats.data.Kleisli.$anonfun$flatMap$1(Kleisli.scala:31)
	at cats.package$$anon$1.flatMap(package.scala:41)
	at cats.data.Kleisli$.$anonfun$shift$1(Kleisli.scala:112)
	at cats.data.Kleisli.$anonfun$flatMap$1(Kleisli.scala:31)
	at cats.package$$anon$1.flatMap(package.scala:41)
(truncated)

The command I am running is:
shaclex --schema go-cam-shapes.shex --schemaFormat SHEXC --shapeMap go-cam-shapes.shapeMap --data Test000-Correct_and_complete_ActivityUnit_model-enriched.ttl --trigger SHAPEMAP --outFile out.shapeMap
The input files are here:

https://github.com/geneontology/go-shapes/blob/stack-overflow/shapes/go-cam-shapes.shex
https://github.com/geneontology/go-shapes/blob/stack-overflow/shapes/go-cam-shapes.shapeMap
https://github.com/geneontology/go-shapes/blob/stack-overflow/scala/test/should_pass/Test000-Correct_and_complete_ActivityUnit_model-enriched.ttl

I am using shaclex built from 83eeedbd8594733cd5456f9649c4d13cfcb3782b.

If I increase the stack size (JAVA_OPTS="-Xmx6G -Xss32m"), I eventually use up the heap instead: java.lang.OutOfMemoryError: GC overhead limit exceeded.

Thanks for the report. I reproduced it in my computer and will try to solve it.
By the way, looking at how you use shape maps with SPARQL selectors, I think we should extend them to be able to define prefix declarations. I raised another issue to the spec about that:.

I tried the example with the new optimization (#133), and now it works in my computer. I published a new release called 0.1.24 which contains that optimization.

Thanks for the quick fix! I will try it out next week.

This is working great now, thank you.


Matching historical and sspXYZ using df with incomplete columns make the historical period disappear

Setup Information

xscen version: 0.7.3-beta
Python version: 3.11.5
Operating System: Linux mint

Description
I parse a local directory to create a df. The following fields:
"activity"
'bias_adjust_institution'
'bias_adjust_project'

are unspecified, which causes the historical period to disappear when I proceed to make a catalog that matches hist and fut.
Steps To Reproduce
from xscen.catutils import parse_directory

df = parse_directory(
    directories=["/home/eridup1/tank/etiages/CMIP6_ornl_gov/"],
    patterns=[
        "{variable}_{?}_{source}_{experiment}_{member}_{?grid}_{DATES}.nc"
    ],
    homogenous_info={
        "mip_era": "CMIP6",
        "type": "simulation",
        "institution": "our",
        "processing_level": "extracted",
        "xrfreq": "MS",
        "frequency": "mon",
        "domain": "global",
        # I need to fill some or all of these fields, else historical datasets just disappear with match_hist_and_fut
        "activity": ".",
        'bias_adjust_institution':".",
        'bias_adjust_project':".",
    },
    read_from_file=["variable", "date_start", "date_end"],
)
subcat = xs.ProjectCatalog.from_df(df)
ds_dict = xs.search_data_catalogs(subcat,  variables_and_freqs={"rsds": "MS", "rsus":"MS"}, match_hist_and_fut=True)

The elements in ds_dict only contain the historical period when I fill the fields specified above. Otherwise, the historical period is ignored.
If I remove match_hist_and_fut=True, the historical periods remain, and they're separated. I checked and both sspXYZ and historical have [None,None,None] for the 3 specified fields, so it doesn't seem to be because of mismatching fields, but really the presence of None rather than some random string that makes the difference.
Additional context
No response
Contribution

[ ] I would be willing/able to open a Pull Request to address this bug.

The problem is the missing  activity (https://github.com/Ouranosinc/xscen/blob/26387231ddce8ccfacd059d193f0c3de932f9ea8/xscen/extract.py#L1240). The code assumes that you are passing an official catalog with all the right columns (withhistorical in activity CMIP and sspXYZ, in ScenarioMIP).
Maybe we could throw a warning if necessary columns are not filled?

I see. I had the impression that the "experiment" column would be used in this way. I think a warning would be good maybe yes, because I would characterize this as a silent failure otherwise. Then again, if my use case is just not the intended way to work with these tools, feel free to ignore this issue.

Both colums are used (activity and experiment).
I can do a PR to add a warning. I don't think passing your own catalog is the "wrong" way  to use this, even if it is not the typical case. Though, in general, I would encourage you to fill in as many columns as you can when creating your own catalogue https://xscen.readthedocs.io/en/latest/columns.html

I can't remember the reason we explicitly skip  np.NaN as the activity. I guess HighResMIP is skipped because such an SSP wouldn't be compatible with a CMIP hist, but why skip NaN ?

I don't remember either...


no-index index.html pages that are redirects.

E.g.:
https://iiif.io/api/image/2/index.html
User-declared canonical:    https://iiif.io/api/image/2.1/
Issue sitemap shows the index.html as that is what is in s3 but the HTML does a redirect (including noindex) to the directory name without the index.html:
<!DOCTYPE html>

  <meta charset="utf-8">
  <title>Redirecting…</title>
  <link rel="canonical" href="/api/image/2.1/">

  <meta http-equiv="refresh" content="0; url=/api/image/2.1/">
  <meta name="robots" content="noindex">

Redirecting…

  Click here if you are not redirected.

This is due to the source file having a redirect_from: https://github.com/IIIF/api/blob/main/source/image/2.1/index.md.

I think these are fixed but it runs longer than 30s which causes a timeout on the AWS API gateway which means GitHub thinks it has failed.


Instagram bridge returns (no text)

The instagram bridge seems to be detecting new posts, but instead of responding with content, returns "(no text)"
<entry>
		<title type="html">250</title>
		<published>2020-12-06T02:45:43+00:00</published>
		<updated>2020-12-06T02:45:43+00:00</updated>
		<id>https://www.instagram.com/p/CIcKV3QhpRt/</id>
		<link rel="alternate" type="text/html" href="https://www.instagram.com/p/CIcKV3QhpRt/"/>
		<author><name>simon.hanselmann</name></author>
		<content type="html"><br>(no text)</content>
</entry>

To Reproduce
Configure a bridge with query string "?action=display&bridge=Instagram&context=Username&u=simon.hanselmann&media_type=all&direct_links=on&format=Atom", and pull it with curl.
In the docker logs for rss-bridge, I see lots of:
[Sun Dec 06 16:03:05.407134 2020] [php7:notice] [pid 16] [client <IP_ADDRESS>:53210] PHP Notice:  Trying to get property 'data' of non-object in /app/bridges/InstagramBridge.php on line 221
[Sun Dec 06 16:03:05.411478 2020] [php7:notice] [pid 16] [client <IP_ADDRESS>:53210] PHP Notice:  Trying to get property 'shortcode_media' of non-object in /app/bridges/InstagramBridge.php on line 221
[Sun Dec 06 16:03:05.411537 2020] [php7:notice] [pid 16] [client <IP_ADDRESS>:53210] PHP Notice:  Trying to get property 'edge_media_to_caption' of non-object in /app/bridges/InstagramBridge.php on line 206
[Sun Dec 06 16:03:05.411558 2020] [php7:notice] [pid 16] [client <IP_ADDRESS>:53210] PHP Notice:  Trying to get property 'edges' of non-object in /app/bridges/InstagramBridge.php on line 206
[Sun Dec 06 16:03:05.411579 2020] [php7:warn] [pid 16] [client <IP_ADDRESS>:53210] PHP Warning:  count(): Parameter must be an array or an object that implements Countable in /app/bridges/InstagramBridge.php on line 206
[Sun Dec 06 16:03:05.411599 2020] [php7:notice] [pid 16] [client <IP_ADDRESS>:53210] PHP Notice:  Trying to get property 'edge_sidecar_to_children' of non-object in /app/bridges/InstagramBridge.php on line 170
[Sun Dec 06 16:03:05.411616 2020] [php7:notice] [pid 16] [client <IP_ADDRESS>:53210] PHP Notice:  Trying to get property 'edges' of non-object in /app/bridges/InstagramBridge.php on line 170
[Sun Dec 06 16:03:05.411635 2020] [php7:warn] [pid 16] [client <IP_ADDRESS>:53210] PHP Warning:  Invalid argument supplied for foreach() in /app/bridges/InstagramBridge.php on line 170

Expected behavior
I would expect to see the images associated with the post in my RSS reader.
Desktop (please complete the following information):
MacOS 11 Safari 14.0.1 client
Ubuntu 18.04.5 LTS server, rssbridge/rss-bridge docker image

This is related to #1881, but it was not merged yet.
Also "(no text)" show up when there's no text associated with the post.

Bridge returned error 500!  any solution

This particular issue should be fixed with PR #1920 which was merged a few hours ago. Data was often not being retrieved properly for posts with multiple images (sidecars) or with video(s). This functionality has been improved.

This particular issue should be fixed with PR #1920 which was merged a few hours ago. Data was often not being retrieved properly for posts with multiple images (sidecars) or with video(s). This functionality has been improved.

https://github.com/RSS-Bridge/rss-bridge/issues/1891


Start date not working

I have an event that begins at 9:30am on 11/14 and ends at 2:30pm on 11/14. The form keeps telling me that my date fields have not been filled in and then defaults the start time to 12:00am on 11/14 and the end time to 2:30am on 11/14. Please help!

It appears that the only time that it will allow me to select as a start time on 11/14 is 12:00am. I need that start time to be accurate for this service to be useful.

Thank you for the report, we'll look in to it immediately.

Are you able to select the correct date and time if you select the date first, before selecting the time?

Closed for non-response, please feel free to re-open.


test failure from Getopt::Long

The dependency on Getopt::Long needs to be increased?  GetOptionsFromString is not present in version 2.35.
(This failure is also being submitted via cpantesters.)
cpanm (App::cpanminus) 1.7038 on perl 5.008008 built for darwin-2level
...
Checking dependencies from MYMETA.json ...
Checking if you have Getopt::Long 2.35 ... Yes (2.35)
...
t/noenv......................
#   Failed test at t/noenv.t line 97.
#                   'Undefined subroutine &Getopt::Long::GetOptionsFromString called at /Volumes/amaretto/Users/ether/.cpanm/work/1437060628.20948/ack-2.14/blib/lib/App/Ack/ConfigLoader.pm line 593.'
#     doesn't match '(?-xism:--noenv found in (?:.*)[.]ackrc)'
# [
#   'Undefined subroutine &Getopt::Long::GetOptionsFromString called at /Volumes/amaretto/Users/ether/.cpanm/work/1437060628.20948/ack-2.14/blib/lib/App/Ack/ConfigLoader.pm line 593.'
# ]
# Looks like you failed 1 test of 5.
dubious
        Test returned status 1 (wstat 256, 0x100)
DIED. FAILED test 5
        Failed 1/5 tests, 80.00% okay

This is already noted in the issues database.  #281

Fixed by commit 9f6c3882c2088d261f00a7789134868c0b0e767f: Getopt::Long dependency upgraded to 2.38.

This went out in 2.16.


[Bug] Potential memory leak risk in the spark client

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Search before asking

[X] I have searched in the issues and found no similar issues.

Describe the bug
hasRequested is always false in the following code
https://github.com/apache/incubator-uniffle/blob/ba25785324f3b19a5780eb1ff9d696717420e2b3/client-spark/common/src/main/java/org/apache/spark/shuffle/writer/WriteBufferManager.java#L241-L243
Affects Version(s)
master
Uniffle Server Log Output
No response
Uniffle Engine Log Output
No response
Uniffle Server Configurations
No response
Uniffle Engine Configurations
No response
Additional context
No response
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

@zuston cc

My mistake. it not a bug.


CI Workflow for Gazebosim

Current CI Workflow is for Gazebo Classic.
It does not work for Gazebo Sim and does not support anything with ROS 2.
This means everything in our gazebosim branch will fail CI.

To fix:

[x] Create a new Docker image with dependencies to support Gazebosim.
[x] Upload to Dockerhub.
[x] Reference in our CI workflow.

Closed by #482


Work towards unifying codes and circuits

What is the expected enhancement?
Create at least naive circuits (fault-tolerant against phenomenological noise only) for codes expressed abstractly in codes.
Will be worked in in branch code-circuit-builder.
Some additional ideas are here.

#328 Hey James does #328 finish this issue for you?

It's a step in the right direction, but not closed yet.


Join on tables with different enum fields with same name can cause a crash

FluentPostgreSQL version 1.0.0
PostgreSQL version 1.0.1
Vapor Core version: 3.4.2
(see Package.resolved in joined example project for other module versions)
I've recently stumble upon a bug while joining two tables that both have a PostgreSQLEnum field with the same name. And it causes a weird bug that was either:

succeeds
crashing with NIO-ELT-#1 (5): EXC_BAD_ACCESS error
crashing with malloc: *** error for object 0x10383c710: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug
throwing an error: failed: caught error: The data couldn’t be read because it isn’t in the correct format.
throwing an error: DecodingError.dataCorrupted: Cannot initialize AttachmentStatus from invalid String value done (in the case of the attached sample project)

usually, it crashes half of the times and succeeds the other half with a perfect 1 for 1 rate
So to show the bug, I've created a simple sample project based on Todo template (see attached zip) with this simple DB schema to show the problem. You need to create a PG database named joinenumbug to make it runs and runs the tests of the app to get the bug.
We have a Todo table with a status field of type Enum TodoStatus and a Attachment table with also a status field but of another type Enum AttachmentStatus and they are linked via the Todo's attachmentId foreignKey.

So when I perform a join between this two tables, the result has two columns with the same name but with different data types inside:

and it confuses the decoder which is trying to pass all the status values to the RawRepresentable decodable init method and as the value doesn't matches any value, it throws an error in the best scenario
You can also see that clearly if you redefined the decodable init for the enum like this:
extension AttachmentStatus {
    public init?(rawValue: String) {
        print("############### --- \(rawValue)")
        if (rawValue == "new") {
            self = .new
        }
        else if (rawValue == "old") {
            self = .old
        }
        else {
            return nil
        }
    }
}

it will display:
############### --- old
############### --- new
############### --- done
############### --- doing

showing the problem.
The only workaround I've found is to rename one of the two fields with a different name but it's not a really satisfying solution 😉
Hope you can help!
Thanks in advance!
JoinEnumBug.zip

This was happening because Postgres' table name cache is outdated and it is unable to resolve the difference between the two columns.  After running migrations you should call:
try! app.requestCachedConnection(to: .psql).wait()

This will reload postgres' table name cache allowing both status fields to be distinguishable.


Release a version to the marketplace

[x] Add a version tag
[x] Add workflow that publishes the release when a tag is pushed
[x] Push the tag
[ ] Tweet about it :-)

Added to the marketplace


[sw,docs] Fix Links and Describe Software Tree Better

This is a pretty large set of changes.
The first commit fixes some links in the secure boot specification.
The second commit almost entirely rewrites the https://docs.opentitan.org/sw/ page to describe the existing software libraries and images that are available. It also moves the description of the ROM_EXT manifest to make it easier to link to in the Hugo documents.

This looks good. Is there a plan for making sure that this stays up to date as the software directories continue to evolve?

The plan is to maintain it, like we do with the other software.


python310Packages.jupyter-book: 0.13.1 -> 0.13.2

Description of changes

https://github.com/executablebooks/jupyter-book/releases/tag/v0.13.2
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 215253 run on aarch64-darwin 1

2 packages built:

python310Packages.jupyter-book
python311Packages.jupyter-book

@ofborg build python311Packages.jupyter-book


Having an issue with custom devise controllers

Hello,
Please forgive any ignorance, as this is my first go at using devise as a whole, let alone with our neo4j database.
Ok, i've found myself needing to customize the views for the devise routes, and also needing to set some custom data from the controllers into these views. In order to do that, I was lead to do this:
rails g devise:views
rails g devise:controllers webusers # users model `Webuser`, scoping accordingly

The reason i asked devise for the controllers was so that I could add custom before_action hooks in these devise routes, to set some data for the views.
Now, these controllers extend Devise::XController, example: class Webusers::RegistrationsController < Devise::RegistrationsController and I'm getting validatable errors when trying to visit my sign up page, and I can't figure out where i'm going wrong. Is it because this was a devise controller generation, and not a neo4j-devise controller generation (though that option doesn't appear available)?
Anyway, here's my error:
NoMethodError in Webusers::RegistrationsController#new

undefined method `validatable?' for nil:NilClass

Extracted source (around line #170):

# Sets minimum password length to show to user
  def set_minimum_password_length
    if devise_mapping.validatable? # <- ERROR HIGHLIGHTED HERE
      @minimum_password_length = resource_class.password_length.min
    end
  end

Here's the top few lines from the stack:
devise (4.2.0) app/controllers/devise_controller.rb:170:in `set_minimum_password_length'
activesupport (4.2.6) lib/active_support/callbacks.rb:432:in `block in make_lambda'
activesupport (4.2.6) lib/active_support/callbacks.rb:145:in `block in halting_and_conditional'
activesupport (4.2.6) lib/active_support/callbacks.rb:504:in `block in call'
activesupport (4.2.6) lib/active_support/callbacks.rb:504:in `each'
activesupport (4.2.6) lib/active_support/callbacks.rb:504:in `call'
activesupport (4.2.6) lib/active_support/callbacks.rb:92:in `__run_callbacks__'
activesupport (4.2.6) lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'
activesupport (4.2.6) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (4.2.6) lib/abstract_controller/callbacks.rb:19:in `process_action'
actionpack (4.2.6) lib/action_controller/metal/rescue.rb:29:in `process_action'
actionpack (4.2.6) lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'
activesupport (4.2.6) lib/active_support/notifications.rb:164:in `block in instrument'
activesupport (4.2.6) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
activesupport (4.2.6) lib/active_support/notifications.rb:164:in `instrument'
actionpack (4.2.6) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
actionpack (4.2.6) lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
activerecord (4.2.6) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
actionpack (4.2.6) lib/abstract_controller/base.rb:137:in `process'
actionview (4.2.6) lib/action_view/rendering.rb:30:in `process'

Here is my controller:
class Webusers::RegistrationsController < Devise::RegistrationsController

    before_action :load_custom_data

    private

    def load_custom_data
        # loading my @vars's here
    end
end

Model (the default after running rails g neo4j:devise Webuser):
class Webuser
  include Neo4j::ActiveNode
     property :username, type: String
     property :facebook_token, type: String
     index :facebook_token
     property :created_at, type: DateTime
     property :updated_at, type: DateTime
     property :email, type: String, null: false, default: ""
     index :email
     property :encrypted_password

     ## Rememberable
     property :remember_created_at, type: DateTime
     property :remember_token
     index :remember_token

     ## Recoverable
     property :reset_password_token
     index :reset_password_token
     property :reset_password_sent_at, type: DateTime

     ## Trackable
     property :sign_in_count, type: Integer, default: 0
     property :current_sign_in_at, type: DateTime
     property :last_sign_in_at, type: DateTime
     property :current_sign_in_ip, type:  String
     property :last_sign_in_ip, type: String

  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable
end

Layout (views/layouts/devise.html.erb). The @var's I actually need to pass in from the controller live with partials/header.
<!DOCTYPE html>

        <title><%= yield :site_title %></title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <%= csrf_meta_tags %>

        <link rel="shortcut icon" href="<%= image_path 'favicon.ico' %>">
        <%=stylesheet_link_tag "print", media: "print"%>
        <%=stylesheet_link_tag "account", media: "screen"%>

        <%=javascript_include_tag "account-head" %>

        <%=render "partials/header"%>

<%= notice %>

<%= alert %>

            <%= yield %>

        <%=render "partials/footer"%>

        <%=javascript_include_tag "account-footer"%>
        <%=javascript_include_tag "tracking"%>

View (default after running rails g devise:views)

Sign up

<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
  <%= devise_error_messages! %>

    <%= f.label :email %>

    <%= f.email_field :email, autofocus: true %>

    <%= f.label :password %>
    <% if @minimum_password_length %>
    (<%= @minimum_password_length %> characters minimum)
    <% end %>

    <%= f.password_field :password, autocomplete: "off" %>

    <%= f.label :password_confirmation %>

    <%= f.password_field :password_confirmation, autocomplete: "off" %>

    <%= f.submit "Sign up" %>

<% end %>

<%= render "devise/shared/links" %>

Devise setup (default from running rails g devise:install --orm=neo4j):
Devise.setup do |config|
  config.mailer_sender =<EMAIL_ADDRESS>  require 'devise/orm/neo4j'
  config.case_insensitive_keys = [:email]
  config.strip_whitespace_keys = [:email]
  config.skip_session_storage = [:http_auth]
  config.stretches = Rails.env.test? ? 1 : 11
  config.reconfirmable = true
  config.expire_all_remember_me_on_sign_out = true
  config.password_length = 6..128
  config.email_regexp = /\A[^@\s]+@[^@\s]+\z/
  config.reset_password_within = 6.hours
  config.sign_out_via = :delete
end

Is there anything specific to my setup that appears wonky?
Any advice to what i'm looking to achieve is greatly appreciated.
UPDATE
Here's my routes.rb, and this issue occurs when browsing to /register
Rails.application.routes.draw do

    devise_for :webusers, :controllers => {
        confirmations: 'webusers/confirmations',
        passwords: 'webusers/passwords',
        registrations: 'webusers/registrations',
        sessions: 'webusers/sessions',
        unlocks: 'webusers/unlocks'
    }

    devise_scope :webusers do
        get '/register', to: 'webusers/registrations#new', as: :register
        get '/profile', to: 'webusers/registrations#edit', as: :profile
        get '/login', to: 'webusers/sessions#new', as: :login
        get '/logout', to: 'webusers/sessions#destroy', as: :logout
    end

    ...

end

i've at least figured out a work around, in that devise_scope was messing this up for us. So, i've just removed the custom scope, and things are working like they should.

Glad that you were able to figure something out ;)  Let me know if you'd like to look deeper at the issue sometime

For anyone that stumbles upon this thread due to a web search, the problem above can be solved by passing to devise_scope the singular form of the user resource model:
devise_scope :webuser do
  ...
end

Thanks!

I am having the same issue but the solution provided does not work for me.
This is my first time using devise. I have a simple rspec controller test to check if a get request to register route returns a status of 200. But instead I keep getting this ridiculous error.
Users::RegistrationsController GET #new returns http success
     Failure/Error: process :new, method: :get
     NoMethodError:
         undefined method `validatable?' for nil:NilClass

.rvm/gems/ruby-2.3.2/gems/devise-4.2.0/app/controllers/devise_controller.rb:170:in `set_minimum_password_length'

My Routes
  devise_for :users,
  :controllers => { :registrations => 'users/registrations' },
  skip: [:sessions, :passwords, :confirmations, :registrations, :unlocks]
  devise_scope :user do
    get 'register', to: 'users/registrations#new', as: :signup
    post 'register', to: 'users/registrations#create', as: :""
    delete 'register', to: 'users/registrations#create', as: :""
  end

My Registrations Controller
class Users::RegistrationsController < Devise::RegistrationsController
  def new
  end

  def create
  end

  def destroy
  end
end

My Test
require 'rails_helper'

RSpec.describe Users::RegistrationsController, type: :controller do

  describe "GET #new" do
    it "returns http success" do
      process :new, method: :get
      expect(response).to have_http_status(:success)
    end
  end
end

I figured out why I was having this problem. I forgot to add the following code to my test.
  before(:each) {
    @request.env["devise.mapping"] = Devise.mappings[:user]
  }

Great ;) Devise has so many knobs to tweak, but it seems like once you bang your head for a while and find the right one it's all smooth.  Best of luck! :)

hello,
can some one please help me?
I got this error : NoMethodError (undefined method `to_datetime' for nil:NilClass) when I try to log out from the user or when I want to reset the password. is this problem because of outdated rails? or do you have any idea?

Hey @kimiya66 I don't know that I could say without more information.  Can you provide a backtrace for the error?


Flight Manual in ePub and mobi links do not work on iPads

#!/usr/bin/env python
# coding: utf-8

# The .epub url below should open a book in the iBooks app on an iPad but does not.
# The .mobi url below should open a book in the Kindle app on an iPad but does not.

import requests

url = 'http://atom.io/docs/v0.205.5'
html = requests.get(url).text
for line in html.splitlines():
    if 'eBook' in line:
        for clump in line.split():
            for word in clump.split('"'):
                if '://' in word:
                    print(word)

'''
http://orm-atlas2-prod.s3.amazonaws.com/epub/622e5c6754ecec37fa5d0b2695a5f831.epub
http://orm-atlas2-prod.s3.amazonaws.com/html/b530f4da9b9b47f512683d47966f1efd.zip
http://orm-atlas2-prod.s3.amazonaws.com/mobi/cbd8ff005dd780a14232095d079f8189.mobi
http://orm-atlas2-prod.s3.amazonaws.com/pdf/2d435d1a25f3cfda3471aaca5a1e2b5a.pdf
'''

Would you mind moving this to https://github.com/atom/docs?

Moved this to issue https://github.com/atom/docs/issues/74


limit rank to 99

Problem: Rank would sometimes be 100 for the top ranked member
Solution: Limit Rank to 99 until we can implement the good solution (see below)
Analysis
This happens when rankings / points change while the rank is in progress.
For example, user A has 5 points, rank runs and sets user A's rank to 0, the ranking ends at position 200
User A receives another 20 points from somewhere
Ranking continues at position 200, but now user A is located at position 450 (for example) and will eventually be ranked again - maybe at rank 15 for example.
That rank is correct - that's fine - but we are counting up on how many users we have ranked to determine rank, and so the count is now 1 too many, and when we get to the end of the table, count == size, and rank is set to 100.
The rank will even out again on the next run of the ranking.
The same thing will happen in many other ways, but they're less visible - e.g. the rank for someone will be too high or too low, but it evens out the next run when they're once again ranked correctly.
The Good Solution - Table Locks
The reason this is not atomic is that we go over the table in chunks, so inbetween chunks the actual ranking can change.
The correct way to solve this would be to wait until the ranking is finished, and to apply changes in reputation only once that has happened. Like a manually implemented table lock. (rep or any other number we are ranking)
For now that's too complex - a lock would have to be between changing reputation and ranking.
Ranking could simply wait until there's no lock but applying reputation we would have to store changes in a secondary table rep_delta, apply all changes there while rep ranking is happening and apply the delta back to the full table once rep ranking is finished.
And this has to be done for all 8 or so rankings we are doing. The rep delta table has to be cleared while iterating and could exceed 200 items, so it also has to be run in chunks.

Please review and especially if you can think of other ways to implement a good solution let me know!
Main issue we are ranking a list that is changing while we're ranking it.

Could we have a "dirty" flag on users at the ranking table, to indicate they have already been ranked (clear), and once they receive more points they become "dirty" again, so If the algorithm goes by a user that has the dirty flag on it removes that user from the ranked table before adding them again on the proper place?
Now I am going to review the implemented solution.

I think dirty clear would just shift the issue to that flag ... my feeling. It might simply cause other edge cases to not work
Things may be added to or removed from the list too but my main argument without thinking through all the details is that you can’t substitute a table lock - mutual exclusive access - with anything else... not for the general case.
It’s possible that the flag would make errors less likely though. Nothing would be double counted. But then some other mechanism has to go over the table and set everything to dirty before the next run and then we have the same issue again some might get skipped and not set to dirty...

On Nov 6, 2020, at 11:01 PM, Julio L R Monteiro<EMAIL_ADDRESS>wrote:

Could we have a "dirty" flag on users at the ranking table, to indicate they have already been ranked (clear), and once they receive more points they become "dirty" again, so If the algorithm goes by a user that has the dirty flag on it removes that user from the ranked table before adding them again on the proper place?
Now I am going to review the implemented solution.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

"Living Ranking"


Some enemies still damage/kill Mario if he has a star

https://github.com/amykatname/smbcd/assets/154684371/f1c67100-fbe1-4093-ac3b-ac195547b5e0

definitely need to figure that out and fix for 1.0