D435 running on high-reflective ground gives some mistakes depth data

librealsense
2.50.0 RELEASE

OS
Linux

Name
Intel RealSense D435

Serial Number
030522071656*

Firmware Version
<IP_ADDRESS>

Advanced Mode
YES

Camera Locked
YES

Usb Type Descriptor
3.2

Product Line
D400

Asic Serial Number
030323023196

Firmware Update Id
030323023196

*This problem is not only for this camera, but for all D435/D435i/D455 cameras we have.
Hello Marty,
I've got other problems when using realsense cameras on some kind of high-reflective ground like tiled floor or epoxy floor.

an example of epoxy floor
There are two main issues that I need help.
First is the depth data on high-reflective ground becomes unstable or even vanished, typically when the camera is fixed with a big angle to the ground.
there are servial conditions when running on such high-reflection ground (the ground is a plane):

situation of data unstable

situation of data missing

the situation of depth data missing by watching in realsense-viewer, camera is about 90°  to the ground and the position of red arrow is usb
You know if we want to use the depth data to detect some tiny obstacles or cliffs, we need the camera's data to be stable and complete.So I wander if there some way to deal with this kind of situation? Thanks.
Second is some advanced edition of the first one. We met with an environment like this: the road of underground part lot is epoxy flooring, an there are many traffic signs painted by white paint on the road, and because of the skylight there are servial parts of the road is straightly exposured under the sunlight.Like the picture below:

a road in underground parking lot with sunlight
When the camera met with the white trafic signs exposured under the sunlight, there would be terrible mistakes of the depth data, like those wihte lines and arrows in picture above.

though points in red circle is where the wihte paint arrow should be.
We found that this has sth to do with the camera's exposure and posture.
Normally when we use auto-exposure, this problem will occurred when the camera met the traffic signs. But if we disable the auto-exposure and set the exposure to a small one (like 500), this mistake will disappear, that there will be no hole or curve. But the depth data also becomes unstable and there are many many noise points near the ground.
And the shape of wrong depth data is related to the posture of the camera. If we call the posture in the picture below is "the right posture":

then under this posture, there will be a concave like below:

it is under the ground.
but if we turn the camera 90° to the right or left(in order to fix on the side of the robot), then we will get these result：

the position of red arrows is the pose of usb on camera.
How could I deal with this kind of situation?
Thanks!

Hi @MichaelPan0905  Negative implications for depth readings when observing a reflective floor surface is a known phenomenon.  The negative impact on the depth image of glare from reflections can be significantly reduced by applying an external filter called a linear polarization filter over the lenses on the outside of the camera.  Section 4.4 of Intel's white-paper document about optical filters provides more detail about this.
https://dev.intelrealsense.com/docs/optical-filters-for-intel-realsense-depth-cameras-d400#section-4-the-use-of-optical-filters
The image below, taken from that section, demonstrates the difference that the filter can make to glare reduction when applied.

If you require a scripting-based solution for sensing a reflective surface then you could try aligning depth to color, like in Intel's Python example depth_under_water:
https://github.com/IntelRealSense/librealsense/blob/jupyter/notebooks/depth_under_water.ipynb
In a past case involving reflectivity, a RealSense team member also advised: "In extreme case where you have brightly illuminated surfaces and really dark surfaces, it is impossible to find one value of sensor exposure without having either completely black or completely white regions, but for this case, the camera does offer a control to rapidly switch between two values of exposure".
I believe that they were referring to a mode compatible with D435 where the laser emitter is very rapidly alternated on / off.
The link below has an animated image with a fast-strobing light.
https://github.com/IntelRealSense/librealsense/pull/3066
You can test in the RealSense Viewer whether alternating the emitter makes a positive difference by enabling the Emitter On Off option under Stereo Module > Controls

In regard to your second question, it may be worth trying the alternating emitter option with the floor signs to see if it provides improved results for investigating further possible fixes.

Thanks for quick responding, I'll try these methods later.

I tried linear polarizers but it didn't work. (actually we tested long time ago to solve the reflection of the fluorescent lights or the car's headlights, but it can't help with such strong sun light.)
I also tried the "Emitter On Off " or "HDR", none of them helped. Here are some pictures that can explain what I've met better:

I'll keep trying other methods to fix this.
By the way, what is the "alternating emitter option " you've mentioned? Is it the "Emitter on off" option?
Thanks.

Your depth image looks okay at the start in the comment above, with its color progressively shifting from blue at the closest point to the camera to red at the furthest distance (which is the expected default behaviour of the Viewer for colorizing the distance values).  Then the image deteriorates in the subsequent pictures.
Given that you describe the point cloud as becoming unstable or vanishing in your original message, it is worth trying to disable the Viewer's two GLSL options in its settings interface that can cause such vanishing on some computers when they are enabled.  Instructions for disabling the GLSL options can be found at https://github.com/IntelRealSense/librealsense/issues/8813#issuecomment-818883285

Thanks for responding. I'll try it later. But for the above two depth images, actually they are not okay. Because the color shuold have a smooth transition, but it didn't. Actually, those four iamges came from a same place at the same time.

like in the image above, the area in white circle should be yellow because is plane.

at another sight, the areas along the blue dotted line should be the same color because they are at the same distance to the camera, but there is a abrupt change at the red arrow place.

Thanks for responding. I'll try it later. But for the above two depth images, actually they are not okay. Because the color shuold have a smooth transition, but it didn't. Actually, those four iamges came from a same place at the same time.

like in the image above, the area in white circle should be yellow because is plane.

at another sight, the areas along the blue dotted line should be the same color because they are at the same distance to the camera, but there is a abrupt change at the red arrow place.

Besides, I said the depth data as becoming unstable or vanishing, not just looks like, but truely affects using. I wonder that disabling those GLSL options only affect the visual effects but does no help to the actual points we get, is that right?

Depth frames are constructed from the camera's left and right infrared frames.  I would speculate that if the infrared frames are viewing the bright white areas as plain and textureless due to the glare from reflection then it is mis-reading the depth because there is no texture on the surface for the camera to analyze for depth information.  Ordinarily in such a situation, projecting the infrared dot pattern from the camera's projector onto the unreadable surface would make it analyzable, but the light conditions on the surface may be making the dots invisible to the camera.
In regard to GLSL, a RealSense user did a comparison of the point cloud image with and without GLSL at https://github.com/IntelRealSense/librealsense/issues/10005

Hi @MartyG-RealSense , I've tried disabling the GLSL options, but I'm not sure that there is some difference.
Here is the screenshot, it's about 50 seconds.
https://user-images.githubusercontent.com/25095900/154658766-24fd671e-3bb0-4891-a826-c025378f2586.mp4
It was watching some white painted traffic sign on the ground, and under a cloudy light.

Thanks for your patiently responding.Those two things you've mentioned, RGB mapping and hole-filling, actually I've tried long time ago, and my impression is that they have no help. The RGB mapping can't fill such a big hole, and neither the Hole-Filling, while the latter actually made some more noises at the edge of the hole.
Today it's cloudly and a little bit raining, I will try what you've told again but I don't know if I can reappear the scene of glaring sunlight. Maybe I'll try again when it's sunny:)

I carried out some general non-RealSense research of using cameras to capture reflective epoxy floors.  Suggestions included not projecting a light source onto the observed surface at the same angle that the camera is facing, and not to project an infrared light source.  The camera's projector and its IR Emitter does both of these.
So as 400 Series cameras can use the ambient light in a scene to analyze surfaces for depth detail, it may be worth trying disabling the projector in the RealSense Viewer if you have not tried it already.   This can be done either by setting Laser Power to '0' or by setting the Emitter Enabled drop-down menu to 'Off'.

Hey Marty, thanks for responding.
While whether it works or not, turning the projector off may not match our need, because we need our robot to run on both  strong lighting places and dark lightless places. Maybe we need to make some auto exchange function to change between light and dark mode, If off the projector does help. (I'll try it latter, anyway thank you.)
As for my origin question, the first one, that the camera's depth data became unstable or even vanished, I got some new information, that may have something to do with the second question.
Here are two vidoes for our camera running on tiled floor, up left is the rgb view of the camera:
https://user-images.githubusercontent.com/25095900/154884070-a19bcb50-27ec-41d0-822c-bc64aeef0147.mp4
https://user-images.githubusercontent.com/25095900/154884085-63266066-45f6-4df0-9433-1c26512d760c.mp4
And for comparison, below is the same scene of the camera in the second video, while the only difference is the lights were turn off:
https://user-images.githubusercontent.com/25095900/154884324-a30c0fb7-c9cb-4612-9cdc-a16e26e11722.mp4
I thought it's only the material of the floor that affects the camera's data, now it does have sth to do with the light, while that is to same, the origin two questions I've submitted may be actually the same one.

In the image of the Emitter Enabled drop-down menu that I posted above, there is an option called Laser Auto.  My understanding is that this enabled the camera to decide whether to turn the IR emitter on or off depending on the current lightng conditions.
Intel 'deprecated' this feature as far back as 2018, as mentioned in https://github.com/IntelRealSense/librealsense/issues/1793#issuecomment-393810410 - usually, deprecated doesn't mean removed but instead "we don't recommend using this as it may be removed in the future".  So you could try the Laser Auto option in different lighting conditions to see whether it turns the emitter on or off depending on the current lighting level.  Under most circumstances that I have tested in, using Laser Auto has the same effect as setting the emitter to Off.
An alternate approach to using Laser Auto that one RealSense used was to continously monitor the exposure metadata values, using a method described by a RealSense team member shared at https://github.com/IntelRealSense/librealsense/issues/1624#issuecomment-389085387
There was a case with a tiled foor at the link below that had a simular pointcloud to yours.  In their case, using a linear polarizer filter helped a lot, though they apparently didn't have the variable lighting level problem in the indoor location that they used the filter in.
https://support.intelrealsense.com/hc/en-us/community/posts/360043612734-Issue-with-tiled-floor

Well…I don't know why can't I upload new videos, even kept less than 10MB. Uploading images also failed.
Hi @MartyG-RealSense , thanks for your advices, and these days I've tried most of them but actually none worked.
first is to try rgb mapping, well the hole and the curve on the hole's boder are still there.

I also tried turning off the projector, actually I already tried it before by setting the Emitter "off", and "Laser auto" or "Emitter on off"also been tried. I don't know if the depth should be reopen after setting(I forgot to try it), but set the Emitter "off" didn't make any change to the capture. And mostly "Laser Auto" or "Emmiter on off" didn't make any difference.

Done，below  two screen records are what methods I've tried.
https://user-images.githubusercontent.com/25095900/155698089-4dd25dfc-cde4-463f-9ef7-2ade32916118.mp4
https://user-images.githubusercontent.com/25095900/155698099-e9a7379e-fd00-4620-9dfa-c16645e5623f.mp4

And I wonder one thing that, I've tried other two different cameras from other companies, and they all do well with glaring sunlight and reflective grounds.But they are not well dealing with dark and reflective materials like balck cars.
There are their performances for the same scene.
orbbec DaBai Pro:

percipro.xyz ds462:

They both don't have rgb and both can't see reflective and dark materials, their technical supports said it might because their camera's laser power is lower than realsense, which leads to their blind on dark cars, but I guess that might also be an important reason of why they are good at sunlight and reflective floor. That is the same with your opinions about the laser, the projector and so on. But when I testing realsense, turning off the emmiter nearly makes no difference. So is that I misunderstand sth or using a wrong method testing?
Know the only thing I've tried that makes differences is to adjust the exposure time. The shorter it is, the better it can deal with the sunlight, but also the worse is its data's stable.

Depth cameras in general (not only RealSense) have difficulty reading depth detail from dark grey and black surfaces because it is a physics principle that those color shades absorb light.  The darker the color shade, the less depth information that is returned.
If the emitter is turned off then there needs to be a strong light source present so that the camera can use the light instead of the projected dots to analyze surfaces for depth detail, otherwise the depth image quality worsens.
A test I conducted in the past week with depth exposure found that - in the scene I was testing in, at least - the depth image remained relatively intact when reducing it as far down as '1000', but below that the depth image progressively broke up more and more as depth exposure was reduced further towards zero.
Intel's camera tuning guide has a section at the link below about using the camera in strong sunlight.  It suggests defining an auto-exposure region of interest (ROI) in the lower half of the image and also reducing exposure to near 1 ms.
https://dev.intelrealsense.com/docs/tuning-depth-cameras-for-best-performance#section-use-sunlight-but-avoid-glare

Hi @MichaelPan0905  Do you have an update about this case that you can provide, please?  Thanks!

@MartyG-RealSense Sorry for not answering you timely! These days I've got many other works to do so I didn't make time to do the test. I've try it next week. Thanks for your attention for this.

You are very welcome.  I look forward to your next report. :)

Hi @MichaelPan0905  Have you had the opportunity to perform further testing regarding this case, please?  Thanks!

As there have been no further comments for the past month, I will close this case for the moment.  You are welcome to re-open the issue at a future date when you are ready to resume.  Thanks again!

Hello Marty,
I am facing the same issue, i.e., reflection from sunlight is creating noise and depth information is not obtained. Although the application of depth camera in my case is not for 3D mapping. I am using it for obstacle detection.
In the depth color frame, the area on the floor with reflection is showed in red color so it gives false readings.
I want to know if Intel has worked on this issue later on or did they reach any conclusion regarding this issue?
Thank you for your time.

Hi @Sowmesh01  Intel introduced D435f, D435if and D455f camera models into the RealSense product range that are equipped with light-blocking filters on the left and right IR sensors.
https://www.intelrealsense.com/stereo-depth-with-ir/
The image below from the above link demonstrates the difference made in a scene with reflected light when using a filter-equipped D435f compared to a filterless D435.

If purchasing a filter-equipped camera is not an option then the type of filter used - CLAREX NIR-75N - is also purchasable separately so that it can be fitted over the lenses of a camera that does not have them.  More information can be found here:
https://astraproducts.com/info-acrylic-nir-filters.asp

Thank you for the reply Marty.
The photo you have uploaded shows the effect under artificial light. I have an 435f and 435if models. The filters do work for reflection from artificial light, but not for reflection from sunlight. The image I have uploaded shows the issue. The areas with reflection are not providing depth data and are seen as black areas in the depth-color frame.

It appears that the affected areas are glass panes.  Adding a different kind of filter product over the lenses on the outside of the camera called a linear polarization filter can greatly negate the reflections from glass, as highlighted earlier in this discussion at https://github.com/IntelRealSense/librealsense/issues/10229#issuecomment-1034689593
Any polarization filter can work so long as it is linear (except for the circular lenses used in 3D glasses, which will not work), so they can be purchased inexpensively from suppliers such as Amazon by searching for the term linear polarizing sheet.
Can you also test the scene in the RealSense Viewer tool please to see if you get an improved image, as the Depth Quality Tool is for depth quality testing rather than depth capture.


Mediatr tutorials / more samples

I'm a Mediatr yellow belt, and have been through all Contoso samples they were great. I'm now looking for more sample code written by anyone with more Mediatr experience than me.
In particular some of the techniques Jimmy mentioned in https://lostechies.com/jimmybogard/2016/12/12/dealing-with-duplication-in-mediatr-handlers/ eg using Domain services (as was its original purpose in the DDD book)
I guess I'm looking for a more complicated sample with a more complex domain, can just be someones demo project etc.
Thanks!

Do you want something more complex - I kinda like the simplicity that mediatr brings - I've found the most complex thing I've had to do is create session object from http and pass that into mediatr... which was really straightforward

eShopOnContainer from Microsoft
Can't remember if they used Mediatr, but it has quiet a few patterns implemented (unit of work, messaging, publish/subscribe, etc.)

You can also check out my Contoso University projects, with full working examples.


Tests

What do you think about using testcontainer for run database in docker
https://testcontainers.com/
And can we just write each test in there own package ?
For example run user test in user package .
We can do something about run one instance of database for test.

I don't want to add any new tech to the project.
If you want to move the tests from being a business unit to a package unit test you need to change the Docker package and live with the idea you can't terminate the test database after you run tests.
This isn't necessarily a bad thing. Encore works this way. They start a database just for tests. If it's already running great. If not, it is started.
I've been torn doing this with service. I believe a test should clean up after itself when it can. We can in this project.
So think about the tests in the project as being business unit and api unit tests. The packages being tested are not, nor will they ever, live in their own module or be accessed outside the project.
There are no rules that say you can't have a unit at a layer level.

Thank you ,I just Mentally respect the tests to be in there package ,it's not necessary but when  the tests increase can be helpful and testcontainer clean up containers after test.I can't choose so I follow the easiest way, which is the way you said

I'll play with the idea of keeping a single test database and see how it works.

I made the change. The code now uses a single docker image for all tests. You will need to use make test-down to stop the image. I will do that in the circle ci.

Thank you .I saw it that's so great 👍


Avast says opensaas.sh is malicious!

Why is Avast antivirus saying that opensaas.sh website is malicious? You may want to check with them for false positives.

Hm that is silly! Does it give any extra information? How can we reproduce this: install Avast on Windows and open opensaas.sh in Chrome?

Yes exactly those steps. I am attaching a scrshot.
I am using Brave browser in this case, but already tried with Chrome, and has the same issue.
Just check virus total and that also lists one security Vendor : https://www.virustotal.com/gui/url/9ff89c2363f8b07c1a03313e0565d556dee978934748e0c8ce097b9bfd7826cc

This is great, thanks! So I told it to run analysis again, and now I got all good! Was it some temporary false positive on their side?

@joeygeo could you also pls check on your side again, if it also tells you all is good now? I will close the issue for now, but if it is till reporting an issue for you, let me know and I will reopen it.

VirusTotal looks fine, but Avast still says blacklisted. I have raised a false positive report with them... That may take a few days... I will report back what they say.
Weirdly enough, even the emails that are coming from github for this repo is marked as suspicious... Note that I do get comments from other github repos, and they are clean.

Thanks for making that report! Ok let's see, if needed we can also try reaching out to them and try to figure out what is causing this. Would be great if we can somehow get an insight on what is triggering this, maybe .sh extension?

Unlikely.. its mostly the content of HTML generated by a website. Check all external links in your website code.

Thanks @joeygeo .
I just managed to replicate this via Avast Chrome extension:

I am reopening the issue in any case, since you said Avast still reports it as problematic on your side, and I was also able to replicate it.
What we can try:

Go through our page, try to figure out what could be triggering this.
Reach out to Avast, try to get more info on what is causing this, if they will want to tell us.
Maybe find some other services that can check our page for any weird stuff, maybe that helps us detect what might be triggering this.

I sent a false positive report to Avast, asking for help.
I also check the webpage on Google's checker, which says it is clean: https://transparencyreport.google.com/safe-browsing/search?url=opensaas.sh&hl=en .

Some peculiar elements we include on the landing page are:

Youtube video.
ProductHunt Card, which is in an iframe.

Did some more digging and found this from IPQS: https://www.ipqualityscore.com/threat-feeds/malicious-url-scanner/https%3A%2F%2Fopensaas.sh%2F
URL Analysis Report
:
This URL is rated as suspicious due to matching indicators of similar malicious URLs. We have detected that Fly/b5051385 (2024-06-10) is running on this server, with a hosted IP address at <IP_ADDRESS>.

same issue with me for AVG antivirus, I just turn off the webshield to open the opensaas site

Did some more digging and found this from IPQS: https://www.ipqualityscore.com/threat-feeds/malicious-url-scanner/https%3A%2F%2Fopensaas.sh%2F
URL Analysis Report: This URL is rated as suspicious due to matching indicators of similar malicious URLs. We have detected that Fly/b5051385 (2024-06-10) is running on this server, with a hosted IP address at <IP_ADDRESS>.

Did some more digging and found this from IPQS: https://www.ipqualityscore.com/threat-feeds/malicious-url-scanner/https%3A%2F%2Fopensaas.sh%2F
URL Analysis Report: This URL is rated as suspicious due to matching indicators of similar malicious URLs. We have detected that Fly/b5051385 (2024-06-10) is running on this server, with a hosted IP address at <IP_ADDRESS>.

Thanks, this helps a lot! Sounds like it based the verdict on IP that our app is deployed on at Fly. I am guessing that some other app on Fly was using that IP in the past, and was doing something malicious/weird and got flagged, and now we got their IP. So it might be enough to just change that IP. I will reach out to Fly.io to see what they advise.

Ok yeah, it seems it is defitively this. Turned out our client for opensaas.sh was sharing IP with other apps on Fly.io, which I wasn't aware of. I will not opt-in for a dedicate IP and set up the domain to point to this new IP and I imagine that should solve the current problem + prevent it from possibly happening in the future again.

Ok, did this! A record now points to new, dedicated IP. I will leave the dynamic IP on Fly for a day or so to make sure all DNS records are updated and will remove it then.
I also made another false positive report to Avast with more info this time (info about Fly and shared IPs), so I hope that will help.

I removed the dynamic IP, now we completely switched to fully dedicated IP, but that report still says we are suspicious! And now with this new IP. But what remained constant is the mention of Fly/b5051385 (2024-06-10), that was also in the older report when it was mentioning old IP. So I wonder if this is really waht is triggering it. Is this machine id on the Fly? Or some part of their network? I don't know, I asked them what this is, so we can figure out what we need to change. The best I can think of is getting rid of existing Fly machines we have for the client and procuring new ones, but I would love to understand better what Fly/b5051385 (2024-06-10) is first.

I learned that Fly/... is a header that Fly add's to the repsonses. But, I am not so sure Fly header is the issue anymore. I checked out our other apps hosted on Fly and they are not recognized as malicious, even though they have exactly the same header!
So either it has something to do with our page directly (URL? It uses .sh as a domain, could that be suspicious? Or word saas?), or maybe it did get flagged due to shared IP but now that flag is stuck to the URL.
So out of ideas currently except for waiting to see if false positive reports help.

I removed Fly's headers by adding to fly.toml file:
[http_service.http_options.response]
  pristine = true

and that got them removed, but still doesn't help.
One thing I did though was check for https://open-saas-wasp-sh-client.fly.dev/ on IQPS, and for this one it says it is ok! This is real URL of open saas client, while https://opensaas.sh is a redirect. Meaning that the problem is not with the page itself, but with the domain. Additionally, it also reports docs.opensaas.sh as malicious, which is Astro page, so totally different code. So it must be false positive exclusively based on the domain.
If that is so, I don't see what we can do besides asking them to remove that false positive from our domain, or to actually change the domain, which I really don't want to do.

I don't see this issue with other .sh domains.
I think this was just the IP issue that you mentioned earlier. Now the security firms have to update their db, which is usually at a corporate pace.

I probably worded it badly, but yeah I also don't think it has anything to do with the .sh domain, but with our specific opensaas.sh domain, due to getting tainted by that shared IP.
Yes I hope they will update their databases with time! I can try submitting some more reports in the future, but for now I don't have any more ideas.

It seems avast doesn't mark opensaas.sh domain as malicious anymore, yay! I guess they updated their database. IPQS still marks it as suspicious domain but ok I hope that will also pass. I will close this issue for now then.


Make httpproxy boot from volume

so that we can create a new external layout

I'm merging this is trivial and should have no impact.


Check and Radio (lists) - check accessibility by screenreaders

check if screen reader can read labels and states for those correctly.
Find solution if not

implemented

wrong issue, lol

moved to gitlab


Create LICENSE

Hi @yangl1996 I'd like to contribute a NixOS package for Nesthub but ideally this repo would have a license first. Are you comfortable using the MIT license for this repo?
Would you also be willing to cut a release like I've done in my fork? https://github.com/nateinaction/nesthub/releases/tag/v1.0.0
I'm happy to use my fork if you would prefer but my first choice is to work out of your original repo. Packaging for NixOS shouldn't require any changes to this repo beyond adding a license and a tagged release. The rest of the work will take place in https://github.com/NixOS/nixpkgs. Would you like to be tagged on those PRs?

Hi Nate,
Thanks for your offer! I’m happy to cut a release (and MIT license is ideal :), but I may not have time for long-term maintenance. If you would like to add features and maintain the project in the long term, I’m happy to transfer the maintainership.
Best,
Lei

On Sep 11, 2021, at 5:23 PM, Nate Gay @.***> wrote:
Hi @yangl1996 https://github.com/yangl1996 I'd like to contribute a NixOS package for Nesthub but ideally this repo would have a license first. Are you comfortable using the MIT license for this repo?
Would you also be willing to cut a release like I've done in my fork? https://github.com/nateinaction/nesthub/releases/tag/v1.0.0 https://github.com/nateinaction/nesthub/releases/tag/v1.0.0
I'm happy to use my fork if you would prefer but my first choice is to work out of your original repo. Packaging for NixOS shouldn't require any changes to this repo beyond adding a license and a tagged release. The rest of the work will take place in https://github.com/NixOS/nixpkgs https://github.com/NixOS/nixpkgs. Would you like to be tagged on those PRs?
You can view, comment on, or merge this pull request online at:
https://github.com/yangl1996/nesthub/pull/2 https://github.com/yangl1996/nesthub/pull/2
Commit Summary
Create LICENSE
File Changes
A LICENSE https://github.com/yangl1996/nesthub/pull/2/files#diff-c693279643b8cd5d248172d9c22cb7cf4ed163a3c98c8a3f69c2717edd3eacb7 (21)
Patch Links:
https://github.com/yangl1996/nesthub/pull/2.patch https://github.com/yangl1996/nesthub/pull/2.patch
https://github.com/yangl1996/nesthub/pull/2.diff https://github.com/yangl1996/nesthub/pull/2.diff
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/yangl1996/nesthub/pull/2, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOSIYIUAMZEH7HJIM32QCTUBPCDZANCNFSM5D3LDUIQ.

Hi Lei, thank you for the merge! Yes, I am interested in helping maintain this project and will accept maintainership if you choose to transfer.

Awesome! I've added you as a collaborator to this repo. Let me know if you would like to move the repo to your account, or if you need anything else :) There's still a bunch of functionalities that I'd like to add (multi-device support, for one and foremost), and several rough edges to smooth out (onboarding especially -- I tried automating everything but the GCP API and the relationship between GCP and the Nest developer API is so confusing!). I'll commit / send PR if I find some to sit down and work on this project ;) Meanwhile, thank you a lot for taking the maintainership!


BeaconUrl uses HTTP instead of HTTPS + LoadFromFile not working

Hello,
We experience 2 problems since we moved from :
Linux Debian 8.8 + nginx 1.10.3 + ngx_pagespeed <IP_ADDRESS>-0
(from deb http://packages.dotdeb.org jessie-nginx-http2 all)
to :
Linux Debian 9.4 + nginx 1.12.2 + ngx_pagespeed <IP_ADDRESS>
(from deb https://packagecloud.io/DaryL/libnginx-mod-pagespeed/debian/ stretch main)
Both servers use HTTPS with http/2 and memcached, nginx+pagespeed config are exactly the same.
The 2 problems on the new config are :

Pagespeed ignores LoadFromFile (all files are loaded from HTTP)
Some images are loaded via HTTP instead of HTTPS (mixed content), I think this is related to Pagespeed using http:// in the beacon URL instead of HTTPS

Does anyone have an idea of how to fix these problems please ?
/etc/nginx/nginx.conf
user www-data;
worker_processes auto;
pid /run/nginx.pid;
load_module modules/ngx_pagespeed.so; # This line is required on the new server and not on the old one, but that's the only difference

events {
	worker_connections 768;
	multi_accept on;
}

http {
  # ... nginx config here ...
  include snippets/pagespeed.conf;
}

/etc/nginx/sites-enabled/vhost.conf
server {
    listen 80;
    listen [::]:80;
    server_name www.example.com;
    return 301 https://$host$request_uri;
}
server{
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name www.example.com;
   # ... SSL config here ...
   include snippets/pagespeed-server.conf;
}

/etc/nginx/snippets/pagespeed.conf :
pagespeed on;
pagespeed FileCachePath  "/var/tmp";
pagespeed LogDir "/var/log/pagespeed";
pagespeed RewriteLevel CoreFilters;
pagespeed EnableFilters prioritize_critical_css;
pagespeed EnableFilters sprite_images,lazyload_images;
pagespeed EnableFilters convert_png_to_jpeg,convert_jpeg_to_webp;
pagespeed EnableFilters collapse_whitespace;
pagespeed EnableFilters defer_javascript;
pagespeed EnableFilters insert_dns_prefetch;
pagespeed EnableFilters canonicalize_javascript_libraries;
pagespeed FetchHttps enable;
pagespeed LoadFromFile "https?://$host/media" "$document_root/media";
pagespeed LoadFromFile "https?://$host/var" "$document_root/var";
pagespeed LoadFromFile "https?://$host/skin" "$document_root/skin";
pagespeed Disallow "*/admin/*";
pagespeed Disallow "*index.php/admin/*";
pagespeed MemcachedServers "<IP_ADDRESS>:11211";
pagespeed LoadFromFileCacheTtlMs 86400000;

pagespeed-server.conf :
# Ensure requests for pagespeed optimized resources go to the pagespeed handler
# and no extraneous headers get set.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
  add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }

I've tried to override the beaconUrl with :
pagespeed BeaconUrl "https://www.example.com/ngx_pagespeed_beacon";
But it doesn't seem to work.

Perhaps is not related, but I think you need to configure ssl certificates
pagespeed SslCertDirectory directory;
pagespeed SslCertFile file;
and the LoadFromFile diectives to be ended with slash
pagespeed LoadFromFile "https?://$host/media/" "$document_root/media/";
and need to auth the domain
pagespeed Domain http*://*.example.org;

Hi,
Just to bring a little bit of comfort, I have been battling the same issue LoadFromFile issue for a number of days. Details in this thread here: https://groups.google.com/forum/#!topic/ngx-pagespeed-discuss/bPOimYVrLBA
Just as a thought about your mixed content issue, I'd add update the port 80 server block to include the non www form of your domain. Something like this may help "upgrade" insecure requests:
server {     listen 80;     listen [::]:80;     server_name www.example.com example.com;     return 301 https://$host$request_uri; }
If your running Wordpress, be sure to add $_SERVER['HTTPS'] = 'on'; into wp-config.php and make sure the sites URL starts with HTTPS.
Shane :)

Apache: ModPagespeedAddResourceHeader "Content-Security-Policy" "upgrade-insecure-requests;" Nginx: pagespeed AddResourceHeader "Content-Security-Policy" "upgrade-insecure-requests;"
Might help you force browser only request resourse on HTTPS

Apache: ModPagespeedAddResourceHeader "Content-Security-Policy" "upgrade-insecure-requests;" Nginx: pagespeed AddResourceHeader "Content-Security-Policy" "upgrade-insecure-requests;"
Might help you force browser only request resourse on HTTPS

This helped resolve the mixed content warning issue for me on nginx 1.15.6 (Debian Stretch).
NOTE: the mixed content warning doesn't appear when running ngx_pagespeed in standby mode:
pagespeed standby;
and requesting the URL with the ?PageSpeed=on query parameter i.e.
https://example.com?PageSpeed=on

@mystix got the same issue. adding a CSP header helped. Thank you !

That's a shallow workaround IMHO. I think, the proper solution is following:
# to prevent pagespeed from rewriting https to http
pagespeed MapRewriteDomain https://example.com http://example.com;
pagespeed MapOriginDomain https://example.com http://example.com;

It worked for me, all links were replaced with https ones.

That's a shallow workaround IMHO. I think, the proper solution is following:
# to prevent pagespeed from rewriting https to http
pagespeed MapRewriteDomain https://example.com http://example.com;
pagespeed MapOriginDomain https://example.com http://example.com;

It worked for me, all links were replaced with https ones.

as it did help with beacon, it did not help with /?PageSpeed=noscript which is for some reason put as http instead of https

nginx 1.23.2 + pagespeed <IP_ADDRESS>-8917, and still the beacon is added as http:// when the only page working is http://` without 301;


binfmt: support euid of process set from the file system

Summary
From posix spec, if set-user-ID bit is set in the file permissions, then the effective user ID of the new process shall be set to the user ID of the new process image file.
Let's ignore whether ST_NOSUID is set on the mounted file system.
https://pubs.opengroup.org/onlinepubs/007904875/functions/exec.html
test step:
hello example build as a module and call geteuid and getegid API.
then set elf file set-user-ID bit in the host.
$ chmod +s apps/bin/hello

nsh> mount -t hostfs -o fs=. /data
nsh> ls -l /data/apps/bin/hello
 -rwsrwsr-x    1000    1000    9264 /data/apps/bin/hello
nsh> /data/apps/bin/hello
geteuid:1000
getegid:1000

Impact
None
Testing
sim & pass CI

Let's ignore whether ST_NOSUID is set on the mounted file system.

This, of course, makes this solution POSIX non-compliant.  Should we reconsider this?

Let's ignore whether ST_NOSUID is set on the mounted file system.

This, of course, makes this solution POSIX non-compliant. Should we reconsider this?

it's a special corner case, so the implementation is compliant with POSIX, but not fully. Since no file system in nuttx support or set this flag, this implementation conforms the spec until nuttx support ST_NOSUID.

Ok, I create an issue to track it: https://github.com/apache/nuttx/issues/10197.

it's a special corner case, so the implementation is compliant with POSIX, but not fully.

Which is the same as non-compliant.  Needs to be 100% to be POSIX compliant.

Since no file system in nuttx support or set this flag, this implementation conforms the spec until nuttx support ST_NOSUID.

ST_NOSUID is a mount flag.  It should not depend on any file system.  The mountflags would simply need to be retained and propagated to binfmt.
There is no reason that ST_NOSUID is not supported as far as I know.

it's a special corner case, so the implementation is compliant with POSIX, but not fully.

Which is the same as non-compliant. Needs to be 100% to be POSIX compliant.

There are many flags for mount. Sorry, I can't find mount from https://pubs.opengroup.org/, here comes from Linux:
https://man7.org/linux/man-pages/man2/mount.2.html
You can see that It's hard to implement all possible flags.
On the other hand, nuttx just defines one flag MS_RDONLY:
https://github.com/apache/nuttx/blob/master/include/sys/mount.h#L39
Even this simple flag which isn't really supported by nuttx yet.
nuttx doesn't provide MS_NOSUID and then it is impossible to mount a file system with ST_NOSUID, so the current implementation doesn't need handle ST_NOSUID at all.

Since no file system in nuttx support or set this flag, this implementation conforms the spec until nuttx support ST_NOSUID.

ST_NOSUID is a mount flag. It should not depend on any file system. Any file system should be mountable with ST_NOUSUID (although it might not be useful if the file system does not have UID or GID). The mountflags would simply need to be retained and propagated to binfmt.

Yes, but it doesn't store this information now. We need find a common place to save this flag, since VFS reuse inode to represent the mount point, one adhoc method is saving ST_xxx to inode::i_flags.

ROMFS should support the full I-node properties.
There is no reason that ST_NOSUID is not supported as far as I know.

Yes, no features can't be supported except some physical limitation (e.g., MMU).


Make Resource.action work with non-standard names

Fixes #3696

As much for my own understanding, is define_method much more expensive/more icky/less ...(* delete as appropriate) than class_eval? Otherwise, could you not use the rescued version all the time?

:+1: now that I understand (from slack) why you'd not want to use define_method all the time - please do add an explanatory comment though :)


Please link to https://qiskit.org/ecosystem/ibm-experiment/ in GitHub's About section

It is useful to have the link to the project docs on the GitHub home page for this repo.
To fix this, go to the "Code"/home page of the repo. Then click the wheel on the "about" section on the right. Set the website to https://qiskit.org/ecosystem/ibm-experiment/.

Thanks!
[BLOCKED BY https://github.com/Qiskit/qiskit-ibm-experiment/pull/61]

This is no longer blocked: https://qiskit.org/ecosystem/ibm-experiment/ now works 🎉

Hey @gadial , bump

done!


Windows平台上AS上利用Baze导入工程文件，一直报错，编译不过

Similar to https://github.com/google/mediapipe/issues/165, https://github.com/google/mediapipe/issues/137, https://github.com/google/mediapipe/issues/91, https://github.com/google/mediapipe/issues/113, and https://github.com/google/mediapipe/issues/126. Unfortunately, MediaPipe doesn't support Windows. If you are only interested in Windows, we support Windows Subsystem for Linux. You can find how to set up MediaPipe in WSL here.

@rockygao123 We have released MediaPipe on Windows with v0.7.5
Please check it out and give us feedback


local/download_data.sh: line 43: syntax error near unexpected token `fi'

In exmples/cnceleb/v2.
It seems that a fi is missing in that loop.

Thank you very much, the error has been fixed. See https://github.com/wenet-e2e/wespeaker/pull/121.


Support ScaleIO 2.0.1

New ScaleIO 2.0.1 release requires some minor modifications to our ScaleIO API requests in order to maintain compatibility. Problem is with ScaleIO Gateway not accepting version identifier that it provides via the /api/version endpoint. We have implemented a quick workaround to trim the version to be major.minor (eg: 2.0 instead of 2.0.1) and it now operates correctly.

fix merged in #599 after thorough testing against a ScaleIO 2.0.1 implementation


DefaultDeviceAttestationVerifier does not use correct vendorId and productId

Problem
Because the DeviceCommissioner code had no code to read basic information, there is no plumbing to use the correct device VID/PID during device attestation procedure to test the CD and DAC metadata, which are required by spec.
The code currently uses a fixed value that is not correct whenever a real DAC is used:
void DefaultDACVerifier::VerifyAttestationInformation(const ByteSpan & attestationInfoBuffer,
                                                      const ByteSpan & attestationChallengeBuffer,
                                                      const ByteSpan & attestationSignatureBuffer, const ByteSpan & paiDerBuffer,
                                                      const ByteSpan & dacDerBuffer, const ByteSpan & attestationNonce,
                                                      Callback::Callback<OnAttestationInformationVerification> * onCompletion)
{

    ......... A LOT OF OTHER CODE.........

    {
        CHIP_ERROR error = CHIP_NO_ERROR;
        ByteSpan certificationDeclarationSpan;
        ByteSpan attestationNonceSpan;
        uint32_t timestampDeconstructed;
        ByteSpan firmwareInfoSpan;
        DeviceAttestationVendorReservedDeconstructor vendorReserved;
        ByteSpan certificationDeclarationPayload;

        DeviceInfoForAttestation deviceInfo{
            .vendorId    = 0xFFF1,
            .productId   = 0x8000, // TODO: Retrieve vendorId and ProductId from Basic Information Cluster
            .dacVendorId = dacVendorId,
            .paiVendorId = dacVendorId,
        };

In the above, there is // TODO: Retrieve vendorId and ProductId from Basic Information Cluster to fill the correct DeviceInfoForAttestation.
Proposed Solution
Once there is code to read VID/PID during start of commissioning, we need to update the code above to take the right values.
This will require updating the structure of VerifyAttestationInformation.
To be more future proof, suggest making VerifyAttestationInformation replace the following args:
const ByteSpan & attestationInfoBuffer,
const ByteSpan & attestationChallengeBuffer,
const ByteSpan & attestationSignatureBuffer, const ByteSpan & paiDerBuffer,
const ByteSpan & dacDerBuffer, const ByteSpan & attestationNonce

with a new struct that encapsulates these, in addition to const DeviceInfoForAttestation &.

This is now complete. @tcarmelveilleux - if there is remaining work here, please re-open with details.


UDM Pro http issue

i have server running in my lan on lets say <IP_ADDRESS> i have tailscale running on my udm pro which is <IP_ADDRESS> i have port open in udm so that 80/443 go to <IP_ADDRESS> and everything works when i am not on tailscale but when i am on tailsacle i use udm pro as exit node and i try to go to my domain port forwarding doesn't work it goes to <IP_ADDRESS> instead of 5.5  any idea what might cause this ?

To be honest, I'm struggling to sketch out your specific network topology and what those requests look like.
By my understanding, you've got something like the following:
graph LR
    You1(You) --Web Request - Works--> Server(<IP_ADDRESS>)
    Server --Reply--> You1
    You2(You) --Web Request to <IP_ADDRESS>?--> Tailscale --> UDM --X--> Server
    UDM --Reply--> You2

Assuming that's correct, I'd like to understand what your "domain" is pointing to - are you making a request to <IP_ADDRESS> (i.e. is this a DNS A-record for <IP_ADDRESS>) or are you making a request to your UDM's Tailnet domain?

example.com -> UDM (ISP IP) -> 5.5
and from external network it works as it should
but from UDM when i request example.com it return UDM itself instead of 5.5

oh i have custom dns i'll try it

didn't work :( anyway as i understand its udm problem and not tailscale so i'll check with udm support thanks for quick response 👍

was there a fix for this issue? i have the same thing, i host lots of stuff on my home network that i expose to the internet and i can't access these when using my UDM as my exit node.


trying to use kube-runtime

Currently failing because I need to drain the reflector events and all my methods are failing:

not awaiting reflector -> nothing happens
passing reflector stream to a tokio::task -> can't because stream is not Send
passing reflector stream + actix server to a join -> can't because reflector one never ends (lacking a sig handler)
passing reflector stream + actix server to a select -> can't because reflector stream triggers all the time
^^ ditto but looping over the select -> can't because that would take ownership of the server in each loop

Probably could go the last way and put the server in some sync structure, but that is really hard for people to understand
`(dyn futures_core::stream::Stream<Item = std::result::Result<kube::api::object::WatchEvent<k8s_openapi::v1_17::api::apps::v1::deployment::Deployment>, kube::error::Error>> + 'static)` cannot be sent between threads safely

leaving it boxed for now


did you filed any issued on the plugin you originally tested?

I am unable to send the notifications to Microsoft Team from Rundeck. I am using the latest version of Rundeck 2.9.3-1

The latest rundeck version, where we run this plugin, was 2.6.9-1.
Maybe we have some time to test it in the next days


[testgrid] add centos 7

Let's add CentOS 7.6, 7.7 and 7.8 images to the testgrid workflow.
@mzaneri assigning this to you, but we should pair on it

Resolved by #769


chore: Remove internal enum representations

The internal enums brought more complexity than value. In this PR I replaced them with simple literal string values.
Relates to SAP/cloud-sdk-backlog#1014

[x] I know which base branch I chose for this PR, as the default branch is v2-main now, which is not for v3 development.
[x] If my change will be merged into the main branch (for v3), I've updated (V3-Upgrade-Guide.md)[./V3-Upgrade-Guide.md] in case my change has any implications for users updating to SDK v3

Nice thing getting rid of the enums.
Not wanting to bike shed, but I'm wondering if this alternative pattern could make sense for us? I think this would preserve the nice aspects of enums without their downsides (as far as I understand with my limited typescript knowledge)
cf playground here


Manual Installation not through Composer

Hi,
Any way to install without composer
Best Regards
Samir

My app already running in shard hosting and haven't SSH or any thing to run composer.

When a composer package requires 20 dependencies and each of them could require average 10 other dependencies, you can easily have to install hundreds packages manually then handle all possible PSR autoload. Or you can just rely on composer.
You don't need SSH access for Composer, you can install composer dependencies locally, then upload the whole vendor directory.

This ↑ would be the recommended approach, yes.

I put the required package on composer json file, then upload the package locally to vendor/jenssegers/date, then add the 'Date' => Jenssegers\Date\Date::class, to config/app.php.
in controller i use Jenssegers\Date\Date; but get Class 'Jenssegers\Date\Date' not found.
I don't have much experience so please more explain ?

You need to upload the entire vendor/ directory. There will be other dependencies in there, and the Composer autoloader files will have been updated as well.

@danhunsaker all dependencies already there i just upload the Date package. the app already in the server i just want to add the date package

I get that, but Date has its own dependencies, and the autoloader files are still updated any time you install a new package. So you need to upload the entire thing every time. I recommend using rsync for that to skip uploading files that are already in place and unchanged, but you still need to upload everything. Every time.

Got it, Thank you.


Nullpointer exception on Android 11 devices

Running into two NPE on Android 11 devices in our app. This is impacting users from preventing any feedback, makes the SDK useless.
Attached screenshot of the crashes from firebase.

SDK Version is : 2.13.0.

Hi @prasannarupan , could you upgrade to the latest version? Version 2.13.0 is really old now and we've pushed a couple of fix and changes since then.
Thanks!

@diegoserranoa sure we can push to the latest version.

hi @diegoserranoa : our app has your SDK version 2.21.0 in production right now and the crash is still happening on Android 11 devices. I'd like your team to look into this and get it addressed. can you give me a timeline for this fix

?

We got similar crash:


High RU cost for case insensitive string functions

Describe the bug
I'm not sure if this is the appropriate repository to report to.  I have a container with a million documents, and it seems enabling the case insensitive flag in any string function causes a huge spike in request charge costs.
According to a blog released July, 2020, string functions now support case insensitivity and are supposed to be low cost:
https://devblogs.microsoft.com/cosmosdb/new-string-function-performance-improvements-and-case-insensitive-search/
I don't exactly know how to communicate how to reproduce this other than basic examples.

I have observed this issue across multiple databases in Azure
I have also observed this using the Emulator
The shape of the document or type of query does not seem to matter

Examples:
SELECT * FROM c
where
  c.partitionKey = 'Allergy'
  and StringEquals(c.Patient.Name, 'John Smith', false)

RU Cost: 8.6 RUs
SELECT * FROM c
where
  c.partitionKey = 'Allergy'
  and StringEquals(c.Patient.Name, 'John Smith', true)

RU Cost: 18,607 RUs

@sboshra or @timsander1 do you have any suggestions?

Is name a pretty high cardinality property? If it is, you can improve system function execution using this step in our troubleshooting guide.
Rewrite the query to:
SELECT * FROM c
where
c.partitionKey = 'Allergy'
and StringEquals(c.Patient.Name, 'John Smith', true)
ORDER BY c.partitionKey, c.Patient.Name
And create a composite index on (c.partitionKey, c.Patient.Name)

@timsander1 Yes it is a high cardinality.  My example above is a simplified one.  In the real world scenario, the data we are searching is in a nested array.  It was my understanding that composite indexes do not support properties found within nested arrays.  Is this correct?
So am I to understand that case insensitive searches do not utilize the index?

Case insensitive searches utilize the index but for StartsWith and StringEquals, do so less efficiently than case sensitive searches. The RU charge will increase as the cardinality of the property in the string system functions increases. However, 18,000 RUs seems abnormally high. Are you able to file a support ticket for this issue?
And yes, that's correct about using composite indexes with arrays. However, you could still try adding ORDER BY (even without a composite index). As long as the system function property is in the ORDER BY clause, it can make a big difference.

@timsander1 Yes along with this github issue, I filed a support ticket and they are helping investigate too.
The biggest challenge with this is the fact that we chose to normalize our searchable data within a nested array.  We got the idea from Microsoft's FHIR Server, which utilizes Cosmos.  Before case insensitive searches were supported, we were able use this technique to store normalized text so that we could perform our own insensitive searches.
We stopped storing normalized text when we thought Cosmos began supporting case insensitivity natively.  We're just now finding out that there are limitations like this and we may be better off continuing to do the normalization ourselves.

Here is some new documentation for improving system function index utilization : https://docs.microsoft.com/en-us/azure/cosmos-db/troubleshoot-query-performance#improve-string-system-function-execution

@timsander1 Thank you for the documentation.
Something that isn't explained well is - what determines which properties should be placed in the ORDER BY and composite indexes in order to receive this performance improvement?
We often perform queries with expressions on a wide variety of properties, some of which are basic binary expressions and others are string functions.  The example in the documentation is including both c.name, c.town, even though only c.town was using a string function.  If there had been a 3rd property involved in the WHERE clause, would that property also need to go in the composite index?

You would want to include it if it were an equality filter (you can have up to 8 in a composite index) but you can only have a maximum of 1 range filter (which would be your string system function)

@timesander1
Can cosmos internal indexing store a normalized version of the text along with the natural version?  This way, case-insensitive string functions can use the normalized index.
e.g.
document:
{
  name: "Justin Hopper"
}
index: {
    "name": "Justin Hopper",
    "name_normalized": "JUSTIN HOPPER"
  }
}

We are already doing this manually ourselves in our Cosmos database, as we had to come up with case insensitive support on our own when we started using Cosmos 2 years ago.  It worked well for us and we're considering reviving the technique and abandoning case-insensitive string functions altogether due to the reliance of customizing composite indexes.
An example of how we store our data: https://github.com/microsoft/fhir-server/blob/main/docs/SearchArchitecture.md#persistence

For now, you could do this manually. In the future (rough ETA is Q32021), we plan to add the ability to index system function so you could index UPPER() or LOWER(). You'd still have to explicitly index UPPER() or LOWER(), though

@timsander1 Can you explain a bit further on the future enhancement of UPPER() and LOWER()?  Are you saying that we will be able to use UPPER() for comparisons without a performance hit?  Will this require explicitly defining an index on the property or will the auto-indexing support this?

That's correct - you'd be able index the UPPER() function's value so that you could do easy case insensitive comparisons and ORDER BY. We'll give you the ability to define a computed property and index it. This won't be by default, you'd have to specifically add it.


Backward op support for Repeat

yes @jliangTT, with few constraints the repeat backward has been completed.

Do you mind enumerating the constraints here and then we can review and close. thanks!

We can't enumerating the constraints here @jliangTT, since it requires more dim support, hence we restricted the repeat backward. Repeat backward has been already merged to main, hence we close the ticket.


SvelteFlow: trigger on:delete before deletion (rather than after)

Please describe the feature that you want to propose
Currently, on:delete is triggered after deletion. This is problematic as it makes more difficult deleting extra assets (that may be tracked in .data).
The current workaround is to disable deletion, and to implement a context menu, however this is not intuitive as the delete key is the primary goto for deletion.

Couldn't you still remove those extra assets? The passed nodes/edges would be the same and you can't change what gets deleted with the ondelete handler.


Adding filtering to group by schema and switching to using name from displayName in oe filters.

UI:
When group by schema is disabled:

When group by schema is enabled:

Filters for schema:

Updating STS to get the backend changes:
https://github.com/microsoft/sqltoolsservice/compare/<IP_ADDRESS>...<IP_ADDRESS>

@smartguest  and @caohai are sts the changes good to bring in?

My commits are safe to bring into main.


Back is not implemented

You cannot go back to the previous step

It would definitively be helpful :+1:. The change has been done.
Thanks for you feedback @utix.


Envelop X SPOILERS …

Are there plans to add Bladeswarm abilities to the app? Thanks. Mind you the new version Isaac released a few months ago.

Hey, BS is available.
You have to enable the X envelop in the Expansion options:

I didn’t see the new cards he released in January. . .
https://cdn.shopify.com/s/files/1/0281/0173/8555/files/Bladeswarm_PnP.pdf

Is there a way to reopen this?

mb, didnt see there were new cards.

No worries!! Thanks for keeping this up-to-date! :-)

This needs to be re-opened. The character has been redesigned entirely with a new PDF on the website. Any2Cards does have the updated ability cards. Not sure if the Perks were changed.


1.4 Frontend centered functionalities

As a user I want to be able to have all functionalities centered on the frontend application so I can navigate more easily.
Scenario: The user enters the home page and is able to navigate through the user interface via the frontend application without having to use another platform besides the frontend application
Acceptance Criteria:
Given that i have entered the frontend application
When i click any of the button displayed
Then the buttons are all connected to the frontend application

It seems that this issue has been completed through several other issue completions. We may need to setup a unit test to verify. Closing for now.


Why am I getting an empty string for any response?

claude = Claude(cookie)
Found old conversations, using the most recent one
claude.create_new_conversation()
New Conversation Created
prompt = 'What city should I visit in Florida?'
response=claude.get_answer(prompt)
print(response)
response
''

this package works for me: https://github.com/AshwinPathi/claude-api-py


System Variables do not seem to be available in the template condition despite what this documentation page claims

Hey,
This page claims that:

Template expressions
...
Additionally, you have access to the variables context that contains all the variables specified in the YAML file plus the system variables.

I have a hard time trying to make it work. Consider the following pipeline definition. It uses template expression where it checks a value from System.PullRequest.PullRequestId system variable:
variables:
  systemVariableCondition: $[lt(0, variables['System.PullRequest.PullRequestId'])]
  ${{ if lt(0, variables['System.PullRequest.PullRequestId']) }}:
    dependentVariable: "some value"

phases:
- phase: Build
  displayName: Build
  steps:
  - powershell: |
      Write-Host "dependentVariable: $(dependentVariable)"

Run-time variable systemVariableCondition is in this definition just to confirm that system variable in question has expected value.
Here is the output from the "Prepare job" step, please note that expected variable dependentVariable was not introduced:
##[section]Starting: Prepare job Build
Variables:
  systemVariableCondition:
    Parsing expression: <lt(0, variables['System.PullRequest.PullRequestId'])>
    Evaluating: lt(0, variables['System.PullRequest.PullRequestId'])
    Expanded: lt(0, '335')
    Result: 'True'
ContinueOnError: False
TimeoutInMinutes: 60
CancelTimeoutInMinutes: 5
Execution:
##[section]Finishing: Prepare job Build

So the step fails:
+ Write-Host "dependentVariable: $(dependentVariable)"
+                                  ~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (dependentVariable:String) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : CommandNotFoundException

##[error]PowerShell exited with code '1'.

Please elaborate what exactly this page means by stating that one has access to system variables in a template expression.

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

ID: 6724abea-bbdc-bf66-ed5e-3214fa6c3e66
Version Independent ID: 4f8dab21-3f0e-da32-cc0e-1d85c13c0065
Content: Templates - Azure Pipelines
Content Source: docs/pipelines/process/templates.md
Product: devops
Technology: devops-cicd-process
GitHub Login: @juliakm
Microsoft Alias: jukullam

@ferrata -- Alexander, thank you for your feedback.  Please look here as well:

Azure DevOps Support Bot
Azure DevOps on Stack Overflow

I am closing this issue now.  You are welcome to @ mention me for any followup.  We hope to hear from you again.
cc @juliakm for awareness

@WilliamAntonRohm,
Hey, can you please explain why you have closed the issue and what is the answer to my question?
Thanks

@ferrata -- Alexander, I may have misunderstood your initial request.
@juliakm -- Julia, please look into this issue.

I have the same issue.

Hi @ferrata,
I think you faced the same problem as me currently. Could it be that you are currently not on an pull request build but an automated CI build?
It seems, that if your are not on a PR you do not have access to the variable in this context and you will get the aforementioned error. Just add a condition as shown below to make sure you are on a PR:
- job: Database condition: eq(variables['Build.Reason'], 'PullRequest')

System variables do not seem to expand. I have this issue
parameters:
  CheckoutDirectory: $(System.DefaultWorkingDirectory)

  - ${{ if eq(parameters.Type, 'terraform') }}:
    - template: ${{ parameters.CheckoutDirectory}}/builds/${{ parameters.Type }}/build.yml

it error complaining it's unable to find /$(System.DefaultWorkingDirectory/builds/terraform/build.yml
This si extremely frustrating, I've tried so many hacks to get this to work but it appears if any system variables are used it will not expand but anything else is fine.

@abelal83 Not all system variables are not available in templates. On the Predefined Variables page, there is a column titled Available in Templates? that says whether you can use the variable in a template.


Conflict when use with webpack

When I use this css into a webpack project, I have this warning
[... for every country...]
 warning

Conflict: Multiple assets emit different content to the same filename img/vi.svg

 warning

Conflict: Multiple assets emit different content to the same filename img/zw.svg

I think the problem is that there are two folder (1x1 and 4x3) with the icon as the same filename.

but why they appear in the same folder?

In my case this was happening because the file loader was configured as such:
 29        {
 30          test: /\.(png|svg|jpg|gif)$/,
 31          loader:
 32            'file-loader',
 33         options: {
 34           name: './images/[name].[ext]',
 35         },

and all images were dumped into the images folder with no regard to their initial path. Adding [path] to the name parameter allowed original folders to be maintained, so the 1x1 and 4x3 flags are no longer mixed together.


time:Add time based dis-aggregation to indicator library.

link:https://github.com/GoogleCloudPlatform/openmrs-fhir-analytics/issues/112

Closing this stale PR; please reopen and respond to comments if this is still needed.


fix StartUpToDateCheck with VSUTDCF_DTEEONLY option,

fix #471
return build not up-to-date if flag VSUTDCF_DTEEONLY is used for StartUpToDateCheck.

@enricosada thanks for taking a look at this. We don't want to leave it unsupported, though, up-to-date check should still work even with the DTEEONLY flag.  If we see this flag, I believe we should simply take a slightly different codepath (avoid some APIs that do not apply in this scenario).
Let me check C# project system and see what proper behavior should be.

A proper fix is better.
this pr is like old behavior  and third party works , only invoke an unnecessary build ( but np )
If the fix is too complicated this pr can be a workaround for vs 2015

Closing this out in favor of #479


Spot cleaning

Hello. Very good job to refactor all components for the Dreame D9!
I've started to alter the code as well, but not as much as you did ;-)
I've tried to implement a "Spot cleaning" function, but without any luck. Did you manage to do so?
It seems that the payload with value "20" has no effect...
     def clean_spot(self) -> None:
         """Spot Cleaning."""
         payload = [{"piid": 1, "value": 20}]
         return self.call_action(4, 1, payload)

I was looking into it today but was distracted by the remote control, service because spot cleaning need some sort of remote control to first get the bot there :D  The remote control seems to do what it wants no matter the parameters ( better said, I'm probably mistaking what the parameters mean).

Actually, I would like to reproduce the behaviour of the physical button 'spot cleaning'. Usually, I take the robot myself to put it on the dirty spot. That said, it's easy for me to press the physical button on the robot, but I would be cool to have it on the Vacuum Card as well.
I thought that starting the robot with the "value" set to 20 would do the trick but it's not working :( That's weird, because fast map is working (when you set value to 21).
Last, maybe it's not supposed to work. After all, the Xiaomi Home app does not have a "spot cleaning" button, so maybe the robot is not supposed to treat this command.

My hunch is that it needs additional info "piid":10 like room cleaning and zone cleaning both do. probably to specify how large the spot should be. if only we had some sort of documentation...

 I'll run some tests in that direction.

Please let me know if you had a breakthrough.
In the meantime I figured out how the values to remote control work. I will correct the service definition for it.
it's pretty odd, like the robot moves one time unit let's say 2 seconds every time I send a command.

The spdv property is the speed it moves in that window of time. Maximum +100 (forward), Minimum -300 backwards.
The spdw is the angle measured in binary degrees so 64 means 90° CCW and -64 means 90° CW. Maximum 128, Minimum -128

These two can be combined to move in sort of an arc.

Hi. You mean spot cleaning as  just a small point, or as a rectangle clean zone? How to use a clean zone? I managed to send  the vacuum to clean zone on https://github.com/microfrost1/xiaomi_vacuum version, but still can't do it on your fork.

Hi. You mean spot cleaning as just a small point, or as a rectangle clean zone? How to use a clean zone? I managed to send the vacuum to clean zone on https://github.com/microfrost1/xiaomi_vacuum version, but still can't do it on your fork.

Hi there, yes the spot cleaning as in clean the 1.5mx1.5m "spot" that the robot is at. Just like pressing the button on the thing itself. Unfortunately I could not find any documentations on what extra payloads it requires to perform spot cleaning.
About the zone cleaning; I added examples in all of the service definitions.  You can press the Fill example data button in home assistant's developer tools and check how the data should look like.

Maybe there is a difference between the data that this version expects and the one by microfrost1. These two versions could have lots of difference now as I changed a lot of stuff and tried my best to make it easier to use and develop further ( if needed )


fix url in e2e bootst example

Description
one url in document about boost data provider section is not correct. this pr fixes the url from /v2/assets to /v3/assets

Pre-review checks
Please ensure to do as many of the following checks as possible, before asking for committer review:

[x] DEPENDENCIES are up-to-date. Dash license tool. Committers can open IP issues for restricted libs.
[x] Copyright and license header are present on all affected files

@qduxiaoliang thank you very much for your contribution. Currently, we cannot merge it because the ECA were not signed. Please sign the ECA -> https://eclipse-tractusx.github.io/docs/getting-started/#eclipse-foundation-account

Thank you very much for your contribution. Since this file was deleted anyway, I would close the PR. Please don't forget to sign the ECA.


[Bug] v1.84.0 Breaks tool cursors

Describe the Bug
Using PanTool, RectangleROIThresholdTool, SplineContourSegmentationTool, StackScrollMouseWheelTool, WindowLevelTool, ZoomTool tools; their cursors worked fine up to the library v1.83.4; and they are broken in v1.84.0 — after the cursor is moved into the image it is rapidly reset to the default pointer because cursor: auto is set on the DICOM viewport.
Steps to Reproduce
Above.
The current behavior
Above.
The expected behavior
Above.
OS
Ubuntu
Node version
20.16.0
Browser
Chrome

Hello, I found the same problem, you found it earlier than me

I also have this problem and it is also in the official examples of cornerstone3d

I have the same problem, do you know what important features would I miss going back to to v1.83.4?

Does anyone know when this can be resolved？

How can i reproduce it?


Bug 1072350 - Removing CPOWs used by Find events.

/botio-linux preview

With this patch applied, searching seems to work exactly the same both with/without e10s, which is great!
However, I noticed that with e10s enabled the following message is printed in the browser console:
A request for a CPOW wrapped chrome window failed for unknown reasons. PdfjsContentUtils.jsm:175:0

I'm not sure if that is related to this patch, or if it existed previously and was simply "uncovered" by the patch, but I figured I would mention it just in case. (Direct link to the code: PdfjsContentUtils.jsm:175:0.)

The commit also needs to be rebased to the current master.

@krizsa The only caller of getChromeWindow that I can find in the code is PdfStreamConverter.jsm#L997, or in your patch PdfStreamConverter.jsm#L999.
Unfortunately the addon debugger ignored my attempts to set breakpoints with e10s active, so I cannot confirm it, but according to a search that should be the only place.

@Snuffleupagus Thanks, that call was totally unnecessary I thought I have removed that line. Maybe it was lost when I converted the patch from mercurial to git. Anyway, I fixed it, so the problem should be fixed now, and I've also rebased the patch.

/botio-linux preview

Really good. That you for the patch.


fix(windows-paths): always use posix join on normalized line

closes #390

Thanks for the PR! Can you revert the changes on package-lock.json and yarn.lock? Then it is good to go!

Oh right, fixed now, cheers

released in v4.0.0


integration db_admin govuk_env_sync::tasks: add pull_ckan_production task

"disabled" so it can only be run manually. Integration ckan's database hasn't been refreshed in quite a while it seems.

Wheeee


DOC fix link to the NumPy COC

The current link for the NumPy COC is not available anymore.

Thanks @glemaitre!


Edit wording for concision in README.md

Change the Carlo functionality description from list to paragraph for better readability.

I don't think this improves the readability / adds value.


Support for Unity 2018.2.12f1? The windows target pkg installation fails sadly.

Any fixes? New to using Travis CI.

Could you post the build log from Travis here? That should give a clue as to what might be going on.
The main idea of this Travis CI enviroment is that it builds unity projects using the Mac OX version of Unity. From here, it is just a series of scripts (bash) to execute testing, building, and packaging your unity project.
As far as i know, using Unity in a CI enviroment like this for free is currently unsupported by the developers. So newer versions of unity may break it. You could try building with an older version.
I would like to see if your issue could be a matter of an easy fix though. Otherwise, there's not much I can do as the Unity developers move towards supporting their Unity cloud build product.

Ah, so in the repository, there is a travis-build/install-unity.sh . In this script file are two instructions to install Unity itself, and a windows support plugin.
From the logs, it seems that the package installer could not find the "UnitySetup-Windows-Support-for-Editor-2018.2.12f1.pkg" that it downloaded. I suggest inserting the ls command in the script to display the contents of the downloads folder and make sure that the file actually exists there and try again. It could be that the name of the file is wrong or the filepath is incorrect.


Support "export * as ns from 'some-module'"

🚀 Feature request
Command (mark with an x)

[ ] new
[x] build
[x] serve
[ ] test
[ ] e2e
[ ] generate
[ ] add
[ ] update
[ ] lint
[ ] extract-i18n
[ ] run
[ ] config
[ ] help
[ ] version
[ ] doc

Description
Support ECMAScript Proposal: export ns from
For now, it will throw a SyntaxError during compiling.
Module parse failed: Unexpected token (1:9)
File was processed with these loaders:
 *<EMAIL_ADDRESS>You may need an additional loader to handle the result of these loaders.
> export * as Form from './form';

Describe the solution you'd like
Describe alternatives you've considered

Duplicate of https://github.com/angular/angular-cli/issues/17231#issuecomment-709372331


Added Xournal++

Closes https://github.com/wimpysworld/deb-get/issues/164
Tested/Working locally

I am pulling down this PR until i get a chance to fix the issues and squah commits into one when approriate


GoogleMap: Animating the camera in onMapCreated causes a PlatformException: Map size can't be 0

Is there an existing issue for this?

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

Steps to reproduce

Run the code below, press the "Toggle Map" button.
One of two options can happen:
A stacktrace is emitted, nothing else happens.
The city of Bonn is zoomed into view.
When adding a delay of 500ms+ before calling animateCamera the animation is always applied.

Note: This looks like a race, between the Maps widget knowing it's size and emitting the onMapCreated to early, causing the animateCamera to fail.

The issue was reported multiple times https://github.com/flutter/flutter/issues/47241, https://github.com/flutter/flutter/issues/29181 but never resolved.
Expected results
The camera should be moved to the bounding box, zooming to the city.
Actual results
An exception is raised, the camera does not move to the desired position.
Code sample
Code sample
import 'package:flutter/material.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';

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

class MapsMapsEverywhere extends StatefulWidget {
  const MapsMapsEverywhere({super.key});

  @override
  State<MapsMapsEverywhere> createState() => _MapsMapsEverywhereState();
}

class _MapsMapsEverywhereState extends State<MapsMapsEverywhere> {
  bool _showMap = false;
  GoogleMapController? _controller;

  @override
  Widget build(BuildContext context) {
    return SafeArea(
      child: Directionality(
        textDirection: TextDirection.ltr,
        child: Column(
          children: [
            ElevatedButton(
              onPressed: () {
                setState(() {
                  _showMap = !_showMap;
                });
              },
              child: const Text(
                'Toggle Map',
              ),
            ),
            _showMap ? Expanded(child: _buildGoogleMap()) : Container(),
          ],
        ),
      ),
    );
  }

  GoogleMap _buildGoogleMap() {
    return GoogleMap(
      onMapCreated: (c) async {
        _controller = c;
        await c.animateCamera(
          CameraUpdate.newLatLngBounds(_bounds(), 50),
        );
      },
      initialCameraPosition: const CameraPosition(
        zoom: 8.6,
        target: LatLng(50.733334, 7.100000),
      ),
    );
  }

  LatLngBounds _bounds() {
    return LatLngBounds(
        southwest: const LatLng(50.6, 7.05),
        northeast: const LatLng(50.8, 7.09));
  }

  @override
  void dispose() {
    _controller?.dispose();
    super.dispose();
  }
}

Screenshots or Video
No response
Logs
Logs
E/flutter (11641): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(error, Error using newLatLngBounds(LatLngBounds, int): Map size can't be 0. Most likely, layout has not yet occurred for the map view.  Either wait until layout has occurred or use newLatLngBounds(LatLngBounds, int, int, int) which allows you to specify the map's dimensions., null, com.google.maps.api.android.lib6.common.apiexception.c: Error using newLatLngBounds(LatLngBounds, int): Map size can't be 0. Most likely, layout has not yet occurred for the map view.  Either wait until layout has occurred or use newLatLngBounds(LatLngBounds, int, int, int) which allows you to specify the map's dimensions.
E/flutter (11641): 	at com.google.maps.api.android.lib6.common.m.h(:com.google.android.gms.dynamite_mapsdynamite<EMAIL_ADDRESS>(190800-0):8)
E/flutter (11641): 	at com.google.maps.api.android.lib6.gmm6.api.c.l(:com.google.android.gms.dynamite_mapsdynamite<EMAIL_ADDRESS>(190800-0):28)
E/flutter (11641): 	at com.google.maps.api.android.lib6.impl.ae.a(:com.google.android.gms.dynamite_mapsdynamite<EMAIL_ADDRESS>(190800-0):10)
E/flutter (11641): 	at com.google.maps.api.android.lib6.gmm6.api.c.z(:com.google.android.gms.dynamite_mapsdynamite<EMAIL_ADDRESS>(190800-0):31)
E/flutter (11641): 	at com.google.maps.api.android.lib6.impl.bk.o(:com.google.android.gms.dynamite_mapsdynamite<EMAIL_ADDRESS>(190800-0):25)
E/flutter (11641): 	at com.google.android.gms.maps.internal.i.bb(:com.google.android.gms.dynamite_mapsdynamite<EMAIL_ADDRESS>(190800-0):1924)
E/flutter (11641): 	at m.fi.onTransact(:com.google.android.gms.dynamite_mapsdynamite<EMAIL_ADDRESS>(190800-0):21)
E/flutter (11641): 	at android.os.Binder.transact(Binder.java:1064)
E/flutter (11641): 	at com.google.android.gms.internal.maps.zza.zzc(com.google.android.gms:play-services-maps@@18.1.0:2)
E/flutter (11641): 	at com.google.android.gms.maps.internal.zzg.animateCamera(com.google.android.gms:play-services-maps@@18.1.0:3)
E/flutter (11641): 	at com.google.android.gms.maps.GoogleMap.animateCamera(com.google.android.gms:play-services-maps@@18.1.0:2)
E/flutter (11641): 	at io.flutter.plugins.googlemaps.GoogleMapController.animateCamera(GoogleMapController.java:131)
E/flutter (11641): 	at io.flutter.plugins.googlemaps.GoogleMapController.onMethodCall(GoogleMapController.java:306)
E/flutter (11641): 	at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:258)
E/flutter (11641): 	at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
E/flutter (11641): 	at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:322)
E/flutter (11641): 	at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(Unknown Source:12)
E/flutter (11641): 	at android.os.Handler.handleCallback(Handler.java:938)
E/flutter (11641): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/flutter (11641): 	at android.os.Looper.loopOnce(Looper.java:201)
E/flutter (11641): 	at android.os.Looper.loop(Looper.java:288)
E/flutter (11641): 	at android.app.ActivityThread.main(ActivityThread.java:7839)
E/flutter (11641): 	at java.lang.reflect.Method.invoke(Native Method)
E/flutter (11641): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
E/flutter (11641): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
E/flutter (11641): )
E/flutter (11641): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:652:7)
E/flutter (11641): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:310:18)
E/flutter (11641): <asynchronous suspension>
E/flutter (11641): #2      _MapsMapsEverywhereState._buildGoogleMap.<anonymous closure> (package:maps/main.dart:47:9)
E/flutter (11641): <asynchronous suspension>
E/flutter (11641):

Flutter Doctor output
Doctor output
[xx@fedora maps]$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.13.6, on Fedora Linux 38 (Workstation Edition) 6.5.5-200.fc38.x86_64, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[✓] Android Studio (version 2022.3)
[✓] VS Code (version 1.82.2)
[✓] Connected device (3 available)
[✓] Network resources

• No issues found!
[xx@fedora maps]$

Thanks for the detailed report. Was able to replicate the error using latest stable and master versions on Android. The reported exception doesn't occur while running on iOS.

 stable, master flutter doctor -v
[!] Flutter (Channel stable, 3.13.6, on macOS 12.2.1 21D62 darwin-x64, locale
    en-GB)
    • Flutter version 3.13.6 on channel stable at
      /Users/dhs/documents/fluttersdk/flutter
    ! Warning: `flutter` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/flutter, which is not inside
      your current Flutter SDK checkout at
      /Users/dhs/documents/fluttersdk/flutter. Consider adding
      /Users/dhs/documents/fluttersdk/flutter/bin to the front of your path.
    ! Warning: `dart` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/dart, which is not inside your
      current Flutter SDK checkout at /Users/dhs/documents/fluttersdk/flutter.
      Consider adding /Users/dhs/documents/fluttersdk/flutter/bin to the front
      of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ead455963c (5 days ago), 2023-09-26 18:28:17 -0700
    • Engine revision a794cf2681
    • Dart version 3.1.3
    • DevTools version 2.25.0
    • If those were intentional, you can disregard the above warnings; however
      it is recommended to use "git" directly to perform update checks and
      upgrades.

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

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

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

[✓] Connected device (5 available)
    • SM G975F (mobile)       • RZ8M802WY0X • android-arm64   • Android 11 (API 30)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 98.0.4758.80

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

! Doctor found issues in 1 category.

[!] Flutter (Channel master, 3.15.0-13.0.pre.2, on macOS 12.2.1 21D62
    darwin-x64, locale en-GB)
    • Flutter version 3.15.0-13.0.pre.2 on channel master at
      /Users/dhs/documents/fluttersdk/flutter
    ! Warning: `flutter` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/flutter, which is not inside
      your current Flutter SDK checkout at
      /Users/dhs/documents/fluttersdk/flutter. Consider adding
      /Users/dhs/documents/fluttersdk/flutter/bin to the front of your path.
    ! Warning: `dart` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/dart, which is not inside your
      current Flutter SDK checkout at /Users/dhs/documents/fluttersdk/flutter.
      Consider adding /Users/dhs/documents/fluttersdk/flutter/bin to the front
      of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 938bb217fb (4 days ago), 2023-09-28 21:11:31 -0700
    • Engine revision 2052515c44
    • Dart version 3.2.0 (build 3.2.0-210.0.dev)
    • DevTools version 2.28.1
    • If those were intentional, you can disregard the above warnings; however
      it is recommended to use "git" directly to perform update checks and
      upgrades.

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/dhs/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for
      more details.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 13C100
    • CocoaPods version 1.11.2

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

[✓] IntelliJ IDEA Ultimate Edition (version 2021.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 65.1.4
    • Dart plugin version 213.7228

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

[✓] Connected device (3 available)
    • Darshan's iphone (mobile) • 21150b119064aecc249dfcfe05e259197461ce23 • ios
      • iOS 15.3.1 19D52
    • macOS (desktop)           • macos                                    •
      darwin-x64     • macOS 12.2.1 21D62 darwin-x64
    • Chrome (web)              • chrome                                   •
      web-javascript • Google Chrome 109.0.5414.119

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

! Doctor found issues in 1 category.

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

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

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

[✓] Connected device (5 available)
    • SM G975F (mobile)       • RZ8M802WY0X • android-arm64   • Android 11 (API 30)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 98.0.4758.80

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

! Doctor found issues in 1 category.

The issue was reported multiple times #47241, #29181 but never resolved.

https://github.com/flutter/flutter/issues/29181 is still open; please don't deliberately file duplicate issues. If there is new technical information that would contribute to a solution, please add it there.
Closing as a duplicate.


feat: Add config generation script and container to OpenStack-Helm

What is the purpose of this pull request?: To add config generation script and container to OpenStack-Helm
What issue does this pull request address?: Implements core functionality.
Notes for reviewers to consider:
This is very much a WIP currently, and pulls in a slightly :) Cleaned up version of the script developed by @alanmeadows in https://github.com/alanmeadows/gen-oslo-openstack-helm
Specific reviewers for pull request:
@alanmeadows @wilkers-steve @flaper87

I was able to build: glance keystone, heat config no problem  i hit an issue when doing neutron

@gardlt Hmmm, neutron seems to take a different path to the rest :( https://github.com/openstack/neutron/blob/master/tox.ini#L145, I'll see if i can accommodate the way they are doing it.

I've redone the entrypoint script to hack tox.ini, I think this method should be able to cope with all the potential methods people have used.
@gardlt, @v1k0d3n, @alanmeadows this thing is ready for your expert gaze :)


Update the documentation in /administrators once cloudbank.2i2c.cloud exists

All our docs here: https://2i2c.org/pilot/administrators.html
mention *.pilot.2i2c.cloud, but we should mention the existence of multiple versions of this once #64 is resolved

this is now documented!


error importing ARM64 BSP using script

I generated an ARM64 workspace using this IoT ADK add on kit.
like:
PS C:\iot-adk-addonkit\Workspace>new-ws C:\RPI\iotcore\myrpi4arm64workspace Contoso arm64
New IoTWorkSpace available at C:\RPI\iotcore\myrpi4arm64workspace for arm64
Opening workspace : C:\RPI\iotcore\myrpi4arm64workspace\IoTWorkspace.xml
arm64 IoT Core kit version 10.0.17763.253 found
Corekit install path found OK
ADK_VERSION : 10.0.17763.1
IOTCORE_VER : 10.0.17763.253
BSP_VERSION : <IP_ADDRESS>
ADDONKITVER : 7.0.210203.1200
HostOS Info : Microsoft Windows 10 Pro - 10.0.19043 - en-US
Error: Host OS Enterprise Edition required for using Security functions such as Device Guard
IOTWKSPACE  : C:\RPI\iotcore\myrpi4arm64workspace
OEM_NAME    : Contoso
BSP_ARCH    : arm64
BSPPKG_DIR  : C:\RPI\iotcore\myrpi4arm64workspace\Build\arm64\pkgs
MSPKG_DIR   : C:\Program Files (x86)\Windows Kits\10\MSPackages\Retail\arm64\fre
Copying Registry.Version
Copying Custom.Cmd
Copying Provisioning.Auto
Copying OEM.Sample
Copying Device.SystemInformation
Copying DeviceLayout.GPT4GB
Copying DeviceLayout.GPT8GB-R
Copying DeviceLayout.MBR4GB
Copying DeviceLayout.MBR8GB-R
Workspace ready!
IoTCorePShell arm64 <IP_ADDRESS> Test
PS C:\RPI\iotcore\myrpi4arm64workspace>importpkg *
Copying Appx.Certs
Copying Custom.BCD
Copying Custom.OOBEApp
Copying Custom.Settings
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Common\Packages\Device.SystemInformation already exist.
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Common\Packages\DeviceLayout.GPT4GB already exist.
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Common\Packages\DeviceLayout.GPT8GB-R already exist.
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Common\Packages\DeviceLayout.MBR4GB already exist.
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Common\Packages\DeviceLayout.MBR8GB-R already exist.
Copying Recovery.GPT-BCD
Copying Recovery.GPT-BcdEdit
Copying Recovery.MBR-BCD
Copying Recovery.MBR-BcdEdit
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Common\Packages\Registry.Version already exist.
Copying Security.BitLocker
Copying Security.DeviceGuard
Copying Security.DeviceGuardTest
Copying Security.RootCerts
Copying Security.SecureBoot
Copying Security.SecureBootTest
Copying Settings.HotKey
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Source-arm64\Packages\OEM.Sample already exist.
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Common\ProdPackages\Custom.Cmd already exist.
Warning: C:\RPI\iotcore\myrpi4arm64workspace\Common\ProdPackages\Provisioning.Auto already exist.
Copying Recovery.WinPE
IoTCorePShell arm64 <IP_ADDRESS> Test
PS C:\RPI\iotcore\myrpi4arm64workspace>importbsp RPi c:\Release\RPi_BSP_ARM64_Release.zip
Extracting BSP zip into the temporary directory C:\RPI\iotcore\myrpi4arm64workspace\BSPDIR
Processing C:\RPI\iotcore\myrpi4arm64workspace\BSPDIR\RPi
Error: Incorrect BSP arch. Found arm, expected arm64
IoTCorePShell arm64 <IP_ADDRESS> Test
PS C:\RPI\iotcore\myrpi4arm64workspace>

This looks like it created my ARM64 workspace correctly.
I then imported all packages using the "importpkg *"
This also seems to have worked fine.
I then tried to import my "built for ARM64" BSP and got the failure "Incorrect BSP arch. Found arm, expected arm64"
I am not sure this is an ADK import problem or the fact I used the "binexport.ps1" script from the github
https://github.com/raspberrypi/windows-drivers
That script seems to have a hard coded path at line 30:
$bindir = $RootDir + "build\bcm2836\ARM\$buildconfig\"

I changed the "ARM" to "ARM64" and was able to generate to RPi_BSP_Release.zip but it has problems importing

XHCI USB doesn't work on 17763 on Pi4, so I don't think that would be that useful.
If you are working on Pi3, I do have a semi-working script on my local machine...

Check out https://github.com/raspberrypi/windows-drivers/pull/43 if you are still interested.


Can we filter the alerts based on specific accounts?

Filter GD-Slack alerts to receive only from specific aws accounts, instead of all accounts in master.

filtered accounts from "const account =  message.detail.accountId;"


Google Analytics settings for SendGridAdapter

Added the ability to enable/disable Google Analytics settings for an individual email in SendGrid.

@maymillerricci all done! I also added the ability to set the UTM params using a Keyword list, since it seemed like the flexibility would be helpful.

Thanks @tomtaylor! Although the flexibility for being able to pass in the params as a map or keyword list might be nice, I wonder in general whether for simplicity on this end, we might want to restrict it to only pass them as a map, and then people on their end can update what's being passed in into a map? I think in most places here similar params are expected to be maps. What do you think? Do you think it's important to have the flexibility of being able to also pass in a keyword list?

If there's precedent for just accepting Maps, that make sense. The flexibility isn't a major issue here. Will update the test descriptions when I get a moment!

@maymillerricci I think this is ready to go.

Good spot! Fixed.


List Sort doesn't draggable

Hi all,
I copied the same code as the demo here shows.
The list and the CSS design is working well, but none of the list items are draggable.
when I click on an item, he became bigger but do not move at all, as shown in the picture below.

what am I missing?
Thanks!

please provide your demo, https://42vvz4j4yx.codesandbox.io/

https://codesandbox.io/s/n1p6k7n440. no problem.


Do not know how to enter centos system

I already finish bellow steps , and it shows me the installation is completed successfully

Download installer zip
Extract all files in zip file to same directory
3.Run CentOS.exe to Extract rootfs and Register to WSL

If I install ubuntu or kali linux from Microsoft store , I can launch them by click on the lunch button , but here , after the installation of centos , I don't how to launch it.
Sorry for stupid, I am not a programmer , just a normal user.

OK ， maybe I how it work now , start cmd or powershell console ,switch to the installation directory ,  then re-run centos.exe , correct ?
but why the installation did not add the installation directory to the path variable.

Yes.
I prefer simple things,so I won't do it automatically

OK ， maybe I how it work now , start cmd or powershell console ,switch to the installation directory , then re-run centos.exe , correct ?
but why the installation did not add the installation directory to the path variable.

pls tell me where is the installation directory ? i think the system is not store on the install folder

Same directory as CentOS.exe


feat: add terminal theme to site

Hi @SrNightmare09 can you explain what you exactly mean by this feature?

@AmitT98
I was envisioning something like this which appears when you press a hidden button in the page. Sort of like an easter egg. I am not sure at all about how to implement it though.

For me such error doesn't come, is it a windows specific error?

So this is more of the design feature, as in getting the icons and theme. It would require some changes in styling as well but overall it is not that difficult. Well I suggest @SrNightmare09 you can label this as good first issue and someone new can take this up.

@AmitT98 Good idea!