When using none alg (no signature), should the claims verification be ignored?

Hi,
When I upgrade from v1.5.6 to v2.2.1, I find that, the 'none' algorithms behaves differently.
In v1.5.6, even use 'none', the exp claim would be verified, but in v2.2.1, it doesn't
the script:
payload = { 'exp' => (Time.now.to_i - 5) }
id_token = JWT.encode(payload, nil, 'none')
JWT.decode(id_token, nil, false)

the output:

v1.5.6:

=> JWT::ExpiredSignature: Signature has expired

v2.2.1:

=> [{"exp"=>1561080813}, {"alg"=>"none"}]

And I find that this commit https://github.com/jwt/ruby-jwt/commit/67f4a5ad25ec2695b1dc414a8797bd5a0deaaec4 change the behavior.
I want to make sure that, when using none alg (no signature), should the claims verification be ignored?
Thank you!

I think is was just a bug that verify = false still caused verification in the first place.
What you want would look like this (should have been like this even in 1.5.6):
JWT.decode(id_token, nil, true, { verify_exp: true, algorithm: 'none' })
But it does not actually work.
It looks like alg none is only really accounted for in encode but not in decode.

I think is was just a bug that verify = false still caused verification in the first place.
What you want would look like this (should have been like this even in 1.5.6):
JWT.decode(id_token, nil, true, { verify_exp: true, algorithm: 'none' })
But it does not actually work.
It looks like alg none is only really accounted for in encode but not in decode.

I think there are two meanings of verification, signature and claims.
What is the parameter 'verify' in decode method designed for, to verify the signature, or to verify claims?
https://github.com/jwt/ruby-jwt/blob/8e8a9c9f9fd455537c03b6dcde1e20ebbc1fe585/lib/jwt/decode.rb#L13
I want to make sure that, is it correct to perform the claim verification on an Unsecured JWT?(https://tools.ietf.org/html/rfc7519#section-6.1)
Thank you!

Thoughts specific to the gem in question

I think there are two meanings of verification, signature and claims.
What is the parameter 'verify' in decode method designed for, to verify the signature, or to verify claims?

I'm not the author of that code to tell what was the intension behind the API's design decisions. Naming things is one of those subjective and hard topics in programming.
This gem has basic validation as per RFC and simply does not cover some rare or peculiar use cases.
Although it's possible the gem could make use of "validation" vs "verification" terminology, but as I point out later, a full-blown validation is likely not the point of the gem and what it does right now it more like a "do what RFC explicitly states" in a single chunk under the "verify" umbrella term.
As best as I can understand the current design of the gem, the API:
JWT.decode(id_token, nil, true, { verify_exp: true, algorithm: 'none' })

would make perfect sense.
verify=true (third argument) stands for "standard set of RFC requirements", while options let you choose specific claims to verify.
Following this design there exists a bug as of now. The verification does not support "alg": "none". Which is perfectly suitable for further verification as per the RFC (it does not make distinction between secured and unsecured tokens when it comes to claims verification). The gem explicitly supports "alg": "none" for token creation and it would only be logical if it could successfully parse back it own output.
Everything beyond that behaviour would be considered application-specific behaviour.
Thoughts about terminology and RFCs

I want to make sure that, is it correct to perform the claim verification on an Unsecured JWT?

Yes, the RFC does not forbid the verification of unsecured tokens and leaves it to the developer to secure the token by the means they deem sufficient. Section 6 clarifies that https://tools.ietf.org/html/rfc7519#section-6
To my mind, whether you trust a JWT or not is a separate question from claims verification.
Signature has nothing to do with the validness of the contents of a message. It is normal to validate submitted html forms but they are not signed. You can verify (be sure) who sent the message (using cryptography) but you have to check separately whether it's not garbage.
RFCs are often very generic. And it's sometimes hard to draw the line between mandatory/standard and application-specific. It's a common issue with RFCs involving auth and crypto. Hardly anyone should blame lib's creators and maintainers in such cases (so please don't).
The RFC puts some requirements on the registered claims while still leaving them in the application domain. It will be a very long and not necessarily fruitful discussion to decide whether a gem should have sophisticated claims validation or should leave it completely to a gem's user.
https://tools.ietf.org/html/rfc7519#section-4.1.4:

The "exp" (expiration time) claim identifies the expiration time on or after which the JWT MUST NOT be accepted for processing.

What is processing? Does it mean "halt the executing right there"? Or does it mean "don't do with that token what you would usually do" (i.e. grant permission) and you can do something else?
Does this mean I can never look into the contents of an otherwise perfectly valid but expired token to show some nice error message or anything else based on its claims?

I think there are two meanings of verification, signature and claims.

Think about "unverified" and "invalid". What would you want to do with an unverified token and with an invalid token. It's likely that you don't want to touch an unverified token any further. But you may still want to do a special treatment for a verified but invalid token. Here verification is about trust and validation is about relevance and consistency.
This point of view helps me to better architecture the handling of JWT. In one of the cases any trustworthy token received by that particular system had to have valid signature, Issuer and Audience. Otherwise it's not even allowed to be read by other components. Meanwhile there were a plethora of uses cases (access tokens, permission granting, authorization, etc.) with distinct claims validation rules (many of which utilized registered claims). And I had to write a completely separate API on top of this gem to do that.

@hesalx
Thank for your detailed response, especially the RFCs v.s. application (Verification v.s. Validation) part. I benefit a lot from your comment.
I do not mean to blame the author. What I want to confirm is if it is a bug or not.

Going to close this one. The ::JWT::EncodedToken will allow separate claim verification and signature validation. We are not going to touch the behavior of the historical JWT.decode


Add cpa and snr benchmarks

When testing (on my computer), criterion prints many warnings during the benchmark:
Warning: Unable to complete 100 samples in 5.0s. You may wish to increase target time to 22.7s, or reduce sample count to 20.
Can you configure it to increase that time limit ? (I would suggest 60 seconds)
Also when running it twice, many benches show regression or improvement above noise margin; this is probably because not enough samples are taken due to the time limit.

The measurement time if too low is automatically increased^1. Thus, in this case criterion will record 100 samples taking more than 5s. criterion performs measurements by sample, but a sample can contain multiple iterations of the function^2. From my understanding what changes if the measurement time is increased is the number of iterations per sample. In the case where the measurement time is too low, criterion with record 100 samples with 1 iterations. Increasing the measurement time would allow criterion to perform more iterations per samples. Increasing the measurement time seems indeed to yield more robust results.


Swagger UI not working while API service behind reverse proxy

With reference to #1717, I need some help about configuration of Swagger when using API behind a reverse proxy. In this case the reverse proxy should be IIS. But I also want to know if and what are the possible differences to take into account if I change the proxy server.
Right now I'm using this configuration:
public static void UseSwaggerWithConfiguration(this IApplicationBuilder app)
{
    app.UseSwagger(config =>
    {
        config.PostProcess = (document, request) =>
        {
            if (request.Headers.ContainsKey("X-Forwarded-Host"))
            {
                document.Host = request.Headers["X-Forwarded-Host"].First();
				// This line was commented because of there's no X-...-Path header on IIS...
                //document.BasePath = request.Headers["X-External-Path"].First();
            }
        };
    });

    app.UseSwaggerUi3(config =>
    {
        config.OAuth2Client = new OAuth2ClientSettings
        {
            ClientId = "control-api-swagger",
            ClientSecret = "1B746C9D-4E00-449C-B3F2-A17171B6B46E".ToSha256(),
            AppName = $"{title} - Swagger"
        };

        config.TransformToExternalPath = (internalUiRoute, request) =>
        {
			// What should be done here?
            var externalPath = request.Headers.ContainsKey("X-External-Path") ? request.Headers["X-External-Path"].First() : "";
            return externalPath + internalUiRoute;
        };

        config.SwaggerRoutes.Add(new SwaggerUi3Route("v1.0", "/swagger/v1.0/swagger.json"));
    });
}

And I'm getting this problem:

But, when used without proxy, everything works.
As @deepforest was suggesting in #1717:

Based on MDN, X-Forwarded-Host is a de-facto standard XFH header, identifying the original host, useful to determine which Host was originally used.
So based on @RSuter nginx conf file, you can replace X-External-Host with X-Forwarded-Host.
As for the X-External-Path, if you consider the X-Forwarded-Host to also contain the path: '/externalpath', then you can also omit X-External-Path, but then, it will be a bit "harder" to extract the path in the Startup.cs file, unless @RSuter will update the TransformToExternalPath config to accept only the Host, and do the magic inside.

What should I do to make it works?

I'm looking at SwaggerDocumentMiddleware. It looks like GenerateSwaggerAsync caches generated _swaggerJson document. The issue is that when an application is deployed behind a reverse-proxy, e.g. nginx, uses the PostProcess handler to override host/basePath properties and the application is also accessible from the internal network, then the cached JSON document works either from public or internal network. In other words, if somebody accesses (performs the first HTTP request) the application from the internal network, then it won't work from the public network and vice versa.
What if to store _swaggerJson in a sort of dictionary, e.g.
// pseudo code
class Key {
  string host;
  string basePath;
}
Dictionary<Key, Json> _cache;

?
This approach allows to workaround the issue without much refactoring.
@RicoSuter

@StasPerekrestov looks fine to me... so this would be needed if the swagger ui is exposed on two different urls?

@RicoSuter exactly. I'll prepare a pull request and create a separate issue.
Thanks.

@StasPerekrestov, @RicoSuter I'm having the same issue since about 3 months.
I'm still in beta development with my application and so I was waiting to open the issue.
The problem for me is that when I install my server application on our test server, if I open the API from localhost/..., then Swagger is not working anymore from the external IP of the server, because the reference on the BasePath is cached as localhost/.... The only solution is to reboot my server application.

Please review this PR: https://github.com/RicoSuter/NSwag/pull/2196

The PR has been merged, why is this still open?

Let's close...


wrong label priority

I have something like this for transportation_name
[class=motorway][zoom>=9],
	[class=trunk][zoom>=10],
	[class=primary][zoom>=14],
	[class=track][zoom>=15],
	[class=tertiary][zoom>=15],
	[class=secondary][zoom>=15],
	[class=minor][zoom>=16],
	[class=service][zoom>=17],
	[class=path][zoom>=17]{
		text-avoid-edges: false;
		text-name: @name;
		text-placement: line;
		// text-wrap-before: true;
		text-face-name: @mont;
		text-fill: @road_text;
		text-halo-fill: @minor_halo;
		text-halo-radius: 1;
		text-halo-rasterizer: fast;
		text-min-distance: 5;
		text-size: linear([view::zoom], (13, 6.0), (18, 8.0));
		text-vertical-alignment: middle;

		[class=motorway],
		[class=trunk],
		[class=primary]{
			text-halo-fill: @primary_halo;
			text-size: linear([view::zoom], (13, 6.0), (18, 13.0)) + 0.00004;
			[class=motorway], [class=trunk] { text-halo-fill: @motorway_halo; }
		}

		[class=secondary],
		[class=tertiary]{
			text-size: linear([view::zoom], (13, 6.0), (18, 12.0)) + 0.00003;
		}
		[class=minor]{
			text-size: linear([view::zoom], (13, 6.0), (18, 10.0)) + 0.00002;
		}
		[class=service]{
			text-size: linear([view::zoom], (13, 6.0), (18, 10.0)) + 0.00001;
		}
	}

As you can see i use +0.00000x to try and give priority to higher class labels
However it does not work and i am wondering if it is related to text-min-distance
In the next screenshot look at the circles. I see the footway label when i should see the minor street label.

Any idea?

No idea at the moment, will try to reproduce it.


Cron Job's description not available in recurring snapshots section in rke2 cluster config

Rancher Server Setup

Rancher version: 2.6-head commit id: e93a53c
Installation option (Docker install/Helm Chart): docker install

Information about the Cluster

Kubernetes version: v1.21.10+rke2r1
Cluster Type (Local/Downstream): Downstream DO Node driver cluster

User Information

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

Description

Create an RKE2. cluster

the cron under etcd tab in the cluster config does not have the cron's description/value

Can we have a description that we see during cron Job (deployment's) page? Like this:

Ticket #5266 - Test Results
With Docker on a single-node instance:
Reproduced on rancher v2.6.4:

Fresh install of rancher v2.6.4
Provision a downstream RKE2 cluster
Reproduced - Cluster Configuration => Etcd - No Cron Schedule description present

Screenshot:

Verified on rancher v2.6-7d4bfd887f927396ccc882490153ef7c9223b3a9-head:

Fresh install of rancher v2.6-head
Provision a downstream RKE2 cluster
Verified -  Cluster Configuration => Etcd-  Cron Schedule description is present

Screenshot:


python3Packages.pyombi: init at 0.1.10

Motivation for this change
Python module to retrieve information from Ombi
https://github.com/larssont/pyombi
This is a Home Assistant dependency.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.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.

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

2 packages built:

python38Packages.pyombi
python39Packages.pyombi

Result of nixpkgs-review pr 139438 at f6139b4d run on aarch64-linux 1

2 packages built successfully:

python38Packages.pyombi
python39Packages.pyombi


Addition of Events on Index Events Page

/cc @parispittman
/cc @mrbobbytables

/assign @parispittman

/assign @mrbobbytables

Thats weird, I swear I had an additional comment in there for the whole PR review 🤔
Anyway -- Some language changes and other suggestions..the big one is on the use of shortcodes. 😬

@mrbobbytables Done the requested changes!

Thanks! That looks good :)
If you could squash the commits down and then I'll toss an approve on there 👍

squashing via tide
/approve


Identify constant definitions that look like include guard definitions

The solution follows the outline in the issue description. If the literal "1" is present,
we treat the construct as an include guard, otherwise it is treated as defining a constant.
Resolves SR-9482.

@swift-ci please smoke test

Once I have the fixes for CI, I'll open a new PR from my GitHub account for work @varungandhi-apple. Closing for now.


Flower service and updated kubectl outputs in examples/celery-rabbitmq

cc @thockin @bgrant0607 @caesarxuchao as potential reviewers

Thank you @mwielgus. The modification looks good. But you also need to add an entry in examples_test.go to validate the new flower-service.yaml to pass the tests.

@caesarxuchao Added.

Thanks @mwielgus. The rule now requires LGTM from two TL. Let's wait @bgrant0607 @thockin to take a look.

@mwielgus Shippable still fails. It seems you didn't push the changes.

@caesarxuchao  Shippable is green now.

LGTM. Need two TL to give LTGM.  @bgrant0607 @thockin.

After 1.0.

@bgrant0607 Without this change people on GCE (or any other cloud provider) will not be able to see anything "working" in this example as the Flower web ui will be visible only inside of the cluster. Are you OK with this?

LGTM
ok to merge

ref #10168

adding ok to merge label according to what @bgrant0607 wrote


When typing, TextArea should scroll so that cursor is visible, vertically.

Currently, it's possible to type off the bottom of a TextArea. You then have to use the mouse to scroll manually. It should be automatic that as you type off the bottom, your line stays visible.

Basically, keep the cursor visible at all times.

Implemented. Also scrolls horizontally when cursor comes close to edges.


Unknown crash

Tested versions
Reproducible in 4.4Dev4.3, 4.4Dev2
System information
Linux markoC3PO 6.10.11-2-MANJARO #1 SMP PREEMPT_DYNAMIC Thu Sep 26 03:28:26 UTC 2024 x86_64 GNU/Linux
Issue description
I have no idea why it crashes but the larget the project gets it crashes randomly when I save scene and scripts (ctrl + s)
this is what I get IF i run from terminal on manjaro linux
Godot Engine v4.4.dev3.official.f4af8201b - https://godotengine.org
OpenGL API 4.6 (Core Profile) Mesa 24.2.2-arch1.1 - Compatibility - Using Device: Intel - Mesa Intel(R) HD Graphics 4600 (HSW GT2)

MESA-INTEL: warning: Haswell Vulkan support is incomplete
Editing project: /home/marko/Programming/GoDot/Editor/IE beta/4.4-dev3/Copy (1) infinity-elements
Godot Engine v4.4.dev3.official.f4af8201b - https://godotengine.org
libspeechd.so.2: cannot open shared object file: No such file or directory
MESA-INTEL: warning: Haswell Vulkan support is incomplete
Vulkan 1.2.289 - Forward Mobile - Using Device #0: Intel - Intel(R) HD Graphics 4600 (HSW GT2)

[marko@markoC3PO GoDot4.4-Dev3]$ Could not find version of build tools that matches Target SDK, using 35.0.0

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.4.dev3.official (f4af8201bac157b9d47e336203d3e8a8ef729de2)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /usr/lib/libc.so.6(+0x3d1d0) [0x7f3e5dd351d0] (??:0)
[2] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x7bfb9b] (??:0)
[3] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x4a2a6ee] (??:0)
[4] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x6ea814] (??:0)
[5] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x71004b] (??:0)
[6] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x709378] (??:0)
[7] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x7263c9] (??:0)
[8] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x6fe584] (??:0)
[9] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x719477] (??:0)
[10] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x6fd89a] (??:0)
[11] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x70452e] (??:0)
[12] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x7045be] (??:0)
[13] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x705e17] (??:0)
[14] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x706c25] (??:0)
[15] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x71fd88] (??:0)
[16] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x73ca24] (??:0)
[17] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x7403b5] (??:0)
[18] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x6c5715] (??:0)
[19] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x6cc696] (??:0)
[20] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x3f9f479] (??:0)
[21] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x167c2cc] (??:0)
[22] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x1685b51] (??:0)
[23] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x1dea87c] (??:0)
[24] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x1684600] (??:0)
[25] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x16851c0] (??:0)
[26] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x168f2cf] (??:0)
[27] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x42fc9c2] (??:0)
[28] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x282bd47] (??:0)
[29] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x28395d9] (??:0)
[30] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x28396fc] (??:0)
[31] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x25f3678] (??:0)
[32] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x2628686] (??:0)
[33] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x2657dd1] (??:0)
[34] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x26b11d9] (??:0)
[35] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x49e217e] (??:0)
[36] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x4b802f] (??:0)
[37] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x402b9b7] (??:0)
[38] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x402cfbf] (??:0)
[39] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x4bf1e0] (??:0)
[40] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x41d058] (??:0)
[41] /usr/lib/libc.so.6(+0x25e08) [0x7f3e5dd1de08] (??:0)
[42] /usr/lib/libc.so.6(__libc_start_main+0x8c) [0x7f3e5dd1decc] (??:0)
[43] /home/marko/Desktop/GoDot4.4-Dev3/Godot_v4.4-dev3_linux.x86_64() [0x43bdca] (??:0)
-- END OF BACKTRACE --
================================================================

I'm really sorry for not providing MRP because I have no idea what's going on
Steps to reproduce
changing few lines and trying to save
3/4 times it works
some times it just crashes
Minimal reproduction project (MRP)
large project
added a video how it crashes it's 14MB long in the link

Sounds like:

https://github.com/godotengine/godot/issues/97330

sometimes I randomly get:
Line 1889:Could not resolve class "IVisual", because of a parser error.
Line 1890:Could not parse global class "IVisual" from "res://DragonsPentagram/Entity/Scripts/IVisual.gd".
Line 1901:Could not parse global class "IVisual" from "res://DragonsPentagram/Entity/Scripts/IVisual.gd".
Line 1960:Could not parse global class "IVisual" from "res://DragonsPentagram/Entity/Scripts/IVisual.gd".
Line 1970:Could not resolve class "IVisual", because of a parser error.

res://DragonsPentagram/Entity/Scripts/IVisual.gd:
Line 42:Parser bug (please report): Could not find external parser for class "EntityClient". (Trying to resolve class member)

IF I restart godot the error vanishes
but that error doesn't crash the godot.
could be related but I have no idea.

I can't reproduce the crash on the current master or 4.3 (with removing typed dicts). Also the crash/freeze you show in you video doesn't seem related to saving, does it? If you are able to reproduce the crash in 4.3, you could download a build with debug symbols and share the trace.

no I checked on 4.3 stable if I remove typed dicts the crash doesn't happen (ofc I need to remove typed dicts as 4.3 stable isn't made for typed dicts yet)
also I figured out on 4.4dev3 if I change anything on script IVisual and save it after that it crashes on end of save

really weird
if I try to do MRP i just can't remake a bug but some how it started complaining and it couldn't compile I had to commented all IVisual script
and I came to line:
	var entity_client = g_man.dict_id__entity_client[id]
	entity_client.body = new_object
	#g_man.dict_id__entity_client[id].body = new_object # <-- is a bug

error that I get if I uncomment is:
Line 46:Parser bug (please report): Could not find external parser for class "EntityClient". (Trying to resolve class member)

it could be related but I'm not sure
when I tried in MRP to do all same conditions it just doesn't happen, maybe if it's largest project ain't sure.

I think it doesn't crash on 4.4-Dev4 and later
I just tried to recreate the Parser bug on 4.4-Dev6 and couldn't get crash or error in console.
so I'm closing.


Implement window.performance

This pull request implements the Performance interface and window.performance as defined by the High Resolution Time specification, with the exception of the default toJSON operation as it is not supported by webidl2js yet.
I use Date.now() to obtain the "time origin timestamp" as I am not aware of another way to obtain a reference to an absolute time without native code.
This resolves https://github.com/tmpvar/jsdom/issues/1510.

What's wrong with using process.hrtime() for timeOrigin?

If I've interpreted the specification correctly, timeOrigin relies on Unix time and thus uses absolute time. From what I can tell, process.hrtime() only works with relative time.

This probably better illustrates what I'm saying.
// This t1 only needs to be calculated once, since process.hrtime() is guaranteed to be
// monotonically increasing, and can be used in all subsequent Window instances.
const t1 = getT1();

function getT1() {
  // Wait at most 1 millisecond, a negligible amount of time for initialization.
  let cur = Date.now();
  const next = cur + 1;
  while (cur !== next) {
    cur = Date.now();
  }

  // At this point cur "just" became equal to the next millisecond -- the unseen digits after cur
  // are approximately all 0, and cur is the closest to the actual value of the UNIX time.
  // Now, get the current global monotonic clock value:

  const [hrSec, hrNS] = process.hrtime();
  const globalMonotonicClockMS = hrSec * 1e3 + hrNS / 1e6;

  // Let |t1| be the DOMHighResTimeStamp representing the high resolution Unix time at
  // which the global monotonic clock is zero.
  // I.e., t1 + globalMonotonicClockMS = cur    =>    t1 = cur - globalMonotonicClockMS
  return cur - globalMonotonicClockMS;
}

function Window() {
  // ...

  // Let |t2| be the DOMHighResTimeStamp representing the high resolution time value
  // of the global monotonic clock at global's time origin.
  const [hrSec2, hrNS2] = process.hrtime();
  const t2 = hrSec * 1e3 + hrNS / 1e6;;

  // Return the sum of |t1| and |t2|.
  const timeOriginTimestamp = t1 + t2;

  // ...
}

The getT1() function is very stable (i.e. the returned value is pretty accurate). If we want to be very very accurate we could discard the first result of getT1() (let V8 compile the function first) and/or take the average of ten runs or so. 10ms is still very little time for one-time initialization.
> getT1()
1514269990803.6875
> getT1()
1514269990803.937
> getT1()
1514269990803.9385
> getT1()
1514269990803.9387
> getT1()
1514269990803.9382
> getT1()
1514269990803.9385
> getT1()
1514269990803.9387
> getT1()
1514269990803.9387
> getT1()
1514269990803.9392
> getT1()
1514269990803.9392
> getT1()
1514269990803.9392

Regarding the accuracy: it's pretty accurate. Two sources of error in the process of calculating t1 are the 1ms loop and the time it takes for process.hrtime() to execute. On my machine, V8 can execute anywhere between 8000-10000 iterations of the loop within 1ms on the initial run, and after TurboFan kicks in and JIT's the function it can execute 10000-18000 iterations. I.e., the difference between cur and the actual time when we get process.hrtime() would always be less than 0.0002ms. process.hrtime(), once warmed up, takes just a bit over 0.001ms to execute as measured by process.hrtime(process.hrtime())[1] / 2 / 1e6, and this difference dwarfs the 0.0002ms imprecision of the loop. A 0.001ms (i.e. 1 microsecond) precision of t1 is pretty darn good, even when it is multiplied by two to account for the imprecision of calculating t2, when the spec says we should aim for 5 microseconds.

https://github.com/nodejs/node/issues/17893#issuecomment-354383863

It assumes Date.now() and process.hrtime() are near-instantaneous, which they usually are but not always. If the system clock is emulated (virtualized), you'll miss the mark by many microseconds, maybe by even more than a millisecond.

:cry:

Given the recent discussions, how do we want to proceed with this? Should I implement your solution @TimothyGu, or keep the current one? Or should we wait until we have the accuracy needed from Node.js before we add support for window.performance at all?

For most of the cases, process.hrtime() and Date.now() are fast enough. It would be a shame to not allow using them when they are.
My recommendation is the following. It is pretty verbose, but should be as spec compliant as anything can be at this point.
Clock accuracy checker + rough Performance implementation
// |t1| only needs to be calculated once, since process.hrtime() is guaranteed to be monotonically increasing, and can
// be used in all subsequent Window instances. However, if the clock is not fast enough, set |t1| to undefined to
// signify that we should use Date.now() to get the time origin timestamp with millisecond accuracy, per spec.
const t1 = (() => {
  // Warm up the function.
  testClockAccuracy();
  testClockAccuracy();
  if (!testClockAccuracy()) {
    return undefined;
  }

  // Warm up the function.
  getT1();
  getT1();
  getT1();
  let sum = 0;
  for (let i = 0; i < 5; i++) {
    sum += getT1();
  }
  return sum / 5;
})();

function toMS([sec, nanosec]) {
  return sec * 1e3 + nanosec / 1e6;
}

// Spec calls for 5-μs accuracy. Check that we have that in both process.hrtime() and Date.now().
function testClockAccuracy() {
  // Test process.hrtime() first. The check is simpler and more stable, and we use process.hrtime() to measure
  // Date.now()'s performance.
  const roundTrip = process.hrtime(process.hrtime());
  if (roundTrip[0] > 1 || roundTrip[1] > 5e3 * 2) {
    return false;
  }

  // Test Date.now() twice: first with a looser bound (10 μs) but with a smaller run time to filter out very bad
  // Date.now() performance, and then with a tighter bound (5 μs) to check we have the accuracy we need.
  let times;
  let cur;
  let start;
  let end;

  times = 100;
  start = process.hrtime();
  while (times-- > 0) {
    cur = Date.now();
  }
  end = process.hrtime(start);
  if ((end[0] * 1e9 + end[1]) > 1000000) {
    return false;
  }

  times = 10000;
  start = process.hrtime();
  while (times-- > 0) {
    cur = Date.now();
  }
  end = process.hrtime(start);
  if ((end[0] * 1e9 + end[1]) > 50000000) {
    return false;
  }

  return true;
}

function getT1() {
  const start = Date.now();
  let cur = start;
  while (cur === start) {
    cur = Date.now();
  }

  // At this point cur "just" became equal to the next millisecond -- the unseen digits after cur are approximately all
  // 0, and |cur| is the closest to the actual value of the UNIX time. Now, get the current global monotonic clock
  // value:
  const globalMonotonicClockMS = toMS(process.hrtime());

  // Let |t1| be the DOMHighResTimeStamp representing the high resolution Unix time at which the global monotonic clock
  // is zero.
  // I.e., t1 + globalMonotonicClockMS = cur    =>    t1 = cur - globalMonotonicClockMS
  return cur - globalMonotonicClockMS;
}

class Window {
  constructor() {
    // ...

    if (t1 !== undefined) {
      // Clock is accurate enough.

      // Used in performance.now().
      const timeOrigin = this._timeOrigin = process.hrtime();

      // Let |t2| be the DOMHighResTimeStamp representing the high resolution time value of the global monotonic clock
      // at global's time origin.
      const t2 = toMS(timeOrigin);

      // Return the sum of |t1| and |t2|.
      this._timeOriginTimestamp = t1 + t2;
    } else {
      // Clock isn't accurate enough. Use millisecond accuracy per spec.
      this._timeOrigin = this._timeOriginTimestamp = Date.now();
    }

    // ...
  }

  // Methods below should go into PerformanceImpl class. They are only in Window for easier testing.

  get timeOrigin() {
    return this._timeOriginTimestamp;
  }

  now() {
    if (t1 !== undefined) {
      return toMS(process.hrtime(this._timeOrigin));
    } else {
      return Date.now() - this._timeOriginTimestamp;
    }
  }
}

This code works well for both fast-clock and slow-clock systems, with a graceful fallback to Date.now() per spec:

If the User Agent is unable to provide a time value accurate to 5 microseconds due to hardware or software constraints, the User Agent can represent a DOMHighResTimeStamp as a time in milliseconds accurate to a millisecond.

To emulate slower-clocked systems, I used the following code:
Emulation code
const realHrtime = process.hrtime;

Date.now = delay(Date.now);
process.hrtime = delay(process.hrtime);

function delay(func) {
  return (...args) => {
    const delayNS = 1e6; // 1 ms delay in clock
    const start = realHrtime();
    let duration = realHrtime(start);
    while (duration[0] < 1 && duration[1] < delayNS) {
      duration = realHrtime(start);
    }
    return func(...args);
  };
}

And to test how well it works, the following is used:
Tester
console.log("t1", t1);
const w = new Window();
console.log("timeOrigin", w.timeOrigin, new Date(w.timeOrigin));
setTimeout(() => {
  console.log(w.now());
}, 1000);

With fast clocks (the default), the following is shown:
t1<PHONE_NUMBER>333.1968
timeOrigin<PHONE_NUMBER>744.6213 2018-01-01T11:36:42.744Z
1003.210213

while with slower clocks (the delay code activated):
t1 undefined
timeOrigin<PHONE_NUMBER>489 2018-01-01T11:39:43.489Z
1004


Ensure social media stats are updating appropriately

Figures have been updated, however Sprout appears to have lost LinkedIn stats from 14th April. Investigating this..

Hi Michelle - yes we were aware that the data returned but is still missing during that period. That's what the comment refers to. I assume that we're not going to recover the missing, more accurate data during that period but it's not the end of the world. I can amend the comment wording if it is unclear
LinkedIn data was missing from the Sprout Social feed from 15/04/2023 to 02/05/2023. Actual figures were higher during this period, we are working with LEEDS 2023 to determine the reason for this and recover the missing data.

Lets have a quick chat about this today. I'll drop you a call at some stage?

@ODILMichelle Will tweak language on site


feat: implement E2E class

input: domain pdf paths
output: domain technical term list
enable to access current step

End2End process is so heavy that a "cache" is needed
Implementation of "cache" is not easy task
Therefore, this feature is not implemented as of now

End2End process is so heavy that a "cache" is needed
Implementation of "cache" is not easy task
Therefore, this feature is not implemented as of now


3.42

This question requires that you evaluate the underlined text to determine if it is correct.
From Azure Monitor, you can view which user turned off a specific virtual machine during the last 14 days.
Instructions: Review the underlined text. If it makes the statement correct, select "No
change is needed". If the statement is incorrect, select the answer choice that makes the
statement correct.
A. No change is needed
B. Azure Event Hubs
C. Azure Activity Log
D. Azure Service Health

C


chore(release): 2.10.0

Version bump in package.json and package-lock.json for release 2.10.0

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


QC module not failing samples where positive and negative kmers are detected for the same genome position

A QC module fix is required in order to flag datasets as “mixed” when both a postive kmer and a negative kmer are detected for the same genome position, within the set kmer frequency thresholds.
-In MTB strain ERR163996, the kmers 62657-4.1 and negative62657-4.1 are both detected in the fastq file at 44X and 11X coverage respectively.  The strain subtype result is 4.1.2 and QC PASS using min_kmer_coverage =8 (default) and scheme tb_speciation v1.0.5.  This sample should be flagged as mixed sample because of the conflict of positive and negative kmer at the same position: I am wondering why it passes QC?
When running the same WGS dataset with min_kmer_coverage = 3, the sample does FAIL QC, with several positive kmers of subtype <IP_ADDRESS>.1 detected at 3-4X coverage.
-Similarly, in MTB strain ERR182041, the kmers 4260268-4.6.1 and negative4260268-4.6.1 are both detected in the fastq file at 54X and 8X coverage respectively.  The strain subtype result is <IP_ADDRESS> and QC PASS using min_kmer_coverage =8 (default) and scheme tb_speciation v1.0.5.  This sample should also be flagged as mixed sample because of the conflict of positive and negative kmer at the same position.
When running the same WGS dataset with min_kmer_coverage = 3, the sample does FAIL QC, with several positive kmers of subtypes <IP_ADDRESS>.1 and 1.1.3 detected at 3-7X coverage.
-Similarly, in MTB strain ERR221649, the kmers 3977226-4.3.4 and negative3977226-4.3.4 are both detected at 115X and 14X coverage respectively, and the kmers 1132368-<IP_ADDRESS> and negative1132368-<IP_ADDRESS> are both detected at 114X and 8X respectively.  The strain subtype result is <IP_ADDRESS>.1and QC PASS at default QC settings. This sample should also be flagged as mixed sample because of the conflict of positive and negative kmer at the same position.
When running the same WGS dataset with min_kmer_coverage = 3, the sample does FAIL QC, with a positive kmer of subtypes 4.9 detected at 5X coverage.
-There are other examples: strain ERR228033 for kmers 764995-4.3 and negative764995-4.3 at 71X and 14X coverage, result=subtype <IP_ADDRESS> and QC PASS with default settings; and strain ERR2515140 for kmers 3273107-3 and negative3273107-3 at 101X and 8X coverage, result=subtype 3.1 and QC PASS with default settings.  Both failed QC with multiple conflicting subtypes detected when using min_kmer_coverage=3.
tb_speciation_scheme_v1.0.5.txt

Looking into this, it seems that the QC module is only checking the final subtype k-mer for matching both of the positive and negative kmers. Well that's what I believe to be seeing anyway.
I'll keep looking at it and see if that's true


Deploying addin to appdata and use nuget for Revit API

Main changes

Deploy using a post build event directly to %appdata%.
Includes both .addin files pointing to a relative path making it easier to share the compiled version (copy/paste to other users).
Referencing Revit API dlls directly from nuget

love it. thank you.


Webview editors are not registered editors?

While working on https://github.com/microsoft/vscode/issues/131587 I noticed that webview editors such as mainThreadWebview-markdown.preview does not appear to be registered in the IEditorResolverService. As such, I have to do an ugly hack to still offer this editor for the user to configure:
https://github.com/microsoft/vscode/blob/69f8d940e2de132c170240acf665869df9bece3a/src/vs/workbench/browser/parts/editor/editorConfiguration.ts#L19-L29
I am not sure what I can do here, is there an alternative service I can use to figure out the contributed webview editors? Can these custom webview editors register to the editor resolver, maybe in a way that they appear in the registry but cannot be picked by the user?

I don't know too much about how we identify webviews or if there is a resource associated with them. If there is we can do something like terminal where a specific webview resource can be used to resolve the webview but not be pickable. I'll wait for @mjbvz to provide further insight as I don't really know much about webviews.

We conceptually have a single webview editor type that is used for all webviews. All of the information about the type of webview being displayed is stored in the WebviewInput. There is also not a resource associated with a webview
Does it make sense to register a separate editor in core for each type of webview contributed by extensions? We previously didn't  do this since the webview implementation doesn't need it

It's not really possible to register with the resolver without an associated resource. The reason @bpasero wants to know all editors is to ensure proper locking I believe

@mjbvz can I get at the view types in a different way, maybe via extension service? I am mainly interested in a list of extension provided webview editors and their name so that the auto lock setting can list them.

We don't have a list of all webview view types because webviews do not have a package.json contribution.
@bpasero Can we register the editor the first time we see a webview of a given view type? The only drawback I see is that a webview would only show up in the setting editor after you open it the first time. We could also cache the webview types associated with an extension

Please coordinate with @lramos15 who owns editor registration.

@bpasero  I believe this registration would be different this would just be a "lightweight" registration service if you will for the locking since webviews do not have resources they are not owned by the resolver.


3 problems on the Devportal - developer.blueskyhq.io

#1: From UX perspective:

Weak API usage docs.
Absent guidance/tooltips /FAQ.

#2: From functionality perspective:

"Fire predictions” and "Sptial AQ" API test returns "unauthorized" error.
Troubleshooting guide absent.

#3: From Dev support perspective:

Broken support path: “Intercom” absent on console page.
No mechanism to create/track support requests.


App: Notification Audit

In lieu of observing the wrong notification for refreshing the queue, here are some others we should check that we're still using/using correctly:

[ ]  BFRRefreshPending
[ ] BFRRefreshPending
[x] BFROfflinePostSaved

Added to wrong repo.


Twitter logo added

Description
Please provide a 1 line description of your art
Twitter logo
Fixes #48
Insert the image of the art below

Checklist:
To fill the checklists, put x inside the brackets. [x]

[x] My code follows the guidelines of this project
[x] I have tested my code and it works properly
[x] I have added just one folder that includes my Art files (jsx and css)
[x] I have not edited App.js file
[x] I have commented my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings
[x] This is my original code and I have NOT copied the code from anywhere else.

Hello @salil-naik, I have fixed the requested changes. Please review it! 🙂

Please merge this PR @salil-naik

Hi @aadityamp01, I cannot merge this PR as the code is plagiarized.

Hello @salil-naik can you please give me the reference how it is plagiarized, because I've used the regular code, please don't mind;


Smf Event Exposure Subscription not respond event  report

@brianchennn,
I'm currently working on integrating NWDAF with the free5g core. As part of this integration, I need to collect data from each network function component using the event exposure service of each NF. The issue I'm facing is that when I make a subscription to the SMF (Session Management Function), I receive a success code, but I don't receive any reports. I would greatly appreciate your assistance in resolving this issue. Thank you for your help.
url = 'http://<IP_ADDRESS>:8009/nsmf_event-exposure/v1/subscriptions'
headers = {
'accept': 'application/json',
'Content-Type': 'application/json'
}
data = {
"subscription": {
"eventList": [
{
"type": "PDU_SESSION_ESTABLISHMENT ",
"immediateFlag": True,
"refId": 0
}
],
"notifUri": "http://<IP_ADDRESS>:5000/callback",
"supi": "imsi-208930000000001",
"gpsi": "string",
"anyUeInd": False,
"groupId": "string",
"pduSeId": "string",
"subId": "string",
"notifId": "string",
"ImmeRep": True,
"notifMethod": "CONTINUOUS",
"maxReportNbr": 30,
"expiry": "2023-05-31T11:30:51Z",
"repPeriod": 1,
"guami": "string",
"serviceName": "string",
"supportedFeatures": "FFFF"
}
}
response = requests.post(url, headers=headers, data=json.dumps(data))

Hi @Abbey-12
Currently, We haven't plan to implement the event exposure feature on SMF.
As for your requirement, I think you can implement the custom metrics exporter.
Hope it be help to you.
Best Regards.


rpmsg_lite_send timeout not honored (virtqueue_kick may get stuck)

Hello, I'm running RPMsg lite in two Cortex-M4 (MX8QM, FreeRTOS 10).
The normal use cases are OK, however I'm working on edge situations.
For instance, if a node transmits a message with rpmsg_lite_send(...., timeout=100ms) and the other node is stuck (e.g., is in assert(false) or paused by JTAG), then the rpmsg_lite_send() will not return an error after 100ms.
This happens because virtqueue_kick() is called without a reference to the timeout, and in my case MU_SendMsg() gets called, which gets stuck in an infinite while loop waiting for some flag that will never change (since the other M4 is dead).
I have work-arounded this issue by monkey-patching the code in an horrible way. It gets the job done, but I deserve the programmer's hell (done of tiny .svn directories everywhere for the eternity); however I would like to know what you think about this and if you are interested in a more elegant solution.
Thank you!
Francesco

Hello @fmntf , thank you for reporting this. I think the MU_SendMsg() function call in platform_notify() should be replaced by non-blocking version of this function, i.e. by MU_SendMsgNonBlocking. As you can see from comments in porting layer for lpc55s69 for instance, there is no need to use the blocking send function and to wait until the previous message is consumed by the receiver side, because the same value of the virtqueue ID is written into the tx register when triggering the ISR for the receiver side. I will discuss this with people responsible for the QM port and get back to you after my vacation, ok? Regards, Michal

Thank you Michal for your feedback.
Have a nice vacation,
Francesco

Hello Francesco,
sorry for late response ... I have discussed this case with colleague who made the QM port ... the MU_SendMsgNonBlocking can't be used because there are multiple virtual devices controlled by rpmsg_lite on this device. MU message is used to identify the virtual device to be kicked/notified and platform_notify event cannot be lost. Even the timeout happens, we still need to notify it again later until success.
The proposed solution is to add a delay chain feature in porting/environment. The delay chain should be something like callback registry, and such callback will be called after certain delay. Thus the order of notifications will not lost and platform_notify() would not block. I have put this feature into the todo list to be implemented in future releases.
Regards
Michal


Load already loaded relations

Hello,
I face a problem while using eager loading using transformers,
the problem that the package load the relation ship if it is already loaded, so I suggest that
$data->loadMissing($relations);
instead of load method,
In eagerLoadRelations method from TransformBuilder class,
hope this change applied ASAP.

@flugger Check this out pls


ArchiveFiles L0 Tests Windows & Linux

PR for ArchiveFiles L0 tests -- want to get eyes on the mocking changes I added -- this can't go in until the underlying task lib is updated.

Looks good to me. Thanks for getting those methods into the task lib so that they could be Mocked :)


Composing up Jupyter notebook

Reference:
https://towardsdatascience.com/jupyter-data-science-stack-docker-in-under-15-minutes-19d8f822bd45

@kicheolkim, Anyone who has interested in this project can use this resource by using docker-compose. (It is limited to use notebook and notebook resources including main data).  Backend service and utils will be provided in another container.


cargo-deny: 0.14.20 -> 0.14.21

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/EmbarkStudios/cargo-deny/releases.
meta.description for cargo-deny is: Cargo plugin to generate list of all licenses for a crate
meta.homepage for cargo-deny is: https://github.com/EmbarkStudios/cargo-deny
meta.changelog for cargo-deny is: https://github.com/EmbarkStudios/cargo-deny/blob/0.14.21/CHANGELOG.md
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.14.21 with grep in /nix/store/zl7f0nqj5r2r3j16f66d1f9kssx9xnca-cargo-deny-0.14.21
found 0.14.21 in filename of file in /nix/store/zl7f0nqj5r2r3j16f66d1f9kssx9xnca-cargo-deny-0.14.21

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
cargo-deny

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/zl7f0nqj5r2r3j16f66d1f9kssx9xnca-cargo-deny-0.14.21 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A cargo-deny https://github.com/r-ryantm/nixpkgs/archive/19afc01e857c02a13ded2d88796afe99f0d493f0.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/19afc01e857c02a13ded2d88796afe99f0d493f0#cargo-deny

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/zl7f0nqj5r2r3j16f66d1f9kssx9xnca-cargo-deny-0.14.21
ls -la /nix/store/zl7f0nqj5r2r3j16f66d1f9kssx9xnca-cargo-deny-0.14.21/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

1 package built:

cargo-deny

Maintainer pings
cc @figsoda @matthiasbeyer @06kellyjac for testing.

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

1 package built:

cargo-deny

Backport of this patch pushed to https://github.com/NixOS/nixpkgs/pull/298312


Changed the Options form to be properly displayed

This should fix #444

Changed the Options form to be properly displayed - at least on my monitors. On the laptop it now looks like this

Changed the proxy handling to avoid setting a proxy if a proxy host  is not specified. Otherwise an exception is thrown.

Some Resharper automatic settings in a file that I wonder if it should be in the repo...

:white_check_mark: Build ServiceBusExplorer 4.2.0-SwitchToNotHubs109.65.build.696 completed (commit https://github.com/paolosalvatori/ServiceBusExplorer/commit/3f5cc4b091 by @)


Error detection

Error handling can be done in the callback function as it's passed the whole $request_info array. I really don't want to add another param to callback unless necessary.


Custom logo mobile not show

Hi.
In Quark theme, when you choose only the custom_mobile_logo, this isn't showed, instead is showed the default logo (grav-logo.svg) located in theme://images folder.
However if I choose the custom_logo,  there's no problem.
What's wrong?

Hi.
In my opinion it would be better to use this code, to correct this problem:
{% set logo = theme_var('custom_logo_mobile' ?: 'custom_logo') %}

I have tried loading only the mobile logo and it works fine.

When I inspect the div mobile-container on my site and on the theme demo, its dimensions are 0x0. I assume that is intended on desktop, but there seems to be no media query block that reveals this div for small screen devices.
My guess is that this has just been omitted somehow. I won't make a PR because I don't know the most elegant (S)CSS to fit in with this theme.


Weekly data - last week missing

Hi all,
The code below, gives me data until the very last day of last week (13th of Jan):
yfObj = yf.Ticker(stock)
data = yfObj.history(period="3y")

But, if I want to have weekly data, using the code here below:
data = yfObj.history(period="3y",interval="1wk")
It gives me data until 9th of January. So for some reason the last weekly data isn't available.
If I look on yahoo manually though (historical data, weekly), I do see the data of 13th of January.
Any idea if there's a setting or parameter that I could include?

Something I didn't realize until I was about to write a workaround for this... Could be interesting for all of you, since I saw other people questioning the weekly data via yfinance on other forums or groups.
If you download weekly data, the date in the index is actually Monday's date, but containing weekly's data from that day onwards.
An example:
data = yfObj.history(period="3y",interval="1wk")
gives me:
Date	Open	High	Low	Close	Adj Close	Volume	Dividends	Stock Splits	Capital Gains	IND_RSI
2022-12-19 00:00:00-05:00	33.11000061035156	33.2599983215332	30.59000015258789	30.969999313354492	30.969999313354492	103924200	0.0	0.0	0.0	36.17217106045044
2022-12-26 00:00:00-05:00	30.510000228881836	31.389999389648438	29.43000030517578	31.239999771118164	31.239999771118164	84448500	0.0	0.0	0.0	36.623685425899076
2023-01-02 00:00:00-05:00	31.84000015258789	32.150001525878906	30.020000457763672	31.3700008392334	31.3700008392334	89050600	0.0	0.0	0.0	36.8552998003672
2023-01-09 00:00:00-05:00	32.43000030517578	36.02000045776367	32.02000045776367	35.9900016784668	35.9900016784668	147033026	0.0	0.0	0.0	44.603497472664785

Looking at the daily data, it's clear what I mean:
Date	Open	High	Low	Close	Adj Close	Volume	Dividends	Stock Splits	Capital Gains
2023-01-09 00:00:00-05:00	32.43000030517578	33.45000076293945	32.02000045776367	32.810001373291016	32.810001373291016	25848500	0.0	0.0	0.0
2023-01-10 00:00:00-05:00	32.63999938964844	33.63999938964844	32.59000015258789	33.619998931884766	33.619998931884766	18974600	0.0	0.0	0.0
2023-01-11 00:00:00-05:00	33.93000030517578	34.7599983215332	33.459999084472656	34.7599983215332	34.7599983215332	22832100	0.0	0.0	0.0
2023-01-12 00:00:00-05:00	34.900001525878906	35.5	33.380001068115234	35.4900016784668	35.4900016784668	26598200	0.0	0.0	0.0
2023-01-13 00:00:00-05:00	34.6619987487793	36.02000045776367	34.61000061035156	35.9900016784668	35.9900016784668	26417300	0.0	0.0	0.0

so looking at the daily data:
weekly close = last close of daily data
weekly high = highest value of the daily data
weekly low = lowest value of the daily data
So in fact all is ok, just know that the date of the weekly data represents the first day of the week.
P.S. if you check the raw data on yahoo finance in the weekend, the last entry is actually showing Friday's data, so that one is not actually correct in the sense that it doesn't represent weekly data.
Have a nice coding day!
Johan.

Week starts on Monday, thanks for that insight.


[SLIDES] [EASY] Pass activeIndex in ionSlideDidChange detail

Feature Request
Please, pass the activeIndex along with the event (ionSlideDidChange). Avoid creating a method just for this.
Ionic version:

[x] 4.x
Describe the Feature Request

Describe Preferred Solution

Describe Alternatives

Related Code

Additional Context

And even better: pass the realIndex for the cases when there is a looping turned on.
Now I have to “extract” the index using event.srcElement.swiper.realIndex and it seems wrong.
Thanks.


Bell Number

Do the checklist before filing the issue:

[x] Do you have Node.js and all the relevant dev-dependencies installed?
[ ] Is this a bug fix?
[x] Is this an enhancement?
[x] Is this a feature request?

NOTE: Provide a clear and concise description of the feature that needs to be added! Or if its a bug, then provide the necessary steps to reproduce it along with screenshots.

Give your answer below:

[Function: M.bell()] needs to be added!
For more info:
https://www.geeksforgeeks.org/bell-numbers-number-of-ways-to-partition-a-set/
M.bell() needs to accept a non-negative integer and all other arguments passed should throw a type error which needs to be handled gracefully! For error handling, you should refer to how M.factorial() is implemented.
Category: Find nth Number

I want to work on this @pbiswas101

@Indrajit1997 you're assigned!


Recursive type constraint sometimes causes type checking errors.

Bug Report
🔎 Search Terms
recursive type constraint
🕗 Version & Regression Information

This changed between versions 4.9 and 5.0 Beta

⏯ Playground Link
Only happens in multi files projects in VS Code. Repo: https://github.com/dragomirtitian/recursive-type-constarint-bug-ts-5.0
💻 Code

/// types.ts
export type<T extends Record<string, (...params: unknown[]) => unknown>> = {
    [key in keyof T]: T[key];
};

/// index.ts
export declare const value2: {
    sliceSelectors: <FuncMap extends import('./types').SelectorMap<FuncMap>>(selectorsBySlice: FuncMap) => { [P in keyof FuncMap]: Parameters<FuncMap[P]> };
};

🙁 Actual behavior
When you first open the project in VS code you get the errors below. Any further editing of the file makes the error s go away.
Type parameter 'FuncMap' has a circular constraint.

Type 'FuncMap[P]' does not satisfy the constraint '(...args: any) => any'.
  Type 'FuncMap[keyof FuncMap]' is not assignable to type '(...args: any) => any'.
    Type 'FuncMap[string] | FuncMap[number] | FuncMap[symbol]' is not assignable to type '(...args: any) => any'.
      Type 'FuncMap[string]' is not assignable to type '(...args: any) => any'.

Also happens in a custom build tool using the compiler API
🙂 Expected behavior
The code either fails all the time or type checks all the time
Note: The circular constraint which is present above and seems to trigger the bug doesn’t seem to make much sense in our case, so we took the opportunity to clean up the types, so this is not blocking for us, but the behavior is still very strange.

Also happens in a custom build tool using the compiler API

Would you be able to bisect this?

@RyanCavanaugh  First comit to error seems to be https://github.com/microsoft/TypeScript/commit/aa2781d44fb182c59a1698fcca2b3365619fb272 From this PR https://github.com/microsoft/TypeScript/pull/51766
The changes in the comin are a plausible cause. They impact type constraint checking, they are for a bug that manifests across files. The added diagnostic is lazy, which might explain some of the now you see it now you don't quality of the bug.

Should the code be declared as
export type SelectorMap

?

I sent #52861 to fix this; I think this is the last of the issues reported on #52670, correct?

@jakebailey yup, is the last one. Thank you for the quick turn around :)


Inconsistent use of "customer-managed" in section "Server-side encryption using customer-managed keys in customer-controlled hardware"

Hi, great article on a foundational topic. Thanks!
Under subsection "Server-side encryption using customer-managed keys in customer-controlled hardware" the text refers to server-managed keys in customer controlled HW. As the section is about customer-managed, not server managed keys, i am wondering if this really refers to service managed.
Also, in the table the header uses a term not introduced: "client managed". It may be a minor deviation from "customer managed", however the purpose of the article for a reader is to sort out similar but not identical scenarios so consistent terminology is key.

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

ID: 993f902c-e7bd-1876-cf21-36bd9501b981
Version Independent ID: 71807d37-b606-ad3e-9ba3-0de1a78c4ceb
Content: Data encryption models in Microsoft Azure
Content Source: articles/security/fundamentals/encryption-models.md
Service: security
Sub-service: security-fundamentals
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

@gaborvar
Thanks for your feedback! We will investigate and update as appropriate.

@gaborvar
Thank you for pointing this out!
I created a PR to update the wording to "service-managed" and it's currently waiting for the author to review and sign off. I also assigned this issue to the author to investigate and update the "client managed" column header as needed.

Please allow some time for the author to review and update.
Thank you for your time and patience!

We believe this issue has been resolved. Please reopen this is you disagree.  Thank you for your contribution. #please-close


SPA - unable to complete authentication from another route

I have a SPA with Aurelia, and configured it with MSAL.
When I load app from the base route http://localhost:8080 it authenticates user, then redirects to homepage and am able to get the logged in User and display it on navbar.
When I load from another route, like http://localhost:8080/#/counter, it authenticates user, redirecters to counter page, but getUser() returns null.
Is there something I'm missing that would prevent authentication from completing on a different route?
Sample Repository:
https://github.com/jbockle/aurelia-azure-active-directory

if loginInProgress I force a page reload and all is fine, not sure why that step is needed

I couldn't get the hashtag to work in my Angular 5 app either. I had to take out the useHash: true inside my app-routing.module.ts file. RouterModule.forRoot should define useHash as false by default.

@dougmolineux  There is an issue with angular library itself for hashbang urls. https://github.com/angular/angular/issues/16710
We are currently waiting on them to fix it. If it doesn't get fix by angular team, we will provide a workaround.

Closing this issue as the original issue seems to be resolved.

I still have this problem when using useHash: true. Seemingly this issue cannot fix in angular 6 and more :(


[core] Add SHA256 functions for React-Native

Packages impacted by this PR

@azure/core-rest-pipeline
@typespec/ts-http-runtime

Issues associated with this PR

#30065

Describe the problem that is addressed by this PR
Adds web crypto APIs for React-Native calls.  Requires the consumer to polyfill the Web Crypto APIs in order for these modules to work.
What are the possible designs available to address the problem? If there are more than one possible design, why was the one in this PR chosen?
Are there test cases added in this PR? (If not, why?)
Provide a list of related PRs (if any)
Command used to generate this PR:**(Applicable only to SDK release request PRs)
Checklists

[ ] Added impacted package name to the issue description
[ ] Does this PR needs any fixes in the SDK Generator?** (If so, create an Issue in the Autorest/typescript repository and link it here)
[ ] Added a changelog (if necessary)

API change check
API changes are not detected in this pull request.


chore:  Added bgColor type definition

General

✏ Mark the necessary items without changing the structure of the PR template.

[✅] Pull request template structure not broken

Type

ℹ What types of changes does your code introduce?

👉 Put an x in the boxes that apply

[ ✅] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist

ℹ Check all checkboxes - this will indicate that you have done everything in accordance with the rules in CONTRIBUTING.

👉 Put an x in the boxes that apply.

[✅] My code follows the style guidelines of this project
[✅] Is the code format correct
[✅] Is the git submission information standard?
[✅] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[✅] I have made corresponding changes to the documentation
[✅] My changes generate no new warnings
[✅] I have added tests that prove my fix is effective or that my feature works
[✅] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

主要增加了一个TS类型来解决 useLayout.ts 文件中的这个警告，其他未做更改。

bgColor目前应该是没有在用了

bgColor目前应该是没有在用了

我试着也没啥效果，没敢删😂


Cannot download image/video from firebase storage

Here is an example of image link i tried to download and its generating error on this similar links "https://firebasestorage.googleapis.com/v0/b/eventat-4ba96.appspot.com/o/2019-Metrology-Events.jpg?alt=media&token=bfc47032-5173-4b3f-86bb-9659f46b362a"

This is an easy one to fix, but I can't figure out how to do a pull request. in lib/files.dart the isVideo and isImage functions use the extension method and this doesn't recognize extensions that are inline in the URL string. The quickest way to fix this is by removing the existing isVideo and isFile functions in lib/files.dart and replace them with:
bool isVideo(String path) {
  bool output = false;
  videoFormats.forEach((videoFormat) {
    if (path.toLowerCase().contains(videoFormat)) output = true;
  });
  return output;
}

bool isImage(String path) {
  bool output = false;
  imageFormats.forEach((imageFormat) {
    if (path.toLowerCase().contains(imageFormat)) output = true;
  });
  return output;
}

i'll try this solution, thanks for you help, i really appreciate that :) 👍

Hi, I fix it by adding ".png" or ".jpg" to end of the firebase url.
Here you can see the example:
var currentUrl = "${viewModel.currentWallpaper.url}.png"; GallerySaver.saveImage(currentUrl);


fix: Fixed sync issue

Fixes: #62
How to test: Modify Button.stories.js Demo story like this
export const Demo = (args) => (
  <button type="button" onClick={() => { throw new Error('boom') }}>
    Click
  </button>
);

Summary
This pull request addresses a problem with the test runner for Storybook where errors in one test (specifically the "demo" story in this case) were leaking and affecting subsequent tests (the "findme" story).
The root cause of this issue was identified as improper error handling in the transformPlaywright.ts file. To mitigate this, we have encapsulated the test function in a try-catch block to handle potential errors, and introduced a mechanism to ensure page errors are properly deregistered after each test execution.
Here's a brief summary of the changes:

Encapsulated page.evaluate call within a try-catch block to handle errors.
Defined pageErrorListener as a separate function so that it can be used to deregister from page errors after each test.
Used page.off('pageerror', pageErrorListener); to deregister from page errors after each test.
Added console logging for the error that occurs during page.evaluate.
Updated related jest tests.

📦 Published PR as canary version: 0.13.1--canary.264.c65968e.0

:sparkles: Test out this PR locally via:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

This is super awesome @bryanjtc, thanks for finding an alternative that does not affect performance!!! 🙌
Unfortunately I think there's still something going on. Let me show a few use cases where I noticed issues:
1. Error thrown on click:
export const Demo = (args) => (
  <button type="button" onClick={() => { throw new Error('boom') }}>
    Click
  </button>
);

Even though there is only one failure, it's logged as if there were many failures:

2. Failing play function:
export const Demo = (args) => (
  <button type="button" onClick={() => args.onSubmit('clicked')}>
    Click
  </button>
);

Demo.play = async ({ args, canvasElement }) => {
  await userEvent.click(within(canvasElement).getByRole('alert')); // this will fail, it's supposed to be button
  await expect(args.onSubmit).toHaveBeenCalledWith(expect.stringMatching(/([A-Z])\w+/gi));
};

Even though the play function is wrong and fails:

The test-runner detects it as success, just logging the failure as a console.error message instead:

Do you have any idea what's going on?

This is super awesome @bryanjtc, thanks for finding an alternative that does not affect performance!!! 🙌
Unfortunately I think there's still something going on. Let me show a few use cases where I noticed issues:
1. Error thrown on click:
export const Demo = (args) => (
  <button type="button" onClick={() => { throw new Error('boom') }}>
    Click
  </button>
);

Even though there is only one failure, it's logged as if there were many failures:

**2. Failing play function:**
export const Demo = (args) => (
  <button type="button" onClick={() => args.onSubmit('clicked')}>
    Click
  </button>
);

Demo.play = async ({ args, canvasElement }) => {
  await userEvent.click(within(canvasElement).getByRole('alert')); // this will fail, it's supposed to be button
  await expect(args.onSubmit).toHaveBeenCalledWith(expect.stringMatching(/([A-Z])\w+/gi));
};

Even though the play function is wrong and fails:
The test-runner detects it as success, just logging the failure as a console.error message instead:
Do you have any idea what's going on?

This is super awesome @bryanjtc, thanks for finding an alternative that does not affect performance!!! 🙌
Unfortunately I think there's still something going on. Let me show a few use cases where I noticed issues:
1. Error thrown on click:
export const Demo = (args) => (
  <button type="button" onClick={() => { throw new Error('boom') }}>
    Click
  </button>
);

Even though there is only one failure, it's logged as if there were many failures:

**2. Failing play function:**
export const Demo = (args) => (
  <button type="button" onClick={() => args.onSubmit('clicked')}>
    Click
  </button>
);

Demo.play = async ({ args, canvasElement }) => {
  await userEvent.click(within(canvasElement).getByRole('alert')); // this will fail, it's supposed to be button
  await expect(args.onSubmit).toHaveBeenCalledWith(expect.stringMatching(/([A-Z])\w+/gi));
};

Even though the play function is wrong and fails:
The test-runner detects it as success, just logging the failure as a console.error message instead:
Do you have any idea what's going on?

Investigating

This is super awesome @bryanjtc, thanks for finding an alternative that does not affect performance!!! 🙌
Unfortunately I think there's still something going on. Let me show a few use cases where I noticed issues:
1. Error thrown on click:
export const Demo = (args) => (
  <button type="button" onClick={() => { throw new Error('boom') }}>
    Click
  </button>
);

Even though there is only one failure, it's logged as if there were many failures:

**2. Failing play function:**
export const Demo = (args) => (
  <button type="button" onClick={() => args.onSubmit('clicked')}>
    Click
  </button>
);

Demo.play = async ({ args, canvasElement }) => {
  await userEvent.click(within(canvasElement).getByRole('alert')); // this will fail, it's supposed to be button
  await expect(args.onSubmit).toHaveBeenCalledWith(expect.stringMatching(/([A-Z])\w+/gi));
};

Even though the play function is wrong and fails:
The test-runner detects it as success, just logging the failure as a console.error message instead:
Do you have any idea what's going on?

Investigating

Hey @bryanjtc did you manage to find anything new? Thanks!

Hey @bryanjtc did you manage to find anything new? Thanks!

Due to my ongoing commitments, I haven't had a chance to review it yet. However, I anticipate having more availability in about a month. During that time, I'll make it a priority and provide a timely update.

Hey @bryanjtc did you manage to find anything new? Thanks!

Due to my ongoing commitments, I haven't had a chance to review it yet. However, I anticipate having more availability in about a month. During that time, I'll make it a priority and provide a timely update.

You're the best! <3

Errors identified in the modified Component Demo

The story fails due to the failure of the expect function.
The button triggers an error ('boom') when onClick is invoked during the execution of the story.
The pageErrorListener is invoked as a result of the 'boom' error being thrown within the story.

For now, I think we should show the 3 errors, based on this discussion. https://stackoverflow.com/a/74350185.
I tested case 2, Failing play function and I only have one error.

Errors identified in the modified Component Demo for case 1: Error thrown on click

The story fails due to the failure of the expect function.
The button triggers an error ('boom') when onClick is invoked during the execution of the story.
The pageErrorListener is invoked as a result of the 'boom' error being thrown within the story.

Errors 1 and 3 are expected. Looking into catching error 2.

Thank you for researching! I think there are a few things going on, and I added a commit to help us identify them, which will add some logs to the CLI.
I made only two stories be loaded in Button.stories, and I run yarn test-storybook button for a focused run. We should undo that commit later of course.
When the Demo story comes before Primary, the tests fail, leak and somehow duplicate:

When the Primary story comes before Demo, the tests abort as the browser was closed:

When looking at the logs, I realized that storyRendered (which makes a tests pass) is emitted even though playFunctionThrewException was emitted. That's one potential issue, as once any error happens, nothing else should be emitted. I'm very confused about the order of stories impacting the browser being closed or not. Hopefully this will help us identify what really is going on!

This PR was superceeded by #404


Convert guest implementations to use serializable container for load/save

Instead of custom load/save methods, use those based on dataclasses. We
gain type annotations, automagic conversion from/to YAML, no need for
explicit moves of fields between instances and serialized data.

@happz this looks great :rocket:

@happz seems to me this breaks multihost? tests show something

@happz seems to me this breaks multihost? tests show something

nm, it needs another change ...

@happz seems rebase is needed, wanted to do it myself, but was not sure, so rather leave it to you. Seems there were some conflicting changes in the meantime

Rebased & running all tests

@happz so how did the full test suite run? Is it ok?

@happz so how did the full test suite run? Is it ok?

Yes, all tests did pass. I was a bit surprised...

/packit retest-failed

squashed, preparing for merge


fixed installation command

fixes: https://github.com/open-telemetry/opentelemetry.io/issues/5244

Thank you @cglucks!


Public Gateway - Trouble Setting up

I am trying to set up a public gateway for viewing OB listings. I installed OB2 on a Ubuntu 16 VPS by OVH with no problems.
Following the instructions for setting up a public gateway did not quite work.
https://github.com/OpenBazaar/openbazaar-go/blob/master/docs/gateway.md
-1 In the file ~/.openbazaar2.0/config I successfully changed the gateway listening address.
"Gateway": "/ip4/<IP_ADDRESS>/tcp/4002",

-2 The OB-Api option does not seem to be there as described in the docs. (I can't find it)

...turn off OpenBazaar API as you don't want to give public access to this:

"OB-API": {
    "Enabled": false,
}

After changing the gateway address to <IP_ADDRESS> I shut down and restarted OB. I can still access OB from localhost but can't or don't know how to access it from another device.
I thought I would be able to access OB on port 4002 now but that is giving me a 404 page now. http://odat.xyz:4002/
Am I not using the right link? What can I do to troubleshoot?

Hello,
at first make sure that your firewall allow connections from 4002/tcp
The second think, you can see 404 page if your request to API server was invalid. Try following link instead:
https://<server_ip>:4002/ob/profile
API details:
https://api.openbazaar.org/#authentication

So the API urls you'd be interested in would be like http://odat.xyz:4002/ob/profile/, http://odat.xyz:4002/ob/listings/, http://odat.xyz:4002/ob/listings/, http://odat.xyz:4002/ipns/
Endpoints like that.

I might have been mistaken at first. I am getting a "403 - Forbidden" error for the Openbazaar links like http://odat.xyz:4002/ob/listings/
the ipns link does not give me a 403
http://odat.xyz:4002/ipns/
I allowed 4002/tcp with
sudo iptables -A INPUT -p tcp --dport 4002 -j ACCEPT
JSON-Api authentication is "false"
what else can I try?

I am now also realizing that trying to browse to localhost:4002/ob/listings/  from localhost gives me 403 errors as well
http://localhost:4002/ipns does work.
I was using the server client bundle before. With the server client bundle, the client will connect but I can't use the browser to access OB listings (403 error).
Now I'm trying to use the Go version  OpenBazaar Server v0.9.4

I am now also realizing that trying to browse to localhost:4002/ob/listings/  from localhost gives me 403 errors as well
http://localhost:4002/ipns does work.
I was using the server client bundle before. With the server client bundle, the client will connect but I can't use the browser to access OB listings (403 error).
Now I'm trying to use the Go version  OpenBazaar Server v0.9.4 but still get 403 errors when trying to browse links like localhost:4002/ob/listings/

Not sure. If you are running the bundled app then it will enable authentication it's and override any other settings.
Not sure why you would have that issue if you are running a standalone. The config file looks ok to me.


Add analytics

Use Segment with the same setup as Summer, etc. (Copy the pages/_document.js stuff)
Segment destinations:

api_db
Google Analytics

Done!


fix: parse_image_id: Process "docker build" output in reverse line order

When using a custom dockerfile which installs Python modules using pip, the output will sometimes contain the line:
Successfully built module_name

Since this matches one of the regexes in parse_image_id, it causes the module name to be incorrectly identified as the image ID, which will cause kitchen-docker to fail the "docker run" as it will not have a valid Docker image ID.
This commit processes the "docker build" output in reverse line order, which will ensure that the correct line is matched.
Check List

[ ] New functionality includes tests
[ ] All tests pass
[X] Commit message includes a Conventional Commit Message

Thanks @terminalmage


Adaptive Empire Slack Requires Workspace Admin Invite

When visiting
https://adaptiveempire.slack.com/
I get presented with a login screen and:
"Don't have an account on this workspace yet?
Contact the workspace administrator for an invitation"
Is this something which can be changed or is it possible to request an invite?

https://twitter.com/xorrior/status/974663662551126016?s=19


SocketIO: Add optional websocket.Config param

In socketio package we were not able to set config for recovery explained here. In this PR I have added option to set config.

@gaby thanks for review. I have updated the readme file as well as.

@ReneWerner87 is it possible to publish new version sooner?

sure https://github.com/gofiber/contrib/releases/tag/socketio/v1.1.0

Thank you!


Change HyperlinkDemo width grow behaviour

So I'd like to modify the hyperlink demo and add support for JavaFX-label like text wrapping.  A JavaFX label first expands over the whole line and only if it reaches its max width, determined by the parent, it begins wrapping text. How can I achieve this behaviour with the Hyperlink demo?

The hyperlink node is, if I'm not mistaken, an extended Text object. You can access it and change it's properties here in TextHyperlinkArea. If you need to change the CSS styling for the hyperlink edit text-hyperlink-area.css

I think you are right, so you'll have to work with the Text node's width and wrap properties directly  ?


[19.07] Very small fields in /cgi-bin/luci/admin/services/samba4

The names of the shared directories and the paths are extremely small fields in the UI: it is impossible to read them properly and extremely difficult to type in them.

Should probably be rewritten to use grid sections, so that the fields can be rendered full width in a modal.

Should probably be rewritten to use grid sections, so that the fields can be rendered full width in a modal.


Keyboard shortcut when selectmenu in focus changes selected option

To recreate bug:

go to Add a Form page
set focus to verifier field and type the keyboard shortcut CTRL+P
return to Add a Form page (CTRL+A) and see that the selected verifier is now a user whose name begins with "P" (if there is one)

The selectmenu is catching the CTRL+P event and changing the selected value accordingly. Calling .stopPropagation() doesn't work (I think) because the selectmenu catches the event first (...). Anyways, this is a small bug, but it would be nice to fix it...

I think I fixed a similar issue to this in another View using a clever hack. TODO: look into this fix, use it to close this issue.


Memory leak?

I did something as simple as this (see below), and then had a batch file that just does CURL over and over and over against this endpoint.
For each request, there is one instance of HttpListenerRequest, HttpListenerResponse, HttpListenerContext, HttpConnection and several other types being left unreleased, according to general memory usage as report by task manager but also .NET memory profilers such as https://memprofiler.com/ (and the fact that it crashes with EOutOfMemoryException if left alone for a while).
I thought a simple .Response.Close() would be enough, but apparently not..? .Abort() does not help either, nor does setting KeepAlive = false.
MSVS 2012, .NET 4.6.1, installed from NuGET (1.0.50)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SocketHttpListener.Net;

namespace ConsoleApplication29
{
    class Program
    {
        static void Main(string[] args)
        {
            var listener = new HttpListener();
            listener.Prefixes.Add("http://+:8899/");
            listener.OnContext = (HttpListenerContext context) =>
            {
                Console.WriteLine("request " + DateTime.Now);
                context.Response.KeepAlive = false; // nope
                context.Response.Close(); // nope
                //context.Response.Abort(); // nope
            };
            listener.Start();
            Console.ReadKey();
        }
    }
}

This may have been a primary reason for our application using this library to often have runaway memory usage under the .net framework. We moved to .net core and it hasn't been a problem since then.
Just FYI, this library is intended to more or less be a clone of the mono HttpListener along with web socket support and a few other bug fixes, so it's unlikely that I'm going to tear it apart to try and get to the bottom of what is happening here.
The .net core HttpListener is a complete rewrite, so perhaps some inspiration could be taken from it: https://github.com/dotnet/corefx/tree/master/src/System.Net.HttpListener/src/System/Net
Additionally on .NET Core, kestrel is also a nice option. You should only be using this library if you need to be able to run under the mono runtime. If you only need .NET framework and/or .NET core support, then i would just use the built-in HttpListener.

The reason why I switched to this in the first place was the really cumbersome setup of https with the .NET HttpListener classes, where you have to import the certificates and register the cert with a fingerprint and clsid and all those magic dance moves to even get it working.
Anyway, I ported my code back to the .NET framework HttpListener now, and will just to deal with SSL the clumsy way for now.
But anyway, might be worth leaving this issue as a warning for anyone else tempted to use it :)

Looking through the source, disposable objects such as input and output streams associated with the request and response (as well as others) are not being disposed of, this is one of the primary reasons for the leak.
Much of the leak could be fixed by disposing of disposable objects in the close method of HttpConnection since this is the heart of it.


builstep alias configuration in reactor config map

OSBS-7530

Signed-off-by: Robert Cerven<EMAIL_ADDRESS>Maintainers will complete the following section:

[x] Commit messages are descriptive enough
[x] "Signed-off-by:" line is present in each commit
[x] Code coverage from testing does not decrease and new code is covered
[x] JSON/YAML configuration changes are updated in the relevant schema
[x] Changes to metadata also update the documentation for the metadata
[x] Pull request includes link to an osbs-docs PR for user documentation updates

rn updated


Bug/zap performance improvement/emzigbee 9385

Cleaning up the queries to only query for what is needed.
Also caching the static tables for faster access

@brdandu : did the caching made some timing improvements?

@brdandu : did the caching made some timing improvements?

I am coming to an assumption that the caching may be system dependent. I didn't see any big difference locally. I initially thought it slowed down the generation locally but improved it on Jenkins because I saw the jenkins build pass a few times. I have found it difficult to compare locally because each generation seems to have a substantial diff locally when calling from the slc.


Lag on Scroll

Hi
I'm using the theia-sticky-sidebar script for fixing two sidebar on left and right of the container. the problem is, people which using old computers (PC with 3 or older age) figure out with very bad lag. specially laptop users has this problem. to get this fixed. I tried to add a timer on the scroll call function
// Initialize the sidebar's position.
o.onScroll(o);
        // Recalculate the sidebar's position on every scroll and resize.
        var timer;
        $(document).scroll(function() {
            if(timer) {
                window.clearTimeout(timer);
            }

            timer = window.setTimeout(function(o) {
                return function () {
                    o.onScroll(o);
                };
            }(o), 10);
        });

It's much better now but the side bar reach to the position with delay which make it unsuitable. Please help me to fixed this.

@Hitking There are some performance improvements bundled in the latest version (1.5.0). Can you please try it out and let me know how it goes?

The same problem on my three-column site


Allow logging to be optional

Is there a way to reduce/condense the amount of logs that the InfluxDB reporter produces?
We have started to make use of it however as we have been debugging our code and looking in our logs it feels like it is providing far too much information.
With the reporter running every 5 seconds and producing 13 debug logs each time we have found it to create a lot of noise.

@MarcDenman at the moment I'm just resolving the ILoggerFactory configured in the app where those logs are written as debug level.
On the AddReporting extension method I guess we could allow a separate LoggerFactory which you could then set the log level on that to info and write to file separate to your app logs if necessary. Thoughts?

Sorry for the delayed response, it has been a crazy week. We have since discovered the "WithFilter" extension method in "Microsoft.Extensions.Logging.Filter" which allows us to set App.Metrics minimum logging level so no changes are needed here. Thank you though :)

@MarcDenman OK cool, FYI I've changed the log level where is makes sense to Trace rather than Info for the next release


Added Frontend animation

Hello sir,
I have added a frontend animation project of walrus revealing & checkboard vanishing project. I have made it using HTML & CSS.
Please merge my project under OSEN

@Shu12388y Please take a look at my PR & please merge it under OSEN.


i have an issue when trying to install the componenet

i am getting this when i execute npm install
'<EMAIL_ADDRESS>is not in the npm registry.

This may have been an npm hiccup. It looks like it works for me. I also tried manually installing "<EMAIL_ADDRESS>and it worked ok too. Are you still having this issue?


chore: readme update no-default-features

yeah :heavy_check_mark:
➜  ~ curl http://localhost:8080
<!DOCTYPE html>
<html lang="en-US">
  <head>
    <title>Trustification</title>

➜  ~ curl -v http://localhost:8080
* processing: http://localhost:8080
*   Trying [::1]:8080...
* Connected to localhost (::1) port 8080


[Snyk] Upgrade swagger-ui-react from 5.9.2 to 5.9.3

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade swagger-ui-react from 5.9.2 to 5.9.3.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released 22 days ago, on 2023-11-09.

Release notes

Package name: swagger-ui-react

5.9.3 - 2023-11-095.9.3 (2023-11-09)
Bug Fixes

a11y: remove redundant aria-label from accordion button (#9361) (2a4afd9), closes #9353
response-body: show download button both for non-empty Blob and string responses (#9343) (f803fa3), closes #9298

5.9.2 - 2023-11-085.9.2 (2023-11-08)
Bug Fixes

swagger-client: fix handling cycles in OpenAPI 3.1.0 definitions (#9364) (a187bfb), closes #9337

    from swagger-ui-react GitHub release notes

Commit messages

Package name: swagger-ui-react

343b0ab chore(release): cut the v5.9.3 release
f803fa3 fix(response-body): show download button both for non-empty Blob and string responses (#9343)
2a4afd9 fix(a11y): remove redundant aria-label from accordion button (#9361)
987702d chore(deps-dev): bump @ babel/plugin-transform-runtime (#9367)
d463a79 chore(deps-dev): bump cypress from 13.4.0 to 13.5.0 (#9369)
73187d9 chore(deps-dev): bump @ babel/preset-react from 7.22.15 to 7.23.3 (#9368)

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

No longer relevant


non tailwind classes get highlighted the same

see these cases, only a few are tailwind. the syntax coloring should tell the difference.

Thank you for the suggestion. However, this would be hard to implement. To get all possible tailwindcss class names, the plugin would need to read the tailwind config, as it allows adding additional classes to tailwind.
Currently, the plugin is a simple textmate grammar that provides syntax highlighting using regular expressions.
With tailwindcss 4, the configuration system will change significantly, making it even more complex. Configurations can be split across multiple css files in different locations.
Given these upcoming changes, I think it makes sense to wait for tailwindcss 4 before starting an implementation attempt.


zappa certify no longer creates route53 records for letsencrypt certificates

Context
With the recent update for custom SSL certificates support, route53 domains are not created when letsencrypt is used.

Expected Behavior

route53 records should be created if route53_enabled is True and lets_encrypt_key is set.
Actual Behavior

route53 dns records are created only if custom SSL certificates are given. Also the documentation for route53_enabled says "Have Zappa update your Route53 Hosted Zones when certifying with a custom domain" . So is this the expected behaviour?
Possible Fix

This is due to update_route53_records being called only when custom SSL certificates are used. Copying the logic for update_route53_records in ZappaCLI.certify  to letsencrypt. get_cert_and_update_domain should fix the issue.
letsencrypt.py (partial code)
                if not zappa_instance.get_domain_name(domain):
                    dns_name = zappa_instance.create_domain_name(
                        domain_name=domain,
                        certificate_name=domain + "-Zappa-LE-Cert",
                        certificate_body=certificate_body,
                        certificate_private_key=certificate_private_key,
                        certificate_chain=certificate_chain,
                        certificate_arn=None,
                        lambda_name=lambda_name,
                        stage=api_stage
                    )
                    if route53_enabled:
                        zappa_instance.update_route53_records(domain, dns_name)

Steps to Reproduce

Set route53_enabled to true, lets_encrypt_key to your account key and remove any settings for using custom SSL certificates.
zappa certify <env>
API is deployed properly, custom domain is created in API gateway, but route53 records are not created.

Your Environment

Zappa version used: 0.40.0
Operating System and Python version: MacOS Sierra , python 2.7.11
Link to your project (optional): N/A
Your zappa_settings.py:

{
  "dev": {
    "aws_region": "ap-southeast-2",
    "s3_bucket": "REDACTED-app",
    "django_settings": "server.settings",
    "remote_env_file": "dev.json",
    "remote_env_bucket": "REDACTED",
    "domain": "REDACTED",
    "lets_encrypt_key": "s3://REDACTED/account.key",
    "lets_encrypt_expression": "rate(15 days)",
    "timeout_seconds": 120,
    "use_precompiled_packages": true,
  }
}

@Miserlou, I'm inclined to fix this problem this week. Would you tell me your thoughts on the matter so I may move forward?

I'm having a similar problem with the latest Zappa from master...  I have the same problems deploying as follows (domains changed in example):
Route 53 AWS domain:  tyrell.com  (already exists, set up, working)
Route 53 AWS NS record:  bitshark.tyrell.com  (new AWS hosted zone i created in tyrell.com)
Route 53 AWS hosted zone: bitshark.tyrell.com
from zappa_settings.json
    "prod": {
        "extends": "base",
        "domain": "api.bitshark.tyrell.com",
        "lets_encrypt_key": "account.key",
        "route53_enabled": true
    },

I first do (1) zappa deploy prod, do (2) zappa update prod for good measure, and then (3)  zappa certify prod.  The following is the output, but something funny happens...
zappa certify prod
Are you sure you want to certify? [y/n] y
Certifying domain prod.bitshark.tyrell.com..
Setting DNS challenge..
Waiting for DNS to propagate..
Deleting DNS challenge..
Created a new domain name. Please note that it can take up to 40 minutes for this domain to be created and propagated through AWS, but it requires no further work on your part.
Certificate updated!

So all that looks fine ^^.  But as I'm watching my hosted Zone while the above certify command takes place, the following happens:

I see Zappa create the let's encrypt challenge as a TXT record
After it propegates, Zappa says "Deleting DNS challenge" and the TXT challenge record disappears and CNAME record gets created.
After Zappa finishes, the new CNAME record disappears from the hosted zone
Yet at the same time, if I go into Api Gateway / Custom Domain Names, I can see prod.bitshark.tyrell.com with the little animated wheel going saying "initializing".
The Custom Domain Name will stay this way indefinitely or until I delete it, because obviously it's missing the corresponding CNAME record.

FIX
I noted above there was a commit from anush0247 that claimed to fix this problem, but noted that it wasn't a pull request nor was it merged into master.  So I manually cloned the latest copy of @miserlou master branch, and I manually applied the commits referenced in Aneesh's fix above.  (which I think he had applied to a slightly older version of Zappa , because I noticed the line numbers were different)
In any case, the fix clearly works.  I tried the exact same process side by side -- without the fix I note the problem as described above.  With the fix, it works great (the main difference being that the CNAME record gets created and stays created after the zappa certify , and the api gateway corresponding custom domain name gets created as well and points to the correct newly created CNAME record)
I will push the patch I made to the latest Zappa master branch based on Aneesh's fix linked above, and I will reference this issue in the commit and pull request.  It is definitely a confirmed fix for the issue described here.

@Miserlou, please merge - I am affected by this issue too