add more data to config_dump API

part of https://github.com/istio/ztunnel/issues/87

@GregHanson: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

test_ztunnel
0b0fffa93a6fac9d0f955beaae997465d257558b
link
true
/test test

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

new output format with version struct:
  "static_workloads": [],
  "version": {
    "version": "e3e79fbeeae06ba051db08febb95dab7d4408563-dirty",
    "git_revision": "e3e79fbeeae06ba051db08febb95dab7d4408563-dirty",
    "rust_version": "1.65.0",
    "build_status": "Modified",
    "git_tag": "e3e79fb"
  },
  "config": {
    "window_size": 4194304,
    "connection_window_size": 4194304,
    "frame_size": 1048576,
    "socks5_addr": "[::]:15080",
    "admin_addr": "[::]:15021",
    "inbound_addr": "[::]:15008",
    "inbound_plaintext_addr": "[::]:15006",
    "outbound_addr": "[::]:15001",
    "local_node": "ambient-worker",
    "ca_address": "https://istiod.istio-system:15012",
    "xds_address": "https://istiod.istio-system:15012",
    "local_xds_path": null,
    "xds_on_demand": false,
    "fake_ca": false,
    "termination_grace_period": {
      "secs": 5,
      "nanos": 0
    },
    "num_worker_threads": 2,
    "proxy_args": "proxy sidecar"
  }

@GregHanson: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

test_ztunnel
0382f172986c574b161d5fc12b548b69def04811
link
true
/test test

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

@GregHanson: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

test_ztunnel
eb7979bc6025a4ad958215418075f757682cb58c
link
true
/test test

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

LGTM  just one nit: the config is too generic

LGTM just one nit: the config is too generic

@hzxuzhonghu ztunnel_options?


feat: add glint-language-server support

I've tried to implement glint-language-server support. It's a little tricky, because the glint documentation advises against installing glint globally, so I had to come up with a different way to find the binary.

because the glint documentation advises against installing glint globally,

this is a more proper thing to do anyway, because you can't know if you're in a monorepo and potentially have different language-server versions present.

Right, I'm trying to recreate this recommended functionality:

It will open or create a .vim/coc-settings.json file. Add this config:
{
  "tsserver.enable": false,
  "languageserver": {
    "glint": {
      "command": "${workspaceFolder}/node_modules/.bin/glint-language-server",
      "filetypes": ["html.handlebars","typescript"]
    }
  }
}

This will disable coc-tssever (if installed) and configure CoC to use Glint for .hbs and .ts files.

From this blog post on glint

Testing this locally (with packer):
-  -- use 'neovim/nvim-lspconfig'
+  use { 'muziejus/nvim-lspconfig', branch = "glint" }

Tested this over in: https://github.com/gitKrystan/super-rentals-ts-2022/pull/1
And it looks like it works:

Regular typescript stuff still works, too:

@justinmk I removed the capital letter from the commit message.


Added mention of this fork version and custom fork install instructio…

Added mention of fork changes and install instructions to README.md

Second commit is to fix positioning of cover logo on front page (now actually goes from edge to edge).

Hi,
Apologies, I seem to have not been getting notifications for this repo for months and I've only just realised.
You appear to have committed a lot of changes by accident, and as a result I can't look at the code diff due to the lag of the 5000+ file changes.
Can you please remove the changes to:

.idea
.vscode
docker/mkdocs-with-pdf
samples/mkdocs-material


custom configuration for global timeline creation

Hi,
ht_global_timeline_get() makes it easy to use different timeline per thread, but we cannot use different configuration to create it. For example, we cannot pass larger(or smaller) buffer size.
Also, it makes a bit tricky to set up a same listener for all the global timelines. For example, if a threads are created in modules that doesn't have central manager that knows those threads, one way to set same listener to those timeline is to make global access to the listener and set it to each timeline. But it makes timeline setup codes here and there.
One idea to solve this is to make an API that we can pass a custom creation/setup function to hawktracer, which will be called back from ht_global_timeline_get(), if it is set.
How do you think?
Thanks!

Hi @ftanuma , thanks for your report.
Regarding global timeline's configuration - it's not implemented but that was one of the purpose of having argc and argv parameters in ht_init method - would it be sufficient for you to pass global timeline parameters through that function? It'd be something like:
const char* argv = {"--ht-global-timeline-buffer-size", "4096"};
ht_init(2, argv);

For setting up the same listener for all global timelines, you only need to set it up for one timeline (i.e. in one thread) and global timelines in other threads will re-use the same listener, so:
void foo()
{
  ht_timeline_register_listener(ht_global_timeline_get(), listener_callback, NULL);
  std::thread([] {
    HT_TIMELINE_PUSH_EVENT(ht_global_timeline_get(), EventType, some_parameter); // <- this should already have listener registered
}

In other words, all the global timelines share the same listeners, and if that doesn't work, this is a bug, so please let me know and I can fix that.

Hi @loganek , sorry for late response.
Regarding the configuration, yes argc/argv would work.
Regarding the listener, you are right. I was manually creating each timeline by ht_timeline_create() and I didn't notice that the 4th parameter(const char* listeners) is the key for same listener. So I was passing different names.
Now if I specify same const char*, it uses same listener for subsequently created timelines.
Thanks!

Hi @ftanuma
I just merged the change. You can set buffer size of the global timeline by calling ht_init with command line special argument:
const char* args[] = {"your-app", "--ht-global-timeline-buffer-size", "4096"};
ht_init(sizeof(args)/sizeof(args[0]), (char**)argv);

Feel free to re-open the ticket if there's anything else you need for this feature, or open a new issue if you have more feature requests.

Hi @loganek,
Thank you for implementing this. This made our implementation a lot simpler!
Btw, I haven't tested but there might be issue with ht_init(). ht_init() and ht_deinit() seems to allow us to call multiple times. What happens if I do,
const char* args[] = {"your-app", "--ht-global-timeline-buffer-size", "0"}; ht_init(sizeof(args)/sizeof(args[0]), (char**)args);
then some other module in the system do this?
ht_init(0, nullptr);
Do we still get global timeline with buffer size 0, or something default?

@ftanuma
buffer size is set only if --ht-global-timeline-buffer-size flag is specified, so if your first call of ht_init specifies buffer size parameter (e.g. buffer_size=X), and the second call does not, the buffer size remains unchanged (i.e. it will still be X).
One thing to keep in mind is that this setting only affects new instances of global timeline, so if you already have an instance of global timeline in any of the threads before calling ht_init with buffer-size parameter, those instances will have the old value of buffer size (e.g. the default one).
In general, I highly recommend to have a single call of ht_init in the program; multiple ht_init calls was added only to support some extreme cases, but in 99% of cases you don't need (and probably don't want) to do it :)

@loganek Thank you for clarification.


Use holyjit to generate faster code

We could potentially use holyjit to speedup python bytecode: https://github.com/nbp/holyjit
Figure out how to do this. Maybe wait some time for the project to complete / mature.

Holyjit seems to be no longer maintained, maybe we can use cranelift to generate faster code.
And we need a rfc to design asp for jit in RustPython, PEP 523 and pyston maybe help for the target.

A JIT is currently WIP, see the jit/ directory on master.


yarn start is not showing errors from bsb

Hi guys,
yarn start is not showing errors from bsb, do I need to start another process to watch the errors?
Thank you

Hi! Could you please provide a bit more information? Does it not show on initial runs, on re-compiles, or both?


web: add trace view

Hello @hyu, @maiamcc,
Please review the following commits I made in branch nicks/buildview:
9c11fa394b63cf6c658cc41102c3642952d206d6 (2020-02-20 16:32:53 -0500)
web: add trace view
Code review reminders, by giving a LGTM you attest that:

Commits are adequately tested
Code is easy to understand and conforms to style guides
Incomplete code is marked with TODOs
Code is suitably instrumented with logging and metrics

here's what it looks like:

There's currently no way to get to this in the UI. You have to know the magic URL.
It tries to visualize all the logs that were "caused" by a particular build.
Future directions:

A button to get to this UI
Light affordances to express "historic" builds (with a clear start/end time) vs pending/ongoing builds
breadcrumbs to navigate back to the full log, or to previous/future builds

ping?

Thanks for the link. FWIW that doc doesn't precisely answer my question as to the variable name "trace" in particular (the word "trace" doesn't actually appear in the doc?) but I don't feel strongly. just relevant info for you that that variable name isn't immediately legible, do with that what you will


OpenSSL 1.0.2 update causes unresolved symbols on iOS/armv7 + darwin

OpenSSL has been updated from version 1.0.1h to 1.0.2 in commit 3f34e4bb8c50ea4286cc142e202ccd48be9e8d0b.
Unfortunately, 1.0.2 does currently not compile on armv7 (iOS) due to unresolved symbols in the openssl linking step. This is probably a OpenSSL issue, but I have filed it here just for consistency.
To work around this issue, the above commit can be reverted so that 1.0.1h is used for armv7.
Problem also occurs on OS X.

Can you paste the error messages, plus some lines above?

I hit what might be this problem on OS X (bunch of undefined symbols in the linking step) -- wiping out the source directory and rebuilding fixed it.

I'm seeing this on armv7s - https://gist.githubusercontent.com/ford-prefect/0ede4650aa86e1807363/raw/8bf46b90c08689ce3f09700ec365140813bdcbe0/openssl-compile.log

The error messages are identical to those posted by ford-prefect.

I've got a fix for this at https://github.com/nirbheek/cerbero/pull/12 -- not merging it directly because I'd like to make sure the openssl patch looks okay to push upstream as well

Update: problem also occurs on OS X.

This is fixed in the Cerbero build thanks to @ford-prefect's patch.

I'm getting OpenSSL build issues again after updating yesterday. So are others: https://github.com/EricssonResearch/openwebrtc/issues/233#issuecomment-83256448 I checked the config.log and it showed that the check for SSL_library_init failed due to unresolved symbols. Are we really sure it is linking against the correct OpenSSL?

The cause: We're no longer using the pkgconfig patch, and the autoconf just does -lssl (and not -lcrypto). On static builds, -lcrypto is not pulled by dependency, and that's why autoconf fails.
https://github.com/nirbheek/cerbero/commit/5eae63059643751862534a7a1053129245c001e2 should fix this by removing OpenSSL dependency entirely.

@superdump, could you test this and see if the problem has gone away?

I rebuilt on my laptop just now and it seems to be fine. @ijsf do you still see this or is this OK to close?

@superdump, unfortunately this is still happening on my system. Log: https://gist.github.com/ijsf/65fc28c9fc01c9559f3b
Not sure why this is happening.

@ijsf do you still see this or can we close it?

Reopened as this is still not fixed on OS X...

Does building from scratch work?

Strangely enough the problem seems to have fixed itself after a ./cerbero-uninstalled wipe. Apparently removal of the sources directory is not enough.

Still having issues, I've narrowed it down to the following:
./cerbero-uninstalled -c config/darwin-x86_64.config buildone openssl fails at building OpenSSL.
./cerbero-uninstalled buildone openssl succeeds at building OpenSSL.


Tweaking to behave a little more like an image gallery

Firstly, thanks for what looks to be an awesome package. It looks really well designed and implemented.
This is probably more of a question than a feature request... my application is more of an "image gallery" than a "story viewer", but your implementation looks super flexible and has a lot of the features I think I am likely to need (eg. playing videos and showing cached images and swiping between them).
I've done a very quick POC using AdvStory.player() and it was pretty simple to get me about80% of the way there.
A few challenges I see in re-purposing advstory as a more general-purpose image gallery are:

Hiding the progress indicators. Not sure if there's a good way to hide them totally... setting valueColor and backgroundColor to transparent seems to work but not sure if there's a better way
Stopping the timed advancement to the next StoryContent. I saw another issue talking about this... and possibly using the interceptor to reset it. I wonder whether I'm just going to be constantly "fighting" advstory by doing this though.
I'd like my users to be able to double-tap/pinch to zoom. Again, I saw another issue where I could possibly add a gesture detector. Just wondering whether using an interceptor might be a better way to do it.

I'm happy to fork and add my own custom logic, but I'd prefer to use the built-in features if I can. However, if you think that trying to use advstory in this way is a terrible idea, I'd also be keen to know that before I get too far down the investigation path.

@edwardaux Hey did you end up forking or doing anything?  I ended up going with a forked version of https://pub.dev/packages/interactiveviewer_gallery ... that package mostly does what I need and I just tweaked a few little things to make it work how I need it to.

Oh cool that's one package I have not seen. Does it handle preloading and caching? Unlimited content?
What did you end up tweaking?
Thanks

It has been a while since I looked into it... I'm pretty sure it doesn't deal with caching because it just takes a builder that returns a widget - which is kind of nice, because it means I can sometimes embed an image and sometimes a video.
I'm using cached_network_image in combination with flutter_cache_manager under the covers  to manage my own caching. I haven't bothered doing any preloading yet... I just rely on it being in the cache or the user sees a spinner while I go fetch it.
TBH, I can't really remember exactly what I tweaked. From memory, I found a gist somewhere where someone had done some tweaks to cater for the situation where double-tapping zooms, but then when you pan left/right, when you get to the "edge", it should then scroll into the next item. From memory(?), this package doesn't do that quite right.
What I should have done is fork it and then applied the gist that I found... but I was in a rush, so I ended up just copying the code from the gist. So, now I'm in the position where I can't find the original gist and don't have a local copy of the original package to compare it to.

Got it thanks for explaining :)


AdoptOpenJDK: fetching fails for deprecated api v2 => v3 should be used instead

SUMMARY
For some time the API for AdoptOpenJDK has been deprecated in the version v2. The v3 should be used instead.
Some calls for JDK 8 are not working anymore with v2.
ISSUE TYPE

Bug Report

I already created a PR for this: #115

Thank you for investigating and providing a fix for this issue @lask79 !
I've got a few deployments blocked because of this.

Hi, it looks like the proposed change was not enough. Please check and apply #118


available datasets of 'era5 land' do not include the soil moisture and tempearture data needed for the initial condition

In the above figure, we see that the soil moisture/temperature data as needed for initial condition or 'soil_initial' are not available in zampy?

Duplicate of #47
Will be fixed by #53, but the CDS has issues so testing/downloading is taking a long time.


Need to implement unique folder/chat/prompt names validation and migration

We want to have unique folder/chat/prompt names on root level or inside parent folder.
What should be done:

[x] need to rename existing duplication names during migration to API storage (add postfix) - done in #265
[x] need to add validation during rename: unique name in current folder, not allow empty names for chats, prompts, folders
[x] need to add validation during drag & drop: unique name in desctination folder
[x] not allow to use incorrect symbols in names (notAllowedSymbols). Pay attention on case when we autorename chat with first message(need to remove notAllowedSymbols, see also #592 )
[x] unique names for replay and playback (add postfix if need - see getNextDefaultName method)
[x] implement folder name limitation - 160 symbols (need to confirm, API storage key has limitation 1024 symbols (starting with entity type prefix i.e. from /<entity_type>/<bucket>/<path>)

Additionally:

[x] generate id for entites(see getPathToFolderById + generateConversationId) during import and regenerate folderId (see #640 )

Verified on UAT server but it's needed to created proper test cases to pass them to Automation team


buildFinished callbacks may fire before all tasks have completed in a composite build

There is some back story @ https://github.com/gradle/gradle-private/issues/916#issuecomment-355159245 involving a non deterministic test that surfaced this problem.
Expected Behavior
buildFinished callbacks registered with any build of a composite should not fire until all tasks of all builds have completed.
Current Behavior
The buildFinished callbacks (and probably other similar lifecycle events) may fire before all builds have actually finished.

Fixed by 2b041c059dc0a9d50ce6ab649707740e29442c01


Cannot destructure property 'disableWayfinding' of 'Je(...)' as it is undefined.

TypeError: Cannot destructure property 'disableWayfinding' of 'Je(...)' as it is undefined.
    at XN (https://rovnys.cataphract.us/apps/groups/assets/index.8f9ec6e5.js:48:303982)
    at Kl (https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:19:52884)
    at Ka (https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:19:62361)
    at mf (https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:23:9604)
    at pf (https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:23:947)
    at yg (https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:23:875)
    at rn (https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:23:730)
    at sl (https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:21:10884)
    at https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:19:38716
    at e.unstable_runWithPriority (https://rovnys.cataphract.us/apps/groups/assets/react-beautiful-dnd.fde4d763.js:8:3811)

Duplicate of https://github.com/tloncorp/landscape-apps/issues/2331


[SPARK-45013][TEST] Flaky Test with NPE: track allocated resources by taskId

What changes were proposed in this pull request?

This PR ensures the runningTasks to be updated before subsequent tasks causing NPE
Why are the changes needed?

fix flakey tests
Does this PR introduce any user-facing change?

no
How was this patch tested?

It shall fix
- track allocated resources by taskId *** FAILED *** (36 milliseconds)
[info]   java.lang.NullPointerException: Cannot invoke "org.apache.spark.executor.Executor$TaskRunner.taskDescription()" because the return value of "java.util.concurrent.ConcurrentHashMap.get(Object)" is null
[info]   at org.apache.spark.executor.CoarseGrainedExecutorBackend.statusUpdate(CoarseGrainedExecutorBackend.scala:275)
[info]   at org.apache.spark.executor.CoarseGrainedExecutorBackendSuite.$anonfun$new$22(CoarseGrainedExecutorBackendSuite.scala:351)
[info]

Was this patch authored or co-authored using generative AI tooling?

no

I verified manually.
[info] CoarseGrainedExecutorBackendSuite:
[info] - parsing no resources (468 milliseconds)
[info] - parsing one resource (27 milliseconds)
[info] - parsing multiple resources resource profile (11 milliseconds)
[info] - parsing multiple resources (9 milliseconds)
[info] - error checking parsing resources and executor and task configs (18 milliseconds)
[info] - executor resource found less than required resource profile (9 milliseconds)
[info] - executor resource found less than required (8 milliseconds)
[info] - use resource discovery (25 milliseconds)
[info] - use resource discovery and allocated file option with resource profile (19 milliseconds)
[info] - use resource discovery and allocated file option (18 milliseconds)
[info] - track allocated resources by taskId (252 milliseconds)
[info] - SPARK-24203 when bindAddress is not set, it defaults to hostname (1 millisecond)
[info] - SPARK-24203 when bindAddress is different, it does not default to hostname (1 millisecond)
[info] - Tasks launched should always be cancelled. (1 second, 358 milliseconds)
[info] - Tasks not launched should always be cancelled. (175 milliseconds)
[info] - SPARK-40320 Executor should exit when initialization failed for fatal error (2 seconds, 472 milliseconds)
[info] Run completed in 5 seconds, 660 milliseconds.
[info] Total number of tests run: 16
[info] Suites: completed 1, aborted 0
[info] Tests: succeeded 16, failed 0, canceled 0, ignored 0, pending 0
[info] All tests passed.
[success] Total time: 71 s (01:11), completed Nov 6, 2023, 10:52:27 PM

According to the Affected Version of JIRA, I landed to master branch only.
Please feel free to backport this if you need.

Thanks @dongjoon-hyun

@yaooqinn Thank you for the fix.

Thanks @yaooqinn !!!


Remove all websites except the ones I really want

So assume the desired state of my server is to have two web-sites, Site-A and Site-B, I only want these but no others. Another administrator has setup Site-C and MyPrivateWebSite
I don't know the names of these sites, but I want them gone.
I'm just starting with DSC, so I'm not sure how this can be handled if you have to specify a name for a resource.
I guess this problem applies to many other resources as well. Is there a recommended way to handle this?

IMO opinion most desired state configuration software (Chef, Puppet, DSC etc) don't really support this use case. The configuration is only aware of the state you've given it. So in your example it'd only be aware of Site-A and Site-B and would have no concept of the other sites. By the design you'd have to explicitly disallow those sites. Though I could be totally wrong. :grin:

You would have to explicitly setup your DSC configuration to say Ensure: Absent for the specific websites and app pools that you do not wish to have present. There isn't a way to do a "Search for all sites that exist which don't match Site-A and Site-B" short of scripting it outside of DSC, or creating a custom catch-all DSC resource call (which should not be used, in my opinion).
In Chef I know you technically could run a script-block in a recipe that checks to see if anything is returned from a PowerShell query that is searching for non-matching sites, but that is bad practice.
You have to make sure that any changes being done to an environment are being done via your configuration management solution, as DSC will only be aware of what it has been directed to target. If you are worried others are logging on and making websites that they should not, you may need to evaluate changes to the way change management is done and modifying the Administrative permissions that people have on those target nodes.

@ScriptAutomate - I understand DSC much better now and agree with everything you said.
Yes it would be nice to have a very strictly managed environment where admin always follow the rules, but in the real world, that's not how it works.
On my servers as part of my monitoring scripts I check for the number of users, installed features running websites etc. and generate an alert if a non-desired number has been found.
I initially thought, it would be nice if these checks would be part of DSC and would be corrected automatically, but that could break things.
I now think its better to keep this alert system parallel with DSC and then manually look into any changes and potentially roll them back or add them to the DSC configuration.


notices in Chrome about autocomplete

I'm seeing the following in the Chrome developer console when viewing the example page.

Those are easy enough to fix, but it's not obvious how to fix the notice related to the card details (number/expiration/cvc) which are generated by elements.create().

Hi @techieshark
Thanks for reporting this! (what browser/setting is necessary to see those warnings?)
Like you said, this seems easy to fix. I'll create a PR.

it's not obvious how to fix the notice related to the card details

The fields created with elements.create() should already have the correct autofill attributes. Your screenshot also only includes warnings about the other fields. Can you explain what you mean here?

thanks


how does extract center point from partial point cloud for application?

Thank you for your amazing stuff. I trained my custom data. And I have some problems.
I understand that before training point cloud completion, it needs to find center point of complete point cloud. And then make partial point cloud to train.
In the terms of application, I hardly extract center point of complet point cloud, cuz I get partial data from depth camera. Here is the example.

Like above picture, center point is moved by missing point cloud.
I have these idea.

centering partial point cloud not complete point cloud during training.
augmentation of translation center point of complete point cloud.

I'm not sure it will works. I should do experiments.
Could you share your insight, please?
I found similiar issue below.
https://github.com/yuxumin/PoinTr/issues/61

Hey there, @jinyoung-kim-dinnercoding!
Regarding the adoption of the point completion network into other applications, I believe that the biggest challenge lies in its heavy dependence on the input data distribution and normalization. When dealing with partial point clouds, we often need to adjust them to resemble a sample within the training dataset.
However, what if we cannot achieve this similarity? For instance, we may not know the center, which is a common scenario. In my view, idea 1 and idea 2 are essentially the same - both seek to broaden and remove constraints from the input distribution. Incorporating some prior knowledge, such as category, which can be encode as other input for the network, could prove useful in making the approach more practical.

Thank you for sharing your insight!
I will do experiments.


There is QuantizedInstanceNorm operation registered, But I could not find InstanceNorm operation anywhere.

OS: Ubuntu 16.04 64bits
Android Version: 7.1 (Nougat)
NDK Version: android-ndk-r12b
HEXAGON SDK: 3.1
There is QuantizedInstanceNorm operation registered, But I could not find InstanceNorm operation anywhere.
I am not sure why Quantized form is added without its original instance form, Maybe to convert graphs trained using other nets into pb and quantize them. Well this is my assumption.
Could anyone tell how can I get instancenorm operation.
thanks

It has been 14 days with no activity and this issue has an assignee.Please update the label and/or status accordingly.

Nagging Awaiting TensorFlower: It has been 14 days with no activity and the awaiting tensorflower label was assigned. Please update the label and/or status accordingly.

Nagging Awaiting TensorFlower: It has been 14 days with no activity and the awaiting tensorflower label was assigned. Please update the label and/or status accordingly.

Nagging TensorFlower: It has been 14 days with no activity and the awaiting tensorflower label was assigned. Please update the label and/or status accordingly.

There isn't an InstanceNorm operation, rather it seems that it is implemented with other operations: see https://github.com/tensorflow/tensorflow/blob/r1.8/tensorflow/contrib/layers/python/layers/normalization.py#L42


Q: React Toolbar plugin

Are there any plans on adding something similar to https://github.com/facebook/lexical/blob/main/packages/lexical-playground/src/plugins/ToolbarPlugin.jsx to the current list of available plugins?
I have a use case for the above and was curious if this is something being added in the near future before I start to spend the time trying to create my own.

I don't think we want to publish it as it is now because it's very UI dependent so it may not fit well into the design patterns for most apps. It would have to be a more generic compoenent(s) where you can customize the buttons (add, remove, style). For now, I'd say, just copy-paste it and adjust it as it suits best for you.
@fantactuka - Mind sharing your thoughts since you've been exploring this space?

Right, it's unlikely we'll have "official" toolbar rendering (because each app will use their own), instead we can have have a set of utils to build it. Those tools will need to provide data regarding current selection/nodes:

text format (bold, italic, ...)
active block type (paragraph, heading, list, ...)
active block style (left/right aligned, ...)
whether it's a link

Or provide interface to plugins

insert image
run undo/redo

It can also expose methods to update that data (e.g. toggleFormat('italic'), updateBlockType('heading1'), ...). Since it's pure editor logic it will framework-agnostic, but @lexical/react package can include hook wrappers around it to simplify usage for react apps. It can be something like following:
import {
  useSelectedBlockType,
  useSelectedTextFormat,
} from '@lexical/react';

...

function BlockTypeDropdown() {
  const {
    blockType,
    updateBlockType
  } = useSelectedBlockType();

  return <Select value={blockType} onChange={updateBlockType}> ... </Select>
}

function TextFormatButton({ type, label }) {
  const {
    isActive,
    toggleFormat,
  } = useSelectedTextFormat(type);

  return <Button label={label} isActive={isActive} onPress={toggleFormat} />
}

...

function Toolbar() {
  return (
    <BlockTypeDropdown />
    <TextFormatButton type="bold" label="Bold" />
    <TextFormatButton type="italic" label="Italic" />
    ...
  )
}

With this approach all editor specific logic will be encapsulated in those utils, and surfaces will only need to care about rendering part
Hope that helps!

Had another thought on it, it might be better to utilize commands similar as we do for history (UNDO, REDO, CAN_UNDO, CAM_REDO) and app will use those commands to update ui or change editor state

I noticed in the example here there was a lot of if-else handling eg.
    if ($isRangeSelection(selection)) {
      const node = getSelectedNode(selection);
      const parent = node.getParent();
      if ($isLinkNode(parent)) {
        setLinkUrl(parent.getURL());
      } else if ($isLinkNode(node)) {
        setLinkUrl(node.getURL());
      } else {
        setLinkUrl("");
      }
    }

I think, the api in React should more resemble to a state component where we would have a list of states listening hooks isBold, isList, etc... prefilled by the framework. Something like a library-provided list of hooks :
export default function ToolBar(props) {
  const {editor} = props
  const [isBold, setBold] = useState()
  //... other fields
  useEffect( ()=> registerBoldHook({isBold, setBold})

  return (
    <button onClick={setBold(!isBold)}>B</button>
  )}

I mean, it's good to have way to fall back to full control (like ranges, selection control, etc.), but the majority of users will just need a set of default use cases where things "just happen" and users adapt to how it was thought for them.


Heart Disease Classifier Using ECG Scan

Deep Learning CNN Model To Predict Heart Disease Using ECG Scan.
In This Model, The Model is Trained Using The ECG Image Dataset.
The model accuracy is 100%.
I had also added the readme file as well as the dataset and images used.
I had made two .ipynb files:-

first is for understanding purpose.
the second is more efficient.

Deep Learning CNN Model To Predict Heart Disease Using ECG Scan. In This Model, The Model is Trained Using The ECG Image Dataset. The model accuracy is 100%. I had also added the readme file as well as the dataset and images used. I had made two .ipynb files:-

first is for understanding purpose.
the second is more efficient.

Add Issue number

Deep Learning CNN Model To Predict Heart Disease Using ECG Scan. In This Model, The Model is Trained Using The ECG Image Dataset. The model accuracy is 100%. I had also added the readme file as well as the dataset and images used. I had made two .ipynb files:-

first is for understanding purpose.
the second is more efficient.

Hey if it is 100% you can write research on it... otherwise, your model is  overfitted

@Rutikab12
Issue No. : #274

@Niketkumardheeryan
Both the Training Accuracy as well as the Testing Accuracy is 100%,
so I don't think the model is overfit
and for the research paper, I will look into it.

@Rutikab12 Issue No. : #274

Don't comment separately. Mention it in your PR Description.

@Rutikab12
Now Check.

@Rutikab12
Hey
I just want to confirm that
in the leader board, only one PR is mentioned,
and this PR is not mentioned.
Can you just check?

@srajan-kiyotaka okay we we'll into that.
@Niketkumardheeryan

@Niketkumardheeryan
Can you confirm,
It is still not showing on the website.

@Rutikab12
Any Update?

@Niketkumardheeryan
Any Update?


Adding local runner functionality for pytest and adding file existence test case

adding local runner functionality to pytest workflow:

added new workflow 'pytest_local.yaml' to run pytest on a local runner
added environment variables for subject directory and subject id

adding a new test to check for file existence in brainprint output

added new pytest to check if all required files exist in the brainprint output
removed comments from pytest_local.yaml

Notes:

local runner needs to be provisioned on the repository with the necessary environment variables for this workflow to work

@kdiers requesting review

Thanks for updating the tests and creating the runner file. We are still considering to have online / remote tests rather than local tests, so there might be further development. Still merging into the remove-freesurfer branch, and continuing development from there.


Failed to connect to device (Broadlink RM Mini3)

Home Assistant release with the issue:
0.92.1
Last working Home Assistant release (if known):
N/A
Operating environment (Hass.io/Docker/Windows/etc.):
Hass.io
Component/platform:
/components/broadlink/
Description of problem:
I am unable to connect to my Broadlink RM Mini3. The component itself loads correctly, but I get the following error when I call the broadlink.learn service.
2019-04-30 21:12:42 ERROR (MainThread) [homeassistant.components.broadlink] Failed to connect to device
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
switch:
  - platform: broadlink
    host: <IP_ADDRESS>
    mac: 'C8:F7:42:62:8A:37'
    timeout: 30

I've double and triple checked the IP address and MAC address and it seems fine.
Additional information:
The RM Mini 3 works fine when I use the IHC app on my phone. I can ping the IP address fine on my computer.
When I try to use Broadlink Manager, I get the following error too.
Found device : Unknown [<IP_ADDRESS>]
Writing compatible device not detected!

I'm not sure if it's related.
It's possible that the version of RM Mini 3 I have maybe slightly different to most, because I bought mine from Taobao, so the labelling on the bottom of it is in Chinese, while most of the ones I see on YouTube have English labelling. However, I'm not sure whether there is a way to fix it.

I'm also running 0.92.1 and I get the same error every so often, usually after i restart the wifi.
I have 2, and like you i can ping them, connect with their app (and using a python script), but can't control with Home Assistant.
To get them back up and running with the broadlink component i power cycle them and restart Home Assistant.
Up to now, that's always resolved it for me.

I'm experiencing the exact same issue. Even after a reboot of both the RM mini and HASSIO it doesn't work.

I'm experiencing the exact same issue. Even after a reboot of both the RM mini and HASSIO it doesn't work.

Are you using the Chinese Broadlink or the International version?

The Chinese version. Do I need to do anything differently?

The Chinese version. Do I need to do anything differently?

I'm wondering if the international version makes a difference.

+1
my RM Mini 3 arrived 2 days ago
working with Broadlink manager and can learn IR codes.
in HA I get told failed to connect to device.
Something I noticed is that the service says "broadlink.learn"
all of the tuts I have seen online shows the services have the IP in the name.

same issue with HA @ 0.93.1
the service is now broadlink.learn
and requires JSON like
{
"host": "ip"
}
but i'm getting the same error: /components/broadlink/init.py: Failed to connect to device

I'm also having the same issue with 0.93.1 and my Broadlink RM-Mini3 where sending the command broadlink.learn logs out "Failed to connect to device".
However I've put a switch into the configuration YAML and can see the light on the Broadlink flashing when I toggle the switch which shows that it is able to communicate with the RM-Mini3. This would suggest that it's an issue with the broadlink.learn command

Is there any workaround we can use for this? Maybe learn through another piece of software?

Robhofmann you can learn command with broadlink manager (windows exe)
But without the ability to connect to the device I can't send any commands.

I'm also having the same issue with 0.93.1 and my Broadlink RM-Mini3 where sending the command broadlink.learn logs out "Failed to connect to device".
However I've put a switch into the configuration YAML and can see the light on the Broadlink flashing when I toggle the switch which shows that it is able to communicate with the RM-Mini3. This would suggest that it's an issue with the broadlink.learn command

@wzwick this comment is saying that the send commands do work. I havent got the change to try this yet. I'll try this asap.

For me I can neither learn nor send.
Please let me know anything you find out.

I'm also having the same issue with 0.93.1 and my Broadlink RM-Mini3 where sending the command broadlink.learn logs out "Failed to connect to device".
However I've put a switch into the configuration YAML and can see the light on the Broadlink flashing when I toggle the switch which shows that it is able to communicate with the RM-Mini3. This would suggest that it's an issue with the broadlink.learn command

@wzwick this comment is saying that the send commands do work. I havent got the change to try this yet. I'll try this asap.

I read that comment as it saying that while they cant send commands by adding a 'hacky' switch they can prove there is communication to the device.

I added a switch (as described in the documentation https://www.home-assistant.io/components/broadlink/) with a bogus "command_on" and "command_off" base64 string which caused the LED to flash on the Broadlink when toggled. This suggested to me that there was communication between the Broadlink and homeassistant.

I just tested it. Using the broadlink manager to learn the commands, I got it to work.
The sending of the commands works like a charm.
Here is my config:

platform: broadlink
host: <IP_ADDRESS>
mac: 'a8:f7:f2:6e:fe:81'
type: 'rm_mini'
friendly_name: 'Broadlink RM 3 Mini Bedroom'
switches:
tv_lift_bedroom:
friendly_name: TV Lift
command_on: 'JgAsAQADiJ6anpkABOwAA4yemp6ZAAdhAAOMnpmemgAE6wADjZ6Zn5kAB2AAA4yemZ+ZAATrAAOOnZqemQAHXwADjp2anpkABOsAA4+dmZ6aAAdfAAOOnZqemQAE6wADjZ6anpkAB18AA4+dmaGXAATrAAONnpmemgAHXwADjZ6anpoABOoAA4+cmp6ZAAdhAAOMn5iemgAE7AADjJ6ZnpoAB2EAA4yemZ6ZAATwAAOLnpeemQAHYQADjJ6ZnpoABOsAA46dmZ6aAAdfAAONnpqemQAE7QADjpyZnpkAB2AAA46dmZ6aAATrAAOPnJqdmgAHYAADjpyanpkABOwAA46cmp6ZAAdhAAOMnpmemgAE7AADjJ6anpkAB2AAA4yemp6ZAATsAAONnpmemQANBQAAAAAAAAAAAAAAAA=='
command_off: 'JgAwAAAEH5+YAAE/mQADqwAEJp2YAAE/mQAGIQAEJJ6YAAFAmAADrAAEI5+ZAAE/mAANBQAAAAAAAAAA=='

PS. Don't forget to add the "==" at the end of the commands. This got me searching for a while.

@RobHofmann Brilliant
with your config I have it working. thanks so much.
how would I send these commands as a script?

Thats a really good question. This is my next step to figure out :).
I'll post back when I know more. With a bit of luck I can spend some time on this later today.

First i created an input_boolean which keeps track of the state of the TV Lift:
bedroom_tv_lift_is_down:
  name: Bedroom TV Lift is down
  initial: off

Next i created 2 scripts which set the input_boolean and do the sending actions to the IR receiver. One script is with a delay (because the lift goes down for 36,5s then has to stop).
tv_lift_down:
  alias: TV Lift down
  sequence:
  - service: input_boolean.turn_on
    data:
      entity_id: input_boolean.bedroom_tv_lift_is_down
  - service: broadlink.send
    data:
      host: <IP_ADDRESS>
      packet:
        - "JgAoAAAEIQAB3ZgABEwABCQAAd+ZAAa/AAQkAAHfmAAETAAEIwAB4JkADQU=="
  - delay:
      milliseconds: 36500
  - service: broadlink.send
    data:
      host: <IP_ADDRESS>
      packet:
        - "JgAoAAADiJ6Yn5kABOsAA46emJ+YAAdhAAOLoJegmAAE7QADjJ+Yn5kADQU=="

tv_lift_up:
  alias: TV Lift up
  sequence:
  - service: input_boolean.turn_off
    data:
      entity_id: input_boolean.bedroom_tv_lift_is_down
  - service: broadlink.send
    data:
      host: <IP_ADDRESS>
      packet:
        - "JgAwAAAEHqGWAAFBlwADrgAEIaGWAAFClgAGIgAEIqGWAAFBlwADrQAEIqGWAAFBlwANBQAAAAAAAAAA=="

Finally i created a switch using the template switch:
- platform: template
  switches:
    bedroom_tv_lift:
      friendly_name: "Bedroom TV Lift"
      value_template: '{{ is_state("input_boolean.bedroom_tv_lift_is_down", "on") }}'
      turn_on:
        service: script.tv_lift_down
      turn_off:
        service: script.tv_lift_up

Finally i added the switch to my ui-lovelace:
  - icon: mdi:home-floor-1
    title: 1st Floor
    id: first_floor
    cards:
      - type: entities
        title: Bedroom
        entities:
          - switch.bedroom_tv_lift

And as a bonus i decided to add a nice icon to my switch in customize.yaml
switch.bedroom_tv_lift:
  icon: mdi:elevator

Good luck!
PS. Of course i stripped all other non related config from this example. If something is missing or not working, don't hesitate to reply here. Also i translated it from Dutch, so there might be some mistakes :).

For others reading this to try make sesne of it all here is the break down to its simplest form:
In order to have the broadlink.send and broadlink.learn functions you need to add the following to your configuration.yaml file
switch:
  - platform: broadlink
    host: 192.168.0.x
    mac: 'C8:F7:42:xx:xx:xx'

This is the minimum required to get the broadlink unit configured on HA
you can add other info like unit type and friendly name if you want.
To learn commands it is easiest to use a windows program called "Broadlink Manager" (you can google it)
Once you have learnt commands you can add to the original config and add switches such as TV on and off, please note that having == on the end of the command is vital to it working
switch
  - platform: broadlink
    host: 192.168.0.x
    mac: 'C8:F7:42:xx:xx:xx'
    switches:
      lounge_tv:
        friendly_name: Lounge TV
        command_on: 'JgCSAAABIpIWEhYRFhIWNRsx....(truncated).....FhIWNRYSFjUWEhYRFzUW=='
        command_off: 'JgCSAAABJo4WEhYRFhIWERY....(truncated).....hsMFjYWERYSFhEXERYSGg=='

If you dont want switches but prefer to use a list of commands then add the following to your scripts.yaml file:
'lounge_ac_on':
  alias: Lounge AC On
  sequence:
  - service: broadlink.send
    data:
      host: 192.168.0.x
      packet:
        - "JgCSAWNRc1FhIWAABI....(truncated)....FhEWEhYRFxEWNWERcRFjUXzUWAA0FAAAAAAAA=="

you can also combine commands, to change source on my TV i need to press 'input', 'right', 'ok'
this can be lumped together to make things easier:
'tv_change_source':
  alias: Change TV Source
  sequence:
    - service: broadlink.send
      data:
        host: 192.168.0.x
        packet:
          - "JgBQAAABH5MTEhISFw4TEhISExISEhMSEjcTNhM2EzYTNhM3FQ8TNhMSEzYTEhISEzYTEhMSEhITNhMSEzYWMxMSEjcSNxM2EwAFPwABJkkRAA0FAAAAAAAAAAA="
    - delay:
        milliseconds: 300
    - service: broadlink.send
      data:
        host: 192.168.0.x
        packet:
          - "JgBQAAABIJMTEhISExISEhMSExISEhMSEjcSNxM2EzYTNhM3EhITNhMSEhMSEhM2EzYTEhMSEhITNhM4ETcYDBMSEjcSNxM2FwAFOwABKUYSAA0FAAAAAAAAAAA="
    - delay:
        milliseconds: 300
    - service: broadlink.send
      data:
        host: 192.168.0.x
        packet:
          - "JgBQAAABIZMTEhMSEhITEhISExISExYOEzYTNhM2FzMSNxI3ExISNxYzEhMSNxISEzYTEhMSEhIXDhI3ExETNxISEzYXMhM3EgAFQAABJEoTAA0FAAAAAAAAAAA="

Massive thanks to @RobHofmann for working out the nitty gritty of it all

Thanks for the clarification! Looks great. I hope people are helped by this :).

I couldn't get it working.
I used this to learn commands
https://sourceforge.net/projects/broadlink-manager/

Same. I used the broadlink manager to get the Base64 strings which I used in my send commands.
broadlink.lean doesn't work for me either ;)

I just attempted to.set up my RM mini 3 tonight.  I was able to learn a total of 1 command with broadlink.learn, after which homeassistant began serving the same Failed to Connect to device described here.
Same symptoms as the others here: device still works with the app; network is fine; config didn't change; reboots and restarts don't help.
Just seems as if broadlink.learn stopped working.

@johnruemker have you tried broadlink manager, link is a few comments up.
It's easier to use then broadlink.learn
Everyone had given up on broadlink.learn

Thanks for the suggestion.  Broadlink manager isn't an option for me right now.  I may ultimately have to pursue that to get this setup going, but for now I need to see if I can get broadlink.learn functioning.

To investigate further, I've been attempting to use the broadlink package directly (https://github.com/mjg59/python-broadlink) to interact with my RM mini 3.
I haven't yet been able to learn any commands, but I can at least show that the auth() function works against my device.
I believe auth() is what would be failing within homeassistant's broadlink component to result in the "Failed to connect to device" error, so this result leads me to believe the problem we're seeing must be in the homeassistant broadlink component and not on the broadlink side.
>>> import broadlink
>>> device = broadlink.rm(('192.168.X.X', 80), 'c8:f7:42:YY:YY:YY', None)
>>> device.auth()
True
>>> device.enter_learning()
>>> device.check_data()
>>> device.check_data()
>>> device.check_data()
>>>

If anyone can figure out the sequence to result in this learning a command, it would serve as a simple workaround to the homeassistant learning problem without needing to use Broadcom Manager.  As far as I can tell the above commands are the only thing that the broadlink component does for an RM-type device to learn to a command, but its definitely possible I'm overlooking something since I only just started reviewing this code for the first time this morning.

Same issue on broadlink.learn
Failed to connect to device

Same issue here, latest version of HA on Hassio, trying to talk to a RM2 Pro Plus. I managed to get it to work once and learn a single command, after that it never worked again, even after spamming the call service button several hundred times. No idea why mine worked once but I can also confirm the service is otherwise totally broken.

I'm always getting "Failed to connect to device" when I try to use broadlink.learn service with my RM mini 3.
Also, Broadlink Manager in windows is not able to detect my device.
No problem when I send packets, so my RM mini is working, also using e-Control app, but to get IR codes using that app is really annoying and time-consuming! Did you find any solution?

All solutions point to broadlink manager to learn commands. Strange it isn't working for you.
I assume you set the IP correctly in the app?
No idea man.

@Ligio have you tried to switch off windows firewall when you scan with Broadlink manager?
In my case was unreachable until I switched off firewall

I bought one more RM Mini 3 device and with this one, I can connect without any change to my current setup. The difference between the old one is the firmware version:

firmware 44057 (connection error)
firmware 55 (no problem at all!)
Unfortunately, when I try to check and update the oldest firmware, "ihc for EU" android app says that firmware is already updated and I can't upgrade it to version 55, I don't know why!!!
Is there another way to upgrade the firmware? Or maybe one of my RM Mini 3 is an old version and I can't upgrade it?

I just bought a RM Mini 3 device that came with firmware 44057 and I am getting the same connection error in HA. In Broadlink Manger the device is detected, but no IR commands can be learned (nothing returns, although the light does turn on the device when going into learning mode). In the IHC app on Android no firmware update is available. Is it possible that there are different variants of the device available, and firmware 55 works while 44057 does not? The manual that came with the device references the IHC app (versus the e-control app) so I assume the one I have with firmware 44057 is newer, but I cannot find any dates or other information to support that assumption on the device or the rest of the packaging. For those having this same issue, what firmware does your device have?

+1 here
exactly same issue.
Please help.

I just bought a RM Mini 3 device that came with firmware 44057 and I am getting the same connection error in HA. In Broadlink Manger the device is detected, but no IR commands can be learned (nothing returns, although the light does turn on the device when going into learning mode). In the IHC app on Android no firmware update is available. Is it possible that there are different variants of the device available, and firmware 55 works while 44057 does not? The manual that came with the device references the IHC app (versus the e-control app) so I assume the one I have with firmware 44057 is newer, but I cannot find any dates or other information to support that assumption on the device or the rest of the packaging. For those having this same issue, what firmware does your device have?

I faced the same problem with the unit with FW Version44057, talking to the broadlink China customer support, they quoted there are international version of FW and local China market FW which has no international access.  Unit was purchased from taobao equivalent (China seller)
I can't use Google home to do voice control.. Only Wi-Fi local access is working..
In contrast, I have another so called international version that I acquired through local seller is working correctly (it has been upgraded to v55).

My broadlink rm mini 3 also has the same problem, it can only connect locally. It is also on firmware ver. 44057.
Does anyone know how to flash the firmware to v55?

I am having the same problem with latest Home Assistant v0.95.4...

My broadlink rm mini 3 also has the same problem, it can only connect locally. It is also on firmware ver. 44057.
Does anyone know how to flash the firmware to v55?

Same problem here.
I think you can get the v55 from here:
http://fwversions.ibroadlink.com/firmware/download/3727/55.bin
but have no idea of how to upload to try.

The update can be done from the eControl app. In device info there is "Firmware update", if you then click on advanced you can give it the URL to flash whatever you want. I didn't try it as I managed to hack a homekit bridge library to get the codes in a somewhat fast and easy way, and have to warn you that I found an user on Reddit asking for help because he tried to update an rm pro (I believe from the same app, he talks about a generic broadlink app) and bricked the device, so it may be risky...

I tried the Link, unfortunately this returns a 404

The update can be done from the eControl app. In device info there is "Firmware update", if you then click on advanced you can give it the URL to flash whatever you want. I didn't try it as I managed to hack a homekit bridge library to get the codes in a somewhat fast and easy way, and have to warn you that I found an user on Reddit asking for help because he tried to update an rm pro (I believe from the same app, he talks about a generic broadlink app) and bricked the device, so it may be risky...

I tried to upload it using eControl but it just says upload successful but the firmware doesn't change.

I tried the Link, unfortunately this returns a 404

link was wrong. It should be:
http://fwversions.ibroadlink.com/firmware/download/10039/55.bin

The update can be done from the eControl app. In device info there is "Firmware update", if you then click on advanced you can give it the URL to flash whatever you want. I didn't try it as I managed to hack a homekit bridge library to get the codes in a somewhat fast and easy way, and have to warn you that I found an user on Reddit asking for help because he tried to update an rm pro (I believe from the same app, he talks about a generic broadlink app) and bricked the device, so it may be risky...

I tried to upload it using eControl but it just says upload successful but the firmware doesn't change.

I tried the Link, unfortunately this returns a 404

link was wrong. It should be:
http://fwversions.ibroadlink.com/firmware/download/10039/55.bin

Bravo ! Trying to get support from broadlink China is really vomiting blood.
I just wondered why all recent purchased devices failed to get firmware update.
I have 2 RM mini which stuck with this v44057.
One unit used to get offline when my phone is not with house  Wi-Fi  or on LTE, recently automatically get back remote access capacity but Google home still can't access to it.
The other unit is stuck with this v44057 but no functional issue of Google home access, I am not so concern on this..
Yet to play with home assistant

Just tried to update with that link, same as you... Update successful but still same fw version

For me it actually says the update failed with that new link. At least the link seems to be right.

As a follow-up, I did some investigating using the python-broadlink module and it appears that the issue is the encoding of the response from the device when learning a command. My device on the v44057 firmware sends commands correctly, and when using the learning function data is returned from the device when I hit a key on my remote. That response just cannot be decoded properly by the software as it appears to be formatted differently from what is expected. Unfortunately figuring out how to decode the response is beyond my skill level, but hopefully this helps narrow down the issue.

I have the same problem with RM Mini 3 (v44057), with the same config, RM Pro Plus works fine.
Maybe the problem comes from the command encoding of RM Mini 3 is different from international version, so python module cannot decode/encode

As a follow-up, I did some investigating using the python-broadlink module and it appears that the issue is the encoding of the response from the device when learning a command. My device on the v44057 firmware sends commands correctly, and when using the learning function data is returned from the device when I hit a key on my remote. That response just cannot be decoded properly by the software as it appears to be formatted differently from what is expected. Unfortunately figuring out how to decode the response is beyond my skill level, but hopefully this helps narrow down the issue.

Thanks, this does help. I guess I'll take a look at the library and see what I can do ;)

I opened a PR on the library (mjg59/python-broadlink#255). It seems that the affected edits were made to fix other issues, basically to detect a failed auth, but our rmmini seems to accept the auth and still give out a response without auth key. We'll see how the author wants to handle it, but at least we traced the problem :)

Flashing firmware could be done using  Broadlink "e-control" app. Ask device info--> then firmware update --> advanced --> provide for the link.
Sadly for me doesn't work for me on iOS

I found a solution to get the RM3 Link learn command to work. I was trying to run this command, and it wouldn't work:
./broadlink_cli --type 0x27c2 --host 192.168.1.X --mac abcdefg --learn

Then I found this issue on the python-broadlink repo: https://github.com/mjg59/python-broadlink/issues/253
Running pip install cryptography in the venv for the local repo suddenly made the command work. So it basically seems like it's just missing a dependency.

I already had the crypotgraphy lib installed, but I did discover that this is almost certainly caused by v0.11.1 of https://github.com/mjg59/python-broadlink
I was able to find the packets to turn off and on my TV on another HA forum post, and tested that they work through HA without having been learned through broadlink.learn service, which proved that HA could communicate with the device via broadlink.send.
The learn the rest of my IR codes, I downloaded v0.10 of https://github.com/mjg59/python-broadlink (pip3 install broadlink==0.10), and ran the following sequence of command in a python shell:
import broadlink
from base64 import b64encode

devices = broadlink.discover(timeout=5)
devices[0].auth()

devices[0].enter_learning()
# point remote at device to learn code, light with turn off
packet = devices[0].check_data()
b64encode(packet).decode('utf8')

try this:
edit components/broadlink/__init__.py
#auth = await hass.async_add_executor_job(device.auth)
 auth = device.auth
 My tests worked fine

try this: edit components/broadlink/__init__.py #auth = await hass.async_add_executor_job(device.auth)  auth = device.auth  My tests worked fine

Excellent finding!  This also allowed the learn command to work for me!
FWIW, neither of the previous two comments here helped the problem on my side.  I already had cryptography installed, and updating it or downgrading it did not do anything.

I recently bumped to latest and now I got this:
Oct 06 01:11:47 sebbapi hass[1209]: Traceback (most recent call last):
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/entity_platform.py", line 150, in _async_setup_platform
Oct 06 01:11:47 sebbapi hass[1209]:     await asyncio.wait_for(asyncio.shield(task), SLOW_SETUP_MAX_WAIT)
Oct 06 01:11:47 sebbapi hass[1209]:   File "/usr/local/lib/python3.7/asyncio/tasks.py", line 442, in wait_for
Oct 06 01:11:47 sebbapi hass[1209]:     return fut.result()
Oct 06 01:11:47 sebbapi hass[1209]:   File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
Oct 06 01:11:47 sebbapi hass[1209]:     result = self.fn(*self.args, **self.kwargs)
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/broadlink/switch.py", line 111, in setup_platform
Oct 06 01:11:47 sebbapi hass[1209]:     broadlink_device = broadlink.rm((ip_addr, 80), mac_addr, None)
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/broadlink/__init__.py", line 529, in __init__
Oct 06 01:11:47 sebbapi hass[1209]:     device.__init__(self, host, mac, devtype)
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/broadlink/__init__.py", line 171, in __init__
Oct 06 01:11:47 sebbapi hass[1209]:     self.update_aes(key)
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/broadlink/__init__.py", line 184, in update_aes_crypto
Oct 06 01:11:47 sebbapi hass[1209]:     backend=default_backend())
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/cryptography/hazmat/backends/__init__.py", line 15, in default_backend
Oct 06 01:11:47 sebbapi hass[1209]:     from cryptography.hazmat.backends.openssl.backend import backend
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/cryptography/hazmat/backends/openssl/__init__.py", line 7, in <module>
Oct 06 01:11:47 sebbapi hass[1209]:     from cryptography.hazmat.backends.openssl.backend import backend
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/cryptography/hazmat/backends/openssl/backend.py", line 74, in <module>
Oct 06 01:11:47 sebbapi hass[1209]:     from cryptography.hazmat.bindings.openssl import binding
Oct 06 01:11:47 sebbapi hass[1209]:   File "/srv/homeassistant/lib/python3.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 15, in <module>
Oct 06 01:11:47 sebbapi hass[1209]:     from cryptography.hazmat.bindings._openssl import ffi, lib
Oct 06 01:11:47 sebbapi hass[1209]: ImportError: /usr/lib/arm-linux-gnueabihf/libssl.so.1.1: version `OPENSSL_1_1_1' not found (required by /srv/homeassistant/lib/python3.7/site-packages/cryptography/hazmat/bindings/_openssl.abi3.so)

I manually compiled and installed python3.7 and openssl-1.1.1 taking several hours...
-rw-r--r-- 1 root root 332080 Sep 27 21:46 /usr/lib/arm-linux-gnueabihf/libssl.so.1.1
env:
Raspberry pi 1B
Raspbian GNU/Linux 9
4.19.66+ # 1253
Hass 0.99.3
Maybe I should consider to open a new dedicated issue.

When will this issue be fixed?

Having installed home assistant in virtualenv, there is no
auth = await hass.async_add_executor_job(device.auth)
in components/broadlink/__init__.py
There is an auth function but nothing like the above in it...
The Failed to connect still here...
(the broadlink lib version is 0.11.1)

@emnik I'm using Home Assistant inside Docker.
After jump to /bin/bash of Home Assistant (docker exec -it home-assistant /bin/bash), my __init__.py file is in:
/usr/src/homeassistant/homeassistant/components/broadlink/__init__.py

I have this issue too, but I understood that is possible to learn commands wiht Broadlink Manager, so now I use the broadlink.send service instead with the raw packets

Edit edit components/broadlink/__init__.py worked for me.
Hassio on pi.
Using this link to access to container source and modify by
vi /usr/src/homeassistant/homeassistant/components/broadlink/__init__.py

Edit edit components/broadlink/__init__.py worked for me.
Hassio on pi.
Using this link to access to container source and modify by
vi /usr/src/homeassistant/homeassistant/components/broadlink/__init__.py

Can ypu please explain me how can I do it, with Hassio?
Thanks a lot in advance!!!

Edit edit components/broadlink/__init__.py worked for me.
Hassio on pi.
Using this link to access to container source and modify by
vi /usr/src/homeassistant/homeassistant/components/broadlink/__init__.py

Can ypu please explain me how can I do it, with Hassio?
Thanks a lot in advance!!!

@lukexperias Please:

Enable debugging mode that guided in the link.
Access to hassio/pi via port 22222
docker exec -it homeassistant /bin/bash
vi /usr/src/homeassistant/homeassistant/components/broadlink/__init__.py
Modify auth = await hass.async_add_executor_job(device.auth)

Hi all,
I modified my init.py for HA as suggested and now it doesn't give the "failed to connect to device" log anymore.
But even if I'm pressing all buttons really close to my RM3 mini it gives me a timeout reading data ;-(
Learning works fine from "IHC for EU" mobile app, so I'm not expecting to be the device or the distance/position I use that break things in HA.
Any ideas ?
Simone

try this: edit components/broadlink/__init__.py #auth = await hass.async_add_executor_job(device.auth)  auth = device.auth  My tests worked fine

This worked for me too. Thanks! Would you mind submitting a PR for this?

try this: edit components/broadlink/__init__.py #auth = await hass.async_add_executor_job(device.auth)  auth = device.auth  My tests worked fine

This worked for me too. Thanks! Would you mind submitting a PR for this @GitforZhangXL?

How do I do that? Where do I find the file to be edited?

try this: edit components/broadlink/__init__.py #auth = await hass.async_add_executor_job(device.auth)  auth = device.auth  My tests worked fine

This worked for me too. Thanks! Would you mind submitting a PR for this @GitforZhangXL?

How do I do that? Where do I find the file to be edited?

Well, here's what I did:
Download all the files in this directory: https://github.com/home-assistant/home-assistant/tree/dev/homeassistant/components/broadlink
Then create a custom_components folder in the same directory as your configuration.yaml. Create a broadlink folder in the custom_components folder and copy the files from above into this folder. Make the necessary change to __init.py__, restart Home Assistant, and you should be good.
Custom components created from an integration override the existing integration.

Well, here's what I did:
Download all the files in this directory: https://github.com/home-assistant/home-assistant/tree/dev/homeassistant/components/broadlink
Then create a custom_components folder in the same directory as your configuration.yaml. Create a broadlink folder in the custom_components folder and copy the files from above into this folder. Make the necessary change to __init__.py, restart Home Assistant, and you should be good.
Custom components created from an integration override the existing integration.

works flawlessly, learn_command and send_command.
command strings are saved in /config/.storage in a text file.

Hi all,
I modified my __init__.py for HA as suggested and now it doesn't give the "failed to connect to device" log anymore.
But even if I'm pressing all buttons really close to my RM3 mini it gives me a timeout reading data ;-(
Learning works fine from "IHC for EU" mobile app, so I'm not expecting to be the device or the distance/position I use that break things in HA.
Any ideas ?
Simone

Same exact issue here. I'm able to learn commands via the app but not Home Assistant. Connects to the device now after editing the init file but no commands received. Going to try and use Broadlink Manager via a VM on my Mac to see if I am able to get codes that way.

I have been trying to understand the protocol here, I understand its using UDP QUIC but its a little over my head and I couldn't match up what I saw in Wireshark with what I read about. Maybe because of the encryption?
There is probably a better way to do this, but I ran the Broadlink app on my iOS device and proceeded to learn a volume up command. Whilst doing so I also ran the app in Android under the BlueStacks emulator on my Mac and fired up Wireshark. I did manage to capture some traffic from the 0x5f36 device to my Mac, no idea if there are any clues in there but the dumps can be downloaded here if anyone wants to take a look:
https://www.dropbox.com/s/0tlgz2y1zrfmt7c/BLink Dump 1.pcapng?dl=0
https://www.dropbox.com/s/f1gmycnheqbggwy/BLink Dump Learn vol.pcapng?dl=0
I don't have an older working device to compare it to but I am more than happy to sniff some more traffic from my 0x5f36 device if someone might be able to help me decipher it? I am about ready to gut this thing and stick an ESP in!

@Siytek Thanks for your collaboration. I see a handshake with Broadlink at 556 37.676853. The IPs involved are <IP_ADDRESS> and <IP_ADDRESS>. They are using TLS 1.2, so communication is encrypted. The first IP is the local address of your Mac. What intrigues me is that the second IP is not local. So devices are communicating through a cloud. If you access the IP <IP_ADDRESS> in a web browser this premise will be confirmed: you are communicating with a web service powered by OpenResty.
Thus Broadlink app is cloud based and the data collected won't serve our purpose. We need to capture a direct communication between the computer and the device. I think it will only be possible with e-Control or Broadlink Manager, but apparently these applications don't recognize the device. If someone can make it work with one of these, please send the data for us to analyze.

@Siytek Thanks for your collaboration. I see a handshake with Broadlink at 556 37.676853. The IPs involved are <IP_ADDRESS> and <IP_ADDRESS>. They are using TLS 1.2, so communication is encrypted. The first IP is the local address of your Mac. What intrigues me is that the second IP is not local. So devices are communicating through a cloud. If you access the IP <IP_ADDRESS> in a web browser this premise will be confirmed: you are communicating with a web service powered by OpenResty.
Thus Broadlink app is cloud based and the data collected won't serve our purpose. We need to capture a direct communication between the computer and the device. I think it will only be possible with e-Control or Broadlink Manager, but apparently these applications don't recognize the device. If someone can make it work with one of these, please send the data for us to analyze.

Wow its very interesting @felipediel and thank you for the detailed explanation. I did not try the e-Control app as I also read that people cannot get it to work, but I will try it later this evening.
I also read about a method to capture network traffic from an iOS device so I will try it later too, this should allow me to capture any local packets between the iOS Broadlink app and the RM Mini.

@Siytek Thanks for your collaboration. I see a handshake with Broadlink at 556 37.676853. The IPs involved are <IP_ADDRESS> and <IP_ADDRESS>. They are using TLS 1.2, so communication is encrypted. The first IP is the local address of your Mac. What intrigues me is that the second IP is not local. So devices are communicating through a cloud. If you access the IP <IP_ADDRESS> in a web browser this premise will be confirmed: you are communicating with a web service powered by OpenResty.
Thus Broadlink app is cloud based and the data collected won't serve our purpose. We need to capture a direct communication between the computer and the device. I think it will only be possible with e-Control or Broadlink Manager, but apparently these applications don't recognize the device. If someone can make it work with one of these, please send the data for us to analyze.

I wanted to further add that in some packets it is possible to see the RM Mini 3 local IP address, which is <IP_ADDRESS> (c0 a8 01 79 starting at 20)
0000   60 03 08 a8 14 12 24 df a7 7a 8b 4c 08 00 45 00   `.....$..z.L..E.
0010   00 9c 06 27 00 00 ff 11 31 1e c0 a8 01 79 c0 a8   ...'....1....y..
0020   01 42 00 50 c2 89 00 88 26 97 5a a5 aa 55 5a a5   .B.P....&.Z..UZ.
0030   aa 55 00 00 00 00 e4 07 1c 20 15 01 03 02 00 00   .U....... ......
0040   00 00 0f 02 00 0a 37 97 00 00 dd d2 00 00 00 00   ......7.........
0050   07 00 00 00 00 00 00 00 00 00 00 00 00 00 36 5f   ..............6_
0060   79 01 a8 c0 4c 8b 7a a7 df 24 e6 99 ba e8 83 bd   y...L.z..$......
0070   e9 81 a5 e6 8e a7 00 00 00 00 00 00 00 00 00 00   ................
0080   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
0090   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
00a0   00 00 00 00 00 00 00 00 02 01                     ..........

@Siytek Thanks for your collaboration. I see a handshake with Broadlink at 556 37.676853. The IPs involved are <IP_ADDRESS> and <IP_ADDRESS>. They are using TLS 1.2, so communication is encrypted. The first IP is the local address of your Mac. What intrigues me is that the second IP is not local. So devices are communicating through a cloud. If you access the IP <IP_ADDRESS> in a web browser this premise will be confirmed: you are communicating with a web service powered by OpenResty.
Thus Broadlink app is cloud based and the data collected won't serve our purpose. We need to capture a direct communication between the computer and the device. I think it will only be possible with e-Control or Broadlink Manager, but apparently these applications don't recognize the device. If someone can make it work with one of these, please send the data for us to analyze.

Ok I think I managed to sniff the packets directly between the Broadlink app on my iOS device and the RM Mini 3 using rvictl, it looks more like a usable set of data. Any chance you could take a quick look @felipediel?
Just the learn command: https://www.dropbox.com/s/4z9mxsykp7vs344/Broadlink to iOS cap IR dump.pcapng?dl=0
Longer capture:
https://www.dropbox.com/s/cz9oxn2wghmeure/Broadlink to iOS dump.pcapng?dl=0

@Siytek The communication is encrypted, I can't analyze its content. So I will analyze its form.
Let's start at 19 0.0007287. When you clicked learn command, your phone sent a message to the cloud containing at least the IP address of the universal remote with which you want to communicate (and perhaps a code related to the command learning function).
Then the cloud sent a message to the universal remote stating that your phone wants to communicate. This message does not appear in the log because it was sent directly from the cloud to the remote. It is sometimes possible to intercept messages like this by activating promiscuous mode in Wireshark. Anyway, we can assume that this message existed, because at 21 0.007922 your phone received a UDP packet from the universal remote and they started to communicate locally.
At 28 0.011493 and 29 0.011655, I see two large packets being sent from the remote to your phone. They probably contain the code you just learned.
It is important to note that, although the devices have communicated locally for a while, this was only possible after the triangulation was done by the cloud. Therefore, this data is encrypted and cloud dependent. It does not serve our purpose. But thanks for trying anyway.
By the way, you can configure Wireshark to automatically decrypt incoming packets, but for that you need to have access to the SSL key used in the communication. Don't ask me where to find this one.

@Siytek The communication is encrypted, I can't analyze its content. So I will analyze its form.
Let's start at 19 0.0007287. When you clicked learn command, your phone sent a message to the cloud containing at least the IP address of the universal remote with which you want to communicate (and perhaps a code related to the command learning function).
Then the cloud sent a message to the universal remote stating that your phone wants to communicate. This message does not appear in the log because it was sent directly from the cloud to the remote. It is sometimes possible to intercept messages like this by activating promiscuous mode in Wireshark. Anyway, we can assume that this message existed, because at 21 0.007922 your phone received a UDP packet from the universal remote and they started to communicate locally.
At 28 0.011493 and 29 0.011655, I see two large packets being sent from the remote to your phone. They probably contain the code you just learned.
It is important to note that, although the devices have communicated locally for a while, this was only possible after the triangulation was done by the cloud. Therefore, this data is encrypted and cloud dependent. It does not serve our purpose. But thanks for trying anyway.
By the way, you can configure Wireshark to automatically decrypt incoming packets, but for that you need to have access to the SSL key used in the communication. Don't ask me where to find this one.

So my understanding from what you have said is that Broadlink have added a cloud-based authorization step and when the app requests a command, the device authenticates it directly with the cloud before opening the communication channel with the app.
Thanks again @felipediel, at the very least it is interesting to have an insight into what is happening and I am sorry I cannot offer more useful input at this stage.

@Siytek Exactly. Thanks for the data, you helped us to better understand the problem.

Hello I am trying to connect my, Broadlink RM Mini3 but I see that nobody got it, right? Should I change my model for another recommendation? Regards

I am looking at the communication again, now with more attention, and I think I was wrong about the triangulation process.
There is definitely a cloud involved, but not needed to control the device. The response at 21 0.007922 refers to the request at 2 0.000292. Therefore, this type of device can communicate locally without intermediation.
For those interested, we're getting close to the solution at https://github.com/home-assistant/home-assistant/issues/23566, but we need help with testing.

For those interested, we're getting close to the solution at #23566, but we need help with testing.

Please let me know how I can help.
Simone

I am looking at the communication again, now with more attention, and I think I was wrong about the triangulation process.
There is definitely a cloud involved, but not needed to control the device. The response at 21 0.007922 refers to the request at 2 0.000292. Therefore, this type of device can communicate locally without intermediation.
For those interested, we're getting close to the solution at #23566, but we need help with testing.

I can do some test

Hi guys. I need help to test a possible solution, would you mind?
Steps:

Download and run this file.
Wait 5 seconds.
If you see the learning light on the remote, capture a code.
A file called debug.txt will be created.
Send me the file.

Hi guys. I need help to test a possible solution, would you mind?

@felipediel thanks for looking into this. I will run that on my Debian server. I guess the RM has to be on the same subnet right? I have most of my stuff on a separate IoT subnet which is accessible from main LAN through router, but I guess it wouldn't work for the discovery.

@felipediel Alright, I just tried running your code, according to debug log it finds the RM, but the LED doesn't come up and no codes are captured.
Here is the log: https://pastebin.com/g06y6ks0

@InToSSH Thanks for the debug data.
There's definetly a padding problem on encryption.
Let's try ANSIX923 for CBC mode padding.
Steps:

Download and run this file.
Wait 5 seconds.
If you see the learning light on the remote, capture a code.
A file called debug.txt will be created.
Send me the file.

@felipediel No problem :) Thanks for your work on this.
Unfortunatelly this one also doesn't work, same result.
Debug here (in case it's different): https://pastebin.com/3yA0LeKB

@InToSSH Thanks!
Okay, at least now we know exactly where the problem is. We need to find out which CBC mode padding algorithm is being used by Broadlink. It is neither PKCS7 nor ANSIX923, although it looks a bit like this.
No more tests for now. I will keep you informed.

Hi guys. I just packaged the tools I've developed to hack the Broadlink protocol. They still don't have documentation, but I left some examples for you to understand how they work. Now you can easily decrypt, filter and analyze the messages exchanged by the device, whether they come from Wireshark or the debugging tool that I have already made available. Make good use of it and I hope someone can come up with a solution.

@InToSSH Thanks!
Okay, at least now we know exactly where the problem is. We need to find out which CBC mode padding algorithm is being used by Broadlink. It is neither PKCS7 nor ANSIX923, although it looks a bit like this.
No more tests for now. I will keep you informed.

And before anyone is misinformed by this comment, I did a few more tests and maybe the problem is not in the CBC mode padding. But I still think it's worth taking a look at the last byte of the hello response packet. This byte is only active on devices that do not work correctly. And when it is active, bytes 48 to 51 do not carry any information, which can be a clue to the problem.

Fixed by https://github.com/home-assistant/core/pull/32523.

This issue can be closed.


KOGITO-9460: Create a new guide describing the workflow CLI

KOGITO-9460

Description: Improve KN CLI Workflow plugin guide.

Please make sure that your PR meets the following requirements:

[x] You have read the contributions doc
[x] Pull Request title is properly formatted: KOGITO-XYZ Subject
[x] Pull Request title contains the target branch if not targeting main: [0.9.x] KOGITO-XYZ Subject
[x] The nav.adoc file has a link to this guide in the proper category
[x] The index.adoc file has a card to this guide in the proper category, with a meaningful description

How to backport a pull request to a different branch?

In order to automatically create a backporting pull request please add one or more labels having the following format backport-<branch-name>, where <branch-name> is the name of the branch where the pull request must be backported to (e.g., backport-7.67.x to backport the original PR to the 7.67.x branch).

NOTE: backporting is an action aiming to move a change (usually a commit) from a branch (usually the main one) to another one, which is generally referring to a still maintained release branch. Keeping it simple: it is about to move a specific change or a set of them from one branch to another.

Once the original pull request is successfully merged, the automated action will create one backporting pull request per each label (with the previous format) that has been added.
If something goes wrong, the author will be notified and at this point a manual backporting is needed.

NOTE: this automated backporting is triggered whenever a pull request on main branch is labeled or closed, but both conditions must be satisfied to get the new PR created.

@ederign open to suggestions, I was opting to split it but I wasn't 100% sure. We have different prerequisites for the quarkus non-quarkus use cases....but when I split it, it didn't feel right

@ederign can you please review? Can we backport to 1.40.x?

thanks @domhanak

I'll look at both Pr's together tmw!


Price Forecast

Is there any plan to include the forward spot price forecasts in the dataset?

Yes there are! I'll set this issue for the next release and you can track it here - this has been on the backburner for a while now and is overdue.

That's great! I've been relying on Amber Electric's API which they're deprecating in favour of a private one just for customers (which I'm not) so that will be great!

I wasn't aware they're deprecating their public interface - thanks for letting me know. If I can get this out soon I'll tweet out that we've added support. I'll check if there's anything else we could add to make it compat with what they're removing.

I don't know if they've killed it or not, but it's died for in the latest version of HA.
I get in my logs:
The amberelectric platform for the sensor integration does not support platform setup. Please remove it from your config.

@nc9 I'm not good at Github, so couldn't work out of there is a better way of doing this, but thought you might be able to help out here: https://github.com/bacco007/sensor.opennem/issues/16

Does the above commit close this issue? I’m keen to bring this into https://github.com/bacco007/sensor.opennem if it is working

I'm eager to access the price forecasts, is this usable now?
Would it be possible to provide an example of how to access the price forecast?


Eas build does not import secrets

Build/Submit details page URL
No response
Summary
I am using eas to build my expo application. My app contains some env files. They are api urls or some secret keys. I am putting api urls in eas.json directly and build imports them. I am putting secrets in expo.dev secret section. However, build does not import them. Btw, I am building app locally
Managed or bare?
managed
Environment
expo-env-info 1.0.5 environment info:
    System:
      OS: macOS 13.2.1
      Shell: 5.8.1 - /bin/zsh
    Binaries:
      Node: 16.14.0 - /usr/local/bin/node
      Yarn: 1.22.18 - ~/.yarn/bin/yarn
      npm: 9.6.0 - /opt/homebrew/bin/npm
    Managers:
      CocoaPods: 1.11.3 - /opt/homebrew/bin/pod
    SDKs:
      iOS SDK:
        Platforms: DriverKit 22.1, iOS 16.1, macOS 13.0, tvOS 16.1, watchOS 9.1
    IDEs:
      Android Studio: 2021.2 AI-212.5712.43.2112.8609683
      Xcode: 14.1/14B47b - /usr/bin/xcodebuild
    npmPackages:
      @expo/webpack-config: ^0.17.0 => 0.17.2
      expo: ^46.0.14 => 46.0.16
      react: 18.0.0 => 18.0.0
      react-dom: 18.0.0 => 18.0.0
      react-native: 0.69.6 => 0.69.6
      react-native-web: ~0.18.7 => 0.18.9
    npmGlobalPackages:
      eas-cli: 3.6.0
    Expo Workflow: managed

Expected package<EMAIL_ADDRESS>Found invalid:
<EMAIL_ADDRESS><EMAIL_ADDRESS>
Error output
No response
Reproducible demo or steps to reproduce from a blank project
upload env variables with eas secret:push --scope project --env-file .env then start to build app.

Secrets by definition are secret, so we do not allow downloading them in any form. They are only available during cloud build, if you want to use them for the local build, you need to set those envs in your shell on your own.
Also note that secrets only set envs in your build environment, you need to have project configured correctlly to pass it to access them in js code of your application https://docs.expo.dev/guides/environment-variables/

@wkozyra95 This is very unintuitive and contradicts documentation. See, for example, here:

EAS Build uses Metro Bundler to build the JavaScript bundle embedded within your app binary, so it will use .env files uploaded with your build job to inline EXPO_PUBLIC_ variables into your code. EAS Build also lets you define environment variables within build profiles in eas.json and via EAS Secrets. Check out the EAS Build documentation on environment variables and build secrets for more information.

The --local flag is still eas build (a salient difference being it's not billable by expo...). For all I would know, eas secrets maintains a parallel copy of secrets on my machines. It's undocumented behavior for --local to omit .env if it's right in the directory and works on local development!

I agree with @maxkrieger that this is very unintuitive.
But in any case, here's the part of the docs that states you can't use eas secrets when using EAS Build locally.
Setting environment variable on linux/Mac
if you have a Mac like me, you can set your environment variable inside your ~/.zshrc file to permanently set it across terminal sessions.
# somewhere in your .zshrc
export MY_SECRET=mysecretvalue

The value will now be available under process.env


Help with RSA signature

Hello,
I'm using this framework to generate the key pair and sign a message.
I'm creating the key pair with:
self.rsaKeyFactory = [[MIHRSAKeyFactory alloc] init];
self.rsaKeyFactory.preferedKeySize = MIHRSAKey1024;
self.keyPair = [self.rsaKeyFactory generateKeyPair];
and then sign with:
- (NSString *)signMessageData:(NSData *)data withKey:(MIHRSAPrivateKey *)privKey {
NSError *signingError = nil;
NSData *signatureData = [privKey signWithSHA256:data error:&signingError];
if (signingError != nil) {
NSLog(@"Error al firmar el mensaje: %@", signingError.localizedDescription);
}
NSString *signString = [signatureData MIH_base64EncodedString];
return signString;
}
For what I know, signing with a 1024 private key should give a 128byte signature, but I get just 86 bytes.
I've been told to generate a 128 bytes signature, so any help would be really apreciated.
Thanks.

I'll answer myself this time.
The problem was the line "NSString *signString = [signatureData MIH_base64EncodedString];"
signatureData is exactly 128 byte, so I changed the method to return directly the NSData instead of converting it back to a NSString.


Using isSuppressingError forces me to implement getLibPath as well

JavetLibLoader.setLibLoadingListener(new IJavetLibLoadingListener() {
    @Override
    public boolean isSuppressingError(JSRuntimeType jsRuntimeType) {
        return true;
    }
});

If I add this example code to my project I have to implement the method getLibPath as well because the default implementation in the interface returns null.

It's up to you to decide to either create a listener or set an env var to tell Javet to suppress that error. In you case, I would suggest you to set env var javet.lib.loading.suppress.error=true during the application initialization.


Add displayName before React.memo for React devtools

https://github.com/RisingStack/react-easy-state/issues/93

Coverage increased (+0.06%) to 96.029% when pulling 5fb7631e1ad838d089332b8468a095515bd8b0ab on fix_displayName into 7a0346f46ca73f270c9fd73c76c0d8c7873bce26 on master.

:tada: This PR is included in version 6.2.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


S3 support

S3 support would be nice to have in addition to GCS.

Hi @Jake-Shadle @arirawr, I would like to work on this issue. Could you give me some pointers on where to start? Thanks!

Hi @psinghal20 , I'm already working on this issue & will provide a PR soon.

Resolved by #8


Rewrite definitions for Travis CI

Just the default of GCC and Clang on Linux, only the default Clang on macOS.

Looks like this might work. I have not followed Travis lately. So they have bionic :+1:

This makes Travis pass :partying_face:


Run Clippy CI job for each crate separately

Otherwise we don't know if our crates build in isolation.
This can be annoying locally, as you can encounter unexpected build errors caused by missing dependency features.
This is how we solved the problem in ItchySats: https://github.com/get10101/itchysats/pull/1333.

To be fair this is not crucial as long as we run something like cargo hack check --all locally every now and then.

can't we use just clippy for this?

can't we use just clippy for this?

Do you mean the current command or the justfile in general?
We could write the script that builds each crate separately in the justfile and use it on CI, sure.


Correct dvc push and git push order

As mentioned elsewhere in the page, the pre-push hook executes dvc push before git push.

You may disregard these recommendations if you used the Edit on GitHub button from dvc.org to improve a doc in place.

❗ Please read the guidelines in the Contributing to the Documentation list if you make any substantial changes to the documentation or JS engine.
🐛 Please make sure to mention Fix #issue (if applicable) in the description of the PR. This causes GitHub to close it automatically when the PR is merged.
Please chose to allow us to edit your branch when creating the PR.
Thank you for the contribution - we'll try to review it as soon as possible. 🙏

Great catch! Thanks @V-Xing


FPGA Signal Alignment Bug

On Vivado, this bug causes the fraction part of the result to be all-zeros when converting between single and double precision floating-point numbers.

@taylor-bsg I forget, what was the style guide ruling on this? Explicitly cast width of expressions?

Yeah, or a concatenation is okay as well — the width is not determined by
the LHS
On Fri, Dec 18, 2020 at 5:44 PM Dan Petrisko<EMAIL_ADDRESS>wrote:

@taylor-bsg https://github.com/taylor-bsg I forget, what was the style
guide ruling on this? Explicitly cast width of expressions?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/black-parrot/black-parrot/pull/706#issuecomment-748400132,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEFG5AAVN4UWG7EJXIXX4C3SVQAQDANCNFSM4U2OFDCQ
.


Shadowfox theme not being completely applied to about:preferences options

This is something I noticed just now. The options for languages and fonts still have a white background  with a black font.

Thanks! Should be fixed now

Proxy settings still have this issue:


”Belcești” is listed in the drop-down menu

Description:
"Belcești" is listed in the drop-down menu alongside its corresponding county and commune, according to the law.
Precondition:
The website is up an running.

Step 1
Type "Belcești" in the search bar.

Expected results
The location is listed in the drop-down menu as "Comuna Belcești, IAȘI".


Don't cache-bust versioned resources while prefetching

We currently append a cache-busting URL query parameter to requests made during the install handler, to ensure that we always get a fresh response which bypasses the HTTP cache.
This works even if the resource is explicitly versioned with, e.g., a hash in its filename, but it results in unnecessary network traffic—a hash in the filename should be considered a sign that the resource is explicitly versioned, and the copy in the HTTP cache with the same name should be up to date.
The default behavior should stay as-is, but we should add in a new RegExp configuration option, which developers could set to something like, e.g., ^\w+\.\w{14}\.\w+$, depending on what their versioned filenames look like. Filenames which match that RegExp would be fetched without the cache-busting URL query parameter during the install handler.

Thinking about this some more, it's not actually an issue, since we'd only end up re-fetching a resource if it's actually changed.

...although I can see the value in an option that would allow developers to opt-in and take advantage of HTTP caching headers that might already be doing the right thing for long-lived, versioned resources.

This was addressed in https://github.com/GoogleChrome/sw-precache/commit/d06def1171704f2ecbbb29d2a4a902ac977ae66e (which was inadvertantly pushed out without a PR).


Support for Code Server/Visual Studio Online

I wanted to see if this extension would work in code-server just for fun, but sadly it does not:

I'm going to assume that this is well outside the realm of supported use cases, but I still wanted to ask if there is any way to get this to work.

If you open up DevTools and look at the console, do you see anything? Or what about in the output panels, @h1nk ?

Yeah, this would be great if it could work with code server.

Chromium wasn't even installed in the Docker container I was running. It does work once installed, but entering anything into the address bar didn't seem to work and there was a bunch of other usability problems.

Given that Microsoft now have shipped http://online.visualstudio.com/, I'm renaming this issue to support of VS Online.

It would be amazing if we could add VSO support! 🤗 Is there anything our team (the VSO team) could do to help?

@lostintangent A model I explored in the early days was to run the Chrome instance on the remote instance to allow for example and IPad show chrome content rendered from the Linux box. Today the extension is marked as a UI extension, so it would require an API to declare the extension to remote based on what context the it's run in. Have you landed such apis?

Extension adopted to run as a workspace extension in VSC's case. Ping @lostintangent  https://github.com/auchenberg/vscode-browser-preview/issues/125

@auchenberg I just tested the bits in master, and it works in a VSO environment, including in the browser! The Live Share integration also works, which is pretty sick to see in the browser. Can you ship this update? 😎

Landed in v0.6.0

hey i came accross this and think its awsome, have you got the setup steps to get this woking in code server? ive tried installing chrome but its not working...
any help would be much appreciated

@obikay200 What errors do you see?

Thanks very much for the quick response, but i updated to the latest release of code-server ( 3.0.1 ) rather than latest and set permissions on the chrome binary and now it works!

Glad to hear!

Sorry to come along this so late, but this is not working for me when running the extension in code-server on Linux Mint 20. It works great in VSCode on that same system, but not in code-server. I keep seeing mention that chromium needs to be installed on the same system, and it is, but I also see something in these messages about setting specific permissions on the chromium binary. Can any of you explain what those permissions should be set to and give basic instructions for setting it? I am pulling my hair out trying to figure it out, and this is a go-to extension for my workflow. I’d massively appreciate it; plus it can be here for other poor saps like me trying to figure it out, Lol.
Setup:

Code-server v3.9.3
Chrome and Chromium browsers both installed locally

If you see something else I’m missing, please let me know.

Hi, I am running a code-server on ubuntu 18.04 and installed chromium-browser... When I execute via terminal, chrome works and open using an external X... But when I try it from Browser Preview it shows just a blank screen. How can I fetch errors for it?

From webconsole:
Uncaught (in promise) Error: Service Workers are not enabled in browser. Webviews will not work.
    R main.js:196
    <anonymous> main.js:194
main.js:196:16
Uncaught (in promise) TypeError: navigator.serviceWorker is undefined
    createWebviewManager main.js:266
    <anonymous> host.js:106


F&F day updates

Updates to announce new days...

@NicholeG does this look good?

@therebbie just made two small changes. Otherwise I think it looks good

@DouweM please have a look at this.  After some discussion with @NicholeG I think I like this language better than what I initially proposed.


Breaking change in v1.2.2 "WithIdentity" moved to other namespace.

Hi Hugo,
I don't know if you notice that with v1.2.2 you've introduce a breaking change respect v1.2.1.
The method WithIdentity has been moved to namespace Microsoft.Owin.Testing, causing changing usings statements everywhere this method is used.
Maybe a major version upgrade would be better than just the fix number.
Kind regards.

Hi manu-vilachan,
Yes, I know. That was an unfortunate decission in an unfortunate momment. Sorry for the inconveniencies.
You are rigth about the major version increment had been better, but it's too late for that.
I'll try to do versioning better in future updates.


counter border

[x] svg/arbiter
[x] svg/winminexp
[ ] pdf/arbiter
[ ] pdf/winminexp

included in other issues