edgedb: 5.3.0 -> 5.4.1

Things done
Closes #345808

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

hashes don't match https://github.com/NixOS/nixpkgs/pull/346876/checks?check_run_id=31139219366

hashes don't match https://github.com/NixOS/nixpkgs/pull/346876/checks?check_run_id=31139219366

it seems like the hash mismatch happens when building on aarch64-linux
what's the course of action here

I've tested on two different aarch64-linux machines, and I don't get hash mismatch,
lets try again :shrug:
@ofborg test edgedb

@jfvillablanca sorry forgot formalities
PR description and commit message should acompany link to release notes and or diff
https://github.com/NixOS/nixpkgs/blob/master/pkgs/README.md#commit-conventions

@jfvillablanca sorry forgot formalities
PR description and commit message should acompany link to release notes and or diff
https://github.com/NixOS/nixpkgs/blob/master/pkgs/README.md#commit-conventions

i think upstream for edgedb-cli doesn't provide release notes; only the main edgedb repo provides one and it's only up to the minor version

when no change log available link to diff is usually added something like 648806da1f2eb4e70e9d1d88847c0377722643f0

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

1 package built:

edgedb

@mattpolzin not sure what is meant by "allowance for the MIT license"
https://github.com/edgedb/edgedb-cli/blob/master/README.md#license does that answer your question ?

https://github.com/edgedb/edgedb-cli/blob/master/README.md#license does that answer your question ?

It does! Thanks. I made the mistake of visiting their homepage, then hitting the GitHub icon, and then noting that the edgedb/edgedb repository is only licensed under Apache 2. I failed to notice the derivation was pulling from a different repository under that org.


CB-13641: (windows) allow for transparent splash screen background co…

…lor.

Platforms affected
windows
What does this PR do?
allows for configuration of transparent splash screen background color.
What testing has been done on this change?
built app with forked/updated repository and manually tested splash screen background color configuration with RGB and 'transparent' values.
Checklist

[x ] Reported an issue in the JIRA database
[ x] Commit message follows the format: "CB-3232: (android) Fix bug with resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform affected.
[ x] Added automated test coverage as appropriate for this change.

Closing for update.

Hm? You could have just committed the changes to your IndieSW:master branch for them to show up here automatically.


Attack throws "Cannot read properties of undefined" with all actors

Foundry version 12.330
DCC-QoL version 0.0.23
Other Modules: none
Steps to reproduce: Foundry + DCC Core compendium, enable QoL, Set all settings to default values. Drag Ogre token (or any other) to scene, double click, go to equipment, click dice to attack. Error thrown, nothing in chat box.

Strange! Which version of the DCC system are you using?
Will investigate tomorrow and report back. Thanks, @dimonic.

I'm not able to reproduce this issue; are you using DCC system version 0.45 or higher?

Closing issue without further feedback, can re-open if we can find a way to reproduce.


outdated link more info gMSA

Hi Docs team,
The link in 'For more information, see Group Managed Service Accounts' refers to outdated documentation. I believe https://docs.microsoft.com/en-us/windows-server/security/group-managed-service-accounts/group-managed-service-accounts-overview is the current page you'd want to refer to.
Regards, inge

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

ID: 9b3831a3-6c86-243c-4b07-8960e4d06d7b
Version Independent ID: dfd7599d-88eb-99f2-c227-0c9dc82bfd87
Content: Configure Windows service accounts and permissions - SQL Server
Content Source: docs/database-engine/configure-windows/configure-windows-service-accounts-and-permissions.md
Product: sql
Technology: configuration
GitHub Login: @rwestMSFT
Microsoft Alias: randolphwest

@ingebeumer Thank you for your submission. I'll look into this.

This change has been approved and will be merged during our usual process. You should see the updated link in the next day or so.

#please-close


Update free-courses-en.md

Kody Simpson Java And C++
What does this PR do?
Add resource(s)
For resources
Description
Kody Simpson's Java and C++ Tutorials
Why is this valuable (or not)?
Provide 100 and 50 videos covering alomost every part of java basics and c++
How do we know it's really free?
its a youtube video playlist
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Thanks, and welcome to free-programming-books!


Hi spijkervet, when youreproduce the experiment on CIFAR, what is the image size and batch size you set?

Besides, the color_jitter i think should set to s=0.5


js receiveMessage not fired

Hi
I saw that for edge you said the first version with support was 83. I am using edge 86.0.622.51 and I can call c# from js with window.external.sendMessage. However when I attempt to call js from c# the window.external.receiveMessage event handler is not fired. If I upgrade to Canary 88.0.680.0 then everything works as expected.
Also I did see that you said WPF desktop support would continue for Mobile Blazor Bindings (https://github.com/jspuij/TwokaB/issues/24#issuecomment-653725466) but I also wanted to confirm that these event handlers are not going away and that its expected you use razor pages. Atm I am doing a proof of concept using this as a light weight alternative to electron like in the example this is based off of (https://blog.stevensanderson.com/2019/11/18/2019-11-18-webwindow-a-cross-platform-webview-for-dotnet-core/).
My goal is to make a vuejs project with .net core back end. I don't have interest in razor pages atm. I want to be able to just drop a compiled vuejs/ts project into the wwwroot folder and have it magically work.
Thanks for your project,
Mitch

Sorry after further testing the event is fired. For some reason the alert function doesn't work, but it did execute my dom manipulation.


Refreshing a token from DigitialOcean gives a 403

When I refresh a token from my MacBook everything is fine.
But from my DigitalOcean server I get a 403.
Why?

Please see https://developer.tesla.com/docs/fleet-api#help-and-support.
In order to improve our response times, the scope of the Github issues tracker is being narrowed to the Golang code in the SDK. Backend issues should be reported to the Fleet API support team.


Merge Bedrock Knowledge Base

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Unverified changes, but theoretically should still work.


Cleanup azureclient

What this PR does / why we need it:
Cleans up pkg/util/azureclient

Removes unused methods from the interfaces
Removes unused interfaces/clients
Standardises methods in *_addons.go to use original clients explicitly

Test plan for issue:
Unit tests and e2e
Is there any documentation that needs to be updated for this PR?
No, just refactoring.

azp run e2e

/azp run e2e

There is disk e2e failing, waiting for second run to see if it is related to code change.

There was a conflict. I rebased. Please take another look.


Research Pyodide testing framework

I have no previous experience with Pyodide, but there is a default testing suite in their documentation:
https://pyodide.org/en/stable/development/testing.html

Thanks all: I think using regular PyTest run with Github Actions on PR's might be okay too for the engine unit testing. For integration testing we'll probably need to run tests in a javascript testing framework with Pyodide.

Removing the rules-engine tag. The rules engine has set up its unit testing framework (#59 ) and it sounds like integration testing will be handled in javascript.


⚠ ClamAV has degraded performance

In a4146e0, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 67 ms

Resolved: ClamAV performance has improved in 1dbe2ec.


bad code show case

Try export onnx file

Preparing review...

PR Analysis

🎯 Main theme: The main theme of this PR is to add a new functionality to export a PyTorch model to ONNX format.
📝 PR summary: This PR introduces a new class SubTreeExtractor and a function ddd(). The SubTreeExtractor class is a simple PyTorch model that adds two inputs. The function ddd() currently only contains a print statement. The PR also includes an example of exporting the SubTreeExtractor model to ONNX format.
📌 Type of PR: Enhancement
🧪 Relevant tests added: No
⏱ Estimated effort to review [1-5]: 2, because the PR is relatively small and straightforward. However, it lacks proper implementation and testing.
🔒 Security concerns: No

PR Feedback

💡 General suggestions: The code added in this PR lacks proper implementation and testing. The function ddd() only contains a print statement and doesn't seem to serve any purpose. The SubTreeExtractor class is not properly integrated into the existing codebase. It would be better to provide a more complete implementation and add relevant tests.


Bugfix issue 58

Bugfixes for Savu Recon
Also added option to specify algorithm in MagicGUI since it wasn't there before.
This PR fixes Issue #58
Tested on Win's data

Codecov Report
Base: 14.17% // Head: 14.08% // Decreases project coverage by -0.09% :warning:

Coverage data is based on head (2a5fd07) compared to base (a1e12dc).
Patch coverage: 0.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##              dev      #59      +/-   ##
==========================================
- Coverage   14.17%   14.08%   -0.10%
==========================================
  Files          15       15
  Lines        1742     1754      +12
==========================================
  Hits          247      247
- Misses       1495     1507      +12

Impacted Files
Coverage Δ

src/Ot2Rec/magicgui.py
68.57% <ø> (ø)

src/Ot2Rec/params.py
24.56% <0.00%> (ø)

src/Ot2Rec/savurecon.py
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


fix(graphql): explicitly check input values for undefined

Otherwise boolean and null values get coerced which will render
undesired result.

Sorry again. Had the fix on master and wanted to change that.
https://github.com/calebmer/postgraphql/pull/57

Looks good to me 👍


Can't type credentials

XFCE Manjaro Linux 5.10.36-2-MANJARO
When I open the program, it shows settings and asks for my credentials. I can click on the buttons and on the text fields but when I try to type, nothing gets written, and whatever I type gets typed on whatever the window was that I had opened before opening psst.
If I click save and go to the main app and try to type there (eg the search bar), typing works fine, but when i open settings again, it doesnt send the text to it, it only sends it to the main app. This means it's probably a problem with the settings specifically.
This is pretty crucial for me because I can't sign in at all.

I am having the same issue on Artix (open-rc port of Arch linux).

Seems like an issue in Linux Druid key handling.

if i could figure out the syntax for username and password in the config.json file I could just input it manually in there.  but I have no idea what it should look like.
{
"credentials": null,
"audio_quality": "High",
"theme": "Dark"
}

The credentials field contains a token retrieved from Spotify, it's unfortunately not possible to put username & password there.
Tangential: Psst really needs somebody to take care of Linux and Windows platforms, I've created #54 for this.

What generates or pulls in that token?  If I can figure out what my token is I can just input it directly to the config.json file

@jpochyla @KaMiila I'm looking into the issue with username/password entry on linux

@Liberatys I've pushed an update that uses the latest Druid master. If it doesn't help, let's report the issue upstream.

@jpochyla The changes in dependencies did not resolve the issue 🤔 I found a way to make the inputs work on Linux and also show the window on the proper screen if you are using multiple screens. https://github.com/jpochyla/psst/pull/55. I don't know in what way that influences the appearance on macOS.

I was able to work around the problem by entering my username/password in the config like this:
"credentials": {
  "username": "my-username",
  "auth_data": "my-password",
  "auth_type": 0
}

I don't know in what way that influences the appearance on macOS.

Only in very minor way, let's keep it like this.

I was able to work around the problem by entering my username/password in the config like this:

Oh, great idea! I totally forgot the type is an enum.
So I'm considering the issue solved by #55, closing. Thank you everbody!

what about facebook login?

@Hexality I just found out that if you are logged in w/ a first party auth (e.g. facebook or google), you can still setup a device password. Go to your spotify account and click the tab "Set device password" or just click this link https://www.spotify.com/us/account/set-device-password/.
@jpochyla it might be worth adding this to the readme for users that didnt sign up w/ a username & password.


⚠ Bofrost.fr has degraded performance

In b105f49, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1484 ms

Resolved: Bofrost.fr performance has improved in fcf0941 after 310 days, 19 hours, 17 minutes.


Task :sechub-pds:ensureLocalhostCertificate FAILED

Hello, please I'm planning to start contributing to this repo by working on this issue https://github.com/mercedes-benz/sechub/issues/54
Then, I am following this tutorial  https://github.com/mercedes-benz/sechub/issues/16 to get started but I still get failures on this task.
Any idea about what's wrong ?
Branch develop
Java version 17
fanjups@fanjups:/mnt/c/Users/jupsf/OneDrive/Documents/GitHub/sechub$ java --version
openjdk 17.0.7 2023-04-18
OpenJDK Runtime Environment (build 17.0.7+7-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 17.0.7+7-Ubuntu-0ubuntu120.04, mixed mode, sharing)

fanjups@fanjups:/mnt/c/Users/jupsf/OneDrive/Documents/GitHub/sechub$ gradle ensureLocalhostCertificate

> Configure project :
BUILD versioning
- Client  :0.0.0 [0.0.0-6ba610c-20230531001939]
- Server  :0.0.0 [0.0.0-6ba610c-20230531001939]
- PDS     :0.0.0 [0.0.0-6ba610c-20230531001939]
- PDS-Tools :0.0.0 [0.0.0-6ba610c-20230531001939]
- Libraries :0.0.0 [0.0.0-6ba610c-20230531001939]
- Checkmarx Wrapper :0.0.0 [0.0.0-6ba610c-20230531001939]
- OWASP-ZAP Wrapper :0.0.0 [0.0.0-6ba610c-20230531001939]

Time elapsed to build versions: 5 minutes, 12.494 seconds

> Task :sechub-pds:ensureLocalhostCertificate FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':sechub-pds:ensureLocalhostCertificate'.
> A problem occurred starting process 'command '/mnt/c/Users/jupsf/OneDrive/Documents/GitHub/sechub/sechub-pds/dev-ensure_localhost_certificate.sh''

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 5m 19s
3 actionable tasks: 1 executed, 2 up-to-date

Thanks @de-jcup for your suggestions.  After using other directory than OneDrive in WSL, it still fails but git bash works 💯.
WSL
fanjups@fanjups:/mnt/c/GitHub/sechub$ gradle ensureLocalhostCertificate

> Configure project :
BUILD versioning
- Client  :0.0.0 [0.0.0-1d43ddd-20230531190732]
- Server  :0.0.0 [0.0.0-1d43ddd-20230531190732]
- PDS     :0.0.0 [0.0.0-1d43ddd-20230531190732]
- PDS-Tools :0.0.0 [0.0.0-1d43ddd-20230531190732]
- Libraries :0.0.0 [0.0.0-1d43ddd-20230531190732]
- Checkmarx Wrapper :0.0.0 [0.0.0-1d43ddd-20230531190732]
- OWASP-ZAP Wrapper :0.0.0 [0.0.0-1d43ddd-20230531190732]

Time elapsed to build versions: 4 minutes, 48.142 seconds

> Task :sechub-pds:ensureLocalhostCertificate FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':sechub-pds:ensureLocalhostCertificate'.
> A problem occurred starting process 'command '/mnt/c/GitHub/sechub/sechub-pds/dev-ensure_localhost_certificate.sh''

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 4m 54s
3 actionable tasks: 1 executed, 2 up-to-date

Git Bash
jupsf@fanjups MINGW64 /c/github/sechub (develop)
$ gradle ensureLocalhostCertificate
Starting a Gradle Daemon (subsequent builds will be faster)

> Configure project :
BUILD versioning
- Client  :0.0.0 [0.0.0-1d43ddd-20230531191425]
- Server  :0.0.0 [0.0.0-1d43ddd-20230531191425]
- PDS     :0.0.0 [0.0.0-1d43ddd-20230531191425]
- PDS-Tools :0.0.0 [0.0.0-1d43ddd-20230531191425]
- Libraries :0.0.0 [0.0.0-1d43ddd-20230531191425]
- Checkmarx Wrapper :0.0.0 [0.0.0-1d43ddd-20230531191425]
- OWASP-ZAP Wrapper :0.0.0 [0.0.0-1d43ddd-20230531191425]

Time elapsed to build versions: 1.135 seconds

> Task :sechub-pds:ensureLocalhostCertificate
Start creating localhost certificate
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 3,650 days
        for: CN=localhost, OU=ID
Created file /c/GitHub/sechub/sechub-pds/src/main/resources/certificates-untracked/generated-dev-localhost-keystore.p12

> Task :sechub-server:ensureLocalhostCertificate
Start creating localhost certificate
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 3,650 days
        for: CN=localhost, OU=ID
Created file /c/GitHub/sechub/sechub-server/src/main/resources/certificates-untracked/generated-dev-localhost-keystore.p12

> Task :sechub-webui:ensureLocalhostCertificate
Start creating localhost certificate
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 3,650 days
        for: CN=localhost, OU=ID
Created file /c/GitHub/sechub/sechub-webui/src/main/resources/certificates-untracked/generated-dev-localhost-keystore.p12

BUILD SUCCESSFUL in 1m 44s
5 actionable tasks: 5 executed

Cloning the repo directly in wsl instead of cloning on windows then accessing folder  from wsl works also perfectly
fanjups@fanjups:/home/sechub$ sudo ./gradlew ensureLocalhostCertificate

> Configure project :
BUILD versioning
- Client  :0.0.0 [0.0.0-158e2de-20230603070537]
- Server  :0.0.0 [0.0.0-158e2de-20230603070537]
- PDS     :0.0.0 [0.0.0-158e2de-20230603070537]
- PDS-Tools :0.0.0 [0.0.0-158e2de-20230603070537]
- Libraries :0.0.0 [0.0.0-158e2de-20230603070537]
- Checkmarx Wrapper :0.0.0 [0.0.0-158e2de-20230603070537]
- OWASP-ZAP Wrapper :0.0.0 [0.0.0-158e2de-20230603070537]

Time elapsed to build versions: 0.177 seconds

> Task :sechub-pds:ensureLocalhostCertificate
Start creating localhost certificate
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 3,650 days
        for: CN=localhost, OU=ID
Created file /home/sechub/sechub-pds/src/main/resources/certificates-untracked/generated-dev-localhost-keystore.p12

> Task :sechub-server:ensureLocalhostCertificate
Start creating localhost certificate
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 3,650 days
        for: CN=localhost, OU=ID
Created file /home/sechub/sechub-server/src/main/resources/certificates-untracked/generated-dev-localhost-keystore.p12

> Task :sechub-webui:ensureLocalhostCertificate
Start creating localhost certificate
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 3,650 days
        for: CN=localhost, OU=ID
Created file /home/sechub/sechub-webui/src/main/resources/certificates-untracked/generated-dev-localhost-keystore.p12

BUILD SUCCESSFUL in 3s
5 actionable tasks: 3 executed, 2 up-to-date


AccessList Has Stopped Working After Switching From Flexible SSL to Full (Strict) SSL on CloudFlare

I'm unable to post on Ngninx Proxy Manager reddit due to the restricted user.
Describe the bug
I'm currently experiencing the issue on Nginx Proxy Manager with Access Lists function right after I changed the Cloudflare SSL options. I realized that I've received the warning about exposing my origin IP address via DNS records on the multiple sub-domains on Cloudflare. I changed these sub-domains to be proxied in order to protect my origin IP address. However, it creates a different issue when I tried to visit my domain that shows the error message (ERR_TOO_MANY_REDIRECTS). I resolved this issue by switching from Flexible SSL to Full(Strict) SSL on CloudFlare. I'm currently seeing the page "Forbidden 403 error" when I enable the access list with my own public IP address. I just checked the proxy_host log to see the specific visitor IP, myself, and noticed that it shows different IP address, instead of my Public IP (Cloudflare's IP address's effect on it). I've been researching on this one, it seems that I will need to restore original visitor IPs in this case.
Version of Nginx Proxy Manager

(2.8.0)

Expected behavior
NGNIX Proxy Manager should be able to detect the original visitor IPs in order to match the specific IP address on Access List configuration.
Operating System

Ubuntu 20.04.2 LTS (Focal Fossa)

Screenshots

This is how Cloudflare is supposed to work, if you have Proxied-DNS enabled.
As NPM can not see your actual IP address, but sees the Cloudflare proxied IP address. You need to use the Advanced option for the proxy host and enter the following:
set_real_ip_from <IP_ADDRESS>/20;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/18;
set_real_ip_from <IP_ADDRESS>/18;
set_real_ip_from <IP_ADDRESS>/20;
set_real_ip_from <IP_ADDRESS>/20;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/17;
set_real_ip_from <IP_ADDRESS>/15;
set_real_ip_from <IP_ADDRESS>/13;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/13;
set_real_ip_from <IP_ADDRESS>/14;
set_real_ip_from 2400:cb00::/32;
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 2a06:98c0::/29;
set_real_ip_from 2c0f:f248::/32;

real_ip_header CF-Connecting-IP;

You can find the latest Cloudflare IP addresses via: https://www.cloudflare.com/en-gb/ips/
You can then use the Access ACL option to only permit your home router IP for example and then it works:
Only potential problem for the future is when Cloudflare updates their IP addresses, your list will be out of date. Maybe incorporate this into NPM?
Source: https://support.cloudflare.com/hc/en-us/articles/200170786-Restoring-original-visitor-IPs
Additional Info: https://danielmiessler.com/blog/getting-real-ip-addresses-using-cloudflare-nginx-and-varnish/

@apainter2 I've given this a shot multiple times and it still does not work. also, you do not need to pull the ips yourself as NPM does it for you It fou look in the logs on boot up it does log it pulling Cloudflare ip's. The ips can be found in this file of the NPM container : /etc/nginx/conf.d/include/ip_ranges.conf

@apainter2 did you have to put anything in the advanced section of your host? Also what version of NPM are you using?

@NajibNour your right those IP ranges are in the file you linked.
So, yes I have placed the following into the advanced section of my proxy-host for it to pass on the proper visitor IP address to allow the ACL to work when using cloudflare:
 real_ip_header CF-Connecting-IP;

@apainter2 hmm I’ve given that a shot previously, but I have not had any luck. Where did you place the file for the ips and what where it’s contents?

@NajibNour the list of Cloudflare IPs? I've left them where you referenced them, and only added the above-advanced option to the Advanced section.
The CF IPs are pre-populated within the /etc/nginx/conf.d/include/ip_ranges.conf file
You can verify by connecting to the container
docker exec -it name-of-npm-container /bin/bash
once connected to the container:
cat /etc/nginx/conf.d/include/ip_ranges.conf

@apainter2 yhea I figured just thought I would ask to be safe. The real ip header does not work for me. I will have to do some investigating. How to you view current established connection ip’s from within the NPM container? I’ve noticed there’s allot of tools that are not installed to view connected ips

@NajibNour I list out the contents of the proxy-hosts ngnix access log:
within the NPM data directory which you mapped, in my instance as an example:
tail -f /home/USER/docker_files/npm/data/logs/proxy_host-XX.log
XX is the number linked to your proxy-host entry in the GUI.
In my case a real-world example, with the real_ip_header CF-Connecting-IP; set
[03/Jun/2021:20:47:28 +0000] - 200 200 - GET https meh.example.domain.tld "/login" [Client **<IP_ADDRESS>**] [Length 3533] [Gzip -] [Sent-to <IP_ADDRESS>] "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like  Gecko) Version/14.1.1 Mobile/15E148 Safari/604.1" "-"
So, <IP_ADDRESS> is my mobile phone providers IP block range.
and without it set:
`[03/Jun/2021:20:49:46 +0000] - 200 200 - GET https meh.example.domain.tld "/login" [Client <IP_ADDRESS>] [Length 3541] [Gzip -] [Sent-to <IP_ADDRESS>] "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.1 Mobile/15E148 Safari/604.1" "-"``
Where as <IP_ADDRESS> is: one of Cloudflares proxy IP addresses.

@apainter2 Thanks for this. I've just given it shot. It does show the proper Ip address in the logs. the following does work "real_ip_header CF-Connecting-IP;"
But access lists are still an issue. I have created an access list with my ip address as allow and everything else as deny and it is set to satisfy any. I still get returned a 403. Logs it shows up as 403 as well.

Please Disregard, ACL's Do work it's just a little finicky. You must have the host enabled, Create the ACL, Then set the ACL then Unset then set The ACL. That was the only way I could get it to work.

This is how Cloudflare is supposed to work, if you have Proxied-DNS enabled.
Just had the same issue myself, and here is my solution.
As NPM can not see your actual IP address, it sees the Cloudflare proxied IP address. You need to use the Advanced option for the proxy host and enter the following:
set_real_ip_from <IP_ADDRESS>/20;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/18;
set_real_ip_from <IP_ADDRESS>/18;
set_real_ip_from <IP_ADDRESS>/20;
set_real_ip_from <IP_ADDRESS>/20;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/17;
set_real_ip_from <IP_ADDRESS>/15;
set_real_ip_from <IP_ADDRESS>/13;
set_real_ip_from <IP_ADDRESS>/22;
set_real_ip_from <IP_ADDRESS>/13;
set_real_ip_from <IP_ADDRESS>/14;
set_real_ip_from 2400:cb00::/32;
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 2a06:98c0::/29;
set_real_ip_from 2c0f:f248::/32;

real_ip_header CF-Connecting-IP;

You can find the latest Cloudflare IP addresses via: https://www.cloudflare.com/en-gb/ips/
You can then use the Access ACL option to only permit your home router IP for example and then it works:
Only potential problem for the future is when Cloudflare updates their IP addresses, your list will be out of date. Maybe incorporate this into NPM?
Source: https://support.cloudflare.com/hc/en-us/articles/200170786-Restoring-original-visitor-IPs Additional Info: https://danielmiessler.com/blog/getting-real-ip-addresses-using-cloudflare-nginx-and-varnish/

This is solved my problem. Thank you.


how to integrate image-inspector with jenkins slave?

I try to create jenkins slave to run image-inspector to scan image but i cant do that.
Could you share me how to integrate with jenkins slave for pipeline?
if cant do that, i'll change my solution to scan docker image.
problem

cant run docker image in jenkins slave.
but if run image-inspector as openshift container , we can scan image

Thanks

you'll need docker at least installed on your jenkins slave. docker is used to pull and extract the target image. the arguments for running the image-inspector binary are available via the readme:
sudo image-inspector --image=fedora:22 --path=/tmp/image-content --scan-type=openscap
		--serve <IP_ADDRESS>:8080 --chroot

You can run this in the background and poll the image inspector for the results of the scan. An example of how to write an image inspector client is available here: https://github.com/moolitayer/image-inspector-client

@ilackarms thank you , i'll try your solution. :)


Add right dropdown menu in navbar like bootstrap 3

You can choose your dropdown menu placement now; we're not going to automatically do it.

You can choose your dropdown menu placement now; we're not going to automatically do it.


Tooltips near edge of screen causing Resize Observer errors

Describe the bug (current behavior)
I am modifiying the Model tree widget component and adding buttons that are right alligned within the widget. When this widget is on the right side of the screen and a user hovers their mouse over a button whose tooltip lines up with the edge of the screen, a loop occurs.

user hovers over button, causing tooltip to appear
Tooltip causes scrollbar to appear on the window, triggering a resize event
users mouse is no longer on the button, causing tooltip to disappear
scrollbar is no longer needed, trigger resize event again
users mouse is now back on button
repeat

The issue only seems to occur when the combination of tooltip text length and user zoom in the application, happen to place the edge of the tooltip to be right on the very edge of the screen.
Is there padding we can set or options for tooltips that can prevent this or are there other safe guards we can put in place?
Expected Behavior
The expected behavior is for the tooltip to be fully placed within the screen.
Link to minimal repro
No response
Steps To Reproduce
No response
Anything else?
No response

We were ono 3.13.4, and this issue seems to be the same as those you linked to. We will update to 3.14.0 and confirm that this is fixed for us. Thanks!


inputProps.onBlur not working on mobile

Try out the homepage or codepen examples on mobile (iOS or Android).  No issue on desktop browsers.
Steps to reproduce:

Select the component, type a character to open the dropdown suggestion list.
Select any item in the dropdown; e.g. scroll the list if possible.
Tap elsewhere on the page (e.g. another dropdown).
Observe that the original component doesn't "close" (dropdown still open).

Expected behavior: The dropdown should have closed (and inputProps.onBlur event fired) when another component is selected.

This is a known issue.
Previous attempts to fix this here.
PR is welcome!

Hey all,
The issue lies in justSelectedSuggestion blocking the .blur() on the element. If justSelectedSuggestion is not set to false, then it doesn't blur.
if (!_this2.justSelectedSuggestion) {
    _this2.onBlur();
    _this2.onSuggestionsClearRequested();
}

It is also linked to https://github.com/moroshko/react-autosuggest/issues/412
At least for mobile, a fix is to do this:
Look for these handlers
onMouseEnter: _this3.onSuggestionMouseEnter,
onMouseLeave: _this3.resetHighlightedSuggestionOnMouseLeave,
onMouseDown: _this3.onSuggestionMouseDown,
onTouchStart: _this3.onSuggestionMouseDown, // Because on iOS `onMouseDown` is not triggered

And add this underneath
onTouchMove: _this3.onTouchMove,
Yours might look a little different as I'm just working off the dist code.
Now add this function  below the this.onSuggestionMouseDown function
this.onTouchMove = function (e) {
    _this3.justSelectedSuggestion = false;
  };

This means that moving your finger while touching will allow focus again.
However to fully fix this blur() blocking it might need some heavy changes or to catch other cases like this.

Hey all,
The issue is that justSelectedSuggestion is set to true while you scroll and then blocks the .blur() in the onBlur function when you try and blur it afterwards. The displaying of the suggestions is not intrinsically bound to whether the suggestions are focused at the code level. So if justSelectedSuggestion is true then it can't blur.
On mousedown sets justSelectedSuggestion to true even if you're just scrolling. But it doesn't properly unset.
if (!_this2.justSelectedSuggestion) {
    _this2.onBlur();
    _this2.onSuggestionsClearRequested();
}

This blocking with mousedown and not releasing is also linked to https://github.com/moroshko/react-autosuggest/issues/412
For this specific scroll event, a fix is to do this:
Look for these handlers
onMouseEnter: _this3.onSuggestionMouseEnter,
onMouseLeave: _this3.resetHighlightedSuggestionOnMouseLeave,
onMouseDown: _this3.onSuggestionMouseDown,
onTouchStart: _this3.onSuggestionMouseDown, // Because on iOS `onMouseDown` is not triggered

And add this underneath
onTouchMove: _this3.onTouchMove,
Yours might look a little different as I'm just working off the dist code.
Now add this function  below the this.onSuggestionMouseDown function
this.onTouchMove = function (e) {
    _this3.justSelectedSuggestion = false;
  };

This means that moving your finger while touching will allow focus again.
However to fully fix this blur() blocking it might need some heavy changes or to catch other cases like this.
I don't want to assume, since I haven't been able to understand the focusing and blurring side of the code.
But could aria-activedescendant be used to keep the input focused instead of justSelectedSuggestion? You can see that if you select a suggestion it unfocuses the input and then refocuses it just a moment after. This can be seen in the codepen examples by applying a colored border when focused. I know aria-activedescendant is already on it, but it doesn't seem to be working as intended.

Having the same issue, looking for help

Hi,
I've been digging a little bit into this and have a question. Where the items props are defined a onTouchStart event is defined with the comment:
 onTouchStart: this.onSuggestionMouseDown, // Because on iOS 'onMouseDown' is not triggered
From what I've experienced this is just partly true. If the item is indicating it is clickable (for example has the style cursor: pointer;) the ordinary click events will be triggered on iOS devices. The problem now is that the touchstart event is triggered even if the user is just scrolling (not selecting an item) which will set the state and prevent the onBlur function being called correctly.
So, a solution to this is to remove the onTouchStart event from the itemProps and recommend (hardcode?) that the item should be indicating it is clickable (for example by adding the style cursor: pointer). Is this an acceptable solution @moroshko?

Any update on this? It's also a huge blocker for me and I have no way of getting around it on mobile.

@moroshko Hi, can you please explain why these lines are required?
onSuggestionMouseDown = () => {
    this.justSelectedSuggestion = true;
  };

Looks like they are causing the issue and it's not iOS related.
You can reproduce it on desktop:

Focus input with autocomplete
Make mouse down on any suggestion
Move your mouse off the suggestion list
Click anywhere except the suggestion list

Suggestion list will remain on the screen and can be removed only by clicking at any suggestion because this.justSelectedSuggestion is set false only in onSuggestionClick event handler by these lines:
setTimeout(() => {
      this.justSelectedSuggestion = false;
    });


Update offline_transformations

offline_transformations in OpenVINO Runtime was moved to _offline_transformations and now shows a FutureWarning. With changes in this PR, we don't see that warning.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


VSCode run very slow inside virtualbox VM + windows 10 guest os

VSCode run very slow inside virtualbox VM + windows 10 guest os
The cpu usage very high, the UI slow . very slow.
But notepad++ run very fast.

On what platform? are you running Virtualbox?
I'm running VS Code inside Parallels VM (on macOS) and I do not see any slowness.

I suggest not to run VS code in a virtual box if this is too slow.
There are no plans to optimise VS Code for this use case.

I experience the same ridiculous slowness. Windows 10 Host, Windows 7 guest: working liek a charm on the host, and takes 2 minutes only to start up on the guest.
Sad that this is a won't fix, because even sophisticated applications like Firefox work well in the guest.


http/2 : Avoid returning null streams at all costs

This is a fix for the client. Returning null prevents reading if the stream is empty during a stream operation

This is a good idea, I'll add a nullSource function similar to the existing nullSink in vibe.core.stream. Hasn't there been a similar fix recently?

Hasn't there been a similar fix recently?

Yes, I removed some assert(stream !is null) in vibe.stream.operations and had them replaced by enforcements instead, I had been trying to get null streams to work but it gets a little too complicated, maybe a nullSource would be more of a long-term solution.


Thumbnail images

Is your feature request related to a problem? Please describe.
When having large input images, the tasks overview will transfer a significant amount of data. Especially considering #2173
Describe the solution you'd like
The thumbails of the task list, should be created to increase efficiency.
Describe alternatives you've considered
No alternatives considered, this is a must have.

You can prepare your tasks and thumbnails this way:
task.json
{
 "image": "path/to/image.jpg",
 "thumb": "path/to/thumb.jpg"
}

After this you will be able to keep only "thumb" in data manager columns, but in your labeling config you can use "image".
Label Studio tries to avoid any data access on the backend side, so it's not possible to read any user data (e.g. for a thumbnail creation).

@makseq how will this work if I upload/import a new image? The way I have set up label studio at this moment is that anyone can upload new data, so preparing a task with thumbs is not really what I want.

@makseq would you accept a patch that would have a project property that basically states 'build thumbnails for images'?

@skinkie You can contribute :-) however this might be tricky.

Is your feature request related to a problem? Please describe. When having large input images, the tasks overview will transfer a significant amount of data. Especially considering #2173
Describe the solution you'd like The thumbails of the task list, should be created to increase efficiency.
Describe alternatives you've considered No alternatives considered, this is a must have.

Suffering wiht high resolution image.


error roslaunch realsense_camera realsense_r200_nodelet_standalone_preset.launch

System Configuration
Please complete Your Configuration detail below.

Version
Best Known
Your Configuration

Operating System
Ubuntu 14.04.4 LTS
Ubuntu 14.04.4 LTS

Kernel
4.4.0-040400-generic
4.4.0-040400-generic

Backend
video4linux
Video4Linux backend

ROS
indigo
indigo

ROS RealSense
Latest Release
Latest Release

librealsense
0.9.1
0.9.1

R200 Firmware
<IP_ADDRESS>
<IP_ADDRESS>

HI! I'm Wejay
I have same problem like issue #26,I'm not really good at linux,please tell me how to solve this
problem.
And I can not run cpp-capture by command line,but running within QT creator works.
It shows:
RealSense error calling rs_create_context(api_version:4):
uvc_open2(...) returned Access denied
In https://github.com/IntelRealSense/librealsense/issues/81,I really can not understand how to fix this problem.

Yes, this looks exactly like #26.
Did you attempt the solution noted?
Try adding your login account to the group video.
sudo adduser $USER video
You may need to log out and log back into the system to see the new group.
groups
In general, the video devices will be owned by root and set to group video:
$ ls -l /dev/video*
crw-rw----+ 1 root video 81, 3 Apr 12 18:02 /dev/video3
crw-rw----+ 1 root video 81, 4 Apr 12 18:02 /dev/video4
crw-rw----+ 1 root video 81, 5 Apr 12 18:02 /dev/video5

I have attempted the solution noted. But I can not still solve my problem.
after I  do ,
$ ls -l /dev/video*
crw-rw----+ 1 root video 81, 0  5月 10 16:45 /dev/video0
crw-rw----+ 1 root video 81, 1  5月 10 16:45 /dev/video1
crw-rw----+ 1 root video 81, 2  5月 10 16:45 /dev/video2
crw-rw----+ 1 root video 81, 3  5月 10 16:45 /dev/video3

Did you try logging out and logging back in after making the group change?
The group membership only takes effect on login.

I tried your steps. Then, I can't still solve.
I can not launch cpp-capture.launch.
My result show

but running within QT creator works. show

The fact that cpp-capture is failing in rs_create_context would imply that something is holding or not release the device.
In this issue you stated that you are using Video4Linux backend and NOT libuvc; can you please confirm that. It looks more like your problem is similar to https://github.com/IntelRealSense/librealsense/issues/81 where libuvc was in use.
Can you confirm you are aren't using libuvb (which we don't support):
dpkg -l | grep libuvc
And that you have a current and/or patch kernel?
uname -a

sorry , I'm not really good at linux.
Thank for your patient to teach me step by step.

I  install by below
https://github.com/IntelRealSense/librealsense/blob/master/doc/installation.md#video4linux-backend
I install both Video4Linux backend and LibUVC backend.
As problem IntelRealSense/librealsense#81, I need remove LibUVC backend?
How can i do ?

Okay, there is the problem; the directions are an either/or, not both. When you did the second install following the directions for libuvc, you replaced the librealsense library with the libuvc version which we don't support.
Repeat the installation steps for "Video4Linux backend".

When I repeat the installation steps for "Video4Linux backend", it shows they exist. Then,I can not install again.
Should I change the file name , v4.4-wily , to v4.5-wily ?
Or how can I solve the problem?
Thank you.

The kernel portion should already be installed.
Just change directory (cd) to where you you put librealsense source
cd <librealsense>
make clean
make && sudo make install

Hi , I have three problem.

Problem1
I run sudo dmesg | tail -n 50 after I repeat the installation steps for "Video4Linux backend" .
It shows "failed to excute"

How do I solve?
However , I can run cpp-capture.

Problem 2
I run roslaunch turtlebot_bringup minimal.launch`.
Then I meet this problem.

This turtlebot_state is error.

Problem3
I run roslaunch realsense_camera realsense_r200_navigation.launch.

The device R200 can light.
But I run roslaunch realsense_navigation gmapping.launch.

It shows 0 device connected.

Sorry , help me solve problems.
Thank you.

It appears you got the RealSense ROS node working.
For the navigation example, did you follow all of the directions in the README.md?


Permission issue on resources/views/admin

Hello,
Currently we are investigating an issue where resources/views/admin is not writable.
Issue reported by: @w00p

I also noticed that all files made by Quickadmin from CRUD, is with the www-data user and not the user owning the files. So the owner permissions of files is wrong.
See example picture: http://imgur.com/rol9uzd

@w00p
I investigated the case and I can tell you this:
We are going to set resource/views/admin directory to writable in case of permission issue.
For the www-data user, this is ok because php must access these files. If you set them otherwise - we will have more conflicts.
Tell me if I'm wrong but most people say that it is ok.

This issue should be fixed with @dev-master.
Can anyone confirm?


Created user has no email and username is sub of idToken

First of all, thanks for the great extension!
I have implemented a native Apple login button so I use the token exchange endpoint /realms/packme/protocol/openid-connect/token. The problem is that even if I provide the user_profile on the first token exchange, the user created has no email field and the username is the sub of the idToken.
I think it would be more common if the username was the email address and the email address was set like the first and last name.
Is there a reason why the current implementation was chosen? Is it because the user could hide their email address, so it is not a valid identifier?

Hi @Jozott00,
Thank you!
This one seems a bit odd to me.
I dove into the depths of the Keycloak source code and noticed that the behavior you describe is exactly the same as what's implemented in OIDCIdentityProvider (the base on which this extension is built on).
However, it seems that your ID-Token is missing the email claim. Therefore Keycloak defaults to the sub claim.
You can easily change this by also requesting the email scope from Apple. Then the email is included in the ID-Token and it should work just fine.
This extension technically accepts an email inside the userJson param, but it is ignored in favor of the ID-Token.


tornado with aredis issue

Checklist

Python version
3.6
Using hiredis or just Python parser
python pareser
Using uvloop or just asyncio event loop
asyncio event loop
Does issue exists against the master branch of aredis?
no

Steps to reproduce
run tornado with routerconfig
Expected behavior
to get the value from redis by key with await
Actual behavior

It is appreciated if error log can be provided
my tornado with routerconfig init your redis aio instance can't get the value of key ,and it get stop for this single request

more added:

it can set key to redis , but after set key , it didn't run the code below it

@app.route(r'/bussiness')
class BussinessHandler(tornado.web.RequestHandler):
    async def get(self):

        # c = self.application.redis_client
        prefix = 'celery-task-meta-'
        await self.application.redis_client.get('abc1', 'abcqwewq')
        ##　it didn't run more, is my event loop issue?
        abc_result = await self.application.redis_client.get('abc1')
        print(abc_result)

this is how i init my redis client
class RouterConfig(tornado.web.Application):
    """重置Tornado自带的路有对象"""
    def __init__(self, **settings):
        super(RouterConfig, self).__init__(handlers=None, debug=True, **settings)
        self.redis_client = StrictRedis()

    def route(self, url):
        def register(handler):
            self.add_handlers(".*$", [(url, handler)])  # URL和Handler对应关系添加到路由表中
            return handler
        return register

the main webserver up python file

if __name__ == "__main__":
    tornado.options.parse_command_line()
    print("====server start")
    loop = asyncio.get_event_loop()
    app = RouterConfig(cookie_secret="dseSJWHFDIUEW433423JK")
    app.listen(8901)
    tornado.ioloop.IOLoop.instance().start()

@ray1888
I think it is the issue of event loop, please see Bridge between asyncio and Tornado~


merge package template from Kronos-Tools/npm-package-template

package.json

chore(devDependencies): update<EMAIL_ADDRESS>from template
chore(devDependencies): add<EMAIL_ADDRESS>from template
chore(devDependencies): add<EMAIL_ADDRESS>from template

Codecov Report

Merging #169 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #169   +/-   ##
=======================================
  Coverage   90.54%   90.54%
=======================================
  Files           1        1
  Lines          74       74
=======================================
  Hits           67       67
  Misses          7        7

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 4911539...2ba7c5c. Read the comment docs.

Codecov Report

Merging #169 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #169   +/-   ##
=======================================
  Coverage   90.54%   90.54%
=======================================
  Files           1        1
  Lines          74       74
=======================================
  Hits           67       67
  Misses          7        7

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 4911539...2ba7c5c. Read the comment docs.


fix(datepicker): disabled not watched

Datepicker now supports disabled attribute & ng-disabled directive.
References #268

Coverage increased (+0.001%) to 97.637% when pulling<PHONE_NUMBER>8790f654a1cbb45d30591a6a7c31ab on jjczopek:datepicker-ng-disabled into 4ff9dc7d75b8d67db0ee70fa6d6a1b275bcfca76 on ngOfficeUIFabric:dev.


why bower building fo js API 4.x is NO LONGER SUPPORTED?

why bower building fo js API 4.x is NO LONGER SUPPORTED?

because even the maintainers of bower have been recommending folks migrate to alternatives since 2017.
https://bower.io/blog/2017/how-to-migrate-away-from-bower/


How to parse CSV array

I want to make an autocomplete machine learning model using a .csv file.
[characters], label
How would I make TuriCreate parse this?

import turicreate
data = turicreate.SFrame('data.csv')
```

That should get data into your format. We'll need some more information into what `[characters]` are to be able to give you more info.

But apparently, TuriCreate automatically finds types, so I might be over-complicating this.

Here's API documentation for read_csv: https://apple.github.io/turicreate/docs/api/generated/turicreate.SFrame.read_csv.html#turicreate.SFrame.read_csv
If types are not properly auto-generated, you can use the column_type_hints parameter.


SwiperJS

created a swiper, when you click on the thumbs, they scroll. How to remove it?
Example on CodePen:
https://codepen.io/HeroNax/pen/VwaYwYo

Do you want to ask a question? Are you looking for support? Stack Overflow is the best places for getting support

Please, don't use GitHub issues for questions


Would it be possible to use the standard Markdown syntax for images?

I have put the question on StackOverflow first, so this is almost a copy/paste:
I would like to use the Jekyll Responsive Image plugin to generate appropriate responsive images with srcset/sizes attributes for my posts' images. That's why I'm here obviously… ;-)
But I would also like to be able to edit my posts in a software providing a live preview like MacDown, which only understands the standard Markdown syntax for images.
That's why I would like to know if there is a way —in this plugin or another one— to tell Jekyll to transform the standard Markdown syntax for images, which I would put in my Markdown files…
![alt text](path/to/image.jpg)
…into this syntax specific to the Jekyll Responsive Image plugin:
{% responsive_image path: path/to/image.jpg alt: "alt text" %}
And THEN, Jekyll could continue and use Kramdown to generate the HTML…
I understand I could only manage one template this way, but it should be enough for my blog.

You should be able to achieve this by writing a simple converter plugin. This should do the trick, though I don't know how performant it will be with larger sites:
module Jekyll
  class UpcaseConverter < Converter
    safe true
    priority :low

    def matches(ext)
      ext =~ /^\.md$/i
    end

    def output_ext(ext)
      ".html"
    end

    def convert(content)
      content.gsub(/\!\[(.+)\]\((.+)\)/, '{% responsive_image path: \2 alt: \1  %}')
    end
  end
end

Shouldn't the output be .md?
How does this ensure it is run before Kramdown?

output_ext is used to determine the extension of the generated file (i.e. the file in _site/). So unless you're building your site in a format other than HTML, it should probably be ".html".
If you're seeing it run after the Markdown processor, then you can bump the priority -- there's a list of priorities in the docs I linked to.

Thanks for the explanation.
It seems I could also build my converter so that it runs Kramdown after it has done its job: http://stackoverflow.com/a/26075361/717195

I think I will use @parkr 's solution: http://stackoverflow.com/a/35636071/717195
But then I still need #13 before migrating from my current use of https://github.com/nhoizey/jekyll-picture-tag …


Adds web entrypoint

Creates separate entrypoint for LangGraph classes that does not include async local storage.
I'm not sure why the initialize call was so nested - I think may have been unnecessary, tracing seems fine.
We will want to document this carefully and also update prebuilt components to explicitly pass config around to avoid the need for a prebuilt/web entrypoint.
CC @nfcampos @andrewnguonly @dqbd
Fixes #208 and #81

What's the impact of this? Does this means LangGraph classes can be used in a browser context?

What's the impact of this? Does this means LangGraph classes can be used in a browser context?

Exactly, that's the big one that doesn't support async_hooks.
For prebuilt components, we should make sure we pass config manually and avoid importing from the primary index.js entrypoint from now on.

Fresh install of langsmith, following the API examples word for word, crashes apparently because of the same issue this was created to resolve.
No langgraph is being imported directly - it's all being brought-in by langsmith. But there's no mention in the langsmith docs that I can see for how to workaround this.
Was this workaround only created for direct use of langgraph? i.e. langsmith etc needs to be manually patched to make it work in browser?

Depends on what you're importing but if it's traceable then it will not work in the browser due to async hooks usage.
We've been careful to isolate it for LangGraph/LangChain and could do the same for LangSmith but figured it was more niche since in most cases you wouldn't want to leak your API key on the frontend - what is your use case?

Personally: local development / VPN, and evaluation. If it's known /
deliberate that it can't work in browser then it would be good if someone
documented that - ideally in the features pages but at least: in the
install docs.
On 29 September 2024 08:15:56 Jacob Lee @.***> wrote:

Depends on what you're importing but if it's traceable then it will not
work in the browser due to async hooks usage.
We've been careful to isolate it for LangGraph/LangChain and could do the
same for LangSmith but figured it was more niche since in most cases you
wouldn't want to leak your API key on the frontend - what is your use case?
--
Reply to this email directly or view it on GitHub:
https://github.com/langchain-ai/langgraphjs/pull/211#issuecomment-2381149411
You are receiving this because you commented.
Message ID: @.***>


catch a reason to crash on startup

Added catch of AttributeError caused by try to read old format on loading .spyderproject files when actually is loading new format project file.
fixes #1845

Thanks a lot for your PR. Seems simple enough, so I'm merging it :-)

well, to be honest, I just applied the patch someone else posted on the google code site.
I didn't find out where the bug comes from, but the patch does allow a clean startup and the affected projects now load up just fine.
I think it was an issue that a new style .spyderproject file gets loaded using the old way (open(fname, 'U') instead of open(, 'rb'), but I couldn't confirm it, mostly because of lacking knowledge of the code and time to invest..
But if the comments in the code are not missleading, then this should be a proper fix to the problem.

@RafiKueng, thanks for looking into it :-)


Queue with FlipFlopOutput

Related issue: None

Type of change: other enhancement

Impact: no functional change

Development Phase: implementation
Release Notes
Chisel Queue class is used for various purposes
(data buffering, cutting critical path, register slicing)
But sometimes it is not enough because it's output is MUX output.
Deep Queue could make data-critical-path.
This PR proposes to make the Queue's output flip-flop without function changing.
I believe that even the operation timing is not changed.
https://app.lucidchart.com/documents/edit/691dc934-c928-4f8a-8153-91eb09e6571f/0_0

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Scott Kim seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


button styling on product-category page updated to purple

Fix #397
Test URLs:

Before: https://main--danaher-ls-aem--hlxsites.hlx.page/
After: https://397-product-category-purple-button--danaher-ls-aem--hlxsites.hlx.page/us/en/products/assay-kits/topics/how-are-assay-kits-installed

@mhaack  - is it worrying the amount of CSS removed from the sytles file?


Failed to detect missing UHD keys in Sintel

What version of Shaka Player are you using?
v2.1.0 and v2.0.8

Are you using the demo app or your own custom app?
demo app

What browser and OS are you using?
Chrome Linux

What did you do?
Load "Sintel (multicodec, Widevine)"

How did you interact with the content, if at all?
Manually select 4k resolution

What did you expect to happen?
We do not get UHD keys on Linux, so 4k should not be available.

What actually happened?
We tried to play 4k and got stuck waiting for keys at 13 seconds

Investigation shows that the 4k track uses key ID "4d4b0ca25ac158f0b9c1983c517ee2b5", which was not present in the license.  In spite of this, allowedByKeySystem is set to true.
This is true in both v2.0.8 and v2.1.0, so the fix should be backported to the v2.0.x branch.

This has been cherry-picked to v2.1.1 and v2.0.9.


Harmonization of Catena-X Aspect Models

Overview
All existing aspect models are checked for their data objects with regard to a uniform taxonomy and are potentially refined.
Adaption of the existing semantic aspect models to a Catena-X-wide uniform taxonomy.
Explain the topic in 2 sentences
What's the benefit?

Using the common taxonomy
Models are more refined using shared models

What are the Risks/Dependencies ?

Discussion for the standardised models maybe needed

Detailed explanation
Current implementation
Proposed improvements
Feature Team
Contributor

@agg3fe
@tunacicek
@jSchuetz88

Committer

@agg3fe
@tunacicek

User Stories

https://github.com/eclipse-tractusx/sldt-semantic-models/issues/761

Acceptance Criteria

[ ] Criteria 1
[ ] Criteria 2
[ ] Criteria 3

Test Cases

Test Case 1

Steps

Do something
Click something
Add something

Expected Result

Expectation
Expectation
Expectation

Architectural Relevance

The following items are ensured (answer: yes) after this issue is implemented:

[ ] This feature aligns with our current architectural guidelines

Data Sovereignty: All data sharing activities across company boundaries follow the Catena-X Regulatory Framework, in particular the Data Exchange Governance, and the Dataspace Protocol via a compliant Connector (like the tractusx-edc or similar, see Connector KIT)

[ ] CX-0010 Business Partner Number
[ ] CX-0013 Identity of Member Companies
[ ] CX-0018 Data Space Connectivity (EDC)
[ ] CX-0049 DID Document Schema
[ ] CX-0050 Framework Agreement Credential
[ ] CX-0149 Verified Company Identity

Interoperability: Digital Twins are used (compliant to the Digital Twin KIT and the Industry Core KIT)

[ ] CX-0001 EDC Discovery API
[ ] CX-0002 Digital Twins in Catena-X
[ ] CX-0018 Data Space Connectivity (EDC)

Data Format:

[ ] The data model is based on a published Semantic Model

[ ] The impact on the overall system architecture has been assessed. The Feature does not require changes to the architecture or any existing standard? Please have a look here on the overarching architecture
[ ] Potential risks or conflicts with existing architecture has been assessed

Justification: (Fill this out, if at least one of the checkboxes above cannot be ticked. Contact the Architecture Management Committee to get an approval for the justification)
Additional information

[ ] I am aware that my request may not be developed if no developer can be found for it. I'll try to contribute a developer (bring your own developer)

Presented in the DRAFT Feature Freeze -> Committer is available

@thomas-henn @agg3fe @tunacicek not sure about this feature. Is it planned to present it in tomorrow's planning? It was already presented in the DRAFT Feature Freeze, but the status is still Inbox. Did we miss something?

Some hints from Release Management (@ther3sa) and Tractus-X Project Lead (@stephanbcbauer)

Status currently in Inbox. ⇾ Only features with status backlog are considered in open planning
Please add missing sections from the feature template, or fill them out

@thomas-henn @agg3fe @tunacicek not sure about this feature. Is it planned to present it in tomorrow's planning? It was already presented in the DRAFT Feature Freeze, but the status is still Inbox. Did we miss something?

Hi @stephanbcbauer,
thanks for your hint. I change the status to backlog.

Question from the audience, if this feature is related to #605 ? -> no its not


Attempts to bind a udp port to a multicast address results in the termination of the interactive CLI

Describe the bug A clear and concise description of what the bug is.
Attempts to bind a udp port to a multicast address results in the termination of the interactive CLI.
To Reproduce Information to reproduce the behavior, including:
Attempt to bind a port using the udp cli command:

sudo ot-ctl
udp bind ff02::1 4242
pi@rpi1:~ $
(but the rest of the cli is working fine)

If I open first, I get further, but its still not working:

udp open
Done
udp bind ff02::1 4242
Error 1: Failed

Git commit id - ecc25701117fc99c6630584dc98294527a145f7d
IEEE 802.15.4 hardware platform - Silabs BRD4161A
Build steps - As documented on openthread.io
Network topology - [soc] ))  <thread/802.15.4> (( [otbr]

Expected behavior A clear and concise description of what you expected to happen.
I expected to bind that multicast address to the port.  This command functions as expected on the soc, just not on the otbr.  (Or if I need to use raspbian for these bindings then probably the command should not be accessible.)
Console/log output If applicable, add console/log output to help explain your problem.

sudo ot-ctl
udp bind ff02::1 4242
pi@rpi1:~ $

udp open
Done
udp bind ff02::1 4242
Error 1: Failed

Additional context Add any other context about the problem here.

I don't think bind() supports binding to a multicast address. You should firstly subscribe to the multicast address and then bind to the special any address. I think the following commands should work(ff02::1 is already subscribed by default):
> udp bind :: 4242

@bukepo , should we simply return an error here rather than terminating the interactive CLI?

I tried, but unable to reproduce the crash of interactive CLI. @JaneFromSilabs could you share a full procedure to reproduce the issue?

If there is anything I can do to help find this, please let me know.  This exiting behavior is still happening to me on the latest code, at least on these 2:
pi@rpi1:~ $ sudo ot-ctl
> udp bind ff02::1 4242
pi@rpi1:~ $

pi@rpi2:~ $ sudo ot-ctl
>
>
> udp bind ff02::1 4242
pi@rpi2:~ $

pi@rpi1:~/ot-br-posix $ git show
commit 274c11a371df6ffe0f7562359f31dd43af0fe871
Author: Jiacheng Guo<EMAIL_ADDRESS>Date:   Fri Sep 11 23:45:04 2020 +0800

pi@rpi2:~/ot-br-posix $ git show
commit 274c11a371df6ffe0f7562359f31dd43af0fe871
Author: Jiacheng Guo<EMAIL_ADDRESS>Date:   Fri Sep 11 23:45:04 2020 +0800

This doesn't seem to be a problem anymore.  I can no longer reproduce this on recent code.


@Docs can't index sites anymore

Before submitting your bug report

[x] I believe this is a bug. I'll try to join the Continue Discord for questions
[x] I'm not able to find an open issue that reports the same bug
[x] I've seen the troubleshooting guide on the Continue Docs

Relevant environment info
- OS:Rhel 9.5
- Continue version: 0.0.83
- IDE version: PyCharm 2024.3.1
- Model: Qwen2.5-Coder-32B as main model, jina-embeddings-v2-base-code-q8_0.gguf as embeddings model
- config.json:

{
  "models": [
    {
      "title": "Qwen2.5-30b",
      "model": "qwen2",
      "contextLength": 32768,
      "apiBase": "http://<IP_ADDRESS>:5001",
      "provider": "llama.cpp",
      "apiKey": "qwe",
      "template": "chatml",
      "completionOptions": {
        "maxTokens": 8192
      }
    }
  ],
  "customCommands": [
    {
      "name": "test",
      "prompt": "{{{ input }}}\n\nWrite a comprehensive set of unit tests for the selected code. It should setup, run tests that check for correctness including important edge cases, and teardown. Ensure that the tests are complete and sophisticated. Give the tests just as chat output, don't edit any file.",
      "description": "Write unit tests for highlighted code"
    },
    {
      "name": "review",
      "prompt": "{{{ input }}}\n\nYou are a professional code reviewer. Code review the diff with relation to the existing code. Do not repeat existing code, offer suggestions and optimizations only for code changed in diff. If need, ask for more code.",
      "description": "Code review."
    }
  ],
  "tabAutocompleteModel": {
    "title": "Qwen2.5-Coder-3B",
    "contextLength": 16384,
    "apiBase": "http://<IP_ADDRESS>:5002/v1/",
    "provider": "openai",
    "model": "Qwen2.5-Coder-3B",
    "apiKey": "qwe",
    "template": "chatml"
  },
  "tabAutocompleteOptions": {
    "template": "<|fim_prefix|>{{{ prefix }}}<|fim_suffix|>{{{ suffix }}}<|fim_middle|>",
    "multilineCompletions": "auto",
    "maxPromptTokens": 2048
  },
  "contextProviders": [
    {
      "name": "diff",
      "params": {}
    },
    {
      "name": "os"
    },
    {
      "name": "docs"
    },
    {
      "name": "repo-map"
    },
    {
      "name": "url",
      "params": {}
    },
    {
      "name": "code",
      "params": {}
    },
    {
      "name": "terminal",
      "params": {}
    },
    {
      "name": "folder",
      "params": {}
    },
    {
      "name": "codebase",
      "params": {
        "nRetrieve": 50,
        "nFinal": 15,
        "useReranking": true
      }
    },
    {
      "name": "docs",
      "params": {
        "nRetrieve": 25,
        "nFinal": 5,
        "useReranking": true
      }
    }
  ],
  "slashCommands": [
    {
      "name": "edit",
      "description": "Edit selected code"
    },
    {
      "name": "comment",
      "description": "Write comments for the selected code"
    },
    {
      "name": "share",
      "description": "Export the current chat session to markdown"
    },
    {
      "name": "commit",
      "description": "Generate a git commit message"
    },
    {
      "name": "cmd",
      "description": "Generate a shell command"
    }
  ],
  "embeddingsProvider": {
    "model": "jina-bert-v2",
    "contextLength": 32768,
    "apiBase": "http://<IP_ADDRESS>:5003/v1/",
    "provider": "openai",
    "apiKey": "qwe"
  },
  "reranker": {
    "name": "free-trial"
  },
  "docs": [
    {
      "startUrl": "https://docs.djangoproject.com",
      "title": "Django",
      "faviconUrl": ""
    }
  ]
}

Description
With the recent update to "Continue version: 0.0.83" continue can't index docs anymore, this is logs:
[2024-12-15T13:32:58] Creating embeddings for 199 articles  [2024-12-15T13:33:03] Creating embeddings for 199 articles  [2024-12-15T13:33:23] Creating embeddings for 199 articles  [2024-12-15T13:37:04] Adding 12862 embeddings to db  [2024-12-15T13:37:14] Failed to fetch favicon for https://docs.djangoproject.com: TypeError: fetch failed  [2024-12-15T13:37:14] Failed to find favicon for https://docs.djangoproject.com  [2024-12-15T13:37:15] Adding 12862 embeddings to db  [2024-12-15T13:37:25] Failed to fetch favicon for https://docs.djangoproject.com: TypeError: fetch failed  [2024-12-15T13:37:25] Failed to find favicon for https://docs.djangoproject.com  [2024-12-15T13:37:27] Error indexing docs Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: docs.startUrl [2024-12-15T13:37:41] Adding 12862 embeddings to db  [2024-12-15T13:37:51] Failed to fetch favicon for https://docs.djangoproject.com: TypeError: fetch failed  [2024-12-15T13:37:51] Failed to find favicon for https://docs.djangoproject.com  [2024-12-15T13:37:52] Error indexing docs Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: docs.startUrl
happens all the time, several times tried to delete ~/.continue/index folder and restarting IDE - no success. In the embeddings model logs i see it creates many embedding, but seems to fail to write them to sqlite db.
To reproduce
No response
Log output
No response

@drrros thanks for the report. Is it happening with any besides https://docs.djangoproject.com?

@RomneyDa no, tried with aiohttp:
[2024-12-20T12:28:03] Creating embeddings for 79 articles
[2024-12-20T12:28:03] Creating embeddings for 79 articles
[2024-12-20T12:28:03] Creating embeddings for 79 articles
[2024-12-20T12:28:03] Creating embeddings for 79 articles
[2024-12-20T12:28:04] Creating embeddings for 79 articles
[2024-12-20T12:29:24] Adding 2377 embeddings to db
[2024-12-20T12:29:25] Failed to fetch favicon from https://docs.aiohttp.org/_static/favicon.ico: Error: HTTP error! status: 404
[2024-12-20T12:29:45] Adding 2377 embeddings to db
[2024-12-20T12:29:46] Failed to fetch favicon from https://docs.aiohttp.org/_static/favicon.ico: Error: HTTP error! status: 404
[2024-12-20T12:29:46] Error indexing docs Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: docs.startUrl
[2024-12-20T12:29:49] Adding 2377 embeddings to db
[2024-12-20T12:29:49] Adding 2377 embeddings to db
[2024-12-20T12:29:49] Failed to fetch favicon from https://docs.aiohttp.org/_static/favicon.ico: Error: HTTP error! status: 404
[2024-12-20T12:29:49] Failed to fetch favicon from https://docs.aiohttp.org/_static/favicon.ico: Error: HTTP error! status: 404
[2024-12-20T12:29:50] Error indexing docs Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: docs.startUrl
[2024-12-20T12:29:50] Error indexing docs Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: docs.startUrl
[2024-12-20T12:29:51] Adding 2377 embeddings to db
[2024-12-20T12:29:51] Failed to fetch favicon from https://docs.aiohttp.org/_static/favicon.ico: Error: HTTP error! status: 404
[2024-12-20T12:29:51] Adding 2377 embeddings to db
[2024-12-20T12:29:51] Error indexing docs Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: docs.startUrl
[2024-12-20T12:29:52] Failed to fetch favicon from https://docs.aiohttp.org/_static/favicon.ico: Error: HTTP error! status: 404
[2024-12-20T12:29:52] Error indexing docs Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: docs.startUrl


Guide to Getting Started with Angular2 and NativeScript - Auth0 Blog PR

Added article on NativeScript runtime and its Angular integration.

@kukicado I updated the article per you suggestions. In regards to the Aside section, I was running into some problems when I tried to get it up an running a little while back. I just spoke to @diegopoza and he informed me that I can't use it with the auth0 lock, rather i need to implement my own login form, so I am going to put that together and add it when i am finished up. I will add a link to the Aside Demo code as well.
Thanks for your feedback 😄  Let me know if you have any questions.

Awesome. Looking forward to seeing the completed version. Thanks @thomasjosephgreco .


I can use a mac app to keep track of my friends' decentralized identities - need new repo

I need to come up with a name for this app. Any ideas?
Ideas:

electron for web ui for rapid prototyping of ui possibilities
but MacOS already has contact management built into OS

use nodejs part of ElectronApp + MacOS APIs to 'sync' my dweb contact list with my OS contacts at all times seamlessly


Incorrect lifetimes for impl IntoValueTensor for &CowArray

The current implementation of impl IntoValueTensor for &CowArray is:
impl<'i, 'v, T: Clone + 'static, D: Dimension + 'static> IntoValueTensor for &'i CowArray<'v, T, D>
where
	'i: 'v
{
...
}

Note the 'i: 'v where 'v is the lifetime of the data of the array, and 'i is the lifetime of the array itself.
This constraint is impossible to satisfy, the lifetime of the array is always shorter than the lifetime of the data of the array.
Thanks for the support! Love the library

Thanks ❤ ! If the function doesnt really care about 'i: 'v vs 'v: 'i, I think the Rusty thing to do is just to remove the bound entirely. Anyway, this solves my problem


https://github.com/github/docs/issues/2825#issuecomment-758903674Thanks so much for opening a discussion and then an issue @Andre601! I've triaged this for the team to take a look 👀

Thanks so much for opening a discussion and then an issue @Andre601! I've triaged this for the team to take a look 👀
Originally posted by @janiceilene in https://github.com/github/docs/issues/2825#issuecomment-758903674

Thanks so much for opening a discussion and then an issue @Andre601! I've triaged this for the team to take a look 👀
Originally posted by @janiceilene in https://github.com/github/docs/issues/2825#issuecomment-758903674

Thanks so much for opening a discussion and then an issue @Andre601! I've triaged this for the team to take a look 👀
Originally posted by @janiceilene in https://github.com/github/docs/issues/2825#issuecomment-758903674

Can you stop wasting everyones time here?
You're not cool nor funny and this will only get you banned from GitHub altogether.
(Yes I'm aware that this might be an automated account, but it's still worth a try)

Can you stop wasting everyones time here?
You're not cool nor funny and this will only get you banned from GitHub altogether.
(Yes I'm aware that this might be an automated account, but it's still worth a try)

Thanks so much for opening a discussion and then an issue @Andre601! I've triaged this for the team to take a look 👀
_Originally posted by @janiceilene in https://github.com/github/docs/issues/2825#issuecomment-758903674

Thanks so much for opening a discussion and then an issue @Andre601! I've triaged this for the team to take a look 👀
_Originally posted by @janiceilene in https://github.com/github/docs/issues/2825#issuecomment-758903674


Enhanced cross-validation inputs for Dask-ML HyperbandSearchCV

Hello,
Is it possible to add the same possible "cv" inputs for Dask-ML HyperbandSearchCV that are currently available for Dask-ML RandomizedSearchCV and Dask-ML GridSearchCV? HyperbandCV currently only allows inputs for test_size, but I would like to be able to define my own cross-validation iterable which would contain the indicies of my training and validation splits for model tuning and evaluation. RandomizedSearchCV and GridSearchCV both allow this sort of cross validation input as seen below.

Thank you!

I'm not sure offhand. cc @stsievert if you have thoughts.

Thanks for the ping @rochelle-worsnop. Technically, accepting fancier CV splits is possible and the implementation isn't too complex (but is not simple).
Why do you want a CV split with Hyperband? Hyperband best fits in cases that are computationally constrained as per the documentation, which I presume means that more computation with fancier cv splits is not required.  HyperbandSearchCV is basically RandomizedSearchCV with early stopping of poor performing models. What's your use case, and why not use RandomizedSearchCV?

Thanks for the reply! I tried to give the implementation a go and unfortunately wasn't able to make it work given my limited object-oriented coding experience. I'm currently using dask RandomizedSearchCV, but thought that HyperbandSearchCV would enable me to test a larger sample of hyperparameter combinations in my search space at approximately the same amount of time as a smaller sample with RandomizedSearchCV since it would stop tuning combinations if they resulted in a poor model. Essentially I saw HyperbandSearchCV as a time saver that would also allow me to use some of that saved time to try to "find" the best model hyperparameters by testing more combos overall. I searched through 200 possible hyperparameter combinations (maybe that's too many?) with randomized search and that took about 5.5 hours with all of the computing resources I have access to. I have ~700 different models (e.g., a different model for each month, forecast lead time, and one for each of 20 years) that I need to perform hyperparameter tuning with in the end, so any time saved would be helpful. I guess my case isn't computationally restrained in regards to tuning one model but it is given the total number of models that I need to tune for my project. Do you think my case would still be a good implementation of HyperbandSearchCV? Either way, I think I need to be able to specify a cross validation iterable.

Thanks for your use case @rochelle-worsnop. I think 700 models counts as computationally constrained.

How many data do you have, and how many features does each example have?
What model are you using, and what hyperparameters are you tuning?
Why not tune the hyperparameters for one model, and use that for all 700? Why not tune one model (or 12 models) and use that to narrow down the search space?
Why not use one train/test/validation split? That's (very) common in deep learning, which has access to many data and is very computationally constrained.

I might be able to hack together a solution for your desired use case, but I'm not sure it's necessary.

@stsievert
How many data do you have, and how many features does each example have?
I'm working with weather forecast data. To tune one model, I have 252 normalized examples in the time dimension and 3371 in the spatial dimension. I pool the time and space dimension together to have 849,492 total examples to train with (before any splitting into train-validation folds). The test set uses completely different examples. Each example has 3 features for now, but one of the goals of my project is to test the performance of adding additional features (maybe around 10 total).
What model are you using, and what hyperparameters are you tuning?
a fairly standard and shallow ANN with regularization and also a CNN. I haven't tried tuning the CNN yet, but this is what I'm trying for the ANN:
max_nlayers = 3 #define max number of layers
n_neuronsL = [x for x in itertools.product((10,20,30),repeat=max_nlayers)] #define number of neurons in each
                                                                    #potential layer

num of layers: stats.randint(1,max_nlayers+1)
num of neurons in the layers: stats.randint(0,len(n_neuronsL))
regularization parameter: stats.loguniform(10.**-6,10.**-2)
activation function: ['elu','relu','tanh']
Adam initial learning rate: [0.0001,0.0003,0.001,0.003,0.01,0.03,0.1,0.3]
number of epochs: stats.randint(10,300)
batch size: [32,62,128,256,512,1024,2048,4096,8192]
Why not tune the hyperparameters for one model, and use that for all 700? Why not tune one model (or 12 models) and use that to narrow down the search space?
Hmm this is an interesting thought, I'm not sure of the answer to it. It's possible that 12 tuned models (one for each month) may be suitable, but I'm not sure. I'll think about this some more. This is my first NN project, so I'm still not sure what's all acceptable to do yet.
Why not use one train/test/validation split? That's (very) common in deep learning, which has access to many data and is very computationally constrained.
I do have access to a lot of data, except in the time dimension. I only have 250 examples, so I wanted to use 5-fold cross validation on the time dimension and train on 200 examples (+ the spatial data) and validate the tuned model with the remaining 50 time examples (+ spatial data). Cycling through those folds for training and validation would allow me to evaluate on every bit of my data and would ideally give me a more robust estimate of how well the tuned model will generalize to unseen data at a different time. It's a bit convoluted, but I'm essentially trying to replicate the method in a recently published research article: Sect 3b if you're interested.  https://journals.ametsoc.org/view/journals/mwre/148/8/mwrD200096.xml
I might be able to hack together a solution for your desired use case, but I'm not sure it's necessary.
Thanks, that's very nice! If you'd like to talk more through it, I'd be happy to schedule a brief Google Meet or something like that to ensure it's not a waste of your time.

Thanks for the explanation @rochelle-worsnop! That makes sense. Your use case sounds very computationally constrained, especially with the number of hyperparameters (I might go with fewer given some prior experience).
Here's my dummy implementation:

Implementation of CVModel
from sklearn.linear_model import SGDRegressor
from dask.distributed import get_client
from sklearn.model_selection import train_test_split
from dask.distributed import Client
from sklearn.datasets import load_iris
from sklearn.model_selection import KFold
from sklearn.base import BaseEstimator

class CVModel(BaseEstimator):
    def __init__(self, cv=5, **kwargs):
        self.cv = cv
        self.kwargs = kwargs

    def _init(self):
        self._inited = True

        self.k_fold_ = KFold(n_splits=self.cv)
        self.models_ = [
            SGDRegressor(random_state=i, **self.kwargs)
            for i in range(self.cv)
        ]

    def partial_fit(self, X_train, y_train):
        if not hasattr(self, "_inited"):
            self._init()

        client = get_client()  # eek!
        futures = [client.submit(model.partial_fit, X_train[train_idx], y_train[train_idx])
            for model, (train_idx, test_idx) in zip(self.models_, self.k_fold_.split(X_train))]
        self.models_ = client.gather(futures)
        return self

    def score(self, X_val, y_val):
        if not hasattr(self, "_inited"):
            self._init()

        client = get_client()  # eek!
        futures = [client.submit(model.score, X_test[test_idx], y_test[test_idx])
            for model, (train_idx, test_idx) in zip(self.models_, self.k_fold_.split(X_test))]
        scores = client.gather(futures)
        return sum(scores) / len(scores)  # mean score for this model

if __name__ == "__main__":
    client = Client()
    X, y = load_iris(return_X_y=True)
    X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
    X_train, X_val, y_train, y_val = train_test_split(X_train, y_train, random_state=10)
    m = CVModel()
    m.partial_fit(X_train, y_train)
    print(m.score(X_val, y_val))

This implementation isn't integrated with HyperbandSearchCV. I think the biggest issue will be properly selecting the train/test splits, something I'm relatively unfamiliar with (I one random train/test/val split all the time). I suspect the cross validation will easiest with a dataframe.

Thanks, @stsievert!! This is really helpful. Is the idea that I would use this CVModel instead of HyperbandSearchCV or try to incorporate it with HyperbandSearchCV? Would it be able to stop training poor performing models?

CVModel can be used with HyperbandSearchCV, instead of whatever model you're currently using (e.g., MLPClassifier). It's a hacky method to start with cross validation; it we'll depend a lot on crafting the dataset, and the chunks of the Dask Array.

Ah, I see. That makes sense. I appreciate your help! I'll see if I can get it implemented.

How's it going @rochelle-worsnop?


Bug Fix: Slack API Attachments

Makes core set an array of attachments as per API spec.

:tada: This PR is included in version 4.8.6 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


desc field in output

I use the desc field to comment some "command" validations. But it doesn't appear in my output. Is it possible ?

Try title, sorry I think this I forgot to update the documentation with my latest change.
See: https://github.com/aelsabbahy/goss/issues/52

It works, thank you ;)


Image broken in the Deployment patterns page

Description:
Francisco Ribeiro reported as follows:
At [1] there is an image broken, could you please take a look at it?
[1] https://apim.docs.wso2.com/en/latest/install-and-setup/deploying-wso2-api-manager/deployment-patterns/

Fixed in the API-M docs-
3.0.0 - https://github.com/wso2/docs-apim/pull/866
3.1.0 - https://github.com/wso2/docs-apim/pull/867


Update active-directory-aadconnect-dirsync-deprecated.md

@RobdeJong : Thanks for your contribution to the Azure documentation! The author, @andkjell, has been notified to review your proposed change.

@billmath because of the merge conflict, make these changes in the private repo. When done, close this PR.

#sign-off


General guidelines for when to use a Map vs a Store module

We need to better document when user should use a map and when to use store. We need to give some general guidelines as well as clear use cases like example of when to choose on over the other. Finally, we also need to clearly outline anti-pattern. Let's try to come up with an outline.
Map are used for data extraction, filtering and transformation. They should be used when direct extraction without re-using them later in the pipeline is needed. For example, model data extraction from event or function's inputs are good example. People should also favor 1 map over N mappers each extracting a single event. It's better to perform as much extraction as possible from top-level mapper and pass that data around for later consumption
Store should be used for aggregation of value and to store state that exists "across" block. They are not free-form storage location. Unbounded store is usually a bad idea (not sure of the exact wording, we don't want to scare people neither).
One anti-pattern is extracting for example Entities from Events in a mapper and pass that directly to a store that directly store the model in a StoreProto without ever reading back the data. This is totally useless, remove the store and consume the entities directly.

@Eduard-Voiculescu or @billettc will bootstrap you on the content of this.

Some content that we discussed today

Stores cannot be outputted (except in development mode) as a stream.
Use stores only when you are going to read its data from a downstream modules, within the Substreams module.
Use it to implement the Dynamic Data Sources pattern from Subgraphs (keeping track of contracts that were created, in order to filter the next block with that information).
Do not use stores as if you were going to query anything from them downstream of the Substreams output. For that, use a Sink where you shape the data for querying.
[add a few more here]

For example, model data extraction from event or function's inputs are good example. People should also favor 1 map over N mappers each extracting a single event. It's better to perform as much extraction as possible from top-level mapper and pass that data around for later consumption

So I wrote that but I know feels it should be more on a section about performance considerations of a Substreams. This is not really related to when you should choose a map vs a store.
If we remove that for now, do you have further questions?

The content was pretty good from my perspective. I'm just curious why it's best to restrict to the single map module. It's not pressing though. I guess curiosity for a better, deeper understanding in general for me.

Simplicity, both of the backend and the consumer experience. Unless there's a compelling use case, simpler is better.

I've reviewed the existing documentation for modules.
I believe the best place to add the new documentation for maps and stores will be on this page: https://substreams.streamingfast.io/concept-and-fundamentals/modules
I believe we should focus on this sentence to begin forming the outline of the new content: "give some general guidelines as well as clear use cases like example of when to choose on over the other."
If that sounds like a good path forward let me know and I'll create a new branch to work in to add this new content.
If not please let me know where else this would be better added.
Also, is there additional input available from @Eduard-Voiculescu or @billettc for this?

I've created the initial draft content for the new section on the existing modules page. The PR is available for review here: https://github.com/streamingfast/substreams/pull/101


Maybe EXTERNAL_HOSTNAME should be overridable dynamically

If it is possible to determine the hostname that was used for the current orchestrator connection (which I think should be the case: it's somewhere in the HTTP headers of the original request) it might be a good idea to use that in stead of EXTERNAL_HOSTNAME when building URLs for SFUs, etc.
It would solve two issues. First, when connecting to a multi-homed orchestrator (such as our vrtnuc) the client will use the same network interface when connecting to an SFU. Second, and more important practically, Windows has continuous issues with resolving MDNS addresses. Sometimes it works fine, sometimes it doesn't work, sometimes it sometimes works.
There's a workaround for VR2Gather (during developing at home): I can simply put the orchestrator IP address in the config file in stead of the .local address. But if the orchestrator then replies with SFU addresses that have the .local again things still don't work.

If EXTERNAL_HOSTNAME in .env is left unset or set to dynamic, the server will try to determine the external hostname from the request header when creating a new session. An error will be raised if it fails to do so.


Error: Unknown device type.

Hi ! I have an issue with my client...
Here my config :
docker-compose.yml
---
version: "2.1"
services:
  wireguard-tunnel-peer:
    image: ghcr.io/digitallyrefined/docker-wireguard-tunnel:v3
    container_name: wireguard-tunnel-peer
    environment:
      # Note that DOMAIN & PEERS are not required for the peer
      # Services to expose format (comma-separated)
      # SERVICES=peer-id:peer-container-name:peer-container-port:expose-port-as
      - SERVICES=peer1:nginx:80:8080,peer1:nginx-demo:80:8081
    cap_add:
      - NET_ADMIN
    volumes:
      - /home/tom/wireguard:/etc/wireguard
    restart: unless-stopped
    links:
      - nginx:nginx
      - nginx-demo:nginx-demo

  nginx:
    image: nginx
    restart: unless-stopped

  nginx-demo:
    image: nginxdemos/hello
    restart: unless-stopped

wg0.conf
[Interface]
PrivateKey = [KEYYYYYY]
Address = <IP_ADDRESS>/32
MTU = 1280
SaveConfig = false

[Peer]
PublicKey = [KEYYYYYY]
Endpoint = wireguard.DOMAIN.com:51820
AllowedIPs = <IP_ADDRESS>/32
PersistentKeepalive = 25

and my logs :
Starting Internet redirection server
Starting Wireguard
Warning: `/etc/wireguard/wg0.conf' is world accessible
[#] ip link add wg0 type wireguard
Error: Unknown device type.
Unable to access interface: Protocol not supported
[#] ip link delete dev wg0
Cannot find device "wg0"

Can you help me please :3

I've tested your config locally and it appears to work fine for me using Docker version 24.0.7.
The error message Unable to access interface, sounds like it could be that you are using Docker a locked down machine or user account that doesn't have access to use cap_add: NET_ADMIN (e.g. rootless Docker or LXC etc).
Are you able to create a new Debian VM using either VirtualBox, Boxes, virt-manager or Proxmox etc, then run the Docker convenience install script and see if it works there using sudo docker compose up -d

I try in debian VM and it's OK, I think it's my Rocky Linux 8 server :/


PR testing not setup

@cjds and @erelson I just opened #16 and noticed I must have forgotten to setup PR testing on this repo- sorry.
It is setup on other PRs for example: fetchrobotics/fetch_robots#57
Similar to: fetchrobotics/fetch_msgs#17

Also @cjds you may want to look into #7 again, as we had talked about this before I left the standard msg which wasn't available at the time has grown to be nearly a superset of the our power_msgs and I had spoken with @dbking77 because I think the new standard one could used instead of the internal msgs which would save some headaches between commercial and research code.
I thought it would take only a little effort, but it should definitely be done before any ROS2 transition.


Have the elapsed time affecting the amount of movement and rotation.

Capture the elapsed time between two consecutive rendered frames.
Incorporate the elapsed time in calculating the movement distance and rotation.

@thomasschiwietz We need to merge this final commit. It reverts a code clean-up which breaks the navigation in sdl-viewer.

I signed it!

@wally-the-cartographer merge

Merge requested by authorized user SirVer. Merge queue now has a length of 1.


Fix margin mixins

margin position utility padding -> margin (bug)

@huangbong I have fixed it in https://github.com/picturepan2/spectre/commit/e1889c840e060b51e4b551a3e30f142ce4b9ec2b but haven't merged yet. Thank you anyway.

Oh my bad, didn't see the new branch. thx


ghostman.sh install symlinks are malformed and tar contents are missing on aarch64 platform

bash bin/ghostman.sh install for the aarch64 platform results in broken links for the binaries.
cd
# force re-install
rm -r ~/ghostcore

bash bin/ghostman.sh install
 --> Downloading https://github.com/ghost-coin/ghost-core/releases/download/v<IP_ADDRESS>/ghost-<IP_ADDRESS>-aarch64-linux-gnu.tar.gz...  done!
 --> Unpacking ghost-<IP_ADDRESS>-aarch64-linux-gnu.tar.gz... tar: Substituting `.' for empty member name
 done!
mv: cannot stat 'ghost-<IP_ADDRESS>/bin/ghostd': No such file or directory
mv: cannot stat 'ghost-<IP_ADDRESS>/bin/ghost-cli': No such file or directory
mv: cannot stat 'ghost-<IP_ADDRESS>/bin/ghost-wallet': No such file or directory

The results in sym links fail because they point to a non existent file location.
ls ~/ghostcore/
ghost-<IP_ADDRESS>-aarch64-linux-gnu.tar.gz              ghost-cli  ghost-wallet
ghost-<IP_ADDRESS>-aarch64-linux-gnu.tar.gz.DIGESTS.txt  ghostd

ls -l ~/ghostcore/ shows broken links links:
ghost-cli -> ghost-cli-<IP_ADDRESS>
ghostd -> ghostd-<IP_ADDRESS>
ghost-wallet -> ghost-wallet-<IP_ADDRESS>

Workaround:
tar -xvf ~/ghostcore/ghost-<IP_ADDRESS>-aarch64-linux-gnu.tar.gz -C ~/ghostcore
mv ~/ghostcore/ghost-<IP_ADDRESS>/* ~/ghostcore/
#(or fix the sym links)

this has been deprecated in favor of https://github.com/ghost-coin/GhostVault

Ok - I was working on a cold staking node and the guide references ghostman. (see https://ghostbymcafee.medium.com/vps-cold-staking-setup-612d6f63242b )
I fixed the install script by editing the ARM if statement.  The arm binaries do not contain a "bin" subdirectory.
ghostman/lib/functions.sh starting line 486
    # place it ---------------------------------------------------------------

    echo "LATEST_VERSION = $LATEST_VERSION"
    if [ $ARM != 1 ];then
        mv "ghost-$LATEST_VERSION/bin/ghostd" "ghostd-$LATEST_VERSION"
        mv "ghost-$LATEST_VERSION/bin/ghost-cli" "ghost-cli-$LATEST_VERSION"
        mv "ghost-$LATEST_VERSION/bin/ghost-wallet" "ghost-wallet-$LATEST_VERSION"
        mv "ghost-$LATEST_VERSION/bin/ghost-qt" "ghost-qt-$LATEST_VERSION"
    else
        mv "ghost-$LATEST_VERSION/ghostd" "ghostd-$LATEST_VERSION"
        mv "ghost-$LATEST_VERSION/ghost-cli" "ghost-cli-$LATEST_VERSION"
        mv "ghost-$LATEST_VERSION/ghost-wallet" "ghost-wallet-$LATEST_VERSION"
        mv "ghost-$LATEST_VERSION/ghost-qt" "ghost-qt-$LATEST_VERSION"
    fi

I suggest updating the link from https://www.ghostbyjohnmcafee.com/faq/staking that points to the stale medium article (https://ghostbymcafee.medium.com/vps-cold-staking-setup-612d6f63242b ).  Then we can close this one out.

please see https://ghostveterans.com/vps for a guide


Eran/save messages new

I did some changes to the code after the CR and got some additional comments from Aur sent on whatsapp.
Here they are:

logger = logging.getLogger(name)

This is not the right place for loggingBasicConfig

Some ##CR comments were replaced with "for later" (or similar). Bad practice since the alternatives don't have a unified format that makes them easy for searching in the code

I tried to take most of the code out from the "main", as requested in the CR, but the bot did not respond to any commands/events - seemed that the "run" did not recognize the bot object. However, Aur says that it probably means there was a problem with the refactoring (maybe I didn't take all the necessary things outside) and that it should work properly.

sys.exit() is just a bad habit / communicates the wrong thing here. It means "stop the process violently". You just want to not do the rest of those things, no violence involved. Sure, no measurable difference now, but wrong vs correct meaning, and might become a bug if code changes.

@SonOfLilit
I think we're all good now except:

CRs that mark things that should be removed (currently used for testing) or rewritten when we can connect to the DB
The make_private_channel CRs which will be addressed to @Godnessy

Can I merge to "main"?