VehicleBody2D

Feature request:
It would be nice to have a VehicleBody2D node (not top-down vehicle but from side view).
Currently this is only possible with a 3d VehicleBody and linear x, angular y and angular z axis lock.
It could have the same properties like the 3d VehicleBody (brake, engine_force and steering https://docs.godotengine.org/en/latest/classes/class_vehiclebody.html ) but steering means the car rotates in the air and on ground so it is possible to do a wheelie.
Example:
https://github.com/HugeGameArtGD/Solus-Stunts/releases/download/v9.0/vehiclebody2d.zip

in 2d this is quiet simple to implement. No sure if it is worth having a node. but it would still be simpler. and in terms of consistency (3d vehicle) it also would make sense.
you can try: rigid body + two ray casts + apply force at ray cast collision point (for throttle + suspension... orientation calculated by (perpendicular to the) collision shape normal and ray direction) + apply torque. should be a matter of minutes to set up.

IIRC, the plan was more to move out the vehicle3d node out to a plug-in instead of adding a 2d version

test.zip
Closing as it's already possible with pinjoints (see example project).


[OTHER] Test for popular profile navigation  to profile page.

What would you like to share?
add a test for popular profile so that when we click on the profile it opens the profile page.
Additional information
No response

Looks like #2090 fixed this. Please close this issue :D


Acceptance Test for #261 Booking Request Tracking

User story
#261
Acceptance Test Checklist

[x] Can see a log of all changes made to a booking request.
[x] Can see status of booking as a 'status bar'.

Tested and accepted.


Bikram/height adjustment

Please check on your side.
@thinkh @mijar @katush

Works as expected, thanks @bikramkawan.
@thinkh, can you look over the code and merge it please?

Thanks @bikramkawan


Upgrade terraform-plugin-sdk to v2.16.0

Hey folks. Just wanted to bump this to see if there was any movement on possibly getting this merged.

Hey I apologize for the delay. I have been trying to resolve as many as I can after taking the Repo over.
Onelogin is using an OpenAPI based SDK system, including the provider-terraform-onelogin.

I see you already upgraded to terraform-plugin-sdk v2.24. This PR is obsolete now.


Add fmi-weather-client

Insert URLs to the project here: https://github.com/saaste/fmi-weather-client

[x] The projects is active, documented, open source licensed, shows usage from external parties and is directly targeting environmental sustainability. Find more details in the Contribution Guide.

All issues labeled as Good First Issue of the project listed on OpenSustain.tech will be visible on ClimateTriage.com. This is a great way to welcome new community members to your project.
All projects listed will be posted on our Mastodon channel

@saaste


Pytorch Implementation?

Hi,
Do you have a pytorch implementation of this code?  It would be very helpful even if you have a base code?
Thank you.

Sorry for long response time, but here is a PyTorch repo from another person researching quaternion networks
https://github.com/Orkis-Research/Pytorch-Quaternion-Neural-Networks

Hi,
i know this is closed but since the repository of TParcollet that you posted doesn't have your quaternion batch normalization in PyTorch do you have any plan to implement it in that framework? I'm trying to do it but i'm new to pytorch and i'm having doubts about what i'm doing.
Thank you.

Hi,
Please take a look at  this. They have a quaternion batch norm implementation.
Thank you,


fix: fixed dashboard scripts

Description
Fixed dashboard script to remove secondary rate limits in the flow of script.
Related issue(s)
Fixes #2894 #3132

Testing of workflow
Test runs in forked repo - https://github.com/akshatnema/website/actions/runs/11426503184/job/31789495554

Summary by CodeRabbit
Summary by CodeRabbit

New Features

Introduced a batching mechanism for processing discussions, improving API call control.
Added a pause function to manage delays between batches.

Bug Fixes

Corrected formatting and indentation issues in workflow and script files.

Refactor

Enhanced readability by using template literals and cleaning up code structure.
Removed the Twitter timeline embed from the Newsroom component to streamline content.

Chores

Updated workflow trigger to run daily at midnight and refined environment variable handling.

/rtm

/bounty

@asyncapi/bounty_team


feat: change the apis

#55
Changes

[x] Changed JSON structure
[x] Changed type of evaluation.reason
[x] Changed API path
[x] Added @type to any proto body
[x] Fix: E2E test failure caused by changed duration datatype in GetEvaluationLatencyMetricsEvent

E2E error : duration: invalid value Field 'duration', Invalid data type for duration, value is 1 for type type.googleapis.com/google.protobuf.Duration

@cre8ivejp please help me to take a look on this PR

[x] Passed lint check https://github.com/duyhungtnn/android-client-sdk/actions/runs/5092145503/jobs/9153114924
[x] Passed unit test https://github.com/duyhungtnn/android-client-sdk/actions/runs/5092145503/jobs/9153114924
[x] Passed E2E test

@yshrsmz  thank you for reviewing , let me make a changes

Hi @yshrsmz .
I moved ReasonType to public and fix the //comment
Please help me to continue the review.

@cre8ivejp could you please take one more look ? if its okay please help me to merge this PR.
My next PR for the issues #56 is continue up from this PR.

Hi @cre8ivejp
I will keep the duplicate as before, so we will have more confidence to
merge this PR.
I will update this PR today
Vào Th 3, 30 thg 5, 2023 lúc 14:18 Alessandro Yuichi Okimoto <
@.***> đã viết:

@.**** commented on this pull request.
In bucketeer/src/main/kotlin/io/bucketeer/sdk/android/BKTEvaluation.kt
https://github.com/bucketeer-io/android-client-sdk/pull/63#discussion_r1209811170
:

data class BKTEvaluation(
var id: String,
val featureId: String,
val featureVersion: Int,
val userId: String,
val variationId: String,
val variationValue: String,

val reason: Reason,
-) {
enum class Reason(val value: Int) {

To be honest, I prefer to separate it as you did before to avoid future
breaking changes with API changes.
—
Reply to this email directly, view it on GitHub
https://github.com/bucketeer-io/android-client-sdk/pull/63#discussion_r1209811170,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAT2GTTOC3CMOWIFLQOHAKTXIWNNLANCNFSM6AAAAAAYM6UCZE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi @cre8ivejp @yshrsmz ,
I restored the BKTEvaluation.Reason enum, and move the ReasonType back to the internal folder.
Please help me to take a look at the new changes. Thank you.


Feature Request/Question: Ability to easily author/inject new directives for Razor?

Currently, I cannot find an easy way to author/inject custom directives into Razor whilst using ASPNET Core Mvc(Kestrel).
I can see that the @Inject directive gets registered within razor here. Now if I wanted to inject a custom directive to MVC on startup how would I achieve that easily? Imagining for a second I wanted to create a '@FooInjector'.
I can see you offer access to RazorViewEngineOptions is this potentially where you guys would expose something like this?

We plan on enabling this kind of thing once we have support for it in tooling.
While it would be possible for us to provide support for this in the runtime/compiler right now, the tools would not understand the new directives and would produce errors.

@rynowak, do we have a separate issue tracking this work, or should we use this one for tracking?

We don't have an issue for it, but its on our roadmap and planning documents.
If you're deeply passionate about having an issue for it, then Razor repo is the right place to track.


when I do "/describe/?url=..." some server files seem to be missing

Missing files

default.css
highlighter.css
description.js

Steps to reproducse (assuming that you have some data loaded)

navigate to /fct and find something
click on one of the url's -> you should be directed to a /describe url
it doesn't look like this

might be related this: (via docker logs)
06:55:00 PL LOG: Can't get list of vad packages in /usr/local/virtuoso/share/virtuoso/vad/

Ok, I ended up doing docker compose with an nginx container in front of virtuoso, this here is the trick to have those missing files loaded
        location ~ /styles/(.*)$ {
            proxy_pass http://virtuoso:8890/fct/rdfdesc/styles/$1;
            autoindex on;
            autoindex_exact_size off;
        }

        location ~ /s/(.*)$ {
            proxy_pass http://virtuoso:8890/fct/rdfdesc/s/$1;
            autoindex on;
            autoindex_exact_size off;
        }```


How to inject configuration, like auth bearer token header, into BaseClass in TypeScript client

I am using the SwaggerToTypeScriptClient to generate a Javascript/TypeScript client SDK that should be framework and platform agnostic. As others mentioned (#512 + #643 and others), I'm struggling with the problem of being able to inject an authorization bearer token in the header, from the consuming perspective.
I know the formal response is "add a header in transformOptions", but I can't see this working with my solution. For example, I am able to generate a BaseClass which neatly acts as a super class for all api clients:
export class ApiClientBase {
    protected transformOptions(options: RequestInit): Promise<RequestInit> {
        options.headers = { ...options.headers, authorization: ' bearer ' + '???' };
        return Promise.resolve(options);
    }

    protected transformResult(url: string, response: Response, processor: (response: Response) => any) {
        return processor(response);
    }
}

As you can see in the above code, the '???' is the problematic part leading to the question:

How can I inject this from my client?

Considering I have a (vanilla) client, I cannot resolve to:

Adding a constructor with a 'token' parameter to the base class. This breaks all api clients.
Having a service locator in the (parameterless) constructor, because that requires a framework specific implementation
Reverting to for example localStorage, because the consumer might not even be browser-based

Just for the sake of completeness, here is something I'm trying to achieve from a consumer perspective:
test.only('do a call, requiring authentication', async () => {
    const token = 'abc123';

    const api = new TimeApiClient('http://localhost:5000');
    const target = await api.time();

    // ^ fails, because I can't 'inject' the token anywhere nor can I access the ApiClientBase
});

To summarize, what I think I'm looing for is either :

Being able to pass the token as argument to either the TimeApiClient or to the time() operation on it.
Being able to define a reusable fetch client, or override the fetch parameter in the time()  operation, but I'm not quite seeing how I could do this.

Is there a way to do this?
Thanks.

Also, please be aware that it's properly outputted in the swagger.json file:
"securityDefinitions": {
	"Bearer": {
	"name": "Authorization",
	"in": "header",
	"type": "apiKey",
	"description": ""
}

Other tools like Swagger UI and swagger-codegen respect it, so I'm also wondering if this might be a third option?
For example, swagger-codegen allows me to inject a config (also autogenerated) like this:
test.only('do a call, requiring authentication', async () => {
    const config: Configuration = {
        accessToken: 'ABC123',
        basePath: 'http://localhost:5000'
    };

    const api = new InfoApi(config);
    const target = await api.timeGet();
});

I think with the ConfigurationClass setting you can define a class which gets injected and can be used in the base class? Or is this c# only?

Mybe this impl can help you: https://github.com/Picturepark/Picturepark.SDK.TypeScript/tree/master/src/picturepark-sdk-v1-fetch

This... is awesome. Wasn't aware of the ConfigurationClass being available, but indeed by simply setting:
"configurationClass": "MyConfig",
"extensionCode": "src/ApiClientBase.ts",

and adding the MyConfig class to the ApiClientBase.ts this allows it to be injectable in the constructor (and base class). The Picturepark sample helped.
@RSuter thanks a bunch, really!

It would be awesome if you could improve the wiki so that all this is mor discoverable...

@RicoSuter Thanks for the hints, I added a section detailing your suggestion!
https://github.com/RicoSuter/NSwag/wiki/TypeScriptClientGenerator#inject-an-authorization-header

@RicoSuter Thanks for the hints, I added a section detailing your suggestion!
https://github.com/RicoSuter/NSwag/wiki/TypeScriptClientGenerator#inject-an-authorization-header
The only -- small -- remaining problem is that the provided file gets appended to the end of the generated file, thus I get the following error
Class 'AuthorizedApiBase' used before its declaration.ts(2449)
api.generated.clients.ts(10765, 7): 'AuthorizedApiBase' is declared here.

It seems extension code may not be the correct way to do it?
Is there an alternative?

It's a problem with the comments as seen here https://github.com/RicoSuter/NJsonSchema/issues/779
Just remove the comments and you are good to go :)

worked like a charm!
you can also rewrite the comment to remove the word "class", e.g. use "clazz" or "c l a s s"
thanks again!


i18n(zh-cn): Update i18n.mdx

Description (required)
Update i18n.mdx

Related issues & labels (optional)

https://github.com/withastro/docs/pull/8583
Closes #
Suggested label:

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

zh-cn
recipes/i18n.mdx
Localization changed, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


Added Activity Lifecycle

Activity Lifecycle is something that all android developers should be completely aware. Hope it will help those who are new to android development.

Description

Pre-Submission Checklist
Common mandatory requirements

[x] This pull request targets the master branch of freeCodeCamp.
[x] Branch starts with either fix/, feature/, or translate/
(e.g. fix/signin-issue)
[x] Reviewed necessary guidelines in CONTRIBUTING.md.

By submitting this pull request, I have verified the following:

[x] Added descriptive name to pull request. (mandatory)
Your PR should NOT be called Update index.md, since it does not help the maintainer understand what has been changed.
Good Guide PR title examples:
fix(guide): Git - edit Git Commit article
feat(guide): PHP - create PHP section and add Data Structures article

Good Coding challenge PR title examples:
fix(coding): add tests to Basic HTML challenge
fix(coding): update instructions to CSS Grid challenge

Good Learning platform PR title examples:
fix(platform): fixed sign in api
fix(platform): removed css from editor

Issues Closures

[ ] Addressed currently open issue. (replace XXXXX with an issue no in next line)

Closes #XXXXX
Since this change is a copy edit or translation for Guide articles or Coding Challenges:

[x] I confirm no plagiarized, duplicate, or repetitive content that has been directly copied from another source.
[x] I am adding only https links to external sources.
[x] I am not adding short links instead of full URLs to webpages.
[x] I have followed the recomended style guides for the copy edit.

Requirements, for changes which are NOT simple copy editing or translations:
You may skip the below ONLY if your changes do not touch tests, ui logic, api-server, etc. Your PR may not be accepted, if you did not meet these mandatory requirements. Simply put, we can't assume it will work if we never saw it working.
Since this change adds, updates or removes coding challenge tests:

[x] I completed the coding challenge locally, and the changes look good.
[x] Other tests or user stories in instructions are not affected.

Since this change is for the Learning platform (UI, logic, etc.):

[x] I confirm my changes look good by running freeCodeCamp locally.
[x] All new and existing tests pass the command npm test.

(Optional) Additional Context and Screenshots:

LGTM! Great info here, @Sibinjoseph111 and congratulations on your first contribution to this repository! ⭐ 🚀 📲  We welcome any future contributions!


Update testcontainers-scala-core to 0.41.4

About this PR
📦 Updates com.dimafeng:testcontainers-scala-core from 0.41.0 to 0.41.4
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.dimafeng", artifactId = "testcontainers-scala-core" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.dimafeng", artifactId = "testcontainers-scala-core" }
}]

labels: library-update, early-semver-minor, semver-spec-patch, commit-count:1

Superseded by #184.


vscode.TaskGroup.Test should be Test, not Clean

This should help resolve a minor bug
Also, should VSCode also support a "Run" task by default? We imply a build when you perform "test" in our own command-line tools, I'm not sure if this is the intended behavior of the VSCode "Test" group, or if its meant to run only?
Thanks!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

@jgranick very nice catch. Copy paste error on my end.


on-premises synchronization agent PowerShell cmdlet fails with error "The trust relationship between the primary domain and the trusted domain failed."

Remarks about "Part 3: Configure the on-premises synchronization agent"
Note, The powersell cmdlets related to "on-premises synchronization agent" may fail with the error message "The relationship between the primary domain and the trusted domain failed". This is mainly  true in a Active Directory forest/domain environment where Active Directory trusts are used and when one of them is failing.
Here is an illustration of this failure through the event recorded by the “AADSyncAgent”  in the Application event log :
Log Name:      Application
Source:        AADSyncAgent
Date:          1/30/2018 10:11:19 AM
Event ID:      0
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      xxx.contoso.com
Description:
The trust relationship between the primary domain and the trusted domain failed.
at System.Security.Principal.NTAccount.TranslateToSids(IdentityReferenceCollection sourceAccounts, Boolean& someFailed)
at System.Security.Principal.NTAccount.Translate(IdentityReferenceCollection sourceAccounts, Type targetType, Boolean forceSuccess)
at System.Security.Permissions.IDRole.get_Sid()
at System.Security.Permissions.PrincipalPermission.Demand()
at System.Security.PermissionSet.DemandNonCAS()
at Microsoft.ActiveDirectory.SynchronizationAgent.ConfigurationService.AddActiveDirectoryConfiguration(ActiveDirectoryConfiguration configuration)
at SyncInvokeAddActiveDirectoryConfiguration(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
In fact according my own investigations, all the related PowerShell cmdlets includes an internal verification that only members of the local "Administrators" group can execute them.
And the current logic used by this verification  relies on the name string "S-1-5-32-544"  (as a name and not as a SID).
Then at one given step, a name to SID translation operation (where the name is  "S-1-5-32-544") is processed which relies onto the  LsaLookupNames  win32 APIs (where the name "S-1-5-32-544" is seen an  isolated name !).
As described here https://msdn.microsoft.com/en-us/library/windows/desktop/ms721797(v=vs.85).aspx ,  the  translation of isolated names (such the name string "S-1-5-32-544")  may end to  look in each of its trusted domains. And if one of the trusted domain is not operational then the translation name to sid will failed with "The relationship between the primary domain and the trusted domain failed"; which in turn leads the above internal verification to fail too. And the cmdlet  execution fails too.  For solving this kind of issue, the failed  trusted domains from Active Directory should be fixed (or removed).
Alternatively as a punctual workaround ( for deblocking  the execution of the related PowerShell cmdlet), you can rename the local "Administrators" group to "S-1-5-32-544" (exactly). And revert back to the "Administrators" name once the cmdlet has been executed. This workaround  avoids to contact the Active Directory domain controllers for making the name to SID translation (since the translation will be done exclusively locally) !

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

ID: 799c371a-a17e-08aa-ef56-86eef2395f7e
Version Independent ID: 1339cc93-712c-3a32-8321-dfd016a50ed4
Content: Tutorial: Configure Workday for automatic user provisioning with Azure Active Directory
Content Source: articles/active-directory/active-directory-saas-workday-inbound-tutorial.md
Service: active-directory
GitHub Login: @asmalser-msft
Microsoft Alias: asmalser

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

@albertinomatias Thanks for the details of the issue and the work around solution. Really appreciate your feedback.
I am assigning this issue to document author to investigate and probably include it in relevant section of the document.

We had the same issue and what fixed for use is this:
Uninstalled update 2992611 or update 3000850 and adding Dword in reg see below:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Protect\Providers\df9d8cd0-1501-11d1-8c7a-00c04fc297eb
ProtectionPolicy = 1 (DWORD)

How do you get Workday to link to AD accounts that were already present before synchronisation started?

TimlUK - It depends how you are linking the two. We linked our by user id. Then we created 2500 user ids and updated our AD with that and linked Workday and AD useing AAD. We have on prem AD as our primary so anything changes on prem will sync to Azure Ad and then to workday. If any thing changes in Workday the AAD updates the on prem AD and then that gets syncd. We did not us ADFS yet because it is not required for now.

Thanks for the outstanding feedback and discussion about this issue with the agent setup process. A note about this issue has been added to the docs. #please-close


Cassette overhead

Hey, great effort! I see that you're using Cassette for instrumenting libraries like Base.Threads or Distributed. This introduces a runtime overhead that - so I've been told be knowledgable people - is non negligible. Do you, perhaps, have an idea what the magnitude of this instrumentation overhead is?

Perhaps worth noting, in my drafty https://github.com/pc2/MPITape.jl package I've taken a similar approach whereas in https://github.com/JuliaPerf/ScoreP.jl the user must manually mark code regions (expect for external libraries like MPI which have a dedicated Profiling API that can be used).

This is totally something that we have to tackle at some point.  When we started there were several strategies that we considered, having in mind overhead.
One of them was this more simple one, where the user has to add events manually. This strategy could be used right now without problem with the current implementation of the package, as we have the interface to the Extrae API.  For the MPI part, we have not tested but we expect that it should work straighforward when loading the library, as MPI tracing is done intercepting the library calls and this is no different in Julia.
But if we want to trace the built in parallel programming models (like Distributed, Threads, and all the asynchronous functionality) with its internal functions, we needed another strategy and that's why we went for Cassette.
Personally, I think there's one third alternative that would allow us to trace everything we want without overhead, which is manually instrumenting the stdlibs of Distributed and Threads, but this opens another round of problems. I think that if we ever want to consider this, the bet thing to do would be think from the ground up a new API provided by the Julia runtime that allows attaching any desired tool (something like OMPT for OpenMP).

CassetteOverlay.jl can be tried in order to reduce the overhead. The people at the field of Automatic Differentiation have been trying different methods but zero-overhead seems only posible with Compiler Plugins.
In any case, I agree that an API provided by Julia would be the best.

This will tackled when Tracepoints.jl gets to production.


Add regen-cabal.sh

Since there seems to be still confusion on how to regenerate cabal project files, maybe this makes it easier.

[x] Ran ShellCheck
[x] tested on linux
[x] tested on mac

The reason we have Nix is so that you don't need to write bash scripts like this.

I've had more problems with nix than with bash scripts. And I don't want regenerating cabal files take up 6 GB of memory, require downloading half an OS and then deal with all sorts of esoteric errors.
But feel free to rewrite this in nix, because I'm using stack2cabal directly anyway. Otherwise I want to move forward with this, so ppl don't ask me every time on how to regenerate those files.

Closing this one. We do not want to have to maintain yet-another-script, especially bash. What would be good would be to extend a bit the instructions in the wiki regarding the re-generation of cabal.project.


Service Bus: export NewReceivedMessage

In sdk/messaging/azureservicebus, the method newReceivedMessage was not exported. This made it really hard for us (Dapr) to create our own unit tests, as without that method we cannot create a ReceivedMessage object with a body.

[X] The purpose of this PR is explained in this or a referenced issue.
[X] The PR does not update generated files.

These files are managed by the codegen framework at Azure/autorest.go.

[X] Tests are included and/or updated for code changes.
[ ] Updates to CHANGELOG.md are included.
[X] MIT license headers are included in each file.

Let me see if we can brainstorm some solutions for this.
We can't export the current NewReceivedMessage() function because it references a type from another package, which we do not normally do.

We should change Body() to a Body []byte field on the ReceivedMessage type instead.

@jhendrixMSFT Although that would fix the issue and make it possible for us to write a unit test, it does leave us with a lot more responsibility to code the equivalent of NewReceivedMessage.
Our preference would be for the method to be exported, so we don't have to write a lot of code, and especially maintain it in sync with the SDK.
PS: If Message.toAMQPMessage could be exported too, that would be a nice-to-have as well, for more unit tests.

@ItalyPaleAle :

@jhendrixMSFT Although that would fix the issue and make it possible for us to write a unit test, it does leave us with a lot more responsibility to code the equivalent of NewReceivedMessage.
Our preference would be for the method to be exported, so we don't have to write a lot of code, and especially maintain it in sync with the SDK.
PS: If Message.toAMQPMessage could be exported too, that would be a nice-to-have as well, for more unit tests.

I might be misunderstanding what you're trying to do here because, at least for a test, you'd need to fill in the ReceivedMessage for your test to work, correct? Even NewReceivedMessage will require an entire amqp.Message to use (or equivalent) so you'd have to fill out something.
Do you happen to have a link to a test you're trying to write?

I am working on updating Dapr to use the "track2" SDK for Service Bus. The PR is here: https://github.com/dapr/components-contrib/pull/1702
In the previous version, there was a test called TestNewPubsubMessageFromAzServiceBusMessage which creates one of our PubSub messages from a message returned by the SDK. With the current SDK we cannot create a test like that because we have no way to create a Message object with a body, so I had to delete the test entirely. Although the test isn't strictly required, removing it does reduce our test coverage further.
We need a way to create Message objects with some data that we can then read. What you propose would allow us to create an object with a body, but we'd have to manually add something to the body. If we could use NewReceivedMessage, we could pre-populate the object with a message from amqp and leverage all the work the SDK does for parsing, validation, etc.

Closing this PR in favor of #17888.
After talking about it we're just going to convert the .Body() function back to a .Body field. There will be some minor edge cases where it can be nil, but this will be apparent to customers since they would have had to arrange it that way from the sending side.


add fuzz show_log docs

updated docs related to https://github.com/foundry-rs/foundry/pull/8387

hi @mattsse , I'm not sure where this Environment come from. So I left it blank for show_logs. please tell me if Environment should be here.
https://github.com/foundry-rs/book/blob/59b6071ac995a2d9e7f2f01360401cb176fac98e/src/reference/config/testing.md?plain=1#L373-L377

hi @grandizzy @mattsse , I'm not sure where this Environment come from. So I left it blank for show_logs. please tell me if Environment should be here.
https://github.com/foundry-rs/book/blob/59b6071ac995a2d9e7f2f01360401cb176fac98e/src/reference/config/testing.md?plain=1#L373-L377

Configs within profile can be passed as env vars, for example you can test that new one works if FOUNDRY_FUZZ_SHOW_LOGS=true

Configs within profile can be passed as env vars, for example you can test that new one works if FOUNDRY_FUZZ_SHOW_LOGS=true

yeah. i tried FOUNDRY_FUZZ_SHOW_LOGS=true forge test --vv, it worked as expected. and I updated the docs.

hi @mattsse ,  could you please review this PR to see if it could be merged.


Challenge: Efficent Scaling Down and Message Redistribution with Kafka Scaler

Report
Hello,
I'm experiencing an issue with Keda that I'd like to discuss and understand better. I appreciate any guidance, solutions, or ideas to address it.
Context
In our environment, we have workers consuming messages from a Kafka cluster. These workers run daily, but the message count in the Kafka cluster varies significantly from one day to the next (e.g., 5000 messages one day and 100,000 messages the next). To dynamically scale workers based on the Kafka message load, we've implemented Keda, and the scaling up works perfectly.
The issue arises with the scaling down. Once we reach the maximum number of workers, Keda starts to remove workers when the Kafka message count decreases. While this makes sense, the problem is that the removed workers were in the process of processing messages, necessitating a redistribution of messages among the remaining workers. This significantly slows down the process as the redistribution temporarily halts processing in Kafka. As the message count decreases, this situation repeats and becomes more problematic.

Here is the ScaledObject that we are using for this worker:
apiVersion: keda.sh/v1alpha1
 kind: ScaledObject
 metadata:
   labels:
     argocd.argoproj.io/instance: api-prod
     scaledobject.keda.sh/name: kafka-scaledobject
   name: kafka-scaledobject
   namespace: api
 spec:
   maxReplicaCount: 50
   minReplicaCount: 1
   pollingInterval: 30
   scaleTargetRef:
     name: <name>
   triggers:
   - metadata:
       bootstrapServers: <endpoints>
       consumerGroup: <name>
       lagThreshold: "250"
       offsetResetPolicy: latest
       topic: <topic_name>
     type: kafka
   - metadata:
       bootstrapServers: <endpoints>
       consumerGroup: <name>
       lagThreshold: "201"
       offsetResetPolicy: latest
       topic: <topic_name>
     type: kafka

Investigation
We've noticed that the Kafka Scaler we are using (see here) is limited in addressing this issue.
Potential Solutions

Set a Custom Timeout: One option we've considered is configuring a custom timeout for workers to prevent premature removal. However, due to the variability in message counts, this could lead to worker inactivity when the load is low.

Creation of a Custom Keda Scaler: Another solution we've explored is the possibility of creating a custom Keda Scaler. This could enable us to monitor messages in Kafka topics and scale down only when there are no pending messages to process. However, we're unsure about the complexity of this solution and if there's a simpler alternative.

Questions

Has anyone encountered a similar issue with Keda and has any experience or solutions to share?
Is there an alternative solution we may not have considered?

We appreciate any guidance, suggestions, or recommendations for efficiently addressing this problem.
Thank you!
Expected Behavior
We expect that when Keda scales down the number of workers due to a decrease in the message count in the Kafka cluster, it does so in a way that minimizes disruption. Specifically, we anticipate that Keda would:
1- Scale down workers when the workload decreases, but do so in a manner that allows existing workers to complete their current message processing tasks.
2- Avoid immediate termination of workers with in-progress tasks, ensuring that messages being processed are not abruptly halted.
3- Provide an efficient mechanism for redistributing messages from the scaled-down workers to the remaining ones to minimize processing interruptions.
Actual Behavior
However, in the current configuration, the behavior we are observing is as follows:
1- When Keda scales down workers due to a reduced message count in Kafka, it immediately terminates workers that may still be processing messages.
2- This leads to an interruption in message processing and a subsequent redistribution of messages among the remaining workers.
3- The frequent interruptions and redistributions significantly slow down the overall processing pipeline, especially as the message count continues to decrease.
These observations highlight the need for a more efficient scaling down process in Keda to ensure minimal disruption when the workload decreases.
Steps to Reproduce the Problem
If you can reproduce a similar setup of the described above I think you will be able to reproduce the problem.
Logs from KEDA operator
I don't have any logs of Keda because the behavior is the expected one.
KEDA Version
2.7.1
Kubernetes Version
1.25
Platform
Amazon Web Services
Scaler Details
Kafka
Anything else?
No response

Potential Solutions
2. **Creation of a Custom Keda Scaler**: Another solution we've explored is the possibility of creating a custom Keda Scaler. This could enable us to monitor messages in Kafka topics and scale down only when there are no pending messages to process. However, we're unsure about the complexity of this solution and if there's a simpler alternative.

@sansmoraxz WDYT?

That I might need to investigate.
We had a similar use case. We went with a far simpler approach though.
We used statefulsets. Namely through statefulsets we can guarantee the ordering/priority through which the pods get terminated. We also had a bit larger timeout to shut down gracefully.
Under advanced scaling, we added some stabilization window period for the HPA and some large count so scaling occurs in batches.
Might be some other configs too but that's all I can remember at the moment.

Also consumer.group-instance-id should be static for pods. With statefulsets we can directly inject the pod name here.
This can help with reducing number of rebalances.
https://www.confluent.io/blog/dynamic-vs-static-kafka-consumer-rebalancing/


npm package update

Hi
Why don't you update npm-package? (last 6 monthes ago)
It's not easy to use the package from github (with parcel for example)

https://www.npmjs.com/package/use-hooks/v/2.0.0-rc.5


fix: trim down the amount of data the api needs

Right now there are a lot of endpoints where unnecessary information is sent.

For  changing and adding chemicals to a shipment that already exists you should only need to send an ID, amount and measureUnit .
All of the names and personal identifiers should be fetched from the auth context.
The entire receiver field is unnecessary as you can only send from offshore to onshore and an offshore installation is only ever connected to one onshore installation. It is also not possible to to change the contact or contactList in the frontend.
The sender field should just be an ID

Frontend issue: https://github.com/equinor/chemcom-web/issues/38


Upgrade composer.lock

Because jikan-me/jikan was out of date some feature is not available in the current release.
Could we use dependabot in the future to detect version upgrades and make them almost automatic?
Related to jikan-me/jikan#446

Done, check #251


Click event emitted when pressing return

Version
2.3.3
Reproduction link
https://jsfiddle.net/wng90g4n/1/
Steps to reproduce

Use the example referenced in the JSFiddle.
Press the Toggle button to trigger the desired behaviour.
Focus the input field and press return

What is expected?
The input field either submit the form or simply do nothing.
What is actually happening?
Pressing return in the input field emits a click event (as stated by event.type) which in turn triggers the Toggle button.

I have not tried other Vue.js versions.
An extended example shows, that only one button is triggered. See: https://jsfiddle.net/wng90g4n/2/

This is not Vue related: https://jsfiddle.net/wng90g4n/3/

@yyx990803 thank you for the investigation.
I have just tested a few other markup variations and it looks like that's actually default behaviour.
Anyway, for the record:
if anyone else runs into this; put an <input type="submit" /> instead of a button in the <form> to submit it.


docker-py proxy smoke test hardcodes docker bridge IP

Causing breakage with Docker 1.9.0-rc1, which uses a different subnet...

Closed by dea1405d7179c8f810c7a9ed4fdef90d58e7fcae


Fix pg_replication_slots query generating errors on posgres replica database with replication slot

What does this PR do?
The purpose of the PR is to rectify the error message that occurs when QUERY_PG_REPLICATION_SLOTS is executed on a Postgres replica database that possesses a replication slot. The following error message is displayed:
"ERROR: Recovery is in progress.
HINT: Execution of WAL control functions is prohibited during recovery."

Motivation
The current error message received when running QUERY_PG_REPLICATION_SLOTS on a Postgres replica database with replication slots is causing a spam on our postgresql.log. This is not only cluttering the log file but also making it harder to identify and address other issues that may arise. Furthermore, the error message can be confusing and unhelpful to users, leading to frustration and wasted time as they try to understand and resolve the issue.
To address this problem, the proposed PR ensures that no matter where the query is run, it will not return an error message
Overall, this PR is necessary to address an issue that is causing spam on our log files and leading to frustration and wasted time for users. By modifying the query to run anywhere, it will help to increase efficiency, reduce support requests, and contribute to the long-term success of the project.
Additional Notes
A new update to the query for the PostgreSQL replication slots which will improve the performance and out of the data retrieved [No error message].
The new query includes a cross join with a subquery that retrieves the current write-ahead log (WAL) location, allowing for a more accurate calculation of the difference between the current WAL location and the replication slot restart and confirmed flush locations. This enhancement ensures that the data retrieved is current and accurate, even in high-transaction environments.
In addition, the updated query includes an alias for the table name, improving the readability of the query results.
I believe that this change will greatly benefit users of PostgreSQL replication slots, providing more accurate and timely information about their replication environment.
Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] PR title must be written as a CHANGELOG entry (see why)
[ ] Files changes must correspond to the primary purpose of the PR as described in the title (small unrelated changes should have their own PR)
[ ] PR must have changelog/ and integration/ labels attached
[ ] If the PR doesn't need to be tested during QA, please add a qa/skip-qa label.

Thanks or the contribution, @boluwaji-deriv! Much appreciated 🙇 .

Thank you @alexandre-normand! I'm glad I could contribute and provide helpful solution


PS5 controller recognized as "DualSense Wireless Controller" instead of PS5 Controller as described in the SDL2 game controller database

Tested versions
Tested in 4.3.dev4, 4.3.dev5 and 4.3.dev6,
System information
macOS Monterey 12.6.5
Issue description
In Godot 4.2 version, before the rework of controllers, the PS5 controller name was PS5 Controller. In the latest 4.3dev versions, it is DualSense Wireless Controller. It seems to be pretty accurate but it doesn't follow the name in the SDL2 game controller database as described in the Godot documentation, which is PS5 Controller.
Steps to reproduce

Plug a PS5 controller
Print the name in a script by doing this: print(Input.get_joy_name(0))
It will print "DualSense Wireless Controller"

Minimal reproduction project (MRP)
Any project can reproduce this issue using the small piece of code provided previously.

https://github.com/godotengine/godot/pull/87925 should address this.

It seems to be related indeed. Thank you for pointing out this issue! I can close this one :)

macOS (and iOS) uses GameController API directly, it's not interacting with SDL database in any way.

Maybe that would be a good idea to indicate this in the documentation somewhere. Neither on website and in the editor it is indicated that macOS doesn't use the SDL database.


floor is missing

Once the simulation starts the robot falls down

fixed with latest version of gz-sim


help documentation in current unstable

i'm trying out the most recent unstable docker image for fsLR cifti output, and noticed a few things in the help output:

freesurfer, fsLR and CIFTI

--output-spaces OUTPUT_SPACES [OUTPUT_SPACES ...]
                        "NKI", "OASIS30ANTs", "PNC", "fsLR", "fsaverage") or

just verifying that while this allows fsaverage, the cifti output is no longer in fsaverage space. do i need to explicitly specify fsLR when i also use --cifti-output?

two defaults:

   --fs-subjects-dir PATH
                        Path to existing FreeSurfer subjects directory to
                        reuse. (default: OUTPUT_DIR/freesurfer) (default:
                        None)

the wording confuses me

  --fs-no-reconall      disable FreeSurfer surface preprocessing. (default:
                        True)

i take this to mean that reconall is not run, not that all surface based processing is stopped. but each time, some part of my brain thinks the latter.

Output spaces are currently broken if you do try to use fsaverage. I am aiming to have this fixed by Monday.

Yeah, this is a problem with the argument parser. The first default basically says how "None" will be interpreted. The second is added by the parser.

No, it's the latter, unless something has changed recently. It used to be --no-freesurfer, but we now use other FreeSurfer tools, so the old name made people confused about providing a license file. But no recon-all means not trying to run recon-all, and not attempting to use the results of recon-all. Possibly with --fs-subjects-dir, we can change the logic, and replace ReconAll with FreeSurferSource.

thanks @effigies - i'm running a single subject through - it's still running.


photoLibraryPermissionModule: Native Module 'photoLibraryPermissionModule' was null! Did you run pod install?

Hello, I am trying use this library to save some images but I have this error (with android development, not ios):
 photoLibraryPermissionModule: Native Module 'photoLibraryPermissionModule' was null! Did you run pod install?
This is my code:
import {PhotoGallery} from 'react-native-photo-gallery-api'

async function hasAndroidPermission() {
  const permission = PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE;

  const hasPermission = await PermissionsAndroid.check(permission);
  if (hasPermission) {
    return true;
  }

  const status = await PermissionsAndroid.request(permission);
  return status === 'granted';
}
const savePicture = async (path)=>{
  if (Platform.OS === "android" && !(await hasAndroidPermission())) {
    return;
  }
  PhotoGallery.saveToCameraRoll(path, { type:'photo', album:'Album' })
}

The image is saved and the album was created, but I have the error when I call savePicture.
This are the step that I followed to install the package:

run yarn add react-native-photo-gallery-api
add in android/settings.gradle:

include ':react-native-photo-gallery'
project(':react-native-photo-gallery').projectDir = new File(rootProject.projectDir, 	'../node_modules/react-native-photo-gallery/android')

run in android folder: ./gradlew clean

How can I fix it?
Thanks in advance for a possible reply.

"react-native": "0.68.2"
I know that linking is automatic from 0.60. I also try to install this package using npm install react-native-photo-gallery-api --save insted of  yarn add react-native-photo-gallery-api but I have same error.

There are updates?

yes, would you check the version 1.2.2 please and keep me updated

Very very thanks! Now it works perfectly :)


fix(rule): template-cyclomatic-complexity not reporting failures for …

…'[ngForOf]' and '[ngIf]'
Fixes #609.

Assigning to @wKoza.


Create new release

Is it possible to create a new release based on the recent changes on master?

Released as 0.5.0


IdeaConnectionController.Create fails for Idea StatiCa <IP_ADDRESS>59

Hi,
I'm trying to implement the interface between Idea StatiCa <IP_ADDRESS>59 and Consteel software.
Idea StatiCa fails when I call this function:
var ConnectionControllerClient = IdeaConnectionController.Create(ideaInstallDir);
where ideaInstallDir is "C:\Program Files\IDEA StatiCa\StatiCa 23.0"
There was no problem with this function last time when I implemented the interface for Idea StatiCa <IP_ADDRESS>5.
So this is a problem with the latest Idea version.
Now I get these error messages one after the other:

Could you please help me to solve this problem?
Best regards,
Zsolt

Hi @zsolt4un,
Apologies for this. We are looking into this issue and will get back to you as soon as possible. You should be able to swap to the GRPC communication to get it working in the meantime.

Cheers
Nathan

Dear Nathan,
Thank you for your answer!
I have made the modification you suggested. Now I don't get error messages, but I get an empty window when I open Idea connection:

By the way, which solution would be preferred? What are the pros and cons?
Best regards,
Zsolt

Hi @zsolt4un,
You need to call the OpenProject()? after you create the ConnectionController.

I have tested and it is working as expected.
Grpc is the preferred method of connection. We will depreciate all other methods or replace the old way of communication with grpc.
Thanks
Nathan

Dear Nathan,
This is my test code:

The result I get:

The first message appears.
Idea connection is starting with the empty window.
The second message does not appear.
OpenProject(filenameIdeaCon) is not called, because, this line is not even reached.
Idea connection is running without blocking Consteel. This is a problem for our workflow, because this way we do not know when Idea finishes.

Best regards,
Zsolt

Hi @zsolt4un,
And you are not getting any exceptions when debugging? Sometimes if the starting of the Idea is slow, the connection times out, resulting in the behaviour you are describing.
Would you possibly be able to test trying our Example?  https://github.com/idea-statica/ideastatica-public/tree/main/src/Examples/ConnHiddenCalc/ConnectionAutomationApp
Otherwise, let's see if we can set up a quick meeting to take a look.
Cheers
Nathan

Dear Nathan,
I have debugged the workflow of the example you referred.
I realized that this GRPC method requires a totally different workflow, which is built on CustomCommand:ICommand messages.
This will take time to be implemented on our side.
Best regards,
Zsolt

Hi Zsolt,
Both workflows are  very similar. You only need to change hosting. It can be done on one line.
There is the example on github.
Martin

Dear Martin,
I'm not an expert in C#. I used to write C++ and Fortran codes.
Could you please give me that line you were referring to.
Your github contains a huge amount of code.
Best regards,
Zsolt

Hi @zsolt4un,
To avoid confusion, we will release a new NuGet package next week (23.0.1) that ensures that your previous code should always work.
var ConnectionControllerClient = IdeaConnectionController.Create(ideaInstallDir);
where ideaInstallDir is "C:\Program Files\IDEA StatiCa\StatiCa 23.0"

We apologise for this, and hopefully, your code changes are minimal.
Thanks
Nathan

Hi @zsolt4un,
There are no changes in the IDEA Open Model between version 23 and 23.0.1.
The code which Martin was referencing is now obsolete. The user should only be able to choose one call to the connection controller now.
The example here provides a simple form app that you can use to test the implementation of the connection you are implementing. https://github.com/idea-statica/ideastatica-public/tree/main/src/Examples/ConnHiddenCalc/ConnectionAutomationApp

Hi @zsolt4un, 23.0.1 is available now on our downloads page.
https://www.ideastatica.com/product-downloads
Cheers
Nathan

Dear Nathan,
Thank you for the new version!
Now I can run IDEA 23.0.1 from your test code ConnectionAutomationApp. I saw that you have removed the UseGrpcCommunication option from it totally.
When I try to call the IdeaConnectionController.Create(ideaInstallDir) function from our simple application then I get this error message:

Could you please help me what does it mean, and how to solve it?
Best regards,
Zsolt

Hi @zsolt4un ,
The user does not need to worry about communication type anymore... This is totally on our side. We are hopefully making it easier for you.
@mpospisil can you please check the timeout issue? I have sometimes been getting this as well.
Cheers
Nathan

Dear Nathan,
The IDEA StatiCa <IP_ADDRESS>8 version has the same problem as 23.0.
The interface is working properly with IDEA StatiCa <IP_ADDRESS>5.
So the problem appeared somewhere between IDEA StatiCa <IP_ADDRESS>5 and IDEA StatiCa <IP_ADDRESS>8 versions.
I hope it helps you to find the root of the problem.
Best regards,
Zsolt

Confirming this item is closed. The user was not using the PlugIn Nuget package, which was causing dependency issues.


Handle not existing runtimes in provisioner by environments cleaner

Description
Changes proposed in this pull request:

environments cleanup job must skip runtimes if not exists in the provisioner

/retest


Pretrained weights

Hi there,
Thank you for this excellent work!!!
Would it be possible for you to share the pre-trained weights for the AVA active speaker model?
It would be much appreciated. :-)

Thanks for the response. Seems a bit silly, since they can be recreated. In any case, thanks again for making this repository available. 😁

Sorry to bother you again, but I'm having trouble recreating the training features in RESNET18-TSM-AUG. Using the active-speakers-context repository, I swap the existing model for your models_stage1_tsm.py model, use the pretrained weights and I execute STE_forward.py with number of frames=11. The resulting features are not however the same as yours. Did you use all default parameters? The only other change I made was to reshape the video_data so it would be compatible with your model. (The input video data shape is (1, 11, 3, 144, 144) and the audio is (1,1,13,40). Does that seem correct?)


copy over new data from updated folder

Storage Explorer Version: 1.3.1
Platform/OS Version: Windows 10 Enterprise
Architecture: Azure Blob Storage
Regression From: Dont know
Steps to Reproduce:

When coping over a huge folder Having the option of being able to copy over updated files only and not replace existing data. Right now I only see replace or snapshot and I would like to see copy new files only option.
When coping over a huge folder Having the option of being able to copy over updated files only and not replace existing data. Right now I only see replace or snapshot and I would like to see copy new files only option.

Expected Experience:
Having an option to Update only new files within a huge folder when clicking and dragging folder that has the same name as existing folder.
Actual Experience:
Only option is to replace or snapshot and replace.

@Spcsaw are you still interested in this feature?


More graceful way to see if OpenGL is supported or not

When trying to initialize the GLWpfControl on a device (VirtualBox for example) which does not support OpenGL, a hard exception is thrown: "OpenTK.Windowing.GraphicsLibraryFramework.GLFWException: WGL: The driver does not appear to support OpenGL"
Stack trace
OpenTK.Windowing.GraphicsLibraryFramework.GLFWException: WGL: The driver does not appear to support OpenGL    at OpenTK.Windowing.Desktop.GLFWProvider.<>c.<.cctor>b__10_0(ErrorCode errorCode, String description)    at OpenTK.Windowing.GraphicsLibraryFramework.GLFWNative.glfwCreateWindow(Int32 width, Int32 height, Byte* title, Monitor* monitor, Window* share)    at OpenTK.Windowing.GraphicsLibraryFramework.GLFW.CreateWindow(Int32 width, Int32 height, String title, Monitor* monitor, Window* share)    at OpenTK.Windowing.Desktop.NativeWindow..ctor(NativeWindowSettings settings)    at OpenTK.Wpf.DxGlContext.GetOrCreateSharedOpenGLContext(GLWpfControlSettings settings)    at OpenTK.Wpf.DxGlContext..ctor(GLWpfControlSettings settings)    at OpenTK.Wpf.GLWpfControlRenderer..ctor(GLWpfControlSettings settings)    at OpenTK.Wpf.GLWpfControl.Start(GLWpfControlSettings settings)    at MyApp.UserControls.ShaderUserControl.InitControl()
Feature request
Could it be possible to add a method that can check if OpenGL is supported or not, which can be invoked prior to the GLWpfControl.Start call to more gracefully handle devices that does not support OpenGL?

Generally there isn't really a good way to check in advance if OpenGL is supported for a particular combination of OpenGL versions and profile flags other than just trying to create an OpenGL window.
So to create a way to probe for OpenGL in advance would basically involve creating a window and seeing if it works or not. This could add some startup time, but might be considered acceptable if the application requires it.
I'm guessing it's hard to catch the exception in Start()? I'm not too well versed in Wpf so I'm not sure where the preferred place to check for these kinds of initialization errors is.


chore: add support for Release Candidates

This PR enhances the release process to add support for release candidate (RC) versions.
Initially, only the YAML manifest installation method is going to be supported.
Closes #4778

/ok-to-merg updating workflow

/ok-to-merge updating workflow


Add support for pushstate with the production mode

Currently, the production server is broken due to the HTML5 mode that we've enabled.
This is because http-server (that we use when we execute npm run server:prod) does not support pushstate: https://github.com/indexzero/http-server/issues/80

For now we'll switch to superstatic..

Closed by 1b351b9096640732acb0c6d78066545b75e9a37e


drivers: spi: sam: Rework driver to support async transceive

This PR reworks the SPI SAM driver to operate using interrupts. This allows to use it in slave mode and with async transceives.

Hi @pdgendt ,
I'll look on this after #50966 got merged.

I'll look on this after #50966 got merged.

I missed that one, this will require some additional work after it's merged 😃

I'll look on this after #50966 got merged.

@nandojve The DMA version has been merged, however I would still like to get this PR in as well. Some questions:

Should DMA + ASYNC work?
I added RDRF interrupt in spi_sam_configure, does this conflict with DMA?
I added CSAAT, which requires SPI_CR_LASTXFER to be set on the last byte, can this work with DMA?

Thanks

Hi @pdgendt ,

Should DMA + ASYNC work?

To offload CPU and consume less power answer is yes. The current DMA status is that DMA was just introduced and still not full supported. The driver still spinning wait transfer finish instead put CPU into LPM and wait an interrupt. No ASYNC support.
If I remember correctly you are using SAM4S variant and PDC is not current supported, only XDMAC from SAMS/E/V7x.
So, there is a road to implement all these features.

I added RDRF interrupt in spi_sam_configure, does this conflict with DMA?

I never worked with slave mode on this devices. By what I understood, yes, you need that INT for slave mode but not necessarily when using DMA. I think RDRF status should trigger DMA when you are using it and in that sense RDRF int should be disabled. For instance, I guess you can use NSSR int to identify end transmission and since you know you system, you can have buffers allocated for the worst case.

I added CSAAT, which requires SPI_CR_LASTXFER to be set on the last byte, can this work with DMA?

You need be careful with this option because driver should check cs_hold and lock_on operation bits. The other thing is the driver may use GPIOs to drive CS.
In summary, there are a lot of place to improve and a few can create issues. My suggestion would be to you improve driver first with interrupts, since you needed. After that you add the slave feature and work on other topics later.

Hi @nandojve, I've updated the PR (finally).
Async support should be enabled now, I've also added CSAAT as a device tree binding to make this optional. Slave mode has been left out since I need to test this, it could be done in a new PR.
@teburd Could you verify that DMA isn't broken? I use SAM4S so I'm not able to verify this. Also see my comment on your DMA PR which I think has a bug. I've fixed it in my interrupt rewrite.

Updated with DMA fix, @teburd can you test the updated version?

Hi @pdgendt ,
Due to changes I'll need to test carefully and may take time.
One question about csaat, I'm not sure but maybe should it be defined on each transfer ? I mean, since controller may need operate with multiple devices and different behaviors.

Updated with DMA fix, @teburd can you test the updated version?

I'll try and get to this sometime this week

Due to changes I'll need to test carefully and may take time.

I guess it won't get in 3.3? That's fine for me.

One question about csaat, I'm not sure but maybe should it be defined on each transfer ? I mean, since controller may need operate with multiple devices and different behaviors.

I've left out the csaat for now, it's indeed tied to the peripheral and not the controller itself. I will update and create a new PR after this gets merged.

Hi @teburd / @nandojve ,
I'd like to know what to do to get this PR moving.

One attribute that's quite nice with the old code is that for short transfers with fast SPI clocks it could do it without forcing context switches due to interrupts. The FIFO seems to be really small so its not clear using an interrupt driven mode is going to be super beneficial over using DMA in that case.

Sure, but it doesn't work with the ASYNC API. Should I introduce some kconfig option to select either SYNC+DMA vs ASYNC or does that complicate the driver too much?

Not removing the polling transfer and making interrupt based transfers entirely opt-in would be ok with me.

make it entirely optional

I can try to refactor it this way.

change the IRQ_CONNECT to IRQ_DIRECT_CONNECT and avoid some of the overhead here for the very fast interrupt rate, perhaps only calling the zephyr pre/post ambles after N many bytes or at the end of the transfer.

I'm not familiar with IRQ_DIRECT_CONNECT, I'll look into this.

DMA should still probably be used when the transfers are longer than some number of bytes for sync or async as its beneficial in either case to free up the CPU time.

DMA isn't available on al boards that use this driver (my sam4s has no DMA).

DMA isn't available on al boards that use this driver (my sam4s has no DMA).

Ahhhh understood, I get the desire to have the interrupt driven transfers more so now.


feat: first version sourceMap

close #3

I leave some comment and what do you think ignore transform README.md  by default ?
the line maps well bewteen original and generated but the error console seems not as expected 😕

ignore transform README.md by default

Emm, No. This plugin is just a transformer and it should no have an opinion on that. If people don't want to transform README.md they should not import it.

ignore transform README.md by default

sorry ,  ignore this

I am thinking maybe we can use magic-string instead of source-map. But I am not familiar with the source map anyway, can you explain what's the trade-off between those two? I think Vite and Rollup are using magic-string internally, and the code of it is more readable to me as I am not familiar with source map's spec. WDYT?

let me explain what I do first:

traverse every single line of the  raw markdown code and record Map(lineContent, originalLine )
tranverse every single line of  the generated code and get the current-line's originLine through map.get(lineContent)
in order to get match well, both raw and generated code will store as matter.render(lineContent)
so you have the map of the originalLine and the generatedLine now, you have the sourceMap natually

I skim the source code of magic-string , it seems avaliable too, but we have to rewrite the transform logic with it  since its every string manipulation methods call will record the code location
I think it worths a try with magic-string since it more stable and mature than mine, I will give it a try

Hey here, how's the progress on sourcemap support here?

@lhermann  sorry for the legacy pull request
if you have interest in this issue, you can open a new PR or just work directly on this

@HomyeeKing I created an updated PR which has linting errors corrected and your code incorporated into the new v0.12.x codebase. Any chance you'd be able to push this over the line?

Close in favor of #61


Issue330 force password generation

I added new settings, the first, called usePasswordGeneration, if it's set to true, the users can't longer customize the password, and the BE will create a random password.
Then its the PasswordLenght setting, which is used to set the length of the generated password.
The generated password will be shown to the user in the form, as a noneditable field, this field, has two buttons, one for activate/deactivate the visibility and the other is to add the password to the clipboard.
Also, I added the settings called CheckPasswordScore and MinimumScore.
If CheckPasswordScore  is set to true, the submitted password by the user will be evaluated using the zxcvbn nugget, before it is set as the user's new password.
MinimumScore is to set the minimum score the new password has to achieve at being evaluated (by zxcvbn ) before be set as the new password.
Preview:

Closes #330 .
Closes #273 .

will there be an option for a non passphrase password? We want to force the use of a password manager and make it difficult or unpleasant to write out

could you also add some test cases for this? Eg one for excising the form to show that you can't just POST a new password to the API to replace the generated one.

For generating random passwords I'd recommend base85 encoding random bytes retrieved from  RNGCryptoServiceProvider.GetBytes
https://docs.microsoft.com/en-us/dotnet/api/system.security.cryptography.rngcryptoserviceprovider.getbytes?view=netframework-4.8
https://www.nuget.org/packages/SimpleBase/

@geoperez do you know when this will be available in a release?

Today, I just need a couple of minutes.

Awesome! Thanks @Serk352 and @geoperez


chore(config): Added mainnet and testnet servers to config

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


Throw appropriate exception when performing I/O on unknown characteristic

Currently, when attempting to write/read a characteristic that was not discovered then it will throw a NoSuchElementException (as thrown by first):
https://github.com/JuulLabs/kable/blob/c750de57fa6b0ea3dbd148dee3807b95e4ec1719/core/src/jsMain/kotlin/Peripheral.kt#L207-L212
Instead, we should throw an exception that clearly indicates what service or characteristic wasn't found.

Quick (potential) code to replace it with:
internal fun bluetoothRemoteGATTCharacteristicFrom(
    characteristic: Characteristic
): BluetoothRemoteGATTCharacteristic {
    val services = checkNotNull(platformServices) { "Services have not been discovered for $this" }
    val characteristics = services
        .firstOrNull { it.serviceUuid == characteristic.serviceUuid }
        ?.characteristics
        ?: throw <custom_exception>("Service ${characteristic.serviceUuid} not found")
    return characteristics
        .firstOrNull { it.characteristicUuid == characteristic.characteristicUuid }
        ?.bluetoothRemoteGATTCharacteristic
        ?: throw <custom_exception>("Characteristic ${characteristic.characteristicUuid} not found")
}

Need to decide what exception (i.e. what to replace <custom_exception> with) to throw.


[Docs]: RBAC | Create First Draft for Roles

@trishaanand @ankitakinger Can you please create the first drafts as per the outline? I have added tickets for the Sub-pages. Please follow these steps for submitting the first drafts.


DatumType for cumulative data

Refactored to use DatumType for cumulative data

Codecov Report

Merging #75 (4189fcf) into main (9889b46) will increase coverage by 0.02%.
The diff coverage is 0.00%.

Additional details and impacted files

@@           Coverage Diff            @@
##            main     #75      +/-   ##
========================================
+ Coverage   8.62%   8.64%   +0.02%
========================================
  Files         35      35
  Lines       1032    1029       -3
  Branches     156     157       +1
========================================
  Hits          89      89
+ Misses       943     940       -3

Impacted Files
Coverage Δ

...ts/actual-spend-breakdown/ActualSpendBreakdown.tsx
0.00% <0.00%> (ø)

...tual-spend-breakdown/ActualSpendBreakdownChart.tsx
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


qtconsole syntax highlighting

Looks like we don't have julia syntax highlighting/indenting support in qtconsole right now. According to http://pygments.org/docs/lexers/, Pygments has a Julia mode, so it might just require a tweak in the ijulia custom profile.

Still doesn't seem to work.  Not sure if anyone cares about the QT console any more?


Could NOT find X11 (missing: X11_X11_LIB)

Could NOT find X11 (missing: X11_X11_LIB)
I have already installed libx11-dev libxorg-dev

This is a duplicate of issue #1957.

Please don't create duplicate issues.


DragSeek beyond duration of video makes progress bar go on to multiple lines

If you drag to seek a video beyond the length of the video I have seen the ProgressBar go on to multiple lines

Closing as couldn't reproduce. Fell free to reopen with appropriate reproducible snippet if required.


Poor redundant literal check

Suppose Popper generates this rule:
f(A):-
    has_car(A,B),
    has_car(A,C),
    long(B),
    long(C).

Then Popper's  subsumption check will detect that two of the body literals are logically redundant.
Popper will then generate a generalisation constraint to eliminate any generalisations of this rule. However, Popper will then happily generate this rule:
f(A):-
    has_car(A,B),
    has_car(A,C),
    has_car(A,D),
    long(B),
    long(C),
    long(D).

And then this rule:
f(A):-
    has_car(A,B),
    has_car(A,C),
    has_car(A,D),
    has_car(A,E),
    long(B),
    long(C),
    long(D),
    long(E).

In fact, Popper will happily generate rules with more body literals without enforcing that the larger rule is sufficiently specialised as to not contain redundancy.
We need to fix this issue.
The fix is something along the lines of a constraint that identifies the redundant part and then asserts that it needs to be specialised to be useful in a rule.

We have dropped this 'redundant_literal' check from the latest version, but it could still be useful to add it again if we can correctly eliminate such pointless rules.


Update connectors.md current curl command does not work on some imple…

You might get an error like:
event not found

:warning: Validation status: warnings

File
Status
Preview URL
Details

msteams-platform/concepts/connectors.md
:warning:Warning

Details

msteams-platform/concepts/connectors.md

Line 36: [Warning] Invalid file link:(~/concepts/cards/cards).
Line 190: [Warning] Invalid file link:(~/concepts/apps/apps-package).
Line 190: [Warning] Invalid file link:(~/publishing/apps-publish).
Line 190: [Warning] Invalid file link:(~/overview#apps-in-microsoft-teams).
Line 195: [Warning] Invalid file link:(~/publishing/apps-publish).
Line 199: [Warning] Invalid file link:(~/concepts/apps/apps-package#icons).
Line 264: [Warning] Invalid file link:(~/publishing/apps-publish).

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Thanks - due to a conflict I had to make your suggested change manually in master. In any case it has been resolved, and will be live shortly.  Good catch!


prune: Handle tree not found correctly

Bug reported by a user in the forum:
https://forum.restic.net/t/snapshots-seem-to-be-created-but-i-always-get-a-strange-error/637
Output of restic version
0.8.3
How did you run restic exactly?
42 * * * * source /Users/gio/.restic/restic-env; /usr/local/bin/restic backup -q --exclude-file /Users/gio/.restic/exclude.txt /Users/gio; /usr/local/bin/restic forget -q --prune --keep-hourly 48 --keep-daily 30 --keep-monthly 12

What backend/server/service did you use to store the repository?
GCS
Expected behavior
Handle the error, complain about it, but complete the process.
Actual behavior
tree 5cb11d839b361e406f30867802f34a7a26b99470b599da5ef36cd209cd4fdb86 not found in repository
github.com/restic/restic/internal/repository.(*Repository).LoadTree
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/repository/repository.go:620
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:11
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
github.com/restic/restic/internal/restic.FindUsedBlobs
        /tmp/restic-build-881482904/src/github.com/restic/restic/internal/restic/find.go:31
main.pruneRepository
        src/github.com/restic/restic/cmd/restic/cmd_prune.go:191
main.runForget
        src/github.com/restic/restic/cmd/restic/cmd_forget.go:235
main.glob..func9
        src/github.com/restic/restic/cmd/restic/cmd_forget.go:24
github.com/restic/restic/vendor/github.com/spf13/cobra.(*Command).execute
        /tmp/restic-build-881482904/src/github.com/restic/restic/vendor/github.com/spf13/cobra/command.go:698
github.com/restic/restic/vendor/github.com/spf13/cobra.(*Command).ExecuteC
        /tmp/restic-build-881482904/src/github.com/restic/restic/vendor/github.com/spf13/cobra/command.go:783
github.com/restic/restic/vendor/github.com/spf13/cobra.(*Command).Execute
        /tmp/restic-build-881482904/src/github.com/restic/restic/vendor/github.com/spf13/cobra/command.go:736
main.main
        src/github.com/restic/restic/cmd/restic/main.go:69
runtime.main
        /usr/local/Cellar/go/1.10/libexec/src/runtime/proc.go:198
runtime.goexit
        /usr/local/Cellar/go/1.10/libexec/src/runtime/asm_amd64.s:2361

Steps to reproduce the behavior
I'm guessing here:

Initialize a repo
Backup some data
Delete a pack file which contains metadata (trees)
Run restic prune

Do you have any idea what may have caused this?
Error is not correctly handled.
Do you have an idea how to solve the issue?
Handle the error, try to salvage as much data as possible.

When tree blobs are missing from the repository, there is only one way forward: the user has to decide whether to delete or repair the affected snapshots. Simply continuing is not possible as we won't know which blobs to keep.


Update Readme.md

chore:  add functional component example with react hooks to readme

@MagneH You might want to check out my PR (for lottie-react-web which is a fork of this repo) which is a rewrite with Hooks and Babel 7: https://github.com/felippenardi/lottie-react-web/pull/17


Browse window does not move horizontally in queries

Hi I don't now if this is a bug but when I do a query to show a data in table, does not move horizontally in in this windows resultset

Since 2.1.8, the result page will only be split horizontally when editing the sql file, other situation will show as full screen.


collapsible layerlist doesn't work well in the map

If the layerlist is not in a tab, but in the map, the collapsible icons will interfere with the text

Not an issue anymore with the new layerlist


Introduce new log API

This PR will introduce the new log API for Ballerina. The API is available in the package ballerina.utils.logger. The following functions are available for the Ballerina programmer to make use of:

debug(string msg)
error(string msg)
info(string msg)
trace(string msg)
warn(string msg)

Sample usage:
import ballerina.utils.logger;

function main(string[] args) {
	logger:debug("Test debug log");
	logger:error("Test error log");
	logger:info("Test info log");
	logger:trace("Test trace log");
	logger:warn("Test warn log");
}

Apart from the introduction of the new API, this PR also fixes the issue Ballerina had with being unable to separate the logs of the runtime and Ballerina programs/services.
Configuring the logging can be done through the configuration file given at <BALLERINA_HOME>/bre/conf/log4j2.properties
By default, the runtime logs are logged to the <BALLERINA_HOME>/logs/bre.log file and the Ballerina program/service logs are logged to the console. Ballerina logs can also be configured to be logged to a file at <BALLERINA_HOME>/logs/bvm.log.
This PR may also be a solution for issues #2290, #2405 as well.
The PRs in other repos related to this PR are given at:

https://github.com/ballerinalang/ballerina-parent/pull/22
https://github.com/ballerinalang/tools-distribution/pull/99

Closing this PR since an updated PR for this is given by PR #2748


Syntax highlighting of module prefix changes depending on the file content

Describe the bug

See how the highlighting of the Base. changes when I change the file content. It should always use the same color (here the "green" color).

Code for reproduction
module Test =

    module Base =

        let fn (x : string) (y: string) =
            x + " " + y

        let fn2 (x : string) (y: string) =
            x + " " + y

    let myFund x y =
        Base.fn x y
        |> Base.fn2

    let myFund2 x y =
        Base.fn x y
        |> Base.fn2

    let myFund3 x y =
        Base.fn x

    let myFund4 x y =
        Base.fn x y

Machine info

OS: Windows
.NET SDK version: 5.0.202
Ionide version: 5.5.3

One thing that would help here is to use the Inspect Tokens and Scopes command from the palette and record the semantic token classes (as well as the textmate grammar classes) applied to the code in the different locations.

I have a suspicion that some of the textmate grammars are clobbering some of the semantic highlight tokens/ranges based on personal experience that I haven't turned into an issue.

I thought that by default VSCode used the textmate grammar, and if semantic highlight tokens is active and gives a result for the token/range it take over the textmate grammar.
I don't really like what I see from the extraction of the scope informations... When running a diff against the HTML extraction I made I get not difference...
https://www.diffchecker.com/qmdekBDU
Information extracted when Base is colored in green:

language
fsharp

standard token type
Other

foreground
#4EC9B0

background
#1E1E1E

contrast ratio
8.18

semantic token type
namespace

foreground
entity.name.namespace

meta.return-type
support.class
support.type
entity.name.type
entity.name.namespace
entity.other.attribute
entity.name.scope-resolution
entity.name.class
storage.type.numeric.go
storage.type.byte.go
storage.type.boolean.go
storage.type.string.go
storage.type.uintptr.go
storage.type.error.go
storage.type.rune.go
storage.type.cs
storage.type.generic.cs
storage.type.modifier.cs
storage.type.variable.cs
storage.type.annotation.java
storage.type.generic.java
storage.type.java
storage.type.object.array.java
storage.type.primitive.array.java
storage.type.primitive.java
storage.type.token.java
storage.type.groovy
storage.type.annotation.groovy
storage.type.parameters.groovy
storage.type.generic.groovy
storage.type.object.array.groovy
storage.type.primitive.array.groovy
storage.type.primitive.groovy

{ "foreground": "#4EC9B0" }

textmate token
········Base.fn·x·y (19)

textmate scopes
source.fsharp.fsl

Information extracted when Base is colored in white:

language
fsharp

standard token type
Other

foreground
#4EC9B0

background
#1E1E1E

contrast ratio
8.18

semantic token type
namespace

foreground
entity.name.namespace

meta.return-type
support.class
support.type
entity.name.type
entity.name.namespace
entity.other.attribute
entity.name.scope-resolution
entity.name.class
storage.type.numeric.go
storage.type.byte.go
storage.type.boolean.go
storage.type.string.go
storage.type.uintptr.go
storage.type.error.go
storage.type.rune.go
storage.type.cs
storage.type.generic.cs
storage.type.modifier.cs
storage.type.variable.cs
storage.type.annotation.java
storage.type.generic.java
storage.type.java
storage.type.object.array.java
storage.type.primitive.array.java
storage.type.primitive.java
storage.type.token.java
storage.type.groovy
storage.type.annotation.groovy
storage.type.parameters.groovy
storage.type.generic.groovy
storage.type.object.array.groovy
storage.type.primitive.array.groovy
storage.type.primitive.groovy

{ "foreground": "#4EC9B0" }

textmate token
·Base.fn2 (9)

textmate scopes
source.fsharp.fsl

I've thought the same about the precedence involved, but given that the semantic tokens scopes are the same for both use cases I've not been able to come to another reason why the display would be different :-/

Unless the inspect token debug feature doesn't provides us will all the information for me it seems to lead to a bug in VSCode perhaps?
I mean if they are the same textmate grammar token and semantic token type it should gives the same results.
Do you know where all the storage.type.* stuff are coming from? I don't remember seeing them in the Ionide grammar when working on it.

I don't know what that long list of storage.type entries are, but I have them as well. I guess they might be potentially-applicable textmate scopes?

I had the idea to disable the syntax semantic feature of VSCode to check what the grammar looks like by default.

We can see that the grammar never colored any text in "green" even the module Base and namespace Base are not colored. So I think we can assume that the problem is with the syntax semantic.
And the long list of items is also coming from it.
The good news for me, is that I seem to avoid a journey into regex world 🤣

The long list of storage.type thing seems to comes from the theme definition:
https://github.com/microsoft/vscode/blob/26ce025594734550533adf481c0509898dfd2e89/extensions/theme-defaults/themes/dark_plus.json#L21-L55
Perhaps, we see it because Ionide say I want a token of type namespace
I suppose the first line foreground | entity.name.namespace is the semantic scope chosen.
So if the scope is correct, it would leads to a rendering issue perhaps? I am not sure if we can open an issue on the VSCode repo with these informations.
Do we have an easy way to check the return of FSAC to check that FSAC gives to the correct semantic token and we understand the debug tooltip correctly?

Good finds! For the semantic tokens there are a few layers involved, all of which are in FSAC, not ionide.

Is the range reported correctly in the underlying FCS GetSemanticRange call? Usage
Is the correct data still retained after we do our custom logic in FSAC to split out multi-line and nested ranges into a flat list of un-nested semantic tokens?
Assuming the source data is still good, is it still correct when it comes out of the LSP-required semantic highlight range encoding algorithm? Or is there a bug in this algorithm?
Can a test case be added to detect the error you're seeing?

This is what I'd be working through to root-cause this issue.

Here's a more minimal example (at least on my system) that triggers the invalid coloration of the module name:
module Base =
    let fn (x : string) (y: string) =
        x + " " + y

let myFund x y =
    Base.fn x y

I figured out the root cause and will send an FSAC PR with tests shortly.
The bug was in step 2 listed in my comment above.  FCS understands semantic classification spans that can be nested, and so does the LSP spec, but VSCode specifically does not so instead we have logic in FSAC to split out any tokens that are nested into a set of sub-tokens that ensure a non-overlapping set of ranges for the tokens.  This could result in tokens with zero length, when the start or end of the 'parent' token was the same as the matching start or end of the 'child' token. Simply filtering these cases out ensures that coloration remains consistent as we expect.

Awesome <3
So much color it's looks beautiful 😍 ahah


trimLeft and trimRight not defined in Internet Explorer

It seems the latest IE (as well as earlier ones) does not support JavaScript's trimLeft and trimRight on strings (while it supports trim, at least the latest IE). As a consequence, Elm code using String.trimLeft and String.trimRight will fail on IE.

Confirmed at MSDN that IE does not support trimLeft and trimRight on strings. Also found some other mentions online of these functions being "non-standard". So maybe avoid relying on them?

Yeah, Mozilla recommends against both trimLeft and trimRight.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/TrimLeft


Error more eagerly for proper subclasses of generics that we don't know how to validate

Closes https://github.com/pydantic/pydantic/issues/2264. (As it fixes some confusing behavior.)
We should go further and make similar changes for other subclasses of generics which don't have a "standard" way to call __init__.
Users who want to support such classes should implement a __get_pydantic_core_schema__ classmethod on the type in question, or if they don't control the type, on a pydantic-specific annotation used whenever that type occurs as a pydantic field annotation.
An example of how to do this is included in tests.test_edge_cases.test_custom_generic_validators

please review (also @adriangb for context, I'm not sure if you did something different/more general than this)


[Feature-3988][UI] Enhance user experience, add close button to file details page

Enhance user experience, add close button to file details page
this close #3988

+1

LGTM.


[fix][broker] Support dynamic configuration of exposeBundlesMetricsInPrometheus

Motivation
Support dynamic configuration of exposeBundlesMetricsInPrometheus.
Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Matching PR in forked repository
PR in forked repository: https://github.com/lordcheng10/pulsar/pull/35

LGTM

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

Codecov Report

Merging #18148 (faeeb3d) into master (6c65ca0) will increase coverage by 15.91%.
The diff coverage is 17.56%.

@@              Coverage Diff              @@
##             master   #18148       +/-   ##
=============================================
+ Coverage     34.91%   50.83%   +15.91%
- Complexity     5707     8722     +3015
=============================================
  Files           607      607
  Lines         53396    53511      +115
  Branches       5712     5739       +27
=============================================
+ Hits          18644    27201     +8557
+ Misses        32119    23312     -8807
- Partials       2633     2998      +365

Flag
Coverage Δ

unittests
50.83% <17.56%> (+15.91%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.


Create template for new issues description in .github

Description
We want to have a template that automatically appears when creating a new issue. This can be done by adding a proper-named MD file to the .github directory.

Create a new directory inside .github called ISSUE_TEMPLATE
Create a proper template using markdown that includes a base to be filled by those who propose an issue.

I am applying to this issue via OnlyDust platform.
My background and how it can be leveraged
Hello @danielcdz,
I'm a software engineer from Costa Rica and a member of Dojo Coding. I'd love to get the opportunity to help for this issue and contribute to your amazing project.
How I plan on tackling this issue
I have some experience documenting projects and my step by step to solve it looks like this:

I will search and design a cool issue template
Create a new directory inside .github called "ISSUE_TEMPLATE"
create a template according to the requirements

Looking forward to hearing from you!
Best regards,
Diego Duarte Fernández.

@diegoTech14 go ahead! 🫡


Logspout sometimes stops writing logs

I do not know how to pinpoint if this is a logspout issue or a logspout-kafka issue, but we have logspout set up writing logs to kafka and it periodically stops writing logs to kafka sometimes. It is very irregular, sometimes a service will log for hours without issue and stop inexplicably. Have you guys ever seen any cases like this?? Sometimes I think it has to do with docker containers starting and stopping very quickly but then other times we wont touch it for an extended period before it stops.
Struggling a lot with this, any help appreciated, thanks!

In kafka.go, I see this line:
if os.Getenv("DEBUG") != "" {
	log.Printf("Starting Kafka producer for address: %s, topic: %s.\n", brokers, topic)
}

Do you know how I can enable this debug option?? I tried setting an environment variable on my machine and restarting logspout, but it did not take, I  never saw any logs of the form mentioned there.

Hello! I have never seen your issue that logging "stops inexplicably" so we can surely use more information. :)
Running docker run --rm -e "DEBUG=1" logspout-image isn't working for you?

Ah I wasn't sure the syntax to enable it, I will try that! Thanks! It's been hard to get data, logspout is so lightweight, and the "stops" have been irregular. But thank you for the info!


Allowed memory size of<PHONE_NUMBER> bytes exhausted

add CURLOPT_WRITEFUNCTION  when i need to download big file

maybe we should add file lock

Please rebase, as I just sent over a big change to use PSR-2 coding style standards

updated

@ehovel sorry for the very late follow up on this. I've added a couple of memory fixes too, and I've added your fix to a new version. You can get it at https://packagist.org/packages/simpleenergy/php-webhdfs#1.0.6


[BUG] = Disk IO queue (aqu-sq) is high. Disk saturation

Describe the bug
During the daily-snapshots exist very high disk saturation.
this ever happened in partitions dm- / sda

To Reproduce
Rke2 cluster with longhorn installed via Rancher, and version RKE2 1.27.15.
Cluster with 3 controllers and 5 workers, daily snapshopt created via Longhorn UI with 3 retain snapshot
Expected behavior
Low saturation in disks
Support bundle for troubleshooting

Environment

Longhorn version: 1.5.5
Installation method (e.g. Rancher Catalog App/Helm/Kubectl): Rancher
Kubernetes distro (e.g. RKE/K3s/EKS/OpenShift) and version: Rke2

Number of control plane nodes in the cluster: 3
Number of worker nodes in the cluster: 5

Node config

OS type and version: RHEL 8.10
Kernel version: 4.18.0-553.22.1.el8_10.x86_64
CPU per node: 24 CVPU
Memory per node: 120 GB
Disk type (e.g. SSD/NVMe/HDD): SSD
Network bandwidth between the nodes (Gbps):

Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal): Baremetal / Hyper-V
Number of Longhorn volumes in the cluster: 45

Additional context
Sometimes this saturation bring some worker freesing and many pods remaining in terminating state
Workaround and Mitigation
I dont have any way to

Just to inform this saturation start many times with a daily snapshot from Longhorn.
I don't know if it is related but...


Extracting data

Hi,
Sorry if I'm in the wrong place, I just need some pointers to extract some data from my original LXD host. So my hosting provider deleted my server which is a huge pain for me, all I have left is a backup from January of /var/lib/lxd and a zfs.img in there which I assume holds all my data as it's 95G.
Is there any way to extract my container data from the zfs.img?

i think you can try something from https://groups.google.com/forum/m/#!topic/zfs-fuse/s2njFgkOfhg (look at last post from fajar). At any case, @stgraber or @brauner can describe, how lxc works with images

The iscsi stuff is very confusing here... how do I do this part specifically? Do I need to use iscsi to get the image into a readable format?
"setup iscsi
server to export /path/to/your/solaris.img usig tgtadm (part of
scsi-target-utils on RHEL5), and then import the disk back using
iscsiadm (part of iscsi-initiator-utils)."

Ah the second link with dd was much easier to understand, was just missing some ZFS knowledge. Let's see if this works.

Right... I'm missing something here, I did what they suggested. Created a pool on /dev/vdc and then created a volume: zfs create -V 130gb tank/vol
I copied everything with dd to /dev/zvol/tank/vol
Now how do I mount /dev/zvol/tank/vol? Mount doesn't seem to work:
mount: unknown filesystem type 'zfs_member'
So then I try...
zfs set mountpoint=legacy tank/vol
cannot set property for 'tank/vol': 'mountpoint' doesnot apply to datasets of this type
Then I find this: https://vox.veritas.com/t5/Discussions/ZFS-pool-volume-does-not-mounting-via-mount-resource/td-p/574644
which tells me "you have zfs volume created using zfs create -V option and now tryng to mount that volume as a zfs file sytem."
Which is what the proxmox link above told me to do... is there another way...?

If you want to restore your full LXD setup, then just restoring those files in /var/lib/lxd of another host (that supports zfs) and rebooting should do the trick.
If you just want to mount your old zpool, you should be able to run "zpool import /path/to/zfs.img lxd" (assuming the pool was called "lxd"). This should then have the pool show up in "zpool list" and in "zfs list -t all".

Is there any way to find out what the pool was called?
root@iZ6wefy8r9jd5wk9ee5va8Z:/mnt# zpool import /mnt/zfs.img lxd
cannot import '/mnt/zfs.img': no such pool available

If you want to restore your full LXD setup, then just restoring those files in /var/lib/lxd of another host (that supports zfs) and rebooting should do the trick.

 Odd right?

You want "zpool import -d /mnt lxd" to to import a pool called "lxd" from files stored in "/mnt"

Similar issue for me
rsync the entire lxd from damaged server to another server with lxd support should work??

If you can't get the zpool back online, you can't see the containers filesystem so I'm not sure what there would be to copy over to another server.
If you ran "zfs destroy" on some of the containers filesystem, then those containers are gone, there's no way to recover them.

can i use zfs send/receive and a copy of the lxd directory to recover just the container i need?

send/receive only works if your zpool is online, so far it sounds like it's not, or I misunderstood your current situation.

What does "sudo zpool status" and "sudo zfs list -t all" show?

ok
I have better to do a new install, there are no sensitive datas on this server.
Thank you for your answer


Use getOption instead getParameterOption on config file

Tested locally, shorthand for config-file looks fine now.

Closes: #1001

I remember having issues with getOption because the input validation happens way later in the execution when running the actual command. It might no longer be an issue because we changed how commands work a lot and from what I can tell this seems to work fine.
Thanks for your contribution.


owasp/modsecurity-crs:{nginx/apache} as a standalone webserver

Hello,
I am getting hard to run a quick apache/nginx webserver + waf for demonstration purposes,
I would prefer to use owasp/modsecurity image as a standalone server rather than a reverse proxy,
I followed the documentation for both modsecurity with and without crs, but no success.
here is my issues:
docker run -p 8080:80 -owasp/modsecurity-crs:nginx-alpine

after running the above command, under localhost:8080 nginx always services 50x.html rather than index.html
curl -v localhost:8080

*   Trying <IP_ADDRESS>:8080...
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
> GET / HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.81.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 502 Bad Gateway
< Server: nginx/1.20.2
< Date: Wed, 23 Feb 2022 21:13:19 GMT
< Content-Type: text/html
< Content-Length: 494
< Connection: keep-alive
< ETag: "6193c877-1ee"

I've tried to map public_html directory to modify/add my own indexes
docker run -p 8080:80 -v myPATH:/usr/share/nginx/html/ -owasp/modsecurity-crs:nginx-alpine

the container provides only these two files:
ls -lah myPath
-rw-r--r--  1 root root 1.0M Feb 23 22:24 modsec-shared-collections
-rw-r--r--  1 root root 8.0K Feb 23 22:24 modsec-shared-collections-lock

the GET result of  localhost:8080
*   Trying <IP_ADDRESS>:8080...
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
> GET / HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.81.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 404 Not Found
< Server: nginx/1.20.2
< Date: Wed, 23 Feb 2022 21:25:31 GMT
< Content-Type: text/html
< Content-Length: 153
< Connection: keep-alive

I've also tried different supported variants, and changed environment variables, but no success.
the Apache variant serves nothing and ended up in an endless loop!
From what I understand, the images meant to be an easy implementation. am I missing something? or the images should be used only as reverse proxy?
appreciate any help
regards.

Hi @Captainzalad, sorry for the delay. As a matter of fact, this was a feature in the past.
If you look at https://github.com/coreruleset/modsecurity-crs-docker#notes-regarding-reverse-proxy, it should be supported. But looking at the implementation, it is clearly not supported anymore 🤔 .
Now reverse proxy is the default mode. What I can do is create a new EMBEDDED mode, that should work as you expect. Give me a couple days to work it out.

I'm pretty sure it is possible to use the owasp/modsecurity-crs in standalone mode. This is what I did:
I have two pods (using podman instead of docker, but I'm sure that does not matter here): one with Nextcloud, the other with Friendica. Both used an nginx as web server in front of the php-fpm image.

I replaced the nginx container with the owasp:modsecurity.crs. It worked out of the box, as
the nginx.conf is unchanged and mapped in the container in /etc/nginx/nginx.conf
The owasp/modsecurity-crs container however required the nginx.conf to be writable so I can't mount it ro mode. But it did not any changes to the file.
I added the necessary lines to include modsecurity into the nginx.conf
I did not pass any of the env variables documented in hub.docker.com for the owasp/modsecurity-crs container
That's it.

Thanks for the comment.