Error on default instalation

Describe the bug
█ Creating PizzaApp using Ignite 8.2.5
█ Powered by  ∞ Infinite Red  (https://infinite.red)
█ Package Manager: yarn
█ Bundle identifier: com.pizzaapp
█ Path: /Users/jcasanova/Documents/GIT/PizzaApp
────────────────────────────────────────────────────

🖨  3D-printing a new React Native app
⠇ Installing yarn dependencies (wow these are heavy)

/Users/jcasanova/.npm/_npx/bec2839915ba8fc3/node_modules/gluegun/build/index.js:15
throw up;
^
warning @expo/webpack-config > webpack-dev-server ><EMAIL_ADDRESS>Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
warning @expo/webpack-config > webpack-dev-server > chokidar ><EMAIL_ADDRESS>fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
warning @expo/webpack-config > webpack-dev-server > url ><EMAIL_ADDRESS>The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
warning @expo/webpack-config > webpack-dev-server > sockjs ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning @expo/webpack-config > webpack-dev-server > webpack-log ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning @expo/webpack-config > webpack > watchpack > watchpack-chokidar2 ><EMAIL_ADDRESS>Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
warning @expo/webpack-config > webpack > micromatch > snapdragon ><EMAIL_ADDRESS>See https://github.com/lydell/source-map-resolve#deprecated
warning @expo/webpack-config > optimize-css-assets-webpack-plugin > cssnano > cssnano-preset-default > postcss-svgo ><EMAIL_ADDRESS>This SVGO version is no longer supported. Upgrade to v2.x.x.
warning @expo/webpack-config > webpack > micromatch > snapdragon > source-map-resolve ><EMAIL_ADDRESS>See https://github.com/lydell/source-map-url#deprecated
warning @expo/webpack-config > webpack > micromatch > snapdragon > source-map-resolve ><EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated
warning @expo/webpack-config > webpack > micromatch > snapdragon > source-map-resolve ><EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated
warning @expo/webpack-config > optimize-css-assets-webpack-plugin > cssnano > cssnano-preset-default > postcss-svgo > svgo ><EMAIL_ADDRESS>Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
warning expo ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning expo > expo-file-system ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning expo > expo-constants ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning expo > @expo/cli ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning react-native > @react-native-community/cli > @react-native-community/cli-plugin-metro > metro > metro-minify-uglify ><EMAIL_ADDRESS>support for ECMAScript is superseded by uglify-js as of v3.13.0
warning babel-jest > @jest/transform > jest-haste-map ><EMAIL_ADDRESS>some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added
warning detox > tempfile ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>Beta version should not be used anymore
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning detox-expo-helpers > xdl > @expo/bunyan ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
warning detox-expo-helpers > xdl > request ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>Please upgrade to @sentry/browser. See the migration guide https://bit.ly/3ybOlo7
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>Please upgrade to @sentry/node. See the migration guide https://bit.ly/3ybOlo7
warning detox-expo-helpers > xdl > raven ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning detox-expo-helpers > xdl ><EMAIL_ADDRESS>Deprecated due to CVE-2021-21366 resolved in 0.5.0
warning detox-expo-helpers > xdl > plist ><EMAIL_ADDRESS>Deprecated due to CVE-2021-21366 resolved in 0.5.0
warning detox-expo-helpers > xdl > joi ><EMAIL_ADDRESS>This module has moved and is now available at @hapi/hoek. Please update your dependencies as this version is no longer maintained an may contain bugs and security issues.
warning detox-expo-helpers > xdl > analytics-node ><EMAIL_ADDRESS>Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at https://github.com/visionmedia/superagent/releases.
warning detox-expo-helpers > xdl > joi ><EMAIL_ADDRESS>This module has moved and is now available at @hapi/topo. Please update your dependencies as this version is no longer maintained an may contain bugs and security issues.
warning detox-expo-helpers > xdl > joi > topo ><EMAIL_ADDRESS>This module has moved and is now available at @hapi/hoek. Please update your dependencies as this version is no longer maintained an may contain bugs and security issues.
warning detox-expo-helpers > xdl > request ><EMAIL_ADDRESS>this library is no longer supported
warning detox-expo-helpers > xdl > @expo/ngrok ><EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
warning detox-expo-helpers > xdl > @expo/ngrok ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning detox-expo-helpers > xdl > @expo/osascript > babel-runtime ><EMAIL_ADDRESS><EMAIL_ADDRESS>is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
warning detox-expo-helpers > xdl > slugid ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning detox-expo-helpers > xdl > analytics-node > superagent ><EMAIL_ADDRESS>Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
warning detox-expo-helpers > xdl > pacote > make-fetch-happen ><EMAIL_ADDRESS>This module is not used anymore, npm uses minipass-fetch for its fetch implementation now
warning metro-config > metro > metro-minify-uglify ><EMAIL_ADDRESS>support for ECMAScript is superseded by uglify-js as of v3.13.0
warning mocha ><EMAIL_ADDRESS>Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
warning mocha ><EMAIL_ADDRESS>Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
No patch files found
./bin/postInstall failed on command:
if [ -d "ios" ]; then cd ios && pod install && cd -; fi
error Command failed with exit code 31.
(Use node --trace-uncaught ... to show where the exception was thrown)
Ignite version
8.2.5
Additional info
npx ignite-cli doctor
Need to install the following packages:
ignite-cli
Ok to proceed? (y)
System
platform           darwin
arch               x64
cpu                8 cores      Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
directory          GIT          /Users/jcasanova/Documents/GIT
JavaScript (and globally-installed packages)
node                    16.13.2      /Users/jcasanova/.nvm/versions/node/v16.13.2/bin/node
npm                     8.1.2        /Users/jcasanova/.nvm/versions/node/v16.13.2/bin/npm
corepack              0.10.0
expo-cli              5.3.0
npm                   8.1.2
yarn                    1.22.19      /usr/local/bin/yarn
ios-deploy            1.11.4
react-devtools        4.18.0
react-native-rename   2.9.0
pnpm                    -            not installed
expo                    -            not installed
Ignite
ignite-cli         7.15.0       /Users/jcasanova/.npm/_npx/e31027f3785124a8/node_modules/.bin/ignite
ignite src         build        /Users/jcasanova/.npm/_npx/e31027f3785124a8/node_modules/ignite-cli/build
Android
java               11.0.16      /usr/bin/java
android home       -            /Users/jcasanova/Library/Android/sdk
iOS
xcode              14.0.1
cocoapods          1.11.3       /usr/local/bin/pod

Using : npx ignite-cli new PizzaApp --yes --debug works ok but I noticed that with debug uses Creating PizzaApp using Ignite 7.15.0 not the Ignite 8.2.5

@slasho you might be cached, you can clear our your npm cache entirely or that specific package
Caution: this clears out the entire cache if that matters to you:
rm -rf ~/.npm/_npx

same error after removin _npx dir

Do you have ignite-cli globally installed?

The problem was node version
it fails with v17.7.1
but work OK with v16.13.2
is it a bug?

I know it's working on Node 16.x and 18.x, not sure about 17.

Hi! I had a similar problem and running it with --debug didn't work. I tried to use NPM instead of Yarn and installation went without any errors.

I have the same issue with node v16.13.2

@slasho @acerblaze @comertcimen can you all provide the output of npx ignite-cli doctor please? Need more information.
Issues with Yarn only?

@frankcalise Here is the output. It is not just yarn. I have the same issue with npm.
System
  platform           darwin
  arch               x64
  cpu                12 cores       Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
  directory          refactor_app   /Users/coemert/Documents/Mobile/refactor_app

JavaScript (and globally-installed packages)
  node                  16.13.2      /usr/local/bin/node
  npm                   8.1.2        /usr/local/bin/npm
    @capacitor/cli      3.6.0
    @ionic/cli          6.20.3
    @nestjs/cli         8.2.4
    @vue/cli            4.5.15
    cordova-res         0.15.4
    corepack            0.10.0
    ios-deploy          1.11.4
    mongodb-realm-cli   2.4.1
    npm                 8.1.2
    prettier            2.7.1
    ts-node             10.4.0
    typescript          4.4.4
    yarn                1.22.17
    zx                  5.0.0
  yarn                  1.22.19      /Users/coemert/.yarn/bin/yarn
    create-react-app    5.0.1
  pnpm                  -            not installed
  expo                  -            not installed

Ignite
  ignite-cli         8.2.5        /Users/coemert/.npm/_npx/e31027f3785124a8/node_modules/.bin/ignite
  ignite src         build        /Users/coemert/.npm/_npx/e31027f3785124a8/node_modules/ignite-cli/build

Android
  java               11.0.17      /usr/bin/java
  android home       -            /Users/coemert/Library/Android/sdk

iOS
  xcode              14.0.1
  cocoapods          1.10.2       /usr/local/bin/pod

Tools
  git                git version 2.38.1   /usr/local/bin/git

And this is the output when I try to run npm install or yarn install
> node ./bin/postInstall

./bin/postInstall script running: npx patch-package
patch-package 6.4.7
Applying patches...
No patch files found
./bin/postInstall script running: pkill -f "cli.js start" || set exit 0
./bin/postInstall script running: if [ -d "ios" ]; then cd ios && pod install && cd -; fi
Using Expo modules
Auto-linking React Native modules for target `HelloWorld`: RNBootSplash, RNCAsyncStorage, RNGestureHandler, RNReanimated, RNScreens, and react-native-safe-area-context
[Codegen] Generating ./build/generated/ios/React-Codegen.podspec.json
Pull request detected: null
fatal: not a git repository (or any of the parent directories): .git
Analyzing dependencies
[!] The version of CocoaPods used to generate the lockfile (1.11.3) is higher than the version of the current executable (1.10.2). Incompatibility issues may arise.
Fetching podspec for `DoubleConversion` from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`
[Codegen] Found FBReactNativeSpec
Fetching podspec for `RCT-Folly` from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`
Fetching podspec for `boost` from `../node_modules/react-native/third-party-podspecs/boost.podspec`
Fetching podspec for `glog` from `../node_modules/react-native/third-party-podspecs/glog.podspec`
Fetching podspec for `hermes-engine` from `../node_modules/react-native/sdks/hermes/hermes-engine.podspec`
[!] CocoaPods could not find compatible versions for pod "FlipperKit/Core":
  In snapshot (Podfile.lock):
    FlipperKit/Core (= 0.157.0)

  In Podfile:
    FlipperKit/Core (= 0.157.0)

None of your spec sources contain a spec satisfying the dependencies: `FlipperKit/Core (= 0.157.0), FlipperKit/Core (= 0.157.0)`.

You have either:
 * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
 * mistyped the name or version.
 * not added the source repo that hosts the Podspec to your Podfile.
./bin/postInstall failed on command:
  if [ -d "ios" ]; then cd ios && pod install && cd -; fi
npm ERR! code 31
npm ERR! path /Users/coemert/Documents/Mobile/refactor_app/KanzleiAktuell
npm ERR! command failed
npm ERR! command sh -c node ./bin/postInstall

@comertcimen did you try the suggested command?
cd ios
pod install --repo-update

I updated cocoapods and problem solved.
@slasho can you run this command and try again?
sudo gem install cocoapods

Closing with @comertcimen's solution.
@slasho Feel free to reopen if you are still experiencing this.


pingSpin

t := time.NewTicker(10 * time.Second / time.Duration(cap(sp.pool)))

If the number of conns is too many, the PING is too frequent.

How many Conns are you working with? And how are you determining it's too many? Are the number of pings affecting the redis server in some way?

I'm gonna go ahead and close this, my latest commit allows for specifying the ping interval, so you can set it to whatever you're comfortable with, or turn it off all-together


Android - registerTagEvent not triggering callback

Hi,
Please can you help with the below issue?
I have implemented NfcManager.registerTagEvent inside a _startDetection() method in a couple of different ways:
NfcManager.registerTagEvent(
  tag => {
    console.log("Tag Discovered", tag);
  },
  "Hold your device over the tag",
  {
    invalidateAfterFirstRead: true,
    isReaderModeEnabled: true,
    readerModeFlags:
      NfcAdapter.FLAG_READER_NFC_A | NfcAdapter.FLAG_READER_SKIP_NDEF_CHECK
  }
);

NfcManager.registerTagEvent(this._onTagDiscovered)
  .then(result => {
    console.log("registerTagEvent OK", result);
  })
  .catch(error => {
    console.warn("registerTagEvent fail", error);
  });

In the first case, the console log is never triggered even when I scan an NFC tag
In the second case, the _onTagDiscovered callback is never triggered and I see the log of "registerTagEvent OK" immediately after starting detection.
This issue seems similar to - https://github.com/whitedogg13/react-native-nfc-manager/issues/136
Any help would be greatly appreciated
Thanks,
Jamie

Hello,
I am having the exact same issue and not sure how to resolve it. I haven't tested this will iOS yet, but on Android the onTagDiscovered callback is never triggered. In regards to the v2 example, the registerTagEvent doesn't seem to wait for a tag to be read. Logging in the console shows that the _test method runs without ever reading a tag once the Test button is pressed. Any guidance would be much appreciated.
Thanks,
Alex


Update existing workflows to support laravel-dashboard

Hey,
I tried developing with the existing skeleton but I needed to change some things to make it work.
In this pull requests are my changes to let the skeleton work with the 2.1.3 version of https://github.com/spatie/laravel-dashboard

Thank you!


When using the sort plugin and moving a root node to another root spot, grid loses track of the moved node

Grid was working and then when I added the sort plugin this bug pops up. It's only at root level. When you take a node and move it from a root level to another spot at root level it does not actually move because of the sort plugin. The problem is grid loses track of this and the grid below that item becomes offset and the item you attempted to move is then gone. If you do this kind of move on a child node, this isn't an issue and the grid is fine. If you move a node to a child or from a child to root it works like normal. It's only when moving from root to root.

@deitch was there any followup on this? I am having a similar issue.
move_node.jstree works with jstree and jstreegrid but only when the "sort" plugin is omitted from jstree.
If I enable the "sort" plugin, jstreegrid columns do sort correctly, and seem to sort by first column ascending despite my server providing an ordering -_-.  The biggest challenge is that when I include the "sort" plugin with jstree+ jstreegrid then my root level nodes dont respond very well to move_node.jstree.  With "sort" enabled, move_node.jstree will move a node into other nodes but not between other nodes (not between nodes at the root, and not between nodes anywhere else).
It would be difficult for me to provide a fiddle, but would definitely troubleshoot this with someone if they wanted to reach out to me.

@deitch, although I'm not the original poster, I am 90% confident i have fixed this.  I will write back soon with my findings.

was there any followup on this? I am having a similar issue

Not that I am aware of. There is no commercial side to jstree-grid - or company backing it - so my support rule of thumb is, if people create fiddles (or similar) so something is consistently recreatable, will address, else it isn't realistic.

The challenge is that when I include the "sort" plugin with jstree+ jstreegrid then my root level nodes dont respond very well to move_node.jstree. With "sort" enabled, move_node.jstree will move a node into other nodes but not between other nodes (not between nodes at the root, and not between nodes anywhere else).

Still confused. It shouldn't be too hard to create a fiddle with a sample tree with mock data, and then instructions as to how to recreate?

I am 90% confident that I have fixed the problem I mentioned earlier here. I will write back with my findings ASAP

Thank you, that is great. Even better than recreating! :-)

@deitch, my problem is now resolved.
Findings:
Although I cannot speak to the original poster's issue,
my earlier claim here was not accurate, and certainly not a jstreegrid or jstree issue.  The issue I cited earlier in this conversation had indeed emerged whenever  "sort" plugin  was enabled, but turns out was not a problem with jstree or jstreegrid but was caused by poor coding on my part. That is to say after logging my variable assignments I realized that I was updating my server with "undefined" instead of the proper numerical data.position within move_node callback.

was updating my server with "undefined"

Ah, well. Those things do happen. :-)


[tool_crash] FormatException

Command
flutter build ios --release --no-codesign --no-tree-shake-icons

Steps to Reproduce

...
...
...

Logs
FormatException
#0      _Utf8Decoder.convertChunked (dart:convert-patch/convert_patch.dart:1892:7)
#1      _Utf8ConversionSink.addSlice (dart:convert/string_conversion.dart:314:28)
#2      _Utf8ConversionSink.add (dart:convert/string_conversion.dart:310:5)
#3      _ConverterStreamEventSink.add (dart:convert/chunked_conversion.dart:72:18)
#4      _SinkTransformerStreamSubscription._handleData (dart:async/stream_transformers.dart:111:24)
#5      _rootRunUnary (dart:async/zone.dart:1362:47)
#6      _CustomZone.runUnary (dart:async/zone.dart:1265:19)
#7      _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170:7)
#8      _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
#9      _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#10     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:733:19)
#11     _StreamController._add (dart:async/stream_controller.dart:607:7)
#12     _StreamController.add (dart:async/stream_controller.dart:554:5)
#13     _Socket._onData (dart:io-patch/socket_patch.dart:2160:41)
#14     _rootRunUnary (dart:async/zone.dart:1370:13)
#15     _CustomZone.runUnary (dart:async/zone.dart:1265:19)
#16     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170:7)
#17     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
#18     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
#19     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:733:19)
#20     _StreamController._add (dart:async/stream_controller.dart:607:7)
#21     _StreamController.add (dart:async/stream_controller.dart:554:5)
#22     new _RawSocket.<anonymous closure> (dart:io-patch/socket_patch.dart:1696:33)
#23     _NativeSocket.issueReadEvent.issue (dart:io-patch/socket_patch.dart:1208:14)
#24     _microtaskLoop (dart:async/schedule_microtask.dart:40:21)

[✓] Flutter (Channel dev, 2.3.0-0.1.pre, on macOS 11.2.3 20D91 darwin-arm, locale zh-Hans-CN)
    • Flutter version 2.3.0-0.1.pre at /Users/hellotalk/Applications/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision d72bfb8d07 (1 year, 1 month ago), 2021-04-26 06:05:55 -0700
    • Engine revision de6e1adf97
    • Dart version 2.14.0 (build 2.14.0-18.0.dev)

[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5.1, Build version 12E507
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

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

[✓] Connected device (1 available)
    • Chrome (web) • chrome • web-javascript • Google Chrome 101.0.4951.64
    ! Error: Jersey 11 is not connected. Xcode will continue when Jersey 11 is connected. (code -13)

! Doctor found issues in 2 categories.

Flutter Application Metadata
Type: null
Version: 1.0.0+1
Material: true
Android X: true
Module: true
Plugin: false
Android package: com.hellotalk
iOS bundle identifier: com.helloTalk.helloTalk
Creation channel: null
Creation framework version: null
Plugins
audio_session-0.1.6+1
audioplayers-0.19.1
connectivity-0.4.6+2
device_info-0.4.2+6
device_info_plus-3.2.3
device_info_plus_linux-2.1.1
device_info_plus_macos-2.2.3
device_info_plus_web-2.1.0
device_info_plus_windows-2.1.1
flutter_boost-4e3790e50531af786d86d0c9b0f502ee4865a460
flutter_current_locale-3eb501f2df34cbda861baf62dfa76ca8084b814b
flutter_handle_url-db909737236c89791b4cd927f87568a164119e53
flutter_secure_storage-3.3.5
flutter_sound-9.2.12
flutter_sound_web-9.2.12
flutter_webview_plugin-0.4.0
flutter_break_iterator-032a4e22664c4c198a9b59a0e4dffeb9e1ba7fc7
fluttertoast-8.0.9
get_ip-0.4.0
ht_audioplayer-6c3a32f94f65b1aece53c33491917fa56ee3e30f
ht_flutter_plugin_deviceid-f360f2dbc4e654712cc07d96d5e2505a68875ec4
just_audio-0.9.21
just_audio_web-0.4.7
launch_review-2.0.0
orientation-1.3.0
package_info-0.4.3+4
package_info_plus-1.4.2
package_info_plus_linux-1.0.5
package_info_plus_macos-1.3.0
package_info_plus_web-1.0.5
package_info_plus_windows-1.0.5
path_provider-2.0.2
path_provider_linux-2.1.5
path_provider_macos-2.0.5
path_provider_windows-2.0.5
permission_handler-6.1.3
sensors-2.0.3
share-0.6.5+4
shared_preferences-2.0.7
shared_preferences_linux-2.0.4
shared_preferences_macos-2.0.2
shared_preferences_web-2.0.3
shared_preferences_windows-2.0.4
sqflite-2.0.2
system_proxy-0.1.0
tingyun_flutter_plugin-1.0.2
unique_ids-1.1.1
url_launcher-6.0.10
url_launcher_linux-2.0.3
url_launcher_macos-2.0.3
url_launcher_web-2.0.7
url_launcher_windows-2.0.2
vibration-1.7.3
vibration_web-1.6.2
video_player-2.2.3
video_player_web-2.0.8
wakelock
wakelock_macos-0.4.0
wakelock_web-0.4.0
webview_flutter-2.0.13

Hi @askmegit, Thanks for filing the issue.
There is a similar issue describing this case  https://github.com/flutter/flutter/issues/81666, Please follow up there for further updates, Closing this issue as a duplicate. If you disagree feel free to write in the comments and we will reopen it.
Thank you.


Limit number of data points returned in a query

We currently limit the number of steps to 11k, but if you query a very high cardinality metric we seem to be able OOM even a very large Prometheus.  I propose we limit the number of points we return (step * timeseries).

The plan is to limit the number of points that a PromQL node can return. Limiting the ultimate output could be too late.

That sounds reasonable.  Is this discussed anywhere?

It came up on the developers list a while back.

Found it: https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/prometheus-developers/bwcBD-JBXck/BiFO_eKbCgAJ

I'm planning on adding a returned sample limit for each node in a promql evaluation, which we can do with the new promql design and would be good enough for most purposes.

When you said "the plan" you meant "my plan", right?  :-)
Is this something you have started working on or plan on working on soon?  If not I'll take a stab.

I've not started working on it yet, there's also #4384 which is taking a more complicated approach.

Roger, thanks for the pointer.
Do you have any thoughts on reasonable limits?  IIRC we consider 100k to be a reasonable cardinality limit for a metric, and therefore each aggregation should be able to consider 100k samples for a given stpe.  I guess a limit would also be appropriate on the output of aggregations (specifically, less than 100k - maybe 1k?) and on the number of samples in a vector selector (maybe a relatively small limit - 6k would be 1 day at 15s).
Even after we do all this, it still sounds like queries that returns lots of timeseries over a long range could be a problem, if they are very simple - I'm thinking something as basic as up over 1k targets and 11k datapoints.
Hence why I think we need to limit step * #timeseries.  WDYT?

My main thought was that sum by job({__name__=~".+"}) needs to keep working in the vast majority of setups, as we don't currently have anything else to help debug cardinality issues. That'd imply at least 20M which works out as ~1GB in the worst case (3 nodes worth of data can be in memory at once for a binary operator, at 16B per sample).

Hence why I think we need to limit step * #timeseries.

That's why I'm proposing limiting output samples of a node, as it's more accurate than that.

Basically limits:

around case *VectorSelector
in matrixSelector
in vectorSelector

(maybe 1. and 3. could be unified?)

Picking this up.
Just having a read over the discussion (here, the other PR, mailing list) and trying to get up to speed with the code in /promql.
@brian-brazil are there any docs for the promql internals similar to what you wrote for discovery, or Julius' internal arch. doc?

There are not, Tom's post has the code points you need to touch.

:+1: I'll start there.

Running some tests to confirm which types would have to be limited by input samples to expressions/functions, but it may just be NumberLiteral or other types that are limited by the max # of steps limit.
If we're going to set a default value for the max # of samples and (or) make that value configurable, we should provide an explanation of how we get to the number and how people should go about calculating what they might want to set it to. Unfortunately my operations exp. with Prometheus is still limited.
@brian-brazil would you mind explaining this comment

My main thought was that sum by job({name=~".+"}) needs to keep working in the vast majority of setups, as we don't currently have anything else to help debug cardinality issues. That'd imply at least 20M which works out as ~1GB in the worst case (3 nodes worth of data can be in memory at once for a binary operator, at 16B per sample).

Are you saying 20M samples? I'm missing something in how your calculating these numbers.

It's 16 bytes per sample, multiplied by 3 giving ~1GB with 20M points.

When using range vector functions, we don't load in all the data at once - just one window at a time.

Sorry I still don't entirely understand. Are your saying that we only ever
load the samples for a single timestamp into memory at a time? So in the
situation with 20m samples for about 1GB we have 20m series as well.
On Tuesday, August 21, 2018, Brian Brazil<EMAIL_ADDRESS>wrote:

When using range vector functions, we don't load in all the data at once -
just one window at a time.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/prometheus/issues/4414#issuecomment-414762482,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADGJnMTsQvrEgm7Ha_7HTE-6fyeCqRt1ks5uTEf9gaJpZM4Vf3g4
.

That was the old design. In the new design things like rate() work time series by time series, and within that iterate over the data. So a 5m rate only needs 5m worth of samples from one time series in memory at a time - plus space for the output.
The space taken by series themselves and their labels is not being taken into consideration here, we're just focusing on samples as that should be good enough.

So in the case of range vector were you referring to a single timestamp step when you said 'one window'?

Yes.

Okay that makes sense, thanks. So then I guess I'm just back to the question of what seems reasonable for a default maxSamples values. You're saying the default should be 20M which results in ~1GB of memory?

I'm saying that we should have a default setting that allows sum by job({__name__=~".+"}) to work on a Prometheus with 20M active series, whatever that setting is.

Okay, that makes sense. I'd like to have a test for this in my PR. I'll have a look around but not really seeing any examples of queries for __name__=~".+" in engine_test or parse_test.

Closed in #4532


Java8-11 changes consistent with 17

This PR is targeting a DS-Java 6.1.0 release.  The changes in this PR make the Java repo consistent with the just released Memory 3.0.0.  This ds-java release is still targeted for Java 8 and 11 and will likely be the last release supporting Java 8 and 11.  If all goes as planned, the next release will be DS-Java 7.0.0, which will be targeted at Java 17.
All of the following changes are internal and do not impact the DS-Java API.
DS-Java changes from Master to branch java8-11_changes_consistent_with_17:
common/Util.java

1 javadoc

theta/Sketch

Deprecation removed on getMaxCompactSketchBytes
bug fix: getCompactSketchMaxBytes(lgK)

theta/Sketches

Deprecation removed on getMaxCompactSketchBytes(numEntries), Javadoc improved.

filters/bloomfilter

all new code for 6.1.0.
changes are to make the calls to Memory compatible with Memory 3.0.0.

hll/DirectAuxHashMapTest

WritableHandle removed

hll/DirectCouponListTest

WritableHandle removed

kll/KllDoublesValidationTest

code comment change

quantiles/DebugUnionTest

WritableHandle removed

quantiles/DirectQuantilesMemoryRequestTest

WritableHandle removed

quantiles/DoublesSketchTest

WritableHandle removed

quantiles/PreambleUtilTest

WritableHandle removed

theta/CompactSketchTest

WritableHandle removed

theta/DirectQuickSelectSketchTest

WritableHandle removed

theta/HeapifyWrapSerVer1and2Test

All variable renaming

theta/SketchesTest

bug fix: getCompactSketchMaxBytes

theta/UnionImplTest

WritableHandle removed

theta/UpdateSketchTest

removed some code comments

pom.xml

updated Memory dependency to 3.0.0
Removed some comments
Reorganized the  section
updated some of the plugin versions

Readme

Fixed the badges
Removed references to "-P strict"

This must wait until DS-Memory 3.0.0 is released.

Thank you for your comments!
In the process of investigating the first comment (theta/UnionImplTest). I uncovered some other issues that need to be fixed, but I will submit those under different PRs ... and try to make them as small as possible :)


Enable code collapsing on RoslynCodeEditor

I try to enable code collapsing on AvalonEdit control and I can not enable it properly.
public FoldingManager foldingManager;
public XmlFoldingStrategy foldingStrategy;
to enable code collapsing I insert this code on Window_Loaded
foldingManager = FoldingManager.Install(textEditor.TextArea);
foldingStrategy = new XmlFoldingStrategy();
foldingStrategy.UpdateFoldings(foldingManager, textEditor.Document);
and to update the collapsing I insert to textEditor_TextChanged this code
foldingStrategy.UpdateFoldings(foldingManager, textEditor.Document);
from the Window_Loaded I get only the first collapsing to work (like in the picture the other tags not updated)
the code in textEditor_TextChanged does not work at all
reference :
https://stackoverflow.com/questions/35571855/enable-code-collapsing-on-avalonedit-control

You're using an XmlFoldingStrategy which wouldn't work for C#


Update SystemVM debian iso from 10.4.0 to 10.5.0

Description
Debian 10.4.0 is not available, therefore SystemVM templates will fail to build with a missing iso.
Fixed updating with the Debian 10.5.0 iso located at https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/
Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[X] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

How Has This Been Tested?
Executed command to build the template:
$ sudo bash build.sh systemvmtemplate

Check that the template was successfully generated with script tools/appliance/build.sh

@blueorangutan package

@GabrielBrascher a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: ✔centos7 ✖debian. JID-1649

Needs separate systemvm build if necessary
cc @DaanHoogland

Checked this, just URL/checksum change. Full smoketests not necessary, @GabrielBrascher have you found any reason we should build a new systemvmtemplate towards 4.15 release? Or keep using the build from June: http://download.cloudstack.org/systemvm/4.15/ cc @wido @DaanHoogland

@GabrielBrascher change gtm.
Do we expect debian to just remove older 10 releases when they update? This may lead to failures after we release as well. At least for anybody building their own systemVMs. What if we release and the day after they upgrade to 10.6?

@rhtyd this happened while I was building a System VM template for testing Python3 development at PR #3730.
Depending on how #3730 progress we might or might not need a new template.

@DaanHoogland I was thinking the same. Do we need to constantly update that any time that there is another Debian 10.X?
That might be interesting thinking about new developers playing around with the system VM template. However, it might require some manual effort to keep it up to date.

@DaanHoogland that is a good question. What do you think @rhtyd?
I can close this PR if you guys think it should be addressed inside a PR when the respective requires a new system VM template.
The downside is that it could catch some developer that is not used with the building template process; but on the other hand, we don't need to keep an eye looking for changes on the Debian 10.X.Y.
Alternatives that I see:

Update iso just if a new template is necessary
Create some fancy way to automatically update
Update at any time if someone struggle with building and sees it (no automation checking from time to time the ISO)

if you need it you need it and i am fine with it. lgtm in that respect. i do not like the flimsy procedure we use, but i can live with it.

The systemvm py scripts are patched via systemvm.iso, so we don't need a new template unless there's something in the 10.5 update. I'll merge this as it breaks build and review/compare changes against the June build.


pointerEvents="box-none" on internal views

I'd like to interact with a view that's absolutely positioned behind the FluidNavigator. I'm using the FluidNavigator to display overlays to the UI which I'd like to interact with. If all views have pointerEvents="box-none" touch events would reach the view behind the FluidNavigator.
The issue is that not all views internal to FluidNavigator have pointerEvents="box-none" so it's currently not possible.
Let me know if what I'm trying to achieve or if the issue isn't clear.
Thanks!

Hi, @siderakis - thanks for submitting the issue. I'm a little bit uncertain about what you're trying to do and if it will work for existing usage of the library. Feel free to try to dive into the code and see if you can identify some places you'd like to change this - PRs are welcome!


SNOW-721895: Set Session.sql_simplifier_enabled True by default

Please answer these questions before submitting your pull requests. Thanks!

What GitHub issue is this PR addressing? Make sure that there is an accompanying issue to your PR.
Fixes #SNOW-721895

Fill out the following pre-review checklist:

[x] I am adding a new automated test(s) to verify correctness of my new code
[ ] I am adding new logging messages
[ ] I am adding a new telemetry message
[ ] I am adding new credentials
[ ] I am adding a new dependency

Please describe how your code solves the related issue.

Codecov Report

Merging #652 (f91e17e) into main (c806a03) will decrease coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #652      +/-   ##
==========================================
- Coverage   98.79%   98.77%   -0.03%
==========================================
  Files          49       49
  Lines        7965     7977      +12
  Branches     1341     1342       +1
==========================================
+ Hits         7869     7879      +10
- Misses         38       39       +1
- Partials       58       59       +1

Impacted Files
Coverage Δ

src/snowflake/snowpark/session.py
98.95% <ø> (ø)

src/snowflake/snowpark/functions.py
99.57% <0.00%> (-0.22%)
:arrow_down:

src/snowflake/snowpark/column.py
99.13% <0.00%> (+<0.01%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


fix(radarr): removed CiNEPHiLES from Remux Tier

Pull Request
Purpose
Removed RlsGrp CiNEPHiLES from Remux Tier to prevent download loops.
This RlsGrp often sources alternative audio tracks, and adds these to releases alongside modern multichannel audio. Users have reported download loops as the audio format referred to in the release name does not always match the audio format in the filename. TRaSH Guides relies on automation provided by using different scores for different audio formats, so inconsistencies in naming will lead to download loops.
Radarr only probes the first audio track of any file, and cannot read nfo files. Discovery of multiple audio tracks would currently require scraping the tracker or indexer, which is not permitted. If both the release name and the filename do not contain the audio format used for the first audio track in the file, then download loops will result.
This issue is resolvable by the implementation of consistent release and file naming with regards to audio formats.
Approach
Removed RlsGrp CiNEPHiLES from Remux Tier and added them to the LQ
Open Questions and Pre-Merge TODOs

Requirements

[x] These changes meet the standards for contributing.
[x] I have read the code of conduct.

After reporting this issue to a CiNEPHiLES member, they said that another member made the mistake by using the wrong release name that didn't match the actual correct filename.
example:
filename: movie.year.2160p Remux DoVi HDR10+ HEVC FLAC 2.0-CiNEPHiLES
releasename: movie.year.2160p Remux DoVi HDR10+ HEVC TrueHD 7.1-CiNEPHiLES
Why is this wrong?:
The release name+filename should hold the info of the first audio track
Solution:
the process should be done that is matching filename to release name
once the guys get back they will rename the "release name" to match the filename

@TRaSH- I think we can close this one off for now?


decawave DW1000 device driver source code on CORTEX M3

Any body having this source code i want to try it cortex m3
data from manual--->
Decawave also provides DW1000 device driver software as source code. This source code includes a
set of API functions to initialise, configure and control the DW1000. It provides API functions for
transmission and reception, and for driving the functionalities of the IC. The DW1000 driver source code is targeted for the ARM cortex M3 but is readily portable to other microprocessor systems.
Thanks.

This library is not the library mentioned in the manual. The official driver is available on their homepage.

Hi @Rotzbua ,
please mention the link i'm not getting it.
Thanks.

https://github.com/lab11/dw1000-driver    have a look

@sarwadenj ?? simply decawave homepage: http://decawave.com/support/software

@sarwadenj Hi, can I close this issue?


Compatible with Azure OpenAI Whisper?

Is VoiceStreamAI compatible with Azure OpenAI Whisper?

Nope, it's not. Just self hosted Whisper for now. I think it wouldn't be
that hard to extend it to the API case
On Fri, 27 Sept 2024 at 03:07, github-ai-user @.***>
wrote:

Is VoiceStreamAI compatible with Azure OpenAI Whisper?
—
Reply to this email directly, view it on GitHub
https://github.com/alesaccoia/VoiceStreamAI/issues/37, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAKSEP4HV5TYOBAZREKK3G3ZYSVU7AVCNFSM6AAAAABO6ESR7WVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU2TCNZZGEYDCOI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Session cache fix

Alex noted a bug where sessions would show as favorited (Minnestar icon next to them) even though the user hadn't favorited them. I believe this fixes the issue.
I also threw in a fix for a server error when logging out redundantly (log out, back, log out again).

Coverage remained the same at 55.638% when pulling 03a080999bf883e299ed0921f67fde2067af7d38 on session-cache-fix into b9f057902e1ec75dfcbd968c5a8478be20238e53 on master.

Coverage remained the same at 55.638% when pulling d3699d04bd9a5e09cc6ba864ce8d5dc23247fb22 on session-cache-fix into b9f057902e1ec75dfcbd968c5a8478be20238e53 on master.

Thanks for the speedy turnaround!


ExclusiveGateway ends workflow when no transition is found

When an exclusive gateway does not have a default transition and no condition is met then the flow ends in the exclusive gateway. The end time of the activityInstance is set and the workstate is removed on the workflowInstance.
In the code there is a todo for this situation:
// TODO create an event to let the user decide (ExclusiveGatewayImpl.java, line 69)
A bit further in the code the activityInstance is end()-ed and propagatedToParent().
But since the activityInstance is closed, a message to this workflowInstance is not possible anymore: the workflow is ended.
My proposal is to leave the activityInstance open, so remove the code on lines 75-79. The only thing I am not sure about is what the consequences are when this workflowInstance is part of a invoked flow.
Other thing that I propose is that if no conditions are met and there is no default transition defined, the code also looks for an empty transition, and if found, treats this transition as if it was the default. I already agreed on this in a separate session with @tombaeyens .
I can create the above described patch and do a pull request, I just wanted to consult you guys first.

Seems I misinterpreted this issue.  @SilentGert noticed that this is in contradiction with the behavior we need in the product.  In our product we need the activity instance and potentially the workflow instance to end when no outgoing transitions are taken from an exclusive gateway.
Our product is based on the philosophy that if nothing has to be done, then the workflow instance should end.  I'll see if I can refactor this to an overridable method handleNoTransitions in the base implementation of exclusive gateway.  That way, you (or we) can override and customize it and use our own customized exclusive gateway instead of the base impl.
I'll fix it.

The code had some notes about activity instances that should be kept open.  That I removed.
I did create a customizable method in case the exclusive gateway is underspecified.  The default implementation will still look for the first transition without a condition.  @SilentGert if that's not ok for you, speak up :)
  /** called when this exclusive gateway is 'underspecified' so we have
   * to guess what's best to do at this point.
   *
   *  a) there is no outgoing transition with a condition that resolves to true
   *  b) there is no default transition specified
   *  c) and there is more than 1 transition
   */
  protected TransitionImpl handleUndefinedSelection(ActivityInstanceImpl activityInstance, List<TransitionImpl> outgoingTransitions) {
    return findFirstTransitionWithoutCondition(activityInstance, outgoingTransitions);
  }

In my opinion, if there is no outgoing transition or if no condition matches and there is no default transition defined, the execution of the activity instance should just end. Instead of guessing, which transition might be the correct one, there should be some error log which indicates that no proper transition was found. There shouldn't be any left over open activity instances which prevent the whole workflow instance from finishing, although, there is nothing left to do.
Those issues are the result of an underspecified workflow and, therefore, the user should fix the workflow and configure it properly. The engine in turn shouldn't do too much magic, it will only be harder for a user to understand why the engine behaves in a certain way.
That said, it could be a workaround to use the first transition without a condition if no other could be found. However, this renders the concept of default transitions a bit useless and in the worst case is not predictable, depending on how the outgoing transitions are stored (order might change).

Theoretically I agree, but then the engine should complain when deploying the workflow. Now the workflow can be deployed and can run, but workflowInstances can just "die"/end in for example an exclusivegateway and will never be noted again.

If you argue from that perspective, branches will be executed, which maybe aren't meant to be executed, just because someone forgot to add the respective condition.

question is: can we agree on standard behavior for the handleUndefinedSelection method.  the 2 options i see are:

take the first transition without a condition.  and end the execution flow if no such transition is found.
end the execution flow anyways.

any other proposal?
if we can agree on the same default, we can put that in the core engine and neither of us has to subclass to customize it.
my vote goes 1).  and we're 3 so that should give a clear outcome :)

I vote for 2), the reason being that this kind of error handling doesn't belong into this part of the engine.
I agree with @jblankendaal that it should be done in an earlier stage, in our case, our product / UI should warn the user.

The outcome is clear, unless I have another proposal :)
I see two more options:
3) Prevent this situation from happening by throwing an error when deploying the workflow where a ExclusiveGateway does not have a default transition. I am not sure if that is possible with the current workflow parsing, but this would be a very nice solution.
4) Leave the workflowInstance in the activity preceding the ExclusiveGateway, either closed or not closed. For sure the workflowInstance should not remain in the Exclusive gateway, since I think the ExclusiveGateway should be stateless...
I vote for option 3)
:)

Our authoring does not leverage the engine parsing to detect warnings and errors in the process model.  It's usually easier to build it right into the visual diagram tool, rather then sending the process model to the server, parsing it, sending the errors back and then try to link the errors to the UI elements.
I won't yet actively delete it to give us some more time to reflect.  But I guess there is a big chance that the error capturing part of the parsing will get removed over time.

Ok, then I vote for option 1, so it can stay as it is now...
As far as I'm concerned we can close the issue.


respect TRACEMETA=0

What this is
Makes it so that TRACEMETA=0 context var is respected in a Context() environment.
Why it's good
fixes https://github.com/tinygrad/tinygrad/issues/6918
Testing
Added unit test

This isn't right. Call it again with a different tracemeta

I don't think the problem is understood here


Implement edit function

Context
Implement edit function to CLI in TS
How to

[ ] Implement edit function

Need to update https://github.com/massalabs/DeWeb/pull/112/files/28398d18437e4e76c6608a26d0508c0f2db5c3fb#diff-de0791a9424209b08e87c38d10537a3532a081a185459b4fc28d4595c3b0ac3aR14 with immutability and deweb version storage introduced here https://github.com/massalabs/DeWeb/pull/126/files#diff-3ebdaef67413baee44de673e3d6d885fe674d291758dbb9fb9857e27aa54e0f1R28


No way to use in a regular tab

The app always opens in a popup window, no way to keep it in a regular tab.
Expected outcome
App opens in tab in chrome
Actual outcome
App opens in popup window
Versions
App: <IP_ADDRESS>-stable
Chrome: 49.0.2623.112
Platform: Windows (7)
Steps to reproduce

Open app
Search settings for 10 minutes looking for a way to change the annoying default behavior
Cry manly tears of frustration

It can't be done. App's are separated from the Chrome. Old (and deprecated) apps was a hybrid between extensions and apps so they were allowed to open it in tabs. But because they are no longer supported by Chrome Web Store and eventually by Chrome it can't be fixed.


[TASK] Have a common display, technical breakdown / BOM

the ideal would be to have a modal which just displays the order of the two combined,


[BUG] Masked enemy settings lost if updating from previous version

I have updated TooManyEmotes from 2.0.7 to 2.0.9, and I noticed my several settings under "MaskedEnemyEmotes" are lost.
I guess this is BepInEx fault but mainly is because "MaskedEnemyEmotes - Beta" are now "MaskedEnemyEmotes".

Did the configs at least regenerate under the new header? Am I seeing missing values in your screenshot? They should regenerate, but I think they would go back to default.


MARKET-5125: Choose Location Modal

Description
This PR looks to add the select location modal. This modal should pop up when first entering the site and cannot be escaped from until a location is set. After a location is set the modal should be escapable
Ticket
5125

I can't find where it happened in the commits but the itemDetails function is incorrect. It seems to have gotten some of the old information from a while a ago. Its currently `python
def itemDetails(request, itemId, location, tag, time):
try:
items = catalogMaker.getStoreItems('BurgersUnlimitedSouthland')
items_prices = catalogMaker.getAllPrices(items, SOUTHLAND)
except:
return render(request, 'error.html')
context = {
'items': items_prices,
'locations': MATCHES
}
if time == 'Lunch':
    if location == 'highland':
        menu = request.session.get('highlandLunch')
    elif location == 'midtown':
        menu = request.session.get('midtownLunch')
    else:
        menu = request.session.get('southlandLunch')
else:
    if location == 'highland':
        menu = request.session.get('highlandDinner')
    elif location == 'midtown':
        menu = request.session.get('midtownDinner')
    else:
        menu = request.session.get('southlandDinner')

length = len(menu[tag])
for item in range(length):
    if menu[tag][item]['id'] == int(itemId):
        context = {
            'item': menu[tag][item],
            'locations': MATCHES
        }

return render(request, 'itemDetails.html', context)`

When it should be: `python

def itemDetails(request, itemId, location, tag, time):
menu = None
context = None

if time == 'Lunch':
    if location == 'highland':
        menu = request.session.get('highlandLunch')
    elif location == 'midtown':
        menu = request.session.get('midtownLunch')
    else:
        menu = request.session.get('southlandLunch')
else:
    if location == 'highland':
        menu = request.session.get('highlandDinner')
    elif location == 'midtown':
        menu = request.session.get('midtownDinner')
    else:
        menu = request.session.get('southlandDinner')

length = len(menu[tag])
for item in range(length):

    if menu[tag][item]['id'] == int(itemId):
        context = {'item': menu[tag][item]}

return render(request, 'itemDetails.html', context)`

Not sure if the extra code was added for testing purposes but that won't work properly.

When it should be:
```python
def itemDetails(request, itemId, location, tag, time):
menu = None
context = None

if time == 'Lunch':
    if location == 'highland':
        menu = request.session.get('highlandLunch')
    elif location == 'midtown':
        menu = request.session.get('midtownLunch')
    else:
        menu = request.session.get('southlandLunch')
else:
    if location == 'highland':
        menu = request.session.get('highlandDinner')
    elif location == 'midtown':
        menu = request.session.get('midtownDinner')
    else:
        menu = request.session.get('southlandDinner')

length = len(menu[tag])
for item in range(length):

    if menu[tag][item]['id'] == int(itemId):
        context = {'item': menu[tag][item]}

return render(request, 'itemDetails.html', context)
```

Not sure if the extra code was added for testing purposes but that won't work properly.


fiona when to support GDAL 3.X ?

is there any schedule for fiono to support GDAL 3.X ?

@qq2898 check out the email threads in https://fiona.groups.io/g/dev/topics for details. Fiona 2.0 will require GDAL 3. Fiona 1.9.0 will allow the use of GDAL 3 and announce deprecation of support for GDAL 2. We don't have a date for 1.9.0 yet.

I found time at the end of this week to add GDAL 3 support in #804. A 1.8.9 release is scheduled for 2019-10-21 #805.


fix: swap owner and viewer colors red <-> blue

closes #252

Also needs to be changed on the main organization overview page


Error -4089 EAFNOSUPPORT address family not supported on Azure App Service deployment

I am using the rc1-update1 to deploy an application to Azure App Service (free plan for testing).
Using dnx-clr-win-x<IP_ADDRESS>-rc1-update1. After deploying I can't connect to the url, it just times out.
Executing web.cmd from the Azure Commandline returns
Microsoft.AspNet.Server.Kestrel.Networking.UvException: Error -4089 EAFNOSUPPORT address family not supported
   at Microsoft.AspNet.Server.Kestrel.Networking.Libuv.Check(Int32 statusCode)
   at Microsoft.AspNet.Server.Kestrel.Networking.Libuv.tcp_bind(UvTcpHandle handle, sockaddr& addr, Int32 flags)
   at Microsoft.AspNet.Server.Kestrel.Networking.UvTcpHandle.Bind(ServerAddress address)
   at Microsoft.AspNet.Server.Kestrel.Http.TcpListener.CreateListenSocket()
   at Microsoft.AspNet.Server.Kestrel.Http.Listener.<>c__DisplayClass5_0.<StartAsync>b__0(Object _)

Not sure what's causing it, I've tried changing the ports of kestrel and just using one url, but nothing helped.

Got it. I used http://*:8081 as port. This seems to want to bind IPv6 too which the app service instance do not seem to support. http://<IP_ADDRESS>:8081 worked though

Thanks for the report. This does seem like a bug semi-related to https://github.com/aspnet/KestrelHttpServer/issues/231. If we can't bind to :: (which also binds to <IP_ADDRESS>), we should try binding to <IP_ADDRESS> explicitly in UvTcpHandle.Bind.
I'm glad you found a workaround for now.

I'm unable to reproduce this in either Azure App Service or self-host.
For Azure App Service, in RC2 the configuration code was changed so UseIISIntegration() overrides UseUrls() (if it is called after).  So applications configured with UseUrls("http://*:5000").UseIISIntegration() work fine in App Service, regardless of IPv6.
For self-host, I tested both Windows and Linux, and they allow you to bind to IPv6Any ([::]) even when IPv6 is disabled.  So applications configured with UseUrls("http://*:5000") should work fine in Windows and Linux with IPv6 disabled.

I have got the same error on Azure Web App.
"Error -4089 EAFNOSUPPORT address family not supported"
Here is the startup code
`
public static void Main(string[] args)
{
var whb = new WebHostBuilder();
        var environment = whb.GetSetting("environment");
        var subjectName = GetCertificateSubjectNameBasedOnEnvironment(environment);
        var certificate = GetServiceCertificate(subjectName);

        var host = whb
            .UseKestrel( options =>
            {
                var httpsOptions = new HttpsConnectionFilterOptions();
                httpsOptions.ServerCertificate = certificate;
                httpsOptions.ClientCertificateMode = ClientCertificateMode.RequireCertificate;
                httpsOptions.SslProtocols = System.Security.Authentication.SslProtocols.Tls;
                options.UseHttps(httpsOptions);
            })
            .UseContentRoot(Directory.GetCurrentDirectory())
            .UseUrls("https://*:4430")
            .UseIISIntegration()
            .UseStartup<Startup>()
            .UseApplicationInsights()
            .Build();

        host.Run();
    }

`

@xavierjohn The EAFNOSUPPORT log during Azure Web App startup is a pretty benign warning indicating the the environment doesn't support IPv6, but Kestrel is still listening over IPv4.
In our upcoming patches, we plan to remove the warning since it looks pretty scary even though it's not a big deal.


Update MSVS project

Hello @alfredh
In this commit 18c79180628c90889bd1610742a2e21bd366d818 file realtime.c was removed. This patch will remove it from MS Visual Studio solution

Thanks again :)


Can you merge Chinese translations?

There are currently two Chinese versions of the README, README_zh-CN.md is not maintained.
Do you want to consider merging to README_ZH.md?
@cristaloleg @tannineo

👍

@tannineo PTAL


Connection issue

I can't connect DIO0 and CE1 in https://www.adafruit.com/product/3070. There are no pairs.

See https://learn.adafruit.com/adafruit-rfm69hcw-and-rfm96-rfm95-rfm98-lora-packet-padio-breakouts/pinouts
DIO0 is labeled G0 on that breakout board. CE1 is the master's SPI CE1, which connects to the pad labeled CS (chip select) on the breakout board.


Feature/tune 140 central cms user profiles

@RichardLanders Please review :)

:+1:

Build failed due to new warning F405 being raised by flake8 for the scaffolded testapp, all tests passed, merging
https://travis-ci.org/praekelt/molo.profiles/builds/147221205#L365-L367


Enable remaining macros

Once #15 lands, only the following macros will remain unimplemented:

[x] Requires support for creating views with current_timestamp:

recency
current_timestamp

[ ] Requires support for the lag window function:

sequential_values

[ ] Requires support for the lead window function:

mutually_exclusive_ranges

recency and current_timestamp are done now. Just lead and lag remain.

lead and lag are now implemented, so if they're released in v0.26.1 we can enable the remaining macros and close this issue.


Data from Chatalytics in UI

Fixes #8

Coverage decreased (-4.9%) to 78.906% when pulling 31bdbc4ee638d9ad9ab73140c5e608a7a045692e on psastras:master into a37f3966cdf5e247eb082a8318aca889ebe4fafb on OpenChatAlytics:master.


Double-check that everything works

npx react-native init MyApp --template=https://github.com/echobind/react-native-template-echobind
Then try to start it up and make sure that it works

Woo! It works on iOS

It works on Android too!

Verified that the template is working as is!


How do I add own fonts and reference them

Hello, I am trying to add my own fonts through static/custom.css
Whatever i try I cannot make my .woff2 fonts in /static/fonts work appear on the site.
the fonts appear in /public/fonts
I try reference them in custom.css as
@font-face {
font-family: 'Foobar Sans Headline';
font-style: normal;
font-weight: 400;
src: local(''),
url('/fonts/foobar.woff2') format('woff2')
}
.gdoc-brand__title {
font-family: "Foobar Sans Headline";
}
But no luck.
Anyone with a good example on how to add fonts to this theme?

Thanks for your report. There is a small issue in your snippet. You have used an absolute path t your font instead of a relative one:
@font-face {
  font-family: "Foobar Sans Headline";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/DancingScript.woff2") format("woff2");
}

However, I have created a PR to use custom CSS properties for all default fonts to simplify the usage of custom fonts.

Thank you, I have tried the relative path with no luck so likely I have some additional error.
I will do some more testing...
But at least you are confirming it should work with the steps I described: add .woff2  to static/fonts and then source them in static/custom.css and then use them in static/custom.css.

What Im wondering about is that if the default fonts are working custom fonts should work as well as the way they are loaded is the same 🤔 what browser are you using?

It works..... I believe there where some extranous parameters in @font-face..  the font face directives came with a zip together with the fonts.
I removed all but src and  font-family and it started working.
Thank you


Hide scrollbar when not scrolling

Would it be possible to add a feature to hide the scrollbar when not actively scrolling?
For example, have the scrollbar appear when the user starts to scroll through a webpage, and after the user is no longer scrolling, have the scrollbar hide itself after 3 seconds of inactive-scrolling.
This feature would really be appreciated.
Thank you so much!

Adapt CSS style so that it becomes so small or hidden that it's invisble?

I think the use of JS will be inevitable


Authenticating Web Requests

Hi,
We've got our backend which is set up able to generate the passes, however we need to have authentication in place to identify who the user is and if they have permission to download this pass.
The addPassFromUrl method just provides a URL, however doesn't allow us to apply any headers, POST payloads, etc to authenticate.
How would you suggest we do this?
Thanks

Hi, I think, you can find example in this article
https://www.nearform.com/insights/how-to-create-custom-apple-wallet-passes-with-react-native-and-fastify/


tmt login requires rsync

Execution of tmt run  provision --how connect --guest FQDN login failed.
'rsync' is used to upload workdir to the remote machine.
IMHO tmt shouldn't assume that some packages are always present but install them to the guest if necessary.
        login: Starting interactive shell
            Push workdir to guest 'FQDN'.
            Run command 'rsync -Rrz --links --safe-links --delete -e "ssh -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null" --safe-links /var/tmp/tmt/run-105/plans/default root@FQDN:/'.
            err: Warning: Permanently added 'FQDN,A.B.C.D' (ECDSA) to the list of known hosts.
            err: bash: rsync: command not found
            err: rsync: connection unexpectedly closed (0 bytes received so far) [sender]
            err: rsync error: error in rsync protocol data stream (code 12) at io.c(228) [sender=3.2.3]
            Command returned '12'.

stderr (4/4 lines)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Warning: Permanently added 'FQDN,A.B.C.D' (ECDSA) to the list of known hosts.
bash: rsync: command not found
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(228) [sender=3.2.3]

Failed to run command 'rsync -Rrz --links --safe-links --delete -e "ssh -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null" --safe-links /var/tmp/tmt/run-105/plans/default root@FQDN:/'.

Looks it has to be present on REMOTE as well.

This should be fixed by #553 but it's still necessary to have the prepare step enabled:
tmt run provision --how connect --guest my.test.box prepare login

Is this sufficient? Any ideas how to improve this even more?

Do we need to call rsync for login? Help for tmt run login says Provide user with an interactive shell on the guest.

So the way how it works is that we provide the interactive shell in the (synced) workdir so that one can experiment with the test code and do similar stuff. Perhaps we could apply a workaround for this specific case and use an arbitrary remote directory?

Or maybe just update the documentation so user is not surprised with sync

I've updated #553 to only give a warning when guest.push() failes during the login plugin execution. This should cover this use case as well. Please, verify. Thanks.

Works as I expected. Thank you.


2-4 player

What about we start on the 2-4 player update(@Goredbirds)?

I started it on codecademy, but getting money didn't work.
here's the code:
var beginRound2 = function() {
if (player2.name === "player2") {
me.name = prompt("What is player1's name?");
player2.name = prompt("What is player2's name?");
}
var buyWorkers = function(ai) {
if (Math.floor((ai.money - 5)/21) > 0) {
var toBuy = Math.floor((ai.money - 10)/20);
var cost = toBuy * 20;
ai.workers += toBuy;
ai.money -= cost;
}
confirm(ai.name + " bought " + ai.workers + " workers");
}
var youBuyWorkers = function(pl) {
var max = Math.floor(pl.money/20);
var askP = prompt(pl.name + ", how many workers would you like to
buy? You have " + pl.money + " dollars. The most you can buy is " + max)1;
if (pl.money - (askP20) < 0) {
confirm("Oops, It looks like you don't have enough money!");
youBuyWorkers(pl);
} else if (isNaN(askP)) {
confirm("Sorry! That's not a number!");
youBuyWorkers(pl);
} else {
var cost = askP*20;
pl.workers += askP;
pl.money -= cost;
confirm(pl.name + " bought " + pl.workers + " workers");
}
}
youBuyWorkers(me);
youBuyWorkers(player2);
buyWorkers(ai1);
buyWorkers(ai2);
var getMoneyW = function(p) {
pValue = p.workers * 5 + 5;
var money1 = rollDice() * pValue;
p.money += money1;
}
var getMoneyM = function(pl) {
getMoneyW(pl);
getMoneyW(pl);
getMoneyW(pl);
getMoneyW(pl);
confirm(pl.name + " has " + pl.money);
pl.workers = 0;
}
getMoneyM(me);
getMoneyM(player2);
getMoneyM(ai1);
getMoneyM(ai2);
}
On Fri, Mar 3, 2017 at 9:34 PM, Steven Copeland<EMAIL_ADDRESS>wrote:

What about we start on the 2-4 player update(@Goredbirds
https://github.com/Goredbirds)?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/StevenCopeland/Stores/issues/2, or mute the thread
https://github.com/notifications/unsubscribe-auth/AYAvcbCcFlkaS1ljK8uExB-e_l0q-NFMks5riM3GgaJpZM4MS8ea
.

do you see anything wrong with it?
On Sat, Mar 4, 2017 at 8:32 AM, John Grant<EMAIL_ADDRESS>wrote:

I started it on codecademy, but getting money didn't work.
here's the code:
var beginRound2 = function() {
if (player2.name === "player2") {
me.name = prompt("What is player1's name?");
player2.name = prompt("What is player2's name?");
}
var buyWorkers = function(ai) {
if (Math.floor((ai.money - 5)/21) > 0) {
var toBuy = Math.floor((ai.money - 10)/20);
var cost = toBuy * 20;
ai.workers += toBuy;
ai.money -= cost;
}
confirm(ai.name + " bought " + ai.workers + " workers");
}
var youBuyWorkers = function(pl) {
var max = Math.floor(pl.money/20);
var askP = prompt(pl.name + ", how many workers would you like to
buy? You have " + pl.money + " dollars. The most you can buy is " + max)1;
if (pl.money - (askP20) < 0) {
confirm("Oops, It looks like you don't have enough money!");
youBuyWorkers(pl);
} else if (isNaN(askP)) {
confirm("Sorry! That's not a number!");
youBuyWorkers(pl);
} else {
var cost = askP*20;
pl.workers += askP;
pl.money -= cost;
confirm(pl.name + " bought " + pl.workers + " workers");
}
}
youBuyWorkers(me);
youBuyWorkers(player2);
buyWorkers(ai1);
buyWorkers(ai2);
var getMoneyW = function(p) {
pValue = p.workers * 5 + 5;
var money1 = rollDice() * pValue;
p.money += money1;
}
var getMoneyM = function(pl) {
getMoneyW(pl);
getMoneyW(pl);
getMoneyW(pl);
getMoneyW(pl);
confirm(pl.name + " has " + pl.money);
pl.workers = 0;
}
getMoneyM(me);
getMoneyM(player2);
getMoneyM(ai1);
getMoneyM(ai2);
}
On Fri, Mar 3, 2017 at 9:34 PM, Steven Copeland<EMAIL_ADDRESS>wrote:

What about we start on the 2-4 player update(@Goredbirds
https://github.com/Goredbirds)?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/StevenCopeland/Stores/issues/2, or mute the thread
https://github.com/notifications/unsubscribe-auth/AYAvcbCcFlkaS1ljK8uExB-e_l0q-NFMks5riM3GgaJpZM4MS8ea
.

I think its good.

I will open a pull request for the 2-4 players update. Please review it and comment on it.

I am now closing this issue


new NuGet 1.0.1

added Coincheck and UPbit to README.md

I appreciate the offer! What might be helpful is if you could look into moving this ES repo either into the DigitalRuby org or a new separate org. Then I can start looking into things like preview daily builds and SourceLink. Maybe even one day we can get it accepted into the .NET foundation.

I can move it to digital ruby

Great!


View method for Assignments by FileDownload

need a method on AssignmentManager that returns details of all assignments for a given FileDownload task. In practice, the task filter will need to be passed by the client in standard get_filtered() syntax. A filter should be added for task type. Details must include:
status
task name
task title
task description
user first name
user last name
This does not yet include any FileDownload-specific data, but it may in the future, which is why we should get the view method setup now.

I can pick up the remaining work.


Add command to pause readline.

The command would save readline buffer content and cursor position, then make available the terminal for programs executed.
E.g. I would prefer to select files using ranger --choosefiles, instead of the builtin navigation mode, but it isn't possible while readline is used, because it captures the output of the program, and grabs the input. So, this would be a solution:
fn ranger-choose-files-readline {
  # Pause readline
  edit:pause-readline

  # Clean previously selected files
  put ?(rm /tmp/elvish-ranger-filechooser-$pid.txt) > /dev/null

  # Launch ranger
  ranger --choosefiles=/tmp/elvish-ranger-filechooser-$pid.txt

  # Restart readline
  edit:continue-readline

  # Insert the selected files to the command line
  edit:insert-at-dot (cat /tmp/elvish-ranger-filechooser-$pid.txt)
}

Another example: solve #393 in Elvish script:
fn external_edit_command {
  # Pause readline
  edit:pause-readline

  # Launch editor (my favourite is Kakoune)
  print $edit:current-command > /tmp/elvish-edit-command-$pid.elv
  kak /tmp/elvish-edit-command-$pid.elv

  # Restart readline
  edit:continue-readline

  # Read the modified command back
  edit:current-command = (cat /tmp/elvish-edit-command-$pid.elv)
}

Nice! I like this proposal.

FWIW, It doesn't appear that edit:pause-readline is required; at least in the case of using an external editor to edit the command buffer on UNIX like systems. It appears to be sufficient to redirect stdin/out/err to /dev/tty. This seems to work for me:
fn external_edit_command {
  print $edit:current-command > /tmp/elvish-edit-command-$pid.elv
  $E:EDITOR /tmp/elvish-edit-command-$pid.elv </dev/tty >/dev/tty 2>&1
  edit:current-command = (cat /tmp/elvish-edit-command-$pid.elv)
}

edit:insert:binding[Alt-v] = $external_edit_command~

Having said that it would be better to implement the proposal in this issue since that would make this mechanism more portable; e.g., to MS Windows where /dev/tty isn't a thing.

set edit:insert:binding[Alt-e] = {|| edit:replace-input (print $edit:current-command | e:vipe --suffix elv | slurp)}

You can use vipe which does it's job in much simpler manner. It is included in moreutils.


Need auto effect change program for 8x8x8 LED CUBE

Can anyone have 8x8x8 LED cube programming file which have automatic effect change? If anyone have please give me. Please help me.

Please help me

Where I get Arduino Program.

@parasm0802 Actually the effects do automatically change and that is also what the code tells us. I don't know why you think they do not. See also here and here.
@PARTHKALARIYA The arduino programm is in the sub folder CUBE

@parasm0802 Here I added auto rotation to my fork branch please also see what my commit changed so that you understand why not auto rotate work and how you can configure it. The Lines 57-59 are the ones that gonna be interesting for your.
@PARTHKALARIYA The arduino programm is in the sub folder CUBE


I can’t install

ihyeonsuui-MacBook-Pro:~ HSLee$ git clone git://github.com/parkr/ruby-build-github.git "$(rbenv root)/plugins/ruby-build-github"
-bash: rbenv: command not found
fatal: could not create leading directories of '/plugins/ruby-build-github': Permission denied
?? how I ??

Check out the instructions here: https://github.com/sstephenson/rbenv#table-of-contents


tests/kernel/arm_irq_vector_table: test case cannot quit displaying "isr 0 ran!"

Describe the bug
Test case did not quit. It kept displaying "isr 0 ran!" until it times out
To Reproduce
Steps to reproduce the behavior:

mkdir build; cd build
cmake -DBOARD=nrf52_pca10040 -DARCH=arm
make
make run

Screenshots or console output
***** delaying boot 1000ms (per build configuration) *****
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
...
isr0 ran!
isr0 ran!
isr0 ran!
isr0 ran!
isr0

Environment (please complete the following information):

OS: fedora29
Toolchain : zephyr
Commit SHA or Version used: dd5ff3957ceece428e3465dd4e23fb926f61691c

Thanks for reporting this, @cinlyooi-intel
The problem is that the IRQ line-0 is wired to the CLOCK_CONTROL IRQ in nRF52x series of SOCs, and that peripheral is generating interrupts.

Provided a fix in #13903, @cinlyooi-intel pls, test if you have time.


Fix deadlock between getSvcRecords and processEndpointDelete

20.10 backport of https://github.com/moby/moby/pull/42545
Fixes https://github.com/moby/moby/issues/46661
Fixes #2649

We had some hosts with quite a bit of cycling containers that ocassionally causes docker daemons to lock up. Most prominently docker run commands do not respond and nothing happens anymore.
Looking at the stack trace the following is at least likely sometimes a cause to that: Two goroutines g0 and g1 can race against each other:

(g0) 1. getSvcRecords is called and calls (*network).Lock() --> Network is locked.
(g1) 2. processEndpointDelete is called, and calls (*controller).Lock() --> Controller is locked
(g1) 3. processEndpointDelete tries (*network).ID() which calls (*network).Lock().
(g0) 4. getSvcRecords calls (*controller).Lock().

3./4. are deadlocked against each other since the other goroutine holds the lock they need.
References https://github.com/moby/libnetwork/blob/b5dc37037049d9b9ef68a3c4611e5eb1b35dd2af/network.go
(cherry picked from commit moby/moby@7c97896747726554165480d102d9e46c54334cba)

Didn't we already backport this in https://github.com/moby/libnetwork/commit/51413ef1371ffe29ffd341c80574a3bc1c585d90?

You just fell into the same trap as @thaJeztah. Create != Delete

Aha, just saw https://github.com/moby/moby/issues/46661#issuecomment-1768735326

I'm not sure I understand the description here.
It says this is a 20.10 backport but this is merging against master?

@cpuguy83 that's right, moby/libnetwork@master. Ain't 20.10 libnetwork backports fun?

lol, this is libnetwork not moby/moby.
Wow I'm quick.


prevent error if g:at_custom_alternates is not set

Thanks for the plugin! I was using the python one before and considering rewriting this myself but glad I don't have to!

+1

Its fixed now for me. Thank you.