ExpansionTileThemeData shape not working

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce

Run sample code.

Expected results
ExpansionTile will change the border when ExpansionTileThemeData sets a different shape.
Actual results
Not work, I need to set the shape on every ExpansionTile.
Code sample
Code sample
import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData(
        expansionTileTheme: const ExpansionTileThemeData(
          /// Not working
          shape: Border(),
        ),
      ),
      home: HomePage(),
    );
  }
}

class HomePage extends StatelessWidget {
  const HomePage({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(),
      body: const Column(
        children: [
          SizedBox(
            height: 32,
          ),

          /// ExpansionTileThemeData border not working
          ExpansionTile(
            initiallyExpanded: true,
            title: Text('ExpansionTile'),
            children: [
              SizedBox(
                height: 32,
              )
            ],
          ),
          SizedBox(
            height: 32,
          ),
          ExpansionTile(
            initiallyExpanded: true,

            /// It is work
            shape: Border(),
            title: Text('ExpansionTile set shape'),
            children: [
              SizedBox(
                height: 32,
              )
            ],
          ),
        ],
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration

Logs
Logs
Performing hot reload...
Syncing files to device sdk gphone64 arm64...
Reloaded 1 of 743 libraries in 318ms (compile: 73 ms, reload: 93 ms, reassemble: 77 ms).
D/EGL_emulation(31369): app_time_stats: avg=3512.53ms min=15.12ms max=20992.66ms count=6

Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.13.3, on macOS 13.5.2 22G91 darwin-arm64, locale zh-Hant-TW)
    • Flutter version 3.13.3 on channel stable at /Library/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision<PHONE_NUMBER> (5 days ago), 2023-09-06 14:32:31 -0700
    • Engine revision b8d35810e9
    • Dart version 3.1.1
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
    • Android SDK at /Users/chien/Library/Android/sdk
    • Platform android-33, build-tools 33.0.1
    • ANDROID_SDK_ROOT = /Users/chien/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E300c
    • CocoaPods version 1.12.1

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

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

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

[✓] Connected device (4 available)
    • ASUS Z01RD (mobile)         • J9AZB760H2767RP • android-arm64  • Android 10 (API 29)
    • sdk gphone64 arm64 (mobile) • emulator-5554   • android-arm64  • Android 13 (API 33) (emulator)
    • macOS (desktop)             • macos           • darwin-arm64   • macOS 13.5.2 22G91 darwin-arm64
    • Chrome (web)                • chrome          • web-javascript • Google Chrome 116.0.5845.179

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Hi @a1573595. Thanks for filing this. I can reproduce this on the latest stable channel but can’t reproduce on master. I see there is a similar issue https://github.com/flutter/flutter/issues/129785  that has been fixed. Are you able to check this on the master channel?

Hi @a1573595. Thanks for filing this. I can reproduce this on the latest stable channel but can’t reproduce on master. I see there is a similar issue #129785 that has been fixed. Are you able to check this on the master channel?
stable, master flutter doctor -v
[✓] Flutter (Channel stable, 3.13.3, on macOS 13.0 22A380 darwin-arm64, locale
    en-NG)
    • Flutter version 3.13.3 on channel stable at
      /Users/damilolaalimi/sdks/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision<PHONE_NUMBER> (5 days ago), 2023-09-06 14:32:31 -0700
    • Engine revision b8d35810e9
    • Dart version 3.1.1
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/damilolaalimi/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/damilolaalimi/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E300c
    • CocoaPods version 1.12.1

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

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b802.4-9586694)

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

[✓] Connected device (6 available)
    • sdk gphone64 arm64 (mobile) • emulator-5554                        •
      android-arm64  • Android 14 (API 34) (emulator)
    • iPhone 13 Pro (mobile)      • 14B6FEE4-2F1C-401F-8804-A5115D7A6DA2 • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • iPhone 14 (mobile)          • 1A122DE2-0CAB-4C3E-A395-691BF27D626F • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • iPhone 14 Pro (mobile)      • 6548B0D1-7674-4306-9852-198C465F1104 • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)             • macos                                •
      darwin-arm64   • macOS 13.0 22A380 darwin-arm64
    • Chrome (web)                • chrome                               •
      web-javascript • Google Chrome 116.0.5845.179

[✓] Network resources
    • All expected network resources are available.

• No issues found!

[✓] Flutter (Channel master, 3.14.0-14.0.pre.211, on macOS 13.0 22A380 darwin-arm64, locale en-NG)
    • Flutter version 3.14.0-14.0.pre.211 on channel master at /Users/damilolaalimi/fvm/versions/master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 69f6e7d15d (16 hours ago), 2023-09-11 00:50:38 -0400
    • Engine revision 7e41b064eb
    • Dart version 3.2.0 (build 3.2.0-134.0.dev)
    • DevTools version 2.27.0

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/damilolaalimi/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/damilolaalimi/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E300c
    • CocoaPods version 1.12.1

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

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

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

[✓] Connected device (6 available)
    • sdk gphone64 arm64 (mobile) • emulator-5554                        • android-arm64  • Android 14 (API 34) (emulator)
    • iPhone 13 Pro (mobile)      • 14B6FEE4-2F1C-401F-8804-A5115D7A6DA2 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • iPhone 14 (mobile)          • 1A122DE2-0CAB-4C3E-A395-691BF27D626F • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • iPhone 14 Pro (mobile)      • 6548B0D1-7674-4306-9852-198C465F1104 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)             • macos                                • darwin-arm64   • macOS 13.0 22A380 darwin-arm64
    • Chrome (web)                • chrome                               • web-javascript • Google Chrome 116.0.5845.187

[✓] Network resources
    • All expected network resources are available.

• No issues found!

It works on the master channel, but #129785 was fixed on 2023/7/12, Flutter SDK 3.13 was released on 2023/8/17, the timeline doesn't let me determine if the bug has been fixed or reappeared, switch to the master channel is a way of judging?

Thanks for confirming this @a1573595. You can read about it here: https://github.com/flutter/flutter/wiki/Flutter-build-release-channels#will-a-particular-bug-fix-be-provided-in-a-hotfix-release (and whole that page for more info)
Thank you!


swing.Publisher does not always notify all listeners

So here is something that had me scratch my head for quite some time. Sometimes, Reactors would not get notified by a publisher. This didn't happen very often, but often enough to break some functionality.
It turned out that it was caused by the mutable nature of the swing.Publisher#listeners. More precisely, it sometimes happens when a listener, in reaction to an event, decides to unsubscribe from the publisher, i.e., calls deafTo(). This immediately causes the listeners to change state, and therefore may lead to the for comprehension to terminate early, without notifying subsequent listeners.
I think that "if a specific event happens on a publisher, I'm not interested in that publisher anymore" is a valid and not terribly exotic use case for a Reactor, so I consider the current behavior a bug.
I'm attaching a scalatest class which triggers the bug (and also contains one possible solution).

Perhaps related, I ran into this:
Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException: mutation occurred during iteration
	at scala.collection.mutable.MutationTracker$.checkMutations(MutationTracker.scala:43)
	at scala.collection.mutable.MutationTracker$CheckedIterator.hasNext(MutationTracker.scala:59)
	at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:563)
	at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:561)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:919)
	at scala.swing.Reactions$Impl.apply(Reactions.scala:25)
	at scala.swing.Reactions$Impl.apply(Reactions.scala:19)
	at scala.swing.Publisher.$anonfun$publish$1(Publisher.scala:52)
	at scala.swing.Publisher.$anonfun$publish$1$adapted(Publisher.scala:52)
	at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:563)
	at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:561)
	at scala.swing.SetWrapper.foreach(SetWrapper.scala:20)
	at scala.swing.Publisher.publish(Publisher.scala:52)
	at scala.swing.Publisher.publish$(Publisher.scala:52)
	at scala.swing.Component.publish(Component.scala:48)
	at de.sciss.swingplus.ScrollBar$$anon$2.adjustmentValueChanged(ScrollBar.scala:36)
	at java.desktop/javax.swing.JScrollBar.fireAdjustmentValueChanged(JScrollBar.java:711)
	at java.desktop/javax.swing.JScrollBar$ModelListener.stateChanged(JScrollBar.java:733)
	at java.desktop/javax.swing.DefaultBoundedRangeModel.fireStateChanged(DefaultBoundedRangeModel.java:371)
	at java.desktop/javax.swing.DefaultBoundedRangeModel.setRangeProperties(DefaultBoundedRangeModel.java:309)
	at java.desktop/javax.swing.DefaultBoundedRangeModel.setValueIsAdjusting(DefaultBoundedRangeModel.java:238)
	at java.desktop/javax.swing.JScrollBar.setValueIsAdjusting(JScrollBar.java:591)
	at java.desktop/javax.swing.plaf.basic.BasicScrollBarUI$TrackListener.mouseReleased(BasicScrollBarUI.java:1219)
	at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6635)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)

This my subclass of ScrollBar that fires events
class ScrollBar(orientation0: Orientation.Value, value0: Int, blockIncrement0: Int, minimum0: Int, maximum0: Int)
  extends swing.ScrollBar {
...
  peer.addAdjustmentListener(new java.awt.event.AdjustmentListener {
    def adjustmentValueChanged(e: java.awt.event.AdjustmentEvent): Unit =
      publish(new swing.event.ValueChanged(me))
  })

and I'm quite sure that the exception occurred because I was unregistering a reaction during a reaction callback.


Allow user-provided general extensions/plugins (not just provider plugins)

I couldn't find any previous discussion on this.
Describe the solution you'd like
With v0.9 provider plugins were introduced (see https://github.com/drud/ddev/wiki/roadmap#previous-releases) but for now they have to be implemented in the ddev project and are hard-coded into the providers command (compare https://github.com/drud/ddev/blob/master/pkg/ddevapp/ddevapp.go#L1157-L1167).
I'd like to be able to write my own plugin (not limited to provider plugins), compile it with go's -buildmode=plugin flag to get a shared library and let ddev import/load this library and use it.
This would allow a developer to extend ddev not only with 3rd party provider plugins but with any kind of components. I can think of additional commands, etc.
Additional context
Maybe this requires additional refactoring of the current code-base, but I'd happy to contribute.

Hi @jdoubleu This is a fantastic request and quite timely! In the upcoming months, we're focusing more on additional provider plugin implementations (we're more in the planning phase at this point before we have something actionable and scheduled). Going to add some labels and I'll try to get a better sense of when this can be addressed and loop you into that discussion.

Sounds like this would be an ideal way for developers to incorporate DDEV into other providers. Also could provide opportunities to collaborate with other OSS projects and communities. Setting up DDEV and joining the OpenCollective community could be a great way to help facilitate both. https://opencollective.com/opensource#about

This hasn't gotten any traction, closing, happy to continue the conversation!


combine strict compiler options

The "strict" option already enables --noImplicitAny, --noImplicitThis, --alwaysStrict, --strictNullChecks, --strictFunctionTypes and --strictPropertyInitialization, so there is no need to list them individually.
Reference: https://www.typescriptlang.org/docs/handbook/compiler-options.html

Coverage remained the same at 95.013% when pulling a4b6adbe89769661ca96e182831a07fb5bf3cc8e on bennyn:patch-2 into fa3f6aeec340c7a9a9e86ccad7a4f73fd7eeed6d on Vincit:master.

Coverage remained the same at 95.013% when pulling a4b6adbe89769661ca96e182831a07fb5bf3cc8e on bennyn:patch-2 into fa3f6aeec340c7a9a9e86ccad7a4f73fd7eeed6d on Vincit:master.

Thank you!


Upgrade Puppet to 3.8.5 in integration

3.8.5 is a much newer release than 3.6.2 and this will help us get ready for version 4.
Todo

[ ] Mirror this release with aptly

Cool!

We'll need to bump the version in the preamble also.

:+1:


Fix Dockerfile

I've spotted that both dep's steps are broken after recent migration from glide to dep.

Thanks for the fix!


Hidden or listed items that are also takable.

Doesn't this interaction make sense?
 But I think this will lead to confusion about which items are takable and which are not.
At the moment you can only have listed takable items. I think that experience will cue users that listed items are the most likely to be takable, and that they can forget about taking hidden or listed items. A more sophisticated approach, maybe using color coding, may change this fact. But for the time being we'll stick with the way things are.


[BUG] Lama Cleaner is broken

Model
None. website completely does not work
Describe the bug
Going to your official Lama Cleaner Hugging Face page, the website no longer works. It worked a couple months ago but it does not work anymore.
I always get the following error message every time I load it
===== Application Startup at 2024-11-03 20:14:00 =====
The cache for model files in Transformers v4.22.0 has been updated. Migrating your old cache. This is a one-time only operation. You can interrupt this and resume the migration later on by calling transformers.utils.move_cache().
0it [00:00, ?it/s]
0it [00:00, ?it/s]
2024-11-03 21:15:07.106 | INFO     | lama_cleaner.server:build_plugins:481 - Initialize InteractiveSeg plugin
Downloading: "https://dl.fbaipublicfiles.com/segment_anything/sam_vit_b_01ec64.pth" to /home/user/.cache/torch/hub/checkpoints/sam_vit_b_01ec64.pth
0%|          | 0.00/358M [00:00<?, ?B/s]
3%|▎         | 11.2M/358M [00:00<00:03, 115MB/s]
10%|▉         | 34.7M/358M [00:00<00:01, 192MB/s]
15%|█▍        | 53.1M/358M [00:00<00:01, 188MB/s]
20%|█▉        | 71.1M/358M [00:00<00:01, 188MB/s]
25%|██▍       | 89.0M/358M [00:00<00:01, 178MB/s]
31%|███       | 110M/358M [00:00<00:01, 191MB/s]
36%|███▌      | 128M/358M [00:00<00:01, 192MB/s]
41%|████      | 147M/358M [00:00<00:01, 190MB/s]
48%|████▊     | 173M/358M [00:00<00:00, 215MB/s]
55%|█████▍    | 196M/358M [00:01<00:00, 223MB/s]
61%|██████    | 219M/358M [00:01<00:00, 227MB/s]
67%|██████▋   | 240M/358M [00:01<00:00, 214MB/s]
75%|███████▌  | 269M/358M [00:01<00:00, 237MB/s]
82%|████████▏ | 293M/358M [00:01<00:00, 244MB/s]
89%|████████▉ | 320M/358M [00:01<00:00, 254MB/s]
97%|█████████▋| 345M/358M [00:01<00:00, 257MB/s]
100%|██████████| 358M/358M [00:01<00:00, 221MB/s]
Refreshing the page does literally nothing and there is no option to do anything else.
Screenshots

System Info
Software version used
Lama Cleaner Website

fixed


Immortal Update change domain

Source information
en.immortalupdates 1.4.42
Source language
English
Source new URL
https://mortalsgroove.com/
Other details
No response
Acknowledgements

[X] I have updated all installed extensions.
[X] I have opened WebView and checked that the source URL has not changed yet.
[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I will fill out all of the requested information in this form.

Duplicate https://github.com/keiyoushi/extensions-source/issues/3021


When using RouteProvider separately to the StateProvider, state not updated on route param change

When defining a state independently of the route e.g. define the state with the $stateProvider, then map the route to the state using the $routeProvider, the state is not correctly reloaded when one of the route params changes e,g
$stateProvider.state('contact', {
                views: {
                    'main': {
                        template: 'contact.html',
                        controller: 'contactController'
                    }
                },
            })

$routeProvider.when('/contacts/:contactId', { state: 'contact') })

I would expect that when the 'contactId' changes, the state should be reloaded, as it is when you declare the route on the state itself...
$stateProvider.state('contact', {
                route: '/contacts/:contactId',
                views: {
                    'main': {
                        template: 'contact.html',
                        controller: 'contactController'
                    }
                },
            })

The reason I am declaring the routes using the routeProvider is so that we can map 1 or more routes to the same state. If there is another way of doing this, perhaps the above issue would not need solving?

There is still a piece missing in this on. But for the more conceptual part, I would still recommend giving a route to an actual state... Which will act as a main route for that state... Reason being that it enables URL generation for states...
You can still add additional routes pointing to the state after that. So in essence you would have:
$stateProvider.state('contact', {
                route: '/contacts/:contactId',
                views: {
                    'main': {
                        template: 'contact.html',
                        controller: 'contactController'
                    }
                },
            })

$routeProvider.when('/anotherurl/:contactId', { state: 'contact') })

and Example: http://plnkr.co/edit/UtuBVXrr89cizzqz4IFU?p=preview


Include QCloseEvent in IEditor.cpp

Without this include, project fails to build on Arch Linux with gcc 9.3.0 with the following error:
../src/Editor/IEditor.cpp:79:15: error: invalid use of incomplete type ‘class QCloseEvent’
   79 |         pEvent->ignore();
      |               ^~

Thank you! I've had to add that to some other programs recently too


Ocaml CI lint-lower-bounds failing

Currently,  Ocaml CI always fails its lint-lower-bounds check with an Out of memory exception.

It will probably be fixed by a future dscheck release. If not, this will need to be investigated.

I don't see this issue in the recent ocaml-ci runs. Perhaps the new dscheck release fixed it. Closing this.


Misleading example(s)

Hi there,
I just tested your plugin and got the string values true/false passed for the On characteristic instead of 0/1 like described in the README.
You might want to fix this.
Best regards

Hmmm,
The Hap spec says:
// UUID: 00000025-0000-1000-8000-0026BB765291
// Type: public.hap.characteristic.on
// Permissions: Paired Read, Paired Write, Notify
// Format: bool, 0 (false) and 1 (true)
I do not know why you see the string 'true' and 'false'. Clearly that is not what it was before or none of my switches will work.  I will have to do a deep dive into why.  Thanks for sending your other issue.  The script was useful in debugging this one.  It could also explain why you are seeing the delay.  They easily could be related if homebridge polls for something and expects 1 or 0 and not true or false.
Stay tuned

Some implicit type conversion might going on (I remember javascript beeing very special about this). 0 and 1 should implicitly be converted to bool, so testing for the numeric values shouldn't be a problem.
The problem is, that your plugin passes the arguments for the bash scripts as string (which is fine, as I do not see a way to keep type information while passing values from javascript to bash).
But maybe ... just maybe there is different behavior for different node-js versions or even platforms in terms of the implicit conversion to string. Sometimes string = false might result in "false" and sometimes it might result in 0.
As I said, I did not digg into your code yet, but are you using the implicit conversion for passing the arguments to bash? Implementing a manual conversion would fix this inconsistency in this case (btw. true/false strings instead of 1/0 look more sane to me for bool values anyways).
I'm using the latest version of homebridge and your plugin. The log string is printed with true/false instead of 1/0 as well (the error itself is "intended", as I did not implement switching my computer off yet):
[10/11/2018, 3:30:37 PM] [CustomDevices] Cmd4 Set On function failed for COMPUTER Error:Command failed: bash ~/.homebridge/Cmd4Scripts/COMPUTER.sh Set 'COMPUTER' 'On' 'false'

Let me know, if you need more information/log or if I should test more cases.

Copyed some code i use for my PiHole DNS-Server...for the SET Command you have to use true  and false...
`#!/bin/bash
if [ "$1" = "Get" ]; then
$2 would be the name 'PiHole'
$3 would be the charactersistic 'On'
state=$(pihole status | grep -c Enabled)
if [[ "$state" = "0" ]]; then
echo "$state"
exit 0
elif [[ "$state" = "1" ]]; then
echo "$state"
exit 0
fi
fi
if [ "$1" = "Set" ]; then
$2 would be the name 'PiHole'
$3 would be the the charactersistic 'On'
$4 would be '0' for 'Off', '1' for 'On'
if [ $4 = true ]; then
pihole enable
exit $?
elif [ $4 = false ]; then
pihole disable
exit $?
fi
fi
exit -1`

Just took a look and you are indeed using implicit type conversion:
https://github.com/ztalbot2000/homebridge-cmd4/blob/master/index.js#L1246
You might want to change this for boolean values, if there really is inconsistency on different node-js versions or platforms.

Thanks for finding this.  The fault was not with homebridge-cmd4,  It just output whatever value is.  It was supposed to be 0/1, based on the HAP spec.  Strangely enough I realized this when retrieving the  value stored by State,js, I translate it to 0/1
When I added the bash script just recently, I forgot this.


Add Godzilla by Eminem

Song Name
Godzilla
Artist Name
Eminem
Source
Youtube
Youtube Link
lVxAioJBZqBfhCAs
Direct File Link
No response
Song ID
4
Start Offset [ms]
1
Extra
Created from Auto Nong.
Created for level: 59847342

reject
replacing a song thats used a lot lets goooo


Type incorrectly inferred as "string" rather than String Literal

Tested with:
TypeScript 2.6.2
TypeScript 2.7.2
Attached is an example where a string literal ("lastName") is being inferred as "string" rather than as the string literal "lastName". Adding a type assertion ("lastName" as any) causes compilation to succeed.

class Q<s> {
    protected dummy: [Q<s>, s];
}

type MakeCols<s, T extends object> = {
    [P in keyof T]: Col<s, T[P]>;
};

class Col<s, a> {
    protected dummy: [Col<s, a>, s, a];
}

interface Link<Y extends object> {
    c: keyof Y;
}

interface ColDef<a extends object> {
    displayName: string | null;
    link: Link<a> | null;
}

type TableViewCells<T extends object> = {
    [P in keyof T]: ColDef<T>;
};

function declareTableViewThunk<a extends object>(query: <s>(q: Q<s>) => MakeCols<s, a>, colCells: () => TableViewCells<a>): void {
    query;
    colCells;
    throw new Error();
}

function personQuery<s>(q: Q<s>): {
    personId: Col<s, number>;
    lastName: Col<s, string | null>;
    firstName: Col<s, string>;
} {
    q;
    throw new Error();
}

export const agencyTableView = declareTableViewThunk(
    personQuery,
    () => ({
        personId: {
            displayName: "ID",
            link: {
                c: "lastName"
            }
        },
        lastName: {
            displayName: "Last Name",
            link: null
        },
        firstName: {
            displayName: "First Name",
            link: null
        }
    })
);

test.ts(43,5): error TS2345: Argument of type '() => { personId: { displayName: string; link: { c: string; }; }; lastName: { displayName: string...' is not assignable to parameter of type '() => TableViewCells<{ personId: number; lastName: string | null; firstName: string; }>'.
  Type '{ personId: { displayName: string; link: { c: string; }; }; lastName: { displayName: string; link...' is not assignable to type 'TableViewCells<{ personId: number; lastName: string | null; firstName: string; }>'.
    Types of property 'personId' are incompatible.
      Type '{ displayName: string; link: { c: string; }; }' is not assignable to type 'ColDef<{ personId: number; lastName: string | null; firstName: string; }>'.
        Types of property 'link' are incompatible.
          Type '{ c: string; }' is not assignable to type 'Link<{ personId: number; lastName: string | null; firstName: string; }> | null'.
            Type '{ c: string; }' is not assignable to type 'Link<{ personId: number; lastName: string | null; firstName: string; }>'.
              Types of property 'c' are incompatible.
                Type 'string' is not assignable to type '"lastName" | "personId" | "firstName"'.

{
    "compilerOptions": {
        "outDir": "../_build",
        "sourceMap": true,
        "inlineSources": true,
        "declaration": false,
        "removeComments": false,
        "newLine": "LF",
        "preserveConstEnums": false,
        "allowUnreachableCode": false,
        "allowUnusedLabels": false,
        "forceConsistentCasingInFileNames": true,
        "noFallthroughCasesInSwitch": true,
        "noImplicitAny": true,
        "noImplicitReturns": true,
        "noImplicitThis": true,
        "noUnusedLocals": true,
        "noUnusedParameters": true,
        "strictNullChecks": true,
        "suppressExcessPropertyErrors": false,
        "suppressImplicitAnyIndexErrors": false,
        "lib": [
            "dom",
            "es2015.collection",
            "es2015.promise",
            "es2015.symbol",
            "es5",
            "es6"
        ],
        "noLib": false,
        "target": "es2015",
        "module": "commonjs",
        "moduleResolution": "node",
        "isolatedModules": false
    }
}

Could you provide an example that includes an explicit type argument? Type inference is probably not powerful enough to get you a good type here.

This bites me quite often too, and it is quite annoying.
function needALiteral(thing: 'THING') { }
const FOO = { thing: 'THING' };
needALiteral(FOO.thing); // ERROR: string is not assignable to 'THING'

Today, the only way to tell Typescript that 'THING' is really meant to be just a literal, is by duplicating it:
function needALiteral(thing: 'THING') { }
const FOO = { thing: 'THING' as 'THING' };
needALiteral(FOO.thing); // Happy compiler

Now, if there is a typo on the first 'THING', it's going to be fun to debug the runtime error.
I wish there was a more compact way to express that, also avoiding the chance of typos causing bugs.

@rubenlg It's generally a good idea to provide a type to an object literal:
interface I { thing: 'THING' };
const FOO: I = { thing: 'THING' };

That way we give you string literal types and also detect excess properties.

@andy-ms I totally agree, and I always do when it's possible/reasonable, but there are situations when it's not. Here is one example:
export interface Foo {
  x: 'FOO' | 'BAR';
  y: number;
  z: {},
}

// private to this module
const commonPart = {
  x: 'FOO',
  y: 2,
};

export const case1: Foo = {
  ...commonPart,
  z: whatever,
};

export const case2: Foo = {
  ...commonPart,
  z: somethingelse,
};

In this case, you don't want to type commonPart. Partial<Foo> is not correct and doesn't work, because it makes everything optional, and the closest match is Pick<Foo, 'x'|'y'> but as you can imagine, it's totally annoying to have to put the keys twice and manually keep them in sync. There are ways around that with high order functions that infer the keys, but that's beside the point. Having a way to tell the compiler "this is a string literal, don't type it as a string" would keep that code simple and fully type checked.

Now, if there is a typo on the first 'THING', it's going to be fun to debug the runtime error.

Would it help if "apple" as "orange" were a compile error?

Totally. Detecting that mistake at compile time would be great.

OK, created #22150

I'm running into the same issue. Minimal test case:
const x = { a: 'abc' };
const y: { a: 'abc' | 'def' } = x; // type error: string not assignable to 'abc' | 'def'

const x2 = { a: 'abc' as 'abc' };
const y2: { a: 'abc' | 'def' } = x2; // typechecks

Try it in the TypeScript Playground
Am I correct in understanding that the reason for this issue is that TypeScript has no way of knowing I don't want to do x.a = 'something else' later? TypeScript can't do that kind of static analysis?

Duplicate of https://github.com/Microsoft/TypeScript/issues/20271

@mhegazy you closed this as a duplicate of another bug that's also closed. Do I understand correctly that the Typescript team has no intention to fix this problem?

@rubenlg the specified behavior in this issue is the intended behavior. Some of the repros here represent a non-ideal user experience but there's no sound proposal on the table that is immediately actionable.

For those who are stuck, as a last resort you can use this workaround:
function stringLit<a>(val: a): a {
    return val;
}

And then you use it like this:
stringLit<"lastName">("lastName")

This is better than typing "foo" as "foo" since the compiler will verify that you didn't make a typo.

That's a great trick @benny-medflyt. Note that it works with numbers too, so you could call it literal.


Spotify Extension

Spotify Extension

Back

Skips to the previous track in Spotify.

Next

Skips to the next track in Spotify.

Copy URL

Copies the current playing song's URL.

[ ]  Now Playing

Soon to display the current playing song in Spotify or Apple music when the time comes.

Seek Backwards

Seek Backwards by 10 seconds

Seek Forward

Seek Forwards by 10 seconds

Toggle Play/Pause

Toggles Spotify to play or pause

**Toggle Repeat
Toggle Shuffle
Track Info

Gets the current track's title, artist, and time.

Volume Down

Brings Spotify's volume down by 10%

Volume Up

Brings Spotify's volume up by 10%

Description
Control Spotify
Type of change

New extension

Screencast
nope
Checklist

[x] I read the documentation about publishing

Hey @theofficialgrand1,
Great to get more Spotify controls into the store. As others have called out, it's best to collaborate on existing extensions and add more functionality to them. This way the store stays clean, users that have the extension already installed get the new changes as automatic update and we improve everything as a community together. Could you please add the additional commands to the Spotify Controls extension?
I know that we don't have a good way to "value" contributions to an existing extension yet. We have plans to add support contributors to the Store. This way we make sure that the work is credited properly.
Thanks ✌
PS: I'm gonna close this PR. Feel free to submit another one that extends the existing extension. Also, please add a screencast of your extension. It helps to review the functionality.


Errors evaluating 3D CNN model (Keras)

Hello,
I'm submitting a bug report (I searched for similar issues and did not find one).
Current behavior
I build a Keras CNN which is based on 3D operations (Conv3D, MaxPooling3D, Upsampling3D, ..) and converted it with keras2onnx.
When I run the ONNX models with the WinMLRunner an exception is raised:

onecoreuap\windows\windowsai\winml\dll\learningmodel.cpp(378)\Windows.AI.MachineLearning.dll!00007FFE4EF7956B: (caller: 00007FFE4EFFB6D9) Exception(2) tid(3364) 80070057 Falscher Parameter. 000001B1CEF4217C

Is Windows ML not capable of running such models?
I tried different model modifications, which all failed:

Created a channels_first and a channels_last model version: in/out=[1, 1, 64, 64, 64] and [1, 64, 64, 64, 1] respectively.
Used different opsets: 7, 8
Used different converters: onnxtools 1.3.1, keras2onnx 1.3.2, winmltools 1.3.0, WinML Dashboard 0.51.
Replaced a 'keras.layers.Conv3DTranspose' layer, because it raised another exception:

Binding (device = CPU, iteration = 1, inputBinding = CPU, inputDataType = Tensor, deviceCreationLocation = WinML)...[SUCCESS]
[FAILED]
Input X must be 4-dimensional. X: {1,128,16,16,16}
Evaluating (device = CPU, iteration = 1, inputBinding = CPU, inputDataType = Tensor, deviceCreationLocation = WinML)...[FAILED]

The attached model version (channels_first [1, 1, 64, 64, 64], keras2onnx 1.3.2, onnx 1.3.0, opset_version 7) runs without errors using the onnxruntime 0.3.0 python package.
unet3d.channels_first.keras2onnx.onnx in models.zip
Minimal reproduction of the problem with instructions
Run attached ONNX model in WinMLRunner, or convert attached Keras model (.h5) to an .onnx model first.
Environment
Windows Build Number: Windows 10 Version 1809 (Build 17763.437)
App min and target version:
WinMLRunner.exe Version: <IP_ADDRESS>.190321.abf02d3
WinMLTools specific:
- Keras framework (keras 2.2.4, tensorflow 1.12.0)
- WinMLTools version <IP_ADDRESS>
Best regards,
Volker

Hi,
Thank you for reporting this bug.

After Investigation, we found that WinML only has implementation for Upsample2D, we have already filed a bug for this.
In order to work around it, you could write a custom operator for Upsample3D since the model runs well in OnnxRuntime.

By the way. Could you tell us more about the 3D scenario?
e.g. What is the input of your model and what is used for?

Hi Xiang,
many thanks for investigating the issue and thanks for the tip!

I didn't noticed that it's possible to implement custom operators in WinML. Is there a tutorial or code sample?

The context of the network is a simple CNN feature detector for 3D medical data of a CT scan, similar to the one presented in kaggles Data Science Bowl 2017.

Is there a list of supported ONNX operations? There seems to be a similar issue with the 3D version of ConvTranspose which is shown correctly in Netron:

When running this operator even the ONNX runtime fails (with a meaningful error):

FAILED 'Method run failed due to [ONNXRuntimeError]  2  INVALID_ARGUMENT  Input X must be 4-dimensional. X {1,128,16,16,16}'

Best regards
Volker

Hi Volker,

For creating custom operators: you could refer the APIs as listed here and we also have a sample project for custom RELU operator .

ConvTranspose is another operator that we don't support 3D. And we have several other operators don't support 3D case either.

In Windows 10 Version 1809, we support operators of ONNX 1.2(opset 7), in Windows 10 Version 1903, we support operators of ONNX 1.3(opset8).

Cheers
Xiang

Hi Xiang,
thanks for the explanation.
It's a little bit confusing since the ONNX standard describes some of the operations for the generic N-dimensional case, e.g. ConvTranspose. So the operation is documented as part of opset version 1 (ConvTranspose-1). The generic Upsample operation seems to be part of opset 7.
As far as the implementation is concerned, it's not as easy, I guess. :-)

Can you make release notes available, to clarify which 3D ops are implemented in the respective Windows ML release?

You said:

After Investigation, we found that WinML only has implementation for Upsample2D, we have already filed a bug for this.

Will Upsample3D (or perhaps ConvTranspose3D) be available in the next release?
It would be great if 3D operations would be fully supported in the near future to support things like volume- and video-processing.
Cheers
Volker

Hi Xiang,
any news about 3D WinML improvements in the upcoming Windows release?
Even if the example of the custom ReLu-operator looks simple, a CPU implementation of 3D ConvTranspose or Upsample would be a little painful, and I assume that it would slow down the inference very much since the 3D data (5D tensors) have to pass the CPU-GPU boundary for every node.
Cheers
Volker

Hi Volker,
Sorry for the super late reply, the upcoming WinML release will support your model with 3D data on CPU, but not on GPU yet.
Thanks
Xiang

Hi Xiang,
that's great news. I'm looking forward to the upcoming release.
Best regards
Volker

closing per @zhangxiang1993 last comment.


DKG test loop

Closes: #3013
This pull request detaches the existing DKG mechanism from Random Beacon v1 contracts and introduces a DKG test loop that is triggered every 500th block and stores the result on disk. That test loop is an interim mechanism that will allow us to integrate with Random Beacon v2 contracts soon. All details about v1 and v2 DKG along with the test loop description are captured below.
DKG in Random Beacon V1
The DKG v1 flow is as follows:

The KeepRandomBeaconOperator contract emits the GroupSelectionStarted event that contains a seed value
The client reacts to the GroupSelectionStarted event by starting the ticket submission process using the seed value held by the event.
Once the ticket submission ends, the client checks its eligibility by calling the selectedParticipants on-chain function.
If the client is eligible for the given DKG instance, i.e controls some of the group members, it starts the DKG execution.
Once the group public key is generated, the client attempts to publish it to the KeepRandomBeaconOperator contract and monitors for DkgResultSubmittedEvent event to confirm the result publication.
Once the key is published, the client stores the key material on disk and holds the group participation info in an in-memory group cache to be ready for incoming relay entry requests.

DKG in Random Beacon V2
In Random Beacon V2, things happen differently:

The RandomBeacon contract emits the DkgStarted event that contains a seed value.
The client checks its eligibility by calling the selectGroup on-chain function exposed by the RandomBeacon or directly by the SortitionPool contract.
If the client is eligible for the given DKG instance, i.e controls some of the group members, it starts the DKG execution.
Once the group public key is generated, the client attempts to publish it to the RandomBeacon contract and monitors for DkgResultSubmitted event to confirm the result publication.
Once the key is published, the client stores the key material on disk. However, since v2 uses an optimistic DKG result validation with a challenge mechanism, the client cannot consider the group as fully-operable immediately. It must wait for the result's approval. To handle this, the client must store the key material aside and avoid adding the group participation info to the in-memory group cache right after result publication.

Interim DKG test loop introduced by this PR
We decided to move from v1 DKG to v2 DKG incrementally. To do so, we made the following steps:

We removed everything related to the current group selection (pkg/beacon/relay/groupselection) and ticket submission logic, as it is no longer relevant for v2.
We detached the DKG mechanism from the v1 KeepRandomBeaconOperator contract by mocking the contact points between the DKG logic and the contract binding. This resulted in several modifications in the pkg/beacon/relay/chain/chain.go interfaces:

The OnGroupSelectionStarted event listener was removed and replaced by the OnDKGStarted event listener with a temporary implementation that emits the DkgStarted event every 500th block.
The SubmitDKGResult implementation was removed and replaced with a local implementation that pipes the result directly to the handlers registered by the OnDKGResultSubmitted event listener
The OnDKGResultSubmitted implementation was removed and replaced with a local implementation that registers a handler for results coming from SubmitDKGResult
There is a new function SelectGroup that replaces the removed group selection logic. It has a temporary implementation that returns a group consisting of N group members controlled by the calling operator

We removed the event deduplicator for the group selection events as it is no longer relevant for v2. We will need a new logic to handle v2 caveats. This was covered by a TODO in beacon.go
We changed the group registry to allow storage of both candidate and approved groups. The group registry now exposes the RegisterCandidateGroup and RegisterApprovedGroup functions. The former is called at the end of the DKG process. The latter should be called once the result approval is observed on-chain (this will be handled in the next milestone).

There are some problems with running the client without v1 contracts deployed and initialized.
In #3026 we reworked v1 scripts into v2 approach so it is no longer possible to set up v1 contracts locally on the dev environment. Also, the work we are doing in #3012 will set up testnet based on v2 contracts.
We need to find a way to run a client now. I tried locally and I think we can do some workarounds for M1:

Disable ec.initializeBalanceMonitoring(ctx) in connect.go.
Rework fetchChainConfig in connect.go to return hardcoded values.
Disable stakeMonitor.HasMinimumStake check in start.go.

One more note, I think we shouldn't close issue #3013 with merging this PR. We still need to integrate with Sortition Pool group selection and ensure we can run this loop over the network with multiple clients.

There is one more problem with v1 contracts not deployed. The DKG errors out with:
2022-07-06T13:54:39.750+0200	WARN	keep-dkg	go-log@v1.0.5/log.go:180	[member:22] DKG result publication process failed [failed to initiate new state [could not check if the result is already submitted: [response [[]] was not long enough to interpret while resolving original error [no contract code at given address]]]]
2022-07-06T13:54:39.892+0200	ERROR	keep-relay	relay/node.go:136	failed to execute dkg: [DKG result publication timed out]

I would consider disabling dkgResult.Publish and decideMemberFate in dkg.go. We could theoretically short-circuit them but for v2 we need more sophisticated behavior when it comes to the result publication.

There is one more problem with v1 contracts not deployed. The DKG errors out with:
2022-07-06T13:54:39.750+0200	WARN	keep-dkg	go-log@v1.0.5/log.go:180	[member:22] DKG result publication process failed [failed to initiate new state [could not check if the result is already submitted: [response [[]] was not long enough to interpret while resolving original error [no contract code at given address]]]]
2022-07-06T13:54:39.892+0200	ERROR	keep-relay	relay/node.go:136	failed to execute dkg: [DKG result publication timed out]

I would consider disabling dkgResult.Publish and decideMemberFate in dkg.go. We could theoretically short-circuit them but for v2 we need more sophisticated behavior when it comes to the result publication.

Here it is https://github.com/keep-network/keep-core/pull/3034/commits/10e12b9ecaaf6b1b60eae7f1ed62f4a12213a51e


Used paths rather than hardcoded strings in autogen.py

Summary
By using paths and not hardcoded strings, we'll be able to build the documentation programatically, hence run more tests on it.
It's also another step towards using the same codebase for generating the docs in keras-contrib and keras.
Related Issues
PR Overview
This PR doesn't enable running autogen.generate() from another directory yet, but we're getting there progressively.

[ ] This PR requires new unit tests [y/n] (make sure tests are included)
[ ] This PR requires to update the documentation [y/n] (make sure the docs are up-to-date)
[x] This PR is backwards compatible [y/n]
[ ] This PR changes the current API [y/n] (all API changes need to be approved by fchollet)

Linking to https://github.com/keras-team/keras-contrib/issues/412

will work on Windows

With pathlib, the / operator also works on windows, which is nice.
@fchollet , I made the changes you required. Could you review again?


Better AppOpen Format

Feature Description
hello Team, first of all thanks for the applovin plugin.
I am here to request to improve applovin's AppOpen format because on display this app open ads, it looks similar to Interstitial ads which make bad user experience.
Suggestion - I found the google's app open ad viewability much better and it make difference in user experience as well as differentiating from Interstitial Ads. Link - https://developers.google.com/ad-manager/mobile-ads-sdk/flutter/app-open
For now, I am using all applovin ads format except AppOpen since it looks similar like interestial as well as not good for user experience.

@thomasmso @alhiwatan does this will be consider ahead for pipeline ?

@ycv005 - we are considering this request, but at the moment have no plans to make ad UI/UX updates.

@thomasmso @alhiwatan any update?


Unhandled Rejection (TypeError): Cannot read property 'run' of undefined

Is there a chance of store.listeners[i] can be undefined at anytime from the below code, using the latest version?
for (let i = 0; i < listenersLength; i++) {
    store.listeners[i].run(store.state);
}

I am calling the globalaction aomething like this
globalActions.setSignedupUser({
      newUser: false,
      user: {
        displayName: name, email: userEmail, photoURL, phoneNumber, uid
      }
});

and in my actions
export const setSignedupUser = (store, data) => {
  store.setState({ ...data });
};

It will be very helpful to know your thoughts on this.

Hello @subhendukundu
It is a possibility.
I think there is nothing wrong with the way you are calling the library.
Can you share a sandbox (like https://codesandbox.io/) with a reprosusable version of the problem?
Alternative approach:
You can also open the package file, inside the node_modules, replace the for for a foreach.
for (let i = 0; i < listenersLength; i++) {
    store.listeners[i].run(store.state);
}

To
store.listeners.forEach((listener) => {
    listener.run(store.state);
  });

If that works, I will create a new release with this changes.
Or, if you have the time, make a pull request and I will accept it.
Let me know if it works for you.

Yes, you are right, that fixed the issue.
I added a PR. #17

Thank you @subhendukundu
Version 0.1.11 released.


WIP: Enhance travis

What does the dangerfile do?

It seems you can check/validate the "conventions" you want to set. In this particular case there's an integration between awesome_bot and Danger to report back errors to the PR.
Since we're going to allow 302 status, I thought it would be a good idea to have a visibility of them, because there might be some cases which 302 wouldn't be acceptable.

Once setup, there won't be any additional complexity, on the other hand I think it will kinda simplify the process. If Travis fails it pushes back a comment to the PR as this which we can immediately see what's going on.

Alright then!

NO, it wasn't complete yet!! Reverted the merge.

Ah!
Can you start naming your PRs which aren't complete as WIP? Otherwise, I'll assume it is ready to merge; otherwise, the act of a PR itself signals that it is done.

The name of this PR still contains WIP :wink:
and btw I added a label too work-in-progress


questions about counter_class_rate

Hi!
I found that a predefined list called 'counter_class_rate' in ./pdvc/crtirion.py is used as a weight in counter loss.
I'm curious about the way to get the list. Is it the frequency of event number of the dataset?
I'd be appreciated if you can answer my question!

Yes. It is the frequency of the event number of the dataset.


Does not correctly tag digest pinned container image

Given image using tag with digest pinned it does not correct upload the image with tag v2.13.0 and gets deleted by untagged images policy :sweat_smile:
argo-cd:
  global:
    image:
      repository: quay.io/argoproj/argocd
      tag: v2.13.0@sha256:5806aac0c6e4d04aeeb385a218cfeaeb4daaab9bfbc2b41f908788eb5b3d2909

This method should properly return normalizedName, tag, digest and than if tag and digest is not nil. Tag the digest after having copied it :thinking:


Code folding and guides disappearing when accessibility is turned on

VSCode Version: 1.32.1
OS Version: Windows 10

Steps to Reproduce:

Go to settings
Search for Accessibility support
If turned off. Turn it on
Open any html/css/js/jsx/ts etc. file.
Observer the code folding icon (+/-) and tab guides are no longer visible

Expected result: Even with the accessibility support on. The code folding and guides should be visible.

Does this issue occur when all extensions are disabled?: Yes

This working as intended.

Certain features such as folding, minimap (code overview), and word wrap are disabled when in screen reader mode.

(from https://code.visualstudio.com/docs/editor/accessibility#_screen-reader-mode)
https://github.com/Microsoft/vscode/issues/32166#issuecomment-331932055 contains the reason.

Thanks for the confirmation.


Fix for MODCLUSTER-841, use updated to propagate the status and error_time.

Fix: https://issues.redhat.com/browse/MODCLUSTER-841
This change is NOT relevant in upstream, the  http/ws logic is different.

@jajik I have fixed the style coding missing space.

Thanks! Feel free to squash it into one commit.


Explain Execution Plan not working with MySQL for query that uses CTE

System information:

Windows 10 64bit (
DBeaver version 2.1.03

Connection specification:

MySQL 8.18
Driver name MySQL
Do you use tunnels or proxies (SSH, SOCKS, etc)? No

Describe the problem you're observing:
When the MySQL query uses the CTE (common table expression), attempt to explain the query ends with error "Only SELECT statements could produce execution plan".
MySQL Workbench can explain the query without issues.
Steps to reproduce, if exist:

Have a simple query with CTE:

WITH CTE AS (SELECT * FROM MyTable)
SELECT * FROM CTE;

Execute "Explain Execution Plan" by pressing CTRL+SHIFT+E

Error "Only SELECT statements could produce execution plan" shows up.

Modify the query to run EXPLAIN directly:

EXPLAIN
WITH CTE AS (SELECT * FROM MyTable)
SELECT * FROM CTE;

Execute the query - it runs and returns result

id|select_type|table  |partitions|type|possible_keys|key|key_len|ref|rows|filtered|Extra|
--+-----------+-------+----------+----+-------------+---+-------+---+----+--------+-----+
 1|SIMPLE     |MyTable|          |ALL |             |   |       |   |  60|   100.0|     |

Thank you for the report.

Verified


Update workload manifest in doc

What type of PR is this?
/kind documentation

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #929
Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

/ok-to-test
/lgtm
/approve


Fix missing sample types in delete dags

@jklugherz do you feel like this is actually the right approach?


Regarding training cost

Hi, nice work!
I see from the paper that all experiments are conducted on 8xA100. Wondering how long does the training takes?

Hello, thanks for your interest.
As I know, it took about two days to train Switch-DiT-XL and 15 hours to train Switch-DiT-S.


Cleanup running child processes when interrupted

Forked processes can be left around when the cli is interrupted (at least that's what I observed with windows), see the experimental code I used to cleanup the processes.
    private static class RunningProcesses {

        private static final ProcessRegistry REGISTRY = new ProcessRegistry();

        static void add(Process process) {
            REGISTRY.add(process);
        }

        static void remove(Process process) {
            REGISTRY.remove(process);
        }
    }

    private static final class ProcessRegistry extends HashSet<Process> {

        final Thread shutdownThread = new Thread(this::destroyAll);

        ProcessRegistry() {
            Runtime.getRuntime().addShutdownHook(shutdownThread);
        }

        void destroyAll() {
            stream().flatMap(Process::descendants).forEach(ProcessHandle::destroyForcibly);
        }
    }

Turns out that this is a windows specific behavior.
On windows if none of stdout/stderr/stdin are redirect from the parent to the child, then when the parent exits the child is left alive.
However, if any of stdout/stderr/stdin the child is killed when the parent exits.
See example code below:

import java.nio.file.Path;

public class Test {

    public static void main(String[] args) throws Exception {
        if (args != null && args.length > 0 && "child".equals(args[0])) {
            System.out.println("Child start");
            Runtime.getRuntime().addShutdownHook(new Thread(() -> System.out.println("Child exit")));
            Thread.sleep(40 * 10000);
        } else {
            System.out.println("Parent start");
            String javaBin = Path.of(System.getProperty("java.home"))
                    .resolve("bin")
                    .resolve("java")
                    .toString();
            Process p = new ProcessBuilder(javaBin, "-cp", System.getProperty("java.class.path"), "Test", "child")
                    .redirectOutput(ProcessBuilder.Redirect.INHERIT)
                    .start();
            Runtime.getRuntime().addShutdownHook(new Thread(() -> System.out.println(p.pid())));
            p.waitFor();
        }
    }
}


[Bug Report] Selector Fous Method Failure

Element UI version
2.9.1
OS/Browsers version
chrome
Vue version
2.6.10
Reproduction Link
https://codepen.io/lozvoe/pen/LKNJxq?&editable=true
Steps to reproduce
点击展开按钮
What is Expected?
出现下拉框
What is actually happening?
没有出现下拉框 只高亮显示边框

pr welcome


nm: Ignore not active failure when deactivate

Ignore the failure:
Connection deactivation failed on nm2: error=nm-manager-error-quark: The
connection was not active.

Even we check activate connection status before deactivating, there is
still a small chance that NM deactivated the connection after we
checked.
This patch also fix the random failure of
test_add_bond_with_slaves_and_ipv4 test when tear down:

The tear down will delete bond99 and eth1/eth2.
After bond99 got deleted, the connections of eth1/eth2 will be
brought down automatically by NM.
There is a small chance(about 1 out of 10) to trigger the problem of
deactivating a non-active connection.

Coverage remained the same at ?% when pulling ce25155bae23a249e55fc55e6a67764c715ee831 on cathay4t:bug_fix2 into e698e7aa3c1bdd789723429f6b3bf986e4b5721f on nmstate:master.

Coverage remained the same at ?% when pulling ce25155bae23a249e55fc55e6a67764c715ee831 on cathay4t:bug_fix2 into e698e7aa3c1bdd789723429f6b3bf986e4b5721f on nmstate:master.

New patch uploaded.
Changes:

NM_MANAGER_ERROR_DOMAIN moved to nmclient.
Check whether exception is GLib.GError.

New patch uploaded.
Changes:

Changed NM_MANAGER_ERROR_DOMAIN to hold the magic string instead of dynamic generated string.
Add unit test case to make sure NM_MANAGER_ERROR_DOMAIN is equal to GLib.quark_to_string(NM.ManagerError.quark()).


Fixed the problem of Settings page when in non-English environment.

Sorry about the conflicts before, this time should work now. 🙇

Thank you!


Reintroduce artificial delay on block generator

Codecov Report

:exclamation: No coverage uploaded for pull request base (concurrent_voting@b7d5ba5). Click here to learn what that means.
The diff coverage is n/a.

@@                 Coverage Diff                  @@
##             concurrent_voting    #1445   +/-   ##
====================================================
  Coverage                     ?   40.17%
====================================================
  Files                        ?      146
  Lines                        ?     9660
  Branches                     ?        0
====================================================
  Hits                         ?     3881
  Misses                       ?     5151
  Partials                     ?      628

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b7d5ba5...e0a30eb. Read the comment docs.

@goshawk-3
Maybe it's also good to benchmark the PR with empty and full blocks in devnet to ensure we have a predictable result.

Prior to this PR:

With this PR

Looks very good @herr-seppia


configured dynamic apiVersion for HorizontalPodAutoscaler

There are two different versions of the autoscaling API in use for HorizontalPodAutoscalers

autoscaling/v2beta1 is being deprecated in Kubernetes 1.25
autoscaling/v2beta2 is being deprecated in Kubernetes 1.26 (and required a small change from v2beta1
autoscaling/v2 has been available since Kubernetes 1.23

This PR adds a helper step to determine whether the autoscaling/v2 API is available, and Kubernetes is 1.23 - and then sets autoscaling/v2, otherwise faills back to the autoscaling/v2beta2 API. It also updates the spec to match the beta2 fields.
In addition, it enables the HPA for the backup-handler service, and adds Kubernetes 1.26 to the matrix to ensure all versions are tested ok.

The reason I installed the metrics-server was to check the process for the autoscaling when enabled (the backup-handler is set to autoscale).

IMO this is out of scope for the charts CI test suite. We only care if the right objects are being created in the API for a given k8s version, and we don't care if one particular metrics server implementation is functional or not.


Nightly FTR runs with Jenkins

Is your feature request related to a problem? Please describe
Currently, the FTR tests are primarily executed during release cycles and when a pull request is submitted to the FTR repository. Unfortunately, this approach means that potential test failures in FTR often go unnoticed during the development phase, preceding the generation of the Release Candidate. Consequently, these issues seem to typically remain unaddressed until the release window has already opened. This puts pressure on the release process, leading to hurried fixes.
Even if a dev checks on FTR occasionally, they might not see that their tests are failing because the page for them only shows green:

I think it would be more effective to identify and address these issues as soon as they arise, rather than waiting for the release window. Failures in FTR can occur for reasons like frontend modifications that aren't correctly ported, upstream changes, and actual bug introduction, all of which can be better diagnosed and addressed with a more regular testing dashboard.
Describe the solution you'd like
To enhance the efficiency of our development and release processes, I propose that FTR runs be incorporated into nightly CI routines. By doing so, issues with FTR tests can be detected and addressed promptly during the development, significantly reducing the amount of rushed repairs during release windows. I think this kind of proactive approach will help put less strain on the release process overall.
Describe alternatives you've considered
There are a few alternatives I've thought about:

Increased validation at the time of PR. This works well to find developer errors quickly and help to avoid tests within our repositories becoming obsolete over time, but doesn't really apply to the FTR build. It's also the case that we generally don't run our tests in local CI under the same conditions as the tests in Jenkins, which can lead to tests that are fine for us being flaky at release time.

Nightly runs in any plugin repository that's willing to set it up. This also could work, but I think that having a more universal process (bonus points for dashboards) would be more effective. We still have the issue of differing tests environments between GH actions and Jenkins (not to mention ToD), and this seems to rely a lot on good intentions compared to maintaining runs in one place.

Additional context
I put this issue here instead of FTR since it seems more related to the overall build process than an issue localized to the test repository, but I'm happy to have the issue moved.

Hello, @Swiddis ,if you don't mind me to ask a quick question, I learn that when you have a new FT test, you will have it run at FT repo CI checks when issuing a PR, and if you found it executed suceesfully before getting it merged?  We want to make sure the errors if any been caught duing the CI checks first ... before reaching to the Jenkins ,,

Hi, yes, we make sure that the FTR tests are passing when the PR is merged, but it looks like this isn't enough when code changes over time or if tests are flaky and only pass during the initial checks. That's why I'm proposing we also have nightly runs, to track if tests are flaky or drifting out of date.

thanks for the feedback ,,, we actaully have the CI running the integ-test which will trigger FT test in evry build daily ( or triggerd by Github PRs ) .. for example : https://build.ci.opensearch.org/blue/organizations/jenkins/distribution-build-opensearch-dashboards/detail/distribution-build-opensearch-dashboards/6906/pipeline/726/ ( 3.0.0 for example ) ,,so, it should pick up the PR merged in FT repo.
CC : @kavilla for furtrher insight


A better decomment

Rewrite decomment just to copy remaining blocks and skip comments instead of copying while parsing. It should make code simpler and easier to verify and optimize (even vectorize).

Done.


[test-triage] chip_sw_power_virus

Description
The chip_sw_power_virus test has been failing for a very long time now. Since this is an important test driving some optimization steps in the PD flow, we have to fix this now.
The failure pattern is always the same: the test times out after the sequence receives the SPI passthrough opcoce:
...
UVM_INFO @ 1252.952316 us: (sw_test_status_if.sv:61) [tb.u_sim_sram.u_sim_sram_if.u_sw_test_status_if] SW test transitioned to SwTestStatusInTest.
UVM_INFO @ 1300.432316 us: (sw_logger_if.sv:524) [power_virus_systemtest_sim_dv(w/device/tests/power_virus_systemtest.c:1443)] Computed peripheral clock period.
UVM_INFO @ 2531.862316 us: (sw_logger_if.sv:524) [power_virus_systemtest_sim_dv(w/device/tests/power_virus_systemtest.c:1476)] All IPs configured.
UVM_INFO @ 2566.042316 us: (sw_logger_if.sv:524) [power_virus_systemtest_sim_dv(w/device/tests/power_virus_systemtest.c:1501)] Yielding execution to another task.
UVM_INFO @ 2572.562316 us: (sw_logger_if.sv:524) [power_virus_systemtest_sim_dv(w/device/tests/power_virus_systemtest.c:1076)] Loading crypto block FIFOs with data ...
UVM_INFO @ 2740.682316 us: (sw_logger_if.sv:524) [power_virus_systemtest_sim_dv(w/device/tests/power_virus_systemtest.c:1138)] Loading communication block FIFOs with data ...
UVM_INFO @ 2950.892316 us: (sw_logger_if.sv:524) [power_virus_systemtest_sim_dv(w/device/tests/power_virus_systemtest.c:1195)] Starting the max power task ...
UVM_INFO @ 2957.722316 us: (sw_logger_if.sv:524) [power_virus_systemtest_sim_dv(w/device/tests/power_virus_systemtest.c:1255)] Entering max power epoch ...

UVM_INFO @ 3156.412317 us: (chip_sw_power_virus_vseq.sv:117) uvm_test_top.env.virtual_sequencer [uvm_test_top.env.virtual_sequencer.chip_sw_power_virus_vseq] spi passthrough opcode = 6b
make: *** [/home/dev/src/hw/dv/tools/dvsim/sim.mk:191: simulate] Error 255

I've spent some time to debug this. The test hangs in this loop:
    // Make sure all TX FIFOs have been drained.
    for (size_t ii = 0; ii < ARRAYSIZE(i2c_handles); ++ii) {
      do {
        CHECK_DIF_OK(dif_i2c_get_fifo_levels(
            i2c_handles[ii], &fmt_fifo_lvl,
            /*rx_fifo_lvl=*/NULL, /*tx_fifo_lvl=*/NULL, /*acq_fifo_lvl=*/NULL));
      } while (fmt_fifo_lvl > 0);
    };

The fill level of the FMT FIFO remains at 63. I've also checked the waves: After transmitting the first byte from the FMT FIFO, the I2C controller FSM observes an unexpected Stop / Start while being in the ClockPulseAck state. The FSM then enters the Idle state again and things die.
@hcallahan-lowrisc, I see you have been working on this previously. Would be able to help debugging this issue please? We need to get this test working again as it provides important information to the physical design team regarding max power usage of the chip.

This should hopefully get addressed by https://github.com/lowRISC/opentitan/pull/24111. However, I still need to do more testing.

After merging @hcallahan-lowrisc 's PR #24111, the test is now passing again in many cases. But there are still failures with a signature like this:
UVM_INFO @ 1105.615560 us: (sw_test_status_if.sv:61) [tb.u_sim_sram.u_sim_sram_if.u_sw_test_status_if] SW test transitioned to SwTestStatusInBootRom.
UVM_INFO @ 1259.435560 us: (sw_logger_if.sv:524) [test_rom_sim_dv(sw/device/lib/testing/test_rom/test_rom.c:158)] kChipInfo: scm_revision=54697461
UVM_ERROR @ 1265.315560 us: (cip_base_scoreboard.sv:481) [uvm_test_top.env.scoreboard] Check failed item.d_error == exp_d_error (1 [0x1] vs 0 [0x0]) On interface chip_reg_block, TL item: req: (cip_tl_seq_item@50434) { a_addr: 'h20000330  a_data: 'h10000098  a_mask: 'hf  a_size: 'h2  a_param: 'h0  a_source: 'h0  a_opcode: 'h4  a_user: 'h26002  d_param: 'h0  d_source: 'h0  d_data: 'hffffffff  d_size: 'h2  d_opcode: 'h1  d_error: 'h1  d_sink: 'h0  d_user: 'heaa  a_source_is_overridden: 'h0  a_valid_delay: 'h0  d_valid_delay: 'h0  a_valid_len: 'h0  d_valid_len: 'h0  req_abort_after_a_valid_len: 'h0  rsp_abort_after_d_valid_len: 'h0  req_completed: 'h0  rsp_completed: 'h0  tl_intg_err_type: TlIntgErrNone  max_ecc_errors: 'h3  }
, unmapped_err: 0, mem_access_err: 0, bus_intg_err: 0, byte_wr_err: 0, csr_size_err: 0, tl_item_err: 0, write_w_instr_type_err: 0, cfg.tl_mem_access_gated: 0 ecc_err: 0
UVM_INFO @ 1265.315560 us: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER]
--- UVM Report catcher Summary ---

What happens is that the core does a data access into Flash and gets an error response. What is a bit suspicious is that the core is still in boot ROM while doing this. It's at instruction address 0x8924. I do not yet understand how this can happen but I have now waves to continue investigating tomorrow.

From the disassembly, it seems the core is trying to access the manifest and this fails:
/proc/self/cwd/sw/device/lib/testing/test_rom/test_rom.c:207

  // Always select slot a and enable address translation if manifest says to.
  const manifest_t *manifest =
      (const manifest_t *)TOP_EARLGREY_EFLASH_BASE_ADDR;
  uintptr_t entry_point = manifest_entry_point_get(manifest);
  if (manifest->address_translation == kHardenedBoolTrue) {
    8924:                             33042503                  lw      a0,816(s0) # 20000330 <_exception_frame_end+0xffe0330>
manifest_entry_point_get():

I've made some more progress with this. It seems to be a tooling / bazel issue. What I've observed when inspecting waves of different simulations runs (both failing and passing):

The failing runs always fail upon the first read from Flash.
The raw data retrieved from the scrambled Flash primitive is always the same.
The key used for descrambling provided by flash_ctrl_lcmgr.sv is different between passing and failing simulations. So when the simulation fails, it's failing because the scrambling key doesn't match the one used for pre-scrambling the image (backdoor loaded).
Ultimately the Flash scrambling key comes from the OTP image and when comparing the OTP images of the different simulations I see that all passing simulations use the same OTP image, while failing simulations may use different images.
In contrast, the scrambled Flash image is the same for all simulations.
The run.log files of the different simulations contain different seeds than what are actually used. More precisely:

The passing simulations use an OTP image power_virus_systemtest_otp_img_rma.24.vmem with the following img seed inside (check Line 14):  --img-seed<PHONE_NUMBER>21839698881730819584575853717061137784723887857271779622043712734999
This seed is found in none of the run.log files except for the last simulation run, for this this is the UVM seed: ot/opentitan/scratch/master/chip_earlgrey_asic-sim-vcs/default/simv run_dir=~ot/opentitan/scratch/master/chip_earlgrey_asic-sim-vcs/3.chip_sw_power_virus/latest run_opts='+rng_srate_value_min=15 +rng_srate_value_max=20 +sw_test_timeout_ns=400_000_000 +use_otp_image=OtpTypeCustom +accelerate_cold_power_up_time=3 +accelerate_regulators_power_up_time=2 +sw_build_device=sim_dv +sw_images=power_virus_systemtest:1:new_rules,power_virus_systemtest_otp_img_rma:4,test_rom:0 +cdc_instrumentation_enabled=1 +UVM_NO_RELNOTES +UVM_VERBOSITY=UVM_LOW -licqueue -ucli -do ~/ot/opentitan/hw/dv/tools/sim.tcl +ntb_random_seed=3322660631 -assert nopostproc +UVM_TESTNAME=chip_base_test +UVM_TEST_SEQ=chip_sw_power_virus_vseq' seed=115520181821839698881730819584575853717061137784723887857271779622043712734999 sw_build_cmd=bazel sw_build_device=sim_dv sw_build_opts='' sw_images='//sw/device/tests:power_virus_systemtest:1:new_rules //sw/device/tests:power_virus_systemtest_otp_img_rma:4 //sw/device/lib/testing/test_rom:test_rom:0' uvm_test=chip_base_test uvm_test_seq=chip_sw_power_virus_vseq

I don't know exactly how we can end up in this situation. It seems that bazel is overwriting files of the previous simulation runs and this doesn't work depending on the timing of the backdoor loading. I need some help with this.
@timothytrippel do you maybe know what's going on here?
The command I used to start the simulation is:
util/dvsim/dvsim.py hw/top_earlgrey/dv/chip_sim_cfg.hjson -i chip_sw_power_virus -t vcs --purge --reseed 4 --waves vpd

After discussing with @moidx , we found out that how the power virus test is run is somewhat different compared to other tests: dvsim is calling bazel without sandboxing the individual calls. Of course, this could be changed but it's additional effort which is not strictly required at this point. We know that these failures are related to a test infrastructure / build issue rather than a hardware or ROM issue.
Since we merged @hcallahan-lowrisc 's PR, we haven't seen a single failure of the power virus test in the nightlies. Locally, one can run multiple test runs sequentually with the -mp 1 flag:
util/dvsim/dvsim.py hw/top_earlgrey/dv/chip_sim_cfg.hjson -i chip_sw_power_virus -t vcs --purge --reseed 16 -mp 1

This makes sure to only ever have one run outstanding. After every run, bazel is triggered to generate the binaries for the next run and each run uses indeed a different OTP images and Flash images with a different Flash scrambling key.
I've triggered such a run locally to verify this and so far haven't seen a single failure:
          [   legend    ]: [Q: queued, D: dispatched, P: passed, F: failed, K: killed, T: total]
00:02:03  [    build    ]: [Q: 00, D: 00, P: 01, F: 00, K: 00, T: 01] 100%
03:14:00  [     run     ]: [Q: 09, D: 01, P: 06, F: 00, K: 00, T: 16]  38%  chip:6.chip_sw_power_virus.3..

I am thus closing the issue. Please feel free to re-open it if you think we need to change something here.
FYI @moidx


dm push sometimes hangs on 'awaiting transfer...'

We're seeing this a lot when running the back up script.
Multi node cluster tests also hang on awaiting transfer.
http://gitlab.dotmesh.io:9999/dotmesh/dotmesh-sync/-/jobs/53061

A log of a script we were running that shows the output for this problem:
h 'chanezon/moby_counter'
dm push backuphub 'chanezon/moby_counter' 'branch_a' --remote-name 'chanezon/moby_counter'
Pushing chanezon/moby_counter to backuphub:chanezon/moby_counter
Calculating...
Awaiting transfer...
dm push backuphub 'chanezon/moby_counter' 'master' --remote-name 'chanezon/moby_counter'
Pushing chanezon/moby_counter to backuphub:chanezon/moby_counter
Calculating...
Awaiting transfer...
dm switch 'colinb/moby_counter'
dm push backuphub 'colinb/moby_counter' 'branch_a' --remote-name 'colinb/moby_counter'
Pushing colinb/moby_counter to backuphub:colinb/moby_counter
Calculating...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
^Cdm push backuphub 'colinb/moby_counter' 'master' --remote-name 'colinb/moby_counter'
Pushing colinb/moby_counter to backuphub:colinb/moby_counter
Calculating...
Awaiting transfer...
dm switch 'dan/wordpressdotmesh_wordpress'
dm push backuphub 'dan/wordpressdotmesh_wordpress' 'master' --remote-name 'dan/wordpressdotmesh_wordpress'
Pushing dan/wordpressdotmesh_wordpress to backuphub:dan/wordpressdotmesh_wordpress
Calculating...
Awaiting transfer...
dm switch 'dan/wordpressdotmesh_wp'
dm push backuphub 'dan/wordpressdotmesh_wp' 'master' --remote-name 'dan/wordpressdotmesh_wp'
Pushing dan/wordpressdotmesh_wp to backuphub:dan/wordpressdotmesh_wp
Calculating...
Awaiting transfer...
dm switch 'ericlugo/moby_counter'
dm push backuphub 'ericlugo/moby_counter' 'branch_a' --remote-name 'ericlugo/moby_counter'
Pushing ericlugo/moby_counter to backuphub:ericlugo/moby_counter
Calculating...
finished 9.50 KB / 9.50 KB [==========================] 100.00% 0.08 MiB/s (2/2)
Done!
dm push backuphub 'ericlugo/moby_counter' 'master' --remote-name 'ericlugo/moby_counter'
Pushing ericlugo/moby_counter to backuphub:ericlugo/moby_counter
Calculating...
Awaiting transfer...
dm switch 'eveld/moby_counter'
dm push backuphub 'eveld/moby_counter' 'branch_a' --remote-name 'eveld/moby_counter'
Pushing eveld/moby_counter to backuphub:eveld/moby_counter
Calculating...
Awaiting transfer...
dm push backuphub 'eveld/moby_counter' 'master' --remote-name 'eveld/moby_counter'
Pushing eveld/moby_counter to backuphub:eveld/moby_counter
Calculating...
Awaiting transfer...
dm switch 'f2hex/moby_counter'
dm push backuphub 'f2hex/moby_counter' 'branch_a' --remote-name 'f2hex/moby_counter'
Pushing f2hex/moby_counter to backuphub:f2hex/moby_counter
Calculating...
Awaiting transfer...
dm push backuphub 'f2hex/moby_counter' 'master' --remote-name 'f2hex/moby_counter'
Pushing f2hex/moby_counter to backuphub:f2hex/moby_counter
Calculating...
Awaiting transfer...
dm switch 'fintanr/moby_counter'
dm push backuphub 'fintanr/moby_counter' 'branch_a' --remote-name 'fintanr/moby_counter'
Pushing fintanr/moby_counter to backuphub:fintanr/moby_counter
Calculating...
Awaiting transfer...
dm push backuphub 'fintanr/moby_counter' 'master' --remote-name 'fintanr/moby_counter'
Pushing fintanr/moby_counter to backuphub:fintanr/moby_counter
Calculating...
Awaiting transfer...
dm switch 'gokmen/moby_counter'
dm push backuphub 'gokmen/moby_counter' 'branch_a' --remote-name 'gokmen/moby_counter'
Pushing gokmen/moby_counter to backuphub:gokmen/moby_counter
Calculating...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
^Cdm push backuphub 'gokmen/moby_counter' 'master' --remote-name 'gokmen/moby_counter'
Pushing gokmen/moby_counter to backuphub:gokmen/moby_counter
Calculating...
Awaiting transfer...
dm switch 'hleclerc/moby_counter'
dm push backuphub 'hleclerc/moby_counter' 'branch_a' --remote-name 'hleclerc/moby_counter'
Pushing hleclerc/moby_counter to backuphub:hleclerc/moby_counter
Calculating...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...

^ I did a ctrl+c for each Awaiting transfer... to progress to the next one in the list

Fixed with:

Skipping branches with no commits on them
Script issues, i.e stripping spaces from branch names, and getting the right branch name before attempting to do a dm push

Seeing this emerge on zfs-kernel-module backups
dm push backup-cluster-1 'zfs-kernel-modules' 'master' --remote-name 'zfs-kernel-modules'
Pushing admin/zfs-kernel-modules to backup-cluster-1:admin/zfs-kernel-modules
Calculating...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...
Awaiting transfer...

This could be related to https://github.com/dotmesh-io/dotmesh/issues/352

This affected me in a demo, although I was on 0.3.1.
Released 0.3.2 with https://github.com/dotmesh-io/dotmesh/issues/339, but we should:
(a) inspect the logs for those clusters (ask me for access)
(b) try to reproduce the issue by re-running what I did in the demo like 10 times

It works!


Vue Router documentation with Dark reader is not working

Version
4.1.6
Reproduction link
https://example.com/
Steps to reproduce
Open:
https://router.vuejs.org/
What is expected?
Background should appear dark or black with Dark Reader for accessibility experience.
I have eye cataract and feel the white background is  huge pain my eye sight.
What is actually happening?
The page is appear with white background.

This will be added once we can upgrade vitepress


Use system sleep() function

The local sleep var in hare_id was assigned but never used.
Tested this, works fine on macOS, although the field value is milliseconds, not seconds.

The example brings in the system sleep function, but then doesn't use it.
The tortoise thread uses uv.sleep, without creating a local sleep.
Imho the tutorial would read fine with one sleep instead of three, although
I like that it illustrates using the FFI inside the thread.
But invoking three and using only one is confusing.
On Sun, May 20, 2018 at 9:37 PM, George Zhao<EMAIL_ADDRESS>wrote:

@zhaozg commented on this pull request.
why change this
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/luvit/luv/pull/289#pullrequestreview-121681699, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAOJaYJhaCRLeMUhVwhxoJBQkBEwuNO3ks5t0kSdgaJpZM4UGatz
.

thanks


tests: acpi: Refactor ACPi test

Use helpers to print scope also for not found entries.

Oh, I hadn't realised that we have an x86-specific acpi test app in addition to tests/lib/acpi/. Would it make sense to try to consolidate those?


mDNS name resolution broken on macOS?

In what area(s)?
/area runtime
What version of Dapr?
CLI version: 1.8.1
Runtime version: 1.8.4
Expected Behavior
I am running two Spring Boot-based Java applications locally, each with their own Dapr sidecar.
Using an HTTP client, I ask each sidecar to invoke a method on one of the Java applications:
http POST http://localhost:3601/v1.0/invoke/vehicleregistrationservice/method/vehicleinfo/XT-346-Y
http POST http://localhost:3602/v1.0/invoke/vehicleregistrationservice/method/vehicleinfo/XT-346-Y

I expect each sidecar to be able to invoke the vehicleinfo/XT-346-Y method on the vehicleregistrationservice.

One sidecar should be able to do that, because it is the sidecar of the vehicleregistrationservice app.
The other sidecar should be able to do that, because the name vehicleregistrationservice is advertised through mDNS.

Actual Behavior
Both sidecars fail to invoke the vehicleinfo/XT-346-Y method on the vehicleregistrationservice. Each sidecar responds with
HTTP/1.1 500 Internal Server Error
Content-Length: 148
Content-Type: application/json
Date: Tue, 20 Sep 2022 14:29:45 GMT
Server: fasthttp
Traceparent: 00-19e67894ddb9640761df5f3db0fc41de-12290e09af0fb916-01

{
    "errorCode": "ERR_DIRECT_INVOKE",
    "message": "fail to invoke, id: vehicleregistrationservice, err: couldn't find service: vehicleregistrationservice"
}

Steps to Reproduce the Problem

I am running on macOS 12.5.1 on an M1.
I have installed Dapr through Homebrew.
I have verified the mDNS advertisement using dns-sd -B _services._dns-sd._udp
Using dapr list, I seeAPP ID                      HTTP PORT  GRPC PORT  APP PORT  COMMAND              AGE  CREATED              PID
finecollectionservice       3601       60001      6001      mvn spring-boot:run  3s   2022-09-20 16:36.55  5144
vehicleregistrationservice  3602       60002      6002      mvn spring-boot:run  4s   2022-09-20 16:36.54  5114

I do not have any VPN connections open
I am not using Microsoft Content Filter
The Dapr sidecars are logging on debug level, and this snippet of logging seems relevant:INFO[0004] dapr initialized. Status: Running. Init Elapsed 4896.022ms  app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.runtime type=log ver=1.8.4
DEBU[0004] try to connect to placement service: dns:///localhost:50005  app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.runtime.actor.internal.placement type=log ver=1.8.4
DEBU[0004] established connection to placement service at dns:///localhost:50005  app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.runtime.actor.internal.placement type=log ver=1.8.4
DEBU[0004] placement order received: lock                app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.runtime.actor.internal.placement type=log ver=1.8.4
DEBU[0004] placement order received: update              app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.runtime.actor.internal.placement type=log ver=1.8.4
INFO[0004] placement tables updated, version: 0          app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.runtime.actor.internal.placement type=log ver=1.8.4
DEBU[0004] placement order received: unlock              app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.runtime.actor.internal.placement type=log ver=1.8.4
DEBU[0030] Refreshing all mDNS addresses.                app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.contrib type=log ver=1.8.4
DEBU[0030] no mDNS apps to refresh.                      app_id=vehicleregistrationservice instance=maartenm04.fritz.box scope=dapr.contrib type=log ver=1.8.4

As a final check, I have followed the Service Invocation Quickstart with Javascript and I'm seeing the same behaviour there.
Release Note

RELEASE NOTE: FIX Fix mDNS name resolution on macOS

Today, I tested the same setup on a clean Linux VM. It works flawlessly there, supporting my gut feeling this is a macOS-specific issue.

/keep-alive

Hi, i have the same issue with CLI 1.9.1 and runtime 1.9.5.
Any news on this?

Any update on this issue ? All features for dapr seem to work apart from Service invocation(i am using  macOs monterrey). Would be super helpful to get some guidance. I would go to the route of setting up a VM but that seems a little too much effort.

I was having issues with mDNS (because of our corporate firewall) and I swapped over to using the consul name resolution component and that seems to work well. https://docs.dapr.io/reference/components-reference/supported-name-resolution/setup-nr-consul/


cell color stays grey for Python but turns blue for MATLAB

The cells for Python just look like comments and are basically impossible to see... Is this just a known bug or something wrong with my installation?
MATLAB:

Python:

Versions
OS version:
OSX 10.12.2

atom --version

Atom    : 1.41.0
Electron: 4.2.7
Chrome  : 69.0.3497.128
Node    : 10.11.0

apm --version

apm  2.4.3
npm  6.2.0
node 10.2.1 x64
atom 1.41.0
python 2.7.7
git 2.10.1

Hydrogen version:
2.13.1
Plugins
Have you installed and activated any of the Hydrogen plugins below ?

[ yes ] hydrogen-python
[ yes ] Hydrogen Launcher
[ no ] Data Explorer

close: dup of https://github.com/nteract/hydrogen/issues/1602


🌯 Wrapping up

This is an issue reserved for the TU Delft Student Software Project '23
To wrap up the project, it would be nice if you could summarise what you've done in an accessible manner (e.g. a blog post) and share it with the Julia community (and beyond if you like). You are entirely free to decide on the extent and form of this post. In other words, there is no expectation for this to be particularly extensive. But it is expected that you deliver something that wraps up the project.

duplicate of #133


org.redisson.client.RedisConnectionException: SlaveConnectionPool no available Redis entries

Specification we are using:
AWS Elasticache- Redis 5.0.6 (Cluster Mode with master and slave)
Redisson library; 3.16.4
connectTimeout: 3000
timeout: 1000
retryAttempts: 1
slaveConnectionMinimulIdleSize: 24
slaveConnectionPoolSize: 64
masterConnectionMinimulIdleSize: 24
masterConnectionPoolSize: 64
nodeAddres: clusterendpoint:6379
readmode: SLAVE
using: ClusterServers and RBucket to set and get
We are intermittently facing the below error. I think this is because the Master instance is loosing connection to the slave instance.
org.redisson.client.RedisConnectionException: SlaveConnectionPool no available Redis entries. Master entry host: XX.XXX.XXX/XX.XXX.XXX:6379 Disconnected hosts: [XX.XXX.XXX/1XX.XXX.XXX:6379]
at org.redisson.connection.pool.ConnectionPool.get(ConnectionPool.java:216)
at org.redisson.connection.pool.SlaveConnectionPool.get(SlaveConnectionPool.java:30)
at org.redisson.connection.balancer.LoadBalancerManager.nextConnection(LoadBalancerManager.java:273)
at org.redisson.connection.MasterSlaveEntry.connectionReadOp(MasterSlaveEntry.java:499)
at org.redisson.connection.MasterSlaveConnectionManager.connectionReadOp(MasterSlaveConnectionManager.java:549)
at org.redisson.command.RedisExecutor.getConnection(RedisExecutor.java:555)
at org.redisson.command.RedisExecutor.execute(RedisExecutor.java:121)
at org.redisson.command.RedisExecutor$2.run(RedisExecutor.java:251)
at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:669)
at io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:744)
at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:469)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:829)
If we check the elasticache, all instance in the cluster are in available status.
Only way to resolve is to redeploy the application.
Any idea on configuration that should be tweaked? Or does redisson provides any time interval to refresh the connection to avoid this?
I checked the other post but looks it is closed but doesn't have an answer to the question.

Can you set debug logging level for org.redisson.cluster.ClusterConnectionManager and share output before this issue?

Fixed in https://github.com/redisson/redisson/issues/3983

Fixed

Additional fix added.

This problem occurs in version 3.20.0

@kit-lee
https://github.com/redisson/redisson/issues/3980#issuecomment-1471659155

Additional fix has been made

This is happening to us on version 3.23.4 with an Elasticache.

@mrniko Here's the stacktrace for Redisson with 3.23.4:
org.redisson.client.RedisConnectionException: SlaveConnectionPool no available Redis entries. Master entry host: master.XXXXXX.use1.cache.amazonaws.com/X.X.X.30:6379 Disconnected hosts: [master.XXXXX.use1.cache.amazonaws.com/X.X.X.30:6379, replica.XXXX.use1.cache.amazonaws.com/XX.XX.XX.30:6379]
	at org.redisson.connection.pool.ConnectionPool.get(ConnectionPool.java:187)
	at org.redisson.connection.pool.SlaveConnectionPool.get(SlaveConnectionPool.java:30)
	at org.redisson.connection.balancer.LoadBalancerManager.nextConnection(LoadBalancerManager.java:281)
	at org.redisson.connection.MasterSlaveEntry.connectionReadOp(MasterSlaveEntry.java:582)
	at org.redisson.command.RedisExecutor.connectionReadOp(RedisExecutor.java:746)
	at org.redisson.command.RedisExecutor.getConnection(RedisExecutor.java:670)
	at org.redisson.command.RedisExecutor.execute(RedisExecutor.java:128)
	at org.redisson.command.RedisExecutor$1.run(RedisExecutor.java:317)
	at io.netty.util.HashedWheelTimer$HashedWheelTimeout.run(HashedWheelTimer.java:715)
	at io.netty.util.concurrent.ImmediateExecutor.execute(ImmediateExecutor.java:34)
	at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:703)
	at io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:790)
	at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:503)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:833)

@mrniko Unfortunately this is all we have. But I can add two more details:

While the DNS is different for replica and master, it (the DNS) resolves to the same machine (this is temporary procedure we have until we have a true reader). Can this cause these errors? it shouldn't, right?
We are also using Jedis in this app, this is my attempt to promote Redisson in my org. Can the two collide?

What can we do to debug this?

@SHxKM

While the DNS is different for replica and master, it (the DNS) resolves to the same machine (this is temporary procedure we have until we have a true reader). Can this cause these errors? it shouldn't, right?

Do you mean that at some moment replica and master have same ip and port?

We are also using Jedis in this app, this is my attempt to promote Redisson in my org. Can the two collide?

I don't think so

Do you mean that at some moment replica and master have same ip and port?

At all points, at the moment. Would this be the reason?

@mrniko We have tested with Jedis and no such problem occurs when using a JedisPool that is separate per writer / reader. We have no problem if the error only occurs in Redisson when the actual IPs are identical, but can you confirm whether this would be the reason?

@SHxKM
I didn't test the case when master and slave the same address

@Crystala
Thanks for shared details. Can you share Redisson log from the application start moment with trace logging level for org.redisson package?

@mrniko I'll have a try, but it may take some time, as my working experience with java application developing is nearly 0 :(

@mrniko Log Generated.
Error displayed in browser:
ERROR: org.springframework.data.redis.RedisConnectionFailureException: SlaveConnectionPool no available Redis entries. Master entry host: <IP_ADDRESS>/<IP_ADDRESS>:32195 Disconnected hosts: [<IP_ADDRESS>/<IP_ADDRESS>:32195]

redisson_trace.zip

@Crystala
Thanks for the provided logs.
Redis reports MASTERDOWN Link with MASTER is down and replica-serve-stale-data is set to 'no' check your Redis configuration.

@Crystala
Thanks for the provided logs.
Redis reports MASTERDOWN Link with MASTER is down and replica-serve-stale-data is set to 'no' check your Redis configuration.

I fully understand that, at certain points during the replication of this bug (Step 8~15), redis' configuration (masterauth) is wrong at certain points.
Actually, this is what triggers the bug. It is intended to be so.
But, by the end of the replication (Step 16~), all redis nodes' masterauth are correct, and all nodes can function normally.
This is where the bug appears: in most cases, redisson can recognize that redis' status is back to normal and provide services as usual; but sometimes it cannot and keeps throwing exceptions, which is why it is a bug.

@harshalthakre
My apologies for being unable to reply for almost a whole month!
I was temporarily being transferred to another project, not until now could I have some free time to test the latest version.
:( Work work

According to the time of your reply, I used redisson 3.29.0 for this test.
Result: the bug is still there.
ERROR: org.springframework.data.redis.RedisConnectionFailureException: SlaveConnectionPool no available Redis entries. Master entry host: <IP_ADDRESS>/<IP_ADDRESS>:32196 Disconnected hosts: [<IP_ADDRESS>/<IP_ADDRESS>:32196]

I noticed that, in the update log, redisson mentioned:
Fixed - Slave node in cluster mode isn't shutdown properly if readMode = MASTER and subscribeMode = MASTER

But this bug was produced while using readMode = SLAVE. Not sure if it is relative, just a reminder.
This is the config file used, and the log file.
redisson-config.json
redisson_trace.log
In the log file, command GET FOO and GET FOO4 keeps appearing even after GET FOO2 disappears, which is when the bug shows itself: redisson cannot execute GET FOO2 because SlaveConnectionPool no available Redis entries.
P.S.: Can still access GET FOO2 on <IP_ADDRESS>:32196 by redis-cli.

@Crystala
I don't see the SlaveConnectionPool no available Redis entries error in your logs.

我使用3.18.0的版本也出现了此问题 在redis集群宕机后重启就出现了以下错误  redis集群重启后ip和端口并未发生变化 redis集群也是正常可以访问  在我的java应用重启后解决了此问题
org.redisson.client.RedisConnectionException: SlaveConnectionPool no available Redis entries. Master entry host:
.........................


Fix Rust 1.60 clippy lint warnings

Fairly mechanical fix of the warnings generated by cargo clippy --all-targets.

Codecov Report

Merging #894 (376eb1c) into master (e8a4b70) will decrease coverage by 0.02%.
The diff coverage is 100.00%.

:exclamation: Current head 376eb1c differs from pull request most recent head 3de97ac. Consider uploading reports for the commit 3de97ac to get more accurate results

@@            Coverage Diff             @@
##           master     #894      +/-   ##
==========================================
- Coverage   70.37%   70.35%   -0.03%
==========================================
  Files          62       62
  Lines        4264     4264
==========================================
- Hits         3001     3000       -1
- Misses       1263     1264       +1

Impacted Files
Coverage Δ

kube-derive/tests/crd_enum_test.rs
100.00% <ø> (ø)

kube-client/src/lib.rs
93.75% <100.00%> (ø)

kube-core/src/schema.rs
90.47% <100.00%> (ø)

kube-runtime/src/wait.rs
68.00% <0.00%> (-2.00%)
:arrow_down: