Error "The Flutter Daemon has terminated" after waking PC from sleep mode

I see error dialogs "The Flutter Daemon has terminated." and "Cannot call write after a stream was destroyed."  every time I wake up my PC from sleep mode and try to start a new debug session.
Steps to reproduce:

Connect a device to USB cable for debugging
Open your Flutter project in VS Code
Start a debug session, works normally
Stop the debug session
Put your PC to sleep
Wake up your PC
Try starting a new debug session
The error dialogs are shown and debugging is not started
Click "Cancel" button in the "Cannot call write after a stream was destroyed." dialog and the "Restart" button in the "The Flutter Daemon has terminated." dialog.
Start a debug session, now it works again.

Log created with these steps:

Run flutter daemon -v from a terminal
Paste in [{"id":"2","method":"device.enable"}] and press enter
Wait for your device to show up in the JSON output
Put your PC to sleep
Wake your PC

.
.
.
[   +6 ms] Starting device daemon...
[{"event":"daemon.connected","params":{"version":"0.5.3","pid":23088}}]
[{"id":"2","method":"device.enable"}]
[{"id":"2","result":[null,null,null]}]
[+12447 ms] executing: c:\tools\android-sdk\platform-tools\adb.exe devices -l
[  +84 ms] List of devices attached
           ad0c16039914a951e1     device product:heroltexx model:SM_G930F device:herolte transport_id:12
[{"event":"device.added","params":{"id":"ad0c16039914a951e1","name":"SM G930F","platform":"android-arm64","emulator":false,"category":"mobile","platformType":"android","ephemeral":true,"emulatorId":null}}]
[+4008 ms] executing: c:\tools\android-sdk\platform-tools\adb.exe devices -l
[  +87 ms] List of devices attached
           ad0c16039914a951e1     device product:heroltexx model:SM_G930F device:herolte transport_id:12
[+4003 ms] executing: c:\tools\android-sdk\platform-tools\adb.exe devices -l
[  +76 ms] List of devices attached
           ad0c16039914a951e1     device product:heroltexx model:SM_G930F device:herolte transport_id:12
[+4003 ms] executing: c:\tools\android-sdk\platform-tools\adb.exe devices -l
[  +81 ms] List of devices attached
           ad0c16039914a951e1     device product:heroltexx model:SM_G930F device:herolte transport_id:12
[+4004 ms] executing: c:\tools\android-sdk\platform-tools\adb.exe devices -l
[  +73 ms] List of devices attached
           ad0c16039914a951e1     device product:heroltexx model:SM_G930F device:herolte transport_id:12
[+4002 ms] executing: c:\tools\android-sdk\platform-tools\adb.exe devices -l
[+25213 ms] adb.exe F 07-28 13:23:35  1384  6580 fdevent_poll.cpp:64] failed to create fdevent interrupt socketpair: Invalid argument
Unable to run "adb", check your Android SDK installation and ANDROID_HOME environment variable: c:\tools\android-sdk\platform-tools\adb.exe

#0      throwToolExit (package:flutter_tools/src/base/common.dart:14:3)
#1      AndroidDevices.pollingGetDevices (package:flutter_tools/src/android/android_device_discovery.dart:62:7)
<asynchronous suspension>
#2      PollingDeviceDiscovery._initTimer.<anonymous closure> (package:flutter_tools/src/device.dart:300:44)
#3      _rootRun (dart:async/zone.dart:1180:38)
#4      _CustomZone.run (dart:async/zone.dart:1077:19)
#5      _CustomZone.runGuarded (dart:async/zone.dart:979:7)
#6      _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1019:23)
#7      _rootRun (dart:async/zone.dart:1184:13)
#8      _CustomZone.run (dart:async/zone.dart:1077:19)
#9      _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:1003:23)
#10     Timer._createTimer.<anonymous closure> (dart:async-patch/timer_patch.dart:23:15)
#11     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:398:19)
#12     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:429:5)
#13     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:168:12)

[√] Flutter (Channel stable, v1.17.5, on Microsoft Windows [Version 10.0.18363.959], locale en-US)
[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[√] Android Studio (version 3.5)
[√] VS Code (version 1.47.3)
[√] Connected device (1 available)
• No issues found!

Hi @kinex
Following your steps, i cannot reproduce the issue on Windows 10
flutter daemon -v

logs
[  +15 ms] executing: [C:\Code\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +44 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +1 ms] 8af6b2f038c1172e61d418869363a28dffec3cb4
[   +1 ms] executing: [C:\Code\flutter/] git tag --contains HEAD
[ +173 ms] Exit code 0 from: git tag --contains HEAD
[   +2 ms] 1.17.5
[   +7 ms] executing: [C:\Code\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +49 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[   +1 ms] origin/stable
[        ] executing: [C:\Code\flutter/] git ls-remote --get-url origin
[  +26 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +67 ms] executing: [C:\Code\flutter/] git rev-parse --abbrev-ref HEAD
[  +25 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[   +1 ms] stable
[  +27 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +9 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[   +5 ms] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[   +5 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[   +2 ms] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[   +9 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[   +5 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[   +6 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +5 ms] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +1 ms] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[   +7 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[   +1 ms] 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 '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.
[  +20 ms] Starting device daemon...
[{"event":"daemon.connected","params":{"version":"0.5.3","pid":9352}}]
 [{"id":"2","method":"device.enable"}]
[+204382 ms] "flutter daemon" took 204,523ms.
Terminate batch job (Y/N)? y
PS C:\Users\Taha\AndroidStudioProjects\example_app> flutter devices -v
[  +15 ms] executing: [C:\Code\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +44 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +1 ms] 8af6b2f038c1172e61d418869363a28dffec3cb4
[        ] executing: [C:\Code\flutter/] git tag --contains HEAD
[ +170 ms] Exit code 0 from: git tag --contains HEAD
[   +2 ms] 1.17.5
[   +7 ms] executing: [C:\Code\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +25 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [C:\Code\flutter/] git ls-remote --get-url origin
[  +24 ms] Exit code 0 from: git ls-remote --get-url origin
[   +1 ms] https://github.com/flutter/flutter.git
[  +69 ms] executing: [C:\Code\flutter/] git rev-parse --abbrev-ref HEAD
[  +26 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[  +27 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +5 ms] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[  +10 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[   +6 ms] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[   +9 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[        ] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[        ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[   +5 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[   +6 ms] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[  +20 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +32 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:3
[   +5 ms] 1 connected device:

[   +8 ms] C:\Code\sdk\platform-tools\adb.exe -s 32003c30dc19668f shell getprop
[ +121 ms] ro.hardware = exynos7904
[   +1 ms] ro.build.characteristics = phone
[   +3 ms] SM M305F • 32003c30dc19668f • android-arm64 • Android 10 (API 29)
[   +7 ms] "flutter devices" took 317ms.
PS C:\Users\Taha\AndroidStudioProjects\example_app> flutter daemon -v
[  +15 ms] executing: [C:\Code\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +42 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +1 ms] 8af6b2f038c1172e61d418869363a28dffec3cb4
[        ] executing: [C:\Code\flutter/] git tag --contains HEAD
[ +181 ms] Exit code 0 from: git tag --contains HEAD
[   +1 ms] 1.17.5
[   +7 ms] executing: [C:\Code\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +26 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [C:\Code\flutter/] git ls-remote --get-url origin
[  +26 ms] Exit code 0 from: git ls-remote --get-url origin
[   +3 ms] https://github.com/flutter/flutter.git
[  +71 ms] executing: [C:\Code\flutter/] git rev-parse --abbrev-ref HEAD
[  +25 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[   +1 ms] stable
[  +26 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[   +5 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[   +4 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +6 ms] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +3 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[   +4 ms] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[   +8 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[        ] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[   +6 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[        ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] 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.
[   +6 ms] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[   +5 ms] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[   +5 ms] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[  +20 ms] Starting device daemon...
[{"event":"daemon.connected","params":{"version":"0.5.3","pid":7184}}]
[{"id":"1","method":"device.enable"}]
[{"id":"1","result":[null,null,null]}]
[+15078 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +25 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:3
[{"event":"device.added","params":{"id":"32003c30dc19668f","name":"SM M305F","platform":"android-arm64","emulator":false,"category":"mobile","platformType":"android","ephemeral":true,"emulatorId":null}}]
[+4016 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +19 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:3
[+433264 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +24 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:3
[+4014 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +21 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:4
[+4008 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +25 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:4
[+4007 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +21 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:4
[+4016 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +22 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:4
[+4018 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +20 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:4
[+4009 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +20 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:4
[+4013 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +18 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:4
^A[{"id":"1","method":"device.enable"}][+4016 ms] executing: C:\Code\sdk\platform-tools\adb.exe devices -l
[  +20 ms] List of devices attached
           32003c30dc19668f       device product:m30ltedd model:SM_M305F device:m30lte transport_id:4
[+1426 ms] "flutter daemon" took 486,269ms.
Terminate batch job (Y/N)? y

flutter doctor -v
[√] Flutter (Channel stable, v1.17.5, on Microsoft Windows [Version 10.0.19041.388], locale en-US)
    • Flutter version 1.17.5 at C:\Code\flutter
    • Framework revision 8af6b2f038 (4 weeks ago), 2020-06-30 12:53:55 -0700
    • Engine revision ee76268252
    • Dart version 2.8.4

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at C:\Code\sdk
    • Platform android-30, build-tools 30.0.1
    • ANDROID_HOME = C:\Code\sdk
    • Java binary at: C:\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Android Studio (version 4.0)
    • Android Studio at C:\Code\android-studio
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] VS Code (version 1.47.3)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.12.2

[√] Connected device (1 available)
    • SM M305F • 32003c30dc19668f • android-arm64 • Android 10 (API 29)

• No issues found!

Do you have any power saving mode on? Antiivirus?

Hi @TahaTesser, Good to know the issue does not occur in your device. In my PC this issue happens every time (=several times a day, that's why it is so annoying) . Yes I have Antivirus (F-Secure) installed. I can try disabling AV when I am back at office next week. I will then check also my power saving settings.

The issue does not occur if I disable AV. My power saving settings are the default ones (this is a desktop PC, not a laptop).

Hi @kinex
given your last message I feel safe to close this issue, if you disagree please write in the comments and I will reopen it.
This can be addressed by https://github.com/flutter/flutter/issues/61997
Thank you

OK I guess this can be closed if you document what exactly needs to be excluded from AV to fix this.
I already tried adding these folders to the AV exclude list, but it didn't solve the issue:
Flutter SDK dir
Android SDK dir
project dir
pub cache dir
I have always had this same AV installed, but this issue appeared few months ago (I think it was after some Flutter upgrade).

It looks like c:\tools\android-sdk\platform-tools\adb.exe is the thing being killed? The polling discoverers should maybe be more resilient to temporary failures and retry?

I verified again that adding c:\tools\android-sdk to AV exclude list does not help.
Maybe this line in the log is the important one:
[+25213 ms] adb.exe F 07-28 13:23:35  1384  6580 fdevent_poll.cpp:64] failed to create fdevent interrupt socketpair: Invalid argument
This other error in the log does not make sense to me (there should not be any problems running adb, it is also in the PATH):
Unable to run "adb", check your Android SDK installation and ANDROID_HOME environment variable: c:\tools\android-sdk\platform-tools\adb.exe.

same


Remove keys from RemovedKeys list

The keys were recently added back in another PR but this list wasn't
updated properly to reflect that change.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/7876/
Test FAILed.

jenkins, test this please

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/7877/
Test FAILed.

Test failures are unrelated to this change. I was able to run all tests locally with success.

alluxio-bot, merge this please

alluxio-bot, cherry-pick this to branch-2.1 pelase


TR2 Editor: Off Shot: TR2 will not read the overflow sub-data according to the upper limit.

This issue was reported by @QINGYU510
First, let's look at the sub-data structure of TR2:

According to the number of 0x7C-0x7F, loop to read the following content:
row_data[row_data_count].offset:int32, these are adjacent addresses. If any of them exceeds the maximum length of the current data, then this pointer is invalid and should be written as the end of the data to mark it. These pointers may repeat the same address. It is speculated that when the game is compiled, because the data does not need to be modified again, the same data is merged for optimization.

For example (not related to the game):
Suppose a monster's health has three levels of difficulty:
easy normal hard
0:10 20 30
1:10 10 10
The normal pointer should be:
(cursor)
easy normal hard
01 02 03
11 12 13
Then the pointer of the game content in part of tr2 will be optimized:
(cursor)
easy normal hard
01 02 03
11 11 11
So the data storage will be optimized to:
easy normal hard
0:10 20 30
1:10
This part is re-adjusted to the original appearance in the editor.
easy normal hard
0:10 20 30
1:10 10 10
(cursor)easy normal hard
01 02 03
11 11 11
This change is because the PC version is not a default resource like the early development of PSP, so when I designed the editor, I would automatically add data to align to the array length, otherwise I would optimize.
When we translated off shot, very few tr2s had the above problem.
If you find it, you can use the old version of the tr2 editor, split the tr2 into multiple bins, and modify it manually.

I used to worry that some modders would make multiple different data the same when modifying the game. If I optimize this, the pointer number will be different from the original game, which may cause errors in reading pointers in the original game because the original game has multiple tr2s close together.
So in Off Shot we cannot confirm whether this problem is a problem with tr2 itself or a bug in the game itself.
I will not provide any patches for this problem. Off Shot language translation is not a complicated task (in the rare case of tr2 problems).

@nachotacos69
Yamato, better check this out.

@DarkGD123
Never experienced this kind of problem before, plus I don't have a PSVita and a good PC to run vita3k emulator, leaving me with only the PSP at hand to operate these stuff.

This problem seems to be solved, so I don't need to.


Selling USDT for ETH

Hello I've gotten the script working for buying USDT with ETH but when I try and sell the USDT for ETH I get insufficient funds error, even though I am sure I have more USDT than the 3 it would require for this test to submit an order, does anyone have suggestions?
const KrakenClient = require('kraken-api'); const kraken       = new KrakenClient(key, secret); var vend = "sell"; var volume = 0.2; var price = 15; (async () => {   // Get Ticker Info   //var value = await kraken.api('AddOrder', { pair : 'ETHUSDT', type : ${type}, orderType: 'limit', price: ${price},  volume : ${volume}});   var value = await kraken.api('AddOrder', {   pair : 'ETHUSDT',   type : ${vend},   ordertype: 'limit',   price: ${price},   volume: ${volume}   });   var arrays = JSON.stringify(value);   console.log(arrays); })();

@MallyxTheZealous current price for ETH is around $160. If you set $15 – that's too big of a discrepancy between your price and the actual price. If you really want to spend $3 (and want your order to be closed in some short time), you should set price = near current price (say, 160), and amount = 3 / 160 = 0,01875. Apart from that it could be related to min limits for the order size. You might want to reach out to Kraken techsupport for an answer then.

Thanks @kroitor, I'll try changing the price, I don't want to actually fill this order I'm just trying to make sure it works.

@MallyxTheZealous hold on, you can't sell USDT with the ETH/USDT market. You can only buy and sell ETH. Therefore if you have USDT – you can buy ETH, but if you don't have ETH – you can't sell it. And you're trying to sell, so you should be checking your ETH amount, not the USDT amount.

I just checked the tickers you were absolutely right I had gotten the base currencies reversed, thank you for your help

Hello, there,  nice discussion, I'm glad to see the problem is solved :+1:
Should "we" close the issue? and tag it? It would help the maintainer @BronacusAmmon

The maintainer is no longer maintaining this repo.  I forked it to https://github.com/dscotese/kraka-djs so that I could add CancellAll, which I have done.


Improve grammar and code formatting

Improve the grammar, sentence structure and code formatting of global-shortcut.md.

Thanks!


Add JWT support

Would it be possible to add JWT authentication support, please?

I wonder if you managed to make the plugin connect to vault with token auth? I can't make the plugin connect to the vault whatever configuration I tried


Run server without caching,

allowing to modify proof files and instantly see the changes in the browser.

Thanks!


[WIP] Geolocation

New ops: isinf, rdiv, first, last
Haversine_distance utility

Need to finish Geolocation code

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

50 of 55 (90.91%)  changed or added relevant lines in 6 files are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.02%) to 83.819%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

mlir_graphblas/algorithms.py
18
23
78.26%

Files with Coverage Reduction
New Missed Lines
%

mlir_graphblas/engine.py
1
75.84%

mlir_graphblas/tests/test_profile.py
4
51.32%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
3709

Relevant Lines:
4425

💛  - Coveralls


Shapes for annotation saver

We're currently processing your upload.  This comment will be updated when the results are available.


support properties

https://github.com/hwchen/tesseract/commit/cd9a9157aa4e4c82612754453a4622ca0ca20488
https://github.com/hwchen/tesseract/commit/660b121aa04e3ffbb8f34d5f658813565985de09
https://github.com/hwchen/tesseract/commit/cabea281fd289ac1a6080b27ed4afc67ab5cf7cd
https://github.com/hwchen/tesseract/commit/ad2d72cac0304e09ff1b78559f5af0c97c7cc9ff


Import and Export

Adds functions to import and export JSON strings representing the graph. Will be nice for serialization over a network or storage on disk, redis, etc.

Thanks, @aembke. Looks good. I will merge, test and take this. Would you mind please also adding the two new signatures to README.md? In future I want to export the serialization format via an onm data model declaration object and do the jsgraph serialize/de-serialize to onm v0.3 SDAB (self-describing addressable blob) over JSON.

@aembke - I took a closer look and want to give this a bit more thought before taking your patch.
Some notes (I'm going back to other stuff after playing with this for awhile):

in typical use I expect clients to oftentimes maintain external maps keyed on strings like vertex ID, or edge ID. Allowing the DirectedGraph container to be re-initialized is potentially bad as these clients may presume access back to specific aspects of a vertex or edge property set that no longer exist in the container. so I would like to move the "import" to an optional constructor in-parameter to make clear that the container's internal state should only be mutated via public API calls at runtime.

The internal state of the DirectedGraph container is probably not what we want to serialize directly out to JSON. There are several issues:

Coupling: if we ever change the internal state representation, all persisted images will be invalidated
Versioning: there should be some versioning, and identifying type info (solved w/onm v0.3)
Optimization: In the export JSON we need only the vertexID set, the edgeID set, and their respective property sets. DirectedGraph maintains in-memory performance caches for leaf, root vertex sets, as well as back-edge sets to speed traversal. But we should re-derive these caches on DirectedGraph construction (see point about coupling to the internal state representation).

On export to JSON:

add replace, space params, rename toJSON

Hi Alec. I'm closing this as won't fix because I plan to address this in a completely different way.
onm v1.0 uses a simple little JavaScript object identification protocol I came up with call CIDS. With CIDS   I drop a UUID on the prototype of JS objects (e.g. DirectedGraph) and register the UUID inside of onm v1.0 core. The v1.0 CRP (core request processor) uses an in-memory database and a graph relating operand type to operation function and satisfies closures (i.e. you specify an array of input objects (all CIDS identified), and a target object type and the CRP says no and why not, or gives you the result.
I am going to use jsgraph for part of this CRP implementation as an internal dependency of onm v1.0 core. So for a number of reasons now we need to keep the internal DirectedGraph representation of a graph, and its external JSON serialization format decoupled.
But, jsgraph is coming into onm. So that means it needs a CID and will be registered in CIDS. So in future if you have a jsgraph object, you can just pass it to onm for use as a native onm type (e.g. pass a directed graph to onm's CRP with a requested output target type of JSON and there you go.

Not sure if you even care about this still, Alec. FWIW, the latest v0.7.0 jsgraph has nice support for JSON I/O:

Construct a new DirectedGraph from either JSON string or JavaScript object via jsgraph.directed.create factory function.
Add to an existing digraph using DirectedGraph.fromJSON and DirectedGraph.fromObject.fromObject methods.
Export to JavaScript object via DirectedGraph.toObject (or equivalently DirectedGraph.toJSON). Export directly to JSON string via DirectedGraph.stringify.


Refactor flow control implementation

Per the discussion in 8f57f6, the flow control implementation should be reimplemented as a separate actor to facilitate actor composition.

:+1:

Explicit flow control is no longer on the menu. Instead, we'll switching to CAF streams for subsets of the implementation.


the class center distance expansion loss of FastMLDNN

I have read your paper about FastMLDNN. This is really excellent work. When I looked up your code, it seemed that I couldn't find the code of the class center distance expansion loss. Perhaps I missed it?

Hi, recently, the code about FastMLDNN is rewritten upon new mmengine. Basically, the  class center is made up of two parts in python code: class center distance and loss function (cross entropy loss ).
The class distance is calculated in code (csrr/models/backbones/fastmldnn.py):
"p = sim_matrix(self.classifier[3].weight, self.classifier[3].weight)"
The loss is cross entropy loss in fast_mldnn_head.py

In the newly updated code, I can't find the fastmldnn.py file. And in (csrr/models/backbones/init.py), I can't find 'FastMLDNN' being registered.

In the newly updated code, I can't find the fastmldnn.py file(csrr/models/backbones/fastmldnn.py). And in (csrr/models/backbones/init.py), I can't find 'FastMLDNN' being registered.

It's really excellent work. But I can't find the file that contains the sim_matrix function, and the fastmldnn.py file in current version.
such as, from ...ops import sim_matrix, but i can't Correct import.


fix: #121 by more robustly parsing the output returned by sbatch

sbatch output was not properly parsed for job id when a cluster name is defined on the HPC. This fixes the issues by exploiting the --parsable option of sbatch.

rejected in favour of #56 , explained in #121


Penatly on extract_ridges

tmax,N, f1, f2 = 1, 1000, 20,50
fs = N/tmax
t = np.linspace(0, tmax, N, endpoint=True)
x1,x2 = np.sin(2*np.pi *f1 * t), np.cos(2*np.pi * f2 * t)
x = x1 + x2

Twx, Wx, ssq_freqs,scales = ssq_cwt(x,fs=fs,scales='linear',maprange='peak',nv=100,wavelet='morlet')
ridge_idxs,fridge,max_energy = extract_ridges(Twx, scales, penalty=20, n_ridges=2, bw=2,get_params=True,transform='cwt')
plt.plot(ssq_freqs[::-1][ridge_idxs])
plt.show()

We have two signals, with frequency 20 and 50, no noise. extract_ridges manages to get the right frequencies, but the jumps between both of them are very surprising. Going up to penalty=400 still keeps those jums.

Ridge extraction was implemented by @DavidBondesson, whose input is welcome.
I suspect the problem is scales='linear', which strictly belongs neither in tranform='cwt' nor 'stft', but 'stft' appears to be a much better fit:
extract_ridges(, transform='stft', n_ridges=2)

I also strongly discourage scales='linear' in the general case; if linear frequency tiling is desired, STFT is expressly designed for it.

So I am fairly certain that this is indeed due to the linear scaling of your transform and I noticed the behaviour as well during implementation. I did play around a bit with inputting the log of the transforms amplitude (add a small factor to avoid log(0)) which often seemed to generate more expected results. However, I gave that up when I was uncertain if this would actually translate the underlying function when we are trying to account for the distance between frequency bins.
In short I would just agree with @OverLordGoldDragon, but if there is a need for me to adjust implementation, delve deeper into the point or add comments then do let me know. However, due to my current work I will need side projects officially approved by my company which mean that I can't just jump in right away.

Indeed, my mistake about not checking linear vs cwt/stft. I was toying around because
Twx, Wx, ssq_freqs,scales = ssq_cwt(x,fs=fs,scales='log',maprange='peak',nv=100,wavelet='morlet')
ridge_idxs,fridge,max_energy = extract_ridges(Twx, scales, penalty=20, n_ridges=2, bw=2,get_params=True,transform='cwt')

gives this weird

for the first and last 20% of the data, so I was playing with other things and forgot I was in linear.
Thanks for your fast reply !


Use Mopidy-Spotify for Spotify requests instead of re-authentication and use of Spotify HTTP API

Fresh install of Spotmop & Mopidy.
Pop-up asking for the user to connect their Spotify account by logging in, even when the account I want to use has already been defined in the Mopidy configuration file.
Hopefully going to use Spotmop in a co-working space :)

Exact same issue here, clean install on Raspbian Jessie, also want to use in the office

The main driver for developing this was for our office environment too - so I'm glad it has appeal for others.
Currently the Mopidy config file's credentials are used in the Mopidy-Spotify backend and are not available for use in the frontend. Basically Spotmop uses additional Spotify endpoints that aren't currently available on the Mopidy-Spotify backend, so you will need to authenticate again. A bit niggly, but I'm working on some improvements in this area.
When you enter your login credentials in the popup, do you continue to get requests for authentication?

When you enter your login credentials in the popup, do you continue to get requests for authentication?

No, just once!
Trying to implement Spotmop in a co-working space, but not many individuals have Spotify which won't be too good :/ We were just planning on using our "group" Spotify account.
Any idea when Spotmop won't require this secondary authentication?

@damian-w we have a similar problem at our office, and we resolve it by having everyone login to Spotify using the same login details. Because the music is only playing on one server (despite multiple people using the single authentication to browse), you won't encounter any issues.
At this point the Mopidy-Spotify backend doesn't provide all of the functionality required by Spotmop, so until this happens we'll need to authenticate using the Spotify web API. Development on Mopidy-Spotify is steady, and I'm keeping an eye on it's progress, so this issue may be revisited.

we resolve it by having everyone login to Spotify using the same login details.

@jaedb I'd love to do this, but being a public co-working space we wouldn't be able to trust the countless visitors we encounter daily with our Spotify account! :/
If you ever develop a work-around / ability to set a default Spotify account to login to, give me a shout and we'd be most certainly happy to help test it out!

@damian-w Unfortunately after further investigation this is quite involved and would require work on the Mopidy-Spotify extension (https://github.com/mopidy/mopidy-spotify). I wouldn't expect this to be resolved in the short term, but keep an eye on development in this area.

@jaedb Dang! How about a default Spotify account? Say have a configuration file where I can set the username and password of our Spotify account, and it'll automatically login?

The way that Spotify works is by using OAuth, and this requires the user to login with their credentials to 'authorize' the application to use said user account. Then using that authorization we generate a token which is required for the majority of the Spotify endpoints. This means that without Spotify authorization Spotmop is highly limited.
That being said, I'm exploring an option to make it operable, even without authentication. See branch feature/publicspotify

@damian-w I've just pushed up a version to the branch feature/publicspotify that is ready for testing. Are you able to clone this repo and install a development version of Spotmop?

@jaedb awesome! I'm on leave, but I'll get another member of the team to look into it! :)

Have a hoon on v2.5.10 which I've just released :-)
Please note that loading playlists is very slow for some reason. I suspect due to accessing via Mopidy backend via Mopidy-Spotify via Spotify API...

Reasonable compromise achieved - 90% functionality without requiring Spotify Client Authorization. Please re-open this issue if you find this functionality doesn't work as expected.


Azure Node.js deploy: index script needs to write files

I am trying to deploy a node.js app to azure via git push.
I use a framework that generates a directory inside wwwroot with files in it at startup.
Running node server.js would trigger that step.
Problem: After I push to azure repo, the directory isn't created, and nothing indicates it.
It seems to me that it's write right issue.
Question: Is there a way I can grant it using kudu?
Ideally, in a way that is scalable, as I will potentially deploy many other apps with the same boilerplate.
Thanks 🙏

@MayasHaddad can you share a minimal repo that demonstrates the issue? Thanks!

@davidebbo you can deploy this: https://github.com/zeit/next.js/tree/v3-beta/examples/custom-server-express

Ok, I discovered kuduscript and managed to add the build step to deploy.sh.
Closing this issue.


Add a none-of-above option to the list

From a list of checkbox, there should be one, which when checked, unchecks all others and is unchecked when anything else is checked. This is so that a usual use case of "None of the above" option can be easily catered for. It would be good to have this allow both unsetting all the values or setting a special value for the none-of-above options

These kind of cases can be easily handled by checklist-before-change or checklist-change.


[FormRecognizer] Stopped ignoring AAD tests

Service issue has been fixed.
Fixes https://github.com/Azure/azure-sdk-for-net-pr/issues/1726.

API change check
API changes are not detected in this pull request.


Adding feature to exclude optional components

Description
This adds the ability to exclude optional components while build a package.
Related Issue
Relates to #1128
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Other (security config, docs update, etc)

Checklist before merging

[ ] Test, docs, adr added or updated as needed
[ ] Contributor Guide Steps followed

Related to: https://github.com/defenseunicorns/zarf/pull/2211

Related to: #2211

@Noxsios do you think it makes sense to rebase (and continue rebasing) from your branch?

Depending on timing we could go either way - now that we have a custom gather space it may be good to discuss options for this too - a few things have changed with --components since the issue was filed.
As I see it we could:

Proceed as is and create a separate components exclusion flag that is disconnected from the --components logic
Incorporate the components logic with - support and default support except that an empty components list would create with all components instead of just required and default.

After our discussion in the gather space, decided to take a different route leveraging flavor.


Fixed: Geocode once for split requests

Requests with multiple tasks are being geocoded once per task. Fixing it so geocoding is done once per request, instead.

I don't have a lot of free time this week unfortunately, so not adding any new tests to accompany this PR. Most of the code involves calling other APIs so tests wouldn't be too interesting either way.

@azlyth These changes require a couple of new columns in the prod "Requests" table.

_coordinates

_coordinates_address

Hm I see the line that does _coordinates_address update in the code but not seeing it happen when I ran through a case?

@azlyth That can happen if _coordinates was already populated. I can't think of another scenario to reproduce this.

Both coordinate fields were blank though, hmm.


HOSTNAMES env not fully respected

What is Happening
When using the HOSTNAMES env, those are properly resolved by the docker host (when using in /etc/resolv.conf the dns docker IP address) but not by the docker containers (when using in /etc/resolv.conf the <IP_ADDRESS> IP address)
What is expected
Resolving should be the same from outside and from inside the docker container.
Steps to Reproduce

Set HOSTNAMES for a docker container.
Try to resolve from docker host - works.
Try to resolve from any docker container - does not work.

Hello @lupujo, thanks for the report.
I couldn't reproduce your issue, I think it really depends how you're starting DPS and your containers, can you please provide a full example?


Module not found: Can't resolve './components/CustomList'

Hello Guys,
I need some help. I do not know why but the module CustomList cannot be found.
Also, I am importing the Editor as described in the TyniMce guide for React:
import {Editor} from '@tinymce/tinymce-react';
Can anyone help here? :/

I think the current version of React is not supported by react-tinymce-mention.
I tried the simplest example and the script cannot compile:
./node_modules/react-tinymce-mention/node_modules/react-dom/lib/ReactNodeTypes.js
Module not found: Can't resolve 'react/lib/React' in 'C:\Users\userName\projects\react-project\node_modules\react-tinymce-mention\node_modules\react-dom\lib'
Also, the version of TinyMCE for react that is in react-tinymce-mention dependencies is a pretty old one.
I am using:
"@tinymce/tinymce-react": "2.3.0",
"react": "^16.7.0"
Is this project still maintained since I saw the latest release of it was 2 years ago?
Thank you in advance!

Hi @renetanikolova - this project hasn't been maintained / worked on for a while and I don't have much time to look into it, but all in all the react side things is fairly simple and I think you could fork the project and upgrade quite easily! The above error is indeed due to a version mismatch (React has been vastly restructured in terms of file organization since this was used, and is incompatible with the latest.)
Additionally, babel, webpack and redux are a couple major versions ahead as well.
If you were to fork and upgrade the dependencies I think things would work. The code itself isn't too complicated. Could maybe even copy into your own project after installing some packages listed here https://github.com/Kindling/react-tinymce-mention/blob/master/package.json#L68

Hello, @damassi - thank you a lot for your response!
I found a workaround, using: https://github.com/StevenDevooght/tinyMCE-mention
I managed it to work appropriately.
If anyone is having any problems using it with React, feel free to contact me!
Thank you again for your comment, @damassi!

I don't think I have commit rights on this project anymore either, unfortunately, so I can't add any warnings to the README that it's no longer being updated. Sorry.

@renetanikolova did you found any good solution for this in react?


fix(clippy): Ran cargo clippy --fix

It removed some unnecessary references and changed a str comparison to a char comparison, it also removed a clone in a test case, but I kept it because it seemed intentional.

Thanks!


Crashes opening this file

For me, xlsxio crashes on the attached file. I have a highly customized build, though, so I would be interested to know if you can open this file with xlsxio. (My build is wonky because I'm using xlsxio in a Node.js addon, here.)
* thread #10, stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    frame #0: 0x00007fff65e1a232 libsystem_c.dylib`strlen + 18
    frame #1: 0x000000010aadf086 xlsx.node`unzLocateFile(file=0x0000000104c13140, szFileName=0x0000000000000000, iCaseSensitivity=0) at unzip.c:1253
    frame #2: 0x000000010aaa6fef xlsx.node`XML_Char_openzip(archive=0x0000000104c13140, filename=0x0000000000000000, flags=0) at xlsxio_read.c:43
    frame #3: 0x000000010aaa6e52 xlsx.node`expat_process_zip_file(zip=0x0000000104c13140, filename=0x0000000000000000, start_handler=(xlsx.node`shared_strings_callback_find_sharedstringtable_start at xlsxio_read_sharedstrings.c:125), end_handler=0x0000000000000000, data_handler=0x0000000000000000, callbackdata=0x0000700007a30ec0, xmlparser=0x0000700007a30ec0) at xlsxio_read.c:139
    frame #4: 0x000000010aaa9ade xlsx.node`xlsxioread_process(handle=0x0000000104c058b0, sheetname=0x0000000000000000, flags=129, cell_callback=0x0000000000000000, row_callback=0x0000000000000000, callbackdata=0x0000000104c1cb50) at xlsxio_read.c:1223
  * frame #5: 0x000000010aaaa05f xlsx.node`xlsxioread_sheet_open(handle=0x0000000104c058b0, sheetname=0x0000000000000000, flags=1) at xlsxio_read.c:1350
    frame #6: 0x000000010aa75ff8 xlsx.node`xlsx::extractAllRows(sheetname=0x0000000000000000, xreader=0x0000700007a349e8, hasHeaders=false, headerTransformMap=size=0, deletes=size=0, doPascalCase=false, pascalWords=size=0) at XlsxReaderFunctions.h:73
    frame #7: 0x000000010aa73674 xlsx.node`xlsx::extractAllData(filename="/Users/mjb/Documents/repos/xlsx-util/tests/sci-bug.xlsx", hasHeaders=false, headerTransformMap=size=0, deletes=size=0, doPascalCase=false, pascalWords=size=0) at XlsxReaderFunctions.h:52
    frame #8: 0x000000010aa72b7c xlsx.node`xlsx::AsyncReader::Execute(this=0x00000001061139f0) at AsyncReader.cpp:34
    frame #9: 0x000000010aa700c9 xlsx.node`Napi::AsyncWorker::OnExecute(env=0x0000000104d2bbb0, this_pointer=0x00000001061139f0) at napi-inl.h:3170
    frame #10: 0x00000001000937ff node`(anonymous namespace)::uvimpl::Work::ExecuteCallback(req=0x000000010610dd60) at node_api.cc:3363
    frame #11: 0x000000010171c201 node`uv__queue_work(w=0x000000010610ddb8) at threadpool.c:259
    frame #12: 0x000000010171c8e6 node`worker(arg=0x0000000000000000) at threadpool.c:83
    frame #13: 0x0000000104b65665 libsystem_pthread.dylib`_pthread_body + 340
    frame #14: 0x0000000104b65511 libsystem_pthread.dylib`_pthread_start + 377
    frame #15: 0x0000000104b64bfd libsystem_pthread.dylib`thread_start + 13

sci-bug.xlsx

Just tried it on my side and it crashes too (see screenshot below).
The crash happens inside MiniZip function unzLocateFile, same as with you.

Found it!
Apparently sometimes XML_Char_openzip gets called with filename set to NULL. I fixed it so now that function just returns.
Please try again with version 0.2.19?
For me it works now with your file.

I didn't see this and I think I also found it. I was seeing that, when there is no sharedstrings file, then there is a crash on strlen(NULL), so the fix that I found was:
xlsxio_read.c (1223)
  if ((getrelscallbackdata.sharedstringsfile == NULL) || expat_process_zip_file(handle->zip, getrelscallbackdata.sharedstringsfile, shared_strings_callback_find_sharedstringtable_start, NULL, NULL, &sharedstringsdata, &sharedstringsdata.xmlparser) != 0) {
    //no shared strings found
    sharedstringlist_destroy(sharedstrings);
    sharedstrings = NULL;
  }

You are also right.
My fix catched this case where getrelscallbackdata.sharedstringsfile is NULL further down the line.
I will add an additional check to that part of the code too just to be on the safe side.


node-red-node-serialport

I have installed node-red-node-serialport via 'Manage palette'. I can see the nodes Serial In and Serial Out in palette after installed. After I reboot the device, the Serial In and Serial Out nodes no longer can be seen in palette.
Can anyone helps on this issue? Thank you.

Hi, for general help/support questions, please use the mailing list linked at the bottom of https://nodered.org

by default we currently pre-install the serialport - so there should be no reason to have to install it.
If it wasn't there already - which platform is this and which version of Node-RED.
NOTE - as  of v 0.16 we WON"T preinstall serialport so you will need to add it... - but at time of writing that hasn't happened)


As an admin, I want to be able to decide which pane (left/right) the results of my command (list or object view) shows up on.

On hold for now, pending removal from feature list. Reason: not needed, will unnecessarily complicate user interaction

No longer relevant to implementation. Closing this


Make port 15443 first in list for multicluster

Fixes #12503

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: nrjpoddar
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: greghanson
If they are not already assigned, you can assign the PR to them by writing /assign @greghanson in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

install/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Hi @nrjpoddar. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@linsun should we add this in istio docs somewhere? We were bit by this bug and took some effort to narrow down the issue.

/ok-to-test

@nrjpoddar thanks for the PR!
How do I quickly validate port 15443 is always on?  I tried to curl on that port with my ingress gateway ip, but got the same Connection refused error as port 80.

for doc, @geeknoid should we update release note for this?  or should we create a wiki page to keep track of critical 1.1 issues that have workarounds?

@nrjpoddar: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
ba90a46b305d80ae3fd3eaf173a2aa823265b2f4
link
/test e2e-simpleTests-cni

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@linsun I have made changes only in the multicluster multiple control plane Helm values file where port 15443 should be always configured. I don’t think ingressgateway listens on 15443 in all configurations.
Externally you can use curl -v or nc to validate that ingressgateway is accepting connections on 15443. If you can exec into the Pod then `netstat -pant‘ should show you the listening ports.

what about this port?  your change is missing it:  https://github.com/istio/istio/commit/0b2b303ff1ef871e9ab8885ad63bbbc2310b9c8a

should we use port 15020 (as first in the list) instead since it is designed to health check the ingress gateway?

re - "I don’t think ingressgateway listens on 15443 in all configurations."   it actually does, at least in the default profile for sni routing.

Thanks Lin for pointing out 15020 port.  It’s only in release-1.1 branch.
I was thinking about always using 15020 but since it wasn’t exposed in master as the ingressgateway service port I couldn’t use it.
Question for you, should I submit two separate PRs, one for master and one for release-1.1?

Since you want this in release 1.1.x (I assume), I recommend 1 PR to release-1.1.  For master, I think there are batch merging from release-1.1 as @howardjohn was kindly doing this yesterday.
cc @howardjohn @duderino to correct me if I'm wrong.

Ideally you would submit to master and cherry pick to release-1.1 I think (wish there was an easy way to do this in github..), but if you just submit to release-1.1 I will merge it back into master anyways.

+1 we should consider changing this for the default istio ingress gateway.

Thanks for all the feedback, lots of good suggestions so I will try and summarize to reduce churn on the PR.

I am going to change this PR to use release-1.1 as base branch instead of master.
I will use port 15020 as it is used for health checks and is guaranteed that ingressgateway will be listening on port 15020
Will update the default settings for ingressgateway so that 15020 is always the first on the list.

To expand on the issue using 433 will also have similar problems. Issue is we cannot guarantee that ingressgateway will be always listening on port 80/443 as that is controlled by user's Gateway configuration. AWS ELB health check will just use the first on the list of ports provided in the service for health checks so I think making 15020 as the first in default makes the most sense.

@nrjpoddar: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: nrjpoddar
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: linsun
If they are not already assigned, you can assign the PR to them by writing /assign @linsun in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@nrjpoddar: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
ba90a46b305d80ae3fd3eaf173a2aa823265b2f4
link
/test e2e-simpleTests-cni

prow/istio-unit-tests.sh
5b03a95ffd7392dd0cd839ab6ce73b69c8ebbeaf
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nrjpoddar: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
ba90a46b305d80ae3fd3eaf173a2aa823265b2f4
link
/test e2e-simpleTests-cni

prow/istio-unit-tests.sh
5b03a95ffd7392dd0cd839ab6ce73b69c8ebbeaf
link
/test istio-unit-tests

prow/istio-integ-local-tests.sh
5b03a95ffd7392dd0cd839ab6ce73b69c8ebbeaf
link
/test istio-integ-local-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nrjpoddar: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests-cni.sh
ba90a46b305d80ae3fd3eaf173a2aa823265b2f4
link
/test e2e-simpleTests-cni

prow/istio-unit-tests.sh
5b03a95ffd7392dd0cd839ab6ce73b69c8ebbeaf
link
/test istio-unit-tests

prow/istio-integ-local-tests.sh
5b03a95ffd7392dd0cd839ab6ce73b69c8ebbeaf
link
/test istio-integ-local-tests

prow/istio-presubmit.sh
5b03a95ffd7392dd0cd839ab6ce73b69c8ebbeaf
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@frankbu Right, 15443 will go away, 443 will be used for multicluster.


Contributor count doesn't match GitHub's

Are you experiencing an issue with...

[x] shields.io
[ ] My own instance
[ ] badge-maker NPM package

:beetle: Description
As of right now, https://github.com/citation-style-language/styles/ reports 872 contributors in the side-bar:

I thought I would be able to get this number in a badge, but neither of the following two "GitHub contributors" badges give the same number:
 (410 contributors)
 (943 contributors-anon)
I'm also curious how "contributors" and "contributors-anon" differ. Is this documented somewhere?
:link: Link to the badge
https://img.shields.io/github/contributors/citation-style-language/styles
https://img.shields.io/github/contributors-anon/citation-style-language/styles
:bulb: Possible Solution

As is the case with all our badges, we utilize upstream APIs on the respective platforms to get the data that we need to produce the badges.
In the case of the GitHub Contributors badge, that upstream endpoint is GitHub's List Repository Contributors API
https://docs.github.com/en/free-pro-team@latest/rest/reference/repos#list-repository-contributors
This API supports including (or not including) anonymous contributions via the anon query parameter, which is reflected in contributors vs. contributors-anon
Whether a given upstream service has a discrepancy between their own UI and their APIs is really something you'll have to take up with said upstream service; we can't speak for them.
If you look at the corresponding responses from the GitHub API calls for your app, you'll see our badges are reflecting what GitHub is telling us:
https://api.github.com/repos/citation-style-language/styles/contributors?per_page=100
https://api.github.com/repos/citation-style-language/styles/contributors?per_page=100&page=2
https://api.github.com/repos/citation-style-language/styles/contributors?per_page=100&page=3
https://api.github.com/repos/citation-style-language/styles/contributors?per_page=100&page=4
https://api.github.com/repos/citation-style-language/styles/contributors?per_page=100&page=5
(100 known contributors on the first four pages and 10 known contributors on the 5th = 410 contributors).
You'll see the same story with the calls permitting the inclusion of anonymous contributors as well. The only guess I'll proffer is that I think the Contributors section on the GitHub UI's repo landing page excludes contributions from bots/apps/etc. that the API may not

Thanks! (I found some additional discussion about the GitHub API results at https://stackoverflow.com/a/36462386/1712389)

Looks like that SO post mostly covers things, but just to give an example of what the anon param really means:
An anonymous contribution is a commit where the email address on the commit isn't liked to a github user, so https://github.com/citation-style-language/styles/commit/e6279d0ea2f9cdc4e08e7831c857c05950c32696 is an anonymous contribution, whereas https://github.com/citation-style-language/styles/commit/aa5ba1c00ddfa20be8d1aef62e2755dd4ac97fe8 is a non-anonymous contribution.


feat: support url rewrite

We now call back into our new cli to download the file, so the new url replacement can be applied.
Will add some more documentation too later.

closes #1067
https://github.com/vercel/pkg/issues/1861

We can phase out the bats tests whenever we replace functionality with typescript

We can phase out the bats tests whenever we replace functionality with typescript

fixed the tests. I'm not sure if i need the file delete 🤔

Can we get docs for the URL rewriting if this closes the issue?

there are already some docs and all urls are printed on debug log level

P My

???

Not sure where that came from. Can you point me to the docs?

Not sure where that came from. Can you point me to the docs?

https://github.com/containerbase/base/tree/feat/url-replace#url-replacement
will create a mother extended version in later PR's.
will try to extract the base urls to variables, so I can use a test to validate docs to have a sample for each of them.

yes, will update docs later. currently it's best to try and error to see failed urls in logs. then it should be easy to rewrite them.


[Snyk] Upgrade eslint-plugin-jsx-a11y from 6.5.1 to 6.6.1

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade eslint-plugin-jsx-a11y from 6.5.1 to 6.6.1.

:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 2 versions ahead of your current version.
The recommended version was released 2 months ago, on 2022-07-21.

The recommended version fixes:

Severity
Issue
PriorityScore (*)
Exploit Maturity

Prototype Pollution SNYK-JS-MINIMIST-2429795
292/1000  Why? Proof of Concept exploit, CVSS 3.7
Proof of Concept

(*) Note that the real score may have changed since the PR was raised.

Release notes

Package name: eslint-plugin-jsx-a11y

6.6.1 - 2022-07-21v6.6.1

6.6.0 - 2022-06-24Full Changelog: v6.5.1...v6.6.0

6.5.1 - 2021-11-10Full Changelog: v6.5.0...v6.5.1

    from eslint-plugin-jsx-a11y GitHub release notes

Commit messages

Package name: eslint-plugin-jsx-a11y

d678a98 v6.6.1
93b2a9d [Dev Deps] update `@ babel/cli`, `@ babel/core`, `@ babel/eslint-parser`, `@ babel/plugin-transform-flow-strip-types`, `@ babel/register`
768910e [Deps] update `@ babel/runtime`
0d2bc43 [Tests] `no-noninteractive-element-interactions`: add passing test cases
a962211 [Dev Deps] update `@ babel/cli`, `@ babel/core`, `@ babel/plugin-transform-flow-strip-types`, `@ babel/register`
2c6926c [Deps] unpin `axe-core`
1c06306 [readme] properly describe rule settings in builtin configs
b78f19d [Deps] pin `axe-core` to v4.4.1, due to a breaking change in a patch
ffefbad [Tests] `no-noninteractive-element-interactions`: add passing tests for form with onSubmit
0c19f02 [Docs] `no-noninteractive-tabindex`, `no-static-element-interactions`: document `allowExpressionValues`
e7d405d [Tests] `no-static-element-interactions`: add passing test cases
38405ad [Fix] `no-interactive-tabindex`: allow role assignments using a ternary with literals on both sides
f0e04ce [Deps] update `@ babel/runtime`, `jsx-ast-utils`
7524e0c [Fix] `no-static-element-interactions`: allow role assignments using a ternary with literals on both sides
2362832 [readme] added link to redirect eslint to relevant docs
cce3497 v6.6.0
832cbd6 [meta] add `export default` instead of `module.exports`
8c1df4d [Dev Deps] pin `@ technote-space/doctoc` because v2.5 is a breaking change
aea7671 [Deps] update `@ babel/runtime`, `array-includes`, `axe-core`, `jsx-ast-utils`
fb071ab [Dev Deps] update `@ babel/cli`, `@ babel/core`, `@ babel/eslint-parser`, `@ babel/plugin-transform-flow-strip-types`, `eslint-plugin-eslint-plugin`
287854a [Tests] Fix `npm run flow`
112261c [Tests] skip fragment tests in eslint < 6
d74173a [Deps] update `jsx-ast-utils`
fb20bc4 [Refactor] `role-supports-aria-props`: clean up the logic a bit

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Handled by #75


.PullAsync(queryId, query) does not pull effectively after .PurgeAsync()

Hi,
I'm having a little trouble here, I'm not sure if it's how it's supposed to work but on the previous beta release I never experienced this issue.
When my user logs I pull all the entries for this user with mytable.PullAsync(queryIdForUser, mytable.CreateQuery()). When he disconnects, I purge all the data with myTable.PurgeAsync()
But if he reconnects again (after a purge), only one entry is downloaded with mytable.PullAsync(queryIdForUser, mytable.CreateQuery()). I expect the framework to download everything.
The workaround I use is to take null as queryId, but I'm loosing the incremental download.
Is this the expected behavior?
PS: I'm using SQLiteStore, and on back-end .GetAll() only fetch the user data.

No behavior change was intended here, as long as you pass the queryId to purge it should reset it, so the next call using that Id should be identical to the initial one
(see: https://github.com/phvannor/azure-mobile-apps-net-client/blob/master/sdk/src/Microsoft.WindowsAzure.MobileServices/Table/Sync/Queue/Actions/PurgeAction.cs#L69)
Its possible some oddness could be caused if you don't have the same server-client bits post the last breaking change on column names (__updatedAt -> updatedAt) as that could cause the query to try to use the wrong data/etc.  Can you confirm your server & client models are using the new names (no __)

I checked, the column names are okay.
When I purge with the queryId, everything works fine, thank you very much for you advice!
However, PullAsync(queryId) + PurgeAsync() (no parameter) + PullAsync(queryId) seems to take one entry only. I was working with the latest beta version (2.0.0-beta3), maybe I should try with the 2.0.0. I'll take a shot whenever I have the time.
This behavior was not the same before, I understand it's a bit out of the process, but I think there's probably something to investigate.

I've noticed identical behaviour.  PurgeAsync followed by PullAsync only pulls one record (but my test table only has 2 records, so it may be that it just doesn't pull all).
I think it is a valid use case.  I have a scenario where users share a device, it is allocated to a vehicle, and it needs to work offline.  Each time a user logs in they are forced to choose a vehicle, and I then synchronize the users table but filter it to only return users that are allocated to the selected vehicle.  The point being that the next time someone needs to work offline, the users table is reasonably up to date with the valid users for that vehicle.
I've noticed that the results of the query on the server returns all rows, so I suspect it is the query string being applied via IQueryable that is causing the problem.  I am thinking of either massaging the data (updatedAt I suspect) on the server side to trick the query string to work, or I may just create a separate database locally on the client and manually keep it up to date.  The client will never modify the user table's data, so I don't need to synchronize changes.

Yes PurgeAsync() [no query id] does not clean up the updatedAt meta data tracked by the client.  So the next PullAsync(QueryId) will continue from where it left off, meaning you won't get any purged records.
We'd need to provide a purgeAsync() that lets you clear ALL queryId caches.  In the meantime you must call PurgeAsync with a QueryId for the initial updatedAt query to say 1970 and not where it left off.

Thanks for that.  I'm not sure what you mean by "call PurgeAsync with a QueryId for the initial updatedAt query "?  I don't see any parameters to PurgeAsync()?

Should be, here's the definition: https://github.com/Azure/azure-mobile-apps-net-client/blob/master/sdk/src/Microsoft.WindowsAzure.MobileServices/Table/Sync/IMobileServiceSyncTable.cs#L126

Sorry, my mistake.  I'm going to blame intellisense.  I'll try it out.

As recommended above, calling PurgeAsync with the same queryid / query as the original pull fixes this problem.

:+1:
Could this be flagged as an enhancement? (or bug?)
I really think PurgeAsync() without parameter should purge every queryId.

It will be a breaking change to flip to purging QueryIds.  The other use of purgeAsync not mentioned in this thread is for expiring data.  Say you wanted your cache to contain only records made w/in the last 60 days, or only unresolved incidents, etc.  In those types of cases, you don't want the purge to clear the inc sync key.  Flipping the default would break people using Purge for those types of flows.
But having an override that PurgesAndClearsAllKeys() would be good to have.

I understand but it was already a breaking change when it stopped working this way.
I was using PurgeAsync() to clean my data with the preview, it worked and it made sense at the time. This is why I opened this bug: a breaking change into the existing.
The actual PullAsync(query) + PurgeAsync() has some really messed up consequences right now. I should not have only one entry pulled, it just does not make sense (even if it can be and has been explained).
A new name could simply be PurgeAllAsync().

I'd need to run some tests I can't figure out how this could have changed.  The first commit introducing incremental sync to managed (https://github.com/Azure/azure-mobile-services/blob/9cd07b53c5d4a677516a0dd4fb5863e7dd64d008/sdk/Managed/src/Microsoft.WindowsAzure.MobileServices/Table/Sync/Queue/Actions/PurgeAction.cs) shows the delta token is only reset if a query key was passed in.
From what I can tell out of the history, this behavior has not changed since we introduced it.
In iOS, I have the force flag kill all DeltaTokens, but it appears in Managed, force doesn't work the same way.  Some love is needed on this API to clarify the various workflows intended and what should be used when.

I can guarantee it has changed, as it was a basic use case for us (user logs out -> PurgeAsync(), user logs in -> PullAsync(query)) which was working before the update. Could it be a change in the server? I have updated both server and client at the same time. Or from the Pull, maybe along with 519fadb62beed40dcfb161ba05dc71a8b8fd1038?
Now it was on a preview version so I really think we should not bother about wether it has changed or not (we know how it works and what it does which is really enough).
On the other hand I really think the actual system is counter-intuitive, even if it makes sense at a lower level.

Maybe a compromise would be to change PurgeAsync() to PurgeAsync(bool purgeAllKeys = false) which would preserve the current behaviour but give new consumers the option and insight into what is happening.

That would be nice!

I experienced the same issue here where different users would log out and a new user would login. The new user wouldn't get any data. My filtering is done on the server side so the queryId is the same for all users. Is there a potential date for when this will be added? My first impression of PurgeAsync() was that it would allow me to clear the database tables I specified.

The way I have approached it is two fold.  Firstly, I name queryids to match the server side filtering logic, so if the server side filters by UserId, I include the Userid in the queryid to ensure it is always unique, and therefore can purge accordingly /  accurately.
The second thing I've done, to address this problem plus some other complexities, is I create a different local database name based on the users login name.  So if John.Doe logs in and Jane.Doe logs in, there will be two local databases, "John.Doe.db" and "Jane.Doe.db".  This approached simplified things a lot for me.  It will result in slight inefficiencies sometimes, for example one user won't get the benefit of the other user having already refreshed some reference data lets say, but for me it was worth the trade-off.

I'm closing this as won't-fix, because it will be a breaking change to purge all query IDs.

Hey everyone, I had the same issue.Putting the same query id for the pull and for the purge fixed the problem.


Repeated calls to requestInstantiateAll, requestLink, requestReady

requestReady is called on import, which in turn calls requestLink and requestInstantiateAll.
None of these store their promises if they have already been run, unlike all the other requestX calls.
So simultaneous imports can cause duplicated work:
  System.import('a');
  System.import('a');
  System.import('a');

The above would trigger three calls to requestReady, requestLink and requestInstantiateAll for the same module, running all the logic in each one.
I haven't been able to create any conflict conditions, but I think it might be possible for these to occur.
It may be worth storing the promises for these requestReady, requestLink and requestInstantiateAll functions on the entry just like all the other requestX functions?

solved by PR #97, it returns the same promise now.


Forked example repo pattern makes external contribution hard.

Several things:

The quickstart repo doesn't have issues enabled (so I'm filing this on the wrong repo here)
Quickstart repo has the wrong link to the quickstart at the very top of the repo. The correct link is https://www.eidolonai.com/docs/quickstart
I'd submit a PR and fix something so trivial for you, but I can't fork/submit a PR, because I forked a different repo from eidolon and the "internal fork relationships" you have between your repos seems to be confusing Github.  You'll note on my profile I didn't actually fork eidolon-quickstart,

It looks as though how you've set your templates up as a sort of directed graph of forks makes it challenging for outsiders to deal with them.

If there was an issue or challenge with web researcher for example, it wouldn't get reported because issues are disabled there as well, and one would need to follow the fork relationships back to agent-machine in order to provide this feedback.

hmm, well this is a problem now isn't it. We have been restructuring our issue board and unfortunately this one got lost in the shuffle.
The fork graph was a convenient way to keep our example repos up to date, but it makes it challenging for external contributors to contribute back. It is also nonstandard, and we aren't exactly trying to innovate on project structure. I'll chat with the team about this one and see what we think. Probably better to unlink them, but still grab changes from the template via ci/cd, the remote branch will just need to be specified in the workflow which is fine.
thanks for reporting this issue @moxious

Plan: We can keep our ci/cd pattern the same without actually handling forks. workflows will need to change a bit to accommodate the lack of history. This is a good opportunity to simplify strip down root agent-machine repo to make it less conflict prone. Specifically remove the lock file, remove the agent resource, and simplify tests


Unable to install

I just got Ketrew installed and now trying to install Secotrec. Currently hitting some sort of version conflict. Looks like perhaps type_conv wants a lower version of OCaml?
$ opam install tls secotrec biokepi

=-=- Synchronising pinned packages =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[secotrec] https://github.com/hammerlab/secotrec.git already up-to-date
[biokepi] https://github.com/hammerlab/biokepi.git updated
The following dependencies couldn't be met:
  - secotrec -> coclobas >= 0.0.1 -> cohttp < 0.99 -> conduit = 0.5.1 -> sexplib < 113.01.00
  - secotrec -> coclobas >= 0.0.1 -> cohttp < 0.99 -> fieldslib < 113.01.00 -> type_conv (= 108.00.02 | = 108.07.00 | = 108.07.01 | = 108.08.00 | = 109.07.00 | = 109.08.00 | = 109.09.00 | = 109.10.00 | = 109.11.00 | = 109.12.00 | = 109.13.00 | = 109.14.00 | = 109.15.00)
  - secotrec -> coclobas >= 0.0.1 -> cohttp < 0.99 -> pa_fields_conv
  - secotrec -> coclobas >= 0.0.1 -> cohttp < 0.99 -> sexplib < 113.01.00
  - biokepi -> ketrew >= 2.0.0 -> js_of_ocaml >= 3.0
  - biokepi -> ketrew >= 2.0.0 -> cohttp-lwt-unix >= 0.99.0 -> cohttp-lwt -> cohttp >= 0.99.0
Your request can't be satisfied:
  - Conflicting version constraints for cohttp
  - cohttp.0.20.1 is in conflict with js_of_ocaml.3.0
  - cohttp.0.20.2 is in conflict with js_of_ocaml.3.0
  - cohttp.0.21.0 is in conflict with js_of_ocaml.3.0
  - cohttp.0.21.1 is in conflict with js_of_ocaml.3.0
  - cohttp.0.22.0 is in conflict with js_of_ocaml.3.0
  - pa_fields_conv is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03".
  - sexplib<113.01.00 is not available because your system doesn't comply with ocaml-version >= "4.02.1" & ocaml-version < "4.03".
  - type_conv.108.00.02 is not available because your system doesn't comply with ocaml-version >= "3.12.1" & ocaml-version < "4.03.0".
  - type_conv.108.07.00 is not available because your system doesn't comply with ocaml-version < "4.03.0".
  - type_conv.108.07.01 is not available because your system doesn't comply with ocaml-version >= "3.12.1" & ocaml-version < "4.03.0".
  - type_conv.108.08.00 is not available because your system doesn't comply with ocaml-version >= "3.12.1" & ocaml-version < "4.03.0".
  - type_conv.109.07.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.08.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.09.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.10.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.11.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.12.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.13.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.14.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.15.00 is not available because your system doesn't comply with ocaml-version >= "4.00.1" & ocaml-version < "4.03.0".

I have Secotrec on 4.03.0.
That requirement is suspect: cohttp < 0.99, which Coclobas do you have?  how did you get it?

How would I find out? Possibly no version is installed?
[NOTE] coclobas is not installed, ignored.

I believe I "have" the pinned version, since I was following the README.

However if I try to actually install it:
$ opam install coclobas
The following dependencies couldn't be met:
  - coclobas -> cohttp (< 0.99 & >= 0.21.1 | (< 0.99 & >= 0.21.1)) -> sexplib < 113.01.00
  - coclobas -> cohttp (< 0.99 & >= 0.21.1 | (< 0.99 & >= 0.21.1)) -> pa_fields_conv
  - coclobas -> cohttp (< 0.99 & >= 0.21.1 | (< 0.99 & >= 0.21.1)) -> fieldslib < 113.01.00 -> type_conv (= 108.00.02 | = 108.07.00 | = 108.07.01 | = 108.08.00 | = 109.07.00 | = 109.08.00 | = 109.09.00 | = 109.10.00 | = 109.11.00 | = 109.12.00 | = 109.13.00 | = 109.14.00 | = 109.15.00)
  - coclobas -> cohttp (< 0.99 & >= 0.21.1 | (< 0.99 & >= 0.21.1)) -> conduit = 0.5.1 -> sexplib < 113.01.00
  - coclobas -> ketrew -> solvuu-build >= 0.3.0
  - coclobas -> ketrew -> js_of_ocaml >= 3.0
  - coclobas -> solvuu-build = 0.2.0
Your request can't be satisfied:
  - Conflicting version constraints for cohttp
  - Conflicting version constraints for solvuu-build
  - cohttp.0.20.1 is in conflict with js_of_ocaml.3.0
  - cohttp.0.20.2 is in conflict with js_of_ocaml.3.0
  - cohttp.0.21.0 is in conflict with js_of_ocaml.3.0
  - cohttp.0.21.1 is in conflict with js_of_ocaml.3.0
  - cohttp.0.22.0 is in conflict with js_of_ocaml.3.0
  - pa_fields_conv is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03".
  - sexplib<113.01.00 is not available because your system doesn't comply with ocaml-version >= "4.02.1" & ocaml-version < "4.03".
  - type_conv.108.00.02 is not available because your system doesn't comply with ocaml-version >= "3.12.1" & ocaml-version < "4.03.0".
  - type_conv.108.07.00 is not available because your system doesn't comply with ocaml-version < "4.03.0".
  - type_conv.108.07.01 is not available because your system doesn't comply with ocaml-version >= "3.12.1" & ocaml-version < "4.03.0".
  - type_conv.108.08.00 is not available because your system doesn't comply with ocaml-version >= "3.12.1" & ocaml-version < "4.03.0".
  - type_conv.109.07.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.08.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.09.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.10.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.11.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.12.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.13.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.14.00 is not available because your system doesn't comply with ocaml-version >= "4.00.0" & ocaml-version < "4.03.0".
  - type_conv.109.15.00 is not available because your system doesn't comply with ocaml-version >= "4.00.1" & ocaml-version < "4.03.0".

No solution found, exiting

what does opam pin say? for coclobas?
the constrain coclobas -> solvuu-build = 0.2.0 seems old

biokepi.master    (uninstalled)  git  https://github.com/hammerlab/biokepi.git
ketrew.master                    git  https://github.com/hammerlab/ketrew.git
secotrec.master   (uninstalled)  git  https://github.com/hammerlab/secotrec.git

and coclobas is at 0.0.2? (opam info coclobas)

Yep.
On Nov 2, 2017 4:53 PM, "Sebastien Mondet"<EMAIL_ADDRESS>wrote:

and coclobas is at 0.0.2? (opam info coclobas)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hammerlab/secotrec/issues/85#issuecomment-341554579,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAC9OS_0nlDJi5_xATO1y4HVoOu-gzcgks5syiutgaJpZM4QQPyb
.

Indeed the opam info was updated by this: https://github.com/ocaml/opam-repository/pull/9714
I don't know why...
try then
opam pin add -n coclobas https://github.com/hammerlab/coclobas.git
opam pin add -n cohttp 0.99.0
opam install coclobas cohttp

Cool, do you want to add that to the README and tutorials?

The "end user" tutorials are Docker-based so shouldn't be a problem.
I'll figure out what's wrong with the coclobas/cohttp constrain and maybe release a minor version of coclobas.

opam install coclobas cohttp failed with the following error:
#=== ERROR while installing trakeva.master ====================================#
# opam-version 1.2.2
# os           darwin
# command      oasis setup
# path         /Users/iskander/.opam/4.03.0/build/trakeva.master
# compiler     4.03.0
# exit-code    1
# env-file     /Users/iskander/.opam/4.03.0/build/trakeva.master/trakeva-52975-d0f245.env
# stdout-file  /Users/iskander/.opam/4.03.0/build/trakeva.master/trakeva-52975-d0f245.out
# stderr-file  /Users/iskander/.opam/4.03.0/build/trakeva.master/trakeva-52975-d0f245.err
### stderr ###
# E: Sys_error("_oasis: No such file or directory")

=-=- Error report -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
The following actions were aborted
  ∗  install coclobas 0.0.2
The following actions failed
  ∗  install trakeva master
No changes have been performed

Do I need to also pin trakeva? Also, what is trakeva?

@iskandr the output seems to say that you have some weird version of trakeva ("trakeva.master" does not exist). Maybe that's some remains of a previous pin or from the old custom opam repo, did you remove it?
try opam install trakeva.0.1.1 ?

Since it's a dependency, do you want to add some instructions for ensuring the correct version of trakeva?

OK, running opam install tls secotrec biokepi reinstalled many things but did finish successfully!
I guess once the cohttp dependency is fixed, consider this issue done?

@iskandr the correct version of trakeva is always the picked by default, it seems that you had a weird environment with years-old discontinued dev-opam-repos (?)

Probably left over from the last time I tried to use the tool chain -- it's still hard as a user to get such obscure errors from what's essentially the same as pip install --upgrade.

@iskandr comparison with pip is very unfair; that thing breaks very easily all the time (esp. with builds that succeed but wrong installations that fail at run time) and then it is very hard to repair without wiping out everything.

It's probably increased familiarity but I use pip to great success every day...and found myself in what seems like a weird edge-case having followed previous opam instructions. I'm sure opam is great once you're familiar with it.


Severe bug in ResonanceAudio.setRoomProperties()

Since the recent Chrome 69 update, the buffer property on a ConvolverNode can't be set twice. This is used in LateReflections.setDurations(), which is used by Room.setProperties(), which is used by ResonanceAudio.setRoomProperties().
The error (accompanied by the above stacktrace):
Uncaught (in promise) DOMException: Failed to set the 'buffer' property on 'ConvolverNode': Cannot set buffer to non-null after it has been already been set to a non-null buffer

The development team has several demos listed on the 'getting started' page, which link to the demo page found here. Of those demos, the two that use ResonanceAudio.setRoomProperties() give the mentioned error. The 'Hello World' demo shows the error right after clicking 'Play', while the 'Room Models' demo shows it after playing one of the sounds and then changing the room dimensions or the wall materials (both resulting in a call to ResonanceAudio.setRoomProperties()).

Oh nvm, I see it was already reported here. Still, I'd recommend giving this some priority to prevent a Firefox requirement for a fair amount of VR applications.