Executed flutter clean and flutter pub cache clean, and reinstalled the flutter sdk, to no avail.
Lots of stuff omitted here...

/D:/flutter/packages/flutter/lib/src/gestures/events.dart:980:5: Error: 'Offset' isn't a type.
    Offset? delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1041:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.touch,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1044:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1045:5: Error: 'Offset' isn't a type.
    Offset delta = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1115:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1117:5: Error: 'Offset' isn't a type.
    Offset? position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1118:5: Error: 'Offset' isn't a type.
    Offset? delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1180:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.touch,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1182:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1183:5: Error: 'Offset' isn't a type.
    Offset delta = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1281:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1283:5: Error: 'Offset' isn't a type.
    Offset? position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1284:5: Error: 'Offset' isn't a type.
    Offset? delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1345:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.touch,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1348:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1349:5: Error: 'Offset' isn't a type.
    Offset delta = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1448:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1450:5: Error: 'Offset' isn't a type.
    Offset? position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1451:5: Error: 'Offset' isn't a type.
    Offset? delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1506:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.touch,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1508:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1575:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1577:5: Error: 'Offset' isn't a type.
    Offset? position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1578:5: Error: 'Offset' isn't a type.
    Offset? delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1638:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.touch,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1640:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1641:5: Error: 'Offset' isn't a type.
    Offset delta = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1714:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1716:5: Error: 'Offset' isn't a type.
    Offset? position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1717:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1718:5: Error: 'Offset' isn't a type.
    Offset? delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1774:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.touch,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1776:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1859:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.mouse,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1861:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1881:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1883:5: Error: 'Offset' isn't a type.
    Offset? position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1884:5: Error: 'Offset' isn't a type.
    Offset? delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1930:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.mouse,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1932:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1949:9: Error: 'Offset' isn't a type.
  final Offset scrollDelta;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1962:40: Error: 'Offset' isn't a type.
    properties.add(DiagnosticsProperty<Offset>('scrollDelta', scrollDelta));
                                       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1985:40: Error: 'Offset' isn't a type.
    properties.add(DiagnosticsProperty<Offset>('scrollDelta', scrollDelta));
                                       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1994:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1996:5: Error: 'Offset' isn't a type.
    Offset? position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:1997:5: Error: 'Offset' isn't a type.
    Offset? delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2052:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind kind = PointerDeviceKind.touch,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2054:5: Error: 'Offset' isn't a type.
    Offset position = Offset.zero,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2103:23: Error: 'PointerDeviceKind' isn't a type.
double computeHitSlop(PointerDeviceKind kind, DeviceGestureSettings? settings) {
                      ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2105:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.mouse:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2107:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.stylus:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2108:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.invertedStylus:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2109:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.unknown:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2110:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.touch:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2118:23: Error: 'PointerDeviceKind' isn't a type.
double computePanSlop(PointerDeviceKind kind, DeviceGestureSettings? settings) {
                      ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2120:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.mouse:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2122:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.stylus:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2123:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.invertedStylus:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2124:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.unknown:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2125:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.touch:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2133:25: Error: 'PointerDeviceKind' isn't a type.
double computeScaleSlop(PointerDeviceKind kind) {
                        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2135:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.mouse:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2137:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.stylus:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2138:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.invertedStylus:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2139:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.unknown:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/events.dart:2140:10: Error: Undefined name 'PointerDeviceKind'.
    case PointerDeviceKind.touch:
         ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/force_press.dart:48:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/force_press.dart:55:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/force_press.dart:58:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/force_press.dart:129:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/force_press.dart:130:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/gesture_settings.dart:25:47: Error: 'FlutterView' isn't a type.
  factory DeviceGestureSettings.fromWindow(ui.FlutterView window) {
                                              ^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/hit_test.dart:21:38: Error: 'Offset' isn't a type.
  void hitTest(HitTestResult result, Offset position);
                                     ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/hit_test.dart:101:9: Error: 'Offset' isn't a type.
  final Offset offset;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/hit_test.dart:251:19: Error: 'Offset' isn't a type.
  void pushOffset(Offset offset) {
                  ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:112:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:118:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:121:9: Error: 'PointerDeviceKind' isn't a type.
  final PointerDeviceKind? kind;
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:124:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:140:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:145:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:148:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:164:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:166:5: Error: 'Offset' isn't a type.
    Offset? localOffsetFromOrigin,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:173:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:176:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:181:9: Error: 'Offset' isn't a type.
  final Offset offsetFromOrigin;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:186:9: Error: 'Offset' isn't a type.
  final Offset localOffsetFromOrigin;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:202:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:208:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:211:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:254:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/long_press.dart:255:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:73:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:76:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:232:50: Error: 'PointerDeviceKind' isn't a type.
  bool isFlingGesture(VelocityEstimate estimate, PointerDeviceKind kind);
                                                 ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:234:30: Error: 'Offset' isn't a type.
  Offset _getDeltaForDetails(Offset delta);
                             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:235:38: Error: 'Offset' isn't a type.
  double? _getPrimaryValueFromOffset(Offset value);
                                     ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:236:45: Error: 'PointerDeviceKind' isn't a type.
  bool _hasSufficientGlobalDistanceToAccept(PointerDeviceKind pointerDeviceKind, double? deviceTouchSlop);
                                            ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:309:15: Error: 'Offset' isn't a type.
        final Offset movedLocally = _getDeltaForDetails(event.localDelta);
              ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:336:13: Error: 'Offset' isn't a type.
      final Offset localUpdateDelta;
            ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:352:15: Error: 'Offset' isn't a type.
        final Offset correctedLocalPosition = _initialPosition.local + localUpdateDelta;
              ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:353:15: Error: 'Offset' isn't a type.
        final Offset globalUpdateDelta = PointerEvent.transformDeltaViaPositions(
              ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:340:30: Error: The getter 'Offset' isn't defined for the class 'DragGestureRecognizer'.
 - 'DragGestureRecognizer' is from 'package:flutter/src/gestures/monodrag.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
          localUpdateDelta = Offset.zero;
                             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:350:31: Error: The getter 'Offset' isn't defined for the class 'DragGestureRecognizer'.
 - 'DragGestureRecognizer' is from 'package:flutter/src/gestures/monodrag.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
      if (localUpdateDelta != Offset.zero && onUpdate != null) {
                              ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:435:14: Error: 'Offset' isn't a type.
    required Offset delta,
             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:437:14: Error: 'Offset' isn't a type.
    required Offset globalPosition,
             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:438:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:526:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:527:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:535:50: Error: 'PointerDeviceKind' isn't a type.
  bool isFlingGesture(VelocityEstimate estimate, PointerDeviceKind kind) {
                                                 ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:542:45: Error: 'PointerDeviceKind' isn't a type.
  bool _hasSufficientGlobalDistanceToAccept(PointerDeviceKind pointerDeviceKind, double? deviceTouchSlop) {
                                            ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:547:30: Error: 'Offset' isn't a type.
  Offset _getDeltaForDetails(Offset delta) => Offset(0.0, delta.dy);
                             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:547:47: Error: The method 'Offset' isn't defined for the class 'VerticalDragGestureRecognizer'.
 - 'VerticalDragGestureRecognizer' is from 'package:flutter/src/gestures/monodrag.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart').
Try correcting the name to the name of an existing method, or defining a method named 'Offset'.
  Offset _getDeltaForDetails(Offset delta) => Offset(0.0, delta.dy);
                                              ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:550:37: Error: 'Offset' isn't a type.
  double _getPrimaryValueFromOffset(Offset value) => value.dy;
                                    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:576:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:577:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:585:50: Error: 'PointerDeviceKind' isn't a type.
  bool isFlingGesture(VelocityEstimate estimate, PointerDeviceKind kind) {
                                                 ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:592:45: Error: 'PointerDeviceKind' isn't a type.
  bool _hasSufficientGlobalDistanceToAccept(PointerDeviceKind pointerDeviceKind, double? deviceTouchSlop) {
                                            ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:597:30: Error: 'Offset' isn't a type.
  Offset _getDeltaForDetails(Offset delta) => Offset(delta.dx, 0.0);
                             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:597:47: Error: The method 'Offset' isn't defined for the class 'HorizontalDragGestureRecognizer'.
 - 'HorizontalDragGestureRecognizer' is from 'package:flutter/src/gestures/monodrag.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart').
Try correcting the name to the name of an existing method, or defining a method named 'Offset'.
  Offset _getDeltaForDetails(Offset delta) => Offset(delta.dx, 0.0);
                                              ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:600:37: Error: 'Offset' isn't a type.
  double _getPrimaryValueFromOffset(Offset value) => value.dx;
                                    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:619:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:626:50: Error: 'PointerDeviceKind' isn't a type.
  bool isFlingGesture(VelocityEstimate estimate, PointerDeviceKind kind) {
                                                 ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:634:45: Error: 'PointerDeviceKind' isn't a type.
  bool _hasSufficientGlobalDistanceToAccept(PointerDeviceKind pointerDeviceKind, double? deviceTouchSlop) {
                                            ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:639:30: Error: 'Offset' isn't a type.
  Offset _getDeltaForDetails(Offset delta) => delta;
                             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/monodrag.dart:642:38: Error: 'Offset' isn't a type.
  double? _getPrimaryValueFromOffset(Offset value) => null;
                                     ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:42:9: Error: 'Offset' isn't a type.
  final Offset initialPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:49:9: Error: 'PointerDeviceKind' isn't a type.
  final PointerDeviceKind kind;
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:60:3: Error: 'Offset' isn't a type.
  Offset? _pendingDelta = Offset.zero;
  ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:60:27: Error: Undefined name 'Offset'.
  Offset? _pendingDelta = Offset.zero;
                          ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:217:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:218:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:262:29: Error: The getter 'Offset' isn't defined for the class 'MultiDragGestureRecognizer'.
 - 'MultiDragGestureRecognizer' is from 'package:flutter/src/gestures/multidrag.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
      assert(event.delta == Offset.zero);
                            ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:267:29: Error: The getter 'Offset' isn't defined for the class 'MultiDragGestureRecognizer'.
 - 'MultiDragGestureRecognizer' is from 'package:flutter/src/gestures/multidrag.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
      assert(event.delta == Offset.zero);
                            ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:285:21: Error: 'Offset' isn't a type.
    state.accepted((Offset initialPosition) => _startDrag(initialPosition, pointer));
                    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:288:20: Error: 'Offset' isn't a type.
  Drag? _startDrag(Offset initialPosition, int pointer) {
                   ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:336:26: Error: 'Offset' isn't a type.
  _ImmediatePointerState(Offset initialPosition, PointerDeviceKind kind, DeviceGestureSettings? deviceGestureSettings) : super(initialPosition, kind, deviceGestureSettings);
                         ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:336:50: Error: 'PointerDeviceKind' isn't a type.
  _ImmediatePointerState(Offset initialPosition, PointerDeviceKind kind, DeviceGestureSettings? deviceGestureSettings) : super(initialPosition, kind, deviceGestureSettings);
                                                 ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:377:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:378:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:396:27: Error: 'Offset' isn't a type.
  _HorizontalPointerState(Offset initialPosition, PointerDeviceKind kind, DeviceGestureSettings? deviceGestureSettings): super(initialPosition, kind, deviceGestureSettings);
                          ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:396:51: Error: 'PointerDeviceKind' isn't a type.
  _HorizontalPointerState(Offset initialPosition, PointerDeviceKind kind, DeviceGestureSettings? deviceGestureSettings): super(initialPosition, kind, deviceGestureSettings);
                                                  ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:437:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:438:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:456:25: Error: 'Offset' isn't a type.
  _VerticalPointerState(Offset initialPosition, PointerDeviceKind kind, DeviceGestureSettings? deviceGestureSettings): super(initialPosition, kind, deviceGestureSettings);
                        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:456:49: Error: 'PointerDeviceKind' isn't a type.
  _VerticalPointerState(Offset initialPosition, PointerDeviceKind kind, DeviceGestureSettings? deviceGestureSettings): super(initialPosition, kind, deviceGestureSettings);
                                                ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:497:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:498:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:515:24: Error: 'Offset' isn't a type.
  _DelayedPointerState(Offset initialPosition, Duration delay, PointerDeviceKind kind, DeviceGestureSettings? deviceGestureSettings)
                       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:515:64: Error: 'PointerDeviceKind' isn't a type.
  _DelayedPointerState(Offset initialPosition, Duration delay, PointerDeviceKind kind, DeviceGestureSettings? deviceGestureSettings)
                                                               ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:611:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multidrag.dart:612:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:76:9: Error: 'Offset' isn't a type.
  final Offset _initialGlobalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:97:11: Error: 'Offset' isn't a type.
    final Offset offset = event.position - _initialGlobalPosition;
          ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:126:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:127:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:483:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:484:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:616:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:624:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:627:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:630:9: Error: 'PointerDeviceKind' isn't a type.
  final PointerDeviceKind kind;
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:699:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:706:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:709:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:712:9: Error: 'PointerDeviceKind' isn't a type.
  final PointerDeviceKind? kind;
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/multitap.dart:803:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:74:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:75:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:77:63: Error: 'PointerDeviceKind' isn't a type.
       _supportedDevices = kind == null ? supportedDevices : <PointerDeviceKind>{ kind };
                                                              ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:93:13: Error: 'PointerDeviceKind' isn't a type.
  final Set<PointerDeviceKind>? _supportedDevices;
            ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:97:18: Error: 'PointerDeviceKind' isn't a type.
  final Map<int, PointerDeviceKind> _pointerToKind = <int, PointerDeviceKind>{};
                 ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:97:60: Error: 'PointerDeviceKind' isn't a type.
  final Map<int, PointerDeviceKind> _pointerToKind = <int, PointerDeviceKind>{};
                                                           ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:244:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:245:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:455:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:456:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:633:11: Error: 'Offset' isn't a type.
    final Offset offset = event.position - initialPosition!.global;
          ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:673:9: Error: 'Offset' isn't a type.
  final Offset local;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/recognizer.dart:677:9: Error: 'Offset' isn't a type.
  final Offset global;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:41:3: Error: 'Offset' isn't a type.
  Offset _position = Offset.zero;
  ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:41:22: Error: Undefined name 'Offset'.
  Offset _position = Offset.zero;
                     ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:49:5: Error: 'Offset' isn't a type.
    Offset position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:50:5: Error: 'Offset' isn't a type.
    Offset delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:80:5: Error: 'Offset' isn't a type.
    Offset position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:81:5: Error: 'Offset' isn't a type.
    Offset delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:114:5: Error: 'Offset' isn't a type.
    Offset position,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:115:5: Error: 'Offset' isn't a type.
    Offset delta,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:145:12: Error: The method 'Offset' isn't defined for the class 'PointerEventResampler'.
 - 'PointerEventResampler' is from 'package:flutter/src/gestures/resampler.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart').
Try correcting the name to the name of an existing method, or defining a method named 'Offset'.
    return Offset(x, y);
           ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:222:13: Error: 'Offset' isn't a type.
      final Offset position = _positionAt(sampleTime);
            ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:245:17: Error: 'Offset' isn't a type.
          final Offset delta = position - _position;
                ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:252:18: Error: The getter 'Offset' isn't defined for the class 'PointerEventResampler'.
 - 'PointerEventResampler' is from 'package:flutter/src/gestures/resampler.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
          delta: Offset.zero,
                 ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:267:11: Error: 'Offset' isn't a type.
    final Offset position = _positionAt(sampleTime);
          ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:272:13: Error: 'Offset' isn't a type.
      final Offset delta = position - _position;
            ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart:322:17: Error: The getter 'Offset' isn't defined for the class 'PointerEventResampler'.
 - 'PointerEventResampler' is from 'package:flutter/src/gestures/resampler.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/resampler.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
    _position = Offset.zero;
                ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:39:54: Error: 'Offset' isn't a type.
  ScaleStartDetails({ this.focalPoint = Offset.zero, Offset? localFocalPoint, this.pointerCount = 0 })
                                                     ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:50:9: Error: 'Offset' isn't a type.
  final Offset focalPoint;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:61:9: Error: 'Offset' isn't a type.
  final Offset localFocalPoint;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:82:5: Error: 'Offset' isn't a type.
    Offset? localFocalPoint,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:101:9: Error: 'Offset' isn't a type.
  final Offset focalPointDelta;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:111:9: Error: 'Offset' isn't a type.
  final Offset focalPoint;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:122:9: Error: 'Offset' isn't a type.
  final Offset localFocalPoint;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:239:9: Error: 'Offset' isn't a type.
  final Offset pointerStartLocation;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:243:9: Error: 'Offset' isn't a type.
  final Offset pointerEndLocation;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:266:5: Error: 'PointerDeviceKind' isn't a type.
    PointerDeviceKind? kind,
    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:267:9: Error: 'PointerDeviceKind' isn't a type.
    Set<PointerDeviceKind>? supportedDevices,
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:321:8: Error: 'Offset' isn't a type.
  late Offset _initialFocalPoint;
       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:322:3: Error: 'Offset' isn't a type.
  Offset? _currentFocalPoint;
  ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:329:8: Error: 'Offset' isn't a type.
  late Offset _localFocalPoint;
       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:332:17: Error: 'Offset' isn't a type.
  late Map<int, Offset> _pointerLocations;
                ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:335:8: Error: 'Offset' isn't a type.
  late Offset _delta;
       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:375:33: Error: 'Offset' isn't a type.
      _pointerLocations = <int, Offset>{};
                                ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:416:11: Error: 'Offset' isn't a type.
    final Offset? previousFocalPoint = _currentFocalPoint;
          ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:419:5: Error: 'Offset' isn't a type.
    Offset focalPoint = Offset.zero;
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:431:13: Error: 'Offset' isn't a type.
      final Offset localPreviousFocalPoint = _localFocalPoint;
            ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:419:25: Error: The getter 'Offset' isn't defined for the class 'ScaleGestureRecognizer'.
 - 'ScaleGestureRecognizer' is from 'package:flutter/src/gestures/scale.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/scale.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
    Offset focalPoint = Offset.zero;
                        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:422:70: Error: The getter 'Offset' isn't defined for the class 'ScaleGestureRecognizer'.
 - 'ScaleGestureRecognizer' is from 'package:flutter/src/gestures/scale.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/scale.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
    _currentFocalPoint = count > 0 ? focalPoint / count.toDouble() : Offset.zero;
                                                                     ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:429:16: Error: The getter 'Offset' isn't defined for the class 'ScaleGestureRecognizer'.
 - 'ScaleGestureRecognizer' is from 'package:flutter/src/gestures/scale.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/scale.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
      _delta = Offset.zero;
               ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:497:17: Error: 'Offset' isn't a type.
          final Offset pixelsPerSecond = velocity.pixelsPerSecond;
                ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/scale.dart:511:57: Error: 'PointerDeviceKind' isn't a type.
  void _advanceStateMachine(bool shouldStartIfAccepted, PointerDeviceKind pointerDeviceKind) {
                                                        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:26:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:32:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:35:9: Error: 'PointerDeviceKind' isn't a type.
  final PointerDeviceKind? kind;
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:38:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:64:5: Error: 'Offset' isn't a type.
    Offset? localPosition,
    ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:69:9: Error: 'Offset' isn't a type.
  final Offset globalPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:72:9: Error: 'Offset' isn't a type.
  final Offset localPosition;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:75:9: Error: 'PointerDeviceKind' isn't a type.
  final PointerDeviceKind kind;
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:141:54: Error: 'PointerDeviceKind' isn't a type.
  BaseTapGestureRecognizer({ Object? debugOwner, Set<PointerDeviceKind>? supportedDevices })
                                                     ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:320:40: Error: 'Offset' isn't a type.
    properties.add(DiagnosticsProperty<Offset>('finalPosition', _up?.position, defaultValue: null));
                                       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:321:40: Error: 'Offset' isn't a type.
    properties.add(DiagnosticsProperty<Offset>('finalLocalPosition', _up?.localPosition, defaultValue: _up?.position));
                                       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/tap.dart:353:50: Error: 'PointerDeviceKind' isn't a type.
  TapGestureRecognizer({ Object? debugOwner, Set<PointerDeviceKind>? supportedDevices })
                                                 ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:27:9: Error: 'Offset' isn't a type.
  final Offset pixelsPerSecond;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:104:9: Error: 'Offset' isn't a type.
  final Offset pixelsPerSecond;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:118:9: Error: 'Offset' isn't a type.
  final Offset offset;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:130:9: Error: 'Offset' isn't a type.
  final Offset point;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:157:9: Error: 'PointerDeviceKind' isn't a type.
  final PointerDeviceKind kind;
        ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:164:35: Error: 'Offset' isn't a type.
  void addPosition(Duration time, Offset position) {
                                  ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:206:13: Error: 'Offset' isn't a type.
      final Offset position = sample.point;
            ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:224:30: Error: The method 'Offset' isn't defined for the class 'VelocityTracker'.
 - 'VelocityTracker' is from 'package:flutter/src/gestures/velocity_tracker.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart').
Try correcting the name to the name of an existing method, or defining a method named 'Offset'.
            pixelsPerSecond: Offset(xFit.coefficients[1] * 1000, yFit.coefficients[1] * 1000),
                             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:236:24: Error: The getter 'Offset' isn't defined for the class 'VelocityTracker'.
 - 'VelocityTracker' is from 'package:flutter/src/gestures/velocity_tracker.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
      pixelsPerSecond: Offset.zero,
                       ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:252:57: Error: The getter 'Offset' isn't defined for the class 'VelocityTracker'.
 - 'VelocityTracker' is from 'package:flutter/src/gestures/velocity_tracker.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
    if (estimate == null || estimate.pixelsPerSecond == Offset.zero)
                                                        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:281:37: Error: 'PointerDeviceKind' isn't a type.
  IOSScrollViewFlingVelocityTracker(PointerDeviceKind kind) : super.withKind(kind);
                                    ^^^^^^^^^^^^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:292:35: Error: 'Offset' isn't a type.
  void addPosition(Duration time, Offset position) {
                                  ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:316:14: Error: The getter 'Offset' isn't defined for the class 'IOSScrollViewFlingVelocityTracker'.
 - 'IOSScrollViewFlingVelocityTracker' is from 'package:flutter/src/gestures/velocity_tracker.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
      return Offset.zero;
             ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:325:9: Error: The getter 'Offset' isn't defined for the class 'IOSScrollViewFlingVelocityTracker'.
 - 'IOSScrollViewFlingVelocityTracker' is from 'package:flutter/src/gestures/velocity_tracker.dart' ('/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'Offset'.
      : Offset.zero;
        ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:336:11: Error: 'Offset' isn't a type.
    final Offset estimatedVelocity = _previousVelocityAt(-2) * 0.6
          ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:352:26: Error: Undefined name 'Offset'.
        pixelsPerSecond: Offset.zero,
                         ^^^^^^
/D:/flutter/packages/flutter/lib/src/gestures/velocity_tracker.dart:355:17: Error: Undefined name 'Offset'.
        offset: Offset.zero,
                ^^^^^^
/D:/flutter/packages/flutter/lib/src/semantics/semantics_event.dart:83:9: Error: 'TextDirection' isn't a type.
  final TextDirection textDirection;
        ^^^^^^^^^^^^^
[INFO] Precompiling build script... completed, took 15.0s

[SEVERE] Failed to precompile build script .dart_tool/build/entrypoint/build.dart.
This is likely caused by a misconfigured builder definition.

pub finished with exit code 78

The Offset class comes from dart:ui, and that library is not available to builders, which is causing the errors. This means that builders can't import any Flutter-specific packages. I know that drift_dev isn't doing that, so I'll close this issue. It could be another builder causing these issues. Could you attach the contents of .dart_tool/build/entrypoint/build.dart?


Improved pinning

This will allow us to properly pin packages (with optional channel argument).
Fixes #171
Fixes #328
I hope that this will also be helpful in boa where we can use this mechanism to even pin down transitive dependencies, something that (afaik) conda-build doesn't currently do.
cc @dhirschfeld

also fixes #384


[Workspace feeds] Add search bar if cards assignment list has 8+ cards

Explanation of Change

[Workspace feeds] Add search bar if cards assignment list has 8+ cards
Fixed Issues

$ https://github.com/Expensify/App/issues/51906
PROPOSAL: N/A
Tests

[x] Verify that no errors appear in the JS console

Login to the account that has workspace with the Company Cards feature enabled and a custom feed added. The feed should have 8+ cards to be assigned.
Go to the Workspace -> Company card section.
Start Card assignment flow.
Select the employee to assign a card to and press Next.
Make sure the card selection step has a search field if there are more than 8 cards available.
Try to search the card and make sure it works as expected.

Offline tests

N/A
QA Steps

[x] Verify that no errors appear in the JS console

Same as in the Tests sections.
PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/93ed5634-2953-43ca-af03-d421213a581a

Android: mWeb Chrome

https://github.com/user-attachments/assets/45ed3e01-d2ff-405f-a748-4afce67fe40e

iOS: Native

https://github.com/user-attachments/assets/35537b55-e7ea-463c-bae1-84c86b6a2301

iOS: mWeb Safari

https://github.com/user-attachments/assets/e8fdf587-4ab1-4bca-b73e-ff050071d8f1

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/ccd2f3c2-430f-4bdb-9890-970a2725fce6

MacOS: Desktop

https://github.com/user-attachments/assets/e053a54b-d322-4380-a210-074ebce9caa8

@dubielzyk-expensify @dukenv0307 Here are scrolling videos
Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/28923c76-e7e1-4c6c-93d1-ade306d472ca

Android: mWeb Chrome

https://github.com/user-attachments/assets/898e9815-f4f3-4d40-843a-32ad4ec5c524

iOS: Native

https://github.com/user-attachments/assets/7eda0d7d-3323-422b-8f0e-08464fb3637f

iOS: mWeb Safari

https://github.com/user-attachments/assets/243dcc01-1665-4aec-a60b-82f83a693fa5

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/170d24d5-befe-49ff-8f1a-3a4deda182d9

MacOS: Desktop

https://github.com/user-attachments/assets/73c42d49-af24-4b76-9c19-3d413cca10b9

@dukenv0307 Please, see the related discussion in the issue.
Scrolling of just the list was causing the keyboard overlapping in case of this screen.
The one you provided as a reference has less content above the list/search, which makes it okay.

The padding above the button should be the same as we do elsewhere in the app which is 0. Currently it seems different in almost all the recordings.

On other screens:

Otherwise this is looking good

@dubielzyk-expensify updated!
Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

Good catch @dubielzyk-expensify! Those updated screens look better to me 👍

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

Confirmed search field appears and is working as expected


Look into other possible window types for QuickAtlas

I don't entirely like how the dock looks and feels. A standalone window would probably be better IMO.
Try out different options before committing one.

Floating windows work quite nicely but I'm not sure if it's possible to make a floating window directly.


Fix docker-entrypoint-initdb.d in Dockerfile

If the "Dockerfile location" in Docker Hub Automated Builds is set to "docker/Dockerifle" and the "Build Context" is set to "/" there is no need to create symlinks.

This has already been addressed.


Multiple app deployment in a single Tenant

Hi,
We have single Azure tenant, and we have deployed Company Communicator app in a separate resource group which is used as Test instance.
Now, we need to setup Production instance of Company Communicator app in the same tenant, we would be creating separate resource group for the same.
We are doing deployment using Manual approach.
Please let us know if we need change any paraments before the app deployment for production as its 2nd deployment in same tenant,
For Ex: Do we need to change the parameter value of User App ExternalId [Optional], the default value is 148a66bb-e83d-425a-927d-09f4299a9274. Do we need to update this with different value?
Anything apart from above if we need to change before deployment please let us know as this is our second app deployment in the same tenant with different resource group.

Hi @raghav-nie ,

Please let us know whether you are deploying both the instance of Company Communicator at the tenant level
If you are not targeting tenant level deployment, trying to deploy in two different teams, no need to change User App External ID.
If you are trying to deploy both the instance at tenant level, then have to change User App External ID and Manifest ID.
It's possible that the deployment can be failed and if it fails, please modify the all the GUIDs during the deployment and try again.
Please let us know if you are still facing this issue and require assistance and we will be happy to discuss.

Hi @SankarMicrosoft,
There are two things involved here, first one is deployment of ARM Company Communicator to Azure tenant and second one is when ARM deployment succeeds, create teams app zip files and upload to either Teams tenant level or only at Teams level.
My query is specific to first one, i.e ARM Company Communicator deployment to Azure tenant based on the manual deployment instructions given on your site.
We have already done the deployment of ARM Company Communicator app on azure resource group, uploaded the app zip file on few teams and verified its working fine. This was done for testing purpose.
Now we need to setup 2nd instance which will be used as Production, we have created 2nd Azure Resource group, now we need to once again deploy company communicator ARM deployment with manual deployment approach.
So my query is , do we need to change any of the parameters before doing the 2nd ARM Company Communicator deployment or we can just complete the deployment with default parameter values only ??
Please let me know if i need to provide more details

Just to give some more info,
We tried to deploy the 2nd instance of Company Communicator App ARM template to Azure with Manual deployment approach on a different resource group. The deployment is getting failed with multiple errors. The deployment was done keeping the parameters including all the GUIDs as default values.
Sharing below the error log details,
{"code":"DeploymentFailed","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details.","details":[{"code":"RoleAssignmentUpdateNotPermitted","message":"Tenant ID, application ID, principal ID, and scope are not allowed to be updated."},{"code":"RoleAssignmentUpdateNotPermitted","message":"Tenant ID, application ID, principal ID, and scope are not allowed to be updated."},{"code":"ResourceDeploymentFailure","message":"Encountered internal server error. Diagnostic information: timestamp '20220715T142441Z', subscription id '349ea109-6aab-490e-bacb-899d1008a960', tracking id '65e1003a-8727-40b4-96ed-a19cdce91b51', request correlation id '8b4df151-f010-4712-bf87-0021680eba38'."},{"code":"ConflictError","message":"A vault with the same name already exists in deleted state. You need to either recover or purge existing key vault. Follow this link https://go.microsoft.com/fwlink/?linkid=2149745 for more information on soft delete."},{"code":"RoleAssignmentUpdateNotPermitted","message":"Tenant ID, application ID, principal ID, and scope are not allowed to be updated."},{"code":"RoleAssignmentUpdateNotPermitted","message":"Tenant ID, application ID, principal ID, and scope are not allowed to be updated."},{"code":"RoleAssignmentUpdateNotPermitted","message":"Tenant ID, application ID, principal ID, and scope are not allowed to be updated."},{"code":"RoleAssignmentUpdateNotPermitted","message":"Tenant ID, application ID, principal ID, and scope are not allowed to be updated."},{"code":"RoleAssignmentUpdateNotPermitted","message":"Tenant ID, application ID, principal ID, and scope are not allowed to be updated."}]}

Hi @raghav-nie ,
Could you please do a deployment with a different set of GUIDs.
You can get new GUIDs in the below link,
https://www.guidgenerator.com/online-guid-generator.aspx
Once you have done the deployment, If you are facing any issue, Please send us a screenshot of the error.
It will help us to fix the issue quickly.

Hi @raghav-nie ,
Could you please give us  the status.


droidcam: 1.7.3 -> 1.8.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/aramg/droidcam/releases.
meta.description for droidcam is: "Linux client for DroidCam app"
meta.homepage for droidcam is: "https://github.com/aramg/droidcam"
meta.changelog for droidcam is: ""
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

Warning: no invocation of /nix/store/rzilvjplgi8sbq3ygkxpz9qxa2wzj9c0-droidcam-1.8.0/bin/droidcam had a zero exit code or showed the expected version

/nix/store/rzilvjplgi8sbq3ygkxpz9qxa2wzj9c0-droidcam-1.8.0/bin/droidcam-cli passed the binary check.

0 of 2 passed binary check by having a zero exit code.

1 of 2 passed binary check by having the new version present in output.

found 1.8.0 with grep in /nix/store/rzilvjplgi8sbq3ygkxpz9qxa2wzj9c0-droidcam-1.8.0

found 1.8.0 in filename of file in /nix/store/rzilvjplgi8sbq3ygkxpz9qxa2wzj9c0-droidcam-1.8.0

directory tree listing: https://gist.github.com/816cb2ab64d4f2dd7d308b612153bd11

du listing: https://gist.github.com/5ab9f94e30cde0512bcf31f5cbcf39de

Rebuild report (if merged into master) (click to expand)

3 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
droidcam

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/rzilvjplgi8sbq3ygkxpz9qxa2wzj9c0-droidcam-1.8.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A droidcam https://github.com/r-ryantm/nixpkgs/archive/6eade3f79291ad582a055f92fc1748dc56be86d7.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/rzilvjplgi8sbq3ygkxpz9qxa2wzj9c0-droidcam-1.8.0
ls -la /nix/store/rzilvjplgi8sbq3ygkxpz9qxa2wzj9c0-droidcam-1.8.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

droidcam

Maintainer pings
cc @suhr for testing.

Result of nixpkgs-review pr 132033 run on x86_64-linux 1

1 package built:

droidcam


not able to install plugin

I have use kong version 2.0.4.
and I face the following error.
{
"message": "schema violation (name: plugin 'kong-spec-expose' not enabled; add it to the 'plugins' configuration property)",
"name": "schema violation",
"fields": {
"name": "plugin 'kong-spec-expose' not enabled; add it to the 'plugins' configuration property"
},
"code": 2
}
I follow the given steps in the following doc.
https://docs.konghq.com/hub/optum/kong-spec-expose/

@rakeshsingh13  did you get any solution for this?

@rakeshsingh13 , is this configured locally or k8s cluster level?


sublime3: 3170 -> 3176

https://www.sublimetext.com/3
stable is at 3176, dev is at 3175. In this PR, I set both to 3176. I assume, eventually, dev will be incrementing faster than stable.

I assume, eventually, dev will be incrementing faster than stable.

Well, on the last bump dev was below stable as well, and you said the same :smile:
If this becomes a pattern, we should just drop dev.


Bundle awx to ManageIQ appliance for simplify enabling Embeded Ansible.

Hi Guys.
Last week we had access to the source code of awx project on which the Ansible Tower is based.
https://github.com/ansible/awx
This allows you to provide the appropriate appliance worker out of the box without having to perform complicated operations for installation. Please consider this possibility and plan appropriate work.

@ITD27M01 our plan is to incorporate AWX into the Gaprindashvili release

I would like to do this, but as it stands awx is only runnable as a group of docker containers or on OpenShift.
We could investigate running the docker containers on the appliance, but that would be a pretty significant break with how we handle running embedded ansible tower currently.
Additionally, the container images don't seem to be distributed in any standard way. The awx install guide specifies that the install process includes building as well as deploying the images, I know this (building docker images at runtime) is not really a thing we would want to do on the appliance.
Also, even if we had access to pre-built images, I think that we would want the image locally at appliance build time rather than having to have the appliance access dockerhub to pull the image at runtime.
This will need some thought to get around the technical challenges.

The installation can also be made from prebuilt images:

docker.io/ansible/awx_web:latest
docker.io/ansible/awx_task:latest
docker.io/rabbitmq:3
docker.io/memcached:alpine
docker.io/postgres:9.6

Of course, the tags can be set more precisely for packaging purpose.
Here is the inventory I have used to deploy it with prebuilt images:
localhost ansible_connection=local ansible_python_interpreter="/usr/bin/env python"

[all:vars]
dockerhub_base=ansible
dockerhub_version=latest

awx_secret_key=awxsecret

host_port=80

pg_username=awx
pg_password=awxpass
pg_database=awx
pg_port=5432
postgres_data_dir=/opt/awx-data

If you want to use the ManageIQ database, you can simply set the pg_hostname variable. I have personnally chosen to use a PostgreSQL container with a local directory for persistence (postgres_data_dir).
IMHO, this goes along the objective of delivering ManageIQ in the form of containers running on top of Kubernetes. AWX would simply be an extra container ;)

@fdupont-redhat I've started looking at what it would take to run the docker containers on the appliance and think I have a way forward.
I'll update this issue with the related patches as I move forward.
So far I have some pretty significant changes to the EmbeddedAnsible class so I'll have to try to serialize these changes in some way that makes sense.
Hoping to make progress on this by the end of this week.

Do you also plan to rebase calls on api/v2 ?

http://talk.manageiq.org/t/embedded-ansible-using-awx/3057 Gives some more detail around how we resolved this issue.


Upgrade keycloak to version 24

General Checklist

[ ] Affected Issues have been mentioned in the Closing issues section
[ ] Documentation has been written/updated
[ ] PR title is ready for inclusion in changelog

Database Migrations

[ ] If your PR contains a database migation, it MUST be the latest in date order alphabetically

Explain the details for making this change. What existing problem does the pull request solve?

Closing issues
Put closes #XXXX in your comment to auto-close the issue that your PR fixes (if such).

The remoteshell test fails because the sshportal calls to keycloak to get the group information fails.
{"time":"2024-08-23T02:14:26.766545934Z","level":"ERROR","msg":"couldn't generate group name to project IDs map","query":{"sshFingerprint":"SHA256:kDhWiCrizJSFOAPdDcpVIOV3W9f2VlwtjUrDUudJgTg","namespaceName":"ci-features-control-k8s-remoteshell","projectID":181,"environmentID":37,"sessionID":"6e63bce76a21589a6942e50c58df156ce75ea69a664e2a7729013d303996c2bd"},"error":"couldn't get group ID for group: ci-group"}

Since sshportal handles all of the group/access/permission logic independently of the API, it will likely need to have updates done to it too to support the sparsegroup queries against keycloak, or it could just use the API

The problem turned out to be nothing really to do with ssh-portal. It's just an incompatibility with Keycloak permissions in newer versions. Details and backward-compatible fix here: https://github.com/uselagoon/lagoon/pull/3797
I got the CI run to pass by logging in to Keycloak in CI and adding the view-users permission manually. So once this is rebased on https://github.com/uselagoon/lagoon/pull/3797 it should go green.

The only issue I found was during local testing in docker compose. The API hangs waiting for keycloak here. Restarting the API container locally manages to allow it to succeed though. But by the time restarting the API takes place, the seeding process has already failed, so needs to be re-run.

This is a weird one. I traced the error down to a fetch call that appears to crash Node.js. Doesn't matter if it's async or promise, not able to be caught by try/catch. For me it appears to be related to the <IP_ADDRESS> ip, if you remove the KEYCLOAK_URL env vars in docker-compose.yml does that fix it for you? If so, then it's probably a local specific issue and not something that would break in a real deployment?

The only issue I found was during local testing in docker compose. The API hangs waiting for keycloak here. Restarting the API container locally manages to allow it to succeed though. But by the time restarting the API takes place, the seeding process has already failed, so needs to be re-run.

This is a weird one. I traced the error down to a fetch call that appears to crash Node.js. Doesn't matter if it's async or promise, not able to be caught by try/catch. For me it appears to be related to the <IP_ADDRESS> ip, if you remove the KEYCLOAK_URL env vars in docker-compose.yml does that fix it for you? If so, then it's probably a local specific issue and not something that would break in a real deployment?

I'll have another look real quick. But I don't understand why it fails with the IP on the first attempt, but then restarting the pod succeeds. To me it seems like a hang like this with no timeout? is a bad thing to have.
The jank timeout wrapper I tried didn't require any manual intervention or changes. So I'm keen to understand the fetch crash a bit more and why the crash isn't captured by the try in that waitforkeycloak code?

Yeah, removing KEYCLOAK_URL in the api service does indeed work. So I guess lets just do that for now.
But it would still be worth figuring out if this is just a weird local edge case, or could it happen in a running pod? It looks like port 3000 is inaccessible when the condition takes place, so in kubernetes it will just go into crash loop. But if it continues to encounter that bug then the API could be completely unusable.
Maybe I'm overreacting though :slightly_smiling_face:


3g support - Query

Hi,
Is traccar support GPS tracking devices running on 3g or 4g instead of GPRS protocol? Like Meitrack T333 using 3g.

From the server point of view there is no difference between those, so Meitrack T333 should work as long as it uses same message format as other Meitrack devices.

Thanks for confirmation.👍


[FLINK-23800][rocksdb] Expose live-sst-files-size to RocksDB native metrics

What is the purpose of the change
Expose live-sst-files-size to RocksDB native metrics.
Brief change log
Expose RocksDB's live-sst-file-size out.
Verifying this change
This change is already covered by existing tests
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable

@flinkbot run azure

@flinkbot run travis

@flinkbot run azure


Stopped working after upgrading to cakePHP 3.1.4

Hello Admad,
First off,  this plugin has been so useful, thank you for making it.
Having an issue since upgrading to the newest version of CakePHP. Now when clicking on login from Google or Facebook, I'm logged in but never get redirect to the provider site and no provider_uid is generated.

Keeps generating users in the database on every click, I've not changed any code and only noticed since upgrading.
Any ideas? I'll set up a blank project and see If I can replicate what is happening.
Thank you.

There have been no changes recently in AuthComponent and it's related classes in core. Maybe something something changed in hybridauth or facebook. Check with a clean setup with another provider and see what happens.

Thank you, I'll try.

Hi Admad,
Sorry, it's working perfectly and is awesome! in the upgrade I changed the bootstrap file and did not load the plugin correctly, silly mistake.
thank you for all the work you do on CakePHP and your plugins they have helped me so much.
Have a good day!
Leigh


Uninsatll VM from instance produced an error

Steps
I installed the following BP which will create a VM in a deployed CS

g8client__dubai:
g8.url: 'du-conv-2.demo.greenitglobe.com'
g8.login: 'gig'
g8.password: 'KrOe6gE9K5nCQdmretfXnj'
g8.account: 'gig'

vdc__helloislam:
g8.client.name: 'dubai'
node.ovc__vmislam:
os.image: 'ubuntu 16.04 x64'
disk.size: 10
datadisks:
- 'name:disk1 size:50 type:normal'
- 'name:disk2 size:50 type:normal'
os.size: 2
ports:
- '139:139'
- '445:445'
- '137:137'
- '138:138'
vdc: 'helloislam'

Open the "vmislam" from the repo instance page
From the drop down choose "Uninstall**

Actual Result

This is not a cockpit error. Problems comes from AYS itself I think.
From the error I see that the uninstall action are not executed in the order they should.
The In order to delete a cloudspace it can not contain Machines message shows that AYS tried to delete the cloudspace before deleting the machine inside first.
So probably AYS did uninstall of the vdc service before uninstall of the node.

When I try to "Delete" it, The following error was produced

should be fixed by https://github.com/Jumpscale/jumpscale_core8/commit/8bb72bf615c4bebca8ef5529ed6aad473790f45e


get diff value between change before and after ?

It possible get the diff value between change before and after ?

It is not relative to the picker.
The picker allows users to get a date time value.


Clubhouse integration name change to Shortcut, needs update

Describe the changes you'd like
Clubhouse has recently changed their name to Shortcut, the button integration has broken due to this update
Relevant links or screenshots
Name change statement: https://shortcut.com/blog/clubhouse-changing-our-name-to-shortcut
Additional context
Reported by user

Case reference

I have a PR waiting for review that fixes this, #2006


[Bug]: ambigious indirect export error when importing @uploadthing/solid

What happened?
I'm getting an error when importing @uploadthing/solid.
Uncaught (in promise) SyntaxError: ambiguous indirect export: default 2 [dev.jsx:5:7](http://<IP_ADDRESS>:3000/@fs/home/rencedm112/Repositories/Mono/@taskgrove/node_modules/.pnpm/solidjs-dropzone@1.0.0_solid-js@1.7.5/node_modules/solidjs-dropzone/dist/dev.jsx?v=745a3ea6)

Here's the code
import { center } from "./styles.css";
import<EMAIL_ADDRESS>import { useUploadThing } from "@uploadthing/solid";

export default function FilesPage() {
  const uploadthing = useUploadThing({
    url: "http://localhost:3000",
    endpoint: "imageUploader",
  });
  return (
    <div class={center}>
      <label>
        Upload file
        <input
          type="file"
          name="uploadedFile"
          onChange={async (e) => {
            console.log("Upload");
            if (!e.currentTarget.files) return;
            uploadthing.startUpload(e.currentTarget.files);
          }}
        />
      </label>
    </div>
  );
}

What did you expect to happen?
Importing the package should not produce an error
Version
Node v20.2.0
Pnpm v8.6.0
@uploadthing/solid 3.0.5
uploadthing 4.0.0:
Reproduction Steps
Import @uploadthing/solid into a page route
Use any import in it in the code
Navigate to that page
Reproduction Repository
No response
Relevant log output
No response
Code of Conduct

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

Does it make any difference if you import matching versions of @uploadhting/solid and uploadthing?
I noticed you reported using @uploadthing/solid: 3.0.5 and uploadthing: 4.0.0 which may be incompatible.

Does it make any difference if you import matching versions of @uploadhting/solid and uploadthing?
I noticed you reported using @uploadthing/solid: 3.0.5 and uploadthing: 4.0.0 which may be incompatible.

I just tried it to use the same version now, same error.

cc @OrJDev


My first creation with nunuStudio

Hello @tentone !
The purpose of this post is not really to report a bug nor to suggest new ideas, but I did not know where else to submit it.
I apologize if this is a disturbance.
Maybe I did not search well enough but except your examples I haven't seen anything made with nunuStudio!
Well here is an idea actually :  What about a space on nunustudio.org for users to upload their creations !?
That would be awesome to see what others did and it would also be a great way to learn and make better things.
Anyway as the father of nunuStudio I thought you'd like to see more projects using your creation (I also believe it would be a nice encouragement to continue its development).
So here is something I made thanks to nunuStudio !
https://zfx.fr/demos/2021/index2.html
https://zfx.fr/demos/2021/index.html
I have been playing with nunu and following its development for quite some time but this is actually the  "biggest" project I made with it ! I hope to do more and better later.
I made two versions. The only difference is that in one version some shader material I use doesn't seem to compile under certain conditions on smartphone / tablet . The first link is my favourite version it works on my mobile but only if I watch it in  "landscape mode".
Anyway never mind this bug since there are lots of other things I did wrong in my "demo". I am sure it could be optimized a lot since as you'll notice the animation can be laggy and not smooth.
I believe I am more of a "hobbyist coder". I am not a "pro"  (you'd have guessed yourself by looking at my script ^^)  so what I mean is that I would have never been able to make it without nunuStudio!
As you noticed I changed the HTML. So there is no mention of nunuStudio. But I am currently re-making my blog and for sure there will be posts about nunuSutdio in it.
BTW where I live (france) we say we can say happy new year until the last day of january :) So I wish you the best and long life to nunuStudio !

Hello
Wow, you did quite an amazing job there. I think that we should add a new section in the main page of the project featuring community projects from time to time i receive some.
Thanks a lot for sharing this project. Makes me feel quite happy that the project can be of use.
I hope you have the happy year of 2021 in these weird times that we live in.
Thanks a lot!

Hello
Wow, you did quite an amazing job there. I think that we should add a new section in the main page of the project featuring community projects from time to time i receive some.
Thanks a lot for sharing this project. Makes me feel quite happy that the project can be of use.
I hope you have the happy year of 2021 in these weird times that we live in.
Thanks a lot!


Current API specification endpoints are tested

We need tests for currently-included endpoints in the specification to ensure that they actually do work as expected.
AC:

Current specification routes are tested

[ ] All routes are tested
[ ] Green paths are tested
[ ] Red paths are tested
[ ] Return value types are tested
[ ] Return types are tested

@telday can you please update this issue to be more clear about the scope? Is this primarily about implementing the tests for the Python client based on the stubs generated by the client generator? Let's write up the issue description so that it's clear when you're "done" - any additional tests for new clients or new testing schemes can be included in follow-up issues.


Missing summons for Forgotten Circles #99

Affected Scenario(s): [e.g. 6, 10 and 33]
Scenario #99 Aftershocks from Forgotten Circles
Describe the bug
Bug or feature request.

Need to summon civilians but can only summon purple token which can be confusing if other players are summoning.  Would be nice if we could summon other colors at least.

When a civilian is killed spoiler instructions say to read section 08 which is to replace the civilian with a Valrath Savage.  Do not see a way to summon this monster.

To Reproduce
Steps to reproduce the behavior:

Load scenario #99.
Attempt to summon something to represent civilians
Attempt to summon Valrath Savage

Browser : [e.g. Chrome, Firefox]
Tried using Safari, Firefox and Chrome while using virtual Gloomhaven 1.12.0

I think the first point is probably covered under #42
Definitely the second point is a bug, which I'll get a fix for

Replayed this scenario last night and see that we can now create the Valrath savages but still need to be able to create civilians.  I think a simple solution might be to add another monster type for this scenario - could be anything  so long as it is not already used. We ended up creating different traps so we can keep each one separate for tracking hit points.  Is there an icon available for escorts or something?

Yes, I think you're right - I'll have a cast around and see if I can find any art released under Creative Commons that would be suitable for civilians. It would be nice to have tokens that actually show them


Wrong EOL characters written to file

Issue Report Checklist

[x] Searched the issues page for similar reports

Add "Save all files with  EOL characters" option #5365 and Add a way of changing and converting EOL characters between different standards independent of OS #2196 suggest the Preferences -> Editor option "On save: convert EOL characters" set to "LF (Unix)" should solve this issue.
EOLs incorrectly switch from LF to CRLF on split editor panes #4304: is potentially similar? In that issue also, the selected EOL option was not being recognized for some reason.

[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice

Restarted Spyder, problem persists. Updated conda, Spyder is up to date. Restarted Spyder again, problem persists.

[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)

Done, reports that Spyder already up to date

[x] Tried basic troubleshooting (if a bug/error)

[x] Restarted Spyder
[x] Reset preferences with spyder --reset
[x] Tried the other applicable steps from the Troubleshooting Guide

[x] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
I am writing a .txt file from a python script in Spyder. I would like the end of line (EOL) character to be a line feed (LF), not a carriage return/line feed (CRLF). I have set the EOL character to LF in Spyder, and there are no "\r"s in my script. When I open the file in Notepad++ to check, it shows CRLF, not LF. Spyder displays the EOL option correctly in the bottom right of the viewer.

What steps reproduce the problem?

Set Spyder Preferences -> Editor -> "On save: convert EOL characters" set to "LF (Unix)"

Set Source -> Convert end of line characters to "Line Feed (Unix)"

Write sample code to a text file
Open text file in Notepad++, setting View -> Show symbols -> Show all characters

Sample code:
out_file = open('linefeed_fix_test1.txt', 'w')
test_list = ["line1|value1|value2", "line2|value1|value2", "line3|value1|value2", "line4|value1|value2", "line5|value1|value2"]
for i in test_list:
    out_file.write("{}\n".format(i))
out_file.close()

What is the expected output? What do you see instead?

 You're right: we're not setting EOL chars correctly when saving. We'll try to fix that in our next version.

@ccordoba12 Awesome, thanks!


RaycastCamera should be renamed UIRaycastCamera

The InputManager's event system RaycastCamera should be renamed to UIRaycastCamera reflect the FocusManager's property of the same name.

Done as per request, as part of the work on #1456


Script name needs to change to a unique name

Currently the script is using the same name as the MCU. We should give it a new name, so it definitely does not get overwritten by the new script auto update in the latest FL studio release.

Fixed in https://github.com/bramdebouvere/fltouch/commit/161486124628c644420eaef413d7e5ce76bca736


Misc updates

Updated dependencies.
I've removed some code that was clearly unused by the example page and components.
I've changed deployment script to deploy master branch to the root directory. It seems simpler and more reliable for most small projects. We usually use version tags anyway, and then everyone forgets about updating production branch. 😉
Updated readme:

npm update won't update package.json it the fist pass. So, I've added npm install before.
fixed formatting
simplified/removed last steps - no need to reclone if we clone to a proper dir name at the beginning

Late to the party, but I think this looks good! I'm going to merge it in


Update gpt4v params

Purpose
Update Gpt4V params in accordance with latest deployments.
Does this introduce a breaking change?

[ ] Yes
[ ] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test

Get the code

git clone [repo-address]
cd [repo-name]
git checkout [branch-name]
npm install

Test the code

What to Check
Verify that the following are valid

...

Other Information

I assume this just changed? I deployed this morning and previous params worked fine, but I assume you're in the know.

I assume this just changed? I deployed this morning and previous params worked fine, but I assume you're in the know.

Yup. After gpt4 v went live, latest params  got changed. Confirmed with Gina too.


test PR with Github API

Please pull this in!

Docs Build status updates of commit 3e6e22b:
:warning: Validation status: warnings

File
Status
Preview URL
Details
Dependent Files

sdp-test/page-model-documents/Tutorial.yml
:warning:Warning

Details

sdp-test/index.md
:white_check_mark:Succeeded

sdp-test/page-model-documents/Tutorial.yml

[Warning] Unable to find uid "challenge-uid".

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Generate kokoro_index.html before starting kokoro build

Preparation for making test results publicly accessible:
Before starting a build, generate generate a kokoro_index.html with links to  Kokoro build, test dashboard and other TBD items. Eventually (once the feature is available), the "Details" link on github PRs will point to this HTML file.

Known failures:
https://github.com/grpc/grpc/issues/11939


Strength improvements

Improve move ordering, passed pawns
Add tempo, reverse futility, sort of a version of PVS, open file detection
Score of 4ku-test.exe vs 4ku-strength-1: 405 - 138 - 457  [0.633] 1000
...      4ku-test.exe playing White: 203 - 78 - 220  [0.625] 501
...      4ku-test.exe playing Black: 202 - 60 - 237  [0.642] 499
...      White vs Black: 263 - 280 - 457  [0.491] 1000
Elo difference: 95.1 +/- 15.9, LOS: 100.0 %, DrawRatio: 45.7 %

Size
3858 --> 3888
+30 bytes

Looks good, thanks.


Script Hello World in podSpec causes my project to rebuild everything

This script in the Podspec is causing the project containing the Convertigo SDK to rebuild everything in my project everytimes even if no source file is modified.
It's really annoying because it makes compiling take at least 30 seconds  even if nothing is modified.
What is this script used for?
Can it be safely removed?
Could you update the SDK to a version without this Script?
s.script_phase = { :name => 'Hello World', :script => 'echo "C8oSDK: Add umbrella header for CBL dependency" && [ ! -d "./couchbase-lite-ios/Couchbaselite.framework/Modules" ] && mkdir ./couchbase-lite-ios/Couchbaselite.framework/Modules || echo "path already exists" && touch ./couchbase-lite-ios/Couchbaselite.framework/Modules/module.modulemap && echo 'framework module CouchbaseLite { module All { umbrella header "../Headers/CouchbaseLite.h" export * module * { export * }} module JSView { umbrella header "../../Extras/CBLRegisterJSViewCompiler.h" export * module * { export * }}}' > ./couchbase-lite-ios/Couchbaselite.framework/Modules/module.modulemap', :execution_position => :before_compile }

Unfortunately, this script can't be removed,
Its necessary because of a malformed packaged that c8osdk needs
We will try to reproduce your case,
Regards

Hello
Any update on this?
Thank you.


Appending the 0 for GIAI identifiers when converting from DL WebURI to URN

Dear @RalphTro
When converting the DL WebURI to URN for GIAI identifiers if GCP length is not provided then we are trying to map the identifier in the list provided by GS1 (https://www.gs1.org/sites/default/files/docs/gcp_length/gcpprefixformatlist.json). But for some identifiers, we are appending 0 at the beginning of the identifier before obtaining the GCP length from the above-provided link.
We would like to know if we should append the 0 to GIAI identifiers or not. Currently, we are taking the reference from the following project: https://github.com/RalphTro/getGCPLengthDemo/blob/master/getGCPLength.py where it's appending the 0. But if we append the 0 then we are getting the wrong GCP length for some of the know GIAI identifiers so we wanted to confirm if this is the right approach or do need some modification.
We are trying to convert an GIAI identifier for which we know that GCP length is 8 but when it looks via that file its finding it as 0 so we wanted to get confirmation on this and also wanted to confirm on what basis we are appending the 0 for application identifiers.
cc: @sboeckelmann

Dear @Aravinda93 ,
Thanks for the question, happy to support in this.
In contrast to e.g. SSCC and GTIN (GS1 AI 00 and 01), the 'keyStartsWithGCP' dictionary indicates that in the case of a GIAI (GS1 AI 8004), the key value immediatly starts with the GCP (''8004': True,'). And this is correct.
I think the reason of your question is the example, which indeed starts with a zero. But in this case, the zero is inherent part of the GCP.
GIAI in the example file: '0180451111ABC987'
Corresponding entry in the GCP length table:       { "prefix": "01804", "gcpLength": 10 },
Does this answer your question/does this help you?
Kind regards,
Ralph

@RalphTro
Thanks a lot for the quick response. Please correct me if my understanding is wrong.
By default we need to append 0 to GIAI for identifiers but it may change based on 2 conditions:
If GIAI identifier starts with 0 then we should not append again with 0.
If GIAI identifier does not start with 0 then we need to append and find the respective GCP length.
Following is the example for which we are trying to find the GCP length and convert to URN:
https://id.gs1.org/8004/42512183.SENSOR.TR-07-AVE-583:1

Since it does not start with 0 we are appending the 0 and trying to find the GCP length for it and the longest match we could find from the file is 042 which has the GCP length of 0:
{ "prefix": "042", "gcpLength": 0 },

Due to which we are unable to convert the WebURI to URN as GCP length should be between 6-12 digits.
Best regards,
Aravinda

Dear @RalphTro ,
well, the issue we are facing is related to a partner's GCP with a known GCP length of 8.
If we simply prepend a 0  we find a match on for a 0 length GCP in the JSON.
The issue might to be a confusion with 12-digit GTINs.
In your python demo there's always a 0 prepended for these identifiers which imho is not always correct.
The GCP in question is: 425121831
In the JSON we can find gcpLength=8
{ "prefix": "4251", "gcpLength": 8 },
but when prefixing with a 0 it results in
{ "prefix": "042", "gcpLength": 0 },
however, we might also be misunderstanding this line in the python script
# Normalise input string so that function works consistently for all GS1 keys
    if (keyStartsWithGCP[aI] == True):
        gs1Key = '0' + gs1Key

Dear @sboeckelmann and @Aravinda93 ,
I just run the Python script taking the example of a GIAI accommoding your GCP in question. For that purpose, I simply appended the example file:
print (gcl.getGCPLength('8004', '425121832999XYZ‘))
As a result, I get 8 - i.e. the correct GCP length. (And, when prefixing this GIAI with a zero, the table returns '0', as indicated).
It is important to note that the two lines you are refering to in GS1's GCP length table are two separate GCP ranges: the first one is issued by GS1 Germany, the second one isn't. In other words, if '042...' would in this case also return a GCP length of '8', it was wrong. So, the lookup into GS1's GCP length table seems to be working fine IMHO.
Nonwithstanding the latter: may I ask why you need to separate the GCP from the res tof the key in the first place? :-) If you can use GS1 DL URIs, then why not just go for e.g. 'https://id.gs1.org/8004/42512183SENSOR123'?

Dear @RalphTro,
thank you for testing it out. I think I get it now -  seems like magic in python is here:
gs1Key[1:(j+1)])
your not starting matching on the first digit in gs1Key, but on second. So we just missed something in the pyhton code.

can use GS1 DL URIs, then why not just go for e.g. 'https://id.gs1.org/8004/42512183SENSOR123'?
I know, but they wanted this dot here .... :unamused: looking really ugly when converted to URN...

Of course we are using GS1 DL when capturing the documents for this project, but for query by URN and for satisfying GS1-EPC-Format and GS1-CBV-XML-Format EPCIS 2.0 content negotiation headers, we are converting all identifiers to URN / DL when indexing to our repository.

:-) Yes, I think that was the magic back then.
A pity that you still have to separate the GCP value in this case - as this issue proofs, it makes things a lot easier when you do not need to care about the GCP length.
Is there anything more I can help you with on this matter?

no thank you, I think we are fine for now. Unfortunately we have to cope with gcp-length to support URNs  ... 😮💨
@Aravinda93 - or do you still have any open questions?

@RalphTro
Thanks a lot for the clarification. No, I do not have any more follow-up questions. Thanks a lot again, wish you a nice evening ahead :) closing the issue.