electrum: add safety margins for tx height check

as discussed on telegram, this PR implements @adambor proposal to add a safety margin

Your version is rustier, sure. I'm just not sure the logic is now the same, since you start first iteration from 1 (instead of 0, as before), shouldn't that go to forward + 2 (instead of forward + 1, as before)?

since you start first iteration from 1 (instead of 0, as before), shouldn't that go to forward + 2 (instead of forward + 1, as before)?

It is not about the number of iterations - it is about the maximum we need to check for.
Before, we were going for as many blocks as we knew to be mined: that is forward blocks from the head. So the previous code was actually needlessly checking until min_header + 1 - confirmations + new_bloc_count + 1, and the last 1 was unnecessary.

since you start first iteration from 1 (instead of 0, as before), shouldn't that go to forward + 2 (instead of forward + 1, as before)?

It is not about the number of iterations - it is about the maximum we need to check for.
Before, we were going for as many blocks as we knew to be mined: that is forward blocks from the head. So the previous code was actually needlessly checking until min_header + 1 - confirmations + new_bloc_count + 1, and the last 1 was unnecessary.

With the last commit you removed the + 1 from the initial height calculation, so to keep the code looping from min to max + 1 you should do forward + 2

with last commit (ce75db2c62673d70f79bb739d1196b1d8b75d25d) you fixed the tx height calculation (that previously was looking for the tx from min block height - 1 to max block height, instead of max block height + 1).
just a note though, the comment // first check from expected min to max height, then max + 1 and finally min - 1 is correct only because SAFETY_MARGIN is set to 1, because now code has been changed in a way that if we increase that variable we will check max + 1, then min - 1, then max + 2, then min - 2 and so on. so maybe we should update the comment?


Why tests running in android studio shows always success?

Expected behaviour
The tests should fail when there is a diff on the screenshot
Actual behaviour
Tests that have a diff in their screenshot are reporting as success.
Steps to reproduce

Clone this repo: https://github.com/felipecastilhos/compose-test-sample
Change the branch to: bug/fail-tests
The repository already has the shot plugin configured
The repository has a different screenshot than the actual screen
Run the tests inside the IDE to see the tests passing
Run ./gradlew debugExecuteScreenshotTests and the tests will fail

Version of the library
Shot 5.5.0

Hey @felipecastilhos I'm afraid if you want to run your tests from Android Studio you'll have to configure it to run a gradle task. Shot is a Gradle plugin and it does not integrate with AS as simple as tapping on a button. That's why the README file explains how to run these tests from a terminal. However, if you want to run your tests from AS you can create a configuration like this and it will work:

I'm sending a PR to explain this as part of the README.

Hey @felipecastilhos I'm afraid if you want to run your tests from Android Studio you'll have to configure it to run a gradle task. Shot is a Gradle plugin and it does not integrate with AS as simple as tapping on a button. That's why the README file explains how to run these tests from a terminal. However, if you want to run your tests from AS you can create a configuration like this and it will work:

I'm sending a PR to explain this as part of the README.

Hey @pedrovgs thanks for always having an amazing support in this lib.

Hey @pedrovgs thanks for always having an amazing support in this lib.


Coming issue on handling /etc/resolv.conf, when it uses systemd-resolve

On Mi, 15.04.20 09:01, Daniel J Walsh<EMAIL_ADDRESS>wrote:

I didn't consider cases where systemd is not running because Fedora
hasn't supported booting without systemd in about a decade. But I
guess the problem here is for containers where systemd is not running
inside the container, but is running on the host system? I hadn't
considered this scenario. What do Ubuntu containers do? I guess those
are not all broken.

devel mailing list --<EMAIL_ADDRESS>To unsubscribe send an email to<EMAIL_ADDRESS>Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
<EMAIL_ADDRESS>
We can change container engines (podman, Buildah, CRI-O) to handle this
but they need to have a location of a properly configured resolv.conf
file, somewhere on the system to be used without systemd.

My suggestion for those container managers: if /etc/resolv.conf is a
regular file, always use that as copy source. If it is a symlinkt to
/run/systemd/resolve/stub-resolv.conf or
/run/systemd/resolve/resolv.conf then use
/run/systemd/resolve/resolv.conf as copy source.
Yes, I mean that, even if /run/systemd/resolve/stub-resolv.conf is the
symlink destination use the file without "stub-" in the name as copy
source. Because that file always contains the literal upstream DNS
servers, and does not redirect DNS traffic to <IP_ADDRESS> like the file
with "-stub" in the name does. Since containers are typically run
inside their own network namespace it's wise to use the upstream DNS
servers directly, instead of trying to the DNS forwarder called
resolved on localhost that is likely not going to be there in a netns
container.
The algorithm above in C-ish pseudo-code:
for (;;) {
fd = open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC|O_NOFOLLOW);
if (fd >= 0)
break; /* success! it's a regular file /
if (errno != ELOOP)
break; / failure! something unexpected */
    /* It's a symlink */
    r = readlink("/etc/resolv.conf", &dest);
    if (r < 0) {
            if (errno == EINVAL)
                    continue; /* Oh, it's not a symlink anymore?
                                 somebody must just have replace
                                 the file, let's try again  */

            /* failure! some unexpected error */
            break;
    }

    /* Check where the symlink points. Check by absolute and by
       relative paths, just in case. If this points to any of the
       three files provided by systemd-resolved, use the one that
       encodes upstream DNS info */
    if (strcmp(dest, "/run/systemd/resolve/stub-resolv.conf") == 0 ||
        strcmp(dest, "../run/systemd/resolve/stub-resolv.conf") == 0 ||
        strcmp(dest, "/run/systemd/resolve/resolv.conf") == 0 ||
        strcmp(dest, "../run/systemd/resolve/resolv.conf") == 0 ||
        strcmp(dest, "/usr/lib/systemd/resolv.conf") == 0 ||
        strcmp(dest, "../usr/lib/systemd/resolv.conf") == 0)) {

        fd = open("/run/systemd/resolve/resolv.conf", O_RDONLY|O_CLOEXEC);
    else
        fd = open("/run/systemd/resolve/resolv.conf", O_RDONLY|O_CLOEXEC);

    break;

}
You get the idea: use O_LOOP to check if it's a symlink and then use
readlink() to see if the file points to something managed by resolved.
Lennart
--
Lennart Poettering, Berlin

devel mailing list --<EMAIL_ADDRESS>To unsubscribe send an email to<EMAIL_ADDRESS>Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives<EMAIL_ADDRESS>

We should be able to implement this now.

Hi @rhatdan I would like to work on this one if it is still required.

@EduardoVega are you interested in doing this?

Hi @rhatdan, yes if it is still required, I would like to work on it.

Yes that would be great.

Is this merged into podman because I still have this issue on Arch Linux with systemd version 247.1 and podman version 2.2.0.

The fix for this has been merged, so if you're still having this issue, it could be a fresh bug - can you open a new issue for it?


ScrollArea not working inside a Popover

This is a code example:
<Popover>
  <PopoverTrigger>Open</PopoverTrigger>
  <PopoverContent>
    <ScrollArea className="flex max-h-16 flex-col" type="always">
      <div className="h-[800px] bg-red-500" />
    </ScrollArea>
  </PopoverContent>
</Popover>

The scrollbar appears but the scroll isn't working inside the content, only when i'm hovering over the scrollbar itself.

I've found I have to set a height value for this to work. Try with just 'h-16' as a className.
Scrolling with the mouse wheel doesn't seem to work though.

Personally I fixed it by setting modal={true} to the Popover.
It's a weird behaviour I have to say..

I had the same problem but reversed, a popover inside a scrollarea would not stay open. Using the setting modal={true} as stated by @mattiaz9 was my solution.

Had the same problem using Commad and CommandList inside Popover. I had set overflow-y-auto and a max height on the CommandList, but not the height it self. The scroll bar was showing and I could drag it, but scroll wheel was not working. When I pass modal={true} to the Popover or set h-full on the CommandList, it scrolls normally.

@mattiaz9 Thank you for this. setting Popover to modal fixed it for me as well

Personally I fixed it by setting modal={true} to the Popover. It's a weird behaviour I have to say..

Thank you so much, it works

@mattiaz9 Thanks! It works.

@mattiaz9 thanks!
<Popover modal>
  ....
    <ScrollArea>
      <CommandGroup>
        ....
      </CommandGroup>
    </ScrollArea>
  ....
</Popover>

Try using "h-" instead of "max-h-" for setting the height of a scroll area.

if i have an empty list, "h-" wouldn't make sense.
I would love to be able to use "max-h-" unfortunately Its not working.

For max-h, it needs to be set on the radix viewport, like this: <ScrollArea className={'[&>[data-radix-scroll-area-viewport]]:max-h-[300px]'}>

@ArmandFrvr thanks for the solution. For me it works like a charm :)

I had the same problem but reversed, a popover inside a scrollarea would not stay open. Using the setting modal={true} as stated by @mattiaz9 was my solution.

it worked for me, thanks @mattiaz9

Personally I fixed it by setting modal={true} to the Popover. It's a weird behaviour I have to say..

thanks. worked for me

Personally I fixed it by setting modal={true} to the Popover. It's a weird behaviour I have to say..

Worked for me, thanks!

Adding  modal to Popover "works" for scrolling, but is a bad solution for my use-case.
I'm using Popover with a Scroll Area for search results that appear as you are typing. I can prevent focus from being pulled into the popover but if focus is given to the popover at all (by scroll, tapping, etc), I can no longer re-focus on my input, because the modal flag disables interaction everywhere else on the page.

I can confirm the solution posted by @ArmandFrvr works when the ScrollArea is nested within a Drawer.

Personally I fixed it by setting modal={true} to the Popover. It's a weird behaviour I have to say..

Thank you for your solution it worked for me like a charm :)

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.

Personally I fixed it by setting modal={true} to the Popover. It's a weird behaviour I have to say..

Thanks. It's works for me.

Scrolling still does not work in the iPad Chrome environment.
Has anyone experienced the same phenomenon as me?

Scrolling still does not work in the iPad Chrome environment. Has anyone experienced the same phenomenon as me?

working for me
is there a specific way to reproduce the effect?

Adding modal to Popover "works" for scrolling, but is a bad solution for my use-case.
I'm using Popover with a Scroll Area for search results that appear as you are typing. I can prevent focus from being pulled into the popover but if focus is given to the popover at all (by scroll, tapping, etc), I can no longer re-focus on my input, because the modal flag disables interaction everywhere else on the page.

@panzacoder , did you find the answer? I faced the similar issue.

Has anyone overcome this issue when the popover is part of a modal/dialog?
I had the property modal={true} already set so I am not sure what the fix would be.
Any help would be much appreciated!
<Popover modal open={popoverOpen} onOpenChange={setPopoverOpen}>
  ...
  <PopoverContent className="w-auto p-2" align="center">
    <ScrollArea className={"[&>[data-radix-scroll-area-viewport]]:max-h-[300px]" >
    ...
    </ScrollArea>
  </PopoverContent>
</Popover>

Personally I fixed it by setting modal={true} to the Popover. It's a weird behaviour I have to say..

Thanks! It works

It worked, thanks

Has anyone overcome this issue when the popover is part of a modal/dialog?
I had the property modal={true} already set so I am not sure what the fix would be.
Any help would be much appreciated!
<Popover modal open={popoverOpen} onOpenChange={setPopoverOpen}>
  ...
  <PopoverContent className="w-auto p-2" align="center">
    <ScrollArea className={"[&>[data-radix-scroll-area-viewport]]:max-h-[300px]" >
    ...
    </ScrollArea>
  </PopoverContent>
</Popover>

Same issue happening doesnt scroll when popover is inside the modal although setting modal as true

Experiencing the same issue. Can this be reopened?

Has anyone overcome this issue when the popover is part of a modal/dialog?
I had the property modal={true} already set so I am not sure what the fix would be.
Any help would be much appreciated!
<Popover modal open={popoverOpen} onOpenChange={setPopoverOpen}>
  ...
  <PopoverContent className="w-auto p-2" align="center">
    <ScrollArea className={"[&>[data-radix-scroll-area-viewport]]:max-h-[300px]" >
    ...
    </ScrollArea>
  </PopoverContent>
</Popover>

I have the same issue, in my case, I remove <PopoverPrimitive.Portal> in popover.ui and it work

Has anyone overcome this issue when the popover is part of a modal/dialog?
I had the property modal={true} already set so I am not sure what the fix would be.
Any help would be much appreciated!
<Popover modal open={popoverOpen} onOpenChange={setPopoverOpen}>
  ...
  <PopoverContent className="w-auto p-2" align="center">
    <ScrollArea className={"[&>[data-radix-scroll-area-viewport]]:max-h-[300px]" >
    ...
    </ScrollArea>
  </PopoverContent>
</Popover>

I have the same issue, in my case, I remove <PopoverPrimitive.Portal> in popover.ui and it work

This worked, can you explain to me the reason for removing the .Portal resolver?

Has anyone overcome this issue when the popover is part of a modal/dialog?
I had the property modal={true} already set so I am not sure what the fix would be.
Any help would be much appreciated!
<Popover modal open={popoverOpen} onOpenChange={setPopoverOpen}>
  ...
  <PopoverContent className="w-auto p-2" align="center">
    <ScrollArea className={"[&>[data-radix-scroll-area-viewport]]:max-h-[300px]" >
    ...
    </ScrollArea>
  </PopoverContent>
</Popover>

I have the same issue, in my case, I remove <PopoverPrimitive.Portal> in popover.ui and it work

This causes the popover content to be clipped inside of dialogs, although it does restore scrolling. So for longer lists this solution isn't viable.

This worked for me: https://github.com/shadcn-ui/ui/issues/1175#issuecomment-2451106029


Securely Embedding WebRTC Streams with 2-way audio into Home Assistant Dashboards

Hello, I am trying to integrate 2-way audio with my doorbell camera into my Home Assistant dashboard. I have seen many people on the forums using iframes to embed the existing webrtc.html file within Go2RTC. To do this, it looks like they end up exposing Go2RTC's port 1984/http, usually via Nginx. However, the way I see it, this is not secure at all as anyone with the link can have access to the cameras, even with HTTPS.
I would like to know if there is a way to do this securely without exposing go2rtc's http port. I dug into the source code of webrtc.html, and I see the following line where the web player establishes a socker connection to the Go2rtc server:
const ws = new WebSocket(`ws${baseUrl.substr(4)}/api/ws${location.search}`);

The only way I have been able to achieve this so far is by also exposing Go2RTC port 1984 to the internet, so that in practice, the socket URL ends up looking like this:
wss://example.domain.org/go2rtc/api/ws?src=camera_name

This is obviously very insecure. So something has to be done...
I took a quick look at what the WebRTC integration custom card does, and I see that it does what I am looking for. It establishes the socket connection to the Go2RTC server via authentication:
wss://example.domain.org/api/webrtc/ws?authSig=[SUPER LONG AUTH TOKEN]&url=camera_name

As I stated above, unfortunately I can't just use the WebRTC custom card for my application, since it does not support 2 way audio. So I am looking for a way to do this with iframes, where the content in the iframe somehow obtains a token like the webRTC card does. Thanks!

I don't think opening port 1984 to the internet is a good idea. This functionality must be implemented in the card. This is what the WebRTC card was created for. But it does not support 2way audio yet.

I don't think opening port 1984 to the internet is a good idea. This functionality must be implemented in the card. This is what the WebRTC card was created for. But it does not support 2way audio yet.

Yep I agree! I was surprised to see the number of people doing this on the HA forums.
I know you mentioned in other threads that you wouldn't be focusing on adding 2 way audio support to WebRTC anytime soon. If someone were to attempt to take a crack at this, where would you recommend they start in the WebRTC source code?

All examples already in simple HTML code
https://github.com/AlexxIT/go2rtc/blob/master/www/webrtc.html

Ok I made some progress on this. I am starting with the webRTC custom card files, and using the go2rtc/webrtc.html as an example. I decided to use the webRTC custom card as a starting point, since it already handles signedPath authentication etc.
I was able to get the card to prompt for microphone use in HA. I achieved that by adding the getUserMedia() inside the setConfig function in webrtc-camera.js :
    setConfig(config) {
        if (!config.url && !config.entity) throw new Error("Missing `url` or `entity`");

        if (config.mode) this.mode = config.mode;
        // backward compatibility
        else if (config.mse === false) this.mode = 'webrtc';
        else if (config.webrtc === false) this.mode = 'mse';

        if (config.background) this.background = config.background;

        if (config.intersection === 0) this.visibilityThreshold = 0;
        else this.visibilityThreshold = config.intersection || 0.75;

        /**
         * @type {{
         *     url:string, entity:string, muted:boolean, poster:string, title:string,
         *     intersection:number, ui:boolean, style:string,
         *     ptz:{
         *         opacity:number|string, service:string,
         *         data_left, data_up, data_right, data_down,
         *         data_zoom_in, data_zoom_out, data_home
         *     },
         *     shortcuts:Array<{name:string,icon:string}>,
         *     mse:boolean, webrtc:boolean,
         * }} config
         */
        this.config = config;
        navigator.mediaDevices.getUserMedia({audio: true}) // <===
    }

I then attempt to add this audio input track to the stream like you do in the webrtc.html example. I decided onpcvideo() function could be a good place for this. So I changed it as follows:
    onpcvideo(ev) {
        if (!this.pc) return;
        console.debug('pc video...')
        /** @type {HTMLVideoElement} */
        const video2 = ev.target;
        const state = this.pc.connectionState;

        // Firefox doesn't support pc.connectionState
        if (state === "connected" || state === "connecting" || !state) {
            // Video+Audio > Video, H265 > H264, Video > Audio, WebRTC > MSE
            let rtcPriority = 0, msePriority = 0;

            /** @type {MediaStream} */
            const ms = video2.srcObject;
            if (ms.getVideoTracks().length > 0) rtcPriority += 0x220;
            if (ms.getAudioTracks().length > 0) rtcPriority += 0x102;

            if (this.mseCodecs.indexOf("hvc1.") >= 0) msePriority += 0x230;
            if (this.mseCodecs.indexOf("avc1.") >= 0) msePriority += 0x210;
            if (this.mseCodecs.indexOf("mp4a.") >= 0) msePriority += 0x101;

            if (rtcPriority >= msePriority) {
                this.video.srcObject = ms;
                this.play();
                this.pcState = WebSocket.OPEN;

                this.wsState = WebSocket.CLOSED;
                this.ws.close();
                this.ws = null;
                this.video.srcObject.getTracks().forEach(track => { const sender = this.pc.addTrack(track,this.video.srcObject) }); // <===
                console.debug("rtc ok!!!");
            } else {
                console.debug("closing pc");
                this.pcState = WebSocket.CLOSED;
                this.pc.close();
                this.pc = null;
            }
        }

        video2.srcObject = null;
    }

Well, I feel like I am pretty close, but of course, it doesn't work. Any hints are appreciated!

getUserMedia generates tracks (only one for mic). And you should add this tracks to RTCPeerConnection on start. Before any createOffer.

Ok I got it working! The code is rough at the moment, but it appears to work very reliably! The only issue I am observing is when I refresh Homeassistant Lovelace page with the WebRTC card, for whatever reason, 2 websocket connections are created, with the first one closing after about 5 seconds. Then the second one carries one, and is what delivers the displayed content. This behavior seems to throw off the Go2RTC server, because I think it initially expects microphone input from the first connection that quits ~5 seconds later. Even though the second sustained connection continues to send mic data, Go2RTC does not seem to relay it to the endpoint. This doesn't happen if I navigate to the dashboard page normally with the buttons.
I think this is a good start to getting this function added. I can work on a PR if you'd like.

I think this code should be totally reworked with delayer 2 way audio start.
This requires rewriting the server part. Which I don't have time for right now.

I think this question not to go2rtc but to WebRTC technology

I had to initiate the audio transceiver as 'sendrecv' without assigning the microphone track to that transceiver, because starting it as 'recvonly' then attempting to change it to 'sendrecv' on the fly required renegotiation which was too complicated.
When I hit the unmute button, I assign the microphone track to the audio transceiver, and that seems to work. However, it appears that Go2RTC server still doesn't know what to do with incoming audio tracks when there are multiple connections, even though only a single connection is sending audio. On the go2rtc info page, I can see that the client is sending packets, the server is receiving the packets, but it's not relaying the packets to the camera.

Any changes to SDP require new negotiation.


Primary unit tests

Motivation
Extended primary tests for rounds beyond the first one.
Test Plan
Changes are only in test code.
Related PRs
Extends #2618

@vbar Please use the precommit hook.


CMake configuration order of operations is incorrect

The code near the beginning of the root CMakeLists.txt reads as follows
if(DEFINED CMAKE_C_COMPILER_LAUNCHER)
if(WIN32)
    if(CMAKE_BUILD_TYPE STREQUAL "Debug")
        string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
        string(REPLACE "/Zi" "/Z7" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
    elseif(CMAKE_BUILD_TYPE STREQUAL "Release")
        string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
        string(REPLACE "/Zi" "/Z7" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
    elseif(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
        string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
        string(REPLACE "/Zi" "/Z7" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
    endif()
endif()
endif()

However, these lines are all placed before project(vulkan_samples), which is when the compiler is detected and all of these CMAKE_<LANG>_FLAGS_<TYPE> flags are initialized.
Additionally, MSVC is a multi-config build system, so CMAKE_BUILD_TYPE is almost never populated at configure time.  When the project is actually built, for instance with cmake --build, this code won't even be processed because it's only triggered at configure time.

Fixed with #897.
@jherico : If you put a line like "Fixes #896" into the PRs description, any related issue will be closed automatically when the respective PR is merged.


global: disable CSRF token for inner forms

Linked to: https://github.com/inveniosoftware/invenio-oauthclient/pull/155

@slint I have applied the changes, can you re-check it please?

@drjova fixes as discussed and Travis is happy!


drivers: sensor: PMSX003: Fix to read all values

The driver for PMS7003 was only reading three parameters. This update adds code to read the missing parameters. Additionally, the filenames have been changed to PMSX003 to reflect that this driver can support all PMS sensors in the same series, where 'X' represents any number in the series.

In this branch, I pulled changes from other branches and made a commit of all those changes in this branch.

@M-Hazik Could you please rework this PR and rebase it onto the current main instead of merge commits? Eventually, I assume this PR should be only one commit which does the actual changes.


chore(github): add separate v3 issue template

🔗 Linked issue

❓ Type of change

[x] 📖 Documentation (updates to the documentation or readme)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[x] 👌 Enhancement (improving an existing functionality)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
This allows auto adding v3 issue label.
Try: https://github.com/OrbisK/ui/issues/new/choose
The naming of .github/ISSUE_TEMPLATE/bug-v3.yml is intentionally not .github/ISSUE_TEMPLATE/bug-report.v3.yml to respect ordering in the choose layout. The name can be changed to lower it even more.

📝 Checklist

[x] I have linked an issue or discussion.
[x] I have updated the documentation accordingly.

Thanks for the initiative! 😊 The only thing I would change is the StackBlitz mention for reproduction because Tailwind CSS v4 does not work on StackBlitz at the moment 😬

Thanks for the initiative! 😊 The only thing I would change is the StackBlitz mention for reproduction because Tailwind CSS v4 does not work on StackBlitz at the moment 😬

i did :)

Thanks! 😊

@benjamincanac
Alerts seem to be broken with the newer version of issue form. I've reported feedback at github. https://github.com/orgs/community/discussions/139935#discussioncomment-10864178

I saw this working yesterday.. I don't know if it's related but linking issues in prs does not seem to work either.


ssh_authorized_keys not getting populate on host

RancherOS Version: (ros os version)
0.9.1
Where are you running RancherOS? (docker-machine, AWS, GCE, baremetal, etc.)
AWS: us-east-1
AMI: ami-37b00f21
Using this cloud-config:
#cloud-config
ssh_authorized_keys:
    - ssh-rsa mykey<EMAIL_ADDRESS>    - ssh-rsa otherkey wmaxwell@localhost

When the instance boots ssh rancher@instance prompts for a password.
Here are the console logs, nothing looked too exciting:
[    0.000000] Linux version 4.9.18-rancher (root@9963e6fb6350) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4) ) #1 SMP Sun Mar 26 12:50:55 UTC 2017
[    0.000000] Command line: BOOT_IMAGE=../vmlinuz-4.9.18-rancher rancher.state.dev=LABEL=RANCHER_STATE rancher.state.wait console=ttyS0  initrd=../initrd-v0.9.1
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   Centaur CentaurHauls
[    0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[    0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[    0.000000] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[    0.000000] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
[    0.000000] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.
[    0.000000] x86/fpu: Using 'eager' FPU context switches.
[    0.000000] e820: BIOS-provided physical RAM map:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009dfff] usable
[    0.000000] BIOS-e820: [mem 0x000000000009e000-0x000000000009ffff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000efffffff] usable
[    0.000000] BIOS-e820: [mem 0x00000000fc000000-0x00000000ffffffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000100000000-0x000000020fffffff] usable
[    0.000000] NX (Execute Disable) protection: active
[    0.000000] SMBIOS 2.4 present.
[    0.000000] Hypervisor detected: Xen
[    0.000000] Xen version 4.2.
[    0.000000] Netfront and the Xen platform PCI driver have been compiled for this kernel: unplug emulated NICs.
[    0.000000] Blkfront and the Xen platform PCI driver have been compiled for this kernel: unplug emulated disks.
[    0.000000] You might have to change the root device
[    0.000000] from /dev/hd[a-d] to /dev/xvd[a-d]
[    0.000000] in your root= kernel command line option
[    0.000000] e820: last_pfn = 0x210000 max_arch_pfn = 0x400000000
[    0.000000] x86/PAT: Configuration [0-7]: WB  WC  UC- UC  WB  WC  UC- WT
[    0.000000] e820: last_pfn = 0xf0000 max_arch_pfn = 0x400000000
[    0.000000] found SMP MP-table at [mem 0x000fbc80-0x000fbc8f] mapped at [ffff957f800fbc80]
[    0.000000] Scanning 1 areas for low memory corruption
[    0.000000] Using GB pages for direct mapping
[    0.000000] RAMDISK: [mem 0x7dbd4000-0x7fffffff]
[    0.000000] ACPI: Early table checksum verification disabled
[    0.000000] ACPI: RSDP 0x00000000000EA020 000024 (v02 Xen   )
[    0.000000] ACPI: XSDT 0x00000000FC00DDC0 000054 (v01 Xen    HVM      00000000 HVML 00000000)
[    0.000000] ACPI: FACP 0x00000000FC00DA80 0000F4 (v04 Xen    HVM      00000000 HVML 00000000)
[    0.000000] ACPI: DSDT 0x00000000FC001CE0 00BD19 (v02 Xen    HVM      00000000 INTL 20090123)
[    0.000000] ACPI: FACS 0x00000000FC001CA0 000040
[    0.000000] ACPI: FACS 0x00000000FC001CA0 000040
[    0.000000] ACPI: APIC 0x00000000FC00DB80 0000D8 (v02 Xen    HVM      00000000 HVML 00000000)
[    0.000000] ACPI: HPET 0x00000000FC00DCD0 000038 (v01 Xen    HVM      00000000 HVML 00000000)
[    0.000000] ACPI: WAET 0x00000000FC00DD10 000028 (v01 Xen    HVM      00000000 HVML 00000000)
[    0.000000] ACPI: SSDT 0x00000000FC00DD40 000031 (v02 Xen    HVM      00000000 INTL 20090123)
[    0.000000] ACPI: SSDT 0x00000000FC00DD80 000031 (v02 Xen    HVM      00000000 INTL 20090123)
[    0.000000] No NUMA configuration found
[    0.000000] Faking a node at [mem 0x0000000000000000-0x000000020fffffff]
[    0.000000] NODE_DATA(0) allocated [mem 0x20fffb000-0x20fffffff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000001000-0x0000000000ffffff]
[    0.000000]   DMA32    [mem 0x0000000001000000-0x00000000ffffffff]
[    0.000000]   Normal   [mem 0x0000000100000000-0x000000020fffffff]
[    0.000000]   Device   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000001000-0x000000000009dfff]
[    0.000000]   node   0: [mem 0x0000000000100000-0x00000000efffffff]
[    0.000000]   node   0: [mem 0x0000000100000000-0x000000020fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000001000-0x000000020fffffff]
[    0.000000] ACPI: PM-Timer IO Port: 0xb008
[    0.000000] IOAPIC[0]: apic_id 1, version 17, address 0xfec00000, GSI 0-47
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 low level)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 low level)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 low level)
[    0.000000] Using ACPI (MADT) for SMP configuration information
[    0.000000] ACPI: HPET id: 0x8086a201 base: 0xfed00000
[    0.000000] smpboot: Allowing 15 CPUs, 13 hotplug CPUs
[    0.000000] PM: Registered nosave memory: [mem 0x00000000-0x00000fff]
[    0.000000] PM: Registered nosave memory: [mem 0x0009e000-0x0009ffff]
[    0.000000] PM: Registered nosave memory: [mem 0x000a0000-0x000dffff]
[    0.000000] PM: Registered nosave memory: [mem 0x000e0000-0x000fffff]
[    0.000000] PM: Registered nosave memory: [mem 0xf0000000-0xfbffffff]
[    0.000000] PM: Registered nosave memory: [mem 0xfc000000-0xffffffff]
[    0.000000] e820: [mem 0xf0000000-0xfbffffff] available for PCI devices
[    0.000000] Booting paravirtualized kernel on Xen HVM
[    0.000000] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns:<PHONE_NUMBER>211568 ns
[    0.000000] setup_percpu: NR_CPUS:256 nr_cpumask_bits:256 nr_cpu_ids:15 nr_node_ids:1
[    0.000000] percpu: Embedded 36 pages/cpu @ffff958187200000 s107736 r8192 d31528 u262144
[    0.000000] PV qspinlock hash table entries: 256 (order: 0, 4096 bytes)
[    0.000000] Built 1 zonelists in Node order, mobility grouping on.  Total pages: 2064264
[    0.000000] Policy zone: Normal
[    0.000000] Kernel command line: BOOT_IMAGE=../vmlinuz-4.9.18-rancher rancher.state.dev=LABEL=RANCHER_STATE rancher.state.wait console=ttyS0  initrd=../initrd-v0.9.1
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Memory: 8135276K/8388212K available (7069K kernel code, 1453K rwdata, 3712K rodata, 1456K init, 1260K bss, 252936K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=15, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] 	Build-time adjustment of leaf fanout to 64.
[    0.000000] 	RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=15.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=15
[    0.000000] NR_IRQS:16640 nr_irqs:952 16
[    0.000000] xen:events: Using 2-level ABI
[    0.000000] xen:events: Xen HVM callback vector for event delivery is enabled
[    0.000000] Console: colour VGA+ 80x25
[    0.000000] Cannot get hvm parameter CONSOLE_EVTCHN (18): -22!
[    0.000000] console [ttyS0] enabled
[    0.000000] clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns:<PHONE_NUMBER>4 ns
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 2400.152 MHz processor
[    0.020000] Calibrating delay loop (skipped), value calculated using timer frequency.. 4800.17 BogoMIPS (lpj=9600344)
[    0.021365] pid_max: default: 32768 minimum: 301
[    0.024016] ACPI: Core revision 20160831
[    0.032465] ACPI: 3 ACPI AML tables successfully acquired and loaded
[    0.035447] Security Framework initialized
[    0.036003] Yama: becoming mindful.
[    0.037934] SELinux:  Initializing.
[    0.040010] AppArmor: AppArmor disabled by boot time parameter
[    0.044315] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes)
[    0.049333] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes)
[    0.052565] Mount-cache hash table entries: 16384 (order: 5, 131072 bytes)
[    0.056011] Mountpoint-cache hash table entries: 16384 (order: 5, 131072 bytes)
[    0.060325] CPU: Physical Processor ID: 0
[    0.062348] mce: CPU supports 2 MCE banks
[    0.064028] Last level iTLB entries: 4KB 1024, 2MB 1024, 4MB 1024
[    0.066917] Last level dTLB entries: 4KB 1024, 2MB 1024, 4MB 1024, 1GB 4
[    0.072600] Freeing SMP alternatives memory: 20K (ffffffff82ed9000 - ffffffff82ede000)
[    0.077221] ftrace: allocating 34160 entries in 134 pages
[    0.108112] smpboot: Max logical packages: 15
[    0.110851] x2apic: IRQ remapping doesn't support X2APIC mode
[    0.112005] Switched APIC routing to physical flat.
[    0.118039] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=0 pin2=0
[    0.161865] clocksource: xen: mask: 0xffffffffffffffff max_cycles: 0x1cd42e4dffb, max_idle_ns:<PHONE_NUMBER>83 ns
[    0.164015] installing Xen timer for CPU 0
[    0.168070] smpboot: CPU0: Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz (family: 0x6, model: 0x3f, stepping: 0x2)
[    0.172818] cpu 0 spinlock event irq 53
[    0.174631] Performance Events: unsupported p6 CPU model 63 no PMU driver, software events only.
[    0.179571] NMI watchdog: disabled (cpu0): hardware events not enabled
[    0.180005] NMI watchdog: Shutting down hard lockup detector on all cpus
[    0.183796] installing Xen timer for CPU 1
[    0.184054] x86: Booting SMP configuration:
[    0.186207] .... node  #0, CPUs:        #1[    0.268045] cpu 1 spinlock event irq 59
[    0.272006] x86: Booted up 1 node, 2 CPUs
[    0.274117] smpboot: Total of 2 processors activated (9666.89 BogoMIPS)
[    0.276702] devtmpfs: initialized
[    0.277755] x86/mm: Memory block size: 128MB
[    0.283694] evm: security.selinux
[    0.284004] evm: security.SMACK64
[    0.285641] evm: security.SMACK64EXEC
[    0.287577] evm: security.SMACK64TRANSMUTE
[    0.288003] evm: security.SMACK64MMAP
[    0.289819] evm: security.ima
[    0.291352] evm: security.capability
[    0.292130] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns:<PHONE_NUMBER>100000 ns
[    0.296023] futex hash table entries: 4096 (order: 6, 262144 bytes)
[    0.299080] pinctrl core: initialized pinctrl subsystem
[    0.300118] RTC time: 15:30:20, date: 03/28/17
[    0.302114] NET: Registered protocol family 16
[    0.312008] cpuidle: using governor ladder
[    0.324008] cpuidle: using governor menu
[    0.325687] PCCT header not found.
[    0.327423] ACPI: bus type PCI registered
[    0.328011] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
[    0.330976] PCI: Using configuration type 1 for base access
[    0.348054] HugeTLB registered 1 GB page size, pre-allocated 0 pages
[    0.350710] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[    0.352107] ACPI: Added _OSI(Module Device)
[    0.353927] ACPI: Added _OSI(Processor Device)
[    0.356006] ACPI: Added _OSI(3.0 _SCP Extensions)
[    0.357966] ACPI: Added _OSI(Processor Aggregator Device)
[    0.363641] ACPI: Interpreter enabled
[    0.364019] ACPI: (supports S0 S3 S4 S5)
[    0.365733] ACPI: Using IOAPIC for interrupt routing
[    0.367893] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
[    0.409960] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])
[    0.412011] acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments MSI]
[    0.414888] acpi PNP0A03:00: _OSC failed (AE_NOT_FOUND); disabling ASPM
[    0.416016] acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended PCI configuration space under this bridge.
[    0.421118] acpiphp: Slot [0] registered
[    0.423588] acpiphp: Slot [3] registered
[    0.424283] acpiphp: Slot [4] registered
[    0.426187] acpiphp: Slot [5] registered
[    0.428111] acpiphp: Slot [6] registered
[    0.430051] acpiphp: Slot [7] registered
[    0.432000] acpiphp: Slot [8] registered
[    0.432275] acpiphp: Slot [9] registered
[    0.434223] acpiphp: Slot [10] registered
[    0.436111] acpiphp: Slot [11] registered
[    0.438054] acpiphp: Slot [12] registered
[    0.440000] acpiphp: Slot [13] registered
[    0.440287] acpiphp: Slot [14] registered
[    0.442565] acpiphp: Slot [15] registered
[    0.444282] acpiphp: Slot [16] registered
[    0.446520] acpiphp: Slot [17] registered
[    0.448307] acpiphp: Slot [18] registered
[    0.450779] acpiphp: Slot [19] registered
[    0.452293] acpiphp: Slot [20] registered
[    0.454472] acpiphp: Slot [21] registered
[    0.456294] acpiphp: Slot [22] registered
[    0.458464] acpiphp: Slot [23] registered
[    0.460302] acpiphp: Slot [24] registered
[    0.462484] acpiphp: Slot [25] registered
[    0.464321] acpiphp: Slot [26] registered
[    0.466728] acpiphp: Slot [27] registered
[    0.468310] acpiphp: Slot [28] registered
[    0.470589] acpiphp: Slot [29] registered
[    0.472309] acpiphp: Slot [30] registered
[    0.474648] acpiphp: Slot [31] registered
[    0.476289] PCI host bridge to bus 0000:00
[    0.478343] pci_bus 0000:00: root bus resource [io  0x0000-0x0cf7 window]
[    0.480006] pci_bus 0000:00: root bus resource [io  0x0d00-0xffff window]
[    0.483476] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window]
[    0.484007] pci_bus 0000:00: root bus resource [mem 0xf0000000-0xfbffffff window]
[    0.487680] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.493250] pci 0000:00:01.1: legacy IDE quirk: reg 0x10: [io  0x01f0-0x01f7]
[    0.496005] pci 0000:00:01.1: legacy IDE quirk: reg 0x14: [io  0x03f6]
[    0.499135] pci 0000:00:01.1: legacy IDE quirk: reg 0x18: [io  0x0170-0x0177]
[    0.500004] pci 0000:00:01.1: legacy IDE quirk: reg 0x1c: [io  0x0376]
[    0.504000] * Found PM-Timer Bug on the chipset. Due to workarounds for a bug,
[    0.504000] * this clock source is slow. Consider trying other clock sources
[    0.505249] pci 0000:00:01.3: quirk: [io  0xb000-0xb03f] claimed by PIIX4 ACPI
[    0.516714] ACPI: PCI Interrupt Link [LNKA] (IRQs *5 10 11)
[    0.519991] ACPI: PCI Interrupt Link [LNKB] (IRQs 5 *10 11)
[    0.521066] ACPI: PCI Interrupt Link [LNKC] (IRQs 5 10 *11)
[    0.524462] ACPI: PCI Interrupt Link [LNKD] (IRQs *5 10 11)
[    0.544257] ACPI: Enabled 2 GPEs in block 00 to 0F
[    0.547102] random: fast init done
[    0.547329] xen:balloon: Initialising balloon driver
[    0.548045] xen_balloon: Initialising balloon driver
[    0.556050] vgaarb: setting as boot device: PCI:0000:00:02.0
[    0.558951] vgaarb: device added: PCI:0000:00:02.0,decodes=io+mem,owns=io+mem,locks=none
[    0.560005] vgaarb: loaded
[    0.561356] vgaarb: bridge control possible 0000:00:02.0
[    0.564078] SCSI subsystem initialized
[    0.566054] ACPI: bus type USB registered
[    0.568016] usbcore: registered new interface driver usbfs
[    0.570738] usbcore: registered new interface driver hub
[    0.572030] usbcore: registered new device driver usb
[    0.574840] PCI: Using ACPI for IRQ routing
[    0.576764] NetLabel: Initializing
[    0.578516] NetLabel:  domain hash size = 128
[    0.580004] NetLabel:  protocols = UNLABELED CIPSOv4
[    0.582531] NetLabel:  unlabeled traffic allowed by default
[    0.584093] HPET: 3 timers in total, 0 timers will be used for per-cpu timer
[    0.587593] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0
[    0.588699] hpet0: 3 comparators, 64-bit 62.500000 MHz counter
[    0.594045] clocksource: Switched to clocksource xen
[    0.605032] VFS: Disk quotas dquot_6.6.0
[    0.607153] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.610978] pnp: PnP ACPI init
[    0.612758] system 00:00: [mem 0x00000000-0x0009ffff] could not be reserved
[    0.616184] system 00:01: [io  0x08a0-0x08a3] has been reserved
[    0.619050] system 00:01: [io  0x0cc0-0x0ccf] has been reserved
[    0.622136] system 00:01: [io  0x04d0-0x04d1] has been reserved
[    0.625575] system 00:07: [io  0x10c0-0x1141] has been reserved
[    0.629047] system 00:07: [io  0xb044-0xb047] has been reserved
[    0.648183] pnp: PnP ACPI: found 8 devices
[    0.658642] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns:<PHONE_NUMBER> ns
[    0.663759] NET: Registered protocol family 2
[    0.666534] TCP established hash table entries: 65536 (order: 7, 524288 bytes)
[    0.670745] TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
[    0.674829] TCP: Hash tables configured (established 65536 bind 65536)
[    0.678586] UDP hash table entries: 4096 (order: 5, 131072 bytes)
[    0.681841] UDP-Lite hash table entries: 4096 (order: 5, 131072 bytes)
[    0.685465] NET: Registered protocol family 1
[    0.687713] pci 0000:00:00.0: Limiting direct PCI/PCI transfers
[    0.690700] pci 0000:00:01.0: PIIX3: Enabling Passive Release
[    0.694389] pci 0000:00:01.0: Activating ISA DMA hang workarounds
[    0.697642] pci 0000:00:02.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff]
[    0.701977] Trying to unpack rootfs image as initramfs...
[    7.657546] Freeing initrd memory: 37040K (ffff957ffdbd4000 - ffff958000000000)
[    7.661339] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[    7.664637] software IO TLB [mem 0xec000000-0xf0000000] (64MB) mapped at [ffff95806c000000-ffff95806fffffff]
[    7.669776] RAPL PMU: API unit is 2^-32 Joules, 4 fixed counters, 655360 ms ovfl timer
[    7.674019] RAPL PMU: hw unit of domain pp0-core 2^-14 Joules
[    7.677175] RAPL PMU: hw unit of domain package 2^-14 Joules
[    7.680135] RAPL PMU: hw unit of domain dram 2^-14 Joules
[    7.682672] RAPL PMU: hw unit of domain pp1-gpu 2^-14 Joules
[    7.685401] Scanning for low memory corruption every 60 seconds
[    7.688776] audit: initializing netlink subsys (disabled)
[    7.691342] audit: type=2000 audit(1490715027.966:1): initialized
[    7.694643] Initialise system trusted keyrings
[    7.697149] workingset: timestamp_bits=40 max_order=21 bucket_order=0
[    7.702312] zbud: loaded
[    7.704194] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    7.707788] fuse init (API version 7.26)
[    7.711285] Key type asymmetric registered
[    7.713521] Asymmetric key parser 'x509' registered
[    7.716131] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
[    7.719901] io scheduler noop registered
[    7.721986] io scheduler deadline registered
[    7.724139] io scheduler cfq registered (default)
[    7.726609] pci_hotplug: PCI Hot Plug PCI Core version: 0.5
[    7.729443] pciehp: PCI Express Hot Plug Controller Driver version: 0.4
[    7.732896] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
[    7.736594] ACPI: Power Button [PWRF]
[    7.739090] input: Sleep Button as /devices/LNXSYSTM:00/LNXSLPBN:00/input/input1
[    7.742927] ACPI: Sleep Button [SLPF]
[    7.744979] GHES: HEST is not enabled!
[    7.747424] xen:grant_table: Grant tables using version 1 layout
[    7.750565] Grant table initialized
[    7.752507] Cannot get hvm parameter CONSOLE_EVTCHN (18): -22!
[    7.755413] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled
[    7.785271] 00:06: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
[    7.791889] Linux agpgart interface v0.103
[    7.797545] brd: module loaded
[    7.800936] loop: module loaded
[    7.802670] Invalid max_queues (4), will use default max: 2.
[    7.808846] scsi host0: ata_piix
[    7.811352] scsi host1: ata_piix
[    7.813921] ata1: PATA max MWDMA2 cmd 0x1f0 ctl 0x3f6 bmdma 0xc100 irq 14
[    7.821033] ata2: PATA max MWDMA2 cmd 0x170 ctl 0x376 bmdma 0xc108 irq 15
[    7.826103] libphy: Fixed MDIO Bus: probed
[    7.828626] tun: Universal TUN/TAP device driver, 1.6
[    7.831807] tun: (C) 1999-2004 Max Krasnyansky<EMAIL_ADDRESS>[    7.833097] blkfront: xvda: barrier or flush: disabled; persistent grants: enabled; indirect descriptors: enabled;
[    7.835041]  xvda: xvda1
[    7.844109] PPP generic driver version 2.4.2
[    7.846290] VMware vmxnet3 virtual NIC driver - version 1.4.a.0-k-NAPI
[    7.849713] xen_netfront: Initialising Xen virtual ethernet driver
[    7.852793] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    7.856068] ehci-pci: EHCI PCI platform driver
[    7.858321] ehci-platform: EHCI generic platform driver
[    7.860958] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    7.863975] ohci-pci: OHCI PCI platform driver
[    7.866242] ohci-platform: OHCI generic platform driver
[    7.868884] uhci_hcd: USB Universal Host Controller Interface driver
[    7.872088] i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
[    7.877724] serio: i8042 KBD port at 0x60,0x64 irq 1
[    7.880198] serio: i8042 AUX port at 0x60,0x64 irq 12
[    7.882801] mousedev: PS/2 mouse device common for all mice
[    7.886487] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2
[    7.890919] rtc_cmos 00:02: rtc core: registered rtc_cmos as rtc0
[    7.894197] rtc_cmos 00:02: alarms up to one day, 114 bytes nvram, hpet irqs
[    7.897747] i2c /dev entries driver
[    7.899522] device-mapper: uevent: version 1.0.3
[    7.902020] device-mapper: ioctl: 4.35.0-ioctl (2016-06-23) initialised<EMAIL_ADDRESS>[    7.906555] ledtrig-cpu: registered to indicate activity on CPUs
[    7.909932] NET: Registered protocol family 10
[    7.912641] NET: Registered protocol family 17
[    7.914814] 9pnet: Installing 9P2000 support
[    7.916878] Key type dns_resolver registered
[    7.919101] microcode: sig=0x306f2, pf=0x1, revision=0x2b
[    7.922094] microcode: Microcode Update Driver: v2.01<EMAIL_ADDRESS>Peter Oruba
[    7.927199] registered taskstats version 1
[    7.929407] Loading compiled-in X.509 certificates
[    7.933029] Loaded X.509 cert 'Build time autogenerated kernel key: 7d5b58ffdbcc85763b015befb4bd9b1c9608357b'
[    7.937971] zswap: loaded using pool lzo/zbud
[    7.940758] Key type trusted registered
[    7.943446] Key type encrypted registered
[    7.945515] ima: No TPM chip found, activating TPM-bypass!
[    7.948349] evm: HMAC attrs: 0x1
[    7.950263] xenbus_probe_frontend: Device with no driver: device/vfb/0
[    7.953548] xenbus_probe_frontend: Device with no driver: device/pci/0
[    7.956851]   Magic number: 9:155:539
[    7.958737] tty ttyS19: hash matches
[    7.960674] rtc_cmos 00:02: setting system clock to 2017-03-28 15:30:28 UTC<PHONE_NUMBER>)
[    7.964754] BIOS EDD facility v0.16 2004-Jun-25, 0 devices found
[    7.967698] EDD information not available.
[    7.986609] Freeing unused kernel memory: 1456K (ffffffff82d6d000 - ffffffff82ed9000)
[    7.990470] Write protecting the kernel read-only data: 12288k
[    7.993973] Freeing unused kernel memory: 1108K (ffff95812f6eb000 - ffff95812f800000)
[    7.999187] Freeing unused kernel memory: 384K (ffff95812fba0000 - ffff95812fc00000)
[    8.700102] tsc: Refined TSC clocksource calibration: 2400.000 MHz
[    8.703143] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x22983777dd9, max_idle_ns:<PHONE_NUMBER>22 ns
INFO[0001] Mounting state device /dev/xvda1 to /state
[    9.764553] EXT4-fs (xvda1): mounted filesystem with ordered data mode. Opts: (null)
ERRO[0002] Failed to run udev settle: exec: "udevd": executable file not found in $PATH
INFO[0002] Waiting for Docker at unix:///var/run/system-docker.sock
[   10.155833] time="2017-03-28T15:30:30Z" level=debug msg="START: [/usr/bin/system-docker daemon --userland-proxy=false --graph /var/lib/system-docker --host unix:///var/run/system-docker.sock --restart=false --storage-driver overlay --group root --bridge none] in /"
INFO[0002] Connected to Docker at unix:///var/run/system-docker.sock
INFO[0002] Loading images from /usr/share/ros/images.tar
[   10.736263] random: crng init done
INFO[0003] Done loading images from /usr/share/ros/images.tar
INFO[0003] Running cloud-init services
INFO[0003] Project [cloudinit]: Starting project
INFO[0004] [0/1] [cloud-init]: Starting
[   12.192624] cgroup: docker-runc (229) created nested cgroup for controller "memory" which has incomplete hierarchy support. Nested cgroups may change behavior in the future.
[   12.201623] cgroup: "memory" requires setting use_hierarchy to 1 on the root
[   12.269728] time="2017-03-28T15:30:32Z" level=debug msg="START: [/usr/bin/ros entrypoint cloud-init-save] in /"
[   12.299325] time="2017-03-28T15:30:32Z" level=error msg="symlink /usr/bin/ros /usr/bin/cloud-init-save: file exists"
[   12.327805] time="2017-03-28T15:30:32Z" level=debug msg="START: [cloud-init-save] in /"
[   12.331864] time="2017-03-28T15:30:32Z" level=info msg="Running cloud-init-save"
[   12.335698] time="2017-03-28T15:30:32Z" level=debug msg=SaveCloudConfig
[   12.360637] time="2017-03-28T15:30:32Z" level=debug msg="init: SaveCloudConfig(pre ApplyNetworkConfig): netconf.NetworkConfig{PreCmds:[]string(nil), DNS:netconf.DNSConfig{Nameservers:[]string(nil), Search:[]string(nil)}, Interfaces:map[string]netconf.InterfaceConfig(nil), PostCmds:[]string(nil), HTTPProxy:\"\", HTTPSProxy:\"\", NoProxy:\"\"}"
[   12.375016] time="2017-03-28T15:30:32Z" level=info msg="Apply Network Config"
[   12.378782] time="2017-03-28T15:30:32Z" level=debug msg="Config: &netconf.NetworkConfig{PreCmds:[]string(nil), DNS:netconf.DNSConfig{Nameservers:[]string(nil), Search:[]string(nil)}, Interfaces:map[string]netconf.InterfaceConfig{\"eth*\":netconf.InterfaceConfig{Match:\"\", DHCP:true, DHCPArgs:\"\", Address:\"\", Addresses:[]string(nil), IPV4LL:false, Gateway:\"\", GatewayIpv6:\"\", MTU:0, Bridge:\"\", Bond:\"\", BondOpts:map[string]string(nil), PostUp:[]string(nil), PreUp:[]string(nil), Vlans:\"\"}, \"lo\":netconf.InterfaceConfig{Match:\"\", DHCP:false, DHCPArgs:\"\", Address:\"\", Addresses:[]string{\"<IP_ADDRESS>/8\", \"::1/128\"}, IPV4LL:false, Gateway:\"\", GatewayIpv6:\"\", MTU:0, Bridge:\"\", Bond:\"\", BondOpts:map[string]string(nil), PostUp:[]string(nil), PreUp:[]string(nil), Vlans:\"\"}}, PostCmds:[]string(nil), HTTPProxy:\"\", HTTPSProxy:\"\", NoProxy:\"\"}"
[   12.417101] time="2017-03-28T15:30:32Z" level=info msg="Applying <IP_ADDRESS>/8 to lo"
[   12.421117] time="2017-03-28T15:30:32Z" level=info msg="Applying ::1/128 to lo"
[   12.425205] time="2017-03-28T15:30:32Z" level=info msg="Running DHCP on lo: dhcpd --release -e force_hostname=true lo"
[   12.430849] time="2017-03-28T15:30:32Z" level=error msg="exec: \"dhcpd\": executable file not found in $PATH"
[   12.472304] cloud-init-save: 10 output lines suppressed due to ratelimiting
INFO[0004] [1/1] [cloud-init]: Started
INFO[0004] Project [cloudinit]: Project started
ERRO[0004] open /var/lib/rancher/conf/cloud-config.d/boot.yml: no such file or directory
ERRO[0004] open /var/lib/rancher/conf/cloud-config.d/network.yml: no such file or directory
ERRO[0004] open /var/lib/rancher/conf/metadata: no such file or directory
SELinux:  Could not load policy file /etc/selinux/ros/policy/policy.29:  Read-only file system
INFO[0005] Launching System Docker
[   13.280106] DEBU[0000] START: [/usr/bin/ros-sysinit] in /
[   13.286591] time="2017-03-28T15:30:33Z" level=debug msg="START: [system-docker daemon --config-file /etc/docker/system-docker.json --group root --host unix:///var/run/system-docker.sock --pidfile /var/run/system-docker.pid --log-opt max-size=25m --log-opt max-file=2 --restart=false --storage-driver overlay --exec-root /var/run/system-docker --graph /var/lib/system-docker --userland-proxy=false] in /"
[   13.322522] DEBU[0000] [1/4] Starting
[   13.326172] DEBU[0000] Looking for images at /usr/share/ros
[   13.329760] DEBU[0000] Found images.tar
> INFO[0000] Loading images from /usr/share/ros/images.tar
[   14.078533] INFO[0000] Loading images from /usr/share/ros/images.tar
> INFO[0002] Done loading images from /usr/share/ros/images.tar
[   15.805080] INFO[0002] Done loading images from /usr/share/ros/images.tar
[   15.809002] DEBU[0002] [1/4] Done 25%
[   15.812537] DEBU[0002] [2/4] Starting
> INFO[0002] Project [os]: Starting project
[   15.845252] INFO[0002] Project [os]: Starting project
[   15.848817] DEBU[0002] Using /proc/version to set rancher.environment.KERNEL_VERSION = 4.9.18-rancher
> INFO[0002] [0/16] [command-volumes]: Starting
> INFO[0002] [0/16] [system-volumes]: Starting
> INFO[0002] [0/16] [container-data-volumes]: Starting
> INFO[0002] [0/16] [media-volumes]: Starting
> INFO[0002] [0/16] [user-volumes]: Starting
> INFO[0002] [1/16] [command-volumes]: Started
> INFO[0002] [2/16] [system-volumes]: Started
> INFO[0002] [2/16] [acpid]: Starting
> INFO[0002] [2/16] [syslog]: Starting
> INFO[0002] [2/16] [udev-cold]: Starting
> INFO[0002] [3/16] [container-data-volumes]: Started
> INFO[0002] [4/16] [user-volumes]: Started
> INFO[0002] [5/16] [media-volumes]: Started
> INFO[0002] [5/16] [all-volumes]: Starting
> INFO[0003] [6/16] [syslog]: Started
[   16.420616] time="2017-03-28T15:30:36Z" level=debug msg="START: [/usr/bin/ros entrypoint rsyslogd -n] in /"
> INFO[0003] [7/16] [acpid]: Started
[   16.607267] time="2017-03-28T15:30:37Z" level=debug msg="START: [/usr/bin/ros entrypoint /usr/sbin/acpid -f] in /"
> INFO[0003] [8/16] [all-volumes]: Started
[   16.737229] time="2017-03-28T15:30:37Z" level=debug msg="START: [/usr/bin/ros entrypoint ros udev-settle] in /"
[   16.792403] time="2017-03-28T15:30:37Z" level=debug msg="START: [ros udev-settle] in /"
[   16.798193] udevd[18]: starting version 3.2
[   16.801959] udevd[19]: starting eudev-3.2
[   16.829838] FUJITSU Extended Socket Network Device Driver - version 1.1 - Copyright (c) 2015 FUJITSU LIMITED
[   16.868366] piix4_smbus 0000:00:01.3: SMBus base address uninitialized - upgrade BIOS or use force_addr=0xaddr
[   16.876222] ixgbevf: Intel(R) 10 Gigabit PCI Express Virtual Function Network Driver - version 3.2.2-k
[   16.881399] ixgbevf: Copyright (c) 2009 - 2015 Intel Corporation.
[   16.906763] ixgbevf 0000:00:03.0: 12:0f:70:17:d3:2a
[   16.909680] ixgbevf 0000:00:03.0: MAC: 1
[   16.911885] ixgbevf 0000:00:03.0: Intel(R) 82599 Virtual Function
[   16.928325] AVX2 version of gcm_enc/dec engaged.
[   16.931132] AES CTR mode by8 optimization enabled
[   16.957010] EDAC MC: Ver: 3.0.0
[   16.961133] EDAC sbridge:  Ver: 1.1.1
[   17.947270] input: ImExPS/2 Generic Explorer Mouse as /devices/platform/i8042/serio1/input/input4
[   21.295555] INFO[0008] [9/16] [udev-cold]: Started
> INFO[0008] [9/16] [ud[   21.300187] INFO[0008] [9/16] [udev]: Starting
ev-cold]: Started
> INFO[0008] [9/16] [udev]: Starting
[   21.421341] DEBU[0008] Rebuild values                                newRebuildLabel= origRebuildLabel= outOfSync=false rebuildLabelChanged=false
[   21.861387] time="2017-03-28T15:30:42Z" level=debug msg="START: [/usr/bin/ros entrypoint udevd] in /"
[   21.892174] udevd[1]: starting version 3.2
[   21.895413] udevd[1]: starting eudev-3.2
[   21.922841] INFO[0008] [10/16] [udev]: Started
> INFO[[   21.927253] INFO[0008] [10/16] [network]: Starting
0008] [10/16] [udev]: Started
> INFO[0008] [10/16] [network]: Starting
[   22.301329] DEBU[0009] Rebuild values                                newRebuildLabel= origRebuildLabel= outOfSync=false rebuildLabelChanged=false
[   22.696208] time="2017-03-28T15:30:43Z" level=debug msg="START: [/usr/bin/ros entrypoint netconf] in /"
[   22.750590] time="2017-03-28T15:30:43Z" level=debug msg="START: [netconf] in /"
[   22.776246] time="2017-03-28T15:30:43Z" level=info msg="Apply Network Config"
[   22.833511] time="2017-03-28T15:30:43Z" level=debug msg="Config: &netconf.NetworkConfig{PreCmds:[]string(nil), DNS:netconf.DNSConfig{Nameservers:[]string(nil), Search:[]string(nil)}, Interfaces:map[string]netconf.InterfaceConfig{\"eth*\":netconf.InterfaceConfig{Match:\"\", DHCP:true, DHCPArgs:\"\", Address:\"\", Addresses:[]string(nil), IPV4LL:false, Gateway:\"\", GatewayIpv6:\"\", MTU:0, Bridge:\"\", Bond:\"\", BondOpts:map[string]string(nil), PostUp:[]string(nil), PreUp:[]string(nil), Vlans:\"\"}, \"lo\":netconf.InterfaceConfig{Match:\"\", DHCP:false, DHCPArgs:\"\", Address:\"\", Addresses:[]string{\"<IP_ADDRESS>/8\", \"::1/128\"}, IPV4LL:false, Gateway:\"\", GatewayIpv6:\"\", MTU:0, Bridge:\"\", Bond:\"\", BondOpts:map[string]string(nil), PostUp:[]string(nil), PreUp:[]string(nil), Vlans:\"\"}}, PostCmds:[]string(nil), HTTPProxy:\"\", HTTPSProxy:\"\", NoProxy:\"\"}"
> INFO[[   22.872097] time="2017-03-28T15:30:43Z" level=info msg="Applying <IP_ADDRESS>/8 to lo"
0009] [11/16] [n[   22.876489] time="2017-03-28T15:30:43Z" level=info msg="Applying ::1/128 to lo"
etwork]: Started[   22.880992] time="2017-03-28T15:30:43Z" level=info msg="Running DHCP on eth0: dhcpcd -MA4 -e force_hostname=true eth0"
                [   22.887448] time="2017-03-28T15:30:43Z" level=info msg="Running DHCP on lo: dhcpd --release -e force_hostname=true lo"
   [   22.893119] time="2017-03-28T15:30:43Z" level=error msg="exec: \"dhcpd\": executable file not found in $PATH"

[   22.899350] INFO[0009] [11/16] [network]: Started
[   22.941782] DEBU[0009] Using /proc/version to set rancher.environment.KERNEL_VERSION = 4.9.18-rancher
[   22.946950] DEBU[0009] Using /proc/version to set rancher.environment.KERNEL_VERSION = 4.9.18-rancher
[   22.951764] DEBU[0009] Using /proc/version to set rancher.environment.KERNEL_VERSION = 4.9.18-rancher
> INFO[0009] [11/16] [ntp]: Starting
[   23.408476] ixgbevf 0000:00:03.0: NIC Link is Up 10 Gbps
[   23.410006] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   23.414359] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
> INFO[0011] [12/16] [ntp]: Started
> INFO[0011] [12/16] [cloud-init-execute]: Starting
[   24.693929] time="2017-03-28T15:30:45Z" level=debug msg="START: [/usr/bin/ros entrypoint ntpd --nofork -g] in /"
[   24.917266] time="2017-03-28T15:30:45Z" level=debug msg="START: [/usr/bin/ros entrypoint cloud-init-execute -pre-console] in /"
[   24.985149] time="2017-03-28T15:30:45Z" level=debug msg="START: [cloud-init-execute -pre-console] in /"
[   24.989984] time="2017-03-28T15:30:45Z" level=info msg="Running cloud-init-execute: pre-console=true, console=false"
[   58.248597] EXT4-fs (xvda1): resizing filesystem from 2094474 to 2095139 blocks
[   58.252966] EXT4-fs (xvda1): resized filesystem to 2095139
> INFO[0046] [13/16] [cloud-init-execute]: Started
[   58.919708] INFO[0046] [13/16] [cloud-init-execute]: Started
> INFO[0046] [13/16] [console]: Starting
[   58.926740] INFO[0046] [13/16] [console]: Starting
[   58.997887] DEBU[0046] Rebuild values                                newRebuildLabel=always origRebuildLabel=always outOfSync=false rebuildLabelChanged=false
> INFO[0046] Rebuilding console
[   59.009171] INFO[0046] Rebuilding console
> INFO[0046] [14/16] [console]: Started
[   59.331142] INFO[0046] [14/16] [console]: Started
> INFO[0046] [14/16] [docker]: Starting
[   59.338321] INFO[0046] [14/16] [docker]: Starting
[   59.342554] INFO[0046] [14/16] [preload-user-images]: Starting
> INFO[0046] [14/16] [preload-user-images]: Starting
[   59.348906] time="2017-03-28T15:31:20Z" level=debug msg="START: [/usr/bin/ros entrypoint ros console-init] in /"
[   59.434465] time="2017-03-28T15:31:20Z" level=debug msg="START: [ros console-init] in /"
[   59.455746] DEBU[0046] Rebuild values                                newRebuildLabel= origRebuildLabel= outOfSync=false rebuildLabelChanged=false
[   59.476469] DEBU[0046] Rebuild values                                newRebuildLabel= origRebuildLabel= outOfSync=false rebuildLabelChanged=false
> INFO[0046] [15/16] [docker]: Started
> INFO[0047] [16/16] [preload-user-images]: Started
> INFO[0047] Project [os]: Project started
> INFO[0048] RancherOS v0.9.1 started

               ,        , ______                 _                 _____ _____TM
  ,------------|'------'| | ___ \               | |               /  _  /  ___|
 / .           '-'    |-  | |_/ /__ _ _ __   ___| |__   ___ _ __  | | | \ '--.
 \/|             |    |   |    // _' | '_ \ / __| '_ \ / _ \ '__' | | | |'--. \
   |   .________.'----'   | |\ \ (_| | | | | (__| | | |  __/ |    | \_/ /\__/ /
   |   |        |   |     \_| \_\__,_|_| |_|\___|_| |_|\___|_|     \___/\____/
   \___/        \___/     Linux 4.9.18-rancher

         RancherOS v0.9.1 ip-172-31-53-52.ec2.internal ttyS0
         docker-sys: <IP_ADDRESS> eth0: <IP_ADDRESS> lo: <IP_ADDRESS>
ip-172-31-53-52 login:

I think I have a fix for that - it seems to be an intermittent issue :/

Thanks for making this issue @cloudnautique and was glad to help replicate the bug

@schuylr @cloudnautique My quick test of v0.9.2-rc1 looks like this issue is resolved. Please tell me if I'm wrong
I used the above cloud-config, and added another key, resulting in those 3 keys, and the one selected at the end of the creation process all being in my .ssh/authorized_keys

@SvenDowideit @cloudnautique - this is probably related to #1751.  I tested the cloud config with T type of AWS machines and it works fine.  It's only with M types and it's only a bug in 0.9.1.  Works in 0.9.0 and fixing for 0.9.2.
Closing in favor of #1751.

@schuylr @cloudnautique if you could test https://github.com/rancher/os/releases/tag/v0.9.2-rc2 that would be excellent - I'm in rural Tasmania, so my internet is terrible.


chore(nargo)!: use faster hash function for checking preprocessed keys

Related issue(s)
Resolves https://github.com/noir-lang/noir/issues/870
Description
Summary of changes
We now use the faster checksum_constraint_system function over hash_constraint_system when preprocessing programs to generate their keys.
One important thing to note here is that it means that we'll be using a different hash function when saving programs to disk in comparison to the hash function we'll be using for contract functions in the A3 context. We'll need to ensure that we keep these separate. As part of that, I have updated any references to "hashes" to "checksums".
Dependency additions / changes

Test additions / changes

Checklist

[x] I have tested the changes locally.
[x] I have formatted the changes with Prettier and/or cargo fmt with default settings.
[x] I have linked this PR to the issue(s) that it resolves.
[x] I have reviewed the changes on GitHub, line by line.
[x] I have ensured all changes are covered in the description.

Documentation needs

[ ] This PR requires documentation updates when merged.

Additional context

Let's merge this after #1056

@TomAFrench Isn't this a breaking change?

Making this PR breaking as the next release is a breaking release anyway.

Hmm, I'm thinking that in combination with https://github.com/noir-lang/noir/pull/1056, this may be more trouble than its worth. If we're compiling a contract we'll want to do a sha256 hash to insert into the contract artifact so it doesn't really make sense to do another one to save to disk as a checksum.
We then can only benefit from this faster hash function for noir programs, but we'd have to have a parallel preprocessing flow for just this particular case (we can't reuse the PreprocessedData struct that we currently have).
I think a better route for us to follow would be for us to push more heavily for the main proving/verifying flow to be that we compile noir into a single artifact file which contains ABI, circuit, pk, vk and try to just read from this file as much as possible.

Scratch that, I thought we were including the ACIR hash in the contract artifact.

That said, I do think it's worth us pushing for a greater focus on having a single artifact as source of truth for programs as we do for contracts.

That said, I do think it's worth us pushing for a greater focus on having a single artifact as source of truth for programs as we do for contracts.

Fair point -- Can you open an issue for this? The prover key can get very large, so I don't know if we want to embed it in the ABI like we do for contracts (possibly?)

For the ACIR hash, just for reference, its used only to check if the user code has changed -- We could have chosen a hash of the Noir source code or the AST, but ACIR was sort of the most convenient object to use.

Currently yes, but I'm thinking about how we're going to be embedding the ACIR hash into the contract tree in A3. This means that in some situations we're not free to switch out the hash function for a different one (or at least it won't make sense to as we'll using sha256 as well anyway).

Hmm they are for two different purposes -- one is for checksumming the program, so the compiler can see whether we need to recompile and the other is for usage in an application

Small terminology note, I don't think that we should refer to the structure added in https://github.com/noir-lang/noir/pull/1056 as the "contract ABI" but the "contract artifact". This matches up better with solidity (as ABI doesn't include bytecode, etc) and things can get confusing otherwise.

Thanks for the correction good ser :)

Added an issue here #1102

one is for checksumming the program, so the compiler can see whether we need to recompile and the other is for usage in an application

This is kind of my point with saying that we need a generic artifact. We shouldn't need to be concerned with what hash function Aztec 3 uses but it's not unlikely that the A3 artifact will contain the ACIR hash (sha256) which means we'll end up with multiple different hashes of the same data floating around for no reason.

@kevaundray This PR should be gtg now


Editor crashing for BP project

Hello there.
I'm testing the BP project, I'm using your last submissions for the plugin and template and every action I try to do results in the editor crashing. All the actions: Join channel audio, Screen Share, etc. do the same, it seems like the corresponding map is being open but then it crash.

What platform editor do you use? If it is a mac, you need to open the permission to use it. Otherwise, it will crash。

What platform editor do you use? If it is a mac, you need to open the permission to use it. Otherwise, it will crash。

I'm using Windows 10.

你能在D:/Agora-Unreal-SDK-Blueprint-Example/Plugins/AgoraPlugin/Source/ThirdParty/AgoraPluginLibrary/x64/Release/agora_rtc_sdk.dll这个路径找到库文件吗？是不是有可能是病毒误杀了？或者解压错误导致文件丢失？

We have ddl files, but that root doesn't exist, I also looked for it in the zip and is not there.

It may not be possible for you to temporarily change the name of this x86_64 to x64. We are now at 00:51, and we may have to go to the company tomorrow to reproduce this problem directly, sorry.

How can I clone the plugin? I'm trying with commands and github desktop but they are giving me errors.
I could clone the template, not the plugin.

The plugin is version <IP_ADDRESS> downloaded from release, not a clone. After the download is complete, copy it to the plugins folder of the project directory. For details, please refer to the readme.
https://github.com/AgoraIO-Extensions/Agora-Unreal-RTC-SDK/blob/main/Agora-Unreal-SDK-CPP-Example/README.md


Reverse proxy fails to startup intermittently.

We run TestCafe in our CI system to test an Electron application written in Typescript.
Each test in our test suite executes on one VM, and then the VM is restarted and may be used for other tests later.
Intermittently, we notice that the TestCafe proxy does not work, and we see:
ERROR Unable to establish one or more of the specified browser connections. This can be caused by network issues or remote device failure.
There is no pattern to the VM this happens on, or to the test that is running.
I'd like to know:

Is there a workaround to this problem?
Or, is there an easy way to write a script to detect that the proxy is not starting correctly and re-start testcafe?

What is your Test Scenario?
We do not have a duplication scenario because this problem is intermittent.
What is the Current behavior?
We see the error below, and it seems the reverse proxy is not working because the logs don't show
ERROR Unable to establish one or more of the specified browser connections. This can be caused by network issues or remote device failure.
What is the Expected behavior?
Don't expect any errors and expect reverse proxy to work.
What is your web application and your TestCafe test code?
Not publicly available yet.
Steps to Reproduce:
Don't know.
Your Environment details:
I am getting this information and will update soon.

testcafe version:      1.8.1

node.js version:      12

command-line arguments:  npx testcafe electron components//*.ts tests/common//.ts tests/pit/**/.ts tests/performance/**/*.ts  --test-meta TC-1177=true

browser name and version: Electron 8.3.3

platform and version:      Windows10

@jm-ra
Hello,
It looks like your CI lacks resources. I suggest you add some resources to your CI machine and update your TestCafe version to the latest version (v1.9.4) to make your test results more stable.
We plan to improve the "Unable to establish one or more of the specified browser connections" error message. You can track our progress here: https://github.com/DevExpress/testcafe/issues/5307.

What are "resources"? How would I know which ones to add?

@jm-ra
Hello,
I mean the number of processors and the amount of RAM. It's hard to name the exact cause of the "Unable to establish.." error. I suggest you experiment with your CI config settings.

Thanks. We have hundreds of VM's that run these tests. All the VM's are the same. Intermittenty, on random VM's the reverse proxy does not start. The test can later run ok on same VM.
My question was: How to detect this condition programatically, so we can restart the test.

@jm-ra
The "Unable to establish one or more of the specified browser connections" error means that the browser/browsers did not have time to initialize during the timeout. Most likely this happened due to a lack of resources. At present you cannot configure this timeout. You can solve this issue by adding resources to your virtual machines. We will think how to make this timeout configurable.


🎆Updates maintenance/license year to 2024

Proposed change

Happy New Year 🍾
Additional information

This PR fixes or closes issue: fixes #

Checklist

[ ] I have updated the documentation if needed.
[ ] I have updated the tests if needed.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (f655c60) 100.00% compared to head (be17542) 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #437   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            4         4
  Lines          141       141
  Branches        18        18
=========================================
  Hits           141       141

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Adding New Azure OAuth flags for User Identity Support

Azure OAuth for Grafana is in the process of adding a few new flags as a part of a new feature implementation, specifically the use of federated credentials for logging into Azure AD. This PR can be found here for reference.
This PR adds these flags as supported values for the TokenEndpointSettings in preparation for full support of this new feature implementation for user identity authentication within the various plugins. This PR allows for Grafana to set these new flags inside the pkg/setting/setting_azure.go and pkg/services/pluginsintegration/pluginconfig/request.go files within the Grafana repository.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@aangelisc @bossinc @adamyeats @katebrenner Hello! Since you all are listed as reviewers for this PR, I wanted to leave a comment for you all in regard to getting this approved. As referenced in the description above, I am currently working with Grafana (@kalleep) to implement a new way of authenticating into Azure AD for SSO. That PR is adding 3 new flags that will impact this sdk for the user identity authentication, since it uses the same flags as the [azuread] section. All this PR does is prepare the SDK for supporting these new flags when they are set in pkg/setting/setting_azure.go and pkg/services/pluginsintegration/pluginconfig/request.go files within the Grafana repository.
I have also been in contact with @yjsong11 within Microsoft, and she has been made aware of this PR and its purpose!
Looking forward to getting this merged and approved.

Hi @aangelisc,
Sure! Here is some background information for you: Signing into Azure AD via SSO for Grafana currently only offers client_id + client_secret. Given that within Microsoft we are migrating away from using secrets (for security purposes), this poses an issue if we are to use Grafana for dashboard solutions. The PR here basically adds three new flags:

client_authentication: this value is where you get to specify which type of authentication you may use. The two supported values will be client_secret_post (using secrets as before) and a new one called managed_identity (uses the implicit identity of services deployed inside of Azure).
managed_identity_client_id: For use of managed_identity client authentication
federated_credential_audience: For use of managed_identity client authentication

Now, this SDK supports a type of authentication called 'user identity' in which it uses the settings from the [auth.azuread] section of the .ini file to authenticate into Azure AD itself (this is used in Azure plugins). For example, here is the documentation for the Azure Data Explorer Datasource 'Current User' auth method where it uses user identity.
Since the Azure auth flags are changing (given there are three additional ones), we need to update this SDK to be able to handle these new flags. This is because in the setting_azure.go and request.go files within Grafana, these user identity values are set. With the addition of the three new flags, these will also need to be set for the SDK, hence this PR adding the flags as supported values.
After this PR is approved, the way authentication works for the SDK will not change, but it will prepare the SDK for supporting the same new authentication managed_identity. I already have the next PR lined up for adding the necessary logic to this SDK to add in the new authentication, but I cannot submit that one until this one has been approved and published in a new release.

@kalleep @mgyongyosi not sure if you guys can also look over / approve... please see conversation above for explanation of this PR since you already have great context, thanks!


feat: add the helsinki campus map

Describe the pull request
Add the first campus after Paris to the S42 app 🎉  Thanks to titus for map information
Checklist

[x] I have linked the relative issue to this pull request
[x] I have made the modifications or added tests related to my PR
[x] I have added/updated the documentation for my RP
[x] I put my PR in Ready for Review only when all the checklist is checked

Breaking changes ?
no

Linked to https://github.com/42Atomys/stud42/issues/311


Setting Label.Visible to false does not hide the Label

Describe the bug
In ReactiveExample, binding Label.Visible to a boolean does not hide the label when the boolean turns false.
To Reproduce
Steps to reproduce the behavior:

Clone the repo
In Visual Studio, open Terminal.sln, set ReactiveExample as Startup project
In ReactiveExample -> LoginView.cs make the following change (replace setting ColorScheme with setting Visible):

Run and fill the input fields, then clear the input fields

Expected behavior
I expect the label to disappear when both input fields contain values This does not happen, it just stays, showing the same old text.
(My goal is to hide the validation label when the input fields are filled.)
Screenshots
Modified app (as in above screenshot)
Starting the app all is well, the label is showing ("Please, enter..."):

After entering text the label should disappear, but instead still shows the "old" text ("Please, enter..."):

UNmodified app (as freshly pulled)
Just to check that the bindings etc. are all set up I reverted back to the unmodified version. Here is the app when starting, showing the validation text (here in red since the code for changing the ColorScheme is active):

The validation text changes properly when having filled both input fields ("The input is valid"):

And it changes back when clearing the input fields:

Am I wrong in my expectation that hiding the label should be possible as well? If yes, how else would I do it?
Desktop (please complete the following information):

OS: Windows 11
Version 1.7.2
.NET 6 console app

Additional context

Thanks for reporting this, looks like @BDisp has gotten a fix in for it and a unit test to prevent it happening again 🏆 .

I'm reopen this because it's causing some bad behaviors on situations where we don't want to clear the view at all. I appreciate suggestions for this. On example where I don't want to clear is on a ScrollBarView when set Visible to false I don't want the area been cleaned if the Redraw method is overridden.


[BUG][RKE2] - Reprovisioning all nodes in cluster causes nodes to get stuck in reprovisioning

Rancher Server Setup

Rancher version: v2.7-head 1f014b7
Installation option (Docker install/Helm Chart): helm

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc):

Proxy/Cert Details:

Information about the Cluster

Kubernetes version: v1.26.4+rke2r1
Cluster Type (Local/Downstream): any rke2 node driver cluster

User Information

What is the role of the user logged in? (Admin/Cluster Owner/Cluster Member/Project Owner/Project Member/Custom)

If custom, define the set of permissions: Admin

Describe the bug
When changing a setting that affects all machine pools in a cluster, the nodes got stuck while reprovisioning. The nodes are either stuck in reconciling or deleting
To Reproduce

Provision rke2 node driver cluster with 3 etcd 2 cp 3 workers
Wait for cluster to become active
Edit cluster config
Set hostnameLengthLimit in cluster config
Save
Wait for Cluster to come up active

This was also reproducible by changing the image of all the machine pools in step 4.
Result

The cluster is stuck in reprovisioning with nodes stuck in reconciling or deleting. This doesn't seem to be specific to hostnameLengthLimit as changing the image for the machine pools also reproduced this issue. I don't see any errors in the logs and when I check kubectl, the nodes are in status Ready.
In case where hostnameLengthLimit was changed on an Edit Cluster - worker node was stuck and did not reprovison. Etcd and control plane reprovisioning went through

Expected Result

All machine pools should be reprovisioned successfully.

The root cause of this issue is that the etcd safe removal isn't done for the init etcd node before removal, and causes new etcd nodes to continuously fail leader election due to the ghost nodes. This also prevents the new controlplane and worker nodes from successfully registering because there is no suitable leader node, as well as preventing the old ones from deleting since they will not delete until the new nodes are active.

https://github.com/rancher/rancher/pull/41459 enhances rke bootstrap management of etcd nodes to allow for safe removal of etcd nodes.

Test Environment:
Rancher version: v2.7-head 1eb478f
Rancher cluster type: HA
Docker version: 20.10
Downstream cluster type: rke2

Testing:
Tested this issue with the following steps:

Provision rke2 node driver cluster with 3 etcd 2 cp 3 workers
Wait for cluster to become active
Edit cluster config
Set hostnameLengthLimit in cluster config
Save
Wait for Cluster to come up active

Result - Pass
Nodes are now being provisioned successfully


Add HorizontalChoice

This implements #59
To add this to the README, how should the PNG be generated? (any specs on sizes?)

Preview:

I now optimize the input and output track to take only the height into account for the items where the track has to go around:

Will review in a bit.

The effect is visible here:
http://htmlpreview.github.io/?https://github.com/matthijsgroen/ebnf2railroad/blob/master/examples/ebnf.html
I'm using this library in a tool to create documentation based on ebnf: https://github.com/matthijsgroen/ebnf2railroad

Ah, very cool, I definitely see how this is useful!
However, the code needs some work; I know that it at minimum doesn't handle items with height well. (This isn't your fault; the code isn't well-documented in the first place.)  Here's an example:
Diagram(
  HorizontalChoice('a', Stack("1","2","3"), 'c'))

I'll play around with this and get it into a committable state. Thanks for the initial push!

Good catch! I will try to create a fix as well 😊

Only stacks as first and last element is still not correct

There is still one small "down" issue, will look at it later

@tabatkins I think all edge cases are covered now!

Phew, all right. While reviewing, I noticed the code still wasn't handling some corner cases correctly (handling all variations of large/small vertical separation and arc radius is tricky!), and generally was taking up more space than is necessary. In fixing these, I ended up rewriting it pretty much entirely. ^_^  But it's committed now and working beautifully, as far as I can tell.  I'll port it over to Python in a little bit.
Thanks so much for the idea and design!
(Also, btw, I also rewrote the entire thing as a JS module, using modern JS things like class and such. The older version still exists and the new HorizontalChoice exists in both versions. If you want something a little newer, feel free to just import * as rr from "./railroad.js"; ^_^)


Align CertifyKey and DeriveChild with the spec

Align command IDs with the main spec
Remove CertifyCsr. This is instead a format parameter to CertifyKey.
Add new additional input flags to CertifyKey and DeriveChild

This PR only covers command formats. https://github.com/chipsalliance/caliptra-dpe/issues/106 tracks implementation of 3

I think we also need to add INPUT_ALLOW_CA and INPUT_ALLOW_X509 to the context struct, but maybe this can be done in the follow up change which implements the handling of the flags added in this PR.

Done


WIP: Implement Login Screen

Description

Description of issue
Output before solved
Changes in Issue
Output of solved issue

Type of Changes?
Just put an x in the [ ] which are valid.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Testing Suites

How Has This Been Tested?
Please describe the tests that you ran to verify your changes.

[ ] ./gradlew assembleDebug assembleRelease

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

Hey, I have done the following:

Splash Activity launches up login screen
Static design for login screen

And here is the screenshot on a Pixel 3a Emulator:

Can I have the google logo on as seen on the design for "Login with Google" button?

Can I have the google logo on as seen on the design for "Login with Google" button?

Good Work 👍 @pfieffer


handle subscription to EFF mailings non-interactively

Allow non-interactive handling of subscriptions to EFF mailings in case an e-mail address was provided.

Hey, thanks for your merge request! Could you update this patch for the new 2.x branch?


What is the difference when we use cell.dimesnsion=1 for 1D system ?

Hi everyone!
I'm working on 1D and 2D chains using PyScf.
You know setting a larger vacuum size for 1D systems has the high computational cost especially in calculations such as  DMET.
Could you please tell if there is a way to set the optimal vacuum size or the other helpful way to reduce the computational costs ?
I see there is a keyword dimension that we can set it to 1 for 1D systems . But what is the difference when we set the cell.dimension = 1 for 1D chain of molecule or not ?
For example suppose we have a 1D Hydrogen chain (kpt: [1 1 4] ) in a cell box with 20 A vacuum in X and Y direction.
Thanks!

If  cell.dimension = 1 was set, the lattice parameters you specified in Y and Z directions will be ignored by the program.

Thanks Qiming,
Yeah I see that.  But if we set the gdf_mesh manually then what?

This means a larger number of mesh may be needed to converge integrals for Y and Z directions. dimension=1 only excludes the repeated cell images in Y and Z . A large number of mesh points are still required to compute integrals.

Thanks,


Uncaught ReferenceError: seajs is not defined

Hello,
I'm trying to view a site that uses seajs. "aliexpress.com".
I have to Laptops and on one laptop the site works but on the other I get "Uncaught ReferenceError: seajs is not defined"
The laptop that it doesn't work on runs Yosemite, and I tried on Chrome, Safari and Firefox. Get the same problem everywhere. Someone that know what this can be?

i'm having this issue as well, can't find any solution about it on the internet, the site is opened without image and editor just text and link. can't view the site, any solution?

I changed language on the site. Then it started to work again. Think it had something to do with location services.
Skickat från BlueMail
Den 16 jan 2016 08:17, kI 08:17, robertwt7<EMAIL_ADDRESS>skrev:

i'm having this issue as well, can't find any solution about it on the
internet, the site is opened without image and editor just text and
link. can't view the site, any solution?

Reply to this email directly or view it on GitHub:
https://github.com/seajs/seajs/issues/1599#issuecomment-172168173


Module not found.

00:04:29.843 [warn]  The on_load function for module keccakf1600 returned:
{:error, {:load_failed, 'Failed to load NIF library c:/Users//Code/blockchain/elixir/carte/_build/test/lib/keccakf1600/priv/keccakf1600: 'The specified module could not be found.''}}
  @spec hash(String.t()) :: String.t()
  def hash(data) do
    :keccakf1600.hash(:sha3_256, data)
    |> Base.encode16()
  end

@Lokraan This should hopefully be fixed in version 3.0.0.  Could you give that version a try to see if it works for you?


move endpoint configuration out of createServer constructor

import { createServer } from "@graphql-yoga/node"
const server = createServer({
  endpoint: "/foo"
})

The endpoint config option only has an impact if the server is started via server.start(). For integrations like Next.js etc. it is not relevant and can be omitted.
It might make sense to move the endpoint option to server.start({ endpoint: "/foo" }) instead.
Instead of endpoint, the key could also be named route.
This would be a breaking change

What would you think about keeping the existing implementation but also adding the a configuration option through server.start() as well? Then, build in a deprecation warning and carry both options through another major version?
The start implementation would then need to take priority if both were configured, and maybe a warning urging people to switch? Documentation on the change and log outputs would both need to be explicit to catch as many users as possible before the deprecation.
Another thought I just had is one of semantics though. Right now, createServer makes sense in the context of what you are doing, because you are creating and configuring the HTTP server to run. Having the ability to start the server with a different config could be useful, though I can't think of any reason you would configure it once just to configure it again off the top of my head. (I'm sure there are many though).
So maybe adding a second entry point would work? Something like createHandler that would essentially create a route handler without the server options that aren't needed, because frameworks like Next.js and Sveltekit are handling ports and routing to begin with. Then it becomes non-breaking and would just need to be documented to educate users.
Does this make sense, and am I anywhere near the mark of what you were thinking?

Kind of solved as part of v3 where you now have to use the node:http handler functionality.


PayBC Test - Taking to Wrong Page

Title of ticket:
Noticed in Test that PayBC is in TEST is not taking to the expected page - it is taking to a "cart" page instead and user is not able to complete payment.
Not an issue in prod but should be researched and fixed in test for testing purposes. Awaiting additional info from PayBC Team
Description
Summarize issue
Dependencies
Are there any dependencies?
DOD

[ ] List the items that need to be complete for this ticket to be considered done
[ ]
[ ]
[ ]
[ ]

It is showing up on Katalon reports as well.
Private Zenhub Image

This is resolved.


[pylint] - implement  access-member-before-definition / E0203 rule

Summary
Part of pylint rules: https://github.com/astral-sh/ruff/issues/970

Add --preview to running test command because all the newly added rules are preview and I think we want this flag to be there to run them.
Implement  pylint E0203  rule.
Implement load & store for attribute expressions & store assignments to instance and
attributes in class scope. I left the support for cls access for later because this rule does not depend on it. My plan is that with this new feature in checker we can try to tackle rules like E1101 after this PR.

The rule runs on init function scopes. It goes over all the unresolved attributes(new) in the scope and finds the attribute assignment and emits the diagnostic if member is initialized later. If the member is accessed but not initialized at all it won't emit any errors.
Also this rule will not apply for classes with base classes, since base classes might contain the unresolved attributes. The problem with that is we need to support multi file analysis. Which I think should be for another PR.
Questions:
Should we only check __init__ method?
I checked pylint and seems like this is only triggered on __init__ function.
class Unicorn:
    def __init__(self, fluffiness_level):
        pass

    def is_magical(self):
        self.fluffiness_level += 100

Note the no-member is a different error here.
test.py:6:8: E1101: Instance of 'Unicorn' has no 'fluffiness_level' member (no-member)

Should we only check for accesses where the definition is not in the same scope?
I checked an edge case in pylint where the accessed variable is in an inner function:
class Unicorn:
    def __init__(self, fluffiness_level):
        def f():
            self.fluffiness_level # this does not trigger the warning
        self.fluffiness_level = fluffiness_level

Rule source code in pylint:
https://github.com/pylint-dev/pylint/blob/main/pylint/checkers/classes/class_checker.py#L1960
Test Plan
Checked new ecosystem results:

securedrop/pretty_bad_protocol/_meta.py:174:42: Seems ok

Hi, should I rebase this PR with main? Not sure if you want to move forward with it.

I realized this was marked as accepted so I rebased with main.

I'm closing this PR. red knot can identify this so hopefully soon using that.


Slack CLI fails to detect NodeJS

When executing the command slack create -t slack-samples/bolt-python-custom-function-template my-app the script exists with Error code 1.
Following this, slack run will fail due to missing dependencies.
manually running npm install will then allow slack run to function as expected.
DEBUG 2024/04/26 13:15:44.608327 unsupported runtime found: Failed to detect project runtime from directory structure (runtime_not_supported)
INFO 2024/04/26 13:15:44.609069 ------------------------------------
INFO 2024/04/26 13:15:44.609069 Operating System (OS): [windows]
INFO 2024/04/26 13:15:44.609069 Command: [...\AppData\Local\slack-cli\bin\slack.exe create -t slack-samples/bolt-js-custom-function-template my-app]
INFO 2024/04/26 13:15:44.609069 SessionID: [4d4d0501-3ce1-43a0-b427-fd646701dc4c]
INFO 2024/04/26 13:15:44.609069 Slack-CLI-TraceID: [03db4d6df3e9653c]
INFO 2024/04/26 13:15:44.609069 Slack-CLI Version: [2.22.0]
INFO 2024/04/26 13:15:44.609069 System ID: [7ae7b819-7d42-4f5e-abe8-8334952a6806]
DEBUG 2024/04/26 13:15:45.298330 "check-update" hook value not found in slack.json when checking for SDK updates
DEBUG 2024/04/26 13:15:45.912177 initialize runtime from auto-detect: Node.js (nodejs)
DEBUG 2024/04/26 13:15:51.613169 Starting root command cleanup routine
ERROR 2024/04/26 13:15:51.615717 exit status 1

DEBUG 2024/04/26 13:15:51.617824 FlushToLogstash will POST https://slackb.com/events/cli payload: [{"context":{"bin":"...\\AppData\\Local\\slack-cli\\bin\\slack.exe","cli_version":"2.22.0","command":"create","command_canonical":"create","flags":["template"],"host":"5f0284b18d67b7109adf65bb5de494643a3a0bb7","os":"windows","project_id":"d6509782-0a94-4375-ac3b-2c0d9dcd5a0f","session_id":"4d4d0501-3ce1-43a0-b427-fd646701dc4c","system_id":"7ae7b819-7d42-4f5e-abe8-8334952a6806"},"data":{"app":{"template":"slack-samples/bolt-js-custom-function-template"},"auth":{},"error_code":"app_create_error","error_msg":"exit status 1\n"},"event":"error","timestamp":1714101351616}]
DEBUG 2024/04/26 13:15:51.848699 FlushToLogstash response status code: 200, body: ok

👋 Going to close this for now since next steps aren't immediately obvious, but willing to revisit it whenever!
As a note, v2.25.0 of the Slack CLI outputs detailed installation information of dependencies to the debug logs and with the --verbose flag which can be helpful in troubleshooting. If you run into this error again it'd be great to share those logs!