Exception: RenderViewport exceeded its maximum number of layout cycles

I have an application that has horizontally scrollable tiles within a vertically scrollable list. These tiles are dynamically sized based on the screen size. It works well, but I noticed that on the iPhone 6s the tile sizes were calculated to be Size(104.1935483870967687,<PHONE_NUMBER>806451530). For some reason, this exact size caused the render exception below to be thrown. All other tile sizes I tried worked fine. Here is a pic of the sample app below which will reproduce the error on an iPhone 6s simulator.
https://imgur.com/a/QNRx4Lz
Steps to Reproduce
Run this sample application on the iPhone 6s simulator to see the render exception. Note, the tiles are normally dynamically sized, but I noticed that the exact size of<PHONE_NUMBER>870967687,<PHONE_NUMBER>806451530) was causing the exception so I have the sizes hardcode for now. Scroll the screen up and down to see the exception.
import 'package:flutter/material.dart';

void main() => runApp(new MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => new _MyHomePageState();
}

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

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: (_tabIndex == 0) ? _createHomePage(context) : Container(),
    );
  }

  Widget _createHomePage(BuildContext context) {
    return ListView(
      children: List.generate(100, (index) => _createRow(context, index))
    );
  }

  Widget _createRow(BuildContext context, int rowIndex) {
    if (rowIndex % 3 == 0 || rowIndex % 3 == 1)
      return SizedBox(height: 24.0);

    // NOTE: the real code would call calculateTileSize(screenWidth) which returned the values below
    var screenWidth = MediaQuery.of(context).size.width;
    var tileSize = Size(104.1935483870967687,<PHONE_NUMBER>806451530);   // calculateTileSize(screenWidth);

    return Column(
      children: <Widget>[
        SizedBox(height: 16.0),
        Text("Row $rowIndex"),
        SizedBox(height: 4.0),
        SizedBox(
          width: screenWidth,
          height: tileSize.height,
          child: ListView(
            key: PageStorageKey<String>("RowKey$rowIndex"),
            scrollDirection: Axis.horizontal,
            children: List.generate(100, (tileIndex) => _createTile(context, rowIndex, tileIndex, tileSize)),
          ),
        )
      ],
    );
  }

  Widget _createTile(BuildContext context, int rowIndex, int tileIndex, Size tileSize) {
    return Padding(
      padding: const EdgeInsets.only(right: 8.0),
      child: Container(
        color: _getTileColor(rowIndex, tileIndex),
        child: SizedBox(
          width: tileSize.width,
          height: tileSize.height,
        ),
      ),
    );
  }

  Color _getTileColor(int rowIndex, int tileIndex) {
    var index = (rowIndex * 5 + tileIndex) % Colors.accents.length;
    return Colors.accents[index];
  }
}

Logs

[  +30 ms] executing: [/Users/scottdewald/Tools/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +32 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/beta
[        ] executing: [/Users/scottdewald/Tools/flutter/] git rev-parse --abbrev-ref HEAD
[   +9 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] beta
[        ] executing: [/Users/scottdewald/Tools/flutter/] git ls-remote --get-url origin
[  +10 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[        ] executing: [/Users/scottdewald/Tools/flutter/] git log -n 1 --pretty=format:%H
[  +14 ms] Exit code 0 from: git log -n 1 --pretty=format:%H
[        ] f37c235c32fc15babe6dc7b7bc2ee4387e5ecf92
[        ] executing: [/Users/scottdewald/Tools/flutter/] git log -n 1 --pretty=format:%ar
[  +11 ms] Exit code 0 from: git log -n 1 --pretty=format:%ar
[        ] 4 weeks ago
[        ] executing: [/Users/scottdewald/Tools/flutter/] git describe --match v*.*.* --first-parent --long --tags
[  +14 ms] Exit code 0 from: git describe --match v*.*.* --first-parent --long --tags
[        ] v0.9.4-0-gf37c235c3
[ +279 ms] executing: /Users/scottdewald/Library/Android/sdk/platform-tools/adb devices -l
[   +8 ms] Exit code 0 from: /Users/scottdewald/Library/Android/sdk/platform-tools/adb devices -l
[        ] List of devices attached
[   +4 ms] executing: idevice_id -h
[  +38 ms] /usr/bin/xcrun simctl list --json devices
[+1002 ms] Launching lib/main.dart on iPhone 6s in debug mode...
[  +10 ms] executing: /usr/bin/defaults read /Users/scottdewald/Programming/FlutterTest2/flutter_test_2/ios/Runner/Info CFBundleIdentifier
[ +141 ms] Exit code 0 from: /usr/bin/defaults read /Users/scottdewald/Programming/FlutterTest2/flutter_test_2/ios/Runner/Info CFBundleIdentifier
[        ] $(PRODUCT_BUNDLE_IDENTIFIER)
[  +11 ms] Building Runner.app for 6761ACC4-D0CD-474F-A6BA-C13BC11C8482.
[   +7 ms] executing: script /dev/null /usr/bin/log stream --style syslog --predicate processImagePath CONTAINS "6761ACC4-D0CD-474F-A6BA-C13BC11C8482"
[  +27 ms] [DEVICE LOG] Filtering the log data using "processImagePath CONTAINS "6761ACC4-D0CD-474F-A6BA-C13BC11C8482""
[   +4 ms] [DEVICE LOG] Timestamp                       (process)[PID]
[ +123 ms] /Users/scottdewald/Tools/flutter/bin/cache/dart-sdk/bin/dart /Users/scottdewald/Tools/flutter/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root /Users/scottdewald/Tools/flutter/bin/cache/artifacts/engine/common/flutter_patched_sdk/ --strong --target=flutter --no-link-platform --incremental --packages /Users/scottdewald/Programming/FlutterTest2/flutter_test_2/.packages --output-dill build/app.dill --depfile build/snapshot_blob.bin.d /Users/scottdewald/Programming/FlutterTest2/flutter_test_2/lib/main.dart
[+1476 ms] Building bundle
[        ] Writing asset files to build/flutter_assets
[  +41 ms] Wrote build/flutter_assets
[   +1 ms] executing: /usr/bin/xcrun simctl get_app_container 6761ACC4-D0CD-474F-A6BA-C13BC11C8482 com.example.flutterTest2
[        ] executing: /usr/bin/killall Runner
[ +203 ms] executing: /usr/bin/xcrun simctl launch 6761ACC4-D0CD-474F-A6BA-C13BC11C8482 com.example.flutterTest2 --enable-dart-profiling --enable-checked-mode --observatory-port=0
[ +217 ms] com.example.flutterTest2: 13612
[        ] Waiting for observatory port to be available...
[ +264 ms] [DEVICE LOG] 2018-10-25 14:46:49.978355-0500  localhost Runner[13612]: (QuartzCore) [com.apple.coreanimation:WindowServer] Initialized 2 displays
[  +12 ms] [DEVICE LOG] 2018-10-25 14:46:49.991233-0500  localhost Runner[13612]: (libMobileGestalt.dylib) libMobileGestalt MobileGestalt.c:890: MGIsDeviceOneOfType is not supported on this platform.
[        ] [DEVICE LOG] 2018-10-25 14:46:49.991289-0500  localhost Runner[13612]: (libMobileGestalt.dylib) MGIsDeviceOneOfType is not supported on this platform.
[        ] [DEVICE LOG] 2018-10-25 14:46:49.992149-0500  localhost Runner[13612]: (libAccessibility.dylib) [com.apple.Accessibility:AccessibilitySupport] Retrieving resting unlock: 0
[  +56 ms] [DEVICE LOG] 2018-10-25 14:46:50.048823-0500  localhost Runner[13612]: (UIKitCore) You've implemented -[<UIApplicationDelegate> application:performFetchWithCompletionHandler:], but you still need to add "fetch" to the list of your supported UIBackgroundModes in your Info.plist.
[        ] [DEVICE LOG] 2018-10-25 14:46:50.048961-0500  localhost Runner[13612]: (UIKitCore) You've implemented -[<UIApplicationDelegate> application:didReceiveRemoteNotification:fetchCompletionHandler:], but you still need to add "remote-notification" to the list of your supported UIBackgroundModes in your Info.plist.
[  +62 ms] [DEVICE LOG] 2018-10-25 14:46:50.111898-0500  localhost Runner[13612]: (Flutter) flutter: Observatory listening on http://<IP_ADDRESS>:58557/
[   +3 ms] Observatory URL on device: http://<IP_ADDRESS>:58557/
[   +3 ms] Connecting to service protocol: http://<IP_ADDRESS>:58557/
[ +131 ms] Successfully connected to service protocol: http://<IP_ADDRESS>:58557/
[   +2 ms] getVM: {}
[   +9 ms] getIsolate: {isolateId: isolates/487795111}
[   +4 ms] _flutter.listViews: {isolateId: isolates/487795111}
[  +37 ms] DevFS: Creating new filesystem on the device (null)
[        ] _createDevFS: {fsName: flutter_test_2}
[  +21 ms] DevFS: Created new filesystem on the device (file:///Users/scottdewald/Library/Developer/CoreSimulator/Devices/6761ACC4-D0CD-474F-A6BA-C13BC11C8482/data/Containers/Data/Application/4A8502F4-32FC-4AAB-876B-08511B6E5886/tmp/flutter_test_2sqYo1u/flutter_test_2/)
[   +1 ms] Updating assets
[ +161 ms] Syncing files to device iPhone 6s...
[   +2 ms] DevFS: Starting sync from LocalDirectory: '/Users/scottdewald/Programming/FlutterTest2/flutter_test_2'
[        ] Scanning project files
[   +6 ms] Scanning package files
[  +91 ms] Scanning asset files
[        ] Scanning for deleted files
[   +8 ms] Compiling dart to kernel with 436 updated files
[   +4 ms] /Users/scottdewald/Tools/flutter/bin/cache/dart-sdk/bin/dart /Users/scottdewald/Tools/flutter/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root /Users/scottdewald/Tools/flutter/bin/cache/artifacts/engine/common/flutter_patched_sdk/ --incremental --strong --target=flutter --output-dill build/app.dill --packages /Users/scottdewald/Programming/FlutterTest2/flutter_test_2/.packages --filesystem-scheme org-dartlang-root
[+1119 ms] Updating files
[  +56 ms] DevFS: Sync finished
[        ] Syncing files to device iPhone 6s... (completed)
[        ] Synced 0.8MB.
[   +1 ms] _flutter.listViews: {isolateId: isolates/487795111}
[   +6 ms] Connected to _flutterView/0x7ffd7bf07be8.
[   +1 ms] 🔥  To hot reload changes while running, press "r". To hot restart (and rebuild state), press "R".
[        ] An Observatory debugger and profiler on iPhone 6s is available at: http://<IP_ADDRESS>:58557/
[        ] For a more detailed help message, press "h". To detach, press "d"; to quit, press "q".
[+5492 ms] [DEVICE LOG] 2018-10-25 14:46:57.280789-0500  localhost Runner[13612]: (Flutter) flutter: ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
[   +7 ms] flutter: ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
[        ] [DEVICE LOG] 2018-10-25 14:46:57.287736-0500  localhost Runner[13612]: (Flutter) flutter: The following assertion was thrown during performLayout():
[        ] [DEVICE LOG] 2018-10-25 14:46:57.287823-0500  localhost Runner[13612]: (Flutter) flutter: A RenderViewport exceeded its maximum number of layout cycles.
[        ] [DEVICE LOG] 2018-10-25 14:46:57.287909-0500  localhost Runner[13612]: (Flutter) flutter: RenderViewport render objects, during layout, can retry if either their slivers or their
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288009-0500  localhost Runner[13612]: (Flutter) flutter: ViewportOffset decide that the offset should be corrected to take into account information collected
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288099-0500  localhost Runner[13612]: (Flutter) flutter: during that layout.
[        ] flutter: The following assertion was thrown during performLayout():
[        ] flutter: A RenderViewport exceeded its maximum number of layout cycles.
[        ] flutter: RenderViewport render objects, during layout, can retry if either their slivers or their
[        ] flutter: ViewportOffset decide that the offset should be corrected to take into account information collected
[        ] flutter: during that layout.
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288169-0500  localhost Runner[13612]: (Flutter) flutter: In the case of this RenderViewport object, however, this happened 10 times and still there was no
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288249-0500  localhost Runner[13612]: (Flutter) flutter: consensus on the scroll offset. This usually indicates a bug. Specifically, it means that one of the
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288347-0500  localhost Runner[13612]: (Flutter) flutter: following three problems is being experienced by the RenderViewport object:
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288427-0500  localhost Runner[13612]: (Flutter) flutter:  * One of the RenderSliver children or the ViewportOffset have a bug such that they always think
[        ] flutter: In the case of this RenderViewport object, however, this happened 10 times and still there was no
[        ] flutter: consensus on the scroll offset. This usually indicates a bug. Specifically, it means that one of the
[        ] flutter: following three problems is being experienced by the RenderViewport object:
[        ] flutter:  * One of the RenderSliver children or the ViewportOffset have a bug such that they always think
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288512-0500  localhost Runner[13612]: (Flutter) flutter:    that they need to correct the offset regardless.
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288621-0500  localhost Runner[13612]: (Flutter) flutter:  * Some combination of the RenderSliver children and the ViewportOffset have a bad interaction such
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288713-0500  localhost Runner[13612]: (Flutter) flutter:    that one applies a correction then another applies a reverse correction, leading to an infinite
[        ] [DEVICE LOG] 2018-10-25 14:46:57.288998-0500  localhost Runner[13612]: (Flutter) flutter:    loop of corrections.
[        ] [DEVICE LOG] 2018-10-25 14:46:57.289109-0500  localhost Runner[13612]: (Flutter) flutter:  * There is a pathological case that would eventually resolve, but it is so complicated that it
[        ] [DEVICE LOG] 2018-10-25 14:46:57.289379-0500  localhost Runner[13612]: (Flutter) flutter:    cannot be resolved in any reasonable number of layout passes.
[        ] [DEVICE LOG] 2018-10-25 14:46:57.290086-0500  localhost Runner[13612]: (Flutter) flutter:
[        ] flutter:    that they need to correct the offset regardless.
[        ] flutter:  * Some combination of the RenderSliver children and the ViewportOffset have a bad interaction such
[        ] flutter:    that one applies a correction then another applies a reverse correction, leading to an infinite
[        ] flutter:    loop of corrections.
[        ] flutter:  * There is a pathological case that would eventually resolve, but it is so complicated that it
[        ] flutter:    cannot be resolved in any reasonable number of layout passes.
[        ] flutter:
[        ] [DEVICE LOG] 2018-10-25 14:46:57.290177-0500  localhost Runner[13612]: (Flutter) flutter: When the exception was thrown, this was the stack:
[        ] flutter: When the exception was thrown, this was the stack:
[   +1 ms] [DEVICE LOG] 2018-10-25 14:46:57.293689-0500  localhost Runner[13612]: (Flutter) flutter: #0      RenderViewport.performLayout.<anonymous closure> (package:flutter/src/rendering/viewport.dart:1253:9)
[        ] flutter: #0      RenderViewport.performLayout.<anonymous closure> (package:flutter/src/rendering/viewport.dart:1253:9)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.293855-0500  localhost Runner[13612]: (Flutter) flutter: #1      RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1273:6)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.293968-0500  localhost Runner[13612]: (Flutter) flutter: #2      RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1506:7)
[        ] flutter: #1      RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1273:6)
[        ] flutter: #2      RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1506:7)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.294094-0500  localhost Runner[13612]: (Flutter) flutter: #3      PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:765:18)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.294224-0500  localhost Runner[13612]: (Flutter) flutter: #4      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:270:19)
[        ] flutter: #3      PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:765:18)
[        ] flutter: #4      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:270:19)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.294342-0500  localhost Runner[13612]: (Flutter) flutter: #5      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:674:13)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.294466-0500  localhost Runner[13612]: (Flutter) flutter: #6      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:208:5)
[        ] flutter: #5      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:674:13)
[        ] flutter: #6      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:208:5)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.294588-0500  localhost Runner[13612]: (Flutter) flutter: #7      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.294744-0500  localhost Runner[13612]: (Flutter) flutter: #8      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.294859-0500  localhost Runner[13612]: (Flutter) flutter: #9      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:842:5)
[        ] flutter: #7      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
[        ] flutter: #8      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
[        ] flutter: #9      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:842:5)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.294981-0500  localhost Runner[13612]: (Flutter) flutter: #10     _invoke (dart:ui/hooks.dart:139:13)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.295098-0500  localhost Runner[13612]: (Flutter) flutter: #11     _drawFrame (dart:ui/hooks.dart:128:3)
[        ] flutter: #10     _invoke (dart:ui/hooks.dart:139:13)
[        ] flutter: #11     _drawFrame (dart:ui/hooks.dart:128:3)
[   +6 ms] [DEVICE LOG] 2018-10-25 14:46:57.303394-0500  localhost Runner[13612]: (Flutter) flutter:
[        ] flutter:
[        ] [DEVICE LOG] 2018-10-25 14:46:57.303466-0500  localhost Runner[13612]: (Flutter) flutter: The following RenderObject was being processed when the exception was fired:
[        ] [DEVICE LOG] 2018-10-25 14:46:57.303520-0500  localhost Runner[13612]: (Flutter) flutter:   RenderViewport#51a50 NEEDS-LAYOUT NEEDS-PAINT
[        ] flutter: The following RenderObject was being processed when the exception was fired:
[        ] flutter:   RenderViewport#51a50 NEEDS-LAYOUT NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.303586-0500  localhost Runner[13612]: (Flutter) flutter:   creator: Viewport ← _ScrollableScope ← IgnorePointer-[GlobalKey#1ac85] ← Semantics ← Listener ←
[        ] [DEVICE LOG] 2018-10-25 14:46:57.303670-0500  localhost Runner[13612]: (Flutter) flutter:   _GestureSemantics ← RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#fd452] ←
[        ] flutter:   creator: Viewport ← _ScrollableScope ← IgnorePointer-[GlobalKey#1ac85] ← Semantics ← Listener ←
[        ] flutter:   _GestureSemantics ← RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#fd452] ←
[        ] [DEVICE LOG] 2018-10-25 14:46:57.303743-0500  localhost Runner[13612]: (Flutter) flutter:   _ScrollSemantics-[GlobalKey#83949] ← Scrollable ← PrimaryScrollController ← ListView ← MediaQuery
[        ] [DEVICE LOG] 2018-10-25 14:46:57.303808-0500  localhost Runner[13612]: (Flutter) flutter:   ← ⋯
[        ] [DEVICE LOG] 2018-10-25 14:46:57.303886-0500  localhost Runner[13612]: (Flutter) flutter:   parentData: <none> (can use size)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.303970-0500  localhost Runner[13612]: (Flutter) flutter:   constraints: BoxConstraints(0.0<=w<=375.0, 0.0<=h<=667.0)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.304055-0500  localhost Runner[13612]: (Flutter) flutter:   layer: OffsetLayer#c85aa
[        ] flutter:   _ScrollSemantics-[GlobalKey#83949] ← Scrollable ← PrimaryScrollController ← ListView ← MediaQuery
[        ] flutter:   ← ⋯
[        ] flutter:   parentData: <none> (can use size)
[        ] flutter:   constraints: BoxConstraints(0.0<=w<=375.0, 0.0<=h<=667.0)
[        ] flutter:   layer: OffsetLayer#c85aa
[        ] [DEVICE LOG] 2018-10-25 14:46:57.304131-0500  localhost Runner[13612]: (Flutter) flutter:   size: Size(375.0, 667.0)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.304216-0500  localhost Runner[13612]: (Flutter) flutter:   axisDirection: down
[        ] [DEVICE LOG] 2018-10-25 14:46:57.304420-0500  localhost Runner[13612]: (Flutter) flutter:   crossAxisDirection: right
[        ] [DEVICE LOG] 2018-10-25 14:46:57.304786-0500  localhost Runner[13612]: (Flutter) flutter:   offset: ScrollPositionWithSingleContext#0e979(offset: 270.2, range: 0.0..7738.6, viewport: 667.0,
[        ] [DEVICE LOG] 2018-10-25 14:46:57.305005-0500  localhost Runner[13612]: (Flutter) flutter:   ScrollableState, AlwaysScrollableScrollPhysics -> BouncingScrollPhysics,
[        ] [DEVICE LOG] 2018-10-25 14:46:57.305168-0500  localhost Runner[13612]: (Flutter) flutter:   BallisticScrollActivity#3fb6e(AnimationController#4a359(▶ 270.207; for BallisticScrollActivity)),
[        ] [DEVICE LOG] 2018-10-25 14:46:57.305375-0500  localhost Runner[13612]: (Flutter) flutter:   ScrollDirection.forward)
[        ] flutter:   size: Size(375.0, 667.0)
[        ] flutter:   axisDirection: down
[        ] flutter:   crossAxisDirection: right
[        ] flutter:   offset: ScrollPositionWithSingleContext#0e979(offset: 270.2, range: 0.0..7738.6, viewport: 667.0,
[        ] flutter:   ScrollableState, AlwaysScrollableScrollPhysics -> BouncingScrollPhysics,
[        ] flutter:   BallisticScrollActivity#3fb6e(AnimationController#4a359(▶ 270.207; for BallisticScrollActivity)),
[        ] flutter:   ScrollDirection.forward)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.305463-0500  localhost Runner[13612]: (Flutter) flutter:   anchor: 0.0
[        ] [DEVICE LOG] 2018-10-25 14:46:57.305608-0500  localhost Runner[13612]: (Flutter) flutter: This RenderObject had the following descendants (showing up to depth 5):
[        ] [DEVICE LOG] 2018-10-25 14:46:57.305785-0500  localhost Runner[13612]: (Flutter) flutter:   RenderSliverPadding#0b812 relayoutBoundary=up1 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.305909-0500  localhost Runner[13612]: (Flutter) flutter:     RenderSliverList#e6967 relayoutBoundary=up2 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.306068-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#8a47c relayoutBoundary=up3 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.306192-0500  localhost Runner[13612]: (Flutter) flutter:         RenderConstrainedBox#467ee relayoutBoundary=up4 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.306363-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#bca97 relayoutBoundary=up3 NEEDS-PAINT
[        ] flutter:   anchor: 0.0
[        ] flutter: This RenderObject had the following descendants (showing up to depth 5):
[        ] flutter:   RenderSliverPadding#0b812 relayoutBoundary=up1 NEEDS-PAINT
[        ] flutter:     RenderSliverList#e6967 relayoutBoundary=up2 NEEDS-PAINT
[        ] flutter:       RenderRepaintBoundary#8a47c relayoutBoundary=up3 NEEDS-PAINT
[        ] flutter:         RenderConstrainedBox#467ee relayoutBoundary=up4 NEEDS-PAINT
[        ] flutter:       RenderRepaintBoundary#bca97 relayoutBoundary=up3 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.307227-0500  localhost Runner[13612]: (Flutter) flutter:         RenderConstrainedBox#f871a relayoutBoundary=up4 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.307326-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#2a880 relayoutBoundary=up3 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.307410-0500  localhost Runner[13612]: (Flutter) flutter:         RenderFlex#daa20 relayoutBoundary=up4 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.307498-0500  localhost Runner[13612]: (Flutter) flutter:           RenderConstrainedBox#4903a relayoutBoundary=up5 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.307591-0500  localhost Runner[13612]: (Flutter) flutter:           RenderParagraph#be4e9 relayoutBoundary=up5 NEEDS-PAINT
[        ] flutter:         RenderConstrainedBox#f871a relayoutBoundary=up4 NEEDS-PAINT
[        ] flutter:       RenderRepaintBoundary#2a880 relayoutBoundary=up3 NEEDS-PAINT
[        ] flutter:         RenderFlex#daa20 relayoutBoundary=up4 NEEDS-PAINT
[        ] flutter:           RenderConstrainedBox#4903a relayoutBoundary=up5 NEEDS-PAINT
[        ] flutter:           RenderParagraph#be4e9 relayoutBoundary=up5 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.307675-0500  localhost Runner[13612]: (Flutter) flutter:           RenderConstrainedBox#168ed relayoutBoundary=up5 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.307810-0500  localhost Runner[13612]: (Flutter) flutter:           RenderConstrainedBox#960a8 relayoutBoundary=up5 NEEDS-PAINT
[        ] [DEVICE LOG] 2018-10-25 14:46:57.307995-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#f697f relayoutBoundary=up3
[        ] [DEVICE LOG] 2018-10-25 14:46:57.308139-0500  localhost Runner[13612]: (Flutter) flutter:         RenderConstrainedBox#b508d relayoutBoundary=up4
[        ] flutter:           RenderConstrainedBox#168ed relayoutBoundary=up5 NEEDS-PAINT
[        ] flutter:           RenderConstrainedBox#960a8 relayoutBoundary=up5 NEEDS-PAINT
[        ] flutter:       RenderRepaintBoundary#f697f relayoutBoundary=up3
[        ] flutter:         RenderConstrainedBox#b508d relayoutBoundary=up4
[        ] [DEVICE LOG] 2018-10-25 14:46:57.308420-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#d737f relayoutBoundary=up3
[        ] [DEVICE LOG] 2018-10-25 14:46:57.308639-0500  localhost Runner[13612]: (Flutter) flutter:         RenderConstrainedBox#369b6 relayoutBoundary=up4
[        ] [DEVICE LOG] 2018-10-25 14:46:57.309010-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#e167c relayoutBoundary=up3
[        ] flutter:       RenderRepaintBoundary#d737f relayoutBoundary=up3
[        ] flutter:         RenderConstrainedBox#369b6 relayoutBoundary=up4
[        ] flutter:       RenderRepaintBoundary#e167c relayoutBoundary=up3
[        ] [DEVICE LOG] 2018-10-25 14:46:57.309243-0500  localhost Runner[13612]: (Flutter) flutter:         RenderFlex#f46ea relayoutBoundary=up4
[        ] [DEVICE LOG] 2018-10-25 14:46:57.309463-0500  localhost Runner[13612]: (Flutter) flutter:           RenderConstrainedBox#9bf29 relayoutBoundary=up5
[        ] [DEVICE LOG] 2018-10-25 14:46:57.309661-0500  localhost Runner[13612]: (Flutter) flutter:           RenderParagraph#4559e relayoutBoundary=up5
[        ] flutter:         RenderFlex#f46ea relayoutBoundary=up4
[        ] flutter:           RenderConstrainedBox#9bf29 relayoutBoundary=up5
[        ] flutter:           RenderParagraph#4559e relayoutBoundary=up5
[        ] [DEVICE LOG] 2018-10-25 14:46:57.309955-0500  localhost Runner[13612]: (Flutter) flutter:           RenderConstrainedBox#74612 relayoutBoundary=up5
[        ] [DEVICE LOG] 2018-10-25 14:46:57.310244-0500  localhost Runner[13612]: (Flutter) flutter:           RenderConstrainedBox#d8b8b relayoutBoundary=up5
[        ] [DEVICE LOG] 2018-10-25 14:46:57.310565-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#c21b0 relayoutBoundary=up3
[        ] [DEVICE LOG] 2018-10-25 14:46:57.310771-0500  localhost Runner[13612]: (Flutter) flutter:         RenderConstrainedBox#3051d relayoutBoundary=up4
[        ] flutter:           RenderConstrainedBox#74612 relayoutBoundary=up5
[        ] flutter:           RenderConstrainedBox#d8b8b relayoutBoundary=up5
[        ] flutter:       RenderRepaintBoundary#c21b0 relayoutBoundary=up3
[        ] flutter:         RenderConstrainedBox#3051d relayoutBoundary=up4
[        ] [DEVICE LOG] 2018-10-25 14:46:57.310922-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#8b55f relayoutBoundary=up3
[        ] [DEVICE LOG] 2018-10-25 14:46:57.311068-0500  localhost Runner[13612]: (Flutter) flutter:         RenderConstrainedBox#1ccc8 relayoutBoundary=up4
[        ] [DEVICE LOG] 2018-10-25 14:46:57.311225-0500  localhost Runner[13612]: (Flutter) flutter:       RenderRepaintBoundary#a8c53 relayoutBoundary=up3
[        ] [DEVICE LOG] 2018-10-25 14:46:57.311393-0500  localhost Runner[13612]: (Flutter) flutter:         RenderFlex#9bd17 relayoutBoundary=up4
[        ] [DEVICE LOG] 2018-10-25 14:46:57.311525-0500  localhost Runner[13612]: (Flutter) flutter:           RenderConstrainedBox#482bf relayoutBoundary=up5
[        ] flutter:       RenderRepaintBoundary#8b55f relayoutBoundary=up3
[        ] flutter:         RenderConstrainedBox#1ccc8 relayoutBoundary=up4
[        ] flutter:       RenderRepaintBoundary#a8c53 relayoutBoundary=up3
[        ] flutter:         RenderFlex#9bd17 relayoutBoundary=up4
[        ] flutter:           RenderConstrainedBox#482bf relayoutBoundary=up5
[        ] [DEVICE LOG] 2018-10-25 14:46:57.311685-0500  localhost Runner[13612]: (Flutter) flutter:   ...(descendants list truncated after 25 lines)
[        ] [DEVICE LOG] 2018-10-25 14:46:57.311878-0500  localhost Runner[13612]: (Flutter) flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════
[        ] flutter:   ...(descendants list truncated after 25 lines)
[        ] flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════

Analyzing flutter_test_2...
No issues found! (ran in 1.3s)

[✓] Flutter (Channel beta, v0.9.4, on Mac OS X 10.13.6 17G2307, locale en-US)
    • Flutter version 0.9.4 at /Users/scottdewald/Tools/flutter
    • Framework revision f37c235c32 (4 weeks ago), 2018-09-25 17:45:40 -0400
    • Engine revision 74625aed32
    • Dart version 2.1.0-dev.5.0.flutter-a2eb050044

[✓] Android toolchain - develop for Android devices (Android SDK 28.0.3)
    • Android SDK at /Users/scottdewald/Library/Android/sdk
    • Android NDK at /Users/scottdewald/Library/Android/sdk/ndk-bundle
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 10.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.0, Build version 10A255
    • ios-deploy 2.0.0
    • CocoaPods version 1.5.3

[✓] Android Studio (version 3.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 29.1.1
    • Dart plugin version 181.5656
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)

[✓] IntelliJ IDEA Community Edition (version 2018.2.5)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 29.1.3
    • Dart plugin version 182.4999

[✓] VS Code (version 1.28.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 2.19.0

[✓] Connected devices (1 available)
    • iPhone 6s • 6761ACC4-D0CD-474F-A6BA-C13BC11C8482 • ios • iOS 12.0 (simulator)

• No issues found!

This looks like it could be the same root cause as an issue I filed in https://github.com/flutter/flutter/issues/19245 , although in 19245 I have seen this on Android emulators as well as my Pixel 3 XL.  At least in 19245, there is an infinite loop in RenderShrinkWrappingViewport.performLayout stemming from floating point precision issues.  If your issue is in fact the same root cause, it would make sense that you could see this issue for only one specific widget size because the bug is sensitive to the specific numerical values for the pixels and pixel offsets.

Stumbled across this issue while running a SliverList with a SliverAppBar on Android.
Adding an epsilon comparison in sliver_list.dart where firstChildScrollOffset < 0.0 resolved it for me.
Replace:
final double firstChildScrollOffset = earliestScrollOffset - paintExtentOf(firstChild);
if (firstChildScrollOffset < 0.0) {

with:
T abs<T extends num>(T n){
  return (n < 0 ? -n : n);
}

int double_cmp(double lhs, double rhs){
  final diff = lhs - rhs;
  final eps = 10e-6;
  return (
    abs(diff) < eps
      ? 0
      : (diff < 0 ? -1 : 1)
  );
}

final double firstChildScrollOffset = earliestScrollOffset - paintExtentOf(firstChild);
if (double_cmp(firstChildScrollOffset, 0.0) < 0) {

Same for me, on android emu and iPhone emu
[✓] Flutter (Channel dev, v1.2.2, on Mac OS X 10.13.6 17G3025, locale en-DE)
• Flutter version 1.2.2 at /Users/../Documents/flutter
• Framework revision 007a415c2a (4 days ago), 2019-02-21 20:22:47 -0800
• Engine revision f1f19bba8f
• Dart version 2.2.0 (build 2.2.0-dev.2.1 c92d5ca288)
Error:
flutter: Another exception was thrown: A RenderViewport exceeded its maximum number of layout cycles.
This happens in a CustomScrollView.

@smiLLe can you please provide a minimal reproduction of your case?

@zoechi It happens randomly in a complex sliver list in my project. But it does only happen when i scroll to the top and reach the top of the list (The blue overscroll circle appears).
My layout looks like this:
Scaffold(
  appBar: MyAppBar(),
  drawer: MyAppDrawer(),
  child: CustomScrollView(slivers: [
    SliverList(), // SliverChildBuilderDelegate
    SliverList(), // SliverChildBuilderDelegate
  ],),
);

I will try to create a similar layout in a new project that i can share with you

I have the same problem too, I am testing the same app on both android and iOS, on IOS I am getting this error "A RenderViewport exceeded its maximum number of layout cycles." on on simulator and real physical device.

It also happened in my listview
      children: <Widget>[
        new Image(
          image: AssetImage('assets/banner.png'),
          fit: BoxFit.scaleDown,
        ),
        new Padding(padding: new EdgeInsets.only(top: 20.0)),
        new Container(
          height: 150.0,
          child: new ListView(
            padding: new EdgeInsets.only(left: 2.0),
            scrollDirection: Axis.horizontal,
            children: <Widget>[
              Container(
                decoration: new BoxDecoration(
                  color: const Color(0xFFaf5875),
                  borderRadius: new BorderRadius.all(Radius.circular(10.0))
                ),
                width: 150.0,
                margin: EdgeInsets.symmetric(horizontal: 10.0),
                child: new Column(
                  mainAxisSize: MainAxisSize.max,
                  children: <Widget>[
                    new Container(
                      padding: EdgeInsets.only(top: 30.0, bottom: 20.0),
                      child: new Center(
                          child: new Icon(BelsbeeIcon.iconfinder_7_463427, size: 60.0, color: Colors.white,)
                      ),
                    ),
                    new Text("CHOOSE A DRESS", style: TextStyle(fontFamily: 'Montserrat Medium', fontSize: 14.0, color: Colors.white70))
                  ],
                )
              ),
              Container(
                  decoration: new BoxDecoration(
                      color: const Color(0xFFaf5875),
                      borderRadius: new BorderRadius.all(Radius.circular(10.0))
                  ),
                  width: 150.0,
                  margin: EdgeInsets.symmetric(horizontal: 10.0),
                  child: new Column(
                    children: <Widget>[
                      new Container(
                        padding: EdgeInsets.only(top: 20.0, bottom: 20.0),
                        child: new Center(
                            child: new Icon(BelsbeeIcon.iconfinder_prince_princess_crown_queen_999767, size: 70.0, color: Colors.white,)
                        ),
                      ),
                      new Text("BE A QUEEN", style: TextStyle(fontFamily: 'Montserrat Medium', fontSize: 14.0, color: Colors.white70))
                    ],
                  )
              ),
              Container(
                  decoration: new BoxDecoration(
                      color: const Color(0xFFaf5875),
                      borderRadius: new BorderRadius.all(Radius.circular(10.0))
                  ),
                  width: 150.0,
                  margin: EdgeInsets.symmetric(horizontal: 10.0),
                  child: new Column(
                    children: <Widget>[
                      new Container(
                        padding: EdgeInsets.only(top: 30.0, bottom: 20.0),
                        child: new Center(
                            child: new Icon(BelsbeeIcon.iconfinder_logistic_shipping_vehicles_002_2563595, size: 50.0, color: Colors.white,)
                        ),
                      ),
                      new Text("EASY DELIVERY & RETURN", textAlign: TextAlign.center, style: TextStyle(fontFamily: 'Montserrat Medium', fontSize: 14.0, color: Colors.white70))
                    ],
                  )
              ),
            ],
          ),
        ),
        new Padding(padding: new EdgeInsets.only(top: 20.0)),
        new Container(
          child: new Column(
            children: <Widget>[
              new Container(
                decoration: new BoxDecoration(
                  borderRadius: BorderRadius.all(Radius.circular(5.0)),
                  color: Colors.yellow,
                  image: DecorationImage(
                      image: new AssetImage("assets/promo-1.jpg"),
                      fit: BoxFit.cover
                  )
                ),
                margin: EdgeInsets.symmetric(horizontal: 10.0),
                height: 100.0
              ),
              new Padding(padding: new EdgeInsets.only(top: 10.0)),
              new Container(
                margin: EdgeInsets.symmetric(horizontal: 10.0),
                height: 100.0,
                decoration: BoxDecoration(
                  borderRadius: BorderRadius.all(Radius.circular(5.0)),
                    image: new DecorationImage(
                      image: new AssetImage("assets/most-popular.jpg"),
                      fit: BoxFit.cover)
                ),
              ),
              new Padding(padding: new EdgeInsets.only(top: 10.0))
            ],
          )
        ),
        new Container(
          padding: new EdgeInsets.symmetric(horizontal: 10.0),
          child: new Row(
            mainAxisAlignment: MainAxisAlignment.spaceBetween,
            crossAxisAlignment: CrossAxisAlignment.start,
            children: <Widget>[
              new Column(
                children: <Widget>[
                  new Container(
                    margin: EdgeInsets.only(bottom: 10.0),
                    height: 200.0,
                    width: (width/2) - 15.0,
                    decoration: new BoxDecoration(
                        borderRadius: BorderRadius.all(Radius.circular(5.0)),
                        color: Colors.yellow
                    ),
                  )
                ],
              ),
              new Column(
                mainAxisSize: MainAxisSize.max,
                children: <Widget>[
                  new Container(
                    margin: EdgeInsets.only(bottom: 10.0),
                    height: 100.0,
                    width: (width/2) - 15.0,
                    decoration: new BoxDecoration(
                        borderRadius: BorderRadius.all(Radius.circular(5.0)),
                        color: Colors.yellow
                    ),
                  ),
                  new Container(
                    height: 300.0,
                    width: (width/2) - 15.0,
                    decoration: new BoxDecoration(
                        borderRadius: BorderRadius.all(Radius.circular(5.0)),
                        color: Colors.yellow
                    ),
                  )
                ],
              )
            ],
          ),
        ),
        new Container(
          height: 200.0,
          decoration: new BoxDecoration(
            color: Colors.yellow,
          ),
        )
      ],
    );

and this is the error generated whenever i reach bottom and scrolled to the top
flutter: The following assertion was thrown during performLayout():
flutter: A RenderViewport exceeded its maximum number of layout cycles.
flutter: RenderViewport render objects, during layout, can retry if either their slivers or their
flutter: ViewportOffset decide that the offset should be corrected to take into account information collected
flutter: during that layout.
flutter: In the case of this RenderViewport object, however, this happened 10 times and still there was no
flutter: consensus on the scroll offset. This usually indicates a bug. Specifically, it means that one of the
flutter: following three problems is being experienced by the RenderViewport object:
flutter:  * One of the RenderSliver children or the ViewportOffset have a bug such that they always think
flutter:    that they need to correct the offset regardless.
flutter:  * Some combination of the RenderSliver children and the ViewportOffset have a bad interaction such
flutter:    that one applies a correction then another applies a reverse correction, leading to an infinite
flutter:    loop of corrections.
flutter:  * There is a pathological case that would eventually resolve, but it is so complicated that it
flutter:    cannot be resolved in any reasonable number of layout passes.
flutter:
flutter: When the exception was thrown, this was the stack:
flutter: #0      RenderViewport.performLayout.<anonymous closure> (package:flutter/src/rendering/viewport.dart:1253:9)
flutter: #1      RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1273:6)
flutter: #2      RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1506:7)
flutter: #3      PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:765:18)
flutter: #4      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:270:19)
flutter: #5      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:674:13)
flutter: #6      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:208:5)
flutter: #7      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
flutter: #8      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
flutter: #9      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:842:5)
flutter: #10     _invoke (dart:ui/hooks.dart:139:13)
flutter: #11     _drawFrame (dart:ui/hooks.dart:128:3)
flutter:
flutter: The following RenderObject was being processed when the exception was fired:
flutter:   RenderViewport#34495 NEEDS-LAYOUT NEEDS-PAINT
flutter:   creator: Viewport ← _ScrollableScope ← IgnorePointer-[GlobalKey#3043a] ← Semantics ← Listener ←
flutter:   _GestureSemantics ← RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#01316] ←
flutter:   _ScrollSemantics-[GlobalKey#c3fff] ← Scrollable ← PrimaryScrollController ← ListView ←
flutter:   AnotherScreen ← ⋯
flutter:   parentData: <none> (can use size)
flutter:   constraints: BoxConstraints(0.0<=w<=320.0, 0.0<=h<=435.0)
flutter:   layer: OffsetLayer#455d0
flutter:   size: Size(320.0, 435.0)
flutter:   axisDirection: down
flutter:   crossAxisDirection: right
flutter:   offset: ScrollPositionWithSingleContext#73245(offset: 334.4, range: 0.0..704.8, viewport: 435.0,
flutter:   ScrollableState, AlwaysScrollableScrollPhysics -> BouncingScrollPhysics,
flutter:   BallisticScrollActivity#68a38(AnimationController#c4069(▶ 334.372; for BallisticScrollActivity)),
flutter:   ScrollDirection.forward)
flutter:   anchor: 0.0
flutter: This RenderObject had the following descendants (showing up to depth 5):
flutter:   RenderSliverPadding#a82c4 relayoutBoundary=up1 NEEDS-PAINT
flutter:     RenderSliverList#8666d relayoutBoundary=up2 NEEDS-PAINT
flutter:       RenderRepaintBoundary#c532e relayoutBoundary=up3 NEEDS-PAINT
flutter:         RenderSemanticsAnnotations#db9bd relayoutBoundary=up4 NEEDS-PAINT
flutter:           RenderImage#b69e6 relayoutBoundary=up5 NEEDS-PAINT
flutter:       RenderRepaintBoundary#061f7 relayoutBoundary=up3 NEEDS-PAINT
flutter:         RenderPadding#4f722 relayoutBoundary=up4 NEEDS-PAINT
flutter:       RenderRepaintBoundary#1e13a relayoutBoundary=up3 NEEDS-PAINT
flutter:         RenderConstrainedBox#ec0ee relayoutBoundary=up4 NEEDS-PAINT
flutter:           _RenderScrollSemantics#bc85e NEEDS-PAINT
flutter:       RenderRepaintBoundary#6ad16 relayoutBoundary=up3 NEEDS-PAINT
flutter:         RenderPadding#f64c6 relayoutBoundary=up4 NEEDS-PAINT
flutter:       RenderRepaintBoundary#c47ef relayoutBoundary=up3
flutter:         RenderFlex#f3822 relayoutBoundary=up4
flutter:           RenderPadding#74786 relayoutBoundary=up5
flutter:           RenderPadding#44b8b relayoutBoundary=up5
flutter:           RenderPadding#18e96 relayoutBoundary=up5
flutter:           RenderPadding#3ed60 relayoutBoundary=up5
flutter:       RenderRepaintBoundary#c5a6b relayoutBoundary=up3
flutter:         RenderPadding#46343 relayoutBoundary=up4
flutter:           RenderFlex#303c3 relayoutBoundary=up5
flutter:       RenderRepaintBoundary#46797 relayoutBoundary=up3
flutter:         RenderConstrainedBox#200fb relayoutBoundary=up4
flutter:           RenderDecoratedBox#5607c
flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════
flutter: Another exception was thrown: A RenderViewport exceeded its maximum number of layout cycles.
flutter: Another exception was thrown: A RenderViewport exceeded its maximum number of layout cycles.```

@zoechi  Here is the minimal code that will reproduce the issue, however it is happening not for any particular device, but for all devices.
When you scroll from top to bottom up to say index 25 and suddenly scroll back to the top (0th index) very fast, it shows the error.
Code
void main() => runApp(MaterialApp(home: HomePage()));

class HomePage extends StatefulWidget {
  @override
  _HomePageState createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text("Title")),
      body: ListView.builder(
        itemCount: 100,
        itemBuilder: (context, index) {
          if (index % 10 == 0) return Image.asset("assets/images/chocolate.png");
          return ListTile(title: Text("Item ${index}"));
        },
      ),
    );
  }
}

Trace

══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
I/flutter ( 4769): The following assertion was thrown during performLayout():
I/flutter ( 4769): A RenderViewport exceeded its maximum number of layout cycles.
I/flutter ( 4769): RenderViewport render objects, during layout, can retry if either their slivers or their
I/flutter ( 4769): ViewportOffset decide that the offset should be corrected to take into account information collected
I/flutter ( 4769): during that layout.
I/flutter ( 4769): In the case of this RenderViewport object, however, this happened 10 times and still there was no
I/flutter ( 4769): consensus on the scroll offset. This usually indicates a bug. Specifically, it means that one of the
I/flutter ( 4769): following three problems is being experienced by the RenderViewport object:
I/flutter ( 4769):  * One of the RenderSliver children or the ViewportOffset have a bug such that they always think
I/flutter ( 4769):    that they need to correct the offset regardless.
I/flutter ( 4769):  * Some combination of the RenderSliver children and the ViewportOffset have a bad interaction such
I/flutter ( 4769):    that one applies a correction then another applies a reverse correction, leading to an infinite
I/flutter ( 4769):    loop of corrections.
I/flutter ( 4769):  * There is a pathological case that would eventually resolve, but it is so complicated that it
I/flutter ( 4769):    cannot be resolved in any reasonable number of layout passes.
I/flutter ( 4769):
I/flutter ( 4769): When the exception was thrown, this was the stack:
I/flutter ( 4769): #0      RenderViewport.performLayout.<anonymous closure> (package:flutter/src/rendering/viewport.dart:1255:9)
I/flutter ( 4769): #1      RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1275:6)
I/flutter ( 4769): #2      RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1519:7)
I/flutter ( 4769): #3      PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:766:18)
I/flutter ( 4769): #4      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:336:19)
I/flutter ( 4769): #5      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:701:13)
I/flutter ( 4769): #6      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:275:5)
I/flutter ( 4769): #7      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1008:15)
I/flutter ( 4769): #8      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:948:9)
I/flutter ( 4769): #9      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:860:5)
I/flutter ( 4769): #13     _invoke (dart:ui/hooks.dart:219:10)
I/flutter ( 4769): #14     _drawFrame (dart:ui/hooks.dart:178:3)
I/flutter ( 4769): (elided 3 frames from package dart:async)
I/flutter ( 4769):
I/flutter ( 4769): The following RenderObject was being processed when the exception was fired:
I/flutter ( 4769):   RenderViewport#c5af6 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 4769):   creator: Viewport ← IgnorePointer-[GlobalKey#c767e] ← Semantics ← Listener ← _GestureSemantics ←
I/flutter ( 4769):   RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#d7d1d] ← Listener ← _ScrollableScope
I/flutter ( 4769):   ← _ScrollSemantics-[GlobalKey#9399b] ← RepaintBoundary ← CustomPaint ← RepaintBoundary ← ⋯
I/flutter ( 4769):   parentData: <none> (can use size)
I/flutter ( 4769):   constraints: BoxConstraints(0.0<=w<=360.0, 0.0<=h<=512.0)
I/flutter ( 4769):   layer: OffsetLayer#9cd7e
I/flutter ( 4769):   size: Size(360.0, 512.0)
I/flutter ( 4769):   axisDirection: down
I/flutter ( 4769):   crossAxisDirection: right
I/flutter ( 4769):   offset: ScrollPositionWithSingleContext#d5cbe(offset: 342.9, range: 0.0..5823.2, viewport: 512.0,
I/flutter ( 4769):   ScrollableState, AlwaysScrollableScrollPhysics -> ClampingScrollPhysics,
I/flutter ( 4769):   BallisticScrollActivity#e6a89(AnimationController#f6b9b(▶ 342.913; for BallisticScrollActivity)),
I/flutter ( 4769):   ScrollDirection.forward)
I/flutter ( 4769):   anchor: 0.0
I/flutter ( 4769): This RenderObject had the following descendants (showing up to depth 5):
I/flutter ( 4769):   RenderSliverPadding#f6e3a relayoutBoundary=up1 NEEDS-PAINT
I/flutter ( 4769):     RenderSliverList#ab244 relayoutBoundary=up2 NEEDS-PAINT
I/flutter ( 4769):       RenderIndexedSemantics#4fe73 relayoutBoundary=up3 NEEDS-PAINT
I/flutter ( 4769):         RenderRepaintBoundary#53f7b relayoutBoundary=up4 NEEDS-PAINT
I/flutter ( 4769):           RenderSemanticsAnnotations#18e63 relayoutBoundary=up5 NEEDS-PAINT
I/flutter ( 4769):       RenderIndexedSemantics#187ad relayoutBoundary=up3 NEEDS-PAINT
I/flutter ( 4769):         RenderRepaintBoundary#7ac1b relayoutBoundary=up4 NEEDS-PAINT
I/flutter ( 4769):           RenderSemanticsGestureHandler#20bc8 relayoutBoundary=up5 NEEDS-PAINT
I/flutter ( 4769):       RenderIndexedSemantics#6b21c relayoutBoundary=up3 NEEDS-PAINT
I/flutter ( 4769):         RenderRepaintBoundary#30ac8 relayoutBoundary=up4 NEEDS-PAINT
I/flutter ( 4769):           RenderSemanticsGestureHandler#6937b relayoutBoundary=up5 NEEDS-PAINT
I/flutter ( 4769):       RenderIndexedSemantics#c8fb8 relayoutBoundary=up3 NEEDS-PAINT
I/flutter ( 4769):         RenderRepaintBoundary#8fad9 relayoutBoundary=up4 NEEDS-PAINT
I/flutter ( 4769):           RenderSemanticsGestureHandler#1f314 relayoutBoundary=up5 NEEDS-PAINT
I/flutter ( 4769):       RenderIndexedSemantics#89d5d relayoutBoundary=up3 NEEDS-PAINT
I/flutter ( 4769):         RenderRepaintBoundary#70212 relayoutBoundary=up4 NEEDS-PAINT
I/flutter ( 4769):           RenderSemanticsGestureHandler#43a1c relayoutBoundary=up5 NEEDS-PAINT
I/flutter ( 4769):       RenderIndexedSemantics#4ca93 relayoutBoundary=up3 NEEDS-PAINT
I/flutter ( 4769):         RenderRepaintBoundary#92403 relayoutBoundary=up4 NEEDS-PAINT
I/flutter ( 4769):           RenderSemanticsGestureHandler#8a024 relayoutBoundary=up5 NEEDS-PAINT
I/flutter ( 4769):       RenderIndexedSemantics#bce23 relayoutBoundary=up3
I/flutter ( 4769):         RenderRepaintBoundary#c7825 relayoutBoundary=up4
I/flutter ( 4769):           RenderSemanticsGestureHandler#d73cb relayoutBoundary=up5
I/flutter ( 4769):       RenderIndexedSemantics#71566 relayoutBoundary=up3
I/flutter ( 4769):         RenderRepaintBoundary#46023 relayoutBoundary=up4
I/flutter ( 4769):           RenderSemanticsGestureHandler#e1c80 relayoutBoundary=up5
I/flutter ( 4769):       RenderIndexedSemantics#fb467 relayoutBoundary=up3
I/flutter ( 4769):         RenderRepaintBoundary#5a3e1 relayoutBoundary=up4
I/flutter ( 4769):           RenderSemanticsGestureHandler#7c6a2 relayoutBoundary=up5
I/flutter ( 4769): ════════════════════════════════════════════════════════════════════════════════════════════════════

It looks like this is caused by double precision error. If we have certain height of widget in sliver list, the way we calculate layout offset of children will introduce some double precision error. Later when we scroll all the way to top, we will try to correct the error by shifting the scroll offset even if it is so tiny and does not really need to be corrected (~2e-14).
Most of the time it is correctable, but some times it fail to do so due to precision error in double operation(again...)
for example iphone 6s
corrected_scrollofset = scrolloffset + correction
if scrolloffset =<PHONE_NUMBER>697789 and correction = 0.00000000000002842170943040401
Then the scrolloffset does not change after correction due to precision error.
258.8489087697789 + 0.00000000000002842170943040401  =<PHONE_NUMBER>697789
Thus, it stuck on an infinite update loop.
I think there is nothing we can do to the floating operation error. This is more like a hardware limitation. The thing we can do is try to find a way to work around this issue. I will put up a pr shortly with possible fix.


Migrating skills (new)

This work extends what @gvwilson did in #360.
I'm submitting it separately because Greg's on holiday.
This is WIP: tests are missing for the upgrading profiles command.
The test run of this command on the data we gathered is promising, ie. most entries that were unable to add lay into one of these categories:

airport doesn't exist in our DB
user is not an instructor in our DB
user changed their email and provided a different name

@wking awaiting your feedback :-)

Merging. We will rework this if it doesn't do what Greg intends.


Supply public_updated_at for draft editions

Currently, Whitehall can't publish draft editions because they don't have a public_timestamp.

:+1:


black formatting + finished bidded-task api

Added route that returns a list of TASKS but with the bidded price added, can easily use with TaskCard
I'm surprised that black was never ran on the backend code??
<TaskCard
              key={index}
              title={task.title}
              category={task.category}
              date={task.date}
              location={task.location}
              duration={task.duration}
              estimatePrice={task.estimatePrice}
              myOfferPrice={task.offered_price}   // PUT NEW FIELD HERE!!
              onClick={() => router.push(`/bidder/market/${task.task_id}`)}
            />

http://localhost:8000/api/app/users/10/bidded-tasks
Related issue

Resolve #167

got a bunch of complaints from flake8 about lines being too long probably because I ran black. I'm not changing :)

Pls check if there is conflict with your idea @yunho7687. I'm not that good with backend

We can just merge one of the branches and let Github/Git highlight the merge conflict, manually checking takes too much time


npm package issue

This looks cool and great job so far. I tried running npm i angular-material-fileupload
It installed fine but when i tried to compile it showed:

@nishantmc
I tried the patch but the problem still exist for me.
For the Full build the error remain the same ( npm run build:client-and-server-bundles):
ERROR in Error: Unexpected value 'MatFileUploadModule in C:/Users/RyanKall/WebstormProjects/project/node_modules/angular-material-fileupload/index.d.ts' imported by the module 'AppModule in
 C:/Users/RyanKall/WebstormProjects/project/src/app/app.module.ts'. Please add a @NgModule annotation.

I added you to my project so if you like to send me any updated I can just pull and run it.

Hi Ryan,
The steps i followed to test the app are

Clone example project
git apply patch.txt
npm install
npm start

I had a backend app running to which is the upload api. I tried just now and it works fine.
I tried the cmd npm run build:client-and-server-bundles, but yes it fails with the same error. I haven't used angular cli so not very sure abt the issue. I always use webpack to build the projects.

Also i pushed the patch to example repo so you can just pull the latest and try it.

@nishantmc This seems to be an angular universal error. we can close this issue. Thank you.

Have either of you identified a work around?

Justin, i think this issue is due to version conflicts between angular packages. https://github.com/ryankall/example is a working version. can you compare the packages in that repo with yours? I will be revisiting the dependent packages for angular-material-fileupload in some time. Will update on this.


PROTOCOL: Add methods for managing wallet (v4r2) plugins/subscriptions

Subscription contracts are unusable within web app based on TON Connect 2.
There is no way to add a plugin to wallet, nor to remove it.
I want a method connector.deployAndAddPlugin to be available. It must accept plugin stateInit (so that subscription code is not unnecessarily fixed), its workchain, amount of funds to send there, etc (like in TonWeb) + optionally wallet address, so that subscription is not activated on the wrong account.
Optionally, methods connector.addPlugin, connector.deletePlugin, etc could be added as well.
These methods are crucially important for plugins usage. I'd be grateful if they are added before the end of current Hack-a-TONx.

The use case is linked to my project https://github.com/ProgramCrafter/ratelance/.
The platform needs to take stakes from freelancers because otherwise they could lock job poster's money in multisig smart contract forever, and now they'll lock their own money as well.
However, taking stake at the very beginning is not very nice: what if job poster does not accept offer? That's why it's needed to be able to withdraw money at the moment when job poster accepts the offer. This is exactly what v4 wallet plugins offer.

Hi @ProgramCrafter , thanks for the contribution. This functionality is really important, but its implementation requires careful preparation so that the use of the plugin is safe for the user. We plan to add this functionality in the future.


🐞 - fieldset with disabled='true' property - some components not blocked properly

Playground Link
https://stackblitz.com/edit/angular-xkxliq-5eemvz?file=src%2Fapp%2Fapp.component.html
Description
When using  tag in angular form to blog components on the form, some components are not blocked properly.
I faced with that problem when using thouse components:
tui-input-date (I think all date could have that problem):
field - component is blocking, but buttons (change date, clean date) not blocked. Example

tui-files - component is blocking, buttons also disabled (add, remove), but when drag-and-droping something on form - it works. Example
Angular version
12.2.17
Taiga UI version
3.57.0
Which browsers have you used?

[X] Chrome
[ ] Firefox
[ ] Safari
[X] Edge

Which operating systems have you used?

[ ] macOS
[X] Windows
[ ] Linux
[ ] iOS
[ ] Android

Since internal structure would heavily change, let's move this issue to 4.0. Probably a fix would be just xxx:disabled ~ * { pointer-events: none; }

Also
*:disabled label[tuiInputFiles] {
    pointer-events: none;
}

to InputFiles


Text overlapping in "Top View" window

Text overlapping only appears for "Northern Hemisphere" option.

The problem is that the artists element accumulate. This needs a better solution than this.
diff --git a/mslib/msui/mpl_map.py b/mslib/msui/mpl_map.py
index ae24365e..4000128c 100644
--- a/mslib/msui/mpl_map.py
+++ b/mslib/msui/mpl_map.py
@@ -135,6 +135,8 @@ class MapCanvas(basemap.Basemap):

         # Print CRS identifier and project name into figure.
         if self.crs is not None and self.project_name is not None:
+            for txt in self.ax.figure.texts:
+                txt.set_visible(False)
             self.crs_text = self.ax.figure.text(0, 0, f"{self.project_name}\n{self.crs}")
         else:
             # Print only CRS identifier into the figure.

Mmmh.
This is new. I need to find out first, why this happens now and not before.

OK, we introduced a bug when we added the project name to it. I will prepare a fix.


Java extractor: short-circuit failure when not given any source files [phab:D705]

Created by schroederc at 2016-02-11 18:00:25:
The extractor would fail either way; this just does it faster with less stack trace barf.
NOTE: I had problems with the arcanist integration (arc unit was testing Docker builds) so I fixed that in the same change.

zarko accepted this revision at 2016-02-11 18:07:22

schroederc closed via commit a187dd71afe5b5b81fb28f6f966f092941b20d85 at 2016-02-11 18:11:54


🔍 feat(lld): track Ledger keyring activation/deactivation on LLM

✅ Checklist

[x] npx changeset was attached.
[ ] Covered by automatic tests.
[ ] Impact of the changes:

...

📝 Description
Track users creating and joining a Ledger keyring on LLM.
ledgersync_activated: Device flow
https://github.com/user-attachments/assets/c533dd6c-9db6-4330-998d-205739423561
ledgersync_activated: QR code flow
https://github.com/user-attachments/assets/32390080-1f68-4146-99b6-19b697239ffe
ledgersync_deactivated: Removed by another LL
https://github.com/user-attachments/assets/df1393c4-bd93-4c20-af75-d60f1ef9769f
ledgersync_deactivated: Delete keyring
https://github.com/user-attachments/assets/b9f63fa9-78da-434a-9ac0-21d4d058a975

❓ Context

LIVE-14621

🧐 Checklist for the PR Reviewers

The code aligns with the requirements described in the linked JIRA or GitHub issue.
The PR description clearly documents the changes made and explains any technical trade-offs or design decisions.
There are no undocumented trade-offs, technical debt, or maintainability issues.
The PR has been tested thoroughly, and any potential edge cases have been considered and handled.
Any new dependencies have been justified and documented.
Performance considerations have been taken into account. (changes have been profiled or benchmarked if necessary)

general question (it may be out of this ticket scope): walletSync hooks are not tested ? if yes why not adding specific tests for the tracking process ? thanks

LGTM ! don't forget the CC pattern in your commit message.

Nice catch I definitely would have forgotten!


🐞 - [BUG] Compile type error while using *tuiLet

Which @taiga-ui/* package(s) are the source of the bug?
cdk
Please provide a link to a minimal reproduction of the bug
https://taiga-ui.dev/components/table#server
Description
Getting a type error while trying to use *tuiLet. Because null slips into the data

Expected behavior
*tuiLet="...$ | async as data" is returned a correct type.
Any help appreciated
Angular version
13.2.0
Taiga UI version
2.31.0
Which browsers have you used?

[X] Chrome
[ ] Firefox
[ ] Safari
[ ] Edge

Which operating systems have you used?

[X] macOS
[ ] Windows
[ ] Linux
[ ] iOS
[ ] Android

That is expected. Async pipe adds null to the type because before the first data emit the value it uses its null. You should use *ngIf there, *tuiLet is for the cases where you need falsy values as well.


Add validation for tags > 100 characters

Fixes #4935

Here I guess https://github.com/rtfd/readthedocs.org/blob/5636eb3b6987a238244744f84198029ff901753c/readthedocs/rtd_tests/tests/test_project_forms.py#L37-L37

Something went wrong from my side.
I am closing this issue.
Will make a new one.


Duplicate element in linkedlist

Hello nkons,
I have a question about LinkedList in
https://github.com/nkons/r2rml-parser/blob/70257775a56f337530cbc508f7fca2d6a75dc620/src/main/java/gr/seab/r2rml/beans/Parser.java#L117-L132
If there are some predicateObjectMappings in one LogicalTableMapping, there will be many duplicate element in linkedlist first or second.
So will these duplicate elements be parsed twice or more in the below loop?
https://github.com/nkons/r2rml-parser/blob/70257775a56f337530cbc508f7fca2d6a75dc620/src/main/java/gr/seab/r2rml/beans/Generator.java#L189
Thank you very much!

Hi,
Thanks for your question.
Not sure I understand it though; did you run in and noticed that duplicates were generated? If so, could you please share your input data?
Is the question about what processing takes place in memory? If so, then in the second loop, there is only a getter; no additional processing takes place.
Also to mention that the lists first and second have no duplicates as the former contains predicate object maps for which RefObjectMap is not null, and the latter the ones for which RefObjectMap is null.
Did this answer your question? Happy to dig deeper if needed.
Best,
Nikos

Hi Nikos,
I am sorry for my bad description.
Imagining that we have this r2rml material:
`
@prefix rr: http://www.w3.org/ns/r2rml#.
@prefix xsd: http://www.w3.org/2001/XMLSchema#.
@prefix ex: http://example.com/ns#.
ex:TriplesMap_Dept
rr:logicalTable [ rr:tableName "DEPT_CN" ];
rr:subjectMap [
rr:template "http://data.example.com/department/{DEPTNO}";
rr:class ex:Department;
];
rr:predicateObjectMap [
rr:predicate ex:deptNum;
rr:objectMap [ rr:column "DEPTNO" ; rr:datatype xsd:integer ];
];
rr:predicateObjectMap [
rr:predicate ex:deptName;
rr:objectMap [ rr:column "DNAME" ; rr:language "zh-cn" ];
];
rr:predicateObjectMap [
rr:predicate ex:deptLocation;
rr:objectMap [ rr:column "LOC" ; rr:language "zh-cn" ];
].
ex:TriplesMap_Emp
rr:logicalTable [ rr:tableName "EMP_CN" ];
rr:subjectMap [
rr:template "http://data.example.com/employee/{EMPNO}";
rr:class ex:Employee;
];
rr:predicateObjectMap [
rr:predicate ex:empNum;
rr:objectMap [ rr:column "EMPNO" ; rr:datatype xsd:integer ];
];
rr:predicateObjectMap [
rr:predicate ex:empName;
rr:objectMap [ rr:column "ENAME" ; rr:language "zh-cn" ];
];
rr:predicateObjectMap [
rr:predicate ex:jobType;
rr:objectMap [ rr:column "JOB" ; rr:language "zh-cn" ];
];
rr:predicateObjectMap [
rr:predicate ex:worksForDeptNum;
rr:objectMap [ rr:column "DEPTNO" ; rr:dataType xsd:integer ];
];
rr:predicateObjectMap [
rr:predicate ex:worksForDept;
rr:objectMap [
rr:parentTriplesMap ex:TriplesMap_Dept ;
rr:joinCondition [ rr:child "DEPTNO"; rr:parent "DEPTNO" ]]].
`
According to the first loop, every rr:predicateObjectMap for which RefObjectMap is null will make its LogicalTableMapping be added into the first linkedlist.
In our example, ex:TriplesMap_Dept will be added into the first linkedlist three times because there are three rr:predicateObjectMap for which RefObjectMap is null. ex:TriplesMap_Emp will be added into the first linkedlist four times and be added into second linkedlist once because there are four rr:predicateObjectMap for which RefObjectMap is null and one rr:predicateObjectMap is not null.
And I confirmed by add a  break-point at end of first loop to watch elements in the first linkedlist.
Is that correct?
And I also confirmed that if there is only one Jena RDF result model across all process, duplicates in linkedlist will not cause any more triples but I try to use multiple model to reduce memory usage which will make duplicates in linkedlist parsed twice or more.
If there are any unclear descriptions, please question me. Thank you very much!
Jason


New Snap Chat _swirlyfilter

Created a New SnapChat Filter - Swirly Glasses
Fixes: #1421
Proposed Changes

A new addition to the snap chat filters of this repo

Additional Info

Used - Python Language, OpenCV
Haar Cascade Classifier

Screenshots

Original
Updated

original screenshot | **updated screenshot **|

created a new and basic snapchat filter.
It adds a swirly glass on the face of the user.
Used OpenCV and Haar Cascade Classifier for the filter.
For Code -

importing the necessary libs and the filters' png file
loading the haarcascade classifier file for frontal face region
reading the video stream
converting the frame to grayscale
applying it on the facial region by transparent overlay
displaying the resultant frame.

Have added the ReadMe.md for the code

added the swirly filter files in the Snapchat_Filter folder.

do I directly add the contents in the Snapchat folder of this repo or wait for this PR to be merged.

Hey, I am SSOC'23 contributer and want to work on this issue. Pleases assign it to me.

@Raksha703 assigned

added a file. Please check!


libinput configuration?

I wrote the initial libinput config for sway. I don't like writing C and was thinking about contributing similar functionality here so that I can compare the dev experience of Rust and C for a small contribution to an existing OSS project.
Is this something of interest? Any ideas on how you might want to see it implemented? Seems like you write the core functionality in Rust and then it's exposed with lua for configuration...
I think it should be straightforward since this also uses wlc like sway.

Looks like there'd be work to do here too: https://github.com/Immington-Industries/rust-wlc/blob/master/src/input.rs

That'd be awesome, lib input configuration has been one of those things that slipped through the cracks since we are such a small development team.
input.rs is just a thin wrapper over the functions exposed by wlc (like the rest of wlc). We are planning to split it up into two crates actually: one that wraps C, the other that makes it more rust friendly (and hides all those pesky lazy statics).
That's a ways off however, so any changes you need to make rust-wlc side feel free to put it there and we can split it up later.
For configuration we do use Lua, and it's super simple to add new values that Way Cooler can read. If you need any help working with anything (docs are a bit scarce) feel free to ping us on the gitter chat

Just a quick heads up, because I am not sure, if you kept track of smithay's and input.rs' progress.
libinput bindings are done and you should be able to use them (especially this) to handle wlcs libinput device pointer and make configuration easily available.
I would actually love to get some testing and feedback out of this as I am not sure if I will implement this in fireplace and/or wlc.rs soon, because I am quite busy working on smithay.

@Drakulix Thanks for the heads up, I've been keeping an eye on smithay, but not as close of an eye on input.rs. I'll take a look at that sometime later (@colemickens feel free to take a look as well if you're still interested in doing tihs)


Fixed GPU usage on Windows

Issue #, if available:
#1127
Description of changes:

Hopefully fixes issues with GPU not being detected on Windows.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-1255-1 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1255/1/index.html

Job PR-1255-3 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1255/3/index.html


Performance Issues [FPS] on a new laptop.

Hi, my Runelite client’s FPS drops from 50 to 20-30 most of the time when I go to instances such as CoX, or even when I zoom out of my poh. I am using the GPU function with 40 render distance and AA off. My friends who also use this client don’t experience issues like these with much lower specs for their system.
My CPU is 9th gen i7-9750H, GPU is RTX2070 8gb, RAM is 16gb ddr4, and my Runelite is installed in my SSD.
When I open my taskbar, I can see Runelite only consuming around 15-20% of my computers power. I have also made sure to set my laptops power mode to high performance. I have also disabled the G-SYNC function of the monitor to increase my fps in other games.
Is there any way to optimize/fix my game so that it stays at 50fps consistently?
Thank you!

Make sure you're using your Nvidia GPU for your java application as laptop tends to run Java on the integrated GPU instead.

Join us at https://runelite.net/discord in the #support channel so we can fix this issue for you.

Join us at https://runelite.net/discord in the #support channel so we can fix this issue for you.


Flashy: Custom icon component error

Here I am again :)
Bug
When I try to use a custom icon component, it simply gives me this error.

Environment info

Library
Version

@gorhom/animated-tabbar
1.5.1

react-native
0.61.5

react-native-reanimated
1.9.0

react-native-gesture-handler
1.6.1

react-native-svg
12.1.0

Steps To Reproduce
You can even use react-native-vector-icons. It works below 1.5.1 but not works on 1.5.1.
import Icon from "react-native-dynamic-vector-icons";

Upcoming: {
    labelStyle: {
      color: "#faeb5b",
    },
    icon: {
      component: (
        <Icon name="energy" type="SimpleLineIcons" size={20} color="#faeb5b" />
      ),
      color: "rgba(230,169,25,0.8)",
    },
  },

Describe what you expected to happen:

I would like to use custom icon component for flashy preset.

Hi @WrathChaos,
looking at its type, it should be
React.FC<FlashyTabIconProps> | React.ComponentClass<FlashyTabIconProps>
this should work 👇
icon: (props) => <Icon name="energy" type="SimpleLineIcons"  {...props} />

Thank you so much! It works with this way :)


Tile picker/eyedropper does not work with emulate 3 button mouse enabled

It of course works with emulate 3 button mouse off, but it would be nice to be able to use both

Fixed in v0.8.0


Problems accessing azure event hub via python script

I am getting http error 404. I am able to access the site via telnet which eliminates network issues. Here is the code and subsequent errors
user/bin/python
import sys
import azure
import socket
from azure.servicebus import (
_service_bus_error_handler
)
from azure.servicebus.servicebusservice import (
ServiceBusService,
ServiceBusSASAuthentication
)
from azure.http import (
HTTPRequest,
HTTPError
)
from azure.http.httpclient import _HTTPClient
class EventHubClient(object):
def sendMessage(self,body,partition):
eventHubHost = "pac-ns.servicebus.windows.net"
httpclient = _HTTPClient(service_instance=self)

sasKeyName = "pac-pl"
sasKeyValue = "IhkEepQPLfSy9jo6H2Yxxxxxxxxxxxxxxxxxxxx="

authentication = ServiceBusSASAuthentication(sasKeyName,sasKeyValue)

request = HTTPRequest()
request.method = "POST"
request.host = eventHubHost
request.protocol_override = "https"

request.path = "/myhub/publishers/" + partition + "/messages?api-version=20
14-05"
request.body = body
request.headers.append(('Content-Type', 'application/atom+xml;type=entry;cha
rset=utf-8'))
authentication.sign_request(request, httpclient)

request.headers.append(('Content-Length', str(len(request.body))))

status = 0
try:
    resp = httpclient.perform_request(request)
    status = resp.status
except HTTPError as ex:
    status = ex.status

return status

class EventDataParser(object):
def getMessage(self,payload,sensorId):
host = socket.gethostname()
body = "{ "DeviceId" : "" + host + "","SensorData": [ "
msgs = payload.split(",")
first = True

for msg in msgs:
# print msg
  sensorType = msg.split(":")[0]

sensorValue = msg.split(":")[1]
if first == True:
first = False
else:
body += ","
  body += "{ \"SensorId\" : \"" + sensorId + "\", \"SensorType\" : \"" + sen

sorType + "", "SensorValue" : " + sensorValue + " }"
body += "]}"
return body

hubClient = EventHubClient()
parser = EventDataParser()
hostname = socket.gethostname()
sensor = sys.argv[2]
body = parser.getMessage(sys.argv[1],sensor)
hubStatus = hubClient.sendMessage(body,hostname)
return the HTTP status to the caller
print hubStatus
print hostname
print sensor
~/IOT/AZURE$ python send.py temperature:22,humidity:20 deviceid
404
ubuntu
deviceid
{ "DeviceId" : "ubuntu","SensorData": [ { "SensorId" : "deviceid", "SensorType" : "temperature", "SensorValue" : 22 },{ "SensorId" : "deviceid", "SensorType" : "humidity", "SensorValue" : 20 }]}

My changes that add some event hub functionality to ServiceBusService have been merged into master. You may want to try that out, see if that works for you.

You need to replace "myhub" within the line "request.path = "/myhub/publishers/" + partition + "/messages?api-version=20" with your actual event hub name within the namespace.


How to insert introduction to generated api docs

Is this a BUG REPORT or FEATURE REQUEST?:
/kind feature
What you expected to happen:
Before to use api, user need to known about general information, like
how to Authentication.

Write your description to nirvana.yaml.

Write to description ? I may be write more than one paragraph.

May be like https://docs.docker.com/engine/api/v1.25/ to provide multiple section, example: Errors, Versioning and Authentication.

YAML supports multi-lines string:
description: |
  Write your description here.
  This is the second paragraph.

/kind support

I'm refer to https://github.com/Rebilly/ReDoc/blob/master/demo/swagger.yaml, but line start with # can not display as a heading, it just display as origin.
description: |
  The description here.
  # Introduction
  The introduction here.

I have notice that the new line of description which in nirvana.yaml have been generated as \u003cbr/\u003e (
).
If i change the new line of generated openapi spec json from
 to \n, then # introduction can display heading correctly.

https://github.com/caicloud/nirvana/blob/e559644a421467a6d682b8d3cd056c974f9cee77/utils/generators/swagger/generator.go#L529-L531
@kdada Why replace \n to
 ?

@wutzx
If not escape newline, two line will be merged into one line in markdown.

/kind bug

It can use html syntax if not remove escape newline, for example: use
Introduction
 to replace # Introduction.
It make sense to use  instead of `` in go source code.


Subversion plugin error

 ______________________________
/        \_______   \__    ___/ The OSS Review Toolkit, version 7.0.0-044.sha.bb742aa.
|    |   | |       _/ |    |
|    |   | |    |   \ |    |    Running 'scan' as 'remi' under Java <IP_ADDRESS> on Linux
\________/ |____|___/ |____|    with 8 CPUs and a maximum of 8944 MiB of memory.

Environment variables:
ORT_CONFIG_DIR = /home/remi/.ort/config
ORT_DATA_DIR = /home/remi/.ort
SHELL = /bin/bash
TERM = xterm-256color
JAVA_HOME = /usr/lib/jvm/java-11-openjdk-amd64

Looking for ORT configuration in the following file:
        /home/remi/.ort/config/config.yml

Scanning projects with:
        ScanCode (version 32.0.8)
Scanning packages with:
        ScanCode (version 32.0.8)
13:45:52.107 [DefaultDispatcher-worker-22] WARN  org.ossreviewtoolkit.plugins.versioncontrolsystems.subversion.Subversion - Failed to update the Subversion working tree at '/tmp/ort-DefaultWorkingTreeCache4751869421360972206' to revision 'trunk':
SVNException: svn: E160005: Target path '/commons/proper/cli/trunk' does not exist
svn: E175002: REPORT of '/repos/asf/!svn/vcc/default': 500 Internal Server Error (http://svn.apache.org)

System:
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.3 LTS"

ORT installed using
./gradlew installDist

This doesn't look like an error in ORT, but like something caused by a package pointing to an invalid / outdated Subversion URL. You probably need to create a package curation for that package, pointing at the correct URL.
Try running the scanner with --info (like ort --info scan ...) to see the URL causing the problem. If you also cannot clone from that URL manually, it's not ORT's fault.

So, judging from your other issue with more info, the offending package is commons-cli:

13:59:23.115 [main] WARN  org.ossreviewtoolkit.downloader.vcs.Subversion - Failed to update the Subversion working tree at '/tmp/ort-ScanCode1571366875593154323/Maven/commons-cli/commons-cli/1.4' to revision 'trunk':
SVNException: svn: E160005: Target path '/commons/proper/cli/trunk' does not exist
svn: E175002: REPORT of '/repos/asf/!svn/vcc/default': 500 Internal Server Error (http://svn.apache.org)

A quick research shows that common-cli as moved from Subversion to Git by now, but the metadata of release 1.4 still points to Subversion.
As we cannot change metadata for artifacts published in the past, you need to use a package curation as outlined above.


ci(gh actions release workflow): Modified the description of skipEcosystemTestsChecks for wording simplicity

While performing the release yesterday, we figured that the wording of one of the workflows step was a bit "complex".
This is a small PR to simplify that.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Alexander Polanco seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


NavigateToUrl is incorrectly looking for file.

Summary
NavigateToUrl method is incorrectly looking for file instead of navigating to given url.
How to reproduce
Platform: Windows 10 x64
Framework: netcoreapp3.1
Version:
<PackageReference Include="WebWindow" Version="0.1.0-20200214.10" />

Code:
var webWindow = new WebWindow("Test");
webWindow.NavigateToUrl("https://www.google.com");
webWindow.WaitForExit();

Expected result: Window will show page from domain: www.google.com
Actual result:

Same issue.


RFC:  Replace IP-Law course

Problem:
Due to ongoing global events Intellectutal Property Law course by St. Petersburg on Coursera has been discontinued.
Duration:
April 08, 2022
Background:
Intellectual Property Law course in Digital age by St. Petersburg on Coursera has been discountinued but an equally good course has been found to replace it.
Introduction to Intellectual Property by UPenn which has really good reviews
The course matches the CS2013 standards regarding Intellectual Property i.e, to introduce philosophical foundations of intellectual property. And will also introduce to major forms of intellectual property protection in the United States - copyright, trademarks, and patents, as well as alternative forms of intellectual property protection as prescribed by CS2013.
Proposal:
Replace the IP-Law course Introduction to Intellectual Property. Respective Pull Request #1004
Alternatives:
An Alternative can be Intellectual Property for Entrepreneurs

Relevant page in CS2013:
https://www.acm.org/binaries/content/assets/education/cs2013_web_final.pdf#page=200
This looks like a good replacement. I'm in favor.

Its high time we should replace the broken course #1032 also mentions the same. Introduction to Intellectual Property Law is the best course to replace the previous one.

I agree! Thanks @aayushsinha0706 for the original work to identify this replacement and for noting that this change had not yet been merged. Always feel free to mention when an RFC's comment period has completed!
Resolved by #1004


Front-end - Links - create nav links

Use Angular ui-sref to link to new views

could handle different views using ng routes as well


Replace deprecated dependency Pegdown

The Pegdown project has been DEPRECATED so  we need a replacement.
The suggested library is flexmark-java

HI.
I'm interesting in this task. I want to have reusable implementation, that can be used in my project https://github.com/qwazer/markdown-confluence-gradle-plugin.
And best option is to have extension like vsch/flexmark-java/flexmark-jira-converter.
So my current plan:

[x] 1. Prepare unit test for both pegdown and flexmark implementations (done). See intermediate result here https://github.com/qwazer/maven-confluence-plugin/commits/maven-confluence-plugin-154
[ ] 2. Implement  flexmark ConfluenceConverterExtension
[ ] 3. Propose ConfluenceConverterExtension to @vsch (But confluence is out of scope of @vsch, as he said in https://github.com/vsch/flexmark-java/issues/71 so it can be no luck with this task )
[ ] 4. Prepare PR to https://github.com/bsorrentino/maven-confluence-plugin
[ ] 5. Implement it in my project markdown-confluence-gradle-plugin

Hi @qwazer
Awesome ... you'll real speed up plugin evolution .... I can't wait to see point 4

Reference issue: https://github.com/vsch/flexmark-java/issues/258

The alternative implementation has been moved to commonmark

flexmark-java based and inspired by commonmark

Hi @qwazer thanks for the feedback, I have chosen flexmark-java as the first choice but I have seen that commonmark has an alter-ego in javascript and since I am developing the confluence-site-publisher this will allow me to align the implementations.
However I've created a plugin approach (SPI based )for Markdown processor so it will be possible also to plug in flexmark-java implementation

in version 6.8 has been added support of Markdown processor to plug new markdown implementation instead of the deprecated  pegdown.
We have also provided an alternative implementation based upon commonmark that is ready to use.
Currently we have choosen to keep pegdown as default implementation until next major release 7.x


CSS injection does not work with funcational component and/or undefined context

Version
2.5.16
Reproduction link
https://github.com/znck/ssr-functional-component-css-inject-bug
Steps to reproduce

yarn
yarn test

What is expected?
Server render HTML should have <style> block.
All tests should pass.
What is actually happening?
In tests, 3 of 4 cases does not have injected styles.
https://github.com/znck/ssr-functional-component-css-inject-bug/blob/17e6ca6e5bc6b6135b84ea6083e79168fadf7753/tests/SSR.spec.js#L20-L36

I'm glad I'm not the only one. I have been searching for hours for a solution to this.
css-loader: 2.1.1
vue: 2.6.10
vue-loader: 15.7.0
vue-server-renderer: 2.6.10
vue-style-loader: 4.1.2
vue-template-compiler: 2.6.10
webpack 4.32.2

I can remove functional for now, but it would be nice to get rid of the unneeded data attributes since I won't be hydrating.


feat(GridForm): rowspan fields

Overview

PR Checklist

[ ] Related to designs:
[ ] Related to JIRA ticket: ABC-123
[ ] I have run this code to verify it works
[ ] This PR includes unit tests for the code change

📬Published Alpha Packages:@codecademy/gamut-kit@0.4.5-alpha.0791ed.0@codecademy/gamut-labs@18.3.5-alpha.0791ed.0@codecademy/gamut@33.4.3-alpha.0791ed.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://60b69dfcdbcffd273f5057b3--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-kit@0.4.5-alpha.377fd6.0@codecademy/gamut-labs@18.3.5-alpha.377fd6.0@codecademy/gamut@33.4.3-alpha.377fd6.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://60b6a0d4b013222d4f1c89a0--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-kit@0.4.5-alpha.d47a1f.0@codecademy/gamut-labs@18.3.5-alpha.d47a1f.0@codecademy/gamut@33.4.3-alpha.d47a1f.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://60b6a96c801dfc29f498d21c--gamut-preview.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-kit@0.4.6-alpha.3ff61f.0@codecademy/gamut-labs@18.3.6-alpha.3ff61f.0@codecademy/gamut@33.4.4-alpha.3ff61f.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://60b794eff223313a8d7a8c95--gamut-preview.netlify.appDeploy Logs

🚀 Styleguide deploy preview ready!https://60b7edc739575441ff0383cf--gamut-preview.netlify.appDeploy Logs


Fix leak of some associated properties in AutoLayout.mm

Missing some releases.
Note: original pull also included calls to explicitly break the associations (by calling  objc_setAssociatedObject with nil on autoLayoutDealloc), citing this page
https://web.archive.org/web/20120818164935/http://developer.apple.com/library/ios/#/web/20120820002100/http://developer.apple.com/library/ios/documentation/cocoa/conceptual/objectivec/Chapters/ocAssociativeReferences.html
However, as verified here https://github.com/Microsoft/WinObjC/blob/812d6636036a8d2eaeaaf7b92aa0c7b76252e190/tests/unittests/Starboard/objcrt_assoc.mm#L146 (and by manual testing) it's not necessary to manually nil out the associated objects with an objc_setAssociatedObject call.

This change is

:shipit:

:shipit:

In CI build.


Add all Banner component use cases in the storybook.

Add all possible use cases that are used in UI for the Banner component in the storybook.
This will help us to see all the existing use cases in one place.

Based on a recent spacing issue and review of the injected content, we should probably define a usage case in the guidelines.
@kwwii we should probably list the cases around with https://github.com/rancher/dashboard/issues/8708 and then take decision on how to display this banner.


✨[Feature Request]: Adding Testimonial Section

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
I want to work on adding a Testimonial section. I will make sure that the section is responsive.
Use Case
This section is important so that users can review the feedback of other users and gain a positive impression. Here is the template.

@Anishkagupta04 @varshith257 can you please assign this to me?
Benefits
No response
Add ScreenShots
No response
Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

Provide a layout of the original website where you design in website

Provide a layout of the original website where you design in website

Means? I didn't get you sir

@Hemashree21 Here you go!


grid order messed up

might just be me, but the grid order is messed up..

this is with all themes and plugins turned off

Hmm do you have the newest version? Everything works normal for me.

Yes, i have it imported.
Its supposed to be 2 cards at a time, it usually is for me on laptop.
Its also wayy too close for some reason,,
i can fix the too close issue myself but idk how to fix the only 1 card lel

Well I'm not quite sure, but I think the problem with the grid and the search bar are somehow related.
It seems that some clients have different classes than others, despite having the same version.

I published a new version, it should be fixed now:
https://github.com/CreArts-Community/Friends-Grid/releases/tag/v1.0.8

it is! ty


CLI not working when updgrading to yarn berry

Describe the bug
I'm upgrading to yarn v2 (berry) but it's breaking the supabase CLI. It works normally with yarn v1
To Reproduce
Steps to reproduce the behavior:

Install supabase cli using yarn v1 (I'm on v1.22.19)
Verify commands like supabase start work
run yarn set version berry to upgrade, then yarn to re-install packages
Run supabase start again and observe error

Expected behavior
Supabase CLI should work properly with yarn v2
Desktop (please complete the following information):

OS: macOS
Version of CLI 1.86.1
Version of Node.js (if applicable) 18.17.0

Additional context
This is the full error message:
node:internal/errors:496
    ErrorCaptureStackTrace(err);
    ^

TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension "" for /Users/harris/Documents/untitled-notes-app/node_modules/supabase/bin/supabase. Loading extensionless files is not supported inside of "type":"module" package.json contexts. The package.json file /Users/harris/Documents/untitled-notes-app/node_modules/supabase/package.json caused this "type":"module" context. Try changing /Users/harris/Documents/untitled-notes-app/node_modules/supabase/bin/supabase to have a file extension. Note the "bin" field of package.json can point to a file with an extension, for example {"type":"module","bin":{"supabase":"./bin/supabase.js"}}
    at new NodeError (node:internal/errors:405:5)
    at Object.getFileProtocolModuleFormat [as file:] (node:internal/modules/esm/get_format:79:11)
    at defaultGetFormat (node:internal/modules/esm/get_format:124:36)
    at defaultLoad (node:internal/modules/esm/load:84:20)
    at nextLoad (node:internal/modules/esm/loader:163:28)
    at ESMLoader.load (node:internal/modules/esm/loader:603:26)
    at ESMLoader.moduleProvider (node:internal/modules/esm/loader:457:22)
    at new ModuleJob (node:internal/modules/esm/module_job:64:26)
    at #createModuleJob (node:internal/modules/esm/loader:480:17)
    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:434:34) {
  code: 'ERR_UNKNOWN_FILE_EXTENSION'
}

Node.js v18.17.0

Hmm I ran the following but can't seem to reproduce this issue.
$ docker run --rm --workdir=/tmp -it node:slim bash
root@8353ad017520:/tmp# yarn set version berry
➤ YN0000: Retrieving https://repo.yarnpkg.com/3.6.4/packages/yarnpkg-cli/bin/yarn.js
➤ YN0000: Saving the new release in .yarn/releases/yarn-3.6.4.cjs
➤ YN0000: Done in 0s 448ms
root@8353ad017520:/tmp# yarn init -y
{
  name: 'tmp',
  packageManager<EMAIL_ADDRESS>}
Internal Error: Process git failed to spawn
    at ChildProcess.<anonymous> (/tmp/.yarn/releases/yarn-3.6.4.cjs:392:5563)
    at ChildProcess.emit (node:events:514:28)
    at ChildProcess._handle.onexit (node:internal/child_process:292:12)
    at onErrorNT (node:internal/child_process:484:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
root@8353ad017520:/tmp# yarn add -D supabase
➤ YN0000: ┌ Resolution step
➤ YN0000: └ Completed in 2s 869ms
➤ YN0000: ┌ Fetch step
➤ YN0013: │ supabase@npm:1.104.1 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ tar@npm:6.2.0 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ web-streams-polyfill@npm:3.2.1 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ write-file-atomic@npm:5.0.1 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ yallist@npm:4.0.0 can't be found in the cache and will be fetched from the remote registry
➤ YN0000: └ Completed in 2s 57ms
➤ YN0000: ┌ Link step
➤ YN0000: │ ESM support for PnP uses the experimental loader API and is therefore experimental
➤ YN0007: │ supabase@npm:1.104.1 must be built because it never has been before or the last one failed
➤ YN0000: └ Completed in 2s 854ms
➤ YN0000: Done with warnings in 7s 794ms
root@8353ad017520:/tmp# yarn supabase -h
Supabase CLI 1.104.1
...

Have you tried deleting any local cache and the yarn.lock files?

I believe this has been addressed in latest<EMAIL_ADDRESS>https://github.com/yarnpkg/berry/pull/4289
feel free to reopen if it's still causing problems