CairoVM Fails to Run Cairo1 Program Due to CostError in create_metadata

Describe the bug
I have a cairo1 program that you can find here.
When I try to run the program with CairoVM with this command: cargo run programs/inference.sierra --layout all_cairo --args '[1 4] [517734 0 249036 0 419430 0 131072 0]' --print_output it fails with Error: VirtualMachine(Unexpected).
The same program runs well with scarb cairo-run and scarb test.
I found that the issue was due to CostError in create_metadata function in cairo1-run.
To Reproduce
Steps to reproduce the behavior:

Clone this repo.
Go to inference directory: cd inference
Compile the project: scarb build
Copy/Paste the sierra file from target/dev/inference.sierra to CairoVM
Run the program with cairo1-run: cargo run programs/inference.sierra --layout all_cairo --args '[1 4] [517734 0 249036 0 419430 0 131072 0]' --print_output

What version/commit are you on?

CairoVM: 72f0bad
Cairo: 2.5.4
Scarb: 2.5.4

Additional context
In order to run CairoVM from Sierra file, here replace:
    let compiler_config = CompilerConfig {
        replace_ids: true,
        ..CompilerConfig::default()
    };

    let sierra_program = compile_cairo_project_at_path(&args.filename, compiler_config)
        .map_err(|err| Error::SierraCompilation(err.to_string()))?;

with:
    // Try to parse the file as a sierra program
    let file = std::fs::read_to_string(&args.filename)?;
    let sierra_program = match cairo_lang_sierra::ProgramParser::new().parse(&file) {
        Ok(program) => program,
        Err(_) => {
            // If it fails, try to compile it as a cairo program
            let compiler_config = CompilerConfig {
                replace_ids: true,
                ..CompilerConfig::default()
            };
            compile_cairo_project_at_path(&args.filename, compiler_config)
                .map_err(|err| Error::SierraCompilation(err.to_string()))?
        }
    };

After investigation, I found that it was failing with the calc_ap_changes function of the cairo-lang-sierra-ap-change crate.
In main.rs you can find a reproduction of the error. If you run cargo run you'll get the following error:
Error: ProgramRegistryError(FunctionIdAlreadyExists(FunctionId { id:<PHONE_NUMBER>902674641, debug_name: Some("orion::operators::tensor::math::gather::gather[expr84]") }))

Therefore, I'm not sure that this issue is related with the CairoVM.

It's finally working if you pass the sierra.json file instead of textual file.


libnatpmp: fix dyld path on darwin

This solves #164240
Description of changes
When building the dynamic library on darwin, run the script that inserts the absolute path to the library.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 164241 run on aarch64-darwin 1

1 package marked as broken and skipped:

transmission-qt

2 packages failed to build:

libtransmission
transmission

2 packages built:

libnatpmp
transmission-gtk


[screenjunkies] Add new extractor

Cherry-picked in b9e8d7140aa8584f8516c3575c20b21172278fef, thanks.
Do you want to be credited as one of the authors of youtube-dl? If so under what name?

Do you want to be credited as one of the authors of youtube-dl? If so under what name?

sure: Patrick Griffis

@dstftw Also thanks a ton for getting the Plus only videos working!

Done in fe80df30804736db5e644ad15ac09149c57ddf33.


Linting not running on jsx files

It may be something in my setup, but AFAIK nothing has changed. Linting has stopped running on JSX files, where I am pretty sure it did in the recent past (I got a VSCode update recently)
When I run ./node_modules/.bin/eslint --ext .js,.jsx src test locally it finds issues in .jsx files, however not within the VSCode "Problems" tab
I went into my VSCode settings and have added     "eslint.options": {       "extensions": [".jsx", ".js"]     } and that isn't helping either.
Am I doing it wrong?

Does putting this in your settings.json file help? (it worked for me, to enable in typescript (ts/tsx) files)
"eslint.validate": [
		"javascript",
		"javascriptreact",
		"typescript",
		"typescriptreact"
		//{"language": "html", "autoFix": true},
	]

The default "eslint.validate" value is ["javascript", "javascriptreact"] so out of the box jsx files should be validated. However if you specify  "eslint.validate" in your settings you need to list all languages you want to validate.

I tested this with VS Code 1.11 and ESLint 1.2.8 and it works as expected.
Will close the issue. @cdb if you still see problems here can you please provide a workspace I can use to reproduce this.

FWIW, I found out the issue...my *.jsx files were being classified as JSX instead of Javascript React, I believe due to another extension I had added. I removed the extension (but was also fixed by just adding 'jsx' to the  eslint.validate settings as you had suggested @dbaeumer - thanks!
Had a fun time learning how to run an extension in the Extension Development Host and debug it along the way, which was fun :)

Cool. Then you are all set to write your first extension and publish it to the market place :-)

@dbaeumer I would like to reopen the issue.
I'm authoring a plugin for Visualforce (Salesforce flavor of JSP pages). VSCode Visualforce plugin adds Visualforce (visualforce) language support, so I have configured eslint plugin like follows:
{
    "eslint.options": {
        "extensions": [
            ".page",
            ".js"
        ]
    },
    "eslint.validate": [
        "javascript",
        "visualforce"
    ],
    "eslint.autoFixOnSave": true
}

This configuration works for linting as expected — the editor highlights the issues correctly, but autofixing does not work: neither on save, nor explicitly through running "Fix all auto-fixable problems".

If I manually specify the language as Javascript in the editor — both linting and fixing start to work but the linter starts interpreting HTML tags as JSX, which is not desired (notice the presence of the yellow lightbulb and an extra highlight under <apex:page>).

Running ./node_modules/.bin/eslint --ext page --fix fixme.page manually works as expected.
How to convince your plugin to autofix visualforce language with .page extension?

@touzoku See my comments in https://github.com/Microsoft/vscode-eslint/issues/271


react native app creating showing some issue

Describe the bug
react native app creating showing some issue
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-fxls1c
Steps to reproduce
react native app creating showing some issue
Expected behavior
react native app creating showing some issue
Screen Recording / Screenshot
No response
Platform
Browser name = Chrome
Full version = <IP_ADDRESS>
Major version = 131
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
performance.memory = {
  "totalJSHeapSize": 122154228,
  "usedJSHeapSize": 68874512,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}
Username = shanmugarajshan
Chat ID = e69c41bb8d69

Additional context
No response

Is there a specific error message you are receiving?


Ci: Add component-responsible-labels to Component Descriptor

What this PR does / why we need it:
Adds a label to the oci-image and rootfs-resources of this component, indicating who is responsible for them in respect to our compliance scans.
Special notes for your reviewer:
@MrBatschner seems to be a good fit for the responsible here. Feel free to add/modify the suggested responsibles, e.g.:
cm.Label(
    name='cloud.gardener.cnudie/responsibles',
    value=[
        {
            'type': 'emailAddress',
            'email'<EMAIL_ADDRESS>        }, {
            'type': 'emailAddress',
            'email'<EMAIL_ADDRESS>        }
    ],
),

Alternatively, responsibles can also be added by github-user, e.g.:
cm.Label(
    name='cloud.gardener.cnudie/responsibles',
    value=[
        {
            'type': 'githubUser',
            'email': 'MrBatschner',
        },
    ],
),

Once this is merged, this should also be cherry-picked to the current release-branch for 576.

/lgtm


oAuth2 Authorization Header

I have implemented the oauth2 bridge (lucadegasperi/oauth2-server-laravel ) and found that while I can access using access_token on the query string I was unable to access using the "Authorization" header. I am using postman and in a standalone install of the oauth2 server all works fine.
I have tracked the issue down and it appears that the "bearer" part of the "Authorization" is not needed but the dingo authorization explicitly checks for the "bearer" prefix to the token.
In dingo/api/src/Auth/Provider/Authorization.php
public function validateAuthorizationHeader(Request $request)
{
    if (Str::startsWith(strtolower($request->headers->get('authorization')), $this->getAuthorizationMethod())) {
        return true;
    }

    throw new BadRequestHttpException;
}

I have replaced with:
public function validateAuthorizationHeader(Request $request)
{

    if( $request->headers->get('authorization') ) {
        return true;
    }

    throw new BadRequestHttpException;
}

So as to simply check for the existence of the header. This does work for me but I have not submitted a pull request as I am unsure of the wider ramifications.

Using Apache? Most likely the header is being stripped? You'll need something like this in your .htaccess:
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

Bearer is a part of the spec.

Nope using nginx... I figured the bearer part was part of the spec but using Postman to send the Authorization header works for the oauth package on its own but not in conjunction with dingo?
i.e. In Postman the header "Authorization" has a value of "tokenstring0123456789" with no bearer prefix.

You need the Bearer prefix. The OAuth package that this package utilizes specifically checks for its existence.

I understand that, but I don't understand why when I remove the check for the bearer in the Dingo file, everything starts working and the token Authorization works correctly. If the bearer was ommited, the phpleague package would fail, but it doesn't. I will do some further checks. I absolutely don't want to get into a debate without hard facts :). Thanks for your help.

Sorry I'm a bit flat out with some other work so I can't give you a solid answer.
But you do raise a good point that seeing as the OAuth package specifically checks the header there's probably no real reason for Dingo to worry about checking it.
That said, Bearer is required still. Perhaps there's a compatibility issue with the version Dingo has support for that we need to look into.
If you have the time to debug then I'd very much appreciate it. There's no pressure though. I'll re-open this and take a look. My first stop would be checking the Bearer token type in the League's package that you have installed. See what's going on there.

OK, found it out...
The League package does look for the Bearer and if its found it gets stripped from the token and just the token gets passed on. So essentially, for the league package, the Bearer is optional. This is why when I was testing the standalone package it worked but when passed through your check it doesn't.
Close this issue again and many thanks for your time, effort and your excellent package.

Awesome, no worries, I think in the newer versions the League package makes it mandatory and not optional. So best to include it for future proofing. :+1:
Cheers mate!


Get-WinEvent Not capable of traversal

Steps to reproduce
It can only query one record at a time
Assuming there are 10,000 results, then its time will be:0.0693924*1000=69.3924
$xmlQuery = @'
<QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">*[System[(EventID=4625)]]</Select>
  </Query>
</QueryList>
'@
Measure-Command{ Get-WinEvent -FilterXML $xmlQuery -max 10}

Expected behavior
Measure-Command{ Get-WinEvent -FilterXML $xmlQuery -max 10000}
TotalSeconds      < 10

Actual behavior
Measure-Command{ Get-WinEvent -FilterXML $xmlQuery -max 10}
Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 0
Milliseconds      : 69
Ticks             : 693924
TotalDays         : 8.03152777777778E-07
TotalHours        : 1.92756666666667E-05
TotalMinutes      : 0.00115654
TotalSeconds      : 0.0693924
TotalMilliseconds : 69.3924
Measure-Command{ Get-WinEvent -FilterXML $xmlQuery -max 10000}
Days              : 0
Hours             : 0
Minutes           : 1
Seconds           : 12
Milliseconds      : 368
Ticks             : 723689937
TotalDays         : 0.00083760409375
TotalHours        : 0.02010249825
TotalMinutes      : 1.206149895
TotalSeconds      : 72.3689937
TotalMilliseconds : 72368.9937

Environment data

Ps7.1

https://github.com/PowerShell/PowerShell/issues/10649

Assuming there are 10,000 results, then its time will be:0.0693924*1000=69.3924

Maybe 0.0693924*10000=693.924

When testing this myself, without delving into the code:

Events are retrieved from the service in batches

Events in each batch could be operated on in parallel, but that would likely not improve anything.
You wouldn't like it if every time you asked for a single event, pwsh ate all of your CPU time pre-computing the next thousand or more events in the background, even if it could possibly improve this specific calling pattern.

There are multiple calls to EvtFormatMessage per event

In my test, almost 8000 calls per batch of events, or over 100 per event
The overhead for all those RPC calls is tremendous. Fully 50% of the total time is spent setting up RPC call data structures and marshalling data between the service and pwsh.

Of the remaining 50% of the time, 25% is spent in FormatMessageW (as expected), and 25% is spent doing misc. work in the service around the FormatMessageW call.

Eliminate the excessive calls to EvtFormatMessage, and get-winevent should be about as fast as can reasonably be expected. Unfortunately, these calls appear to be coming from .Net's System.Diagnostics.Eventing.Reader class, rather than the cmdlet itself.
To truly improve the performance of this cmdlet, it should be re-written to call the native Evt APIs directly rather than bumble through the .Net wrapper classes. Doing so would not only bypass many of the design flaws in the wrapper classes, but also would allow the event properties (and their corresponding RPC calls) to be retrieved on-demand. I'm sure such a rewrite would be a breaking change, however, since the cmdlet currently returns System.Diagnostics.Eventing.Reader.EventLogRecord objects.

@Robo210 Thanks for your investigations!
The code is here:
https://github.com/PowerShell/PowerShell/blob/a7ce7883ceb2e4251babdcd8ec372eb283f31948/src/Microsoft.PowerShell.Commands.Diagnostics/GetEventCommand.cs#L903-L915
We do three slow action:

Wrapping in PSObject
Formatting (it is slow).
Adding new noteproperty

We could add new switch parameter to suppress these actions.


Retry queue

https://github.com/chrislusf/seaweedfs/issues/1773

I could not update the module  gocloud.dev to v0.21.0
I get an error
cd ../weed; GOOS=linux go build; mv weed ../docker/
# go.etcd.io/etcd/clientv3/balancer/picker
../../../go/pkg/mod/go.etcd.io/etcd@v0.5.0-alpha.5.0.20200425165423-262c93980547/clientv3/balancer/picker/err.go:25:9: cannot use &errPicker literal (type *errPicker) as type Picker in return argument:
        *errPicker does not implement Picker (wrong type for Pick method)
                have Pick(context.Context, balancer.PickInfo) (balancer.SubConn, func(balancer.DoneInfo), error)
                want Pick(balancer.PickInfo) (balancer.PickResult, error)
../../../go/pkg/mod/go.etcd.io/etcd@v0.5.0-alpha.5.0.20200425165423-262c93980547/clientv3/balancer/picker/roundrobin_balanced.go:33:9: cannot use &rrBalanced literal (type *rrBalanced) as type Picker in return argument:
        *rrBalanced does not implement Picker (wrong type for Pick method)
                have Pick(context.Context, balancer.PickInfo) (balancer.SubConn, func(balancer.DoneInfo), error)
                want Pick(balancer.PickInfo) (balancer.PickResult, error)
# github.com/chrislusf/seaweedfs/weed/replication/sink/azuresink
replication/sink/azuresink/azure_sink.go:106:32: not enough arguments in call to appendBlobURL.Create
        have (context.Context, azblob.BlobHTTPHeaders, azblob.Metadata, azblob.BlobAccessConditions)
        want (context.Context, azblob.BlobHTTPHeaders, azblob.Metadata, azblob.BlobAccessConditions, azblob.BlobTagsMap)


Fix GraphiQL subscription URL and use the configured WS port

This may well fix #332. Without this fix, GraphiQL isn't even able to establish the WebSocket connection because it's using the wrong URL.

I realize this won't fix. I'll put that test back in and make it pass too.

Since this currently breaks everyone trying to use subscriptions from GraphiQL all the time, let's merge it and leave #332 open until we've checked the failing entity changes test as well.


Move VERSION file to src folder

Search before asking

[X] I had searched in the issues and found no similar issues.

Motivation
Move VERSION file to src folder, so that we have a tidy root layout.
Solution
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR!

You should correspondingly update the build logic to fulfill VERSION information, including those in x.py and CMakeList.txt.

Actually I have some doubt about this proposal. In my view, the VERSION file is not a source file, which seems not proper to be placed into the src directory.
We can see the CI failed when someone try to move this file to src in #1149, whose reason is quite funny: there is a header named version in the C++ standard, and the move cause compiler to find wrong header and fail to compile.


gcc_libinit_windows.c:7:10: fatal error: 'windows.h' file not found

Duplicate of https://github.com/go-flutter-desktop/go-flutter/issues/470


Add test cases for Shift

Thought I would just add which tests I'm working on adding now so that we don't duplicate:

AddressBookTest
ModelManagerTest

I can continue and handle all of seedu.address.model tests first.

Okay, I'll work on the test cases for commands for Shift


AV1 over rtsp gives a 400

Which version are you using?
v1.4.2
Which operating system are you using?

[x] Linux arm64 standard

Describe the issue
When streaming to the server with ffmpeg using the following commmand:
ffmpeg -re -i "$1" -c copy -loglevel debug -strict experimental -f rtsp "rtsp://user:streamkey@localhost:8890/mystream"

Will allow me stream without any issues, except when I try to stream AV1 video. Regardless of the container being used (mp4 or mkv), in the documentation it seemed as if rtsp had compatability for the AV1 codec.
Describe how to replicate the issue

start the server
publish with the above ffmpeg code any AV1 encoded video
read with hls, or any other transport protocol.

Did you attach the server logs?
Server logs with debugging on:
https://pastebin.com/nTwPZgB3
ffmpeg logs with debugging on:
https://pastebin.com/KQw0DC13
Yes
Did you attach a network dump?
Not needed as it didn't work on localhost.
No

This is a duplicate of #2261 and has been already answered there. Please use the search function before opening a new issue.


Logitech G602 and Logitech G604 not recognized

Hey there, great stuff!
I recently got a Logitech G604 as an "upgrade" to my older G602 and wanted to give linux control another shot. When I saw that G604 support has already been added very recently I was pleasently surprised.
However, both of my devices do not show up in Piper.
I run Manjaro Linux and installed both libratbag and Piper from their official repos (which means the G604 device file isn't in yet but I can figure that out later) and used your install instructions to reload dbus and the ratbagd service. The service is running and the logs are fine, and piper can connect to it but does not see any devices.
I then tried to run the ratbagd service manually to see whats going on and this is the output I got:
> sudo ratbagd --verbose
ratbag debug: New device: Logitech K800
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:2010
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c52b
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c537
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c537
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c539
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c539
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c539

As you can see it found my K800 keyboard (046d:2010) and the USB Receiver for it (046d:c52b).
But it does not find the G602 or the G604. Instead it lists their respective USB Receivers multiple times (046d:c537 is the G602 500MHz receiver, 046d:c539 is the G604 receiver).
According to the device files the code for the G602 should be 046d:402c and for the G604 it should be 046d:4085.
I tried replugging the USB receivers multiple times, but the result remains the same.
Any idea what I can do about that?

In Solaar only the Lightspeed Receiver is showing up:

This is the output of dmesg:
> sudo dmesg | grep Logitech
[    1.559842] usb 1-3: Manufacturer: Logitech
[    1.577422] logitech-djreceiver 0003:046D:C52B.0003: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-3/input2
[    1.692510] input: Logitech Unifying Device. Wireless PID:2010 Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.2/0003:046D:C52B.0003/0003:046D:2010.0004/input/input3
[    1.692582] input: Logitech Unifying Device. Wireless PID:2010 Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.2/0003:046D:C52B.0003/0003:046D:2010.0004/input/input4
[    1.692624] input: Logitech Unifying Device. Wireless PID:2010 System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.2/0003:046D:C52B.0003/0003:046D:2010.0004/input/input5
[    1.692716] hid-generic 0003:046D:2010.0004: input,hidraw1: USB HID v1.11 Keyboard [Logitech Unifying Device. Wireless PID:2010] on usb-0000:00:14.0-3:1
[    1.794266] input: Logitech K800 as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.2/0003:046D:C52B.0003/0003:046D:2010.0004/input/input9
[    1.794434] logitech-hidpp-device 0003:046D:2010.0004: input,hidraw1: USB HID v1.11 Keyboard [Logitech K800] on usb-0000:00:14.0-3:1
[    1.826432] usb 1-4: Manufacturer: Logitech
[    1.829695] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/0003:046D:C537.0005/input/input10
[    1.829879] hid-generic 0003:046D:C537.0005: input,hidraw2: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-4/input0
[    1.833007] input: Logitech USB Receiver Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0006/input/input11
[    1.887274] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0006/input/input12
[    1.887350] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0006/input/input13
[    1.887421] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0006/input/input16
[    1.887786] hid-generic 0003:046D:C537.0006: input,hiddev1,hidraw3: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-4/input1
[    4.796749] usb 1-8: Manufacturer: Logitech
[    4.800156] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/0003:046D:C539.0007/input/input17
[    4.853764] hid-generic 0003:046D:C539.0007: input,hidraw4: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-8/input0
[    4.856131] input: Logitech USB Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0008/input/input18
[    4.856149] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0008/input/input19
[    4.910401] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0008/input/input20
[    4.910496] hid-generic 0003:046D:C539.0008: input,hiddev2,hidraw5: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-8/input1
[    4.912487] hid-generic 0003:046D:C539.0009: hiddev3,hidraw6: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-8/input2
[  365.300318] usb 1-3: Manufacturer: Logitech
[  365.302132] hid-generic 0003:046D:AAAA.000A: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB BootLoader] on usb-0000:00:14.0-3/input0
[  365.327865] hid-generic 0003:046D:AAAA.000B: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB BootLoader] on usb-0000:00:14.0-3/input0
[  370.217089] hid-generic 0003:046D:AAAA.000C: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB BootLoader] on usb-0000:00:14.0-3/input0
[  375.711197] usb 1-3: Manufacturer: Logitech
[  375.716498] logitech-djreceiver 0003:046D:C52B.000F: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-3/input2
[  375.838386] input: Logitech K800 as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.2/0003:046D:C52B.000F/0003:046D:2010.0010/input/input36
[  375.838528] logitech-hidpp-device 0003:046D:2010.0010: input,hidraw1: USB HID v1.11 Keyboard [Logitech K800] on usb-0000:00:14.0-3:1
[  391.804380] usb 1-4: Manufacturer: Logitech
[  391.806897] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/0003:046D:C537.0011/input/input37
[  391.807041] hid-generic 0003:046D:C537.0011: input,hidraw2: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-4/input0
[  391.809068] input: Logitech USB Receiver Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0012/input/input38
[  391.865764] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0012/input/input39
[  391.865829] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0012/input/input40
[  391.865895] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0012/input/input43
[  391.865976] hid-generic 0003:046D:C537.0012: input,hiddev1,hidraw3: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-4/input1
[  398.395265] usb 1-8: Manufacturer: Logitech
[  398.398869] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/0003:046D:C539.0013/input/input44
[  398.452487] hid-generic 0003:046D:C539.0013: input,hidraw4: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-8/input0
[  398.454949] input: Logitech USB Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0014/input/input45
[  398.509107] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0014/input/input46
[  398.509138] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0014/input/input47
[  398.509184] hid-generic 0003:046D:C539.0014: input,hiddev2,hidraw5: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-8/input1
[  398.511131] hid-generic 0003:046D:C539.0015: hiddev3,hidraw6: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-8/input2
[  543.318034] usb 1-4: Manufacturer: Logitech
[  543.320566] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/0003:046D:C537.0016/input/input49
[  543.320670] hid-generic 0003:046D:C537.0016: input,hidraw2: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-4/input0
[  543.322786] input: Logitech USB Receiver Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0017/input/input50
[  543.379453] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0017/input/input51
[  543.379497] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0017/input/input52
[  543.379540] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0017/input/input55
[  543.379603] hid-generic 0003:046D:C537.0017: input,hiddev1,hidraw3: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-4/input1
[  546.759056] usb 1-8: Manufacturer: Logitech
[  546.762569] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/0003:046D:C539.0018/input/input56
[  546.816330] hid-generic 0003:046D:C539.0018: input,hidraw4: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-8/input0
[  546.818859] input: Logitech USB Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0019/input/input57
[  546.818969] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0019/input/input58
[  546.872819] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.1/0003:046D:C539.0019/input/input59
[  546.872936] hid-generic 0003:046D:C539.0019: input,hiddev2,hidraw5: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-8/input1
[  546.874967] hid-generic 0003:046D:C539.001A: hiddev3,hidraw6: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-8/input2
[  555.048357] usb 1-3: Manufacturer: Logitech
[  555.053631] logitech-djreceiver 0003:046D:C52B.001D: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-3/input2
[  555.174609] input: Logitech K800 as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.2/0003:046D:C52B.001D/0003:046D:2010.001E/input/input61
[  555.174808] logitech-hidpp-device 0003:046D:2010.001E: input,hidraw1: USB HID v1.11 Keyboard [Logitech K800] on usb-0000:00:14.0-3:1
[  619.018153] usb 1-4: Manufacturer: Logitech
[  619.021121] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/0003:046D:C537.001F/input/input62
[  619.076218] hid-generic 0003:046D:C537.001F: input,hidraw2: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-4/input0
[  619.078226] input: Logitech USB Receiver Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0020/input/input63
[  619.136211] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0020/input/input64
[  619.136256] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0020/input/input65
[  619.136295] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/0003:046D:C537.0020/input/input68
[  619.136356] hid-generic 0003:046D:C537.0020: input,hiddev1,hidraw3: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-4/input1

Are you running master? Support for the G604 was added quite recently and hasn't made into a release yet.

Currently I am running
> uname -r
4.19.79-1-MANJARO

Sorry for the late response, I missed this in my notifications. You need at least Linux 5.2 for wireless Logitech devices.

Alright, I will see if I can find a 5.2 Kernel for Manjaro and report back :+1:

Ok I installed Kernel
> uname -r
5.3.7-2-MANJARO

I also installed libratbag-git and piper-git to get the latest versions.
And although replugging didn't work, after a restart of the libratbag daemon now the G604 is detected correctly by the deamon:
> sudo ratbagd --verbose
ratbag debug: New device: Logitech K800
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:2010
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c52b
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c539
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c539
ratbag debug: New device: Logitech G604
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: device assigned driver hidpp20
ratbag debug: hidraw info: bus 0x03 vendor 0x46d product 0xffffc539
ratbag debug: hidraw info: bus 0x03 vendor 0x46d product 0xffffc539
ratbag debug: hidraw info: bus 0x03 vendor 0x46d product 0x4085
ratbag debug: Logitech G604  is device '/dev/hidraw4'.
ratbag debug: Parsing HID report descriptor
ratbag debug: Parsing HID report descriptor
ratbag debug: - HID report ID 01
ratbag debug: - HID report ID 0e
ratbag debug: - HID report ID 02
ratbag debug: - HID report ID 10
ratbag debug: - HID report ID 11
ratbag debug: - HID report ID 20
ratbag debug: - HID report ID 21
ratbag debug: 'Logitech G604 ' is using protocol v4.2
ratbag debug: device battery level is 50% (next 30%), status 0
ratbag debug: device has color effects
ratbag debug: device has non-rgb leds
ratbag debug: device has onboard profiles
ratbag debug: Reading sector 0x0000
ratbag debug: Parsing profile 0
ratbag debug: Reading sector 0x0001
ratbag debug: Parsing profile 1
ratbag debug: Reading sector 0x0002
ratbag debug: Invalid CRC (ffff != b92a)
ratbag debug: Profile 1 is bad. Falling back to the ROM settings.
ratbag debug: Reading sector 0x0101
ratbag debug: Parsing profile 2
ratbag debug: Reading sector 0x0003
ratbag debug: Invalid CRC (ffff != b92a)
ratbag debug: Profile 2 is bad. Falling back to the ROM settings.
ratbag debug: Reading sector 0x0101
ratbag debug: Parsing profile 3
ratbag debug: Reading sector 0x0004
ratbag debug: Invalid CRC (ffff != b92a)
ratbag debug: Profile 3 is bad. Falling back to the ROM settings.
ratbag debug: Reading sector 0x0101
ratbag debug: Parsing profile 4
ratbag debug: Reading sector 0x0005
ratbag debug: Invalid CRC (ffff != b92a)
ratbag debug: Profile 4 is bad. Falling back to the ROM settings.
ratbag debug: Reading sector 0x0101
ratbag debug: device has configurable mouse button spy
ratbag debug: device has adjustable report rate
ratbag debug: device has 4 report rates
ratbag debug: device has adjustable dpi
ratbag debug: device is at 3200 dpi (variable between 100 and 25600).
ratbag debug: driver match found: Logitech HID++2.0
hidraw4: "Logitech G604 ", 5 profiles
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c539

After configuring the profile 0 for the first time with piper, and restarting the daemon I got errors about "invalid profiles". They did not cause a malfunction of the device though, but I wanted to mention that. I added 4 additional profiles to piper and these errors disappeared, so this is just an FYI:
ratbag debug: Logitech G604  is device '/dev/hidraw4'.
ratbag debug: Parsing HID report descriptor
ratbag debug: Parsing HID report descriptor
ratbag debug: - HID report ID 01
ratbag debug: - HID report ID 0e
ratbag debug: - HID report ID 02
ratbag debug: - HID report ID 10
ratbag debug: - HID report ID 11
ratbag debug: - HID report ID 20
ratbag debug: - HID report ID 21
ratbag debug: 'Logitech G604 ' is using protocol v4.2
ratbag debug: device battery level is 50% (next 30%), status 0
ratbag debug: device has color effects
ratbag debug: device has non-rgb leds
ratbag debug: device has onboard profiles
ratbag debug: Reading sector 0x0000
ratbag debug: Parsing profile 0
ratbag debug: Reading sector 0x0001
ratbag debug: Parsing profile 1
ratbag debug: Reading sector 0x0002
ratbag debug: Invalid CRC (ffff != b92a)
ratbag debug: Profile 1 is bad. Falling back to the ROM settings.
ratbag debug: Reading sector 0x0101
ratbag debug: Parsing profile 2
ratbag debug: Reading sector 0x0003
ratbag debug: Invalid CRC (ffff != b92a)
ratbag debug: Profile 2 is bad. Falling back to the ROM settings.
ratbag debug: Reading sector 0x0101
ratbag debug: Parsing profile 3
ratbag debug: Reading sector 0x0004
ratbag debug: Invalid CRC (ffff != b92a)
ratbag debug: Profile 3 is bad. Falling back to the ROM settings.
ratbag debug: Reading sector 0x0101
ratbag debug: Parsing profile 4
ratbag debug: Reading sector 0x0005
ratbag debug: Invalid CRC (ffff != b92a)
ratbag debug: Profile 4 is bad. Falling back to the ROM settings.
ratbag debug: Reading sector 0x0101
ratbag debug: device has configurable mouse button spy
ratbag debug: device has adjustable report rate
ratbag debug: device has 4 report rates
ratbag debug: device has adjustable dpi
ratbag debug: device is at 3200 dpi (variable between 100 and 25600).
ratbag debug: driver match found: Logitech HID++2.0
hidraw4: "Logitech G604 ", 5 profiles
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c539

Another issue that came up when testing Piper was, that it seems like two side buttons on the mouse are mapped to the same GUI element (maybe this should be another issue):

However the G602 is still not detected. I tried restarting the daemon as well as replugging the wireless receiver both while the daemon was running as well as while the daemon was stopped. This is not that important to me since I will not use the G602 as my main device but I wanted to report it nonetheless.

And although replugging didn't work, after a restart of the libratbag daemon now the G604 is detected correctly by the deamon:

Yeah, we *really* need to fix that.

After configuring the profile 0 for the first time with piper, and restarting the daemon I got errors about "invalid profiles". They did not cause a malfunction of the device though, but I wanted to mention that. I added 4 additional profiles to piper and these errors disappeared, so this is just an FYI.

That is expected, the memory was empty because you never configured onboard profiles before. We read the profile memory and see if it's a valid profile, if it isn't we fallback to the default profiles.

Another issue that came up when testing Piper was, that it seems like two side buttons on the mouse are mapped to the same GUI element (maybe this should be another issue):

Probably because the SVG file does not have enough buttons? You could make a proper SVG if you want :grin:.

That is expected, the memory was empty because you never configured onboard profiles before. We read the profile memory and see if it's a valid profile, if it isn't we fallback to the default profiles.

Alright!

Probably because the SVG file does not have enough buttons? You could make a proper SVG if you want grin.

Ah, that makes sense. I will try :nerd_face:

However the G602 is still not detected. I tried restarting the daemon as well as replugging the wireless receiver both while the daemon was running as well as while the daemon was stopped.

I am running into this same problem. My G602 is undetected with the default device id. On my system both lsusb and usbguard show the device id at 046d:c537 not 046d:402c. If I update the device file, then Piper can see the mouse, but can't modify the Report Rate, DPI, or the Buttons

I have the same case as dhollinger. For reference, my kernel: 5.3.11-arch1-1

I am running into this same problem. My G602 is undetected with the default device id. On my system both lsusb and usbguard show the device id at 046d:c537 not 046d:402c. If I update the device file, then Piper can see the mouse, but can't modify the Report Rate, DPI, or the Buttons

That is the USB ID of the receiver, we don't talk with any USB device directly, we talk with the hidraw nodes (/dev/hidrawX) exported by the kernel. 402c is the internal ID of the device, in Linux 5.2 this internal ID started being exported as the ID of the hidraw node for each device. You wouldn't see it in lsusb.
Can you restart the daemon with the device connected and active (just move to make it active in case it was in a dormant state) and see if the issue persists?

I also noticed that the G602 also doesn't allow the mapping of the G7, G10, and G11 buttons on the mouse. The G7 button on the G602 is where the G9 button is on the G604. G10 and G11 on the 602 are where the + and - buttons are on the G604

I have the same case as dhollinger. For reference, my kernel: 5.3.11-arch1-1

Can you paste the output of ratbagctl 'Logitech G604' info?

Unable to find device Logitech G602 is what I get when I run ratbagctl 'Logitech G602' info.
When I run sudo ratbagd --verbose I get the following output for the g602's receiver:
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 046d:c537

@dhollinger Did you ever get any further on this I am trying to get my G602 running on piper and it will only recognize in Piper if I were to change my DeviceMatch to usb:046d:c537.
My kernel is 5.3.0-7625-generic and I am running PopOS 18.04 (Ubuntu Derivative).

@jacpete I have not, but I haven't had time and haven't needed to change the configuration on the mouse in a long time

Same issue here with a G502, also with the receiver ID 046d:c537. Ubuntu 18.04, kernel 5.3.0-40-generic.

Same as/related to #855

Piper does not recognize my G602 on Ubuntu 20.04.

@FFY00  , I may be misunderstanding something, but based on your comments here and in other threads, it seems like maybe you think the G602's wireless receiver is supported by the logitech-djreceiver kernel driver? There's no reference to 0xc537 as a supported receiver in either /drivers/hid/hid-ids.h or /drivers/hid/hid-logitech-dj.c for any of these kernel versions: 5.2.20, 5.3.18, 5.4.58, 5.5.19, 5.6.19, 5.7.15, or torvalds as of 2020-08-13
When you added support for the G602, do you happen to remember (or have notes or repositoried files to show you) how you were able to test it? Maybe a customized logitech-djreceiver driver? Maybe you paired a g602 to something other than a 0xc537 receiver? I've tried with many others, and the 0xc537 is the only one I've ever gotten the G602 to pair with.
Maybe you interfaced with the mouse using some method that was used before kernel 5.2? Does such a method even exist for interacting with wireless-only mice like the G602? Or is logitech-djreceiver driver support for the receiver essentially mandatory before libratbag can reach the mouse itself?
Unless I'm misunderstanding something, then based on so many issues being opened and comments about G602 problems here, maybe it'd be nice to make it clearer for libratbag users that it shouldn't be expected to work unless support for the receiver is added to the linux kernel (even if libratbag iteself is already prepared to support the mouse).

Hi, sorry for the slight necro but I'm wondering how the G604 is recently with piper. I'm looking to upgrade from my aging G403 wireless as it's 50% off on Amazon right now, but only if I can configure all the buttons on Linux. Thanks!

I'm having no problems with my G604 over bluetooth currently.
There was some issues with getting the USB dongle recognised by ratbagd, but over bluetooth the mouse itself works perfectly fine and is entirely configurable in piper.

@mijofa and does the configuration set through bluetooth persist after switching back to wireless?
I'm looking for upgrading my g602 (buttons are double clicking and it also doesn't work with libratbag for me as well, as stated in this thread).

@mijofa and does the configuration set through bluetooth persist after switching back to wireless?
I'm looking for upgrading my g602 (buttons are double clicking and it also doesn't work with libratbag for me as well, as stated in this thread).

It seems like the receiver for the G602 never got added to the kernel driver. Linux 5.11 should fix that.
https://www.spinics.net/lists/kernel/msg3790026.html

It seems like the receiver for the G602 never got added to the kernel driver. Linux 5.11 should fix that.
https://www.spinics.net/lists/kernel/msg3790026.html

Installed Manjaro's 5.11 preview to see how things would change.
/dev/usb >>> sudo ratbagctl list
hollering-marmot:    Logitech USB Receiver

Ratbag now lists the USB receiver, progress.
However, I think it isn't detecting the mouse properly. The USB ID matches the device config file so I think it's matching it to the G602 profile properly but perhaps since this mouse hasn't (ever?) worked it, support wasn't finished for it.
/dev/usb >>> sudo ratbagctl hollering-marmot info
hollering-marmot - Logitech USB Receiver
             Model: usb:046d:c537:0
 Number of Buttons: 8
    Number of Leds: 0
Number of Profiles: 1
Profile 0: (active)
  Name: n/a
  Report Rate: 125Hz
  Resolutions:
    0: 2000dpi (active)
  Button: 0 is mapped to UNKNOWN
  Button: 1 is mapped to UNKNOWN
  Button: 2 is mapped to UNKNOWN
  Button: 3 is mapped to UNKNOWN
  Button: 4 is mapped to UNKNOWN
  Button: 5 is mapped to UNKNOWN
  Button: 6 is mapped to UNKNOWN
  Button: 7 is mapped to UNKNOWN

This mouse has 11 buttons (left, right, middle, two DPI, 6 side buttons) and the report rate always reports 125Hz even if the mouse is in performance mode.

Installed Manjaro's 5.11 preview to see how things would change.
/dev/usb >>> sudo ratbagctl list
hollering-marmot:    Logitech USB Receiver

Ratbag now lists the USB receiver, progress.
However, I think it isn't detecting the mouse properly. The USB ID matches the device config file so I think it's matching it to the G602 profile properly but perhaps since this mouse hasn't (ever?) worked it, support wasn't finished for it.
/dev/usb >>> sudo ratbagctl hollering-marmot info
hollering-marmot - Logitech USB Receiver
             Model: usb:046d:c537:0
 Number of Buttons: 8
    Number of Leds: 0
Number of Profiles: 1
Profile 0: (active)
  Name: n/a
  Report Rate: 125Hz
  Resolutions:
    0: 2000dpi (active)
  Button: 0 is mapped to UNKNOWN
  Button: 1 is mapped to UNKNOWN
  Button: 2 is mapped to UNKNOWN
  Button: 3 is mapped to UNKNOWN
  Button: 4 is mapped to UNKNOWN
  Button: 5 is mapped to UNKNOWN
  Button: 6 is mapped to UNKNOWN
  Button: 7 is mapped to UNKNOWN

This mouse has 11 buttons (left, right, middle, two DPI, 6 side buttons) and the report rate always reports 125Hz even if the mouse is in performance mode.

Installed Manjaro's 5.11 preview to see how things would change.

https://github.com/torvalds/linux/commit/e400071a805d6229223a98899e9da8c6233704a1
On Jan 4 2021 G602 was added to the kernel.

So, does that mean it should hopefully, maybe, finally work one day? That would be swell.

Button bindings work for me and are properly binded, but Piper just says they're all unknown.

My log is filled to the brim with messages as of recently every time I hit any button:
logitech-djreceiver 0003:046D:C537.0006: Unexpected input report number 128

Is there something I can do to help narrow down or debug the issue? I am a G602 user too
uname -a
Linux vombook 5.14.14-arch1-1 #1 SMP PREEMPT Wed, 20 Oct 2021 21:35:18 +0000 x86_64 GNU/Linux

@Vombato can you post the output of sudo ratbagd --verbose

@Vombato can you post the output of sudo ratbagd --verbose

Sure! Here you go:
sudo ratbagd --verbose
Initializing libratbag
ratbag debug: New device: Logitech USB Receiver
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: 046d:c537 is a Logitech receiver, not a device.  Ignoring...
ratbag debug: New device: ELAN2203:00 04F3:309A
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: No data file found for 04f3:309a
DBus server ready

To add some context: the mouse buttons are mapped weirdly, scroll wheel and it's click work fine, all other buttons do no action at all, other than G5 that is mapped as left-click.

Currently, I don't have access to the G602 mouse, once I get my hands on G602 I can continue to reverse engineer the protocol

This is excellent news, can you confirm you are able to modify LED, DPI and macros from piper?

This is excellent news, can you confirm you are able to modify LED, DPI and macros from piper?

Didn't test everything, G602 has no LED settings so that should not be a problem :grin: , DPI change was working because was the first thing I tried.
I'm away from home for the weekend now, will test everything else when I get back early next week!

I am really confused on what could have triggered this but I'm glad I solved them all, hope this can help someone
My guess Logitech changed the API after version 4700.0012

Unfortunately I'm still experiencing this bug with a Logitech 602. libratbagd lists my mouse, but ratbagctl does not.
In Windows 10, I loaded up the Logitech Gaming software and verified my mouse has the latest firmware, version: 4700.0012
@Vombato , you said you reset your mouse and it solved your issues. What exactly did you do to perform the reset? I'd like to try the same thing. Thanks.
≻ ratbagctl --version
0.16

≻ sudo ratbagd --verbose
Initializing libratbag
ratbag debug: New device: Lenovo ThinkPad Thunderbolt 3 Dock USB Audio
ratbag debug: Using data directory '/usr/share/libratbag'
ratbag debug: device assigned driver hidpp20
ratbag debug: hidraw info: bus 0x03 vendor 0x17ef product 0x3083
ratbag debug: Lenovo ThinkPad Thunderbolt 3 Dock USB Audio is device '/dev/hidraw0'.
ratbag debug: Parsing HID report descriptor
ratbag debug: Parsing HID report descriptor
ratbag debug: - HID report ID 01
ratbag debug: - HID report ID 02
ratbag debug: - HID report ID 03
ratbag debug: - HID report ID 04
ratbag debug: - HID report ID 05
ratbag debug: - HID report ID 06
ratbag debug: - HID report ID 07
ratbag debug: - HID report ID 10
DBus server ready

≻ ratbagctl --verbose list
No devices available.

Unfortunately I'm still experiencing this bug with a Logitech 602. libratbagd lists my mouse, but ratbagctl does not. In Windows 10, I loaded up the Logitech Gaming software and verified my mouse has the latest firmware, version: 4700.0012
@Vombato , you said you reset your mouse and it solved your issues. What exactly did you do to perform the reset? I'd like to try the same thing. Thanks.

I don't really know if a hardware or force-reset is possible via pins or button on the mouse, what I did was resetting all custom profiles to default using Logitech G HUB and then flashing the new firmware.
I'll investigate deeper this coming week and update this issue :smiley:

Sorry for the long delay, I've been away from home and not been able to test what I promised to.
I've took a chance to edit DPI and assign macros and stuff to the G602. The DPI changes as expected but when I override it via the hardware button it gets buggy and don't always update in libratbag even though it changes in the mouse (I am checking via Piper GUI) but for my usecase is good enough.
About the macros, I didn't manage to get them working, I seem to be able to assign keystrokes and actions but they just don't work and I get no feedback as far as I can see or tell.

Same issue here;  Ubuntu 18.04 (kernel 5.4), and upgraded today to 20.05 (kernel 5.13) to see if it would resolve the issue.  I have a G604 which are not getting those errors in dmesg. So perhaps it is a G602 specific issue?
The G604, however, isn't being fully picked up by ratbag, so there are still some things to address:
$ ratbagctl bellowing-paca info
bellowing-paca - Logitech G604
             Model: usb:046d:4085:0
 Number of Buttons: 16
    Number of Leds: 1
Number of Profiles: 5
Profile 0: (disabled)
Profile 1: (disabled) (active)
Profile 2: (disabled)
Profile 3: (disabled)
Profile 4: (disabled)

libratbag-ratbagd-0.17-2.fc38.x86_64
kernel-6.6.8-100.fc38.x86_64


ERROR: No cached ProjectGraph is available with gcp-task-runner and NX >v19.3

Using the “@nx-extend/gcp-task-runner” plugin, for all NX versions >v19.3, I get this error:

What version of the package are you using? Could you run nx report.

Interesting, we did have some of these issues but that was mainly with < Nx 19.3, I will update everything soon again so will check it out.

Yes, it is in the package.json

Could you update that one? The latest version is 10.0.4

OK, I'll wait for the update then.
Thanks

Packages have been updated, can you give it a try?

It works now.
Thanks


Add $ref's to schema resources

Feature technical design
Summary

Describe the new feature from a technical perspective.

Carbon Platform has a resource schema. There are scenarios where we need to establish relationships among resources through the schema. Right now, we're relying on library inheritance keys like inherits: carbon-styles or inherits<EMAIL_ADDRESS>and then asset id matching. Next, we need to establish relationships between libraries and design kits, and there might be a better way to do this than cross-referencing resource ids.
If we add $ref support to our schema, our carbon.yml in its full form could look like:
libraries:
  test:
    name: Test Library
    description: This is a test library.
    assets:
      nested:
        name: Nested asset
        description: This asset is defined in the library.
        status: stable
        type: component
        platform: web
      reference-local:
        $ref: "#/assets/reference-local"
      reference-local-subdirectory:
        $ref: "components/my-component/carbon.yml#/assets/reference-local-subdirectory"
      reference-absolute:
        $ref: "https://gist.githubusercontent.com/mattrosno/da6e10a986139512f372ed81694b17ce/raw/8312abd7f322ec009cd4ddeb9f2714ebf5cae9b2/carbon.yml#/assets/reference-absolute"
    designKits:
      carbon-white-sketch:
        $ref: "#/designKits/carbon-white-sketch"
assets:
  reference-local:
    name: Reference local asset
    description: This asset is defined in the assets array and referenced in the library.
    status: stable
    type: component
    platform: web
designKits:
  carbon-white-sketch:
    name: Sketch white theme
    tool: sketch
    type: ui
    status: stable
    url: sketch://add-library/cloud/557b75ff-67d3-41ab-ada5-fa25447218c1
    action: link
    sponsor: carbon

With this:

A single Carbon config file could describe one resource, or multiple resources
With the top-level keys being libraries, assets, designKits, we can still validate the schema
There's no need to use GitHub APIs to crawl GitHub repository subdirectories to find all assets in a library; the Carbon configs are more explicit thus more understandable of what they do
The assets object can be top-level, or nested in a library, to prevent unnecessary $refs
$refs can be local to the YML file, relative to its repository, or absolute
There's no need for the<EMAIL_ADDRESS>syntax for inheritance; when using an absolute $ref URL, simply use the GitHub URL that includes the desired version https://raw.githubusercontent.com/carbon-design-system/carbon/v11.6.0/packages/styles/carbon.yml
When indexing your resources, there's less ambiguity because you don't have to guess what assets are in<EMAIL_ADDRESS>you can CMD-click that URL above in VSCode to view the reference schema in full

Describe the problem solved by this feature.

The idea of using $refs came up with determine what to do with design kits. We need to index design kits, and then reference compatible design kits on a per-library basis. We can index design kits within the platform repository, and then use that as the single source of truth when indexing libraries in their remote repositories... but that doesn't really scale. What happens when we want to index design kits elsewhere and let other maintaining library teams reference those design kits?
A more deterministic indexing approach both simplifies platform logic and makes indexing more understandable for library, asset, and design kit contributors.

Describe how it integrates/relates/communicates with existing features/packages/services.

This would likely result in v2 of our schema as a breaking change, so we'd need to consider the added complexity of that.
Research

[x] Approved?

Unanswered questions

Would this require a breaking change and a schema v2?

We could do this in two phases where the first phase in a normal feature release adding designKits with references in libraries. The second phase could be the library to libraries change as well as any assets changes.

What are our options to handle a breaking change? Do we need to support a v1? I'm guessing yes because even though we could synchronize updating all currently indexed resources, but prior resource versions will still be using the v1 schema.

We'll need to support v1 schema still, when we introduce breaking changes, in phase 2.

What does this mean for cached GitHub responses?

Because @apidevtools/json-schema-ref-parser resolves its own HTTP responses when fetching schemas via absolute URLs, that means we'd likely want to cache the carbon.yml data after it's been ran through the JSON $Ref Parser.

What about when we're indexing a carbon.yml from GitHub Enterprise and we're resolving remote URLs on GitHub Enterprise through @apidevtools/json-schema-ref-parser - will we have to add authentication to those requests?

Yes, it appears there are options to pass authentication (via headers?) when dereferencing.

New technologies

@apidevtools/json-schema-ref-parser requires a newer version of npm than 8.5.5. I had to update node from 16.15.0 to 16.15.1 to get npm 8.11.0. Is that okay?

Proofs of concept

https://github.com/carbon-design-system/carbon-platform/pull/934
UI/UX design

[x] Approved?

Does this feature have any associated UI/UX? If so, describe any design that needs to be
completed/red-lined prior to development.

No
APIs

[x] Approved?

Adding Carbon config files (via the schema) to the data graph needs to happen regardless of the schema supporting refs or not, so any API changes are out of scope for this issue.
Programmatic APIs

List any APIs that will be developed and made available in the @carbon-platform/api package, including function/class/method names, parameters, and return values.

None
Data graph

List any new query resolvers and/or data models being included in the data-graph and/or data-graph API package.

None
Messages

List any new/changed RabbitMQ messages introduced by this feature, the message payload structure associated with them, whether they are queries or emits, and their expected return values (for queries).

None
Security

[x] Approved?

What new data is created/stored/collected/transmitted by this feature? How is that data secured? Who
is allowed to access it? How is that access controlled?

No change

Think like a hacker. How might someone attempt to break or abuse this feature?

Consider using our urlsMatch utility to prevent malicious reference paths like ../, etc. This can be done in the "Resolve schema references with validation and error handling" issue.
Error handling

[x] Approved?

Ignore the happy path. What can go wrong with this feature? How will the error conditions manifest
through the APIs? How will users be informed about these errors?

$refs can be invalid due to improper syntax, paths, and URLs. Like our current schema validation, we can discard invalid resources to ensure high data integrity.
Test strategy

[x] Approved?

How will the new feature be tested? (e.g. unit tests, manual verification, automated e2e testing,
etc.)

We don't currently have a testing strategy for the web app. For phase 1, we should consider just manual verification, and in phase 2 that incorporates the breaking changes, add test to ensure both schema v1 and v2 work as expected.

What interesting edge cases should be considered and tested?

If phase 1 is just design kits, let's test for:

All four forms of reference (inline [no reference], local, local different file, absolute URL)
Broken references (invalid reference syntax, invalid reference paths, invalid reference YML)

Phase 2 testing would primarily be regression testing.
Logging

[x] Approved?

Detail any FFDC data (info, warning, error, debug logs) to be captured by this feature.

Log errors/warning if YAML fails to parse (see error handling)
Ensure validation correctly logs skipped items, validation errors

File and code layout

[x] Approved?

Describe how the files and code for this feature will fit into the rest of the mono repo. Will there be a new package/service? Are there existing files/directories in which the new logic should live?

github.js is still a good source code destination for this in phase 1, and we consider moving some of this to a different web app library file (/lib directory), or package in phase 2.
Issue and work breakdown

[x] Approved?

List any issues that should be created prior to starting work on this feature.

This could be broken into two phases, where the first phase is enough to unblock design kits for v1, and the second phase could be after v1 as a breaking change.
Phase I

[x] Add designKits as a top-level and nested schema key, with libraries having designKits references, and add to the JSON schema
[x] #970
[x] #971
[x] #972

Phase II

[ ] Resolve schema references for GitHub Enterprise URLs
[ ] Refactor library inheritance to use a reference instead of our library-id@version identifier
[ ] Allow assets to be both top-level and also nested in a library
[ ] Replace crawling GitHub trees to find assets in a library with assets living in a library (direct or via reference)
[ ] Update library to libraries top-level schema key
[ ] Retain schema v1 deprecated functionality
[ ] Publish a v2 schema and update documentation
[ ] Get inherited library version by fetching the package.json from that inherited library
[ ] Add tests for schema parsing and dereferencing
[ ] Update docs to reference v2 instead of v1, and link to v1 docs for backwards compatibility

We can include auth credentials in the JSON schema $ref parser: https://apitools.dev/json-schema-ref-parser/docs/options.html

Tech design is complete. There is still implementation work to do for eventual Phase 2.

@jdharvey-ibm I'll create a new epic for phase 2, which is a more declarative way to index for all resources and not just design kits. I've been thinking about how nice that will be, especially if we do a preview mode so one carbon.yml has all the data that it needs without any abstract id matching with other libraries, etc.


Add 1.13 API Reference

I regenerated the API docs since rebasing @tengqm's PR would have been more time consuming.

/assign @Bradamant3 @zacharysarah

/lgtm
/approve


Opportunities Page Backend

Please do work for this task in a branch called issue-137.

Add Opportunities collection and show default data on the opportunities page


Automatic closing of the navigation drop-down menu

Problem:
The dropwdown in the top navigation can only be closed by clicking on the button or a link in it.
Task:
We need a function that closes the dropdown if clicked outside the navigation.

To the note: Using your own vue directive https://vuejsexamples.com/a-vue-js-3-click-outside-custom-directive/


Allow non-string values with checkbox lists

🚀 Feature request
Current Behavior
When using Formik V.2 checkbox groups, any value that is put in, is stringified and henceforth not found in the array of existing values.  I tracked this down to using the html input element to store the value which only works with strings.
Desired Behavior
It would be great to be able to use other types or at least Numbers here.
Suggested Solution
I don't have any amazing ideas here but for numbers you could stringify the numbers on the way in and then on the way out.  Mixing types gets a little weird here. For example "1" and 1 would have obvious issues.
Another idea here is to use something else as the actual input value such as a string id and then keep a mapping of id => value.  This would allow arbitrary types such as objects to be stored as values.
Who does this impact? Who is this for?
People using checkboxes and radios.  The current behavior allows erroneously using a non-string type.
Describe alternatives you've considered
I haven't figured it out yet but I'll probably stringify my numbers on the way in and way out.  I don't have a case where mixed numbers and strings or objects is necessary to use.

Closing due to long inactivity


Refactored run-local and run-remote to use more common flows. Preparing run-remote to allow oss-cluster benchmarks

Codecov Report

Merging #156 (4beeb6f) into master (a7d2ec3) will decrease coverage by 4.33%.
The diff coverage is 19.40%.

@@            Coverage Diff             @@
##           master     #156      +/-   ##
==========================================
- Coverage   34.72%   30.39%   -4.34%
==========================================
  Files          39       51      +12
  Lines        2793     2938     +145
==========================================
- Hits          970      893      -77
- Misses       1823     2045     +222

Impacted Files
Coverage Δ

redisbench_admin/cli.py
0.00% <0.00%> (ø)

redisbench_admin/compare/args.py
0.00% <0.00%> (ø)

redisbench_admin/compare/compare.py
0.00% <0.00%> (ø)

redisbench_admin/export/export.py
0.00% <0.00%> (ø)

redisbench_admin/extract/extract.py
0.00% <0.00%> (ø)

redisbench_admin/run/cluster.py
0.00% <0.00%> (ø)

redisbench_admin/run/git.py
0.00% <0.00%> (ø)

redisbench_admin/run/run.py
0.00% <0.00%> (ø)

redisbench_admin/run/ssh.py
0.00% <0.00%> (ø)

redisbench_admin/run_local/profile_local.py
0.00% <0.00%> (ø)

... and 37 more

Continue to review full report at Codecov.

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


Call button

A GUI button to call the train to a station

what you could do is keep track of all trains and add a button to the interface when a trainstop is open
then, if a player clicks it, you send the first train available and with a path to the trainstop that the player has oppened

Instead of first available maybe the closest. I'm pretty sure i saw some distance calculating functions when browsing the API

Closed by #9


dynamic routes not being matched on nginx (klein v2.1.0)

Hi all,
(klein v2.1.0)
I can't seem to use dynamic routes. For harcoded routes, Klein.php is responding as expected.
I decided to use the name joe (randomly) for this example:
#route is matched if I hardcode "joe"
- [{ method: GET }, { uri: "/api/1.0/tickets/joe" }, { class: [Main\Controllers\Api10TicketsController, getJoe] }]
#route is not matched
- [{ method: GET }, { uri: "/api/1.0/tickets/jo." }, { class: [Main\Controllers\Api10TicketsController, getJoe] }]
#route is not matched - this is the one I want to use
- [{ method: GET }, { uri: "/api/1.0/tickets/[*:id]" }, { class: [Main\Controllers\Api10TicketsController, getJoe] }]

I'm serving everything through index.php behind nginx:
location / {
	# First attempt to serve request as file, then
	# as directory, then fall back to index.php
	try_files $uri $uri/ /index.php?q=$uri&$args;
}

So how do I get it to match route of /api/1.0/tickets/123 where 123 = :id ?
Thanks!

I found the problem.
            if (stristr($_SERVER['REQUEST_URI'],$uri)) {
                $router->respond($method, $uri, [$injector->make($class), $classMethod]);
            }

Since a regular expression would fail this check, the router wasn't matching the route.


App Crash when we not pick the account and use the not in the list or cancel cases

Provide these Errors and App crash
com.tolotra.account_picker.AccountPicker.onActivityResult
java. lang.NullPointerException

Should be fixed with 2.2.0. Please comment if still not working


Script and readability enhancements

This is a PR to

Address several readability issues.

https://github.ibm.com/ibmprivatecloud/roadmap/issues/59943
https://github.ibm.com/ibmprivatecloud/roadmap/issues/60056

Enhance the health check on .status.installedCSV for each subscription during the installation.

https://github.ibm.com/ibmprivatecloud/roadmap/issues/59973

This is ready for reviewing


Swap Wield/Bloom on Silver Sickle(b) - menuentryswapper

Would like an option added to Item Swaps to change Wield with Bloom on Silver Sickle (b) for farming fungi.

Duplicate of #1848


fix(Jenkins): Attempting to fix CI/CD

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


ResNet models in tf.keras.applications contain a bias term which should not be there.

Pretrained ResNet models available as part of tf.keras.applications include a bias weight with all the convolutional layers which is weird. What is even weirder is that the pretrained weights contain all zeros for the bias weights, which is definitely a problem.
ResNet models do not use a bias term because of the use of batch normalization. Even the TensorFlow models repository, the ResNet construction code does not contain a bias term in convolutions.
The following code shows the weights in the resnet50 model in tf.keras.applications as can be seen the bias terms are all zeros.

import tensorflow as tf

model = tf.keras.applications.resnet50.ResNet50(include_top=False, weights='imagenet')
print(model.trainable_variables)

A small portion of the output shows the bias terms as all zeros.
array([[[[ 1.76406968e-02,  2.18379945e-02,  6.38491847e-03, ...,
          -1.56918354e-02,  1.33828130e-02, -7.58931879e-03],
         [ 6.57748384e-03, -1.13832625e-02, -1.44122150e-02, ...,
           1.07535999e-02,  1.99317057e-02, -5.90330362e-03],
         [ 1.96981058e-02,  6.84878789e-03, -1.30715151e-03, ...,
          -8.99719913e-03,  1.00973761e-02, -1.09837623e-02],
         ...,
         [ 4.02560830e-03, -2.51277094e-03, -1.91410668e-02, ...,
           1.84022412e-02, -1.05592925e-02,  3.84159223e-03],
         [-1.21582337e-02, -2.44973949e-03, -8.21000524e-03, ...,
          -3.52650182e-03,  9.62345582e-03, -1.55217517e-02],
         [-1.57500952e-02, -5.96316298e-03,  4.53999359e-03, ...,
           4.88574570e-03,  4.60040662e-03,  8.99072620e-05]]]],
      dtype=float32)>, <tf.Variable 'conv5_block3_3_conv/bias:0' shape=(2048,) dtype=float32, numpy=array([0., 0., 0., ..., 0., 0., 0.], dtype=float32)>, <tf.Variable 'conv5_block3_3_bn/gamma:0' shape=(2048,) dtype=float32, numpy=
array([1.3451786, 1.3965728, 1.4453218, ..., 1.2092956, 1.5969722,
       1.4321095], dtype=float32)>, <tf.Variable 'conv5_block3_3_bn/beta:0' shape=(2048,) dtype=float32, numpy=
array([-1.4512578, -1.6519743, -1.6319023, ..., -1.6061822, -1.7218091,
       -1.9375533], dtype=float32)>]

This is definitely an issue which needs to be cleared up as a lot of people are depending upon tf.keras.applications.

I have tried on colab with TF version 2.1.0, 2.2.0-dev20200305 and was able to reproduce the issue.Please, find the gist here. Thanks!

This is a rather serious issue requiring an urgent fix because too many people rely upon tf.keras.applications for pretrained models. As of yet there are no V2 versions of slim models available and hence tf.keras.applications is the only resort.
Hence, unless this issue is resolved, usage of TF V2 for code porting and new code writing is going to be a big burden.

I think you might be right, as the Kaiming He himself said here that batch normalization should do away with the need for bias in the convolutional layers. If I understand it correctly, fixing this issue would just be a simple matter of setting use_bias = False when exporting the ResNet models. I can open a PR and start working soon. Can someone confirm that this is the right direction?

@jaketae It seems a fair point to start. But the inconsistency does not end here. A major difference between V1 and V2 models in ResNet is the use of BN in V2 while V1 does not use BN. If the current models are observed, it is clear that they both have BN layers.

@ujjwal-ai I'm not sure on your second point on BN. The [original paper] (https://arxiv.org/pdf/1512.03385.pdf) on ResNet states that BN is used "right after each convolution and before activation."

Then what is the exact difference between V1 and V2? Maybe I am wrong here. So any help would be appreciated

@ujjwal-ai we should probably remove and upload a new checkpoint. But I'm not sure how this is blocking you from using keras applications model?

This is not stopping me. I can use it by restricting the variables to be updated. The moot point is that for a new person already unaware of this issue, it can be dangerously confusing if he/she is not careful.

@tanzhenyu Do you think the default export setting for ResNet should be changed so that use_bias is set to False?

@jaketae sorry for jumping here but yes I think that 'use_bias=False' is the right thing to do.

Hi,
Is there any fix on the way to this issue?
I can't do tf.keras.applications.ResNet50(use_bias=False), since use_bias is a hardcoded set to True here https://github.com/tensorflow/tensorflow/blob/v2.4.1/tensorflow/python/keras/applications/resnet.py#L471
Of course, I can hack the way through it but would be nice to have a fix.
Thanks

Was able to reproduce your issue in Tf Nightly 2.6.0-dev20210524, please find the gist here. Thanks!

Any updates on this? This problem still exists in the newest version. Extra bias terms can lead to extra unnecessary calculations and params. In fact, even for ResNet50, extra bias terms lead to more than 10k extra parameters!

Hi There,
This is a stale issue. As you are using an older version of tensorflow, we are checking to see if you still need help on this issue. Please test the issue with the latest TensorFlow (TF2.7 and tf-nightly). If the issue still persists with the newer versions of TF, please feel free to open it in keras-team/keras repository by providing details about the issue and a standalone code to reproduce the issue. Thanks!
Please note that Keras development has moved to a separate Keras-team/keras repository to focus entirely on only Keras. Thanks!


Incorrect number of docs retrieved on table scan with filter

How to replicate the issue?
Model name: Vehicles
Table count: 50 rows where first 4 aren't registered
Query:
Vehicles
  .scan({
    registered: {
     eq: true
    }
  })
  .limit(10)
  exec()
  .then((items) => {
    console.log(items.length); // 6
  });

Should the number of docs returned not be 10 here since 46 docs match the filter? Please let me know if I am doing something wrong here.

limit is applied before filters.   It's just how DynamoDB works.  It scans the first 10 items then filters the matches.

any solution ? if we need 10 limit with scan equals and result is limit 10 ?

@derit there's no solution, because functionality is not supported by DynamoDB. There are, however, 3 workarounds I can think of: 1) Use sparse indexes instead of filters and query them instead, 2) Do not use limit option, get all data you can get from DynamoDB, truncate your results (obviously very expensive), 3) Use DynamoDB Streams to mirror your data to another datastore, more suitable for this type of query (e.g. ElasticSearch cluster).

@dolsem this is good reference for this issue
https://stackoverflow.com/a/47768751

@derit yes, if you're fine with multiple read operations instead of one, this is a good option too.

Perhaps someone should build a pagination plugin that implements this.


DialogFlow: Enable use of V2beta1 in order to use locations

@googlebot I signed it!

On 22 Dec 2020, at 11:56, google-cla[bot]<EMAIL_ADDRESS>wrote:
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
📝 Please visit https://cla.developers.google.com/ https://cla.developers.google.com/ to sign.
Once you've signed (or fixed any issues), please reply here with @googlebot I signed it! and we'll verify it.
What to do if you already signed the CLA
Individual signers
It's possible we don't have your GitHub username or you're using a different email address on your commit. Check your existing CLA data https://cla.developers.google.com/clas and verify that your email is set on your git commits https://help.github.com/articles/setting-your-email-in-git/.
Corporate signers
Your company has a Point of Contact who decides which employees are authorized to participate. Ask your POC to be added to the group of authorized contributors. If you don't know who your Point of Contact is, direct the Google project maintainer to go/cla#troubleshoot http://go/cla#troubleshoot (Public version https://opensource.google/docs/cla/#troubleshoot).
The email used to register you as an authorized contributor must be the email used for the Git commit. Check your existing CLA data https://cla.developers.google.com/clas and verify that your email is set on your git commits https://help.github.com/articles/setting-your-email-in-git/.
The email used to register you as an authorized contributor must also be attached to your GitHub account https://github.com/settings/emails.
ℹ Googlers: Go here https://goto.google.com/prinfo/https%3A%2F%2Fgithub.com%2Fgoogleapis%2Felixir-google-api%2Fpull%2F7086 for more info.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/googleapis/elixir-google-api/pull/7086#issuecomment-749504477, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARZ2FV555IXKJKQPAI4VNTLSWCCOJANCNFSM4VFRF45Q.

@pedro-skoach These two functions have both made it into V2 now, this can be closed ;)

dialogflow_projects_locations_agent_environments_users_sessions_detect_intent
dialogflow_projects_locations_agent_intents_list


The color select window ' closes ' automatically for ' after 2 seconds . .

Godot version:
Godot 3.3 . .
OS/device including version:
Windows . . .
Issue description:
When I open the ' color select ' it closes after about 2 seconds, or less . . After re-clicking the color select, it is open, indefinitely . . AFAIK, I don't click in the wrong place, not sure if it's a bug . . .

Well, I don't know 'why' it happens, or if it's a bug, I'm too noob, to ' understand ' . . <3
Steps to reproduce:
I ' know ' it happens, when trying to select a new color, in ' editor settings ', for the theme, but it's also happened, in ' materials ' . . Maybe, it's my computer :(( :(( Thx . . .
Minimal reproduction project:
Like above, it's happened in Godot 3.2 but, I'm not sure if it's a bug, or so on, Thanks . . .
Well, not sure if it's a bug, it's just annoying, when it happens 200 times, while making a ' demo ' . . Thanks . . . . Maybe, there's a good reason for it, I'm quite noob, Thanks . . . ps. Godot is rad, so amazing . . :OO :OO . .

Duplicate of https://github.com/godotengine/godot/issues/23626.


Visualization problem

Thank you so much for sharing your project.  I am a beginner in this area, can you help me with deployment and 3D visualization?  Thank you very much.   @HowieMa

Hi, thanks for asking.
Given the pre-trained model, you can run the following two scripts to obtain the predicted 3D coordinates.
# Evaluation (2D)
python run/pose2d/valid.py --cfg experiments-local/h36m/transpose/256_fusion_enc3_GPE.yaml --gpus 0,1,2,3

# Evaluation (3D)
python run/pose3d/estimate_tri.py --cfg experiments-local/h36m/transpose/256_fusion_enc3_GPE.yaml

Once you obtain the 'output_3d_joint.json' file, you can use many tools to visualize the 3D keypoint.
In my paper, I use Matplotlib to implement it and follow the code from https://github.com/mks0601/3DMPPE_POSENET_RELEASE/issues/15.
Here is an example code for Human 3.6M:
def vis_3d_skeleton(kpt_3d, kpt_3d_vis, kps_lines, filename=None):
    fig = plt.figure()
    ax = fig.add_subplot(111, projection='3d')

    cmap = plt.get_cmap('gnuplot')
    colors = [cmap(i) for i in np.linspace(0, 1, len(kps_lines) + 2)]
    colors = [np.array((c[2], c[1], c[0])) for c in colors]

    X, Y, Z = kpt_3d[:, 0], kpt_3d[:, 1], kpt_3d[:, 2]

    for i in range(len(kpt_3d)):
        x, y, z = X[i], Y[i], Z[i]
        ax.scatter(x, y, z, color=colors[i], marker='o')
#         ax.text(x, y, z, str(i))

    for l in range(len(kps_lines)):
        i1, i2 = kps_lines[l]
        x = np.array([X[i1], X[i2]])
        y = np.array([Y[i1], Y[i2]])
        z = np.array([Z[i1], Z[i2]])
        if kpt_3d_vis[i1,0] > 0 and kpt_3d_vis[i2,0] > 0:
            ax.plot(x, y, z, color=colors[l], linewidth=2)

    # boounding box
    max_range = np.array([X.max()-X.min(), Y.max()-Y.min(), Z.max()-Z.min()]).max()
    Xb = 0.5*max_range*np.mgrid[-1:2:2,-1:2:2,-1:2:2][0].flatten() + 0.5*(X.max()+X.min())
    Yb = 0.5*max_range*np.mgrid[-1:2:2,-1:2:2,-1:2:2][1].flatten() + 0.5*(Y.max()+Y.min())
    Zb = 0.5*max_range*np.mgrid[-1:2:2,-1:2:2,-1:2:2][2].flatten() + 0.5*(Z.max()+Z.min())
    for xb, yb, zb in zip(Xb, Yb, Zb):
        ax.plot([xb], [yb], [zb], 'w')

    ax.xaxis.set_ticklabels([])
    ax.yaxis.set_ticklabels([])
    ax.zaxis.set_ticklabels([])

skeleton = [
    [0, 1],
    [0, 4],
    [0, 7],
    [1, 2],
    [2, 3],
    [4, 5],
    [5, 6],
    [7, 8],
    [8, 9],
    [8, 11],
    [8, 14],
    [9, 10],
    [11, 12],
    [12, 13],
    [14, 15],
    [15, 16]
]

kp_vis = np.ones((17, 1))
import json

key = 's_11_act_12_subact_01_000607'

all_results = json.load(open('output_3d_joint.json'))

kpt3d_pred = np.asarray(all_results[key]['GT'])
vis_3d_skeleton(kpt3d_pred, kp_vis, skeleton)
plt.savefig("GT_3D.pdf", bbox_inches='tight')

Hope my code is helpful to you!

Thank you very much for your generous help, and with your help I have received the corresponding results.
I have another question, I would like to ask if I use two cameras as input, then can this project display the 3D inspection results in real time? How much real-time performance can be achieved if you can? Appreciate!!!

If you have only 2 views, you can obtain the 3D results, as triangulation requires at least 2 views.
You can combine "valid.py" and "estimate_tri.py" together to implement the real-time visualization by yourself.
As reported in my paper, the inference time of 2D pose (given images in different views, obtain the 2D pose via our framework) is around 0.032s on 2080Ti (Tab 1). Thus, I think it is enough to perform real-time visualization.
The inference time of triangulation (2D-> 3D) and visualization with Matplotlib (the above code) can be varied on different devices, as they are a CPU-only operations.

Exciting news, thanks for your prompt reply.


Name is confusing against parcel-bundler/parcel

Can this be renamed to help with search optimization for both projects?

This is really confusing indeed, Parcel is a 20K stars project and is quite popular in the JS world.

Already confusing

Thank you for the feedback. Indeed it's. I think we should rename it. Do you have any suggestions?

Just renamed to the repository and the package to parcello. I am closing the issue.


Fixed Toradex imx8 patches not applying

Toradex made some changes in their latest Kirkstone BSP layers which stops the Mender integration patches from being applied.
I manually re-applied the patches and wrote back the correct changes to the original patch files.

Can you comment @drewmoseley / @leon-anavi ?

Hi @Lachlan-Frawley, @TheYoctoJester,
As far as I can see these changes affect only Toradex Apalis i.MX8 and Toradex BSP 6.0.0, right? If so probably the git commit message should note it. Also the change in u-boot-toradex_%.bbappend is kind of redundant because it just removes a new line.
Although Toradex BSP 6.0.0 is based on Kirkstone it is not the latest release because 6.1.0 was released on January 23, 2023.
I am a bit confused because according to the BSP changelogs Toradex states for 6.0.0:

Support for Apalis iMX8 and Colibri iMX8X is planned in the next releases

and for 6.1.0:

Apalis iMX8 Support was added in the downstream-based BSP

Regarding these circumstances why do we need rebasing patches for Apalis iMX8 in BSP 6.0.0?
I tried building  tdx-reference-minimal-image following the tutorial in Mender Hub for Apalis iMX8 with BSP 6.0.0 and linux-toradex failed because of missing device tree target 'arch/arm64/boot/dts/freescale/imx8qm-apalis-v1.1-ixora-v1.2.dtb'. I haven't looked in details but this was kind of expected considering the description of the BSPs from Toradex.
I don't have Apalis iMX8 around here so I can do full testing but I guess it will be better to migrate meta-mender-community to Toradex BSP 6.1.0 and after that fix patches accordingly.
Best regards,
Leon

Sorry, I suppose I should be more specific. I pulled the latest Toradex Kirkstone layers and found that they had changed the defconfig for the apalis-imx8 in u-boot-toradex, seen here: https://git.toradex.com/cgit/u-boot-toradex.git/commit/?h=toradex_imx_lf_v2022.04&id=b1103fcd165570265cab0145a60707cd168e9fab
This caused the patches to not apply for Mender integration.

Hi guys. My apologies for the delayed response. I've been traveling for Embedded World and my focus has been elsewhere.
I agree with @leon-anavi that we should wait for official apalis-imx8 support in the Toradex BSP. It's due pretty soon so rather than spending time now only to potentially have to change it if there are any late-breaking changes from the BSP team, I think we are better just waiting a bit.  If you need this working now you can use the changes here locally.
I'll check with the team and see if there is any update to the actual BSP 6.x release for this platform and we can then decide how best to proceed.

Sure, that sounds pretty reasonable. Thanks for all the input.


fix:various fixes and improvements in install script

removes the need for jq and sudo
better logic for checking checksums
adds an argument so that the user can install it in any directory
asks for a password if sudo is required

(base) ➜  witness git:(fix_install_script) ./install-witness.sh
Latest version of Witness is 0.1.12
Downloading for linux amd64 from https://github.com/testifysec/witness/releases/download/v0.1.12/witness_0.1.12_linux_amd64.tar.gz
expected checksum: 7bc55e03a376577313a2e546b826173e6ae02ba7ff49d9c686fb55b084bd5a12
file checksum:     7bc55e03a376577313a2e546b826173e6ae02ba7ff49d9c686fb55b084bd5a12
You don't have permission to move the file, if you would like to install Witness to /usr/local/bin, please enter your password.
You can also install Witness to a different directory by running this script with the directory as the first argument.
[sudo] password for nkennedy:
witness v0.1.12-f4304f5
Witness v0.1.12 has been installed at /usr/local/bin/witness
(base) ➜  witness git:(fix_install_script) ./install-witness.sh .
Latest version of Witness is 0.1.12
Downloading for linux amd64 from https://github.com/testifysec/witness/releases/download/v0.1.12/witness_0.1.12_linux_amd64.tar.gz
expected checksum: 7bc55e03a376577313a2e546b826173e6ae02ba7ff49d9c686fb55b084bd5a12
file checksum:     7bc55e03a376577313a2e546b826173e6ae02ba7ff49d9c686fb55b084bd5a12
witness v0.1.12-f4304f5
Witness v0.1.12 has been installed at /home/nkennedy/proj/witness/witness
(base) ➜  witness git:(fix_install_script) ✗ rm witness
(base) ➜  witness git:(fix_install_script)


[release-1.7] Update the fetcher to pick the correct kafka sources

Fixes: #1212

@pierDipi

@pierDipi Will update the main for sure.


fix typo in frame rate from 1/960 to 1/60

also fix this issue: https://github.com/faiface/gui/issues/2

i'm moved on mac os catalina - don't see this issue -  #2 here, but don't sure - is it my fix, or fix in catalina...


Handsontable doesn't auto-adjust on resize

I've noticed that sometimes Handsontable doesn't resize properly:

Anyone else noticed this?

I've not, but then I haven't done much resizing. Wonder if this is an elecron thing, or a Handsontable thing? If it's an electron thing, we might be able to redraw the table on a resize event or something


Iss18 geoutils tests

Codecov Report

Merging #26 into dev will increase coverage by 10.39%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##             dev      #26       +/-   ##
==========================================
+ Coverage   29.3%   39.69%   +10.39%
==========================================
  Files         11       12        +1
  Lines        604      655       +51
==========================================
+ Hits         177      260       +83
+ Misses       427      395       -32

Impacted Files
Coverage Δ

tests/test_utils/test_geo.py
100% <100%> (ø)

cw_geodata/utils/geo.py
33.86% <100%> (+17.81%)
:arrow_up:

Continue to review full report at Codecov.

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


Broken async/await in the VM

It's pretty tough to narrow in on a minimal repro, here's the simplest I've been able to get:
import 'dart:async';

void main() async {
  var t = new Node('outer', [
    new Node('missing'),
    new Node('a', [
      new Node('b', [
        new Node('c'),
        new Node('d', [new Node('e')]),
        await new Future.value(new Node('async_inner')),
      ]),
    ]),
    await new Future.value(new Node('async_outer')),
  ]);
  print(t);
}

class Node {
  final List<Node> nested;
  final String name;

  Node(this.name, [this.nested]);

  @override
  String toString() => '<$name:[${nested?.join('\n')}]>';
}

Expected output:
<outer:[<missing:[null]>
<a:[<b:[<c:[null]>
<d:[<e:[null]>]>
<async_inner:[null]>]>]>
<async_outer:[null]>]>

VM output:
<outer:[<c:[null]>
<a:[<b:[<c:[null]>
<d:[<e:[null]>]>
<async_inner:[null]>]>]>
<async_outer:[null]>]>

Note that the first missing has been replaced by an extra c.
The VM produces the expected output with --no-preview-dart-2. Dart2js (at least in dartpad, should be using the CFE) produces the correct output

cc @a-siva @kmillikin

I checked this with dartdevc and dartdevk and both work fine, which indicates to me this is probably a vm specific issue.

Taking a look at a script snapshot from the VM we can see it reusing the variable :async_temporary_1 for both the 'missing' node and 'c' node which is causing the problem. Since other backends don't exhibit this behavior this may be something do with the way the VM is using the frontend, but it does look like a kernel issue.

@a-siva - the "missing" is showing with ddk and dart2js.  @natebosch 's comment above in addition seems to point at a backend problem with the vm.

I can see the bug in the kernel when I run dart --snapshot_kind=script --snapshot=out.dill and then dump the kernel.

I can see the bug in the kernel when I run dart --snapshot_kind=script --snapshot=out.dill and then dump the kernel.

Sounds like a kernel transformation that the vm is applying then?

There is a Kernel to Kernel transformation that tries to minimize the number of temporary variables it uses to name intermediate expression.  It sounds like it has a bug.  I'll take a look tomorrow.

ping!

@kmillikin has been OOO.
I'm adding tests in https://dart-review.googlesource.com/c/sdk/+/63821 and have a crude fix in https://dart-review.googlesource.com/c/sdk/+/63823. The fix is not great though and we should probably find a better solution asap.
I'm unfamiliar with the code, but will give it a try...

Fixed with 3a1b09dc63542384e2c4a6016a0e3486fda4c4d4.


add ability to specify shortocodes directory from bart

Fixes a minor bug where bart check would pass but complain about undefined helpers when shortcodes are used by adding the ability to specify the shortcodes directory using an optional shortcodes flag.
Signed-off-by: Karthik Ganeshram<EMAIL_ADDRESS>

We do have docs on them. I will update the docs for this change along with this PR.


Replaced resizableActivity to resizeableActivity

Fixed a typo in the Android manifest where 'resizableActivity' was incorrectly written as 'resizeableActivity'.

Can one of the admins verify this patch?

@AppInventorWorkerBee, it's ready to review.

@AppInventorWorkerBee ok to test


market extensions issue

Issue Type: Bug
hi, I'm getting a marketplace issue. when I am want to go extensions marketplace I'am get a message is " we can not to connect marketpalce at this time, please try again later. "
so my connection not problem but I can not install extensions.
can you help me? what can I do?
VS Code version: Code 1.48.2 (a0479759d6e9ea56afa657e454193f72aef85bd0, 2020-08-25T10:13:11.295Z)
OS version: Windows_NT x64 10.0.15063

System Info

Item
Value

CPUs
Intel(R) Celeron(R) CPU  N3060  @ 1.60GHz (2 x 1600)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: disabled_offoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_off_okwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
3.91GB (0.91GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions: none

@melik65 Do you still see the same issue?

@kieferrm yes sir

Can you show me a screenshot of VS Code with the issue?

Can you show me a screenshot of VS Code with the issue?

Can you show me a screenshot of VS Code with the issue?

I'm using normaly wifi connection

I'm having the same issue after updating VS Code

I'm having the same issue after updating VS Code

I am also facing this issue.

II found a solution to the problem I got about this, I restarted say on the
router and the problem was resolved. hope it helps ...
Pada tanggal Sab, 19 Des 2020 22.06, K.M. AL-AMIN<EMAIL_ADDRESS>menulis:

I am also facing this issue.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/vscode/issues/106485#issuecomment-748486059,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANN7JB22NBHHCPA4T67V4E3SVS6OZANCNFSM4RHKPOOQ
.


Service homematic.set_device_value works badly with HmIP-SMO

I run the latest version of pyhomematic and Home Assistant.
service: homematic.set_device_value
data:
  address: 00095BE99CC76D
  param: MOTION_DETECTION_ACTIVE
  interface: ip_ccu3_2
  value: 'True'
  channel: 1
  value_type: boolean

service: homematic.set_device_value
data:
  address: 00095BE99CC76D
  param: MOTION_DETECTION_ACTIVE
  interface: ip_ccu3_2
  value: 'False'
  channel: 1
  value_type: boolean

Describe the bug
I am trying to set the state of the MOTION_DETECTION_ACTIVE variable with this service. Everything works fine if I set the state of the variable from False to True. However, when you try to change from True to False, the state does not change. Setting a variable using the CCU3 GUI works fine. There are no errors in the logs. I  don't know where the problem is :(
Screenshots

You are sending the strings 'True' and 'false'. As both are none-empty strings, the CCU views them as a boolean True. Try it like this:
service: homematic.set_device_value
data:
  address: 00095BE99CC76D
  param: MOTION_DETECTION_ACTIVE
  interface: ip_ccu3_2
  value: false
  channel: 1
  value_type: boolean

Everything works fine now :-) Then it's a problem invoking the service by Developer Tools in Home Assistant.

gives in yaml mode

Who can improve it?
Examples in the documentation https://www.home-assistant.io/integrations/homematic/ are correct, but I didn't notice the difference before. Thanks for the help.


Components declared in iosMain can not find the merged interface on Kotlin 2.x

When I declare a component in iosMain, we can not access the resulting merged interface, as it will be generated in the iosSimulatorArm64 gen folder (or iosArm64, etc), which then breaks compilation.
This is related to the recent KmpComponentCreate feature added in kotlin-inject 0.7.x, which works around the same source set isolation in K2. https://github.com/evant/kotlin-inject/blob/v0.7.0/docs/multiplatform.md. Added in https://github.com/evant/kotlin-inject/pull/370 by @eygraber.
Hiding the interface, as per #8, and making the inheritance automatic may well fix this.
One way around this would be to declare everything in commonMain, but that doesn't always work when we need to declare platform-specific inputs (and outputs) on the component.
Repro:
src/iosMain/kotlin/com/foo/bar:
@ApplicationScope
@MergeComponent
@Component
abstract class ApplicationObjectGraph : ApplicationObjectGraphMerged

This doesn't compile, as it can't find ApplicationObjectGraphMerged. ApplicationObjectGraphMerged is generated, but in build/generated/ksp/iosSimulatorArm64/iosSimulatorArm64Main/kotlin/com/foo/bar (for sim builds).

Another way around this is to declare the component in every iOS target source set (iosSimulatorArm64Main,iosArm64Main, etc) as copies of each other. That's probably what I'll do for now to unblock.

Just checking, are you saying that KmpComponentCreate is causing the issue, or you would do something similar to resolve the issue?

Sorry, KmpComponentCreate solves a similar issue.

For my understanding, does this happen with KSP1 or KSP2? Or does KSP make no difference?

We're using KSP1 and compiling with K2. It's K2 where the change is iirc.

It happens because of Separation of common and platform sources during compilation introduced with Kotlin 2.0.0