[Windows] Semantics onDidLoseAccessibilityFocus and onDidGainAccessibilityFocus are not called on focus change

Steps to Reproduce

Execute flutter run on the code sample
Press Tab until you have focused the counter text. You should see "Got focus." printed to your console.
Press Control + P. A new page should appear.

Expected results:
I would have expected to see Lost Focus printed to the console as the Semantics instance lost focus.
Actual results:
Nothing happens. When you click the "Back" button, you see the "Got focus." message printed to the console again.

Code sample

// ignore_for_file: avoid_print

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

/// An intent to push something.
class PushSomethingIntent extends Intent {
  /// Create an instance.
  const PushSomethingIntent();

  /// The hotkey to use.
  static const hotkey = SingleActivator(LogicalKeyboardKey.keyP, control: true);
}

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

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        // This is the theme of your application.
        //
        // Try running your application with "flutter run". You'll see the
        // application has a blue toolbar. Then, without quitting the app, try
        // changing the primarySwatch below to Colors.green and then invoke
        // "hot reload" (press "r" in the console where you ran "flutter run",
        // or simply save your changes to "hot reload" in a Flutter IDE).
        // Notice that the counter didn't reset back to zero; the application
        // is not restarted.
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

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

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

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

  final String title;

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

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

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

  @override
  Widget build(BuildContext context) {
    // This method is rerun every time setState is called, for instance as done
    // by the _incrementCounter method above.
    //
    // The Flutter framework has been optimized to make rerunning build methods
    // fast, so that you can just rebuild anything that needs updating rather
    // than having to individually change instances of widgets.
    return Shortcuts(
      child: Actions(
        actions: {
          PushSomethingIntent: CallbackAction<PushSomethingIntent>(
            onInvoke: (intent) => Navigator.of(context).push(
              MaterialPageRoute(
                builder: (context) => Scaffold(
                  appBar: AppBar(
                    title: const Text('Second Screen'),
                  ),
                  body: const Center(
                    child: Text('You can go back now.'),
                  ),
                ),
              ),
            ),
          )
        },
        child: Scaffold(
          appBar: AppBar(
            // Here we take the value from the MyHomePage object that was created by
            // the App.build method, and use it to set our appbar title.
            title: Text(widget.title),
          ),
          body: Center(
            // Center is a layout widget. It takes a single child and positions it
            // in the middle of the parent.
            child: Column(
              // Column is also a layout widget. It takes a list of children and
              // arranges them vertically. By default, it sizes itself to fit its
              // children horizontally, and tries to be as tall as its parent.
              //
              // Invoke "debug painting" (press "p" in the console, choose the
              // "Toggle Debug Paint" action from the Flutter Inspector in Android
              // Studio, or the "Toggle Debug Paint" command in Visual Studio Code)
              // to see the wireframe for each widget.
              //
              // Column has various properties to control how it sizes itself and
              // how it positions its children. Here we use mainAxisAlignment to
              // center the children vertically; the main axis here is the vertical
              // axis because Columns are vertical (the cross axis would be
              // horizontal).
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                const Text(
                  'You have pushed the button this many times:',
                ),
                Focus(
                  child: Semantics(
                    child: Text(
                      '$_counter',
                      style: Theme.of(context).textTheme.headline4,
                    ),
                    onDidGainAccessibilityFocus: () {
                      print('Got focus.');
                    },
                    onDidLoseAccessibilityFocus: () {
                      print('Lost focus.');
                    },
                  ),
                ),
              ],
            ),
          ),
          floatingActionButton: FloatingActionButton(
            onPressed: _incrementCounter,
            tooltip: 'Increment',
            child: const Icon(Icons.add),
          ), // This trailing comma makes auto-formatting nicer for build methods.
        ),
      ),
      shortcuts: const {PushSomethingIntent.hotkey: PushSomethingIntent()},
    );
  }
}

Logs

[  +45 ms] executing: [C:\Users\chris\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[ +177 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] e85ba6eeae679e776792f8cacd10ebdd7707eecb
[        ] executing: [C:\Users\chris\flutter/] git tag --points-at e85ba6eeae679e776792f8cacd10ebdd7707eecb
[  +36 ms] Exit code 0 from: git tag --points-at e85ba6eeae679e776792f8cacd10ebdd7707eecb
[   +1 ms] executing: [C:\Users\chris\flutter/] git describe --match *.*.* --long --tags e85ba6eeae679e776792f8cacd10ebdd7707eecb
[  +40 ms] Exit code 0 from: git describe --match *.*.* --long --tags e85ba6eeae679e776792f8cacd10ebdd7707eecb
[        ] 2.10.0-0.0.pre-716-ge85ba6eeae
[   +5 ms] executing: [C:\Users\chris\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +25 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/master
[        ] executing: [C:\Users\chris\flutter/] git ls-remote --get-url origin
[  +22 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +75 ms] executing: [C:\Users\chris\flutter/] git rev-parse --abbrev-ref HEAD
[  +27 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] master
[  +49 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[   +9 ms] Artifact Instance of 'PubDependencies' is not required, skipping update.
[   +7 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[   +4 ms] Artifact Instance of 'PubDependencies' is not required, skipping update.
[  +40 ms] Skipping pub get: version match.
[  +85 ms] Generating C:\Users\chris\src\on_did_lose_accessibility_focus\android\app\src\main\java\io\flutter\plugins\GeneratedPluginRegistrant.java
[  +69 ms] Initializing file store
[   +7 ms] Skipping target: gen_localizations
[   +4 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: C:\Users\chris\src\on_did_lose_accessibility_focus\.dart_tool\package_config_subset}
[  +17 ms] gen_dart_plugin_registrant: Complete
[   +1 ms] Skipping target: _composite
[   +1 ms] complete
[   +3 ms] Launching lib\main.dart on Windows in debug mode...
[   +3 ms] C:\Users\chris\flutter\bin\cache\dart-sdk\bin\dart.exe --disable-dart-dev C:\Users\chris\flutter\bin\cache\dart-sdk\bin\snapshots\frontend_server.dart.snapshot --sdk-root C:\Users\chris\flutter\bin\cache\artifacts\engine\common\flutter_patched_sdk/ --incremental --target=flutter --debugger-module-names --experimental-emit-debug-metadata -DFLUTTER_WEB_AUTO_DETECT=true --output-dill C:\Users\chris\AppData\Local\Temp\flutter_tools.d33b92d0\flutter_tool.133b3b1d\app.dill --packages C:\Users\chris\src\on_did_lose_accessibility_focus\.dart_tool\package_config.json -Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts --track-widget-creation --filesystem-scheme org-dartlang-root --initialize-from-dill build\c075001b96339384a97db4862b8ab8db.cache.dill.track.dill --flutter-widget-cache --enable-experiment=alternative-invalidation-strategy
[  +19 ms] executing: C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe -format json -products * -utf8 -latest -version 16 -requires Microsoft.VisualStudio.Workload.NativeDesktop Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Microsoft.VisualStudio.Component.VC.CMake.Project
[  +26 ms] Exit code 0 from: C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe -format json -products * -utf8 -latest -version 16 -requires Microsoft.VisualStudio.Workload.NativeDesktop Microsoft.VisualStudio.Component.VC.Tools.x86.x64 Microsoft.VisualStudio.Component.VC.CMake.Project
[        ] [
             {
               "instanceId": "48f70a3c",
               "installDate": "2022-02-27T12:24:06Z",
               "installationName": "VisualStudio/17.1.0+32210.238",
               "installationPath": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise",
               "installationVersion": "17.1.32210.238",
               "productId": "Microsoft.VisualStudio.Product.Enterprise",
               "productPath": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\Common7\\IDE\\devenv.exe",
               "state":<PHONE_NUMBER>,
               "isComplete": true,
               "isLaunchable": true,
               "isPrerelease": false,
               "isRebootRequired": false,
               "displayName": "Visual Studio Enterprise 2022",
               "description": "Scalable, end-to-end solution for teams of any size",
               "channelId": "VisualStudio.17.Release",
               "channelUri": "https://aka.ms/vs/17/release/channel",
               "enginePath": "C:\\Program Files (x86)\\Microsoft Visual Studio\\Installer\\resources\\app\\ServiceHub\\Services\\Microsoft.VisualStudio.Setup.Service",
               "installedChannelUri": "https://aka.ms/vs/17/release/channel",
               "releaseNotes": "https://docs.microsoft.com/en-us/visualstudio/releases/2022/release-notes-v17.1#17.1.0",
               "thirdPartyNotices": "https://go.microsoft.com/fwlink/?LinkId=661288",
               "updateDate": "2022-02-27T12:24:06.5628333Z",
               "catalog": {
                 "buildBranch": "d17.1",
                 "buildVersion": "17.1.32210.238",
                 "id": "VisualStudio/17.1.0+32210.238",
                 "localBuild": "build-lab",
                 "manifestName": "VisualStudio",
                 "manifestType": "installer",
                 "productDisplayVersion": "17.1.0",
                 "productLine": "Dev17",
                 "productLineVersion": "2022",
                 "productMilestone": "RTW",
                 "productMilestoneIsPreRelease": "False",
                 "productName": "Visual Studio",
                 "productPatchVersion": "0",
                 "productPreReleaseMilestoneSuffix": "7.0",
                 "productSemanticVersion": "17.1.0+32210.238",
                 "requiredEngineVersion": "3.1.2196.8931"
               },
               "properties": {
                 "campaignId": "2030",
                 "channelManifestId": "VisualStudio.17.Release/17.1.0+32210.238",
                 "nickname": "2",
                 "setupEngineFilePath": "C:\\Program Files (x86)\\Microsoft Visual Studio\\Installer\\setup.exe"
               }
             }
           ]
[   +1 ms] Building Windows application...
[  +13 ms] <- compile package:on_did_lose_accessibility_focus/main.dart
[   +1 ms] executing: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe -S C:\Users\chris\src\on_did_lose_accessibility_focus\windows -B build\windows -G Visual Studio 17 2022
[  +41 ms] -- Configuring done
[ +168 ms] -- Generating done
[  +14 ms] -- Build files have been written to: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows
[  +22 ms] executing: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe --build build\windows --config Debug --target INSTALL --verbose
[  +94 ms] Microsoft (R) Build Engine version 17.1.0+ae57d105c for .NET Framework
[        ] Copyright (C) Microsoft Corporation. All rights reserved.
[  +49 ms] Build started 01/03/2022 15:12:57.
[ +154 ms] Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\INSTALL.vcxproj" on node 1 (default targets).
[        ] Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\INSTALL.vcxproj" (1) is building "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\ZERO_CHECK.vcxproj" (2) on node 1 (default targets).
[        ] InitializeBuildStatus:
[        ]   Creating "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
[  +14 ms] CustomBuild:
[        ]   All outputs are up-to-date.
[  +18 ms] FinalizeBuildStatus:
[        ]   Deleting file "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\unsuccessfulbuild".
[        ]   Touching "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\ZERO_CHECK.lastbuildstate".
[        ] Done Building Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\ZERO_CHECK.vcxproj" (default targets).
[  +63 ms] Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\INSTALL.vcxproj" (1) is building "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\ALL_BUILD.vcxproj" (3) on node 1 (default targets).
[        ] Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\ALL_BUILD.vcxproj" (3) is building "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\flutter_wrapper_app.vcxproj" (4) on node 1 (default targets).
[        ] Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\flutter_wrapper_app.vcxproj" (4) is building "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\flutter_assemble.vcxproj" (5) on node 1 (default targets).
[        ] InitializeBuildStatus:
[        ]   Creating "x64\Debug\flutter_assemble\flutter_assemble.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
[   +6 ms] CustomBuild:
[        ]   "The build of 'C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\CMakeFiles\929510fb3ccdad1caece5fb29dd3c570\flutter_assemble.rule' depends on 'C:\USERS\CHRIS\SRC\ON_DID_LOSE_ACCESSIBILITY_FOCUS\WINDOWS\FLUTTER\EPHEMERAL\FLUTTER_WINDOWS.DLL' which is produced by the build of 'C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\CMakeFiles\26fdd4173e01b3324d06d656e9fd6e3d\flutter_windows.dll.rule'. The items cannot be built in parallel."
[  +58 ms]   Generating C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/flutter_windows.dll, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/flutter_export.h, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/flutter_windows.h, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/flutter_messenger.h, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/flutter_plugin_registrar.h, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/flutter_texture_registrar.h, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/cpp_client_wrapper/core_implementations.cc, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/cpp_client_wrapper/standard_codec.cc, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/cpp_client_wrapper/plugin_registrar.cc, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/cpp_client_wrapper/flutter_engine.cc, C:/Users/chris/src/on_did_lose_accessibility_focus/windows/flutter/ephemeral/cpp_client_wrapper/flutter_view_controller.cc, _phony_
[ +742 ms]   [  +46 ms] executing: [C:\Users\chris\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[ +169 ms]   [ +183 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ]   [        ] e85ba6eeae679e776792f8cacd10ebdd7707eecb
[        ]   [        ] executing: [C:\Users\chris\flutter/] git tag --points-at e85ba6eeae679e776792f8cacd10ebdd7707eecb
[  +43 ms]   [  +43 ms] Exit code 0 from: git tag --points-at e85ba6eeae679e776792f8cacd10ebdd7707eecb
[        ]   [        ] executing: [C:\Users\chris\flutter/] git describe --match *.*.* --long --tags e85ba6eeae679e776792f8cacd10ebdd7707eecb
[  +45 ms]   [  +45 ms] Exit code 0 from: git describe --match *.*.* --long --tags e85ba6eeae679e776792f8cacd10ebdd7707eecb
[        ]   [        ] 2.10.0-0.0.pre-716-ge85ba6eeae
[   +5 ms]   [   +5 ms] executing: [C:\Users\chris\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +31 ms]   [  +31 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ]   [        ] origin/master
[        ]   [        ] executing: [C:\Users\chris\flutter/] git ls-remote --get-url origin
[  +27 ms]   [  +27 ms] Exit code 0 from: git ls-remote --get-url origin
[        ]   [        ] https://github.com/flutter/flutter.git
[  +39 ms]   [  +39 ms] executing: [C:\Users\chris\flutter/] git rev-parse --abbrev-ref HEAD
[  +33 ms]   [  +33 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ]   [        ] master
[  +39 ms]   [  +39 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +1 ms]   [   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +10 ms]   [  +10 ms] Artifact Instance of 'PubDependencies' is not required, skipping update.
[  +34 ms]   [  +34 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[   +1 ms]   [   +1 ms] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[        ]   [        ] Artifact Instance of 'PubDependencies' is not required, skipping update.
[  +27 ms]   [  +27 ms] Initializing file store
[  +10 ms]   [  +10 ms] Done initializing file store
[  +28 ms]   [  +28 ms] Skipping target: gen_localizations
[   +7 ms]   [   +7 ms] Skipping target: gen_dart_plugin_registrant
[+1687 ms]   [+1687 ms] Skipping target: unpack_windows
[ +313 ms]   [ +313 ms] kernel_snapshot: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: C:\Users\chris\src\on_did_lose_accessibility_focus\lib\main.dart}
[  +15 ms]   [  +15 ms] C:\Users\chris\flutter\bin\cache\dart-sdk\bin\dart.exe --disable-dart-dev C:\Users\chris\flutter\bin\cache\dart-sdk\bin\snapshots\frontend_server.dart.snapshot --sdk-root C:\Users\chris\flutter\bin\cache\artifacts\engine\common\flutter_patched_sdk/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_WEB_AUTO_DETECT=true -Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts --track-widget-creation --packages C:\Users\chris\src\on_did_lose_accessibility_focus\.dart_tool\package_config.json --output-dill C:\Users\chris\src\on_did_lose_accessibility_focus\.dart_tool\flutter_build\4079dae88039f4e9d3de72d88967c827\app.dill --depfile C:\Users\chris\src\on_did_lose_accessibility_focus\.dart_tool\flutter_build\4079dae88039f4e9d3de72d88967c827\kernel_snapshot.d package:on_did_lose_accessibility_focus/main.dart
[+5698 ms]   [+5698 ms] kernel_snapshot: Complete
[ +326 ms]   [ +326 ms] debug_bundle_windows_assets: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: C:\Users\chris\src\on_did_lose_accessibility_focus\.dart_tool\flutter_build\4079dae88039f4e9d3de72d88967c827\app.dill}
[ +119 ms]   [ +119 ms] debug_bundle_windows_assets: Complete
[ +156 ms]   [ +156 ms] Persisting file store
[   +6 ms]   [   +6 ms] Done persisting file store
[   +2 ms]   [   +3 ms] build succeeded.
[   +6 ms]   [   +6 ms] "flutter assemble" took 8,469ms.
[   +8 ms]   [   +8 ms] ensureAnalyticsSent: 5ms
[        ]   [        ] Running shutdown hooks
[        ]   [        ] Shutdown hooks complete
[        ]   [        ] exiting with code 0
[  +50 ms] FinalizeBuildStatus:
[        ]   Deleting file "x64\Debug\flutter_assemble\flutter_assemble.tlog\unsuccessfulbuild".
[        ]   Touching "x64\Debug\flutter_assemble\flutter_assemble.tlog\flutter_assemble.lastbuildstate".
[        ] Done Building Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\flutter_assemble.vcxproj" (default targets).
[   +3 ms] InitializeBuildStatus:
[        ]   Creating "flutter_wrapper_app.dir\Debug\flutter_.29A3F7AE.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
[   +1 ms] CustomBuild:
[        ]   All outputs are up-to-date.
[  +38 ms] ClCompile:
[        ]   All outputs are up-to-date.
[  +14 ms] Lib:
[        ]   All outputs are up-to-date.
[        ]   flutter_wrapper_app.vcxproj -> C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\Debug\flutter_wrapper_app.lib
[   +6 ms] FinalizeBuildStatus:
[        ]   Deleting file "flutter_wrapper_app.dir\Debug\flutter_.29A3F7AE.tlog\unsuccessfulbuild".
[        ]   Touching "flutter_wrapper_app.dir\Debug\flutter_.29A3F7AE.tlog\flutter_wrapper_app.lastbuildstate".
[        ] Done Building Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\flutter_wrapper_app.vcxproj" (default targets).
[  +18 ms] Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\ALL_BUILD.vcxproj" (3) is building "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\flutter_wrapper_plugin.vcxproj" (6) on node 1 (default targets).
[        ] InitializeBuildStatus:
[        ]   Creating "flutter_wrapper_plugin.dir\Debug\flutter_.CB3943D9.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
[   +1 ms] CustomBuild:
[        ]   All outputs are up-to-date.
[   +4 ms] ClCompile:
[        ]   All outputs are up-to-date.
[   +2 ms] Lib:
[        ]   All outputs are up-to-date.
[        ]   flutter_wrapper_plugin.vcxproj -> C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\Debug\flutter_wrapper_plugin.lib
[   +3 ms] FinalizeBuildStatus:
[        ]   Deleting file "flutter_wrapper_plugin.dir\Debug\flutter_.CB3943D9.tlog\unsuccessfulbuild".
[        ]   Touching "flutter_wrapper_plugin.dir\Debug\flutter_.CB3943D9.tlog\flutter_wrapper_plugin.lastbuildstate".
[        ] Done Building Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\flutter\flutter_wrapper_plugin.vcxproj" (default targets).
[  +19 ms] Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\ALL_BUILD.vcxproj" (3) is building "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\runner\on_did_lose_accessibility_focus.vcxproj" (7) on node 1 (default targets).
[        ] InitializeBuildStatus:
[        ]   Creating "on_did_lose_accessibility_focus.dir\Debug\on_did_l.0987234E.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
[   +1 ms] CustomBuild:
[        ]   All outputs are up-to-date.
[  +14 ms] ClCompile:
[        ]   C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.31.31103\bin\HostX64\x64\CL.exe /c /IC:\Users\chris\src\on_did_lose_accessibility_focus\windows /IC:\Users\chris\src\on_did_lose_accessibility_focus\windows\flutter\ephemeral /IC:\Users\chris\src\on_did_lose_accessibility_focus\windows\flutter\ephemeral\cpp_client_wrapper\include /Zi /nologo /W4 /WX /diagnostics:column /Od /Ob0 /D _UNICODE /D UNICODE /D WIN32 /D _WINDOWS /D _HAS_EXCEPTIONS=0 /D _DEBUG /D NOMINMAX /D UNICODE /D _UNICODE /D "CMAKE_INTDIR=\"Debug\"" /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /std:c++17 /Fo"on_did_lose_accessibility_focus.dir\Debug\\" /Fd"on_did_lose_accessibility_focus.dir\Debug\vc143.pdb" /external:W4 /Gd /TP /wd4100 /errorReport:queue C:\Users\chris\src\on_did_lose_accessibility_focus\windows\flutter\generated_plugin_registrant.cc C:\Users\chris\src\on_did_lose_accessibility_focus\windows\runner\flutter_window.cpp
[  +27 ms]   generated_plugin_registrant.cc
[ +247 ms]   flutter_window.cpp
[ +462 ms]   Generating Code...
[  +50 ms] ResourceCompile:
[        ]   All outputs are up-to-date.
[  +19 ms] Link:
[        ]   C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.31.31103\bin\HostX64\x64\link.exe /ERRORREPORT:QUEUE /OUT:"C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\runner\Debug\on_did_lose_accessibility_focus.exe" /INCREMENTAL /ILK:"on_did_lose_accessibility_focus.dir\Debug\on_did_lose_accessibility_focus.ilk" /NOLOGO ..\flutter\Debug\flutter_wrapper_app.lib C:\Users\chris\src\on_did_lose_accessibility_focus\windows\flutter\ephemeral\flutter_windows.dll.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /manifestinput:C:\Users\chris\src\on_did_lose_accessibility_focus\windows\runner\runner.exe.manifest /DEBUG /PDB:"C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/on_did_lose_accessibility_focus.pdb" /SUBSYSTEM:WINDOWS /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/on_did_lose_accessibility_focus.lib" /MACHINE:X64  /machine:x64 on_did_lose_accessibility_focus.dir\Debug\Runner.res
[        ]   on_did_lose_accessibility_focus.dir\Debug\flutter_window.obj
[        ]   on_did_lose_accessibility_focus.dir\Debug\main.obj
[        ]   on_did_lose_accessibility_focus.dir\Debug\utils.obj
[        ]   on_did_lose_accessibility_focus.dir\Debug\win32_window.obj
[        ]   on_did_lose_accessibility_focus.dir\Debug\generated_plugin_registrant.obj
[ +119 ms]   on_did_lose_accessibility_focus.vcxproj -> C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\runner\Debug\on_did_lose_accessibility_focus.exe
[   +6 ms] FinalizeBuildStatus:
[        ]   Deleting file "on_did_lose_accessibility_focus.dir\Debug\on_did_l.0987234E.tlog\unsuccessfulbuild".
[        ]   Touching "on_did_lose_accessibility_focus.dir\Debug\on_did_l.0987234E.tlog\on_did_lose_accessibility_focus.lastbuildstate".
[        ] Done Building Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\runner\on_did_lose_accessibility_focus.vcxproj" (default targets).
[   +4 ms] InitializeBuildStatus:
[        ]   Creating "x64\Debug\ALL_BUILD\ALL_BUILD.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
[   +1 ms] CustomBuild:
[        ]   All outputs are up-to-date.
[   +5 ms] FinalizeBuildStatus:
[        ]   Deleting file "x64\Debug\ALL_BUILD\ALL_BUILD.tlog\unsuccessfulbuild".
[        ]   Touching "x64\Debug\ALL_BUILD\ALL_BUILD.tlog\ALL_BUILD.lastbuildstate".
[        ] Done Building Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\ALL_BUILD.vcxproj" (default targets).
[   +3 ms] InitializeBuildStatus:
[        ]   Creating "x64\Debug\INSTALL\INSTALL.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
[  +32 ms] PostBuildEvent:
[        ]   setlocal
[        ]   "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -DBUILD_TYPE=Debug -P cmake_install.cmake
[        ]   if %errorlevel% neq 0 goto :cmEnd
[        ]   :cmEnd
[        ]   endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
[        ]   :cmErrorLevel
[        ]   exit /b %1
[        ]   :cmDone
[        ]   if %errorlevel% neq 0 goto :VCEnd
[        ]   :VCEnd
[  +29 ms]   -- Install configuration: "Debug"
[  +14 ms]   -- Up-to-date: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/icudtl.dat
[        ]   -- Up-to-date: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/flutter_windows.dll
[   +4 ms]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets
[        ]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/AssetManifest.json
[        ]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/FontManifest.json
[        ]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/fonts
[        ]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/fonts/MaterialIcons-Regular.otf
[   +3 ms]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/kernel_blob.bin
[  +86 ms]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/NOTICES.Z
[        ]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/packages
[        ]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/packages/cupertino_icons
[        ]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/packages/cupertino_icons/assets
[        ]   -- Installing: C:/Users/chris/src/on_did_lose_accessibility_focus/build/windows/runner/Debug/data/flutter_assets/packages/cupertino_icons/assets/CupertinoIcons.ttf
[   +9 ms] FinalizeBuildStatus:
[        ]   Deleting file "x64\Debug\INSTALL\INSTALL.tlog\unsuccessfulbuild".
[        ]   Touching "x64\Debug\INSTALL\INSTALL.tlog\INSTALL.lastbuildstate".
[        ] Done Building Project "C:\Users\chris\src\on_did_lose_accessibility_focus\build\windows\INSTALL.vcxproj" (default targets).
[   +1 ms] Build succeeded.
[        ]     0 Warning(s)
[        ]     0 Error(s)
[        ] Time Elapsed 00:00:11.28
[  +16 ms] Building Windows application... (completed in 11.7s)
[ +195 ms] Observatory URL on device: http://<IP_ADDRESS>:1030/mnFpFeoutFQ=/
[   +4 ms] Caching compiled dill
[  +19 ms] Connecting to service protocol: http://<IP_ADDRESS>:1030/mnFpFeoutFQ=/
[  +94 ms] Launching a Dart Developer Service (DDS) instance at http://<IP_ADDRESS>:0, connecting to VM service at http://<IP_ADDRESS>:1030/mnFpFeoutFQ=/.
[  +45 ms] DDS is listening at http://<IP_ADDRESS>:1034/_6fKjdlUpTY=/.
[  +31 ms] Successfully connected to service protocol: http://<IP_ADDRESS>:1030/mnFpFeoutFQ=/
[  +12 ms] DevFS: Creating new filesystem on the device (null)
[  +12 ms] DevFS: Created new filesystem on the device (file:///C:/Users/chris/AppData/Local/Temp/on_did_lose_accessibility_focuse680fe5e/on_did_lose_accessibility_focus/)
[   +1 ms] Updating assets
[  +53 ms] Syncing files to device Windows...
[   +1 ms] <- reset
[        ] Compiling dart to kernel with 0 updated files
[        ] Processing bundle.
[        ] <- recompile package:on_did_lose_accessibility_focus/main.dart 056b8efa-f0c8-4a04-9dac-af25f23f1095
[        ] <- 056b8efa-f0c8-4a04-9dac-af25f23f1095
[   +1 ms] Bundle processing done.
[  +49 ms] Updating files.
[        ] DevFS: Sync finished
[        ] Syncing files to device Windows... (completed in 53ms)
[        ] Synced 0.0MB.
[   +1 ms] <- accept
[        ] Connected to _flutterView/0x1ac547ccdc0.
[   +1 ms] Flutter run key commands.
[        ] r Hot reload.
[        ] R Hot restart.
[        ] h List all available interactive commands.
[        ] d Detach (terminate "flutter run" but leave application running).
[        ] c Clear the screen
[        ] q Quit (terminate the application on the device).
[        ]  Running with sound null safety
[        ] An Observatory debugger and profiler on Windows is available at: http://<IP_ADDRESS>:1034/_6fKjdlUpTY=/
[ +113 ms] The Flutter DevTools debugger and profiler on Windows is available at: http://<IP_ADDRESS>:9101?uri=http://<IP_ADDRESS>:1034/_6fKjdlUpTY=/
[+1149 ms] flutter: Got focus.
[+3412 ms] flutter: Got focus.
[+1869 ms] DevFS: Deleting filesystem on the device (file:///C:/Users/chris/AppData/Local/Temp/on_did_lose_accessibility_focuse680fe5e/on_did_lose_accessibility_focus/)
[   +2 ms] DevFS: Deleted filesystem on the device (file:///C:/Users/chris/AppData/Local/Temp/on_did_lose_accessibility_focuse680fe5e/on_did_lose_accessibility_focus/)
[   +5 ms] Application finished.
[   +4 ms] "flutter run" took 19,126ms.
[   +9 ms] Service protocol connection closed.
[   +1 ms] ensureAnalyticsSent: 8ms
[        ] Running shutdown hooks
[        ] Shutdown hooks complete
[        ] exiting with code 0

[ÔêÜ] Flutter (Channel master, 2.11.0-0.0.pre.716, on Microsoft Windows [Version 10.0.22000.527], locale en-GB)
    ÔÇó Flutter version 2.11.0-0.0.pre.716 at C:\Users\chris\flutter
    ÔÇó Upstream repository https://github.com/flutter/flutter.git
    ÔÇó Framework revision e85ba6eeae (8 hours ago), 2022-02-28 23:31:20 -0800
    ÔÇó Engine revision 615a60512c
    ÔÇó Dart version 2.17.0 (build 2.17.0-150.0.dev)
    ÔÇó DevTools version 2.11.1

[ÔêÜ] Android toolchain - develop for Android devices (Android SDK version 31.0.0-rc2)
    ÔÇó Android SDK at C:\Users\chris\AppData\Local\Android\sdk
    ÔÇó Platform android-31, build-tools 31.0.0-rc2
    ÔÇó Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    ÔÇó Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    ÔÇó All Android licenses accepted.

[ÔêÜ] Chrome - develop for the web
    ÔÇó Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[ÔêÜ] Visual Studio - develop for Windows (Visual Studio Enterprise 2022 17.1.0)
    ÔÇó Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Enterprise
    ÔÇó Visual Studio Enterprise 2022 version 17.1.32210.238
    ÔÇó Windows 10 SDK version 10.0.22000.0

[ÔêÜ] Android Studio (version 2020.3)
    ÔÇó Android Studio at C:\Program Files\Android\Android Studio
    ÔÇó Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    ÔÇó Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    ÔÇó Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[ÔêÜ] VS Code, 64-bit edition (version 1.64.2)
    ÔÇó VS Code at C:\Program Files\Microsoft VS Code
    ÔÇó Flutter extension version 3.27.0

[ÔêÜ] Connected device (3 available)
    ÔÇó Windows (desktop) ÔÇó windows ÔÇó windows-x64    ÔÇó Microsoft Windows [Version 10.0.22000.527]
    ÔÇó Chrome (web)      ÔÇó chrome  ÔÇó web-javascript ÔÇó Google Chrome 98.0.4758.102
    ÔÇó Edge (web)        ÔÇó edge    ÔÇó web-javascript ÔÇó Microsoft Edge 98.0.1108.56

[ÔêÜ] HTTP Host Availability
    ÔÇó All required HTTP hosts are available

ÔÇó No issues found!

Hi @chrisnorman7, thanks for filing the issue. I ran your code sample on both stable and the latest master channel. But both the methods are never called on losing or gaining the accessibility focus.
https://user-images.githubusercontent.com/31410839/156325976-7912a10b-9d76-461a-9496-7e52559c2acf.mp4
PS C:\Users\mahesh\Desktop\flutter_keyboard_test> flutterm run -d windows
Launching lib\main.dart on Windows in debug mode...
Building Windows application...
Syncing files to device Windows...                                 124ms

Flutter run key commands.
r Hot reload.
R Hot restart.
h List all available interactive commands.
d Detach (terminate "flutter run" but leave application running).
c Clear the screen
q Quit (terminate the application on the device).

 Running with sound null safety

An Observatory debugger and profiler on Windows is available at: http://<IP_ADDRESS>:51990/zRZe_RF3pug=/
The Flutter DevTools debugger and profiler on Windows is available at: http://<IP_ADDRESS>:9101?uri=http://<IP_ADDRESS>:51990/zRZe_RF3pug=/
Lost connection to device.
PS C:\Users\mahesh\Desktop\flutter_keyboard_test>

flutter doctor -v (windows)
[√] Flutter (Channel stable, 2.10.2, on Microsoft Windows [Version 10.0.19044.1526], locale en-US)    • Flutter version 2.10.2 at C:\flutter_sdk\stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 097d3313d8 (6 days ago), 2022-02-18 19:33:08 -0600
    • Engine revision a83ed0e5e3
    • Dart version 2.16.1
    • DevTools version 2.9.2

[√] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at C:\Users\mahesh\AppData\Local\Android\sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.11.4)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.11.31727.386
    • Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2020.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[√] VS Code (version 1.64.2)
    • VS Code at C:\Users\mahesh\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.34.0

[√] Connected device (4 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 11 (API 30)
      (emulator)
    • Windows (desktop)                  • windows       • windows-x64    • Microsoft Windows
      [Version 10.0.19044.1526]
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome
      98.0.4758.102
    • Edge (web)                         • edge          • web-javascript • Microsoft Edge
      98.0.1108.56

[√] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

[√] Flutter (Channel master, 2.11.0-0.0.pre.731, on Microsoft Windows [Version 10.0.19044.1526], locale en-US)
    • Flutter version 2.11.0-0.0.pre.731 at C:\flutter_sdk\master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 8f360c977a (2 hours ago), 2022-03-01 16:26:11 -0800
    • Engine revision a5718ab3c3
    • Dart version 2.17.0 (build 2.17.0-156.0.dev)
    • DevTools version 2.11.1

[√] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at C:\Users\mahesh\AppData\Local\Android\sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.11.4)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.11.31727.386
    • Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2020.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[√] VS Code (version 1.64.2)
    • VS Code at C:\Users\mahesh\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.36.0

[√] Connected device (4 available)
    • Windows (desktop)       • windows • windows-x64     • Microsoft Windows [Version 10.0.19044.1526]
    • Windows (UWP) (desktop) • winuwp  • windows-uwp-x64 •
    • Chrome (web)            • chrome  • web-javascript  • Google Chrome 98.0.4758.102
    • Edge (web)              • edge    • web-javascript  • Microsoft Edge 98.0.1108.56

[√] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

@chrisnorman7 Yes, I did press tab to switch focus across widgets as can be seen from the video. And I did not have any accessibility feature enabled at the time of recording the video.


doesn't work with latest<EMAIL_ADDRESS>

after upgrading nextto the latest release, plugin fails to build the package
Error: Cannot find module 'next-server/dist/server/config'
      at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
      at Function.Module._load (internal/modules/cjs/loader.js:507:25)
      at Module.require (internal/modules/cjs/loader.js:637:17)
      at require (internal/modules/cjs/helpers.js:20:18)
      at Object.<anonymous> (/Users/work-dir/node_modules/serverless-nextjs-plugin/lib/parseNextConfiguration.js:1:24)
      at Module._compile (internal/modules/cjs/loader.js:689:30)
      at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
      at Module.load (internal/modules/cjs/loader.js:599:32)
      at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
      at Function.Module._load (internal/modules/cjs/loader.js:530:3)
      at Module.require (internal/modules/cjs/loader.js:637:17)
      at require (internal/modules/cjs/helpers.js:20:18)
      at Object.<anonymous> (/Users/work-dir/node_modules/serverless-nextjs-plugin/index.js:4:32)
      at Module._compile (internal/modules/cjs/loader.js:689:30)
      at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
      at Module.load (internal/modules/cjs/loader.js:599:32)
      at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
      at Function.Module._load (internal/modules/cjs/loader.js:530:3)
      at Module.require (internal/modules/cjs/loader.js:637:17)
      at require (internal/modules/cjs/helpers.js:20:18)
      at plugins.forEach.plugin (/Users/work-dir/node_modules/serverless/lib/classes/PluginManager.js:108:18)
      at Array.forEach (<anonymous>)
      at PluginManager.loadPlugins (/Users/work-dir/node_modules/serverless/lib/classes/PluginManager.js:103:13)
      at PluginManager.loadServicePlugins (/Users/work-dir/node_modules/serverless/lib/classes/PluginManager.js:148:10)
      at PluginManager.loadAllPlugins (/Users/work-dir/node_modules/serverless/lib/classes/PluginManager.js:97:10)
      at pluginManager.loadConfigFile.then.then (/Users/work-dir/node_modules/serverless/lib/Serverless.js:78:35)
      at tryCatcher (/Users/work-dir/node_modules/bluebird/js/release/util.js:16:23)
      at Promise._settlePromiseFromHandler (/Users/work-dir/node_modules/bluebird/js/release/promise.js:517:31)
      at Promise._settlePromise (/Users/work-dir/node_modules/bluebird/js/release/promise.js:574:18)
      at Promise._settlePromise0 (/Users/work-dir/node_modules/bluebird/js/release/promise.js:619:10)
      at Promise._settlePromises (/Users/work-dir/node_modules/bluebird/js/release/promise.js:699:18)
      at Promise._fulfill (/Users/work-dir/node_modules/bluebird/js/release/promise.js:643:18)
      at Promise._resolveCallback (/Users/work-dir/node_modules/bluebird/js/release/promise.js:437:57)
      at Promise._settlePromiseFromHandler (/Users/work-dir/node_modules/bluebird/js/release/promise.js:529:17)
      at Promise._settlePromise (/Users/work-dir/node_modules/bluebird/js/release/promise.js:574:18)
      at Promise._settlePromise0 (/Users/work-dir/node_modules/bluebird/js/release/promise.js:619:10)
      at Promise._settlePromises (/Users/work-dir/node_modules/bluebird/js/release/promise.js:699:18)
      at Promise._fulfill (/Users/work-dir/node_modules/bluebird/js/release/promise.js:643:18)
      at PromiseArray._resolve (/Users/work-dir/node_modules/bluebird/js/release/promise_array.js:126:19)
      at PromiseArray._promiseFulfilled (/Users/work-dir/node_modules/bluebird/js/release/promise_array.js:144:14)
      at Promise._settlePromise (/Users/work-dir/node_modules/bluebird/js/release/promise.js:579:26)
      at Promise._settlePromise0 (/Users/work-dir/node_modules/bluebird/js/release/promise.js:619:10)
      at Promise._settlePromises (/Users/work-dir/node_modules/bluebird/js/release/promise.js:699:18)
      at Promise._fulfill (/Users/work-dir/node_modules/bluebird/js/release/promise.js:643:18)
      at Promise._resolveCallback (/Users/work-dir/node_modules/bluebird/js/release/promise.js:437:57)
      at Promise._settlePromiseFromHandler (/Users/work-dir/node_modules/bluebird/js/release/promise.js:529:17)
      at Promise._settlePromise (/Users/work-dir/node_modules/bluebird/js/release/promise.js:574:18)
      at Promise._settlePromise0 (/Users/work-dir/node_modules/bluebird/js/release/promise.js:619:10)
      at Promise._settlePromises (/Users/work-dir/node_modules/bluebird/js/release/promise.js:699:18)
      at Promise._fulfill (/Users/work-dir/node_modules/bluebird/js/release/promise.js:643:18)
      at PropertiesPromiseArray.PromiseArray._resolve (/Users/work-dir/node_modules/bluebird/js/release/promise_array.js:126:19)
      at PropertiesPromiseArray._promiseFulfilled (/Users/work-dir/node_modules/bluebird/js/release/props.js:78:14)
      at Promise._settlePromise (/Users/work-dir/node_modules/bluebird/js/release/promise.js:579:26)
      at Promise._settlePromise0 (/Users/work-dir/node_modules/bluebird/js/release/promise.js:619:10)
      at Promise._settlePromises (/Users/work-dir/node_modules/bluebird/js/release/promise.js:699:18)
      at Promise._fulfill (/Users/work-dir/node_modules/bluebird/js/release/promise.js:643:18)
      at Promise._resolveCallback (/Users/work-dir/node_modules/bluebird/js/release/promise.js:437:57)
      at Promise._settlePromiseFromHandler (/Users/work-dir/node_modules/bluebird/js/release/promise.js:529:17)
      at Promise._settlePromise (/Users/work-dir/node_modules/bluebird/js/release/promise.js:574:18)
      at Promise._settlePromise0 (/Users/work-dir/node_modules/bluebird/js/release/promise.js:619:10)
      at Promise._settlePromises (/Users/work-dir/node_modules/bluebird/js/release/promise.js:695:18)
      at _drainQueueStep (/Users/work-dir/node_modules/bluebird/js/release/async.js:138:12)
      at _drainQueue (/Users/work-dir/node_modules/bluebird/js/release/async.js:131:9)
      at Async._drainQueues (/Users/work-dir/node_modules/bluebird/js/release/async.js:147:5)
      at Immediate.Async.drainQueues [as _onImmediate] (/Users/work-dir/node_modules/bluebird/js/release/async.js:17:14)
      at runCallback (timers.js:693:18)
      at tryOnImmediate (timers.js:664:5)
      at processImmediate (timers.js:646:5)
      at process.topLevelDomainCallback (domain.js:121:23)

     For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.

  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues
     Issues:        forum.serverless.com

  Your Environment Information ---------------------------
     Operating System:          darwin
     Node Version:              10.8.0
     Framework Version:         1.52.2
     Plugin Version:            3.0.0
     SDK Version:               2.1.1

solved by installing missed next-server package. this requirements is missing in any requirements

@eshikerya You shouldn't need to explicitly install next-server. Did you try running next build? Does it work?

working project, deployed list of times was upgraded to<EMAIL_ADDRESS>and I started to get this error message. downgrading to 9.0.5 fixed this issue, but I need 9.0.6 version cause this version have fix required for my project. So I start digging how to get this fixed and find out I doesn't have this (next-server) package installed anywhere. after adding this package everything start working as expected, almost.
Right now plugin deploy the build, but never stop working... deployed build 10 minutes ago and it still showing message:
Creating an optimized production build .Serverless: Run the "serverless" command to setup monitoring, troubleshooting and testing.
Creating an optimized production build ...

last 3 dots is jumping showing progress...

next-server was moved back into next in 9.0.6

so plug need adaptation for this changes

I had the same error trying to deploy with 9.0.6. Added next-server as suggested above and the deployment worked.

having this issue as well. adding next-server gets me a different message, though. Regardless, I'd like to do it the supported way

This is probably related to this 👉 https://github.com/zeit/next.js/pull/8613


TemporalJoin

Some overlap with @tysonjh work that I'd like to get clear. Maybe you can join forces?


Tilescape elements without sn and with same image

elements without sn and with same image:
https://canary.kodadot.xyz/ahp/drops/tilescape

cc: @preschian

checking~

I thoughts it's related with https://github.com/kodadot/nft-gallery/issues/9725. turns out it's different root cause


Elaborate on warning about attempting to read from files on the Consumption plan

There's a warning at the bottom of the "Working with options and settings" section:

Avoid attempting to read values from files like local.settings.json or appsettings.{environment}.json on the Consumption plan. Values read from these files related to trigger connections aren't available as the app scales because the hosting infrastructure has no access to the configuration information.

This leaves me with 2 questions:

If I can't read from those files, what should I do instead?
What is special about the Consumption plan that prevents this from working? Or does this warning also apply to the Premium and/or Dedicated plans?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 5786402e-9d88-5de0-607a-1c2a143af006
Version Independent ID: 15368d1c-b22e-7eb2-413f-cc0d41d2b909
Content: Use dependency injection in .NET Azure Functions
Content Source: articles/azure-functions/functions-dotnet-dependency-injection.md
Service: azure-functions
GitHub Login: @craigshoemaker
Microsoft Alias: cshoe

@rigdern - the guidance of what to do instead is to use the options and settings as described in the section above the warning 😉
As for why I call out Consumption specifically - values read from those .json files aren't available as the app scales because the hosting infrastructure has no access to the configuration information as its spinning up additional instances of the app.
I'll add a bit more to the doc to clarify.
Thanks!
#please-close

@craigshoemaker Thanks for the response. I believe this issue should be reopened. Let me elaborate on my feedback.

the guidance of what to do instead is to use the options and settings as described in the section above the warning

The section above the warning just talks about putting settings in local.settings.json and provides a link to the app settings doc with little additional context. This section makes sense if you are already experienced with Azure Function settings. If you are not, this section is cryptic because it's missing context.
Imagine being new to Azure Functions and coming across this doc page. After reading this section, I would have these questions:

I'm confused, am I supposed to use local.settings.json or not? The section had an example using local.settings.json but then a warning mentioned I shouldn't use local.settings.json. Maybe local.settings.json is only for the Premium and Dedicated plans.
The warning also mentions that I can't read from appsettings.{environment}.json. That's how I store my settings in my .NET core web service. If I can't store my settings there in an Azure Function, where am I supposed to store them?
The section mentioned this app settings doc in passing but didn't reference it at all in the example. What is its relationship to the rest of the section?

Being experienced with Azure Function settings, I can tell you a big concept that's missing is explicitly calling out the distinct mechanisms for managing settings for local deployments (local.settings.json) and Azure deployments (Application Settings in the Azure Portal). I filed #55976 to call out this and other topics that I think should be included in an overview doc about Azure Function settings. Perhaps this section should link to such an overview doc.

As for why I call out Consumption specifically - values read from those .json files aren't available as the app scales because the hosting infrastructure has no access to the configuration information as its spinning up additional instances of the app.

Why doesn't this apply to the Premium plan? If it's okay to read files in the Premium and Dedicated plans, perhaps it's worthwhile to call that out explicitly so developers don't have any doubts in their minds.


Use recent Feast 0.10 video

The video on the website is very dated. Our latest release is pretty well captured by the demo I had at Apply. I'd love for you to update it. Btw I have added a timestamp to the video id. I hope it works :)

Unfortunately the t query param doesn't work so well :(
Do you want to remove it?

@woop
Closing this since the link does not work well and you haven't responded.
Feel free to reopen.

Sure, let me swing back to this.


Logistic Slot

Although not a bug, would it be possible to pull bots/drones/vessels from logistic slots? Mainly asking because of the option in DeliverySlotsTweaks by starfi5h to automatically store items there.

I just made a change for some other things that should also make this work the way you want. I don't use DeliverySlotTweaks so I haven't tested that case specifically, but it should be able to pull items out of logistics storage


GTFS-RT support

Has there been any work yet related to adding GTFS-RT vehicle positions to the software?  It would be interesting to use this along with Open Trip Planner for mobile devices.

Hi @mpaine-act,
unfortunately no. The application currently supports only OpenStreetMap and Mapbox data. As soon as I get some free time I will look into adding this or if you are interested feel free to implement it. The project is open-source :)

Hi @mpaine-act,
unfortunately no. The application currently supports only OpenStreetMap and Mapbox data. As soon as I get some free time I will look into adding this or if you are interested feel free to implement it. The project is open-source :)

Good point :)  I'm working on a trip planner and having a "street view" would be interesting.

Good point :)  I'm working on a trip planner and having a "street view" would be interesting.


Binaries for HITMAN 2016 Camera Hack

Hello. Can would it will be possible for you to upload the last binaries for HITMAN 2016 Camera Hack?
Thanks.

I can, but to my knowledge they don't work anymore

I've readded it, but as said: it's likely it won't work anymore. I won't fix it anymore, so if it doesn't work, that's too bad.


vmagent crashloops with a valid config

Configuration
$ k get --all-namespacesvmpodscrapes.operator.victoriametrics.com -oyaml
apiVersion: v1
items:
- apiVersion: operator.victoriametrics.com/v1beta1
  kind: VMPodScrape
  metadata:
    annotations:
      kubectl.kubernetes.io/last-applied-configuration: |
        {"apiVersion":"operator.victoriametrics.com/v1beta1","kind":"VMPodScrape","metadata":{"annotations":{},"name":"all-pods","namespace":"observability"},"spec":{"namespaceSelector":{"any":true},"podMetricsEndpoints":[{"path":"/mgmt/metrics","port":"monitoring","scheme":"http"},{"relabelConfigs":[{"action":"replace","source_labels":["__meta_kubernetes_pod_annotation_prometheus_io_path"],"target_label":"__metrics_path__"},{"action":"replace","regex":"([^:]+)(?::\\d+)?;(\\d+)","replacement":"$1:$2","source_labels":["__address__","__meta_kubernetes_pod_annotation_prometheus_io_port"],"target_label":"__address__"}]}],"selector":{}}}
    creationTimestamp: "2020-12-17T16:18:32Z"
    generation: 1
    name: all-pods
    namespace: observability
    resourceVersion: "49561733"
    selfLink: /apis/operator.victoriametrics.com/v1beta1/namespaces/observability/vmpodscrapes/all-pods
    uid: a052427e-ea14-4a85-abaf-747a2e89aaf8
  spec:
    namespaceSelector:
      any: true
    podMetricsEndpoints:
    - path: /mgmt/metrics
      port: monitoring
      scheme: http
    - relabelConfigs:
      - action: replace
        source_labels:
        - __meta_kubernetes_pod_annotation_prometheus_io_path
        target_label: __metrics_path__
      - action: replace
        regex: ([^:]+)(?::\d+)?;(\d+)
        replacement: $1:$2
        source_labels:
        - __address__
        - __meta_kubernetes_pod_annotation_prometheus_io_port
        target_label: __address__
    selector: {}
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""

$  k get vmagents.operator.victoriametrics.com -oyaml
apiVersion: v1
items:
- apiVersion: operator.victoriametrics.com/v1beta1
  kind: VMAgent
  metadata:
    annotations:
      kubectl.kubernetes.io/last-applied-configuration: |
        {"apiVersion":"operator.victoriametrics.com/v1beta1","kind":"VMAgent","metadata":{"annotations":{},"name":"vmagent","namespace":"observability"},"spec":{"podScrapeNamespaceSelector":{},"podScrapeSelector":{},"remoteWrite":[{"url":"http://vminsert-vmcluster.observability.svc.cluster.local:8480/insert/0/prometheus/api/v1/write"}],"replicaCount":1,"serviceAccountName":"vmagent","serviceScrapeNamespaceSelector":{},"serviceScrapeSelector":{}}}
    creationTimestamp: "2020-12-14T17:32:30Z"
    generation: 2
    name: vmagent
    namespace: observability
    resourceVersion: "50155052"
    selfLink: /apis/operator.victoriametrics.com/v1beta1/namespaces/observability/vmagents/vmagent
    uid: e45d415c-fb19-410a-8c7e-d4e86a8f0d03
  spec:
    podScrapeNamespaceSelector: {}
    podScrapeSelector: {}
    remoteWrite:
    - url: http://vminsert-vmcluster.observability.svc.cluster.local:8480/insert/0/prometheus/api/v1/write
    replicaCount: 1
    serviceAccountName: vmagent
    serviceScrapeNamespaceSelector: {}
    serviceScrapeSelector: {}
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""

vmagent.yaml
# ...
- job_name: observability/all-pods/1
  honor_labels: false
  kubernetes_sd_configs:
  - role: pod
  relabel_configs:
  - source_labels:
    - __meta_kubernetes_namespace
    target_label: namespace
  - source_labels:
    - __meta_kubernetes_pod_container_name
    target_label: container
  - source_labels:
    - __meta_kubernetes_pod_name
    target_label: pod
  - target_label: job
    replacement: observability/all-pods
  - action: replace
  - regex: ([^:]+)(?::\d+)?;(\d+)
    replacement: $1:$2
    action: replace

Logs
...
2020-12-18T10:21:54.459Z	info	VictoriaMetrics/app/vmagent/main.go:113	started vmagent in 0.001 seconds
2020-12-18T10:21:54.459Z	info	VictoriaMetrics/lib/httpserver/httpserver.go:82	starting http server at http://:8429/
2020-12-18T10:21:54.459Z	info	VictoriaMetrics/lib/httpserver/httpserver.go:83	pprof handlers are exposed at http://:8429/debug/pprof/
2020-12-18T10:21:54.462Z	info	VictoriaMetrics/lib/promscrape/scraper.go:93	reading Prometheus configs from "/etc/vmagent/config_out/vmagent.env.yaml"
2020-12-18T10:21:54.518Z	fatal	VictoriaMetrics/lib/promscrape/scraper.go:96	cannot read "/etc/vmagent/config_out/vmagent.env.yaml": cannot parse Prometheus config from "/etc/vmagent/config_out/vmagent.env.yaml": cannot parse `scrape_config` #7: cannot parse `relabel_configs` for `job_name` "observability/all-pods/1": error when parsing `relabel_config` #5: missing `target_label` for `action=replace`

Thanks!

The problem at relabelConfigs - api has sourceLabels and targetLabel fields instead of source_labels and target_label.
Try to use following config:
  apiVersion: operator.victoriametrics.com/v1beta1
  kind: VMPodScrape
  metadata:
    annotations:
    name: all-pods
    namespace: observability
  spec:
    namespaceSelector:
      any: true
    podMetricsEndpoints:
    - path: /mgmt/metrics
      port: monitoring
      scheme: http
    - relabelConfigs:
      - action: replace
        sourceLabels:
        - __meta_kubernetes_pod_annotation_prometheus_io_path
        targetLabel: __metrics_path__
      - action: replace
        regex: ([^:]+)(?::\d+)?;(\d+)
        replacement: $1:$2
        # not source_labels
        sourceLabels:
        - __address__
        - __meta_kubernetes_pod_annotation_prometheus_io_port
        # not target_label
        targetLabel: __address__
    selector: {}

Need to fix it with adding target_label and source_labels fields. And  replace empty values for targetLabel and sourceLabels with corresponding values.

Added patch to master branch, now operator supports relabelConfig sources and target labels in sourceLabels/ targetLabel and classic source_labels / target_label format.

included in release https://github.com/VictoriaMetrics/operator/releases/tag/v0.7.0


Issue with Login

This is just what I was looking for, thank you for making this package!
Unfortunately I can't get the login to work on my end:

When running dune.fetch_auth_token() I get the response Method Not Allowed. I am sure the credentials are correct. Do I need the Pro subscription? If not, what do you think the issue is?

Pro subscription is not required.
I tried with my credentials, it seems to be working fine.

Thanks for the reply. Hmm weird, ok I will keep playing around with it. Having the same issue with the other implementation by another user as well, and must be my account.
I did have one other user DM me on twitter who seemed to be running into the same issues as me:

After dune.login() please try to print dune.auth_refresh what does it give you?
Try to use another login to see it's working?

Sorry for the slow response. When I run dune.auth_refresh nothing seems to happen.
I created a new account and I'm getting the same issue:

So just to confirm, there is nothing at all to do in terms of account setup outside of providing username & password?
Thanks for maintaining this really helpful package and looking forward to getting this working on my end

solved in latest version.

This issue seems to be back, at least for me

Me too have the same issue :(

Has anyone solved that yet?

Anyone knows how to solve it yet?


SELECT_PANEL_VIEWPORT_PADDING

Documentation Feedback
There is this constant SELECT_PANEL_VIEWPORT_PADDING mentioned in the API section for mat-select. But there is nothing mentioned on how exactly can this be used. I have a scenario where in I wish to specify a boundary which the mat-select panel must not cross. Is this SELECT_PANEL_VIEWPORT_PADDING related to what I am looking for? If yes, how do I use it? Just declare it the way it is written in the documentation. I need not bind to any elementref or something?
(There are other components too for which some more details would be useful. The angular material is very powerful library and the documentation too is good but some more details could help better.)
Thanks.
Feel free to provide any suggestions of content or examples you’d like us to include.
Affected documentation page: Insert a link to the affected page on material.angular.io

I think that constant was exported so that we can use it in our unit tests and it accidentally ended up in the public API because we have an export * from './select'. It isn't something that intended to be changed.

Also this from Autocomplete
@Input('matAutocompleteConnectedTo') connectedTo: MatAutocompleteOrigin
I tried using this
this.trigger.connectedTo=new MatAutocompleteOrigin(this.attrInput)
But i get an error Module not found: Error: Can't resolve '@angular/material/autocomplete/typings/autocomplete-origin'


sent picture does't show up in chat

Hello
After completing step 8  i could select a picture to send , but then i have a big spinner picture loading instead of the pic that i sent.

Thanks @madmax330  for jumping in to help.
@leonidas79 did you ever get it working?

i tried upload other pictures and it's working , i tested it in emulator , not yet in real device.

Ok great, I think we can close this but @leonidas79 if you have any troubles on the real device just ping this thread and we can re-open it.

Is it closed? Image uploading is working. I can see it in the firebase console. But I can't see the pic after showing placeholder image.

@bighwstyle image not showing could be related to the .getDownloadUrl() that has been deprecated. Hence, the friendlyMessage.imageUrl stores the wrong URL.
I solved it by using the following code to replace the putImageInStorage function:
private void putImageInStorage(final StorageReference storageReference, Uri uri, final String key) {

        UploadTask uploadTask = storageReference.putFile(uri);

        Task<Uri> urlTask = uploadTask.continueWithTask(new Continuation<UploadTask.TaskSnapshot, Task<Uri>>() {
            @Override
            public Task<Uri> then(@NonNull Task<UploadTask.TaskSnapshot> task) throws Exception {
                if (!task.isSuccessful()) {
                    throw task.getException();
                }

                return storageReference.getDownloadUrl();
            }
        }).addOnCompleteListener(new OnCompleteListener<Uri>() {
            @Override
            public void onComplete(@NonNull Task<Uri> task) {
                if (task.isSuccessful()) {

                    String downloadUrl = task.getResult().toString();

                    FriendlyMessage friendlyMessage = new FriendlyMessage(null, mUsername, mPhotoUrl,downloadUrl);

                    mFirebaseDatabaseReference.child(MESSAGES_CHILD).child(key).setValue(friendlyMessage);

                } else {
                    Log.w(TAG, "Image upload task was not successful.",
                            task.getException());
                }
            }
        });

hello,
If you have this problem, maybe is due to the rule:
rules_version = '2'; service firebase.storage {   match /b/{bucket}/o {     match /{allPaths=**} {       allow read, write: if request.auth != null;     }   } }


Swift 3 errors

I have Xcode 8 and trying to convert my project to Swift 3.
In my Podfile:
pod 'EasyTipView', '~> 1.0.2'
When I build the project, I get:
“Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly.
What am I doing wrong?

I got the same issue. You can work around it in your Podfile by adding this.
But it would be nice if the project file was updated.
post_install do |installer|
  installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
          config.build_settings['SWIFT_VERSION'] = '3.0'
      end
  end
end```

Hey guys, can you walk me through your problem? I keep on getting these issues on several projects but for me it does not reproduce.
Steps I followed:

Create a new Xcode project.
run pod init
add pod 'EasyTipView', '~> 1.0.2' to the Podfile
run pod install
open *.xcworkspace and import the library where you want to use it.

It all worked seamlessly for me.

My steps:

Open existing Swift 2.2 project
Use the migration tool in Xcode 8 (only on my code, not on the pods)
Be frustrated by the migration tool and Xcode in general
pod install
build project
Error message as described

It wasn't only EasyTipView, it happened for Material as well (https://github.com/CosmicMind/Material).

Getting this same error too :/

When I use the following code I get:
post_install do |installer|
  installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
          config.build_settings['SWIFT_VERSION'] = '3.0'
      end
  end
end```

`Module file was created by a new version of the compiler...` error. Not sure how to get around this.

If the fix is on the framework's side, then you're welcome to open a PR with the fixes.

This is still an issue?

Some people use this to get around your issue:
# Force swift 3 config
post_install do |installer|
  installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
          config.build_settings['SWIFT_VERSION'] = '3.0'
      end
  end
end

I cannot find anything wrong on the library's side, it works with a brand new Swift 3 project, but when you have a Swift 2.x project which you migrate to Swift 3 using Xcode, somehow the pod gets messed up. Maybe this is an issue concerning cocoapods?

Still looking at this regarding fixes (literally investigating right now).
Is 1.0.2 the latest?
On 31 October 2016 at 13:24, Teodor Patraş<EMAIL_ADDRESS>wrote:

Some people use this to get around your issue:
Force swift 3 config
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '3.0'
end
end
end
I cannot find anything wrong on the library's side, it works with a brand
new Swift 3 project, but when you have a Swift 2.x project which you
migrate to Swift 3 using Xcode, somehow the pod gets messed up. Maybe this
is an issue concerning cocoapods?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/teodorpatras/EasyTipView/issues/61#issuecomment-257292426,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB04RoWeMcvUxNTbq3v3t-T5Ks8aN8ZWks5q5ewYgaJpZM4KW2f1
.

Yes, 1.0.2 is the latest. If you find something on how to fix this problem from the library's side, you can open a PR.

When using the force swift 3 workaround - Xcode complains saying the module was created by a newer version of the compiler.


Renderer setters don't work until after initialize promise resolves

All of the setter methods on the renderers (e.g. setChannelMap, setRotationMatrix3) do nothing if they are called before the initialize promise resolves. There is no warning or error, and this behavior is not documented.
There isn't really any reason why these methods can't operate immediately, since they depend on objects created in _buildAudioGraph, which is run in the constructor, not in initialize. (Initialization only loads the HRIRs.)
This issue manifests, for example, as a bug in Resonance Audio Web SDK where the rotation matrix should be set immediately by an option to the constructor, but it does not take effect because the setRotationMatrix3 call on the Omnitone renderer does nothing.

I had noticed that as well.
Between this issue, another bug in Omnitone that was swapping audio channels when using the higher-order ambisonic renderer, and the fact that this repo and Resonance haven't been updated in several years, I forked the two projects and fixed the issues here: https://github.com/capnmidnight/resonance-audio-web-sdk


IDACalcIC does not return the value of y0 and yp0

After running IDACalcIC, the optimal value of y0 and yp0 are not saved to the variables. The calculated initial guesses are still saved somewhere, but I am not sure how to access them.
I have a large DAE system that this happens for, but I will exemplify it by modifying ida_HEAT2D.jl If you print u after every iteration of heatres and run IDACalcIC, the final u0 is
u0_IDACalcIC = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0000000000009052e-7, 1.000000000000397e-7, 1.0000000000006511e-7, ..., 1.0000000000009052e-7, 0.0, 1.0000000000009052e-7, 1.0000000000009052e-7, 1.0000000000009052e-7, 1.0000000000009052e-7, 1.0000000000009052e-7, 1.0000000000009052e-7, 1.0000000000009052e-7, 1.0000000000009052e-7, 1.0000000000009052e-7, 0.0]
compared to
u0_given = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.1, 0.1, ..., 0.1, 0.0, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.0]
Now, running your example shows that yres[:,1] is still equal to u0_given. The results for t > 0 do appear to be using u0_IDACalcIC however. This is the same in my model too. I am comparing a MATLAB implementation of the code using Sundials vs. my julia implementation of the code, so I am sure my final u0_IDACalcIC is correct because they match 1:1.
Iterating through IDASolve changes the value of t, y, and yp so I am a little confused why IDACalcIC does not do it as well. Is there some other way to access the converged y0 and yp0? I need them for my results.
I am using the latest Sundials and Julia 1.5.0.

Is there code you can share? Is this for the common interface?

I would be happy to email some code, but I do not want to put up the model publicly. I am not using the common interface because I could not find any options for constraining the variables (IDASetConstraints) or only taking a single step of the adaptive time stepper (Sundials.IDASolve(..., IDA_ONE_STEP)). If this is not the case then I would gladly switch over.

ahh, I didn't know they added IDASetConstraints but it's equivalent to isoutofdomain in our common interface, so we can get that setup. Single stepping is provided by the integrator interface https://diffeq.sciml.ai/stable/basics/integrator/
Anyways, I don't know but maybe the way to do it is to use the dense output to get the value out?

I had some time to test this with the common interface but I still have the same issue. What do you mean by using the dense output?

The get dky or whatever function for the continuous output would let you access the current value by evaluating it at the current time.

Perfect! For anyone else looking at this in the future, you can use Sundials.IDAGetDky(mem, 0.0, 0, y) to get the initial y0.


support node.js 12

What version of gRPC and what language are you using?
ubuntu 14.04.5
What operating system (Linux, Windows,...) and version?
1.20.0
What runtime / compiler are you using (e.g. python version or version of gcc)
gcc 4.8.4
What did you do?
If possible, provide a recipe for reproducing the error. Try being specific and include code snippets if helpful.
npm install grpc
What did you expect to see?
successful
What did you see instead?

https://travis-ci.org/nestjs/nest/jobs/523923958
Make sure you include information that can help us debug (full error message, exception listing, stack trace, logs).
See TROUBLESHOOTING.md for how to diagnose problems better.
Anything else we should know about your project / environment?

wrong repo, see https://github.com/grpc/grpc-node/issues/834


Refactor Generator aspect to use JSON-LD instead of RDFa

Biggest Changes:
Load JSON-LD file instead of RDFa using new branch names from schemaorg.
Removes symfony/dom-crawler and symfony/css-selector.
Adds local JsonLdParser helping class.
New Filters to convert HTML to Markdown in docblocks

Great! Thanks for all the feedback @Gummibeer - I'll get working on these soon.
I also made a branch in my fork for updating to version 9.0 of schema.org which seems to have published the majority of the pending ones causing issues for this iteration.
Interestingly like you said about extensions, everything is included to it add a lot more types!

I'm unsure about V8 schemas - but I know that v9 will require more changes to the generator. You can get an idea for those changes in: https://github.com/mallardduck/schema-org/tree/9.0-schema-upgrade

@mallardduck thanks again for all your help! 🙂
Here's the release:
https://github.com/spatie/schema-org/releases/tag/2.15.0
I will prepare v8 & v9 schema.org releases.

The v8 changed nearly nothing. 🤔
https://github.com/spatie/schema-org/releases/tag/2.16.0


Clarify the missing baseline lines of code warning message

See https://github.com/github/codeql/issues/5838
Merge / deployment checklist

[x] Confirm this change is backwards compatible with existing workflows.
[x] Confirm the readme has been updated if necessary.

All good suggestions.

Do you want to keep this at the warning level (which makes it visible in the Actions summary page), or drop it down to info/debug so it's only present in the logs view?

Hmmm...didn't realize that this would be raised to being visible in the summary page. This is a good point. I'll drop down its verbosity.

A debug message won't appear at all unless the debug flag is set to true. I'd be leaning towards using an info message.


HHH-10515 - Stored procedure execution fails to find column

https://hibernate.atlassian.net/browse/HHH-10515
@sebersole @vladmihalcea this is a first proposal using a config porperty

Looks good. Just the test class name should be probably changed.

Closing since https://github.com/hibernate/hibernate-orm/pull/1264 has improvements.


If i have twitch turbo on my account, will it get rid of the ads?

I have been testing it, and so far it does seem to get rid of ads.


Fix #48: Add GIF support

Fixes issue https://github.com/fossasia/susi_iOS/issues/48: Adds GIF Support

Please resolve merge conflicts.

Fixed @mariobehling


Configuration authorization 3: Finish making more configuration permissions editable

This is a rather large PR, sorry about that. But it is the last part to make configuration permissions editable.

There are 3 areas left which can only edited by superusers: System Settings, Notifications and the Configuration Permissions.
One notable point: Credentials had a functionality about Selenium, which was partially removed. Now it's completely removed.

This is very large, but it does look solid


memory error

I finally managed to run simple_dqn on ubuntu-14.04.4-desktop-amd64 LTS which is installed on virtualbox ,the host machine is Windows 7
I'v allocated 4GB to the VM and I got memory error what do i do ? thanks
(.venv)m@ubuntu:~/simple_dqn$ ./train.sh Breakout-v0 --environment gym
[2016-05-18 21:34:25,952] Making new env: Breakout-v0
[2016-05-18 21:34:25,988] Using Gym Environment
Traceback (most recent call last):
File "src/main.py", line 102, in
mem = ReplayMemory(args.replay_size, args)
File "/home/m/simple_dqn/src/replay_memory.py", line 12, in init
self.screens = np.empty((self.size, args.screen_height, args.screen_width), dtype = np.uint8)
MemoryError
(.venv)m@ubuntu:~/simple_dqn$

You need to decrease replay memory size. Default is 1000000, which takes about 6.5GB RAM. You could try if 500000 works in your case - use the command line option --replay_size 500000.
Also, if you are running the code in VirtualBox, then probably you are not using GPU? Then it's probably unbearably slow for training. Amazon EC2 is simple but costly solution, if you don't have access to GPU.


fix: recheck PR label on synchronize and reopen

Overview
Fixes the issue where the label checker blocks the build from passing because all the build statuses are reset on a PR push and the label checker didn't get re-triggered.
Changes

Enable PR label check on PR synchronize and reopen.

Testing

Create a PR
Label the PR with a supported label, e.g. chore
The enforce-changelog-label job should run and pass
Push a new commit to the PR
The enforce-changelog-label job should rerun and pass

Waiting for feefeed change to merge, then revert https://github.com/omgnetwork/elixir-omg/pull/1748/commits/a35fc90e8911c41b67aec76821ff73605b1885e5, then merge this PR


NIFI-12452 Improve support for DescribedValue

Summary
Improves usability of DescribedValue for property declaration, during tests and property value interpretation.
Makes exemplary use of new / modified APIs for ListenHTTP.
NIFI-12452
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[x] Apache NiFi Jira issue created

Pull Request Tracking

[x] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[x] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[x] Pull Request based on current revision of the main branch
[x] Pull Request refers to a feature branch with one commit containing changes

Verification
Please indicate the verification steps performed prior to pull request creation.
Build

[x] Build completed using mvn clean install -P contrib-check

[x] JDK 21

Licensing

[x] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[x] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[x] Documentation formatting appears as expected in rendered files

Thanks @EndzeitBegins for the improvement! I will review

Thank you for your feedback @exceptionfactory and @markap14.
I renamed defaultDescribedValue(DescribedValue) to defaultValue(DescribedValue) making it an overload of the existing defaultValue(String).
In this process I also removed all calls to defaultValue that statically provide null I could find in the codebase.  All these calls were effectively doing nothing, as the existing implementation of defaultValue just returns the PropertyDescriptor.Builder without any modification upon receiving null.
I assumed this is a more straightforward change than keeping the calls but as defaultValue((String) null).

My preference is to keep the name defaultValue and add the override. I would avoid allowing for a defaultValue that accepts an Object. While this could be a change that breaks backward compatibility for a few, I think it's a pretty niche concern and still fair game for a 2.0, as long as it's mentioned in the Migration Guide. Also of note, custom code could be updated to use .defaultValue( (String) null ) even in 1.x so there would be no need to maintain two different versions of the code, etc. So I think it's fair game.

Sounds reasonable to me. Thank you both @exceptionfactory & @markap14 for your valuable feedback. From my understanding the current PR proposal with the overload of defaultValue corresponds to the desired approach then.
Could one of you take on the task to enhance the migration guide then? As far as I'm aware sole contributors cannot propose or make changes to Confluence?
I've seen that there are conflicts with main now. I assume this is due to HttpNotificationService being removed by #8104. Should I rebase and force-push this PR to be compatible again or should I let the commiter resolve the issue?

Thanks for the reply @EndzeitBegins. Yes, if you can rebase and force push to resolve the conflict with HttpNotificationService being removed, that would be helpful.
I can start a new section in the Migration Guide.

I just rebased & squashed the commits, @exceptionfactory.

Thank you for taking on the merge process and adjusting the Migration Guidance, @exceptionfactory. Have a nice week.


Atmosphere, SkyLayer  and terrain all causing not found in UIManager errors

Environment

Dev OS: [Win11]
Version ^10.0.0-beta.59

Steps to reproduce
The following components are all causing errors.
Atmosphere - Invariant Violation: requireNativeComponent: "RCTMGLAtmosphere" was not found in the UIManager.
SkyLayer - Invariant Violation: requireNativeComponent: "RCTMGLSkyLayer" was not found in the UIManager.
Terrain - Invariant Violation: requireNativeComponent: "RCTMGLTerrain" was not found in the UIManager.
I have the rest of MapBox working including drawing shapes and lines on the graph. I have googled but have not found anything related to this topic. I'm also using EXPO and followed all the installation steps. All other parts of Map Box seem to work apart from the terrain and 3d stuff.
Is this component working as expected?
          <MapboxGL.Camera ref={camera} />
          <RasterDemSource
          id="mapbox-dem"
          url="mapbox://mapbox.mapbox-terrain-dem-v1"
          tileSize={514}
          maxZoomLevel={14}
        >
            <Atmosphere
              style={{
                color: 'rgb(186, 210, 235)',
                highColor: 'rgb(36, 92, 223)',
                horizonBlend: 0.02,
                spaceColor: 'rgb(11, 11, 25)',
                starIntensity: 0.6,
              }}
            />
            <SkyLayer
              id="sky-layer"
              style={{
                skyType: 'atmosphere',
                skyAtmosphereSun: [0.0, 0.0],
                skyAtmosphereSunIntensity: 15.0,
              }}
            />
            <Terrain style={{ exaggeration: 1.5 }} />
          </RasterDemSource>
        </MapboxGL.MapView>```

Same here in expo project. How can I fix this?


DbgHelp is slow and other symbol "fun"

The purpose of this issue is to share some learnings (and some salt about DbgHelp) that I have gained in the past few days furthering my descent into madness my understanding of symbols; whether any of this should be considered an issue that prompts changes to DbgShell or an endorsement of any particular approach I leave to the readers' judgement.
SymbolSearchPerf.cs.txt

SymSearch results are a superset of SymEnumSymbols - there is no symbol that SymEnumSymbols will return that SymSearch can not also return.

"But wait!" you say, "I have done searches that get results from SymEnumSymbols but not SymSearch!" And indeed, you are correct. So I shall share the sad tale of a simple, unassuming symbol, known to its friends as mshtml!g_hIsolatedHeap.
> Get-DbgSymbol "mshtml!g_hIsolatedHeap" -UseSymEnum
      0x642b1ba0 g_hIsolatedHeap

As expected. And what about SymSearch?
> Get-DbgSymbol "mshtml!g_hIsolatedHeap" -UseSymSearch

Nothing. Have I lied to you? No! I have not! It is DbgHelp that lies! This symbol's proper name is not mshtml!g_hIsolatedHeap at all, but in truth is mshtml!_g_hIsolatedHeap!
> Get-DbgSymbol "mshtml!_g_hIsolatedHeap" -UseSymSearch
      0x642b1ba0 g_hIsolatedHeap

SymEnumSymbols succceeds where SymSearch does not because DbgHelp secretly inserts search globs to cover for the lies it tells! But at what cost, you ask? "No, I didn-" Yes, you did. But unfortunately, there are so many different ways that DbgHelp is heckin' slow, you can't unambiguously pin it to one single thing† - but one can at least quantify how slow the various ways of calling into it to ask about our friend mshtml!_g_hIsolatedHeap are!

Method
Mean
Error
Ratio

FindSymbol_Enum
1,751,811.693 us
77,915.3682 us
1.000

FindSymbol_Enum_ExplicitStar
1,225,950.550 us
22,614.1927 us
0.691

FindSymbol_Enum_NoType
1,167,999.680 us
17,032.5053 us
0.668

FindSymbol_Enum_Mangled_SymOpts
705,314.202 us
34,711.8878 us
0.421

FindSymbol_Enum_PublicsOnly_Mangled_SymOpts
670,834.033 us
16,164.5092 us
0.384

FindSymbol_Search_ForcedStarGlob
3,409,318.860 us
37,855.2651 us
1.949

FindSymbol_Search_SecretUncodumentedWildcard
3,017,108.117 us
156,676.2463 us
1.736

FindSymbol_Search_Mangled_SymOpts
368,730.864 us
6,861.2060 us
0.210

(spoiler alert: Benchmarkdotnet picked microseconds for this table because some of the rows I cut out actually need it)
There are few things you can tell from that table (should the names happen to make sense to you, or should you reference against the attached code). First is that with the default settings DbgHelp does try to match against your original search terms before searching again with the injected star glob. Next you might notice that SymSearch manages to take twice as long (unless you set symopts to search against still-"decorated" streams, a trival concession for our symbol with no decoration to be had). I'm not really sure how it does that. One might also notice that there are undocumented wildcards (that one might want to, you know, escape). In this case, I used #, which seems to mean "match the preceding character 0 or 1 times"‡, but there's also some handling for a [a-z] style syntax.
Now, if one were to examine DbgHelp more closely††, one might notice that the public apis seem to pretty much just be messy wrappers aound DIA functions. And there is an undocumented SymGetDiaSession, what might one get from that? Crashes, unless one also notices the SymFreeDiaString and surmises that DbgHelp's DIA is special and doesn't use SysAllocString to allocate "BSTR" values.

Method
Mean
Error
Ratio

findChildren_Mangled_DiaComInterop
2,816.546 us
45.3609 us
0.002

findChildren_Mangled_DiaCppCli
111.870 us
0.5413 us
0.000

findChildren_Unmangled_DiaCppCli
338,699.820 us
6,055.1215 us
0.194

findChildren_Mangled_DiaCppCli_BuiltinSearchGlob
146,313.182 us
7,739.2609 us
0.084

Wow, using .NET COM interop with an exact search string gets us an answer 100 times faster (as long as we don't look at any string properties...). C++/CLI our way around the string issue and we get a whopping 3,000 times faster. Even undecoration & search globs can't get us as slow as the DbgHelp APIs go. But wait! There's more... most of those 112 microsecond were just fetching the DiaSession!

Method
Mean
Error
Ratio

findChildren_Mangled_DiaCppCli_CachedSession
4.629 us
0.0850 us
0.000

But why stop there? If you profile it, it's painfully obvious that DbgHelp's DIA is hamstrung by some inefficient UTF8 -> UTF16 conversion logic... and the disassembly tarot cards will tell you that the version of DIA in msdia140 somewhat improves on that conversion, in addition to a statically linked towlower... so how would that fare?

Method
Mean
Error
Ratio

findChildren_Mangled_msdia140CppCli
3.573 us
0.1180 us
0.000

findChildren_Unmangled_msdia140CppCli
361,605.138 us
7,670.6590 us
0.206

findChildren_Mangled_msdia140CppCli_BuiltinSearchGlob
140,708.329 us
5,434.0552 us
0.080

Well, shoot. Those numbers are rather remarkably close to DbgHelp's... I profiled them to make sure I wasn't accidentally double testing. I'm starting to suspect there was a reason the DbgHelp DIA used LocalAlloc instead of SysAllocString... msdia140 will use LocalAlloc if you use a secret alternate GUID to get your IDiaDataSource but I think I should post this and go to sleep before I get lured into testing that
( SymbolSearchPerf.cs.txt contains the benchmark code, which should compile & run against the head of my personal DbgShell repository)
† aside from the dynamically linked towlower call in DbgHelp!nextToken
‡ except in mshtml!_#_hIsolatedHeap where it means "get stuck in an infinite loop"
†† Not by diassembling it, of course, that would be against the terms of use!

Thank you for doing this analysis and sharing it. I have long wondered about the SymEnumSymbols vs SymSearch thing. (You'd think I could've just asked someone who works here, and I did try that, but got no reply.)

Apparently  SymSearch is only super slow if you're using the Recurse or AllItems search options in combination with undecorating symbols - because it doesn't apply the search mask until after populating the symbol info, causing every single symbol's name to go through an extra unnecessary (and suprisingly slow) utf8 -> utf16 -> utf8 round trip before undecorating it.
I also can't actually tell how AllItems is different from GlobalsOnly when there' isn't also Recurse (aside from being much slower).
And an actual DbgShell issue: Recurse with a "*" symbol name search errors out because some of the symbols returned don't have names


Add Vector3 type

See https://github.com/OutpostUniverse/OPHD/issues/1039

Two thoughts come to mind when I read this issue:

The NAS2D library doesn't actually use any 3D points, so it's not clear if this should be supported here, or left to downstream projects, such as OPHD.
The proposal to add a Vector3 basically implies code duplication. It might make more sense to parameterize the existing Vector class to allow a dimension to be specified, rather than duplicating all the code. Though if the fields were made to be generic for a N-dimensional vector, we would likely lose the familiar names x and y.

Having more dimensions than 4 is not something the game industry uses. Generalizing the code in such a way to allow N-dimensions would be a waste of brain power and time. Also, a lot of the duplicated code can be moved to a MathUtils namespace with Vector2/3/4 overloads (dotProduct, crossProduct, reflect, normalize, etc.)

I'm really not in favour of adding names such as Vector2/3/4, where the dimension is baked into the name.
Some consideration also needs to be given to maintenance. Sometimes method implementations change. If you've duplicated code for multiple dimensions, you multiply the maintenance effort to keep that code up to date.

Once they are written, the vector classes never change, barring actual language changes, (a rare thing). due to them being ingrained into everything. Changing my vector class header causes an entire rebuild of the engine. I imagine trying to unnecessarily templatize it will make that worse because there is only a header file.

You say that, and then immediate make a bug fix to one of the classes, without also updating the other class. :expressionless:

Gonna close this for now as I don't really see the need for a 3-value vector, it's not the direction I want to go with NAS2D.