--zipExtensions does not always work

Describe the bug
I use --zipExtensions "mpk" for checking .js files in the zip archive mpk. This does not always work.
not finding the vulnerability except when the mpk is unzipped first:
widgets\RichText.mpk\RichText\ckeditor\ckeditor.js
scanning and finding the vulnerability in zipped archive (as expected):
widgets\HTMLSnippet.mpk\HTMLSnippet\lib\jquery-3.3.1.js
widgets\HTMLSnippet.mpk\HTMLSnippet\widget\HTMLSnippet2.js
Version of dependency-check used
The problem occurs using version 8.0.1 of the cli tool
Log file
enclosed
mylog.zip
To Reproduce
Steps to reproduce the behavior:
scan a mpk file with --zipExtensions "mpk"
Expected behavior
it should scan the zipped mpk always (not sometimes)
Additional context
I will provide the mpk file (in a zip)
RichText.zip
I did a scan on the zipped files with --zipextensions "mpk" and the same scan on the extracted files. Results:

It found 184 vulnerabilities in the zipped mpk's with --zipextensions "mpk"
When scanning the extracted files, the check found 192 vulnerabilities. So, a difference of 8

See https://github.com/jeremylong/DependencyCheck/pull/5371. For now you will likely need to extract the mpk files prior to scanning.


Add WeasyPrint to Fake Browser Engine

WeasyPrint is comparable to wkhtmltopdf in purpose; it implements a working CSS Paged Media Model

Looks good, thanks! Also thanks for correcting the license names :).


"C# for Java developers" and similar articles?

I just read this discussion on Reddit about learning C# for a developer who already knows other programming languages and realized there doesn't seem to be anything like that in the official documentation.
Somebody in that discussion linked to the cheat sheet "C# for Java Developers", but it hasn't been updated since 2010 and both languages have changed significantly since then.
Would it be useful to have an article targeted specifically at developers of each popular programming language (say, Java, JavaScript, C++, Python), explaining the most prominent differences between those languages and C#?

@BillWagner I tagged this as a doc-idea for C#. Please take a look.

I'm tagging this for discussion as well.
We've generally avoided 1:1 comparisons with other languages in docs. We have made some very generic comparisons with "other object oriented languages" or "other C-based language syntax".
Is there value in direct comparisons? If so, vote 👍 on this comment. If not, vote 👎 on this comment. If there is value, we'll discuss which languages should be covered.
/cc @MadsTorgersen @jcouv @jaredpar @rowanmiller @BethMassi


don't downcast when assigning to a field_array

addresses #251

just a polite ping :)  Let me know if you want or need additional tests or documentation.  thanks!

Sorry for the radio silence, if you can revert that respond_to change I'll get this merged.

@localshred no worries!  I understand you have a life outside of your OS projects :)

@localshred and my apologies for going silent!  If the changes to #to_hash causes issues, let me know


[1.12+][Feature Request] RedNet

Hello.
Firstly, great thanks for your work!
I've suggestion for this mod: implement RedNet (from MFR).
There's so little mods (for MC 1.12+), which add powerful redstone technology (such as Project Red or Super Circuit Maker), so this feature would be very helpful and it's highly required.
Everything about implementation you can find in original MFR. Also, extending original concept and adding more features is welcome.
P. S. If you need any help - feel free to ask (I'm Java programmer).

I'm excited for the new mod. Can you mention here (or somewhere else where Industrial Foregoing people will see it) when it happens?


Please provide documentation

❓ Questions and Help
Until we move the questions to another medium, feel free to use this to submit your question:
Question
Hi, please could you share any form of documentation? The library itself is very large and features a number of methods, functions and ways to define the same thing using different data structures. There currently is 0 documentation except for a number of in-code comments. Particularly the issue becomes worse when dealing with config files, as there is no way of figuring out of what an expected structure is supposed to look like.

I'm sorry for the lack of documentation :/
I'll flag this to our team


Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server.

Describe the bug
Failed to find dotnet info from path, falling back to acquire runtime via ms-dotnettools.vscode-dotnet-runtime
No compatible .NET runtime found. Minimum required version is 7.0.
[Error - 4:13:01 PM] Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server.
Error: Could not resolve the dotnet path!
at t.DotnetRuntimeExtensionResolver. (c:\Users\atulm.vscode\extensions\ms-dotnettools.csharp-2.0.413-win32-x64\dist\extension.js:2:1382303)
at Generator.next ()
at s (c:\Users\atulm.vscode\extensions\ms-dotnettools.csharp-2.0.413-win32-x64\dist\extension.js:2:1380683)
Please attach log file(s) here if you have any:

❗ Privacy Alert! The contents in our log files may contain personal data. Prior to posting to GitHub, please remove any personal data which should not be publicly viewable. https://privacy.microsoft.com/en-US/privacystatement

If you came here from VS Code, the log file location should be copied to the clipboard.
Other Info:
Errors the extension may have encountered have likely been added to your terminal or VS Code windows. Please paste it/them here and describe what happened and the problem you are facing.
Reproduction Steps
Expected behavior
Exceptions & Errors (if any)
Further technical details

Your VSCode Version

The version of the extension that's on your machine

Your operating system details

Failed to find dotnet info from path, falling back to acquire runtime via ms-dotnettools.vscode-dotnet-runtime
The architecture of the .NET runtime (x64) does not match the architecture of the extension (x86).
Dotnet path: C:\Program Files\dotnet\dotnet.exe
Activating C# + C# Dev Kit...
Failed to load the dll from [C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll], HRESULT: 0x800700C1
The library hostfxr.dll was found, but loading it from C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll failed

Installing .NET prerequisites might help resolve this problem.
https://go.microsoft.com/fwlink/?linkid=798306
[Error - 10:15:33] Server initialization failed.
Message: Pending response rejected since connection got disposed
Code: -32097
[Info  - 10:15:33] Connection to server got closed. Server will restart.
true
[Error - 10:15:33] Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server.
Message: Pending response rejected since connection got disposed
Code: -32097
Failed to find dotnet info from path, falling back to acquire runtime via ms-dotnettools.vscode-dotnet-runtime
The architecture of the .NET runtime (x64) does not match the architecture of the extension (x86).
Dotnet path: C:\Program Files\dotnet\dotnet.exe
Activating C# + C# Dev Kit...
Failed to load the dll from [C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll], HRESULT: 0x800700C1
The library hostfxr.dll was found, but loading it from C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll failed
Installing .NET prerequisites might help resolve this problem.
https://go.microsoft.com/fwlink/?linkid=798306
[Error - 10:15:33] Server initialization failed.
Message: Pending response rejected since connection got disposed
Code: -32097
[Info  - 10:15:33] Connection to server got closed. Server will restart.
true
[Error - 10:15:33] Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server.
Message: Pending response rejected since connection got disposed
Code: -32097
Failed to find dotnet info from path, falling back to acquire runtime via ms-dotnettools.vscode-dotnet-runtime
The architecture of the .NET runtime (x64) does not match the architecture of the extension (x86).
Dotnet path: C:\Program Files\dotnet\dotnet.exe
Activating C# + C# Dev Kit...
Failed to load the dll from [C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll], HRESULT: 0x800700C1
The library hostfxr.dll was found, but loading it from C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll failed
Installing .NET prerequisites might help resolve this problem.
https://go.microsoft.com/fwlink/?linkid=798306
[Error - 10:15:34] Server initialization failed.
Message: Pending response rejected since connection got disposed
Code: -32097
[Info  - 10:15:34] Connection to server got closed. Server will restart.
true
[Error - 10:15:34] Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server.
Message: Pending response rejected since connection got disposed
Code: -32097
[Error - 10:15:34] Restarting server failed
Message: Pending response rejected since connection got disposed
Code: -32097
Failed to find dotnet info from path, falling back to acquire runtime via ms-dotnettools.vscode-dotnet-runtime
The architecture of the .NET runtime (x64) does not match the architecture of the extension (x86).
Dotnet path: C:\Program Files\dotnet\dotnet.exe
Activating C# + C# Dev Kit...
Failed to load the dll from [C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll], HRESULT: 0x800700C1
The library hostfxr.dll was found, but loading it from C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll failed
Installing .NET prerequisites might help resolve this problem.
https://go.microsoft.com/fwlink/?linkid=798306
[Error - 10:15:34] Server initialization failed.
Message: Pending response rejected since connection got disposed
Code: -32097
[Info  - 10:15:34] Connection to server got closed. Server will restart.
true
[Error - 10:15:34] Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server.
Message: Pending response rejected since connection got disposed
Code: -32097
[Error - 10:15:34] Restarting server failed
Message: Pending response rejected since connection got disposed
Code: -32097
Failed to find dotnet info from path, falling back to acquire runtime via ms-dotnettools.vscode-dotnet-runtime
The architecture of the .NET runtime (x64) does not match the architecture of the extension (x86).
Dotnet path: C:\Program Files\dotnet\dotnet.exe
Activating C# + C# Dev Kit...
Failed to load the dll from [C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll], HRESULT: 0x800700C1
The library hostfxr.dll was found, but loading it from C:\Program Files\dotnet\host\fxr\7.0.10\hostfxr.dll failed
Installing .NET prerequisites might help resolve this problem.
https://go.microsoft.com/fwlink/?linkid=798306
[Error - 10:15:34] Server initialization failed.
Message: Pending response rejected since connection got disposed
Code: -32097
[Error - 10:15:34] The Microsoft.CodeAnalysis.LanguageServer server crashed 5 times in the last 3 minutes. The server will not be restarted. See the output for more information.
[Error - 10:15:34] Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server.
Message: Pending response rejected since connection got disposed
Code: -32097
[Error - 10:15:34] Restarting server failed
Message: Pending response rejected since connection got disposed
Code: -32097

@Hongmo97 I filed a separate issue for your report here since its a different problem - https://github.com/dotnet/vscode-csharp/issues/6258

@4ColorDesign mind posting the output of running dotnet --info here?
@nagilson I believe this issue is still on the runtime extension side.  Essentially what is happening here is we fail to find a .net7 runtime on the path, so we fallback to the runtime extension.  And the call to the runtime extension is returning nothing here - https://github.com/dotnet/vscode-csharp/blob/main/src/lsptoolshost/dotnetRuntimeExtensionResolver.ts#L98

Sorry, I will investigate that further. That shouldn't happen. @4ColorDesign May you please send the log as the attached issue template had suggested so we can investigate? Thanks.


make controller brake like steering does

Whenever steering wants to brake, it just sets the pose.brake = True.
When controller wants to brake, it also sets velocity to be negative.
This issue includes:

[ ] verifying that car_interface is properly braking when pose.brake is set, and velocity is null.
[ ] making controller's brake interface better, by having a dedicated "brake" button, that sets pose.brake to true. AKA: I don't want to have to reverse in order to brake the car :)

@iRapha The controller node should have a brake button that sets brake = True and sets velocity = 0. I think the reason we were having to use reverse to brake is because we were actually setting velocity. Since there aren't any brakes on the car and we were setting acceleration to 0, it would just coast to a stop. Let me know if I am missing something.

So I agree with you that's how things should be working, but I think that we need to handle setting the velocity in car_interface.
controller and steering should not care about the hardware details. They should be able to just set brake = True and the details about whether we have breaks and are activating those or we don't have brakes and have to set vel=-maxspeed. Handling this should happen in car_interface.
The first part of the above paragraph seems to be the way things work currently, given this.
So this issue is just a matter of making sure that car_interface is translating a "break" message into setting velocity=-maxspeed, which is doesn't seem to currently do.
Then one day when we get brakes ( #79 ) we can make car_interface just activate those.
Furthermore, the readme does not include what button is the break button.
Then we just need to test that braking works in general (from controller, by pressing brake button, and from steering by sending brake=True pose message).


Add missing definitions to stdlib/benchmark.rbi

Add missing definitions to Tms.

Thanks I kicked off a Stripe-wide test:
http://go/builds/bui_HGxADToOntm2VT

Thanks!


Can't find the way/guide to export json with listen variables, Please help me.

I do find the "listen" propertis in the json, But I didn't find the way to set the listen variable to JsonXXX widget.
I read the guide doc, But I didn't find how to set listen variables and how to export a listen variables.
So I can't export a json with a "listen" propertis.
Please help.
Thanks

What do you mean that you cannot set listen variable? Do you mean that the  code created with
https://github.com/peiffer-innovations/json_dynamic_widget/blob/main/json_dynamic_widget/lib/src/builders/json_exportable_builder.dart not supports specifying listen set?
If that's what you mean - then yeah it is not supported aand that might be a good idea to add such a possibility. Feel free to open your PR :D

Thank for your reply!
"listen": [
            "slow_middle_curve",
            "customOpacity"
          ],

I mean, how can I include the listen property node in jsonstring with json_exportable_builder?
I found the generated toJson method of JsonXXX, It doesn't include the listen property, so this makes me confused.

You cannot at this moment. For now you can only export the json and then add these listen vars to the json manually..
Fell free to open your PR with the missing functionality

Thank for your reply, I'll have a try on it in my free time.


Refactor xr.save_mfdataset() to automatically save an xarray object backed by dask arrays to multiple files

Is your feature request related to a problem? Please describe.
Currently, when a user wants to write multiple netCDF files in parallel with xarray and dask, they can take full advantage of xr.save_mfdataset() function. This function in its current state works fine, but the existing API requires that

the user generates file paths themselves
the user maps each chunk or dataset to a corresponding output file

A few months ago, I wrote a blog post showing how to save an xarray dataset backed by dask into multiple netCDF files, and since then I've been meaning to request a new feature to make this process convenient for users.
Describe the solution you'd like
Would it be useful to actually refactor the existing xr.save_mfdataset() to automatically save an xarray object backed by dask arrays to multiple files without needing to create paths ourselves? Today, this can be achieved via xr.map_blocks. In other words, is it possible to have something analogous to to_zarr(....) but for netCDF:
ds.save_mfdataset(prefix="directory/my-dataset")

# or

xr.save_mfdataset(ds, prefix="directoy/my-dataset")

---->

directory/my-dataset-chunk-1.nc
directory/my-dataset-chunk-2.nc
directory/my-dataset-chunk-3.nc
....

I agree, this does sound useful!
It might make sense to split this into a few pieces of functionality:

A new helper function that splits an xarray object into separate objects for each chunk, including some representation of the "chunk id". Perhaps split_chunks()?
A new higher level function that combines (1) and the existing save_mfdataset to automatically save an xarray object into multiple files. This probably should be a new function rather than using the existing save_mfdataset because the API is different.

Perhaps split_chunks()?

There was a proposal for .blocks (https://github.com/pydata/xarray/issues/3147#issuecomment-513044413) I agree that 'chunk id' would be useful. Does dask expose that somehow?


Reenable Startup identity tests

Disabling as part of the hosting work since there's no easy way to do this today
Probably need some helper that makes it easy to run aribtrary code as part of a request (simialr to what auth functionals do)

Merged 288cb6c58f26aa10a76c583e18f3063b14074b4f


How to delete repository from private registry?

I was wondering how to delete a repository from my private registry? As I searched online there is no apparent way to do it. Thanks for you help.

+1

+1

+1 My registry size is getting out of control. I want to delete old images from the registry. There is no way to do this via API today.

+1

+1

+1

+2!

@ankushagarwal when you say your registry size is out of control, what size of data you referring to? How big is too much?

+1, am using https://gist.github.com/shepmaster/53939af82a51e3aa0cd6 now to clean orphaned stuff from the registry, having it happen magically would be great

@stevvooe : I am running the registry locally on my Mac in boot2docker with 50GB space and it ran out of space (Yes, I pushed a lot of images each about 1G in size).

I have switched to Quay.io's private registry for now which has a nice API to delete tags (It then deletes all images which are not reachable by any tags).

I asked @stevvooe 2 weeks ago about this issue. AFAIK it looks like this will be resolved with the v2 implementation of the registry: https://botbot.me/freenode/docker-dev/2015-01-16/?msg=29800131&page=6
Without looking too far into the code, this could be resolved by tracking an image's refcount. If it is not a parent of any other image, then it's safe to say that the image could be removed without damaging the integrity of other images, though this could be a computationally expensive operation if we're talking about an image count somewhere in the 100k+ range.

you can remove entire repository using curl:
curl -X DELETE /v1/repositories//
to remove unused images you have to remove tag first:
$ curl -X DELETE /v1/repositories//tags/
then run this script:
https://gist.github.com/kwk/c5443f2a1abcf0eb1eaa
on docker registy server, make sure you install 'jq' package first

I was just hoping that there was a inbuilt API to remove unused images,
instead of running an external script which needs maintenance.
ᐧ
On Fri, Feb 13, 2015 at 5:37 PM, Pawel<EMAIL_ADDRESS>wrote:

you can remove entire repository using curl:
curl -X DELETE /v1/repositories//
to remove unused images you have to remove tag first:
$ curl -X DELETE /v1/repositories//tags/
then run this script:
https://gist.github.com/kwk/c5443f2a1abcf0eb1eaa
on docker registy server, make sure you install 'jq' package first
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker-registry/issues/45#issuecomment-74244366
.

--
Ankush Agarwal
http://ankush.io
@ankushio https://twitter.com/ankushio
There are 10 types of people in this world. Those who understand binary
and those who don't.

@ankushagarwal
Addressing this is part of the new golang-registry (https://github.com/docker/distribution).

+1 it shouldn't be this hard

how to create private repository using docker api?
I have created registry using docker api by default it is public .
import requests
import json
from requests.auth import HTTPBasicAuth
data=[{"id":"8c2e06607696"}]
#data=json.dumps(data)
headers={'content-type':'application/json','Accept':'application/json','X-Docker-Token': 'true'}
url='http://index.docker.io/v1/repositories/nandaraj/busynew/'
r=requests.put(url,data=json.dumps(data),headers=headers,auth=HTTPBasicAuth('nandaraj', '12345'))
this is my code.By executing the above code repository is created a public .How to create a private repository using docker api?

@nandarajxxx I believe your question would be better suited on IRC, the Google Group or Stackoverflow. See the community page for links to those community resources.

Thank You

As a workaround you could also use this docker image, which offers a delete button for a repo.

@schmunk42 That doesn't remove the images from the storage, does it?

@vincentvanouytsel Uh, to be honest, I didn't check that, sorry. I just saw that the image is not listed anymore.

@schmunk42 I don't think it does. A workaround for this issue could be removing the tags (with the delete button) and then run this  script.
This should remove the untagged images from your storage.

+1

+1

are any of the four mentioned potential solutions being looked at? (https://github.com/docker/distribution/blob/master/ROADMAP.md#deletes) it makes sense to me that coding the entire solution to meet the needs of the "lower common denominator among the storage drivers" can be likened to coding a solution around exceptions. one would think that with proper modularization, the software could adapt to specific deployments and act accordingly. for example, if deployed to a single node for development purposes, and leverages the OS filesystem, the system should load an "OS driver" that could manage deletes rather easily.

@jadedfire Yes, coding from an armchair is quite easy.
We are indeed looking into this set of solutions. There are a number of ways a registry can be deployed and we'd like to have a solution that works well for everyone, rather than restricting deletion to a narrow set of deployments.
If you believe the current analysis is flawed, I welcome your proposal, an implementation or any modifications that would help us to achieve this.

@stevvooe classy.

@ripienaar To help others understand why deletes are non-trivial, we put together an analysis. To have it dismissed off-hand, without consideration for the detailed points covered, is both insulting and inconsiderate, especially to those working at finding a solution.
If you or @jadedfire believe deletes to be straightforward, I invite you to contribute.

@stevvooe oh I see of course it's ok to be dismissive and belittling because it someone did it to you. Gotcha.

@ripienaar And how is what you are doing currently constructive? Just ignore my snark and let's move on.
We are implementing Stop-The-World GC in with https://github.com/docker/distribution/issues/743. This should help in a lot of simple deployments.

To be quite honest, this recent discussion is just one of the examples why I have much more respect for the Django project and its community than Docker.
You really need to review your community guidelines, if you wish to have respect from and within the community.

Hi all,
This exchange is not productive IMHO.
You are right @petarmaric, we should handle things in a better way.
Admittedly, it's not always easy, and admittedly, sometimes we suck at it.
Mind you, I believe we are successful at it most of the time, and you will find out that https://github.com/docker/distribution is indeed a place where constructive input and fast moving development happens, for the benefit of everybody.
Let me remind a couple of things to all people here:

this repo here is clearly marked as deprecated, and has been for more than six months, and I'm still wondering why people would keep commenting here while this is plastered all over the repo, and while I myself barely read notifications anymore (and please check https://github.com/docker/docker-registry/graphs/contributors before assuming I'm just a random joe around here). This here is the home of the legacy python, v1-protocol registry - no discussion or bug report is likely to lead to any other response than: please move to the v2 protocol based, golang implementation (here again: https://github.com/docker/distribution)
priorities in an open-source project are driven by the willingness of people who actually write code. If you don't write code, that's perfectly ok, and you are definitely an important part of the community, and yes, your input is definitely the basis on top of which we are building the development effort, but now: blind, serial +1s, or blanket statements about what is supposedly easy to do are definitely not going to lead to a magical resolution - on the contrary, these are just adding to the developers frustration, especially when plenty of discussion already took place
if you are still an active user of the v1, python registry, there are plenty of home grown solutions to garbage collect your storage: please just click https://github.com/docker/docker-registry/issues?q=is%3Aopen+is%3Aissue+label%3Adelete and look around
if you are interested in the v2 registry, please look around here:
https://github.com/docker/distribution/issues/743
https://github.com/docker/distribution/issues/422
https://github.com/docker/distribution/pull/508
https://github.com/docker/distribution/pull/572
https://github.com/docker/distribution/pull/677
and finally here: https://github.com/docker/distribution/blob/master/ROADMAP.md#deletes
if you have some constructive feedback to provide as to why you need (?:API-delete|garbage-collection|specific-usecase), please do so, by expressing a clear, motivated use case, and be opened to suggestions to address your actual concerns.  If someone is not acting up to your standards, be the bigger man and make this community better by easing the dialog instead of fueling a flame war.
I'm closing and locking this issue, and wish this message goes through all participant here.


[TEVA-3361] AB test alternative search results

Jira ticket URL
https://dfedigital.atlassian.net/browse/TEVA-3361
Changes in this PR:

This PR adds an AB test variant which moves the search fields from the left column to the right column on the results page for desktop users only

Screenshots of UI changes:
Before

After

doesnt appear to be working on ipad safari, probably needs a media query tweak - sorry

have tested in samsung android, iphone safari and ipad safari on browserstack - clean bill of health

this is good with me but for someone else can approve as i worked on it


dimensions aren't working

Which operating system does the issue occur on?
Debian/sid
If on linux, are you using X11 or Wayland?
X11, 5760x2160, 160 dpi

So you see the dimensions given have nothing in common with the dimensions displayed: 80x25 became something like 48x15 or so. Granted, the DPI is not usual, and ther is custom font, still the resolution seems to be based on the system font used in the title rather than the terminal space.

Similar issue here, window is way too small, and font is way too big. Arch Linux, X11, 1080P, 176DPI.
I'm guessing this is a HiDPI issue. Both terminals below are configured for 80x24 window size. The other terminal is gnome-terminal.

X is configured with the correct DPI:

xdpyinfo | grep -B 2 resolution
screen #0:
dimensions:    1920x1080 pixels (277x156 millimeters)
resolution:    176x176 dots per inch`

I had the same issue on macOS, but https://github.com/jwilm/alacritty/pull/1403 fixed it for me.


Wishlist

[x] - Multifeature selections -> process many districts at once
[ ] - autogenerate metrics from mander
[ ] - visualize metrics
[ ] - custom icon
[ ] - testing framework

Moved items to roadmap


Support C++20 Module

ITNOA
I think the C++20 Module is the next era of C++ dependency management. So I think VCPKG need some good integration with it, and port all of its ports to support C++20 Module. and maybe vcpkg can play role like cargo for C++ so I think it is very important to fast decision and good design to make deep integration with C++20 Module.
The good news is CMake 3.20 is support C++20 Module natively (also is experimental still now) and I think we can get help from that.

related to #11177

@soroshsabz, thanks for bringing this up! we'd perfer to change this to discussion.


Improving rebuilding

This is a low hanging fruit in improving rebuilding. Since right now the database is created afresh during each rebuilding, most time is spent on inserting tuples into a new database. However, we only need to process those that are changed.
Before:
Geomean egglog/souffle: 0.5349996183864182
Total egglog/souffle: 0.687601368899584

After:
Geomean egglog/souffle: 0.4056677316834581
Total egglog/souffle: 0.4405201946577985

Also, there are still many opportunities for optimization: the rebuilding in this PR uses many small vectors. ~1/2 time of the rebuilding is spent on malloc/free. See flamegraph:

Oops some tests are failing

Okay I fixed the test, but the speedup turns out to be insignificant :(
Geomean egglog/souffle: 0.533196396959818
Total egglog/souffle: 0.6305961777457302

This could be a good fit for HashMap::retain.


Make protocol-level crashes easier to understand

Description
Now that particular case produces "no response to send to client".
Closes #2516.
Readiness checklist

[ ] I added/updated integration/compatibility tests – not possible with our Go driver, tested manually.
[x] I added/updated comments and checked rendering.
[x] I made spot refactorings.
[ ] I updated user documentation.
[x] I ran task all, and it passed.
[x] I ensured that PR title is good enough for the changelog.
[x] (for maintainers only) I set Reviewers (@FerretDB/core), Labels, Project and project's Sprint fields.
[x] I marked all done items in this checklist.

You have some linter failures.


ts-web/rt: v0.2.1-alpha.1

typescript changes from #790
turns out we had additions from before, which we never made a release since. using those as the spotlight change
the version numbering is updated, see #948

ok as long as required tests pass and applicable tests pass


No inbox forwarder messages sent for incoming customer signups

Quick inspection showed that send_inbox_forwarders_message isn't called. However, I would expect that create_solution_inbox_message would call this method under the hood. Maybe with an extra param that control this, so you can choose not to send inbox fw, or can disable replying.

Quick fix ee155a9


Allow onMouseEnter/onMouseLeave, (and others?) handlers for ListItem without 'button' prop

I don't see any previous issues or comments about this in the project. But is there a reason why I am unable to use onMouseEnter/onMouseLeave on a ListItem in typescript without the  button prop applied? I understand that the button prop designates whether to use a li or a button but I should still be able to use the various handlers?

[X ] The issue is present in the latest release.
[ X] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
<ListItem onMouseEnter={someHandler} /> provides a TS error that button is required
Expected Behavior 🤔
<ListItem onMouseEnter={someHandler} /> should be acceptable
Context 🔦
I am initially trying to use this to track hovering on an element in JS so I may do some logic (no styling or anything related to that).

@oliviertassinari I think I can implement this

This is already working:
// verify that https://github.com/mui-org/material-ui/issues/19756 already worked.
function MouseEnterTest() {
  function handleMouseEnter(event: React.MouseEvent<HTMLLIElement>) {}
  <ListItem onMouseEnter={handleMouseEnter} />;
}

someHandler is probably expecting a slightly different MouseEvent target.

You are correct, I had a different handler type.


Same files for the different models of Virtual Try On in the model zoo

I tried to run test_virtual_tryon.py with GMM model checkpoint provided, but it turned out that there are a lot of unexpected keys in source state_dict and missing keys in source state_dict. So I checked out both GMM and TOM models and figured out that they have same state dicts with same weights in it. I'm not sure this is how it's supposed to be.

run "diff GMM_epoch_40.pth TOM_epoch_40.pth", confirm 2 files are the same


Different behaviour with Astronomy's findOne-functions

I noticed different behaviour when using Astronomy's own findOne-function compared to the Mongo Collection's findOne.
If the function argument is null, Meteor's version does not return anything. Astronomy just finds one document and returns that.
Documents = new Mongo.Collection('documents');
Document = Class.create({ .....

// insert some documents to collection...

// Let's see what we can find with findOne(null)
Documents.findOne(null); // Nothing
Document.findOne(null); // Found a document

Reproduction here: https://github.com/arggh/astronomy-find-issue

It's known behavior and I would rather say that it's bug on Meteor's side. I don't know why they decided to treat null value that way. When you execute Mongo findOne method directly with the null value it will return the first document.
db.users.findOne(null); // document
db.users.findOne(); // document

Meteor treats null differently which in some cases may be understandable when you think about security but developer should be responsible for security.

Ok I've made it consistent with what Meteor does. However I still don't like it but I agree that it should be consistent. But MDG wasn't consistent with MongoDB at first place. You can clone most recent version from the GitHub repository.


Add Simple Documentation and Fix Review Tests

Documentation

Style ReadMe
Create Contributing
Create Future
Create Change log
Create ReadMes for client, database, semantic, and server
Create documentation folder

Create Skeleton Documentation files

Testing

Use memory route to speed up tests
Test review can set set properties
Refactor review tests to use shallow rendering

Other

Add sample data for itinerary

Closes #80

Pull Request Test Coverage Report for Build 85

2 of 2 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.7%) to 78.764%

Totals

Change from base Build 83:
1.7%

Covered Lines:
185

Relevant Lines:
226

💛  - Coveralls


Fixes for Keycloak 26.x

What are the relevant tickets?

Closes https://github.com/mitodl/ol-keycloak/issues/80
Description (What does it do?)

This adds a number of template fixes to address issues under 26.x:

Usages of attributes defined by our freemarker SPI won't be present on error pages but the templates still get used so I made those null-safe.
The library for freemarker templates must've been updated to a version where the truthiness of an empty sequence is no longer false, so I updated those if directives to check the size of social.providers instead.

How can this be tested?

You should probably snapshot your keycloak DB before doing this since that's easier to rollback
Update your keycloak instance to 26.x
You should still be able to login (with email and touchstone), register, and reset your password.

I've fixed the UI issue in the screenshot above but it's still giving a weird UI for the email opt in field, which we don't even want them filling out anyway.

Standup announcements

Out of office today

What did I work on yesterday?

Keycloak 26.x upgrade:

Worked on fixing our theme customizations which required some code to be copy/pasted from upstream: https://github.com/mitodl/ol-keycloak/pull/125

Looked into the Keycloak logout issue Chris and Sar were seeing on RC. It's related to a user being linked to multiple Keycloak accounts, so we need to put in a preventative measure for this and to also fix any existing accounts with the issue.

What am I working on today?

N/A


bugfix: Styling Issues in Wrappid Mobile Applications

Describe the bug
There are multiple styling issues in Wrappid's style package, written primarily with CSS styles that work on the web but do not translate well to mobile. This is causing numerous errors and unexpected behaviours in mobile applications. Consequently, addressing these style compatibility issues is essential for improving the user experience and reducing support requests.

To Reproduce
Steps to reproduce the behaviour:

Set up the mobile environment.
Start the server.
Observe various errors related to styling in the mobile application.

Expected behaviour
All styles should work seamlessly in the mobile application, similar to their behaviour on the web.

Stack Trace

Screenshots

Additional context

The styling issues appear to stem from using certain CSS properties that do not have equivalent support in React Native.
Some properties that work on the web (like float, flex, and certain CSS values) are causing layout problems or crashing the app on mobile.

Suggested Next Steps for Resolution

Review the style properties being used in the Wrappid style package for compatibility with React Native.
Refactor styles to align with Flexbox principles and React Native styling conventions.
Test extensively on various devices and API levels to ensure consistent behaviour.

As not completed


A restcontroller in gateway. @PostMapping("") can only get path params

I have a restcontroller in gateway. @PostMapping("") can only get path params. Neither x-www-form-urlencoded or form data can't pass to the controller and return
"status": 400,
    "error": "Bad Request",
    "message": "Required String parameter 'XXX' is not present"

Although I know this is not recommended to add a controller in gateway. But I need some filters related interfaces
spring boot 2.1.2.RELEASE/spring cloud Greenwich.RELEASE

spring:
  cloud:
    gateway:
      discovery:
        locator:
          enabled: true
          lower-case-service-id: true

gateway bug demo.zip
Here's the demo.
Success:
http://<IP_ADDRESS>/auth/login?UserId=1111&token=1111
Fail:
POST /auth/login? HTTP/1.1
Host: <IP_ADDRESS>
Content-Type: application/x-www-form-urlencoded
cache-control: no-cache
Postman-Token: 20731dba-b47c-4ce8-a775-8d6c1ef9d046
UserId=1111 token=1111 undefined=undefined
{
    "timestamp": "2019-02-01T07:16:38.281+0000",
    "path": "/auth/login",
    "status": 400,
    "error": "Bad Request",
    "message": "Required String parameter 'UserId' is not present"
}

I'm unable to recreate your problem with your demo. You need to make sure that your application is compiled with -parameters to method parameters are included, see https://www.logicbig.com/how-to/java-command/java-compile-with-method-parameter-names.html

There's two project in demo not compiled at all only the raw code. Open it by idea and run two project togather.

I did just that

gatewaydemo.zip
Here's a new demo with two tests inside. Run the project first then run the tests.

This has nothing to do with gateway but Webflux from framework.
From https://docs.spring.io/spring/docs/current/spring-framework-reference/web-reactive.html#webflux-ann-controller

The Servlet API “request parameter” concept conflates query parameters, form data, and multiparts into one. However, in WebFlux, each is accessed individually through ServerWebExchange. While @RequestParam binds to query parameters only, you can use data binding to apply query parameters, form data, and multiparts to acommand object.

See https://docs.spring.io/spring/docs/current/spring-framework-reference/web-reactive.html#webflux-multipart-forms for more or ask on stack overflow.

In my comment above the docs state that the servlet api treats form parameters the same as query parameters, webflux does not (your test fails if you remove gateway and use spring boot starter webflux). You need a different controller to deal with forms than the one dealing with other parameters

I read the doc. And yes I need to change the controller to webflux type. (I haven' use webflux before.)


Type 'string' is not assignable to type 'TargetLanguageCode'

Describe the bug
A clear and concise description of what the bug is.
[Type error]: I input the target language (string) but deepl.TargetLanguageCode does not allow it.
const defaultLang = "ja";
let typedTargetLang: deepl.TargetLanguageCode = defaultLang;

Type 'string' is not assignable to type 'TargetLanguageCode'.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Hi @taishi55, sorry that it took so long to reply to this issue.
I tried reproducing the problem you described, but I didn't get the same error. The typescript example has a similar line to your code, breaking it into two lines like your code didn't cause an error.
I wonder if this problem is because in practice your defaultLang variable is not a local variable but is defined somewhere else, and the type information is lost? In that case perhaps attaching the type to this variable might help.


TCP Socket Server print IP of client

The sockets/server-tcp.c program should print out the IP of each client that connects to it before it prints the message.

@huyang1988 @pradeep-k @wenhuizhang

Hi


Error when importing Traefik

Do you want to request a feature or report a bug?

Bug

What did you do?
I tried to import traefik at v2.2.1 into a separate go project so I could consume the CRD types.
What did you expect to see?
I expected the import to be successful
What did you see instead?
The go get failed because of a replaced dependency.
$ go get<EMAIL_ADDRESS>go get<EMAIL_ADDRESS>requires
<EMAIL_ADDRESS>invalid version: unknown revision<PHONE_NUMBER>00

Traefik Version:
v2.2.1

Potential Fix
I think doing a go get -u  github.com/abbot/go-http-auth on the Traefik project should do the trick by updating the dependency to a version that's actually live. It shouldn't matter what that version is since it's getting replaced anyway.

This also happens with:
github.com/go-check/check
github.com/docker/docker

for the same reasons

Hello,
To import Traefik as a dependency, as the replace directives are not transitive, you have to set manually the same the replace directives as Traefik.
It's a Go modules limitations.
https://github.com/containous/traefik/blob/7928e6d0cd4c7751a14bea5f74124f8a3cb829c0/go.mod#L99-L109


Slate js support

I've made a slate app and I've made all headers generate a anchor that is the header text itself -  to lowercase and replacing all spaces with hyphens. Is this a issue with how react-router-hash-link works or the way that slate generates the dom?
Here is the element that slate returns when it catches a heading
import { HashLink } from 'react-router-hash-link';

const Header1Element = ({attributes, children, element}) => {
    const anchorId = Node.string(element).toLowerCase().replaceAll(/\s+/g, '-')
    return <HashLink to={"#" + anchorId}>
{children}
</HashLink>
}

@Jackbaude I'm not sure I understand what the issue is, can you be more specific of what's not working?

@Jackbaude I'm not sure I understand what the issue is, can you be more specific of what's not working?

It seems that the slate js editor loads after the window loads. Something like useLayoutEffect has to be used with slate js.

It seems that the slate js editor loads after the window loads. Something like useLayoutEffect has to be used with slate js.


NetworkServiceServer/NetworkService client.

usage of NetworkServiceDiscovery
services registry to do connections to internal services
services apiRegistry for starting up network apis.
partial test of NSC -> NSMD/Registry

This is work in progress, no merge are required yet.
@edwarnicke Please take a look on serviceregistry.go, it is initial step to have one place for all constants and connectivity implementations.
Signed-off-by: Andrey Sobolev<EMAIL_ADDRESS>

Direction looks good so far 👍

Also... don’t forget to rebase on master, found a bug in getting the NetworkServiceManager from the nsmd-k8s that I fixed while you were sleeping :)

Yes, will rebase, Thanks.

It looks like something is breaking the nsmd returning a workspace to nsmdp:
Take a look at the Dump nsmd logs

I rebased this onto master to work with the code that makes memif work.
I also added vagrant machinery for a two node vagrant cluster.
Additionally, we are now deploying four NSCs (all on the same node).  They attempt to connect to the icmp-responder Network Service.  We have two each of icmp-responder-nse (which uses kernel interfaces) and vppagent-icmp-responder-nse (which uses memif interfaces).  They are configured such that one each of them runs on each node.
nsmd currently is round robining among endpoints for the same service, so each nsc attempts to connect to one of the icmp-responders.  Because all nscs are on one node, and each node has one each of icmp-responder-nse and icmp-responder-nse, two of the nsc's will get connected locally (same) node, and two remotely (the other node).
If you run:
make k8s-check
it will attempt a ping check across all four nscs.  Right now two succeed (because local connections are working) and two fail (because remote connections are not).
Also, commands like:
make k8s-nsc-logs
make k8s-vppagent-icmp-responder-nse-logs
etc will conveniently dump logs in a single command.

Some hopefully helpful comments:
Have a look at #516 for a deep dive on VXLAN.  VXLAN requires three parameters to be complete: src_ip, dst_ip, and vni.
The originator of the remote.Connection using Mechanism VXLAN has to provide src_ip... the destination for remote.NetworkService.Request(remote.Connection) for Connection with Mechanism VXLAN has to fill in dst_p and vni.
This should leave you with the question:
How do I get these parameters.
From the Dataplane.MonitorMechanisms() call.  vppagent-dataplane needs to start advertising a Mechanism for VXLAN, and in that advertisement it needs to have src_ip.
I've just pushed my commit here to cause vppagent-dataplane to correctly advertise a usable srcIP in the response to MonitorMechanisms.  Hopefully that helps.

Quick question... am I correct that you have not yet implemented remote.NetworkServiceServer ?

One other note: the integration tests are failing currently for this PR because we need a second node for packet (@fkautz is working on it).  If that passes, currently they will fail because we don't actually succeed in the remote pinging.

A few more comments on design.

Think of a Peer as an entity against which you can call remote or local NetworkService and MonitorConnections.
Workspace is an example of such a Peer, a LocalPeer, LocalPeers speak local.NetworkService and local.MonitorConnection
nsmd also has RemotePeers , which are other nsmds. and which speak remote.NetworkService and remote.MonitorConnection
If we define a common interface:
type interface Peer {
    CompleteCrossConnect(CrossConnect) error
}

Then we can have:
model.LookupPeerByEndpoint(NetworkServiceEndPoint) Peer
and have it return either a LocalPeer, or a RemotePeer, but both providing the Peer Interface.
We would have one LocalPeer for each Workspace (you might even simply give Workspace the Peer API), and one RemotePeer per nsmd with which we have connections.
if model.LookupPeerByEndpoint(NetworkServiceEndpoint) is called for a NetworkServiceEndpoint which is not served by a LocalPeer (aka Workspace) for which we don't have a RemotePeer already, it can create it, note it (so we only have one per Remote nsmd) and return it.
Each Peer should keep its own MonitorConnectionsServer (with its own data about what Connections it has with its peer).
Because each LocalPeer has a specific unix file socket pair in its Workspace, this is simple for LocalPeers.
For RemotePeers, we have a single remote.MonitorConnections(MonitorScopeSelector) (where MonitorScopeSelector is basically an nsm name), we would want a Delegate for it listening for incoming tcp connections.  Basically, a MonitorMechanismDelegateServer that simply calls:
model.LookupPeerByNsmName(nsmName string) Peer
and passes the MonitorMechanism call off to that RemotePeer
This way the global MonitorMechanismDelegateServer is stateless, essentially only calling the servers within each Peer.  The Peer continues to manage its own Connection state.
This will become important in the future, as each Peer will be able to track state differences between what it knows about Connections and what it can learn from its peer... but that is for the future.
Each RemotePeer can implement (or have a member that implements) remote.NetworkService, (as is true for LocalPeers with Workspaces.  We can have a:
RemoteNetworkServiceDelegateServer that implements the remote.NetworkService that listens for incoming TCP connections, looks in them for their source_network_service_name  and uses that to lookup the proper peer to delegate to.

In this way, a Peer acts as both a NetworkServiceServer and MonitorConnectionServer (but only for its peer) and also as a NetworkServiceClient (but only to its peer).
For LocalPeers, Workspaces and their unix sockets handle the delegation to the correct Peer for incoming calls.
For RemotePeers, we have the NetworkServiceDelegate and MonitorConnectionsDelegate listening for tcp connections, and delegating to the RemotePeer.
When a RemotePeer receives a MonitorConnections call, it responds from its own MonitorConnections information.
When a RemotePeer receives a NetworkService.Request or NetworkService.Close() from a remote nsmd, it uses model.LookupPeerByEndpoint() and calls CompleteCrossConnect.

Oh... and please note, when I say model above, if serviceregistry is a better fit, feel free to use something like that.
This is meant to be brainstorming, not necessarily point by point dictation :)

Quick question... am I correct that you have not yet implemented remote.NetworkServiceServer ?
It is implemented.

It is here: /controlplane/pkg/remote/network_service_server/remote_network_service_server.go

Quick question... am I correct that you have not yet implemented remote.NetworkServiceServer ?
It is implemented.

It is here: /controlplane/pkg/remote/network_service_server/remote_network_service_server.go

Ah... I see it now... that's a good place for it, but not where I had been looking :)
As to the design comments... for the moment, lets take the fastest path to getting this all working.  But as we go forward we will need to deal with the restart issue, and that may be a good time to rethink things.
Which is to say: if you are close to having things working, don't refactor the world just now to follow the design suggestions.  I leave it to your judgement how much to adopt at this point.

@edwarnicke NSC -> NSMD -> NSMD -> NSE flow is functional, right now I've have issues with passing CrossConnection to remote Dataplan. Also I've choose "VNI" as 1 for now, not sure how to generate them uniq way.
Error I've receiving right now:
Error Converting CrossConnect id:"1" payload:"IP" remote_source:<id:"1" network_service:"icmp-responder" mechanism:<type:VXLAN parameters:<key:"dst_ip" value:"<IP_ADDRESS>" > parameters:<key:"src_ip" value:"<IP_ADDRESS>" > parameters:<key:"vni" value:"1" > > context:<key:"dst_ip" value:"<IP_ADDRESS>/30" > context:<key:"src_ip" value:"<IP_ADDRESS>/30" > > local_destination:<id:"2" network_service:"icmp-responder" mechanism:<type:KERNEL_INTERFACE parameters:<key:"name" value:"nsm2" > parameters:<key:"netnsInode" value:"4026532618" > > context:<key:"dst_ip" value:"<IP_ADDRESS>/30" > context:<key:"src_ip" value:"<IP_ADDRESS>/30" > > : No file found in /proc/*/ns/net with inode<PHONE_NUMBER>: error stat file: stat /proc/22502/ns/net: no such file or directory

Is this the error you are getting running in K8s?

OK... so this now works.
make k8s-save k8s-deploy
You may want to pause a beat before the make k8s-check
make k8s-check
All the pings go through for the testing (at least locally).  CI is failing for some reason that will need to be tracked down, but log inspection looks fine.
I would recommend:

Confirm this works for you.
Have a look at what I did.
Some of the things I did were ugly, and we should clean them up.
Dig into why the CI tests may be failing.

Works locally, with one change, I've forced all nsc to be on master node. On my case they all was on worker node.
Looks good, except we loose functionality of just local NSM without nsmd-k8 and because of this local model endpoints are not really used. I suppose we need to choose from local endpoints and if there is none choose from remote ones. So it would be not a fair round-robin.
Does "nvi" should be same for local/remote dataplan configuration? right now they could be different ones?
Looking to CI, not sure for reason yet.
@edwarnicke could you please do not "force" push changes into merge requests, this is not required until "signing is missed", it is not very user friendly to update from force push :-) Since github create a separate branch for pull requests we could push here without issues.

Works locally, with one change, I've forced all nsc to be on master node. On my case they all was on worker node.

Interesting.  What problems were you seeing?  The nscs should all land on the same node (master or worker), and I’m curious why landing on a particular node was making a difference.

Looks good, except we loose functionality of just local NSM without nsmd-k8 and because of this local model endpoints are not really used. I suppose we need to choose from local endpoints and if there is none choose from remote ones.

Yeah, round robin ( and eventually #531 ) are the correct selection process.

Does "nvi" should be same for local/remote dataplan configuration? right now they could be different ones?

“nvi”?

Looking to CI, not sure for reason yet.
@edwarnicke could you please do not "force" push changes into merge requests, this is not required until "signing is missed", it is not very user friendly to update from force push :-) Since github create a separate branch for pull requests we could push here without issues.

I understand.  I only force pushed after rebasing on master.  Master had moved a fair bit, and there were conflicts that had to be resolved.  I was hopeful CI would work.  Do you have a suggestion for a better way to handle rebasing on master?

Vagrant file also statically configure this ones, problem is with my env, eth1 could switch with eth2 sometimes, not sure why :-(

@haiodo Apology for the force push, but your merge push lacked a signoff, and so DCO didn't pass.


Consider adding ESLint

@themaximal1st This is awesome! Let me be the first to say here, thanks for sharing.
I enjoyed reading though the code, one thing I'd highly recommend is adding ESLint. It is super easy to add and will pickup on a ton of best practices, cleaner code and obvious errors. Here are a few examples.
Here is a sample of the eslint output for the api.js file:
\InfinityArcade\src\client\api.js
    3:65  error    Expected '===' and instead saw '=='  eqeqeq
   12:3   error    Expected 'this' to be used by class async method 'fetch' class-methods-use-this
   13:5   warning  Unexpected console statement no-console
   59:12  error    Redundant use of `await` on a return value no-return-await
   76:5   error    iterators/generators require regenerator-runtime, which is too heavyweight for this guide to allow them. Separately, loops should be avoided in favor of array iterations  no-restricted-syntax
   76:31  error    'yieldStreamResponse' was used before it was defined no-use-before-define
  100:20  error    Unexpected `await` inside a loop no-await-in-loop
  131:55  error    'chat_id' is not defined  no-undef

Here is how to add ESLint
Run npm init @eslint/config and pick the options. For this project I'd pick:

To check syntax, find problems, and enforce code style
CommonJS (require/exports)
None of these
No
Node
Use a popular style guide
AirBnB
Javascript

For VSCode syntax highlighting install the ESLint extension.
Add this to the package.json file then you can run npm run lint to check and fix all your files in one go.
"scripts": {
  "lint": "eslint --fix --ext .js,.jsx .",
  ...
}

If you really love some coding style, like camelcase, then you can easily adjust this in the .eslintrc.js file by adding a rule like this:
module.exports = {
  rules: {
    camelcase: 'off'
  },
  ...
};

Finally, if you want VSCode to try and fix issues when the file is saved, add this to the VSCode settings file.
{
    "editor.formatOnSave": false,
    "editor.codeActionsOnSave": {
        "source.fixAll": true
    }
}

References

https://eslint.org/docs/latest/use/getting-started

Thanks I'll look into getting this added!


French translation for the php local bridge

Hello,
I've added the french translation for the php local bridge.
regards

Thank you!


Replaces former logic in crawl with runner

This:

adds a new class AsyncRunner to more_async.py which handles an event loop
replaces existing logic in crawl() with runner

I am missing some documentation. With the context of #319 this makes obvious sense, but this context will be lost over time. In particular, I would like to see some comments if the class is intended for public use. I will approve nonetheless, since this documentation can be done later.

@Weyaaron thanks for the input.
Wouldn't renaming Runner to something like HandledEventLoop fix all your concerns?
I called it AsyncRunner because it's descriptive of its purpose, and I still think it is. It is an async runner based on an event loop. The event loop itself is the runner. Adding more, like the method you mentioned, would just disguise the functionality.

Also, Runner does not inherit from abstractcontextmanager, which it probably should.

Why?

We had a quick meeting and agreed that renaming it to "HandledEventLoop" loop does the job just fine. I will approve this once this has taken place.


TypeError: Cannot read property getWidth of null↵ at ZRender.getWidth

One-line summary
TypeError: Cannot read property getWidth of null↵ at ZRender.getWidth
Version & Environment [版本及环境]

ECharts version 4.1.0:
Browser version Chrome
OS Version Windows 10

Expected behaviour [期望结果]
no exception
When calling echarts.getWidth() where echarts is an instance returned from onChartReady callback.
Stack trace:
"TypeError: Cannot read property 'getWidth' of null
    at ZRender.getWidth (http://localhost:3000/assets/vendors~dashboard.chunk.js:132736:25)
    at ECharts.push../node_modules/echarts/lib/echarts.js.echartsProto.getWidth (http://localhost:3000/assets/vendors~dashboard.chunk.js:59885:19)
    at makeData (http://localhost:3000/assets/dashboard.chunk.js:1500:52)

"TypeError: Cannot read property 'getWidth' of null
at ZRender.getWidth (http://localhost:3000/assets/vendors~dashboard.chunk.js:132736:25)
at ECharts.push../node_modules/echarts/lib/echarts.js.echartsProto.getWidth (http://localhost:3000/assets/vendors~dashboard.chunk.js:59885:19)
at makeData (http://localhost:3000/assets/dashboard.chunk.js:1500:52)

Container should have width and height when init. Please provide minimum full code including HTML part.

@damiangreen  hello~I have met the same problem. Have you solve it ? Would you mind provide some advices? thanks~~

Noticing same thing despite setting a width to the closest parent / container.

I'm not sure if i got to the bottom of it but i did somehting like this
if (echarts) {
    try {
      const greaterValue = min(echarts.getWidth(), echarts.getHeight())
      largestSymbolSize = greaterValue / 4
      smallestSymbolSize = greaterValue / 16
      symbolSizeDelta = largestSymbolSize - smallestSymbolSize
    } catch (err) {
      // tslint:disable-next-line:no-empty
    }
  }


Vi mode: in normal mode, support goto next/prev function, and goto next/prev class

Check for existing issues

[X] Completed

Describe the feature
I think it'd be awesome to support goto next/prev funciton/class.  Which is supported in neovim.
The key can be ]], ]m, [[, [m

If applicable, add mockups / screenshots to help present your vision of the feature
No response

Oh, I need to say..the keybinding comes from this neovim kickstart:
https://github.com/nvim-lua/kickstart.nvim/blob/39ae0829acea66175721fcf48695c7df6db040b9/init.lua#L411-L430


Inconsistent chunk paths when using dynamic imports

Bug report
I just finished the new neo.mjs build scripts and run into webpack issues.
Inside the neo main thread i am doing this:
if (window.webpackJsonp) {
    __webpack_require__.p = Neo.config.basePath.substring(6);
}

Neo.config.mainThreadAddons.forEach(addon => {
    imports.push(import(/* webpackChunkName: 'src/main/addon/[request]' */ `./main/addon/${addon}.mjs`));
});

// intended for the online examples where we need an easy way to add GA to every generated app
if (!Neo.config.mainThreadAddons.GoogleAnalytics && Neo.config.useGoogleAnalytics) {
    // for this use case webpack creates a chunk called "[request]" if not named manually.
    imports.push(import(/* webpackChunkName: 'src/main/addon/GoogleAnalytics-mjs.js' */ './main/addon/GoogleAnalytics.mjs'));
}

side issues:

you can not change __webpack_public_path__ inside the output without the hack to override __webpack_require__.p (this var should get exposed)
in case i remove the last if statement, GA will get included fine. in case i change the webpackChunkName to 'src/main/addon/[request]' there, it will literally name the GA chunk "[request]".

the side issues are not high prio items, since the hacks work.
When building the main thread for the development environment:
https://github.com/neomjs/neo/blob/dev/buildScripts/webpack/development/webpack.config.main.js
The output result is this one (perfectly fine):

I tried to deploy this version to the online examples (gh pages). The only difference is that neo.mjs itself is a node_module here. I am calling the same script inside the neo.mjs module.
The output result is this one:

Now I am confused!
Why are 6 addons saved at the correct spot, while 2 others get a vendors prefix for the source folder resulting in a wrong spot?
The result inside the node_module env does not work inside the browser. Let me know in case you need more input.
Any pointers would be appreciated!
Thx & best regards,
Tobias

What is the current behavior?
If the current behavior is a bug, please provide the steps to reproduce.

What is the expected behavior?

Other relevant information:
webpack version:  v4.43.0
Node.js version: v12.12.0
Operating System: Mac OS
Additional tools:

seems to be related to SplitChunksPlugin => cacheGroups => defaultVendors

since i am going to change it, let us keep a reference of the old webpack.config.main.js here.
const path        = require('path'),
      buildTarget = require('./buildTarget.json'),
      processRoot = process.cwd(),
      packageJson = require(path.resolve(processRoot, 'package.json')),
      neoPath     = packageJson.name === 'neo.mjs' ? './' : './node_modules/neo.mjs/',
      config      = require(path.resolve(neoPath, 'buildScripts/webpack/json/build.json')),
      entry       = {main: path.resolve(neoPath, config.mainInput)};

module.exports = {
    mode   : 'development',
    devtool: 'inline-source-map',
    entry,
    target : 'web',

    output: {
        filename: (chunkData) => {
            if (chunkData.chunk.name === 'main') {
                return config.mainOutput;
            }
        },

        path: path.resolve(processRoot, buildTarget.folder)
    }
};

as a first test, i added:
optimization: {
    splitChunks: {
        cacheGroups: {
            default: false
        }
    }
}

this change has no effect when using neo.mjs as a node_module.
2nd try (replacing node_modules with ignore_node_modules):
optimization: {
    splitChunks: {
        cacheGroups: {
            vendors: {
                test: /[\\/]ignore_node_modules[\\/]/,
            }
        }
    }
}

This change worked and no vendor prefix got added to the src folder for addons (all 8 ended up at the right spot). Testing the build result next.

ok, it looks like the number "6" is related to
optimization: {
    splitChunks: {
        maxAsyncRequests: 6 // default value
    }
}

changed the number to 25, but this had no effect.
i did look into:
https://github.com/webpack/webpack/blob/master/lib/optimize/SplitChunksPlugin.js
and did not see the 6 there.

The difference is related to the size of the chunks. By default vendors select chunks > 30kb.

this one is no longer an issue for the neo.mjs use case. closing it.


[FR]: Support setting a default file extension

What is the current behavior?
Currently rules_swc defaults to js unless you have file types mts, mjs, cts, cjs. This means that you can't customize the file extension type out easily without doing a bunch of list comprehension. There are cases where you may not have individual files, so having the ability to just ask the rule to produce a different extension would be nice.
Describe the feature
Support passing something like

        default_ext = ".cjs",

to the swc_compile rule such that it renames all the files created on your behalf without the need for js_outs
We wrote a patch for this internally and would happily contrib it upstream if the maintainers are open to it.

Sorry for no reply here @Aghassi - sure I'm open to that change, it doesn't add to the complexity of implementation and is simple to document.


Grammar: This happen happened -> This happened

Removed "happen" from sentence.

@microsoft-github-policy-service agree


[LINT] Exclude directories from CT linting

ATM some functions check every file for something e.g. leftover cookiecutter statements.
It would be useful to state regexes/lists in the .cookietemple.cfg file, which exclude directories from being picked up by our custom linting functions.

Closing this in favor of #535


weibull_aft.plot_survival_function: object has no attribute

Is this a known issue?
Is there a workaround?
Traceback (most recent call last):
File "lifelines_example.py", line 31, in
weibull_aft.plot_survival_function(ax=axes[0][0])
AttributeError: 'WeibullAFTFitter' object has no attribute 'plot_survival_function'

What is the survival function of an AFT model? The AFT model is conditional (i.e requires covariates). Maybe you want predict_survival_function?

I see an example here on page 11-12
https://buildmedia.readthedocs.org/media/pdf/lifelines/latest/lifelines.pdf

That's the WeibullFitter, not WeibullAFTFitter

Ah! thank you.
How can I get the baseline curve alone?
At this time, my only covariate is a continuous one.
I will use the partial feature after augmenting the dataset.
On Thu, Sep 28, 2023 at 5:26 PM Cameron Davidson-Pilon <
@.***> wrote:

That's the WeibullFitter, not WeibullAFTFitter
—
Reply to this email directly, view it on GitHub
https://github.com/CamDavidsonPilon/lifelines/issues/1562#issuecomment-1740154970,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANQJMZPRCFFESSINWQOOPODX4YIT7ANCNFSM6AAAAAA5LPF4UI
.
You are receiving this because you authored the thread.Message ID:
@.***>

How can I get the baseline curve alone

There's not really a baseline curve for AFT models (terminology isn't used), but I think you just want to set the covariate to 0 in predict_survival_function.

Never mind, I added a relevant constant column. How do I get the CDF relative to this conditional variable from plot_partial_effects_on_outcome? 1 - weibull_aft.predict_survival_function('T') ? Where can I give the T range as given in plot_partial_effects_on_outcome?

The first three questions can be answered by checking out the docs: https://lifelines.readthedocs.io/en/latest/fitters/regression/WeibullAFTFitter.html?highlight=plot_partial_effects_on_outcome#lifelines.fitters.weibull_aft_fitter.WeibullAFTFitter.plot_partial_effects_on_outcome
I don't quite understand your 4th question, however

That helps. Thanks Cam!
I guess I can get the cumulative distribution function (CDF) as 1-survival from the plot collection of partials.
Is there a confidence interval band fill between for the survival plot? If not, how can I get it?

Is there a confidence interval band fill between for the survival plot? If not, how can I get it?

Unfortunately, not

Under what conditions is the cumulative_hazard < hazard?
My plots have t = 0 to 6.
The Y for hazard rate goes up to 750 at t=6.
THe Y for cumulative hazard goes only up to 450 at t=6
The survival plot looks as expected..
On Sat, Sep 30, 2023 at 3:15 PM Cameron Davidson-Pilon <
@.***> wrote:

Is there a confidence interval band fill between for the survival plot? If
not, how can I get it?
Unfortunately, not
—
Reply to this email directly, view it on GitHub
https://github.com/CamDavidsonPilon/lifelines/issues/1562#issuecomment-1741870723,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANQJMZNT4D363SP4OXZKTPDX5CKWVANCNFSM6AAAAAA5LPF4UI
.
You are receiving this because you authored the thread.Message ID:
@.***>

cumulative hazard (t)  = int_0^t hazard(s) ds
so it's possible for cumulative_hazard < hazard. Think about how a short spike in a function might affect its integral.

Thanks Cam.
If my input data itself is in log10 and the shape is:
                         coef      exp(coef)

rho_    Intercept   2           9
Is it safe to say, my antilog(rho_) for interpretation is 10^(2) and not
10^(9)?
On Tue, Oct 3, 2023 at 2:19 PM Cameron Davidson-Pilon <
@.***> wrote:

cumulative hazard (t) = int_0^t hazard(s) ds
so it's possible for cumulative_hazard < hazard. Think about how a short
spike in a function might affect its integral.
—
Reply to this email directly, view it on GitHub
https://github.com/CamDavidsonPilon/lifelines/issues/1562#issuecomment-1745742074,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANQJMZOHNEKIIZ4BQKY3MHDX5R6NDAVCNFSM6AAAAAA5LPF4UKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONBVG42DEMBXGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

Sure, yea, but you should expect very small variation in your log10 variable as a consequence.

Is the plot_partial_effects_on_outcome same as a regular weibull(1.75,2.24) plot conditional on T?
Here shape (rho_) = 2.24 and scale (lambda_) = 1.75; based on the results below
My intent is to get upper and lower confidence interval curves for this partial effect based on the interval you provide for rho_.

For WeibullAFT, why does not predict_survival_function have partial
outcomes?
On Thu, Oct 5, 2023 at 3:51 PM Cameron Davidson-Pilon <
@.***> wrote:

Sure, yea, but you should expect very small variation in your log10
variable as a consequence.
—
Reply to this email directly, view it on GitHub
https://github.com/CamDavidsonPilon/lifelines/issues/1562#issuecomment-1749761816,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANQJMZOGANFWD5USMNRK67DX542WXAVCNFSM6AAAAAA5LPF4UKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONBZG43DCOBRGY
.
You are receiving this because you authored the thread.Message ID:
@.***>


Post Publish package-lock.js updates for September 13, 2021 release

Post Publish package-lock.js updates for September 13, 2021 release. Since the msal-node-extensions update had an issue, manually merging these.

Codecov Report

Merging #5213 (8ba1509) into dev (6456bd5) will decrease coverage by 0.51%.
The diff coverage is n/a.

Flag
Coverage Δ

*Carryforward flag

msal-angular
96.50% <ø> (ø)

Carriedforward from 4c70f6c

msal-browser
87.00% <ø> (ø)

Carriedforward from 4c70f6c

msal-common
85.43% <ø> (ø)

Carriedforward from 4c70f6c

msal-core
82.84% <ø> (ø)

Carriedforward from 4c70f6c

msal-node
83.43% <ø> (?)

Carriedforward from 4c70f6c

msal-node-extensions
76.03% <ø> (?)

Carriedforward from 4c70f6c

msal-react
94.50% <ø> (ø)

Carriedforward from 4c70f6c

node-token-validation
88.88% <ø> (ø)

*This pull request uses carry forward flags. Click here to find out more.

Impacted Files
Coverage Δ

lib/msal-node/src/crypto/PkceGenerator.ts
100.00% <0.00%> (ø)

...node-extensions/src/persistence/BasePersistence.ts
66.66% <0.00%> (ø)

...c/persistence/FilePersistenceWithDataProtection.ts
81.08% <0.00%> (ø)

lib/msal-node/src/utils/NetworkUtils.ts
100.00% <0.00%> (ø)

lib/msal-node/src/crypto/CryptoProvider.ts
76.47% <0.00%> (ø)

...-extensions/src/persistence/DataProtectionScope.ts
100.00% <0.00%> (ø)

...ions/msal-node-extensions/src/utils/Environment.ts
42.59% <0.00%> (ø)

...ib/msal-node/src/client/PublicClientApplication.ts
76.31% <0.00%> (ø)

lib/msal-node/src/cache/TokenCache.ts
75.90% <0.00%> (ø)

lib/msal-node/src/cache/NodeStorage.ts
79.83% <0.00%> (ø)

... and 26 more

Merging it. The one failure is from a PR from Marion and we are working on resolving it.


Config PMIC fails

I have built and ran the tutorial with no modification successfully but when using Petalinux to configure the Common Software the dpu_sw_optimize.sh fails with:
Auto resize ext4 partition ...[✔]
Start QoS config ...[✔]
Config PMIC irps5401 .../dev/i2c-4: Device or resource busy
Couldn't attach to device 0x43
I included the i2ctool in my Petalinux build but this still errors out. I am using the same base platform as the tutorial.

hi @ash8327  which version and tutorial are you using?

Hi @tianfang-fafafa , I have tried both 2021.2 and 2021.1. I noticed there used to be petalinux update where dpu_sw_optimize.sh is and I also rebuilt my petalinux image with those changes but I still get the same error.
Is that update applicable to the new tutorial?

@ash8327 ，could you please provide tutorial link and your step to reproduce?

HI @ash8327
Do you use ZCU104 board? irps5401 is the power patch and can only be used for ZCU104 board.

Hi @ash8327
Has the problem been solved?


Redocly decorators not working

Description
I tried using the Redocly filter-in decorator and it was not applied by openapi-typescript.
There was no error

Name
Version

openapi-typescript
7.0.0

Node.js
20.14.0

OS + version
Linux version 6.6.32-1-MANJARO

Reproduction
Use a redocly.yaml file with the filter-in decorator which allows you to exclude non-matching operations.
When I use this same redocly.yaml file with the redocly bundle command directly, it produces a new OpenAPI schema file that only includes the desired operation.
I thought that I could workaround this issue by just taking the new filtered OpenAPI schema file produced by my redocly bundle command and feeding that into openapi-typescript instead of the url, but that caused openapi-typescript to freeze. I did not open an issue for the freezing, but you can read about the details of my adventure in #1682 starting here.
redocly.yaml file:
apis:
  main:
    root: http://localhost:43020/api/v1/docs/json
    x-openapi-ts:
      output: ./src/api.ts
    decorators:
      filter-in:
        property: operationId
        value: [connectRepo]
    rules:
      operation-operationId-unique: error
      operation-parameters-unique: error
      path-not-include-query: error
      spec: error

Expected result
I should get an output file with only the operations specified by the filter-in decorator.
Checklist

[X] My OpenAPI schema passes the Redocly validator (npx @redocly/cli@latest lint)
[X] I’m willing to open a PR (see CONTRIBUTING.md)

The workaround that I detailed in #1682 works now, with a small change. (The workaround is basically to just use redocly bundle to produce an intermediate schema file that gets fed into openapi-typescript.)


Add smoke test for JobRunr API

Twice now, we've run into Kotlin version upgrades that break JobRunr's "extract
the parameters from the body of a lambda function" logic, but since our test suite
was always stubbing out JobRunr, we only discovered the problem at runtime.
Add a simple sanity-check test to try to detect future incidents at build time.

Current dependencies on/for this PR:

main

PR #667   👈

This comment was auto-generated by Graphite.

Tested this by setting the Kotlin version to 1.7.20 locally; it fails with the same exception we were seeing in staging earlier today.

Ah, right, though it's deleted here, not added. Could split that out into a separate PR but doesn't seem worth the bother.


Feature: add sharedby to received files

Add a shared-by field during saving of received file via invite
Return it during querying of received file

LGTM. 🚀


Fix the quickstart example so it actually works

All these changes were needed for this quickstart example to run through without crashing

@asdine Can I have a review on this one please?


replaced "divisor" with "delimiter" for methods split,rsplit and split_floats.

In addition to #29430

This change should be placed along with your other changes in your previous PR.
Please see this article for how to rebase, squash, and force push so that you just have one commit. I also created this video to show how it's done with a GUI client.

This change should be placed along with your other changes in your previous PR.
Please see this article for how to rebase, squash, and force push so that you just have one commit. I also created this video to show how it's done with a GUI client.

Thank you Aaron, great video!

git rebase -i HEAD~7

Change all of your commits from "pick" to "fixup", except for the top one. Then:
git push --force

git rebase -i HEAD~7

Change all of your commits from "pick" to "fixup", except for the top one. Then:
git push --force

I probably did something very wrong, i see commits from other users also:

@zaksnet It doesn't look like your branch is checked out, since I only see other people's commits. If you wish to try a graphical client, this is easy to do in GitKraken:

When you manage to do it correctly, on the top where it says "Commits" the number will be "1".

@zaksnet It doesn't look like your branch is checked out, since I only see other people's commits. If you wish to try a graphical client, this is easy to do in GitKraken:

When you manage to do it correctly, on the top where it says "Commits" the number will be "1".

I think i found gitkrakken harder to use than cmd. It seems to be fine now, i removed the commits from other people and added fixup to my own commits. Anyway, i think i'm done with git for now, thanks for the help.

Awesome job, the git history looks good now. But it looks like you missed a few spots. The argument on line 665 is still "divisor" and the docs for split and split_floats on lines 710 to 736 need updating.

Awesome job, the git history looks good now. But it looks like you missed a few spots. The argument on line 665 is still "divisor" and the docs for split and split_floats on lines 710 to 736 need updating.

Thank you!

Great work, thanks a lot! :)

Cherry-picked for 3.1.2.


Ci: Product Helm chart should return information on installation

Problem
When running the frontend or backend helm chart, I get a note on how to get the IPs of the service like:
$ helm install puris-frontend -n puris --create-namespace .
NAME: puris-frontend
LAST DEPLOYED: Wed Sep 27 23:17:28 2023
NAMESPACE: puris
STATUS: deployed
REVISION: 1
NOTES:

Get the application URL by running these commands:
export NODE_PORT=$(kubectl get --namespace puris -o jsonpath="{.spec.ports[0].nodePort}" services puris-frontend)
export NODE_IP=$(kubectl get nodes --namespace puris -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT

When running the product helm chart nothing comes up
Solution
Please implement the following features:

frontend and backend chart: mention that this only works if ingress is enabled
product helm chart: add these notes for both, the frontend and the backend

validate that it works

solved by #60


support(ledgerjs-cal): CAL update

📝 Description
CAL update
❓ Context

Impacted projects: `` lld & llm
Linked resource(s): `` crypto-assets repo

✅ Checklist

[x] Test coverage
[x] Atomic delivery
[x] No breaking changes

📸 Demo
n/a
🚀 Expectations to reach
n/a

Issue identified on back end side, fix in progress but not a blocker


Update the documentation to include "ctc-decoding"

We added pure ctc decoding in https://github.com/k2-fsa/icefall/pull/58 without needing a lexicon or an ngram LM.
Would be great if someone can help add ctc-decoding to the documentation.

Maybe I will take some time to do this.

@luomingshuang
thanks


Implementing the UX design colouring

Closes #313

Thanks @rjmcneill this is looking really good - just a few minor comments.

:+1:


Getting very slow reply within Tesla

We have an internal API call, that is being processed by curl within 10 seconds, it spits an JSON of around 20mb. With Tesla.get we get a reply within 52-56 seconds.
{:ok,
 %Tesla.Env{
   __client__: %Tesla.Client{
     adapter: {Tesla.Adapter.Hackney, :call, [[recv_timeout: 60000]]},
     fun: nil,
     post: [],
     pre: [
       {Tesla.Middleware.BaseUrl, :call, ["http://<IP_ADDRESS>/"]},
       {Tesla.Middleware.Logger, :call, [[]]},
       {Tesla.Middleware.Telemetry, :call, [[]]},
       {Tesla.Middleware.Timeout, :call, [[timeout: 60000]]}
     ]
   },
   __module__: Tesla,
   body: ".........",
   headers: [
     {"content-lenght", ""},
     {"content-type", "application/json"},
     {"etag", "\"123-1624560200-ba73c0\""},
     {"date", "Fri, 25 Jun 2021 17:20:10 GMT"},
     {"transfer-encoding", "chunked"}
   ],
   method: :get,
   opts: [],
   query: %{
     cid: 111
   },
   status: 200,
   url: "http://<IP_ADDRESS>/api "
 }}
iex(21)> 17:20:52.799 [info] GET http://<IP_ADDRESS>/api -> 200 (52945.107 ms)
17:20:52.799 [debug]
>>> REQUEST >>>
Query: cid: 111

(no headers)
(no body)

<<< RESPONSE <<<
content-lenght:
content-type: application/json
etag: "123-1624560200-ba73c0"
date: Fri, 25 Jun 2021 17:20:10 GMT
transfer-encoding: chunked

I've tried to use pure hackney and got reply within the same range of 10 seconds:
:hackney.request("GET", "http://<IP_ADDRESS>/api?cid=111", [], '', [recv_timeout: 60_000])
Can you help us pinpoint the issue on loosing ~50second? I've thought it could be linked with parsing JSON, and we turned off JSON parsing, however we still getting the same 52-56 seconds per request as shown above.

Since there isn’t any body processing when you are not using the JSON middleware, I’d start with turning off debug logging, then remove telemetry, then remove logging completely and measure outside of the call. If none of that helps, you might need to do some profiling with tools like eprof.

Nothing helped so we did profiling. This call took 86%
hackney_http:execute/2                                                   11054    86.48  41194582  [   3726.67]

Interesting 🧐
Can you profile the bare hackney version too?
That call is internal to hackney, tesla does not use this function directly.
Just in case, are you testing the same version of hackney/elixir/erlang/os etc and is the hackney version the latest one?

yeah, to be honest on my local macbook the same code takes proper 10 seconds, on a linux in a docker env it processes that code for 52 seconds. I get absolutely different profiling results. The only difference is that on macbook elixir installed with brew and no docker container.
Dockerized version uses elixir:1.12-alpine
mix locked with tesla "1.4.1" and hackney "1.17.4"

Hmm, you are right seems its a hackney problem, before I didnt read the body. On reading the body it spends most of the time.
prof code:
{:ok, _, _, ref} = :hackney.request("GET", "http://<IP_ADDRESS>/...", [], '', [recv_timeout: 60_000])
{:ok, body} = :hackney.body(ref)
....
erlang:setelement/3                              44258    11.53   4928593  [    111.36]
hackney_http:execute/2                           11054    87.25  37283669  [   3372.87]
----------------------------------------------  ------  -------  --------  [----------]
Total:                                          664763  100.00%  42730491  [     64.28]

In this case, we have two completely different environments. I’d recommend to reduce the problem, i.e. run the exactly same docker container on both OSes WITHOUT volume mounts and compare execution times. Make sure the API endpoint is stable (preferable running in localhost or close network). Run the code a few times to rule out network inconsistencies. Check the CPU usage and iowait. In case you are using a low-end Linux VPS it might have worse performance than top MacBook etc. etc.

Compare hackney time with raw curl in terminal to get a baseline. Maybe the API itself is slow.

Thanks. API is fast. Server is a dedicated 256gb ram, nvme hardware. We get the same speed in docker with curl/wget (10s). Which makes me think it's not the docker issue.

You can quickly try with other adapter like finch or gun and see if there is any difference.

meh, after I've started reading the body it started to lag the same on macbook.
Mint takes 15 seconds with JSON decoding.

Sounds like we got a winner.
Fortunately you can just swap the adapter when using tesla ;)
I recommend Finch (which is based on mint) to get the same functionality as hackney (pooling).

Yeah, that's why we are using Tesla - that's not the first issue with hackney unfortunately. Thanks for your help!


node-gyp: init at 10.2.0

Description of changes
see #229475

Things done

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
[ ] 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.

Result of nixpkgs-review pr 334377 run on x86_64-linux 1

2 packages failed to build:

code-server
openvscode-server

6 packages built:

balena-cli
cdxgen
n8n
node-gyp
nodehun
vscode-js-debug

I wish this didn't require adding 5,000 lines of package-lock.json though.

I too feel the same. I was wondering, do we have a clue why upstream won't track such a file in their repository? That's the best I found:
nodejs/node-gyp@020e2bd (#1573)


Starter Homepage View

A homepage view that starts the user with a included tutorial component

documentation
discord link
How to get started
Where to login at zesty
How to invite the team
How to sync to get new files
Youtube Links
How to delete this tutorial component

Add Social Links and Support Link

Twitter: https://twitter.com/zestyio
LinkedIn: https://www.linkedin.com/company/4826635/
Please add support link as well


REST backend: error decoding response body: invalid type: null, expected a sequence

Seems like some REST-Servers return null instead of an empty sequence...

@eikef Can you test if #682 solves the problem (compiled binaries are here: https://github.com/rustic-rs/rustic/actions/runs/5263055298?pr=682)

There is also a workaround until #682 is landed: You could use https://github.com/rustic-rs/rust-server instead of rest-server. Rust-server should - IIRC - give an empty array for an empty directory, whereas rest-server seems to put null in the json instead...

I also opened a bug in rest-server (https://github.com/restic/rest-server/issues/238) as the response of rest-server vialotes the specification given for the REST API.
Concluding:

rest-server responds with a null in this case - IMO this is a bug (but restic is able to handle this bug)
rclone does correctly respond with [] in this case.
rust-server does correctly respond with [] in this case.

I think that the restic/rest-server solution will be to change the API specification in which case #682 will allow rustic to work with the changed specification.

Yes, this fixes the problem and rustic runs through. Thank you!


Awox plug plus integration would allow wifi acces : requested

Hello,
If I may suggest to put the Awox connect plug plus on your highest priority followed by the adoption of the same rooms as in the Awox app would open a world of possibilities.
The plug is a wifi bridge via the awox cloud it sees all the bleutooth devices in its mesch.
Intégration allows thus to use the lights without bleutooth in the range of the HA server. This would be a blessing for those who can not reach a bleutooth device from the HA server.
Note for info remote control and pir detection work in bleutooth range even if the HA server has taken the bleutooth mesch in control of the lamps.
I have the plug so willing to test.
Good work just needs some work to make it super great
Thx

If you sponsor my such a plug I will definitely dive into it. But currently I don't have such a device

Hello,If you agree to send me your address I will figure out what is the most appropriate. I send you one by mail, here I have one for 39.95euro. Or I can send you the funds transfer then I will need the Iban and rib of your bank account. PS : I live in Luxembourg. Just let me knowMarcEnvoyé depuis mon téléphone Huawei-------- Message original --------De : Frans Saris @.>Date : mar. 3 août 2021 à 19:36À : fsaris/home-assistant-awox @.>Cc : MarcW-HA @.>, Author @.>Objet : Re: [fsaris/home-assistant-awox] Awox plug plus integration would allow wifi acces : requested (#48)
If you sponsor my such a plug I will definitely dive into it. But currently I don't have such a device
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.Triage notifications on the go with GitHub Mobile for iOS or Android.

Please contact me at<EMAIL_ADDRESS>

Hello guys.
I got recently the EGLO lights and theyre all connected to HA without problem. But the problem maybe lets say 2 problems are I think in my bluetooth adapter. I am running windows PC with installed HA in virtualbox. So first problem I had issue with range of BT signal - solved with 5dbi antenna connected to BT module in PC. However second issue persists. After some time of HA is running I dont know why but for some reason all lights not responding to HA commands (on/off, etc.). I think that might be because of ZigBee module which causes some signal interference?
And there are my questions:

Are you able to somehow help me with debugging? Some remote session or sent you logs or something like that please :)?
I am completely opened to provide any data so the integration will be 110% functional :).
What is the status of implementing the EGLO Plug + to the integration? I think this will solve both of my problems.

Anyway thank you very much and great job with Awox integration I really appreciate it, keep up.

Maybe I have one more idea. I am using in my living room and in bedroom Raspberry PIs with touchscreen as HA control panels for those rooms. So maybe create some plugin for RPIs and use their built-in bluetooth to be a part of Awox mesh?

looks like the bluetooth adapter isn't very stable. Is it near enough of the light?

Will dive into that in one of the next days. Integration should try to reconnect in this case.
But also looks that your Bluetooth adapter isn't that stable.

Hello @fsaris,
so I have tried another BT adapter and still the same errors.
Do you have any progress with the integration? :)

Improved logging and connecting process was added in https://github.com/fsaris/home-assistant-awox/releases/tag/0.1.2
Closing this ticket now as the basic support for plugs is available. For now the wifi is out of scope. Not sure even if it would be possible to use the wifi without using the Awox webservices.


Does mmdetection have  cascade r-cnn pretrain model based resnext50_32x4d

For now, we do not provide such models, but we provide resnext101_32x4d, so it should be easy to modify the config to train one by setting the depth to 50.
PRs are welcomed if you could train one with correct config, trained model, and reasonable results.

OK I will try.


Synchronization between Axelar and Swing

I have written down a couple of ideas

Lender on Moonbeam lists NFT at (address, id) on the marketplace with payment and collateral info and a maximum_rent_period
~LIsting happens on all supported chain (or a subset of them if the lender wants to avoid posting the rent on certain chains) , suppose the rent is listed on Polygon~. Listing happens only on renter chain.
Renter on Polygon wants to rent NFT at (address, id) starting immediately for given period by providing payment and collateral

Protocol 1
This protocol is implemented at the dApp level and not at the smart contract level, since we need to use swing.xyz sdk

dApp calls the can_rent smart contract function which checks conditions on period, payment, collateral are satisfied. No mutation is performed. This function will be marked as view so no gas are spent by the renter
Renter sends payment with swing xyz, and waits for a SUCCESS status see
dApp will call the rent function and update the listing as rented on the renter chain
Axelar Executor will then take care of calling the lend function on the lender chain updating the status

Issues

What if 2 succeeds and 3-4 fails?
is this introducing an oracle (swing.xyz) ?
if we go this route why do we even need axelar since we can the lend function at the dApp level

Protocol 2
We keep the current smart contract setup

Renter swap tokens via swing into the preferred token on the listings (which has to be transferrable using Axelar)
dApp will call  the rent function on the renter chain  which checks conditions on :

nft is available for rent
period
payment
collateral are satisfied
And sends the tokens via the Axelar network

On the lender chain the lent function is invoked by the Axelar executor updating the listing (hence the listing gets updated only one time)

Pros

the funds belongs to the lender no matter what
no cross chain oracles used, just Axelar
No need to update all listings

Updated on Fri 5 Aug 2022, 2:35 pm EDT

I like it a lot. The protocol 2 looks more appealing from afar, I wonder if there's a UX difference (number of approvals required, total gas spent etc.) between the two. I used to think the NFT would be only posted on lender's home chain. If we list it on multiple chains concurrently, can we get into a race condition where multiple renters try to grab the same NFT around the same time from two different chains?

I'm also wondering about the race condition and it might be gas intensive to update every chain the NFT listing is posted on so Protocol 2 seems to be a better way to go. The use of Swing.xyz would come into play when the lender collects the payment. Should we then have a mechanism that doesn't immediately send the payment to the lender but waits for the lender to collect?

One issue I see though is that Swing only supports certain tokens. So it would have limited support for wrapped tokens. Can Axelar swap native tokens instead of wrapping?

can we get into a race condition where multiple renters try to grab the same NFT around the same time from two different chains?

Yes good catch, plus I overlooked the fact that we need to update all the listing on every chains the NFT is listed on.
This is not feasible in terms of gas fees

this has been modified and merged.


Design register component

@RoadTripppin/all
What all details do we want to get from the user to register ?

Name
EmailId
Handle ( ? )
Password
Confirm Password
Option to use Google (Google OAuth)


Update user leads to error screen

Hi all
I had to assign permissions to a user on dmponline-test. When I hit 'update' button, the error screen enclosed below appeared. I hat to hit the back arrow on the browser to get back to the dmponline screen. Permissions had been updated for user.

@dsisu  I cannot replicate this on dmponline-test. Can you give me more details on what happens and if it still occurs after latest update?

@vyruss It works now, thank you very much. I was still getting the error this morning. For the record the workflow was: find user -> click 'edit' -> make changes -> click 'update' - get error screen above. Hit the back key once, which took me back to the 'edit user' screen. Hit the back key again to get to my original screen, which could be the 'view/show user screen' or the result of a search. I would then hit the 'reload' key, which would put the user's new permissions on display. Hope this makes sense. If you're happy you have enough information for the record, you can close this now.

Yes, thanks. Closing.


Fix image hover for additional cols

https://github.com/ioam/holoviews/pull/3193

Sorry for not merging this immediately, this change has a number of implications so I'm going to have to check this out in more detail.


Bash on Windows: failed storing token: failed storing token into keyring: exec: "dbus-launch": executable file not found in $PATH

I tried running gphotos-uploader-cli after I changed the configurations file. after logging in on google, I'm getting failed storing token: failed storing token into keyring: exec: "dbus-launch": executable file not found in $PATH error

thanks :)


Tidy dependency installation.

We need to think of a clean way to ensure people who build hermes for themselves can do the following:

Know they have the right version of janet.
Statically link everything.
Build hermes without hermes.

The current solution uses jpm, but the main problem is it relies on the users installing janet and a musl capable toolchain.
One solution I can think of would be a ./support/deps.sh that basically installs everything into ./third-party ... We could probably even install musl if the user has a glibc toolchain.

I think the current solution is ok.