Pull updates all image lock files

Use Case
As A Software Packager
I want to Create a bundle to distribute the multiple applications that are part of a deployment
So that Application consumers can retrieve all needed software from a single place
Prerequirements
The following images exist in the registry

my.registry.io/bundle-1@sha256:aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
The .imgpkg/images.yml looks like the following
apiVersion: imgpkg.carvel.dev/v1alpha1
kind: ImagesLock
images:
- image: my.registry.io/img-1@sha256:bbbbbbbbbbfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
- image: my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0

my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
The .imgpkg/images.yml looks like the following
apiVersion: imgpkg.carvel.dev/v1alpha1
kind: ImagesLock
images:
- image: my.registry.io/img-2@sha256:eeeeeeeeeefdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0

my.registry.io/img-1@sha256:bbbbbbbbbbfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0

my.registry.io/img-2@sha256:eeeeeeeeeefdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0

Acceptance Criteria
🟢 Scenario 1: Updates all the Image Lock files for all bundles after copy
Given the following file exists in r-bundle/.imgpkg/images.yml
apiVersion: imgpkg.carvel.dev/v1alpha1
kind: ImagesLock
images:
- image: my.registry.io/bundle-1@sha256:aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
- image: my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0

When I run imgpkg push -b my.registry.io/r-bundle -f r-bundle/ --experimental-recursive-bundle
Then I run imgpkg copy -b my.registry.io/r-bundle@sha256:ccccccccccfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0 --to-repo other.registry.io/bundle --experimental-recursive-bundle
When I run imgpkg pull -r -b other.registry.io/bundle@sha256:ccccccccccfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0  -o /tmp/recursive-bundle --experimental-recursive-bundle
Then I should see
Pulling bundle 'my.registry.io/r-bundle@sha256:ccccccccccfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0'
Bundle Layers
  Extracting layer 'sha256:87bf2c587b3315143cd05df7bd24d4e608ddb59f8c62110fe1b579fb817a2917' (1/1)

Nested bundles
  Pulling nested bundle 'my.registry.io/bundle-1@sha256:aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0' (1/2)
  Extracting layer 'sha256:81fc6f37c9774541136e6113d899c215151496f4cf91c89c056783d2feb5ae0d' (1/1)

    Pulling nested bundle 'my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0' (1/1)
    Extracting layer 'sha256:9abb11371e7e53b5c33da086ea50dabb5d4cdd280be7d489169374b0188feab1' (1/1)

  Pulling nested bundle 'my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0' (2/2)
  Skipped, already downloaded

Locating image lock file images...
The bundle repo (other.registry.io/bundle) is hosting every image specified in the bundle's Images Lock file (.imgpkg/images.yml)

Updating all images in the ImagesLock file
+ Changing all image registry/repository references in /tmp/recursive-bundle/.imgpkg/images.yml to other.registry.io/bundle
+ Changing all image registry/repository references in /tmp/recursive-bundle/.imgpkg/bundles/sha256-aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0/.imgpkg/images.yml to other.registry.io/bundle
+ Changing all image registry/repository references in /tmp/recursive-bundle/.imgpkg/bundles/sha256-ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0/.imgpkg/images.yml to other.registry.io/bundle

Succeeded

When I execute cat /tmp/recursive-bundle/.imgpkg/images.yml
Then I should see
---
apiVersion: imgpkg.carvel.dev/v1alpha1
images:
- image: other.registry.io/bundle@sha256:aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
- image: other.registry.io/bundle@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
kind: ImagesLock

When I execute cat /tmp/recursive-bundle/.imgpkg/bundles/sha256-aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0/.imgpkg/images.yml
Then I should see
---
apiVersion: imgpkg.carvel.dev/v1alpha1
images:
- image: other.registry.io/bundle@sha256:bbbbbbbbbbfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
- image: other.registry.io/bundle@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
kind: ImagesLock

When I execute cat /tmp/recursive-bundle/.imgpkg/bundles/sha256-ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0/.imgpkg/images.yml
Then I should see
---
apiVersion: imgpkg.carvel.dev/v1alpha1
images:
- image: other.registry.io/bundle@sha256:eeeeeeeeeefdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
kind: ImagesLock

🟢 Scenario 2: Does not update Image Lock files if no relocation has occurred
Given the following file exists in r-bundle/.imgpkg/images.yml
apiVersion: imgpkg.carvel.dev/v1alpha1
kind: ImagesLock
images:
- image: my.registry.io/bundle-1@sha256:aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
- image: my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0

When I run imgpkg push -b my.registry.io/r-bundle -f r-bundle/ --experimental-recursive-bundle
Then I should see
dir: r-bundle/
dir: r-bundle/.imgpkg
file: r-bundle/.imgpkg/images.yml
Pushed 'my.registry.io/r-bundle@sha256:ccccccccccfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0'
Succeeded

When I run imgpkg pull -r -b my.registry.io/r-bundle@sha256:ccccccccccfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0  -o /tmp/recursive-bundle --experimental-recursive-bundle
Then I should see
Pulling bundle 'my.registry.io/r-bundle@sha256:ccccccccccfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0'
Bundle Layers
  Extracting layer 'sha256:87bf2c587b3315143cd05df7bd24d4e608ddb59f8c62110fe1b579fb817a2917' (1/1)

Nested bundles
  Pulling nested bundle 'my.registry.io/bundle-1@sha256:aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0' (1/2)
  Extracting layer 'sha256:81fc6f37c9774541136e6113d899c215151496f4cf91c89c056783d2feb5ae0d' (1/1)

    Pulling nested bundle 'my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0' (1/1)
    Extracting layer 'sha256:9abb11371e7e53b5c33da086ea50dabb5d4cdd280be7d489169374b0188feab1' (1/1)

  Pulling nested bundle 'my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0' (2/2)
  Skipped, already downloaded

Succeeded

When I execute cat /tmp/recursive-bundle/.imgpkg/images.yml
Then I should see
---
apiVersion: imgpkg.carvel.dev/v1alpha1
images:
- image: my.registry.io/bundle-1@sha256:aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
- image: my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
kind: ImagesLock

When I execute cat /tmp/recursive-bundle/.imgpkg/bundles/sha256-aaaaaaaaaafdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0/.imgpkg/images.yml
Then I should see
---
apiVersion: imgpkg.carvel.dev/v1alpha1
images:
- image: my.registry.io/img-1@sha256:bbbbbbbbbbfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
- image: my.registry.io/bundle-2@sha256:ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
kind: ImagesLock

When I execute cat /tmp/recursive-bundle/.imgpkg/bundles/sha256-ddddddddddfdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0/.imgpkg/images.yml
Then I should see
---
apiVersion: imgpkg.carvel.dev/v1alpha1
images:
- image: my.registry.io/img-2@sha256:eeeeeeeeeefdfae29258d94a22ae4ad1fe36139d47288b8960d9958d1e63a9d0
kind: ImagesLock

Closed by https://github.com/vmware-tanzu/carvel-imgpkg/pull/109. Available in v0.6.0.


Chapter_8 reenactment_pix2pix reenactment_train_pix2pix.ipynb have no dataset

Chapter_8/reenactment_pix2pix/reenactment_train_pix2pix.ipynb have no dataset data.zip

@zm274310577 Kindly read through the instructions, the data generation script is based on code snippets discussed in the Facial landmarks section


Create minidump when crashed on Windows

So we can see the stack trace when user reporting an issue. We may also need to enable PDB file for the release build.

We can have a log file of sorts. Warnings, errors, exceptions, all that.

That one we already have. Logging only tell roughly what going on but does not provide the exact location where the crash happened. With minidump we can see everything like variable value, stack trace, etc. #48 is the example case that minidump will be useful. If we have minidump we will know the root cause immediately.


Async::::connect returning with io::ErrorKind::WouldBlock

I am in the process of moving swayipc from async-std to async-io. While running the unit tests I encountered tests failing with io::ErrorKind::WouldBlock. After re-running the current tests with the latest version of async-std I encountered the same behaviour (since async-std moved to async-io). The unit tests run without failing on async-std version 1.5 since this is the last version using mio-uds. I extracted an example on how to reproduce this bug:
use async_io::Async;
use futures_lite::future;
use std::os::unix::net::UnixStream;
use std::thread;

fn main() {
    let mut handles = Vec::new();
    for _ in 1..100 {
        let handle = thread::spawn(|| {
            future::block_on(async {
                Async::<UnixStream>::connect("pathtosomeunixsocket").await
            })
        });
        handles.push(handle);
    }
    for handle in handles {
        if let Err(error) = handle.join().unwrap() {
            dbg!(error);
        }
    }
}

Thanks for the report! Can you see if this fixes the bug? https://github.com/stjepang/async-io/pull/19

I tried to debug and fix this bug as well since yesterday and came up with the same solution you propose in #19. Unfortunately this does not fix the problem. Calling connect does not error out with io::ErrorKind::WouldBlock anymore but therefore a write to the socket results in io::ErrorKind::NotConnected. I believe that stream.writable().await? here does not wait until the socket is connected

Hmmm. I wonder what happens if you await writable() twice?
stream.writable().await?;
stream.writable().await?;

If this resolves the issue, then indeed there is a problem in writable().

Hmmm. I wonder what happens if you await writable() twice?
I tried it out but it did not change anything as far as I can tell. With #19 applied a write to the socket still sometimes fails with io::ErrorKind::NotConnected. The behaviour is pretty inconsistent. It does not happen on every connect/write but rather if there are multiple threads trying to establish a connection (e.g. in unit tests).
Do you perhaps have a reproducible example for the issue that remains even after #19 is applied?
I created a repo with an reproducible example here. It uses the swayipc socket, I have not tested it with other sockets yet.

Ok I was able to reproduce. The error eventually pops up even if I do this:
fn main() -> std::io::Result<()> {
    use futures_lite::io::AsyncWriteExt;
    future::block_on(async {
        for step in 0..500_000 {
            dbg!(step);
            let mut conn =
                Async::<UnixStream>::connect("/run/user/1000/sway-ipc.1000.1358.sock")
                .await?;
            conn.write(&[]).await?;
        }
        Ok(())
    })
}

Error:
[src/main.rs:11] step = 10703
Error: Os { code: 107, kind: NotConnected, message: "Transport endpoint is not connected" }

The same happens with tokio:
#[tokio::main]
async fn main() -> std::io::Result<()> {
    use tokio::prelude::*;
    for step in 0..500_000 {
        dbg!(step);
        let mut conn =
            tokio::net::UnixStream::connect("/run/user/1000/sway-ipc.1000.1358.sock")
            .await?;
        conn.write(&[]).await?;
    }
    Ok(())
}

Perhaps swaywm is just dropping connections occasionally? Maybe if it gets slammed with too many connections at once, it can't keep up so it has to drop some of them?

I also tried adding a sleep after the write() fails - it seems that the connection is never (re)established, which makes me believe that it is not writable() at fault. The connection is simply broken.

Ok I was able to reproduce. The error eventually pops up even if I do this:

Hmm. Interesting, does not seem related to threads after all..

Perhaps swaywm is just dropping connections occasionally? Maybe if it gets slammed with too many connections at once, it can't keep up so it has to drop some of them?

It seem to me pretty unlikely that sway is dropping connections since the unit tests for the swayipc library are just 26 tests. At the moment some of them fail with and without #19. Furthermore establishing connections to sways IPC socket with async-std version 1.5 works without any errors. I also wrote a blocking version of that test here and everything went fine until something overflowed (40k threads/connections) :smile:

I also tried adding a sleep after the write() fails - it seems that the connection is never (re)established, which makes me believe that it is not writable() at fault. The socket is not in the "connecting" state". Rather, the connection is simply broken.

Since it is kinda hard to debug this issue by relying on sways IPC I rewrote the example I posted earlier to be "self contained". The test can be run by passing a flag e.g. RUST_LOG=async_io_unixstream_error=trace cargo r -- async-io. blocking and async-std behave (the same and) like expected and do not return io::ErrorKind::NotConnected while async-io does. I hope this helps fixing the io::ErrorKind::NotConnected error.

Ah I see. So async-std v1.5.0 creates a UnixStream connection in a blocking way (using spawn_blocking()) and then creates an async UnixStream handle from a connected sync UnixStream handle.
I believe that when the socket is in blocking mode and the OS exhausts its internal resources, the UnixStream::connect() call will just block until it can connect. And in non-blocking mode connecting fails right away. That's my theory at least, and failing immediately is probably the right thing to do here :)
I was able to reproduce this behavior on my linux VM, but not on macOS. On macOS I get the NotConnected error in all cases.

Ah I see. So async-std v1.5.0 creates a UnixStream connection in a blocking way (using spawn_blocking()) and then creates an async UnixStream handle from a connected sync UnixStream handle.

Yep

I believe that when the socket is in blocking mode and the OS exhausts its internal resources, the UnixStream::connect() call will just block until it can connect. And in non-blocking mode connecting fails right away. That's my theory at least, and failing immediately is probably the right thing to do here :)

Currently calling Async::<UnixStream>::connect does not fail immediately. It rather fails with NotConnected on the next write call. I was able to fail fast by adding this line to the connect function. With this patch applied I was also able to fix the example posted earlier by connecting in a loop. Not sure if that's the best way to do this but...it works :smile:

I was able to reproduce this behavior on my linux VM, but not on macOS. On macOS I get the NotConnected error in all cases.

I tested all above mentioned changes on linux.

Hmmm, that's interesting! Could you perhaps do me a favor and try one more thing?
Instead of using stream.get_ref().peer_addr(), try stream.get_ref().take_error() like so:
        // The stream becomes writable when connected.
        stream.writable().await?;

        // Check if there was an error while connecting.
        match stream.get_ref().take_error()? {
            None => Ok(stream),
            Some(err) => Err(err),
        }

That should be the cleanest solution.
In fact, if you look at how Async::<TcpStream>::connect() is implemented, it contains this exact same take_error() check at the end. But, I believed this is not necessary when connecting with a UnixStream because mio doesn't do it and I couldn't find any indication that this is necessary in the man pages. But it may be!

Hmmm, that's interesting! Could you perhaps do me a favor and try one more thing?
Instead of using stream.get_ref().peer_addr(), try stream.get_ref().take_error() like so:
        // The stream becomes writable when connected.
        stream.writable().await?;

        // Check if there was an error while connecting.
        match stream.get_ref().take_error()? {
            None => Ok(stream),
            Some(err) => Err(err),
        }

That should be the cleanest solution.

Yes I thought so as well but while testing yesterday I noticed that at least on linux (might be different on macOS?) take_error does not return an error. I saw that the peer field on the debugging output of UnixStream was missing. That's why I ended up using peer_addr instead of take_error. I also tried to add a timeout like you did to see if the socket eventually reaches a connected state (basically by checking peer_addr in a loop) but for some reason it always errors out with NotConnected :/

That's really odd - could be just a quirk in the Linux implementation of Unix domain sockets. :/ But, I would be fine with adding this workaround using peer_addr() anyways. It seems like we need it.

That's really odd - could be just a quirk in the Linux implementation of Unix domain sockets. :/

Maybe...idk. You mentioned that you have a macOS system? I would be really interested if it behaves the same way :smile:

But, I would be fine with adding this workaround using peer_addr() anyways. It seems like we need it.

Alright, I will close this issue for now since #19 fixed the initial bug anyway.
Thanks for your help!
I opened #21 regarding the the peer_addr workaround ;)

On macOS, connect() blows up right away:
[2020-08-28T13:15:50Z TRACE async_io_unixstream_error::test] send msg #129
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 61, kind: ConnectionRefused, message: "Connection refused" }', src/test/async_io.rs:10:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace


Menu shows Save Template option two times

In every template, the menu shows "Save Template" option two times. It should show "Save Template" option only one time.

Closed via 9b14e69


Two small missing tests for MPO

Call position! with a site argument > 1. Also test the error throw in linkindex.

High speed merging before CI completes??? Danger zone Thursday here at CCQ.


Update aws operator for shared usage of object bucket crds

With the use of the object bucket shared library, many operators (noobaa, rook-ceph, etc...) are sharing a single CRD - this causes breakage with OLM so the plan is to update existing operators that use this (i.e. aws s3 operator) and change the CRD from owned to required
This also means that a dummy object bucket operator will need to be created that will own the CRDs.
As a result, this operator is being updated to only have a single CSV (since this change is most likely not backwards compatible) and a package.yaml file - the existing CRDs were deleted.

/retest all

@screeley44 package name is not unique globally, see error:
Package awss3-operator-registry already exists but it has a different association
existing association == awss3operator
expected association == awss3-operator-registry

@J0zi - I'm not quite sure what to do at this point, I can't get over the package uniqueness and the linting error - can I not define a CRDs as required only and have no owned CRDs?

/retest CVP

/retest all

/test all

/retest

@screeley44 we have new error - spec.customresourcedefinitions.owned is not defined for csv. And another important thing, please delete first 2 lines from CSV if possible, starting with '#!'.

@screeley44 This will probably fail until the openshift lib PR is merged - #658

/test all

/retest CVP

/test CVP

@screeley44, we are getting following error from operator container:
flags: kubeconfig=""; masterURL=""
Neither --kubeconfig nor --master was specified

@screeley44: Important announcement: Flat operator directory structure is obsolete from 23-rd of October 2019, only nested directory structure will be accepted. You can use nested structure before this date also.

going to see if I can get this fixed


Update confidence-intervals.mdx

added a  \cdot100% at the end of relative metric equation

🚀 Deployed on https://64c7fd8512c1d737827d82ad--cozy-fox-0defec.netlify.app


Signature extraction failed

Signature extraction failed: Traceback (most recent call last)
OS : Windows10 Home 64bit
Type : exe
commandline : WindowsPowerShelll
$ PS C:\xampp\htdocs\ytdl> youtube-dl "http://youtube.com/watch?v=4aQDOUbErNg"
[youtube] 4aQDOUbErNg: Downloading webpage
[youtube] 4aQDOUbErNg: Downloading video info webpage
[youtube] 4aQDOUbErNg: Extracting video information
ERROR: Signature extraction failed: Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpam8ojdsi\build\youtube_dl\extractor\youtube.py", line 1081, in _decrypt_signature
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpam8ojdsi\build\youtube_dl\extractor\youtube.py", line 969, in _extract_signature_function
youtube_dl.utils.ExtractorError: Cannot identify player 'https://www.youtube.com/yts/jsbin/player-vfl4Xq3l4/en_US/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Cannot identify player 'https://www.youtube.com/yts/jsbin/player-vfl4Xq3l4/en_US/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
...
<end of log>

I also tried https.
$ PS C:\xampp\htdocs\ytdl> youtube-dl "https://youtube.com/watch?v=4aQDOUbErNg"
[youtube] 4aQDOUbErNg: Downloading webpage
[youtube] 4aQDOUbErNg: Downloading video info webpage
[youtube] 4aQDOUbErNg: Extracting video information
ERROR: Signature extraction failed: Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpam8ojdsi\build\youtube_dl\extractor\youtube.py", line 1081, in _decrypt_signature
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpam8ojdsi\build\youtube_dl\extractor\youtube.py", line 969, in _extract_signature_function
youtube_dl.utils.ExtractorError: Cannot identify player 'https://www.youtube.com/yts/jsbin/player-vfl4Xq3l4/en_US/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Cannot identify player 'https://www.youtube.com/yts/jsbin/player-vfl4Xq3l4/en_US/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
...
<end of log>

I also tried this.
$ PS C:\xampp\htdocs\ytdl> youtube-dl "youtube.com/watch?v=4aQDOUbErNg"
WARNING: The url doesn't specify the protocol, trying with http
[youtube] 4aQDOUbErNg: Downloading webpage
[youtube] 4aQDOUbErNg: Downloading video info webpage
[youtube] 4aQDOUbErNg: Extracting video information
ERROR: Signature extraction failed: Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpam8ojdsi\build\youtube_dl\extractor\youtube.py", line 1081, in _decrypt_signature
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpam8ojdsi\build\youtube_dl\extractor\youtube.py", line 969, in _extract_signature_function
youtube_dl.utils.ExtractorError: Cannot identify player 'https://www.youtube.com/yts/jsbin/player-vfl4Xq3l4/en_US/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Cannot identify player 'https://www.youtube.com/yts/jsbin/player-vfl4Xq3l4/en_US/base.js'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
...
<end of log>

Outdated version.


Compatibility with GHC 9.6, base 4.18

Updated upper bounds in cabal file, updated openFd calls to be compatible with new API.
Let me know if there's anything else I can change or how I can help get this merged!
Thank you for your work on this.

For 9.6.6 at least, the time bound needs to be adjusted as well.


Should chat trim whitespace lines around markdown code blocks?

I'm seeing this answer when trying to reproduce https://github.com/microsoft/vscode-copilot/issues/10577

Should we be trimming those empty lines around the code blocks?

This keeps happening because it wants to insert a newline after the filepath comment, for example:
Here is a simple Python sample code that prints "Hello, World!":

```python
# filepath: untitled:Untitled-1

def main():
    print("Hello, World!")

if __name__ == "__main__":
    main()
```

Is that an issue in Edits, and how should we deal with it? @joyceerhl @aeschli


[BUG] "Open Daily Note on Startup" does not properly process Templater at startup for obsidian version v1.7.4

Hi, I recently updated my Obsidian to v1.7.4 on Ubuntu 20.04.
After the update, I noticed that my Periodic Notes Plugin started to behave weirdly. Every time I open Obsidian, it is supposed to open/create the daily notes, since I have  "open daily note on startup" configured in "Daily Notes" Core Plugin. The daily note includes Templater scripts to generate the Daily note as I want.
However, the templater scripts remain unprocessed when the file is created this way.
First, I thought maybe I accidentally deleted something and there was an syntax error on Templater scripts, but after deleting the faulty daily note and opening/creating it again with command (Ctrl + P) "Daily Notes: Open today's daily Notes" The daily note was created correctly with Templater.
I'm not sure if this is Obsidian side bug, or plugin side bug (Templater or periodic-notes)..
For reference, The templater code that doesn't get processed look like these
<<[[DailyWeeklyNotes/DailyNotes/<%* if (tp.date.now("ddd", 0, tp.file.title, "YYYY-MM-DD-dddd") == "Mon") { %><% tp.date.now("YYYY/MM/YYYY-MM-DD-dddd", -3) %> | Last Friday]]<%* } else { %><% tp.date.now("YYYY/MM/YYYY-MM-DD-dddd", -1) %>| Yesterday]] <%* } %>   | [[DailyWeeklyNotes/DailyNotes/<%* if (tp.date.now("ddd", 0, tp.file.title, "YYYY-MM-DD-dddd") == "Fri") { %><% tp.date.now("YYYY/MM/YYYY-MM-DD-dddd", +3) %> |Next Monday]]<%* } else { %><% tp.date.now("YYYY/MM/YYYY-MM-DD-dddd", +1) %> |Tomorrow]]<%* } %> >>

![[DailyWeeklyNotes/WeeklyNotes/<% tp.date.now("gggg-[W]ww", 0) %>#Todo]]

Solved when I updated to Obsidian v1.7.7


Get rid of global configuration state related object

Nova build and deploy maintain state, and component-utils are passed to the nova def file and use global state. Get rid of that, have each command maintain its own state and inject it into component-utils before passing it to the nova def build command (Where it's actually needed).

Fixed with pull #33


NHS Branding applied on Gov.uk frontend

Before I merge - i just want to run through the build script and check the backwards compatibility


twitch emotes autocomplete

when you wanna write a emote in chat like for example :5Head:
I would write :5h and auto-complete but instead of deleting the :5h it would just add the completed one
like this

it would be really great and time efficient
thanks

I don't understand, why is this a desired behavior? For emote spamming? Discord/Twitch don't do it.

No no no
Its not what you think :(
So think of this
I use discord emotes everyday right, and when i dont want to look at the catalog of emotes i just write for example :thisEm
And the suggestion will show the emote and auto complete :ThisEmote: because for example the capitalization was wrong
And when you click on it it just delete the wrong one and replace it with the emote, sadly when i wanted to use this one dogehouse, the wrong one would stay and u had to delete it manually everytime
So when i wanted to say some joke on the context it take some time to go back and delete it
Pls dont be mad at me :(


GH-41571: [Java] Revert GH-41307 (#41309)

Rationale for this change
The commit in question caused a lot of CI issues
Are these changes tested?
N/A
Are there any user-facing changes?
N/A

GitHub Issue: #41571

@github-actions crossbow submit test--spark- java

@danepitkin @vibhatha if the java-jars and spark jobs are this finicky, they really should be part of the regular CI and not Crossbow

It also appears the C++ build broke again

@lidavidm +1 to including java-jars with regular CIs. It has been failing for many cases very recently.

@felipecrv have you come across this issue: https://github.com/ursacomputing/crossbow/actions/runs/9054922130/job/24875318571#step:8:2503
FAILED: src/gandiva/precompiled/hash.bc /build/cpp/src/gandiva/precompiled/hash.bc
cd /build/cpp/src/gandiva/precompiled && /opt/vcpkg/installed/arm64-linux-static-release/tools/llvm/clang-17 -std=c++17 -DGANDIVA_IR -DNDEBUG -DARROW_STATIC -DGANDIVA_STATIC -fno-use-cxa-atexit -emit-llvm -O3 -c /arrow/cpp/src/gandiva/precompiled/hash.cc -o /build/cpp/src/gandiva/precompiled/hash.bc -isystem -isystem /x86_64-redhat-linux -isystem -lpthread -I/build/cpp/src -I/arrow/cpp/src
clang-17: error: no such file or directory: '/x86_64-redhat-linux'

CC @kiszk @jbonofre

@vibhatha I never seen it because I never build Gandiva.

No review? I'm going to close this PR soon if it looks like we don't want it @vibhatha @danepitkin

@lidavidm I will review this today. Shall we rebase since there were some changes in Java and CIs.

@github-actions crossbow submit -g java

@lidavidm the java-jars CI failures are from a previously resolved issued.

@github-actions crossbow submit -g java

Looks like Spark is fixed but Dataset is now broken.

@github-actions crossbow submit -g java

Looks like Spark is fixed but Dataset is now broken.

Yes, a test is failing. Let me check if it is failing in other PRs.

@github-actions crossbow submit java-jars

@github-actions crossbow submit -g java

@lidavidm seems like java-jars is passing 🎉


time:utcNow API returns invalid results

Description:
When trying to retrieve the current UTC time using time:utcNow API, returned milliseconds from epoch time is invalid.
Tried following code sample:
import ballerina/time;
import ballerina/io;

public function main() {
    [int, decimal] currentTime = time:utcNow();
    io:println("Received time values", currentTime);
}

Results:
Received time values[1661813273,0.120306000]

As per the retrieved results current time is<PHONE_NUMBER> milliseconds from epoch time. When convert the milliseconds from epoch value to the date and time format it seems like the time is Tue Jan 20 1970 05:36:53 UTC.
OS, DB, other environment details and versions:

Ballerina 2201.1.0+

As you can see in the API documention first member of the tuple is number of seconds from epoch time, not milliseconds.  if the value is used correctly, you'll get the time Tuesday, 30 August 2022 04:17:53 [GMT+05:30].


Change webpack config to include social media image

In PR #76 there is a conflict on how to pass the social media image to dist

Should be silver with https://www.npmjs.com/package/copy-webpack-plugin


Copilot can't be started: Permission denied (os error 13)

Check for existing issues

[X] Completed

Describe the bug / provide steps to reproduce it
Unable to sign in to copilot seeing the notification :

Copilot can't be started: Permission denied (os error 13)

I have attempted to run Zed with sudo zed .
Environment
Zed: v0.82.7 (stable)
OS: macOS 13.2.1
Memory: 16 GiB
Architecture: x86_64
If applicable, add mockups / screenshots to help explain present your vision of the feature
No response
If applicable, attach your ~/Library/Logs/Zed/Zed.log file to this issue.
If you only need the most recent lines, you can run the zed: open log command palette action to see the last 1000.
2023-04-20T23:14:54 [ERROR] no cached binary
2023-04-20T23:14:54 [ERROR] failed to run npm info
2023-04-20T23:14:54 [ERROR] Permission denied (os error 13)
2023-04-20T23:16:29 [ERROR] copilot hasn't started yet
2023-04-20T23:17:39 [INFO] open paths ["/Users/X/X"]
2023-04-20T23:17:39 [ERROR] Permission denied (os error 13)
2023-04-20T23:17:40 [ERROR] failed to run npm info
2023-04-20T23:17:40 [ERROR] No path stored for this editor
2023-04-20T23:17:54 [ERROR] copilot hasn't started yet

Wiping ~/Library/Application Support/Zed fixed the issue for me


Extending Nuxt routes and URI encoding

Version
v2.10.2
Reproduction link
https://nuxtjs.org/
Steps to reproduce
In nuxt.config.js I extend the routes this way:
extendRoutes(routes, resolve) {
  routes.push({
    path: '/*/' + 'foo/' + '(:[0-9].*)?/',
    component: resolve(__dirname, 'path/to/sonme/component')
  })
})

What is expected ?
I expect when my application point to a URL like this one for example:
http://<IP_ADDRESS>/shirts/shirt:2/shirtedition
my application should not crash
What is actually happening?
The application crashes and I receive this error message:

Expected "1" to match ":[0-9].*", but received "%3A2"

Additional comments?
I tried to encode the : with:

path: '/*/' + 'foo/' + encodeURIComponent('(:[0-9].*)?/'),
path: '/*/' + 'foo/' + '('+encodeURIComponent(':')+'[0-9].*)?/',
path: encodeURI('/*/' + 'foo/' + '(:[0-9].*)?/'),

But none of them worked even if the error disappeared but I did not land to my component in question (component: resolve(__dirname, 'path/to/sonme/component'))
I did not reproduce the bug, hopefully the information is enough

This bug report is available on Nuxt community (#c10057)

Same thing with @ character.


Updated router link stub to match actual router-link interface

Added properties related to exact-path that's present in actual router link https://router.vuejs.org/api/#exact-path

What kind of change does this PR introduce? (check at least one)

[X] Bugfix
[ ] Feature
[ ] Code style update
[ ] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change? (check one)

[ ] Yes
[X] No

If yes, please describe the impact and migration path for existing applications:
The PR fulfills these requirements:

[X] It's submitted to the dev branch.
[X] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)
[X] All tests are passing: https://github.com/vuejs/vue-test-utils/blob/dev/.github/CONTRIBUTING.md#development-setup
[X] New/updated tests are included

If adding a new feature, the PR's description includes:

[ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Other information:

Nice, thanks


Added active delegator count, as well as delegations count

Added a few extra counters for active and total delegations (DelgatedStake), as well as active delegators
currently indexing in a dev subgraph: https://thegraph.com/explorer/subgraph/juanmardefago/dev-subgraph2?version=pending
Gonna be testing the resulting numbers afterwards, but should be accurate.
A delegator/delegation is considered inactive as soon as shares go to zero, and active when shares are higher than zero.

@davekaj changes pushed, should be cleaner and still working as expected!


Fix EnumVarP func to show default value associated with EnumVariable …

…(#104)

@Mzack9999 , what do you thing about changing default value type and AllowedTypes?
Current Implementation
flagSet.EnumVarP(&options.ScanStrategy, "scan-strategy", "ss", goflags.EnumVariable(0), "strategy to use while scanning(auto/host-spray/template-spray)", goflags.AllowdTypes{
			"auto":           goflags.EnumVariable(0),
			"host-spray":     goflags.EnumVariable(1),
			"template-spray": goflags.EnumVariable(2),
		})

New Implementation
flagSet.EnumVarP(&options.ScanStrategy, "scan-strategy", "ss", "auto", "strategy to use while scanning(auto/host-spray/template-spray)", []string{"auto","host-spray","template-spray"}

we will use Allowd Types internally but there doesn't seem a need to expose it and make it complex .
and for validation we can simply do
if _,ok:= AllowedTypes[defaultValue]; !ok{
    panic(fmt.Errof("%v does not belong to %v",defaultValue,AllowedTypes))
}

@tarunKoyalwar That's what I was discussing with @RamanaReddy0M , I think anyway that a iota allows to plug in more generic implementations. Internally it's needed some refactoring as also other types like boolean/ints are considered like strings, losing their original type


Do you have benchmark codes in your baseline except HGG

Hi
Do you have the benchmarks codes in your repository ?
In the paper, you compare your results with 7 different benchmarks.

Do you have all of them in your repository If someone wants to reproduce the result.
Thank you

The HGG option in our code does not mean the HGG baseline. (We just utilize it as a goal sampling method.)
Please refer to the following repositories to run the baselines.
• HGG (Ren et al., 2019): We follow the default setting in the original implementation from https://github.com/Stilwell-Git/Hindsight-Goal-Generation.
• CURROT (Klink et al., 2022): We follow the default setting in the original implementation from https://github.com/psclklnk/currot.
• GoalGAN (Florensa et al., 2018), PLR (Jiang et al., 2021), VDS (Zhang et al., 2020), ALP-GMM (Portelas et al., 2020): We follow the default setting in implementation from https://github.com/psclklnk/currot.
• SkewFit (Pong et al., 2019): We follow the state-based version of SkewFit. The original implementation was modified and used since only the image-based version is provided in it. (https://github.com/rail-berkeley/rlkit)

Thanks for the answer.
May I ask how did you draw this figures ?
Do you have some codes for that (or any temporary codes you used )

To draw that images, we first saved the curriculum goals as *.npy, and utilized plt.scatter function.
import numpy as np
import os
from os.path import join as ospj
import matplotlib.pyplot as plt
import pickle
import pandas as pd
EXPRIMENT_PATH = "???????"
DRAW_CYCLE = 8000

plt.nipy_spectral()
plt.figure()

curriculum = []
x = []
y = []

for i in range(0, DRAW_CYCLE, 25):
    data = pd.read_pickle(ospj(EXPRIMENT_PATH, '{}.pkl'.format(i)))
    for j in range(len(data)):
        x.append(data[j, 0])
        y.append(data[j, 1])
        curriculum.append(i)

plt.scatter(x =x, y = y, c = curriculum, s=5)
plt.colorbar()
plt.savefig("curriculum_goal.png")
plt.close()

I installed the meta world package for sawyer_push and sawyer_pickandplace in the hgg code but but somehow  the agents didn't learn.
Then I tried to implement the hgg algorithm in your repository. I just basically deleted the many lines in your script hgg.py and implement the hgg algorithm. In this case, hgg somehow couldn't generate the intermediate goals to guide the robotic agents towards the desired goal.
Do you have the hgg code which you implemented sawyer environments ?  I am going to also cite your paper in my paper If I run the hgg with your algorithm.
Thanks a lot.


Resolve dependencies in setup-ide step

Fail only when dependencies passed via CLI cannot be resolved
Fail when someone passes '--dependency <invalid_dependency>
Do not fail when there is an invalid '$ivy.' in code

(We could switch to Java 11 if Java 8 is a problem… We already use a Java 11 GraalVM.)


[Bug Report] Dockerfile make Failed

Describe the bug
It's like someting wrong with code make the build failed
To Reproduce
Get source code and build with dockerfile
Environment (please complete the following information):

Mango Version v0.7.1

Docker (if you are running Mango in a Docker container)

The orignal file

Additional context

I couldn't reproduce this, and this GitHub Action built the docker image successfully, so I guess it's due to some misconfigurations on your side.

But I don't change any config and code with it ( ´_ゝ｀)

I got what I do wrong...it's the CR/LF difference on windows and unix...

Glad that you figured it out! Did you clone the repo in Windows and attempt to build it in Unix? Would be great if you could document what you did in more details so it might help future users.

Sure, the main problem is I clone the repo on Windows and upload it to my Nas.

Hey, sorry to open up this again, but I get the same message.
I cloned the repo in Windows and am trying to build it with docker-compose on the same machine.
Is there a way to build it somehow?
...
#11 94.09 Using exception_page (0.1.4)
#11 94.09 Using kemal (0.27.0)
#11 94.09 Using koa (0.7.0)
#11 94.09 Using tallboy (0.9.3)
#11 94.09 Using mg (0.3.0 at a19417a)
#11 94.09 Using myhtml (1.5.1)
#11 94.09 Using mangadex (0.8.0 at 24e6fb5)
#11 94.09 crystal build src/mango.cr --release --progress --static --error-trace
#11 94.23 In src/mango.cr:1:1
#11 94.23
#11 94.23  1 | require "./config"
#11 94.23      ^
#11 94.23 Error: while requiring "./config"
#11 94.23
#11 94.23
#11 94.23 In src/config.cr:61:58
#11 94.23
#11 94.23  61 | puts "The config file #{cfg_path} does not exist. " \
#11 94.23                                                            ^
#11 94.23 Error: unknown token: '\r'
make: *** [Makefile:18: static] Error 1
#11 ERROR: executor failed running [/bin/sh -c make static || make static]: exit code: 2
------
 > [builder 5/5] RUN make static || make static:
------
executor failed running [/bin/sh -c make static || make static]: exit code: 2
Service 'mango' failed to build : Build failed

The workaround I found is not cloning, instead I downloaded the Zip and had to convert the docker-compose.yml and .env since they are Windows-Files


Removed preview and download button on source change

Fixes #1036
Screenshots for the change:

@agbilotia1998 Please check why travis is failing.

Please rebuild travis , I think the issue was with travis itself as it stopped during npm install only.


bugfix/RLP-828/channel-not-deleted

changes

raiden/blockchain_events_handler.py: check if participant is current node, or a handled LC,  instsead of checking only if it's a full node
Simplify handle_batch_unlock logic, as it was duplicating channel deletion
handle_batch_unlock now uses subdispatch_to_channels_by_participant_address, using the nodes address if it's payee or payer (it didn't work with payers before) or a lc address if corresponds
Add channel_identifier property to ContractReceiveChannelBatchUnlock, as it's needed by subdispatch_to_channels_by_participant_address

Lets discuss the conversation above, also, did you:

test it manually on each possible scenario
ran the unit tests

?


add alt to img

resolve https://github.com/open-cluster-management-io/open-cluster-management-io.github.io/issues/347

/assign @chenz4027

/approve
@chenz4027 please take a quick look whenever you have some cycles. Thanks!

/lgtm


[Event Request] Codeunit 423 "Change Log Management" - local function -> global

Please modify the following Function IsAlwaysLoggedTable from local function to global in Codeunit 423 "Change Log Management"
    //local function -> global
    procedure IsAlwaysLoggedTable(TableID: Integer) AlwaysLogTable: Boolean

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 12340.


README.md not updated

Readme has broken links and suggest using non-functional Node versions.
Please update

The README has been updated and all links are functional. Thanks for reporting this!


Is the first example in README.md correct?

Hey, the first example says:

var gulp = require('gulp');
var bower = require('gulp-bower');

gulp.task('bower', function() {
return bower()
.pipe(gulp.dest('lib/'))
});

> This defaults to the directory configured in `./.bowerrc` or to `./bower_components` when no `.bowerrc` could be found.

When you run it with existing `.bowerrc` with for example:

{
"directory": "build/bower_components"
}
it ignores the `directory` setting and outputs everything into `lib` directory which is not what I'd expect. Maybe the first example should be just a simple `bower()` call:

```javascript
gulp.task('bower', function() {
  return bower();
});

Right now, it seems to me like the first two examples do exactly the same. I actually don't understand what's the difference either.

I've also been wondering about this.
It seems you are correct, as your edited example show the correct behaviour.

Fixed in  #48


[Bug]: DWCA Importer header change from buffered_determinations to buffered_determination or vice versa

Steps to reproduce the bug
1. When I go to import using DWC Importer
2. And I use the TW class of object for a header "e.g. TW:CollectionObject"
3. I have to say "TW:CollectionObject:buffered_determinations" as a header instead of "TW:CollectionObject:buffered_determination" which is what it looks like to the user everwhere.

Screenshot
No response
Expected behavior
This is confusing and should be unified to either "Buffered Determination" or "Buffered Determinations"
Additional Screenshots
No response
Environment
Production
Sandbox Used
No response
Version
0.33.1
Browser Used
Chrome

In comprehensive digitization and browse co it is buffered determination

In comprehensive digitization and browse co it is buffered determination

Aha, @tmcelrath the difference between the "label" (call any given field anything want in the User Interface) and the term or field name / element / property / variable in the database.

Sorry, I forgot to close it. This was fixed https://github.com/SpeciesFileGroup/taxonworks/commit/0398c5de5ca0fb80bc601c1f1ea6b0fa31cccaba


iOS8: Camera Freeze on Cancel

Hi,
There is an issue on iOS8 that will stall the camera when the user cancels out of the crop-area.
Repro Steps:

Launch the GKImagePicker with a camera source and any crop size (resizable or not).
Take the photo.
Press 'Use Photo'.
In the crop image view, press 'Cancel'.
The crop image view should be dismissed, and goes back to the camera view.
On iOS8: The actual camera view is blurred out and doesn't reflect what the camera is seeing. You just see a static, blurred image. You can still however take an image, and the image is proper.
On iOS7: The actual camera view returns, enabling you to take another photo properly.

I suspect it may have to do with the way iOS8 handles action sheets (?), and the behaviour of dismissing the CropImageViewController. I'm currently investigating it.
Anyone bumped into this, or fixed it?

I think I am having the same issue ...
when I press cancel it goes back to the camera view but is locked up. I saw from your comment that I need to dismiss and then display again but where do I do that ? Is there a delegate function I can implement to determine it was canceled from the camera then pause and re-launch ? or some other place I need to modify the code ? This is for IOS 8


Libgl1 is not installed in order to run clean.py

When running clean.py for the integration tests the following error is produced:
Traceback (most recent call last):   File "src/tests/clean.py", line 10, in <module>     import cv2   File "/home/gitpod/.pyenv/versions/3.8.13/lib/python3.8/site-packages/cv2/__init__.py", line 8, in <module>     from .cv2 import * ImportError: libGL.so.1: cannot open shared object file: No such file or directory
This can be resolved by installing the libgl1 package manually:
sudo apt-get update && sudo apt-get install libgl1
Or better still, by including this in the dockerfile:
RUN sudo apt-get update && sudo apt-get install -y libgl1

Adding this into the dockerfile as part of https://github.com/mhw32/data-centric-deep-learning/pull/18


starttime0 issue

Hello,
This issue is similar to #54 and #75, wherein I get the 'starttime0 not found' error when loading ActiGraph csv files. I believe this is another date format problem as my date is in the m/dd/yy format, but when I change it to m/dd/yyyy it works and previous files using m/dd/yyyy work as well. I have updated R and all my packages, etc.
Is there a way to tell GGIR to accept start dates in m/dd/yy format or a way for me to manually define the start date instead of having GGIR pull it from the header?
Thank you for your time!

GGIR facilitates 16 timestamp formats (see function g.getstarttime lines 112-130).
Would it be possible for you to change your system- or ActiLife timestamp format settings to one of those 16 timestamp formats before you generate the csv files?
If you want me to update GGIR then some financial support would be appreciated. Another option of course is that you fix it yourself and make a pull request.
Thanks, Vincent


Change solve_CGME to solve_cgme in CGME tutorial

API change in HOQST.

https://github.com/USCqserver/QuantumAnnealingTools.jl/issues/40


domoticz: init at 2020.2

Motivation for this change
Add Domoticz home automation server.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

I have ironed out a few issues brought up by @ofborg, but pending review I think this is ready to go!

Outputs are now in $out/bin and $out/share/domoticz. I found an undocumented command line parameter allowing the binary to find its static files.

@ofborg eval

Realised hashes keep changing, probably due to use of deepClone, I'll rework this.

@ofborg eval

@nuxeh I'm going to convert this to a draft, since there is no indication you are done. Feel free to move it out of draft when it is ready.

@ryantm it's ready, thoroughly tested, and has been waiting almost 6 months for review

Result of nixpkgs-review pr 86404 1

1 package blacklisted:
- tests.nixos-functions.nixos-test

1 package built:
- domoticz

Used nixos-shell to test that the service starts up.

Have tested with the new dynamic user changes, and runs as expected.

Thanks for reviewing @ryantm, much appreciated!


[Guidance needed] Running in Gazebo Simulation

Hi @TixiaoShan
I have been trying your LIO-SAM on gazebo with the velodyne gazebo. But i got the following warning.

And the outcome of rviz become like this, exactly as per the warning descripted.

params.yaml

Is there a way to use your LIO-SAM in gazebo, is there a way not to work with lidar that doesn't output timestamp for each point?
Best,
Samuel

Considering you are collecting the data using simulation, I suppose the pointcloud is undistorted. Please verify the same.
If yes, then consider it to be just a warning.
Can you share some sample rosbags with IMU and LIDAR data in your simulation world?

Hi @Pallav1299
Actually i am trying to run mapping directly with LIO-SAM in the gazebo. But i found that the pointcloud comes from the gazebo has the time for each point missing. I manage to simulate the 3d lidar from 16beam to 128beams, but unfortunately, no "time" field for the pointcloud data. Let me try to record some rosbags for you. Will send the download link here later.
Hi @TixiaoShan
Is there a way to use LIO-SAM without providing the "time" field in the pointcloud data? Besides, i found a software to be used to callibrate the imu of Ouster lidar (Real hardware).
Step 1: Using imu_calib to generate the calibration file of IMU.
https://github.com/dpkoch/imu_calib
Step 2: Using imu_complimentary_filter / imu_filter_magdwick to generate orientation (RPY) info from 6dof IMU.
https://github.com/ccny-ros-pkg/imu_tools
Although i have applied above items, but i yet to get the IMU extrinsics setting correctly, which eventually causing Jumpping up and down.
But for the gazebo, still hasnt settle the large velocity warning. Is there a workaround on this?
Best,
Samuel

@HappySamuel time field in the pointcloud data is used for deskewing the pointcloud. You have to check if the pointcloud data is undistorted or not.
Kitti dataset also doesn't have the time field in the pointcloud data. But it is working since the pointcloud data is undistorted.
I think you should verify the same.

Hi, I have the same problem here. time field is being published but I get the same warning and the output in rviz is more or less the same than @HappySamuel image.

Sorry, my problem was due to the extrinsic params of the IMU. It is well explained in the README. Now it runs perfect in gazebo.

I'm sorry, my problem was due to the extrinsic IMU parameters. They are well explained in the README so now it goes perfect in gazebo.

Hi @jpgvl
So you solve your issue via setting the extrinsic IMU parameters correctly inside the gazebo?
Best,
Samuel

Hi @HappySamuel
No, my problem was about the extrinsic parameters in params.yaml. I changed them from the default to:
extrinsicTrans: [-2.155, 0.0, -0.83]
 extrinsicRot: [1, 0, 0,
                0, 1, 0,
                0, 0, 1]
 extrinsicRPY: [1, 0, 0,
                0, 1, 0,
                0, 0, 1]

Where extrinsicTrans is the transformation between lidar and IMU - I got it by using rosrun tf tf_echo robot_laser_link robot_imu_link . The extrinsicRot and extrinsicRPY are explained in the README:
The reason why there are two extrinsics is that my IMU (Microstrain 3DM-GX5-25) acceleration and attitude have different cooridinates. Depend on your IMU manufacturer, the two extrinsics for your IMU may or may not be the same.
Maybe you will need the same as me, but check it.

hi @jpgvl how did you get your extrinsicTrans matrice value and other Rot and RPY ? I have same problem.

Maybe you can refer to this
Duplicate of #62

Maybe you can refer to this
Duplicate of #62

Hi! Has anyone have found any other reason for this behavior? Besides the extrinsic parameters in params.yaml.
I am using a differential drive robot model (https://github.com/sanuann/DifferentialDriveRobot) where I attached a Velodyne VLP-16 (https://github.com/lmark1/velodyne_simulator) and a IMU (libgazebo_ros_imu.so).

I attached the Velodyne into the robot chassis using the file myrobot.xacro from https://github.com/sanuann/DifferentialDriveRobot
<xacro:include filename="$(find velodyne_description)/urdf/VLP-16.urdf.xacro"/>
  <VLP-16 parent="chassis" name="velodyne" topic="/velodyne_points" hz="10" samples="440">
    <origin xyz="0 0 0.0" rpy="0 0 0" />
  </VLP-16>

I attached the IMU into the velodyne body frame and defined an update rate of 500Hz in the file myrobot.xacro from https://github.com/sanuann/DifferentialDriveRobot
<gazebo>
    <plugin name="imu_plugin" filename="libgazebo_ros_imu.so">
      <alwaysOn>true</alwaysOn>
      <bodyName>velodyne</bodyName>
      <topicName>imu</topicName>
      <serviceName>imu_service</serviceName>
      <gaussianNoise>0.0</gaussianNoise>
      <updateRate>500.0</updateRate>
    </plugin>
  </gazebo>

Thus, all sensors are in the same body frame, velodyne. That is why I used this Extrinsics
# Extrinsics (lidar -> IMU)
  extrinsicTrans:  [0.000, 0.000, 0.0]
  extrinsicRot: [1, 0, 0,
                  0, 1, 0,
                  0, 0, 1]
  extrinsicRPY: [1,  0, 0,
                 0, 1, 0,
                 0, 0, 1]

but can't get a good reconstruction. I also tested moving the VLP-16 0.4m above the chassis and modified the Extrinsics to [0.000, 0.000, -0.438] (gotten from rosrun tf tf_echo velodyne chassis) but I have the same behavior.

Any suggestion will be appreciated. Thanks!

@esaumar This seems to be a problem related to Z-axis acceleration from IMU. Could you share a snippet of IMU data that you are getting?

hi @jpgvl how did you get your extrinsicTrans matrice value and other Rot and RPY ? I have same problem.

Hi @celikemir sorry about the delay, I didn't notice about yor comment until now. Maybe you already know now but I'm explaining it anyway. The rotation matrix depends on the rotation of the XYZ axis of the IMU, in my case they are aligned with the XYZ of the robot, so there's no rotation and the rotation matrix is the identity. Apart from that my IMU has the same rotation for acceleration and attitude (I suppose that if it was different the manufacturer would warn you somehow, I don't think it is very common to have two different rotations). If you IMU is in gazebo you can check the driver, but if you have no idea you can move the robot and see the accelerations to know which one is in the Z axis (always more or less 9.8m/s2) and which one is bigger when moving forward (see if it is negative or possitive).
In the case of the README of this project the IMU has a picture in the corner were the X axis points backwards and the Y one points to the left (everything relative to the lidar).

You can calculate this rotation in roll pitch yaw using trigonometry and calculate the rotation matrix (I imagine that you know how but I add a screenshot from wikipedia just in case).

Hi @Pallav1299 , thanks for your answer.

@esaumar This seems to be a problem related to Z-axis acceleration from IMU. Could you share a snippet of IMU data that you are getting?

Below you can find the IMU data I'm getting. I'm using libgazebo_ros_imu for the IMU, another user of LIO-SAM told me that I can try with libgazebo_ros_imu_sensor.  You were right, it seemed that it was an issue with the IMU. The gravity should be included in the inertial measurements. For that, I changed the plugin into Gazebo, from libgazebo_ros_imu to libgazebo_ros_imu_sensor as suggested by some LIO-SAM users.

By using libgazebo_ros_imu_sensor now I can see the gravity on the Z-axis acceleration.
Bad IMU
orientation:
  x: 2.27188461314e-06
  y: -4.9678469459e-07
  z: 0.99810920732
  w: -0.0614655208814
orientation_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
angular_velocity:
  x: 0.000769452875622
  y: 0.00324902769181
  z: 4.03222099903e-05
angular_velocity_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
linear_acceleration:
  x: 0.227426137416
  y: 0.0242159376913
  z: 4.67897961339
linear_acceleration_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

Good IMU
orientation:
  x: 1.55563938577e-14
  y: -6.53325214776e-15
  z: -2.5826076197e-15
  w: 1.0
orientation_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
angular_velocity:
  x: -6.18309291924e-13
  y: 2.5967517029e-13
  z: 6.44077756609e-21
angular_velocity_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
linear_acceleration:
  x: 1.2805174418e-13
  y: 3.04905318523e-13
  z: 9.8
linear_acceleration_covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

Thanks for your support!

Hello. I am using libgazebo_ros_imu_sensor but the linear acceleration still does not include gravity acceleration, how to set? Thank you

Sir, I am having trouble with using imu_calib package. Do you mind if I ask for help ?
My contact email is<EMAIL_ADDRESS>Sincerely.

Hi @Pallav1299
Actually i am trying to run mapping directly with LIO-SAM in the gazebo. But i found that the pointcloud comes from the gazebo has the time for each point missing. I manage to simulate the 3d lidar from 16beam to 128beams, but unfortunately, no "time" field for the pointcloud data. Let me try to record some rosbags for you. Will send the download link here later.
Hi @TixiaoShan Is there a way to use LIO-SAM without providing the "time" field in the pointcloud data? Besides, i found a software to be used to callibrate the imu of Ouster lidar (Real hardware). Step 1: Using imu_calib to generate the calibration file of IMU. https://github.com/dpkoch/imu_calib Step 2: Using imu_complimentary_filter / imu_filter_magdwick to generate orientation (RPY) info from 6dof IMU. https://github.com/ccny-ros-pkg/imu_tools Although i have applied above items, but i yet to get the IMU extrinsics setting correctly, which eventually causing Jumpping up and down.
But for the gazebo, still hasnt settle the large velocity warning. Is there a workaround on this?
Best, Samuel

Sir, I am having with using imu_calib package. Do you mind if I ask for your help ? My contact e-mail is<EMAIL_ADDRESS>.

@esaumar Hello, could you possibly share your gazebo project, as something that's working with LIO-SAM? It would be very helpful for others playing around to make it working too. Thank you

@esaumar Hello, could you possibly share your gazebo project, as something that's working with LIO-SAM? It would be very helpful for others playing around to make it working too. Thank you
btw. I've spent quite a lot of time to get it working with Isaac Sim, but with no luck. I'm getting the imu preintegration errors, although using gtsam 4.0.2. I think that Isaac Sim has problems with maintaining the right publishing time. It sends couple of duplicate messages from the lidar, at the same nanosecond with different point clouds. I've lost my patience and now I want to go with Gazebo which seems to be working at least for some people out there.

Hi @mikolodz , sorry for my late response, I missed your message. Unfortunately I had to remove my gazebo setup a couple years ago. I'm no longer testing LIO-SAM but I remember I used hector_gazebo plugins and lidar_simulator repo. I hope you can set it up successfully.

Hello. I am using libgazebo_ros_imu_sensor but the linear acceleration still does not include gravity acceleration, how to set? Thank you

Hi @lzy-doom , not sure how but you can try installing another imu plugin.


cors

Hello, thanks for this great framework !!
In my server application I create a login mutation and configure spring boot security with JWT, and I am able to successfully login using postman and insomia using my login mutation, but when I try to login from my client application (vue.js app) I am getting the following error:
Access to fetch at 'http://localhost:9010/graphql' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

Can you please show me how to configure cors in the server?
Thanks.
Luis

I added .cors().and().... to my security config class and now is working.
credit to https://github.com/Blacktoviche/springboot-graphql-sqqr-jwt-demo/issues/2#issuecomment-461382920


Add a contributors section to the Home Page of website

Link  -> https://github.com/fykaa/techOS-Bell/graphs/contributors to the homepage such that it presents the Contributors directly in the footer section of the Home Page

Rules -

Comment below to Get Assigned
The PR Should be sent within 48 hours of Assignment, else will get reassigned to the next person.
The PR should be valid and have no Merge Conflicts
DON'T spoil the Code indentations with any formatting tools such as prettier or VSC format
Must Follow all the steps from Instructions

Assign me this issue, will work on it


Introduction of file system attribute

Area(s)
area:file
Is your change request related to a problem? Please describe.
I want to describe the underlying provider storing my files
Describe the solution you'd like
I would like the introduction of an additional attribute "system" which describes the system storing the files just like we have for databases & messaging. The strongly typed values would be:

LogicalDisk
AwsS3
AzureBlob
...

Describe alternatives you've considered
No response
Additional context
No response

See https://github.com/open-telemetry/semantic-conventions/pull/914. CC @trisch-me

@joaopgrassi yeap I had seen that PR but as far as I can tell there is no strongly typed field which could be used for the purpose mentioned here.

Yes we don't have there such a field. You can propose it in separate PR


Missing tag processing for GPO deployment option

Missing tag processing for GPO deployment option
When you start onboarding in the Azure portal. You can specify tags for DataCenter locations, etc.
If you later select the option for GPO Deplyoments, the tags are not added to the command and thus not passed to the deployment.
I also can't find any parts for tag processing in the DeployGPO.ps1 script.
It would be good if the users are already informed in the Azure Portal or the documentation that the tags are not applied to the ARC objects during GPO deployment.

Bump. This was pretty frustrating to find out after I got everything set up. Now servers are all synced with no tags, so we're going to have to go through and manually tag them all. Thanks Microsoft! /s


Problem when using multiple DB-Connections

Using ransack & squeel I get failures, when using a second db-connection and specifiying the table-name:
The model:
class Train < ActiveRecord::Base
  establish_connection "#{Rails.env}_db2"
  self.table_name  = 'viewTrain'
end

This works:
Train.where(:trainDateIn.gteq => '2012-01-01')

This fails:
Train.search({"trainDateIn_gteq" => "2012-01-01"})

My workaround (trains_controller):
def index
  search = params[:q]
  where  = {}
  unless search.blank?
    %w(
      trainDateIn_gteq trainDateIn_lteq
    ).each do |search_param|
      if search[search_param]
        key = search_param.sub(/^(.*)_([^_]+)$/,"\\1").to_sym
        mod = search_param.sub(/^(.*)_([^_]+)$/,"\\2").to_sym
        where[key.send(mod)] = search[search_param]
      end
    end
  end
end

You mention it fails. Can you tell me how? Stack trace?

I'm also encountering this issue with multiple connections.
For example for an Order model that does not use the default AR connection, but a separate orders_backend connection I hit RuntimeError: No table named orders exists.
The relevant bit of the stack trace:
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/adapters/active_record/context.rb:23:in `type_for'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/nodes/attribute.rb:29:in `type'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/nodes/condition.rb:200:in `default_type'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/nodes/condition.rb:23:in `extract'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/nodes/grouping.rb:161:in `write_attribute'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/nodes/grouping.rb:118:in `method_missing'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/search.rb:34:in `block in build'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/search.rb:29:in `each'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/search.rb:29:in `build'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/search.rb:21:in `initialize'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/adapters/active_record/base.rb:15:in `new'
[GEM_ROOT]/gems/ransack-0.6.0/lib/ransack/adapters/active_record/base.rb:15:in `ransack'
app/controllers/orders_controller.rb:11:in `index'

As a quick-and-dirty solution, I've had success (so far) with the following patch:

module Ransack
  module Adapters
    module ActiveRecord
      class Context < ::Ransack::Context
        # Workaround an issue with Ransack and multiple ActiveRecord connections
        # See: https://github.com/ernie/ransack/issues/64
        def type_for(attr)
          return nil unless attr && attr.valid?
          name    = attr.arel_attribute.name.to_s
          table   = attr.arel_attribute.relation.table_name

          klass       = attr.klass
          connection  = klass.connection

          unless connection.table_exists?(table)
            raise "No table named #{table} exists"
          end

          connection.schema_cache.columns_hash[table][name].type
        end
      end
    end
  end
end

Probably pushing the limits of what Ransack should be doing.

A workaround for this issue is to create a View in your main database which simply selects from the table in the other database. The view should have the same name as the table.
Since ransack only reads from the database, this should work in all circumstances, not requiring an updateable view.


Feature: find breaking changes in schema

Feature Request Type

[x] Core functionality
[ ] Alteration (enhancement/optimization) of existing feature(s)
[ ] New behavior

Description

It would be nice to have builtin strawberry utilities that perform schema check functionality like graphql-core's find_breaking_changes and find_dangerous_changes.
Note: this functionality is currently achievable by using the Strawberry export tool into GraphQL SDL and then running the graph-ql core function.

oh that's a cool suggestion! how would this work? would you pass the old SDL and figure the breaking changes from there?

Yes, that sounds great for a CLI command.
The same command could also have two SDLs as input and call the graphql-core function from there.

So something like this:
strawberry find-breaking-changes old-schema.graphql
strawberry find-breaking-changes old-schema.graphql current-schema.graphql

we could do the same for find dangerous changes 🤔 or combine the two commands into one, I need to think about the naming

maybe strawberry audit could be a good one, I was thinking about strawberry lint but that wouldn't make a lot of sense when passing an old schema
happy to take any suggestion :)

There's this tool that does this kind of stuff... kamilkisiela/graphql-inspector: 🕵♀ Validate schema, get schema change notifications, validate operations, find breaking changes, look for similar types, schema coverage
We can maybe take inspiration from them and call it strawberry inspect.

Yet another option: Apollo also has a schema check feature: https://www.apollographql.com/docs/rover/commands/graphs/#graph-check

Oh and I was gonna call it something like schema_check in my project 🙃

Oh and I was gonna call it something like schema_check in my project 🙃

ah!
to add more ideas, we could allow using pyproject.toml to specify the options, but that could come later, for now we could allow this:
strawberry check path.to.schema
strawberry check --previous-schema something.graphql path.to.schema # breaking maybe enabled by default
strawberry check --breaking --dangerous --previous-schema something.graphql path.to.schema

what do you think?

Looking at the command strawberry export-schema, I feel like this needs to be called strawberry check-schema haha
Other than that, LGTM

Is the input SDL or a Strawberry schema? Or both?
path.to.schema makes it look like it's module only

module, would you prefer to pass the sdl? why? 😊

I'm planning to compare the current schema (module) with the previous SDL schema that's in a file being version-controlled (for clarity in schema changes). So it's a use case with mixed representation kinds.
But I would prefer both module and SDL for flexibility 😁


typename和class的区别

在c++ Template中很多地方都用到了typename与class这两个关键字，而且好像可以替换，是不是这两个关键字完全一样呢?
相信学习C++的人对class这个关键字都非常明白，class用于定义类，在模板引入c++后，最初定义模板的方法为： template……
在这里class关键字表明T是一个类型，后来为了避免class在这两个地方的使用可能给人带来混淆，所以引入了typename这个关键字，它的作用同
class一样表明后面的符号为一个类型，这样在定义模板的时候就可以使用下面的方式了：
template……
在模板定义语法中关键字class与typename的作用完全一样。
typename难道仅仅在模板定义中起作用吗？其实不是这样，typename另外一个作用为：使用嵌套依赖类型(nested depended name)，如下所示：
`
class MyArray
{
public：
typedef int LengthType;
.....
}
template
void MyMethod( T myarr )
{
typedef typename T::LengthType LengthType;
LengthType length = myarr.GetLength;
}
`
这个时候typename的作用就是告诉c++编译器，typename后面的字符串为一个类型名称，而不是成员函数或者成员变量，这个时候如果前面没有typename，编译器没有任何办法知道T::LengthType是一个类型还是一个成员名称(静态数据成员或者静态函数)，所以编译不能够通过。
原文链接：https://blog.csdn.net/newbeixue/article/details/116591068

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
Thisuu, @josephmartinmoran, @cupername1, @bucketzxm, @geraldcolev, @Nar035, @kblok, @simonedimaria, @Bombbom, @Onethegioi, @BaofengWu, @Dzotova, @vnhacker1337, @NunungDakira, @zengzzzzz, @superflyX0, @tarn1902, @bmg422, @ranaali6960, @codeislight1


Missing names in eclipse gitignore file

Hello,
Thank you for the practical tool that is gitignore.io.
I just remarked that in the gitignore file generated for eclipse, these files/directory names are missing: .classpath, .settings and .projetc. These files miss intentionaly or this
is just a forgetting?
Regards,
Aboubakar

Good news, everyone! Eclipse gitignore .classpath and .project have been merged upstream in github/gitignore@8bc0e535bbc450e329cc8714da5c74855e3e98ea

I've also added it to the .patch file https://www.gitignore.io/api/eclipse.  I'll take them out when I pull the GitHub's master list:


Add tree route for display

Can you update the changelog while you're at it? (here and barique too I guess)

Incredibeul
Le ven. 3 sept. 2021 à 17:11, Anthony Bretaudeau @.***>
a écrit :

@.**** commented on this pull request.
In baricadr/model/backends.py
https://github.com/baricadr/baricadr/pull/14#discussion_r701966596:

           if os.path.exists(full_file_path):

               remote_list.append({'Path': file_path, 'missing': False})

           else:

               remote_list.append({'Path': file_path, 'missing': True})

Look at zat, 3 lines economised, make the planet great again
⬇ Suggested change

           if os.path.exists(full_file_path):

               remote_list.append({'Path': file_path, 'missing': False})

           else:

               remote_list.append({'Path': file_path, 'missing': True})

           remote_list.append({'Path': file_path, 'missing': not os.path.exists(full_file_path)})

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/baricadr/baricadr/pull/14#pullrequestreview-746214477,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEGTID53SZLB4ZJGOUA5HD3UADQS3ANCNFSM5DGNB22Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


Can I to make fortigate config download with posh-ssh?

Hello, I have some fortigates and i want to make backups using posh-ssh, is that possible?
under is the fortinet KB:
https://kb.fortinet.com/kb/documentLink.do?externalID=FD43754
but my fortigate are not using the default ssh port.

At the moment i am using the PSCP but it is hangs all time when it is running in a script.

You can specify the port with the -port parameter in the scp functions
Sent from my iPhone

On Jun 17, 2020, at 6:49 PM, marcelo-0511<EMAIL_ADDRESS>wrote:

At the moment i am using the PSCP but it is hangs all time when it is running in a script.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

can you show me a example?
In PSCP I am doing it this way:
pscp.exe -P 4022  admin@<IP_ADDRESS>:sys_config c:\bkp\myfortigatebackup.txt
In PSPC it works.
In Get-SCPFile, I am doing this way:

And it is not working.
:(

And when I execute this command the powershell Hangs.

Let me guess again a Fortinet device. Any specific model ? It seems to connect and pull the information based on the verbose messages so it is connecting on the port. As to why it is hanging I have no clue since no error is shown. Are you running as Administrator the PowerShell prompt?

Been trying to replicate with linux hosts with no luck. This is a recent install of ubuntu 20 server

Hello, thanks for your time.
Yes, they are fortigate devices, it is ocurring in any device.
I did a test like powershell administrator, and the error is the same.

If you want, I could get a test fortivm.

I did the test in some fortigates and FortiVMs and the behavior is the same.

above is a verbose from pscp

And a fortigate log:

When I tried get-scpfile no one log shows.

Requested a demo of the FortigateOS VM to test on my side. So far all the those ciphers should be supported in the Beta1 and all my tests against Linux and Windows hosts are working. I do not know what change they could have done to their fork of OpenSSH.

Hello, Good Morning
Yes, it is so stranger, is there more tests that i can to do?

Sadly no, waiting for Fortinet to approve me downloading the VM

On Jun 22, 2020, at 8:49 AM, marcelo-0511<EMAIL_ADDRESS>wrote:
Hello, Good Morning
Yes, it is so stranger, is there more tests that i can to do?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/darkoperator/Posh-SSH/issues/335#issuecomment-647497972, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAD7IHVFNNL5R2QNMQGLYI3RX5HODANCNFSM4OBA5KFA.

that is my posh version.

Yes

On Jun 22, 2020, at 10:02 AM, marcelo-0511<EMAIL_ADDRESS>wrote:
https://user-images.githubusercontent.com/67024069/85296421-bf312b80-b477-11ea-8e12-82f3fe6e58de.png
that is my posh version.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/darkoperator/Posh-SSH/issues/335#issuecomment-647539076, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAD7IHXJZIPULMYRWFJS2QTRX5P57ANCNFSM4OBA5KFA.

Was this issue also caused by the deep packet inspection?


bug CMakelists

"source/network/tcp_client.cpp" should change to "sources/network/tcp_client.cpp"

good catch, thanks!


refactor(collapse): add typing and simplify a bit

Also added collapseEl because we are using that pattern already and I like it.

LGTM

LGTM


fix: reorganise nmea0183 passing

Simple provider created from the admin ui was not
passing nmea0183 events at all, because the logic was in
pipedprovider pipeline construction. Providers can send
events directly because they have access to the app
and app.signalk, so use that to send nmea0183 events
from the provider and remove the related logic
from pipedprovider pipeline construction.

Tested. I can confirm it works.


Remove 'mlflow_run_name' and add 'mlflow_experiment_id' fields

See https://github.com/aimhubio/aimlflow/pull/10#issuecomment-1436152987 for details.

Closed in favour of a cleaner branch tree (#14) since #10 is now merged into "main".


Create Generate_password.py

@Mrinank-Bhowmick Please accept my PULL request

heyy can you please check out my pull request
thank you!!

Already exist : https://github.com/Mrinank-Bhowmick/python-beginner-projects/blob/main/projects/Password Generator/main.py
You may modify this project : link


Correctly handle STT_GNU_IFUNC ELF symbols

See discussion here.
https://sourceware.org/glibc/wiki/GNU_IFUNC and https://www.airs.com/blog/archives/403 have some information.
I haven't fully read through everything, but this may be an easy task. I suspect that the loader does all the magic for us and we'd just need to have sure to handle STT_GNU_IFUNC in addition to STT_FUNC, but we'd need to double check.

This may become a requirement for bpftrace integration, as it seems to explicitly query these symbols.


Update keyword fill tip

It still says "add item by clicking on +" which is no longer valid. It should say "Klíčová slova oddělujte tabulátorem nebo entrem."/"Separate keywords by using tab or enter."

It is called hint :)


There is no mention regarding how to control the image and preview of the full page

When going to add a page on my site, visiting the "apps" tab I can see my SPFx web parts, but they all show up with empty image and the preview shows up an un-configured web part.
Would be useful to let us know how to set the preview image for each web part, as well as a flag in the web part render that tells us to render the web part in preview mode (using sample data perhaps).
Not sure if this is possible today and not documented, or if these are new features...

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

ID: f42d2d41-61bb-e281-3dac-328292b7b192
Version Independent ID: 05b12512-7aa9-3ac7-e23e-0d5ae2209a59
Content: Using single part app pages in SharePoint Online
Content Source: docs/spfx/web-parts/single-part-app-pages.md
Product: sharepoint
Technology: sharepoint-framework
GitHub Login: @spdevdocs
Microsoft Alias: spdevdocs

Believe that's a feature request as the preview shown is a live rendering of the web part.

Yes, indeed it is.
I have detected in my code that it is running inside that frame and render demo content accordingly. However would be nice if there was a flag I can check instead of relying on checking the frame/container etc.
If there isn't one, I'll open a feature request - but not sure if there is one that isn't documented?

That's not an existing feature... no clue if someone has already requested.

I think this is an excellent example of something that will never get people to vote on it, but why not give it a try.
I added it here:
https://sharepoint.uservoice.com/forums/329220-sharepoint-dev-platform/suggestions/38256541-allow-spfx-full-page-webparts-to-provide-an-image
Thanks!


Design and implement opaque bearer token support for broker auth

Inspired by the discussion in https://github.com/kubernetes-incubator/service-catalog/issues/990, but solving the problem in more generic way proposed in https://github.com/kubernetes-incubator/service-catalog/issues/990#issuecomment-315577090
The proposal (considering PR https://github.com/kubernetes-incubator/service-catalog/pull/1037 as prerequisite):

Agree to treat the "token" SecretType value in Secret.Type field as an identifier for opaque bearer token.

❓ alternatively: add the SecretTypeOpaqueBearerToken constant as "kubernetes.io/opaque-bearer-token" to the list of predefined SecretType constants (core/v1/types.go#L4283)

Introduce the OpaqueBearerTokenAuth implementation of the AuthInterface described in https://github.com/kubernetes-incubator/service-catalog/pull/1037 with the following details:

Service Catalog fetches the Secret specified in the Broker spec, checks the Secret.Type field, finds the "token" value, finds the corresponding OpaqueBearerTokenAuth implementation of the AuthInterface responsible for this type of secret
Service Catalog extract the token stored in the "token" key of the secret (by convention)
Service Catalog adds an Authorization header to every broker request as Authorization: Bearer $TOKEN

The token generation and maintenance is out of scope of Service Catalog. Possible use cases:

User manually fetches the token and creates a secret containing it

works only for long-lived tokens

There is a separate "Token Maintainer" process watching on all brokers and periodically refreshing the secrets with new tokens to mitigate their expiration (short-lived tokens could be valid only for 10 minutes, for example)

❓ not clear how Token Maintainer process knows which of the brokers use opaque bearer tokens for auth, to generate tokens only for them, if initially there is no secret instance (containing the type field).

possibly duplicate the SecretType constant in the BrokerSpec?

@liggitt what do you think about this problem?

not clear how Token Maintainer process knows which of the brokers use opaque bearer tokens for auth, to generate tokens only for them, if initially there is no secret instance (containing the type field).

possibly duplicate the SecretType constant in the BrokerSpec?

on the consumption side, I see a few options:

duck type the secret by looking at the data fields... if it has a "token" field, use it as a bearer token (could do the same for "username" and "password" fields for basic auth, etc)
recognize specific types of secrets (based on type field in the secret object) and determine which fields contain the bearer token. the type field does not have to be a constant in the core/v1 api... you can have a type of catalog.k8s.io/custom-type, etc
configure the broker spec to point to a secret namespace/name, a specific key in the secret, and what to do with that key (e.g. use it as a bearer token).

the last would probably fit best with a generator or maintainer process, would let you point to any type of secret with a bearer token stored in any data key

recognize specific types of secrets (based on type field in the secret object) and determine which fields contain the bearer token. the type field does not have to be a constant in the core/v1 api... you can have a type of catalog.k8s.io/custom-type, etc

I am fine with this solution for the consuming side (actually it is mentioned in the 1. item, please check), and I see two options there - just use already predefined generic "token" constant, or define a new one

configure the broker spec to point to a secret namespace/name, a specific key in the secret, and what to do with that key (e.g. use it as a bearer token).
the last would probably fit best with a generator or maintainer process, would let you point to any type of secret with a bearer token stored in any data key

@liggitt yeah, I am also leaning towards this option, but it means duplication with the approach for consumer mentioned above. Would you suggest to ignore the type field in the secret object completely in this case?

a specific key in the secret, and what to do with that key (e.g. use it as a bearer token).

I don't like this approach because it limits the number of keys to one. It wouldn't work for basic auth with username and password (2 keys), for example.

I don't like this approach because it limits the number of keys to one. It wouldn't work for basic auth with username and password (2 keys), for example.

Obviously if the use was basic auth, you'd need two keys configured
For something like x509, you could have cert and key

@liggitt thanks, updated the proposal, the PR with detailed proposal text is on the way.

Implemented and merged: https://github.com/kubernetes-incubator/service-catalog/pull/1053


use existing pcsc library instead of building replacement

Update: From what I understand, based on comments below, xrdp builds it's own libpcsclite.so but the real library supports letting an environment variable (PCSCLITE_CSOCK_NAME) point back at xrdp which presents itself as a smart card (shared from the client). This issue was originally asking for some documentation but it seems to have some useful information so I am re-naming it.
Original:
I see references (when googling) to people using smart cards with xrdp but they are all a few years old. I haven't found any instructions on how to get it working. I am running latest released xrdp (from EPEL package) on Red Hat 7 and I am able to connect from mstsc over TLS. Here are some questions I have, if answered I could add something to the wiki.
Is the smart card support in xrdp supposed to be for letting you login to xrdp or is it meant to allow you to use your smartcard in an application on the remote machine like using firefox to browse to a site requiring smart card authentication? Or are both possible?
Do I need to enable a channel in xrdp.ini for smartcard support? Are any other configuration changes required in xrdp.ini?
Is the XRDP PCSC fork still required? It's pretty out of date and the PCSC project seems active, has @LudovicRousseau ever been approached about making any changes necessary to support RDP? I see a reference in his code that talks about RDP:
CCID
Would the smart card in the remote desktop session show up as a USB device?

I think I have never been approached to add support of XRDP in pcsc-lite.
The code forked in https://github.com/neutrinolabs/pcsc/commits/master is quite old. For example it uses a shared memory to communicate between pcscd and libpcsclite. This is no more used since pcsc-lite 1.6.0 released in 2010.
It looks like the fork uses pcsc-lite 1.5.5 released in 2009.

Hi @LudovicRousseau, that was me.  Yes, pcsc fork under NeutrinoLabs is old and I'll delete it.
There is smartcard support in xrdp under the devel branch.  One hack that you need to do to use it is to overwrite libpcsclite.so on the system.
It would be great if we could integrate what we've done in xrdp into libpcsclite.  I think all we need to do is change libpcsclite.so so if see's an environment variable, use that to know what unix domin socket to connect to.  xrdp will act like pcscd.

I cloned X11RDP-RH-Matic and built the devel branch on RedHat 7 with this command:
./X11RDP-RH-Matic.sh --branch devel --with-xorgxrdp --nox11rdp

I modified /etc/xrdp/startwm.sh to contain the line:
xfce4-session
prior to the line "pre_start".
I am now running the devel branch but I didn't see any libpcsclite.so get built.
I ran make in.~rpmbuild/BUILD/neutrinolabs-xrdp-f949201/sesman/chansrv/pcsc/Makefile  and now I have libpcsclite.so. Should the symlink in /usr/lib64/libpcsclite.so.1 point at that? It's three years old and half the size of the version that ships with pcsclite 1.8.8.
What are the next steps for me to see if my smart card is visible in the xrdp session (now that I am running latest devel branch)? Any changes to anything under /etc/xrdp? I don't see any references to smart cards or pcsc in there.
Thanks.

@LudovicRousseau
I was just lookign at winscard_msg.c function getSocketName().  It looks like it already is using the environment variable PCSCLITE_CSOCK_NAME so I think we're good.
It looks like it was added 2010-11-04 with sha1 5fbc9db.  I don't know how I missed it.

I knew I added something like that.
It is https://github.com/LudovicRousseau/PCSC/commit/5fbc9dbc70366ef18f8c7ebde0f00a64854b6c39

@jsorg71 is PCSC support working?

The current pcsc support in xrdp requires you to replace an .so file and it does not work great.
I have new code that does not require any change to pcsclite and works much better.  I have to clean it up and merge it in.

I have to clean it up and merge it in.

Do you have any ETA for that? In broad terms, of course.
I've been testing smartcard support on xrdp (with the replacement libpcsclite.so) and, although it works quite well when using Microsoft's RDC client, it starts breaking up when using FreeRDP-based clients.
Would love to see these updates on xrdp's smartcard functionality and would gladly test it extensively.

@jsorg71 Same, this is a priority for me.  All of our services require 2FA now for users.

@jsorg71 Same.
Currently using xrdp 0.9 with proprietary pcsclite and although pcsc_scan detects a card (shared from windows machine through rdp) I cant get the card to work, I get this on loop:

Waiting for the first reader...found one
Scanning present readers...
SCardListReaders:
SCardListReaders: mszGroups (null)
SCardListReaders: *pcchReaders 1
send_message:
0000 06 00 00 00 00 00 00 00 00 00 00 00             ............
get_message:
get_message: loop
SCardListReaders: mszReaders (nil) pcchReaders 0x7fff5e9d6858 num_readers 0
SCardListReaders: status 0x00000000
SCardListReaders:
SCardListReaders: mszGroups (null)
SCardListReaders: *pcchReaders 0
send_message:
0000 06 00 00 00 00 00 00 00 00 00 00 00             ............
get_message:
get_message: loop
SCardListReaders: mszReaders 0x5605a218f670 pcchReaders 0x7fff5e9d6858 num_readers 0
SCardListReaders: status 0x00000000

I added #963 for this.

I know everyone is busy working this.  I'm curious and I'm sure others are too.  Can we get a small status update.  No worries if not, just really excited to try out native pcsc-lite support.  Also I'd like to try it out.  is it too soon?   what branch is this being work in?
Thanks again