Elementor form not accepting submits eventhough API returns valid:true

Im just testing a Mosparo server. Everything seems ok. I've put all keys to their places, made Mosparo Elementor form as default for the Mosparo connection I have set up in the plugin. And I've added Mosparo to Elementor Pro form. No other form checks are installed.
When I try to fill out the form and submit it after I've pressed the Mosparo checkmark, I get Verification failed error.
If I check post data I can see that the form has been submitted to the Mosparo server and it responds with valid: true and a validation token.
No submission data appears on the project dashboard either.
Pressing the accept button:

After form submit:

Hi @Sapper-Morton
Thank you very much for your issue.
Is the validation token that mosparo returned sent to the Elementor form handler? There should be a request to admin-ajax.php as soon as you submit the form.
In this request, the submit and validation token should be in the payload. Do you see these two values?

(red rectangle)
Kind regards,
zepich

I can see them. Admin-ajax.php responds as:

Hi @Sapper-Morton
Thank you very much for your response.
Do you have a shared hosting, or do you use a dedicated server (physical or virtual) to host your WordPress and mosparo? Is it possible that the connection between WordPress and the Mosparo host does not work correctly?
If the hosts are working correctly, then please do the following:

Open the file /wp-content/plugins/mosparo-integration/src/MosparoIntegration/Module/ElementorForm/MosparoField.php
Find line 236: https://github.com/mosparo/wordpress-plugin/blob/master/src/MosparoIntegration/Module/ElementorForm/MosparoField.php#L236, which looks like this:

__('Verification failed which means the form contains spam.', 'mosparo-integration')

Add the following code  . $verificationHelper->getLastException()->getMessage() at the end of the line:

__('Verification failed which means the form contains spam.', 'mosparo-integration') . $verificationHelper->getLastException()->getMessage()

Save the file and try it again.

You should still see the same error, but the actual error message should be visible at the end of the message, which helps me know where the problem occurs.
Thank you very much!
Kind regards,
zepich

Hi @Sapper-Morton
Okay, thank you very much.
Can you adjust the line like this?

Open the file /wp-content/plugins/mosparo-integration/src/MosparoIntegration/Module/ElementorForm/MosparoField.php
Find line 236: https://github.com/mosparo/wordpress-plugin/blob/master/src/MosparoIntegration/Module/ElementorForm/MosparoField.php#L236, which looks like this:

__('Verification failed which means the form contains spam.', 'mosparo-integration')

Add the following code  . $verificationHelper->getLastException()->getPrevious()->getMessage() at the end of the line:

__('Verification failed which means the form contains spam.', 'mosparo-integration') . $verificationHelper->getLastException()->getPrevious()->getMessage()

(New is the getPrevious()-> part)
4. Save the file and try it again.
Kind regards,
zepich

I got response 400. I looked for some answers for it and added large_client_header_buffers 4 16k; to nginx site config. It didn't help.

Verification failed which means the form contains spam.Client error: POST https://mosparo.xxxx.xxx/api/v1/verification/verifyresulted in a400 Bad Requestresponse: {"error":true,"errorMessage":"Request invalid."}
I looked around for an answer and then added large_client_header_buffers 4 16k; to the nginx site config. It didn't help.

Hi @Sapper-Morton
Thank you very much for your feedback.
The error 400 Bad Request with {"error":true.... is an error message from the verification API from mosparo (https://github.com/mosparo/mosparo/blob/master/src/Subscriber/ProjectSubscriber.php#L143), so your nginx configuration is okay, as far as I can tell.
Can you enable the API debug mode in the project settings in mosparo and try it again? You should see a more extended error response with a payload. Something is wrong with that payload.
Kind regards,
zepich

I had API debug mode already activated because I tried troubleshooting before creating this issue.

Hi @Sapper-Morton
Is the API debug mode still enabled?
Because the error message should have more content:
Verification failed which means the form contains spam.Client error: POST [https://mosparo.xxxx.xxx/api/v1/verification/verify](https://mosparo.xxxx.xxx/api/v1/verification/verify%60)
resulted in a 400 Bad Request response: {"error":true,"errorMessage":"Request invalid.","debugInformation":{"reason":.........................}}

If the option is enabled for this project, but you cannot see the debugInformation key in the error message, can you verify that you're using the correct project by verifying the public and private keys in the mosparo WordPress settings?
Thank you very much for your feedback.
Kind regards,
zepich

I re-issued new api keys and got more detailed error message:
Verification failed which means the form contains spam.Client error: POST https://mosparo.xxxxxxxxxx.xxx/api/v1/verification/verify resulted in a 400 Bad Request response: {"error":true,"errorMessage":"Request invalid.","debugInformation":{"reason":"hmac_hash_invalid","expectedHmacHash":"6cd (truncated...)

Hi @Sapper-Morton
Thank you very much for your feedback. I'm sorry for the trouble.
Can you adjust the 'adjusted' code above once more? Since the message is truncated, we cannot see the debug information.

Open the file /wp-content/plugins/mosparo-integration/src/MosparoIntegration/Module/ElementorForm/MosparoField.php
Find line 236: https://github.com/mosparo/wordpress-plugin/blob/master/src/MosparoIntegration/Module/ElementorForm/MosparoField.php#L236, which looks like this:

__('Verification failed which means the form contains spam.', 'mosparo-integration')

Add the following code  . $verificationHelper->getLastException()->getPrevious()->getResponse() at the end of the line:

__('Verification failed which means the form contains spam.', 'mosparo-integration') . $verificationHelper->getLastException()->getPrevious()->getResponse()

(Replace the getMessage() at the end with the getResponse())
4. Save the file and try it again.
Thank you very much.
Kind regards,
zepich

Hi @Sapper-Morton
Thank you very much for your feedback.
So, with the getResponse() adjustment above, you only see error when submitting the form? If yes, do you see an error 500 in the developer tools for the admin-ajax.php request?
Thank you for the nginx error log. So far, this looks all good.
Kind regards,
zepich

Hey,
Yes, getResponse() gives nothing else but 'error' when submitting the form.
The admin-ajax.php request gives error 500.

Hi @Sapper-Morton
Sorry, that was my mistake.
I forgot to add something; here is the adjusted code:

Open the file /wp-content/plugins/mosparo-integration/src/MosparoIntegration/Module/ElementorForm/MosparoField.php
Find line 236: https://github.com/mosparo/wordpress-plugin/blob/master/src/MosparoIntegration/Module/ElementorForm/MosparoField.php#L236, which looks like this:

__('Verification failed which means the form contains spam.', 'mosparo-integration')

Add the following code  . \MosparoDependencies\GuzzleHttp\Psr7\Message::toString($verificationHelper->getLastException()->getPrevious()->getResponse()) at the end of the line:

__('Verification failed which means the form contains spam.', 'mosparo-integration') . \MosparoDependencies\GuzzleHttp\Psr7\Message::toString($verificationHelper->getLastException()->getPrevious()->getResponse())

Save the file and try it again.

That should finally show you the complete response from mosparo.
Thank you very much!
Kind regards,
zepich

Verification failed which means the form contains spam.HTTP/1.1 400 Bad Request Server: nginx/1.18.0 Content-Type: application/json Transfer-Encoding: chunked Connection: keep-alive Cache-Control: max-age=0, must-revalidate, private Date: Wed, 17 Apr 2024 07:44:15 GMT X-Content-Type-Options: nosniff Referrer-Policy: no-referrer, strict-origin-when-cross-origin X-Frame-Options: DENY Content-Security-Policy: default-src 'none'; base-uri 'self'; block-all-mixed-content; connect-src 'self'; font-src 'self'; form-action 'self'; frame-ancestors 'self'; img-src 'self'; script-src 'self'; style-src 'self' X-Content-Security-Policy: default-src 'none'; base-uri 'self'; block-all-mixed-content; connect-src 'self'; font-src 'self'; form-action 'self'; frame-ancestors 'self'; img-src 'self'; script-src 'self'; style-src 'self' X-XSS-Protection: 1; mode=block Expires: Wed, 17 Apr 2024 07:44:15 GMT {"error":true,"errorMessage":"Request invalid.","debugInformation":{"reason":"hmac_hash_invalid","expectedHmacHash":"4a258025067cc0af5d0b27cdf87c65a14c087d2d47482667b2122960a7357d1e","receivedHmacHash":"70348e04b1815f510aa1eecc96c4233c9cd903e4dbda1fa2f49d900bd5340855","payload":"\/api\/v1\/verification\/verify{\u0022q\u0022:\u0022\\\/api\\\/v1\\\/verification\\\/verify\u0022,\u0022submitToken\u0022:\u00227gtq7qSWtvb7IvbjqtovtdUNMhEXnodwjVqog1BHL9Y\u0022,\u0022validationSignature\u0022:\u0022c100429759e7d5c25e7f654884f868a568eaac5d2d37d100bf4a97500702f6ca\u0022,\u0022formSignature\u0022:\u0022d09a999cfeb487ebe07f5ae4b842df5b4f9bade02ed814cf8dc00bb9362d25cd\u0022,\u0022formData\u0022:{\u0022form_fields[email]\u0022:\u0022697d7c327c8cd7ba5a5adc49ab917b858dfc61af41db209c5a311b27fa3f77a9\u0022,\u0022form_fields[viesti]\u0022:\u00221f5f9aba6b872f7cb04f3b4971a8cfe23530cf5aa9dde34cee31cf221c9085db\u0022}}"}}

Hi @Sapper-Morton
Awesome, thank you very much!
The problem is in the generation of the signature. Somehow, mosparo receives an additional argument q with the API path /api/v1/verification/verify, which should not be there.
Payload should look like:
/api/v1/verification/verify{"submitToken":"7gtq7qSWtvb7IvbjqtovtdUNMhEXnodwjVqog1BHL9Y","validationSignature":"c100429759e7d5c25e7f654884f868a568eaac5d2d37d100bf4a97500702f6ca","formSignature":"d09a999cfeb487ebe07f5ae4b842df5b4f9bade02ed814cf8dc00bb9362d25cd","formData":{"form_fields[email]":"697d7c327c8cd7ba5a5adc49ab917b858dfc61af41db209c5a311b27fa3f77a9","form_fields[viesti]":"1f5f9aba6b872f7cb04f3b4971a8cfe23530cf5aa9dde34cee31cf221c9085db"}}

Your payload looks like this:
/api/v1/verification/verify{"q":"\/api\/v1\/verification\/verify","submitToken":"7gtq7qSWtvb7IvbjqtovtdUNMhEXnodwjVqog1BHL9Y","validationSignature":"c100429759e7d5c25e7f654884f868a568eaac5d2d37d100bf4a97500702f6ca","formSignature":"d09a999cfeb487ebe07f5ae4b842df5b4f9bade02ed814cf8dc00bb9362d25cd","formData":{"form_fields[email]":"697d7c327c8cd7ba5a5adc49ab917b858dfc61af41db209c5a311b27fa3f77a9","form_fields[viesti]":"1f5f9aba6b872f7cb04f3b4971a8cfe23530cf5aa9dde34cee31cf221c9085db"}}

This "q":"\/api\/v1\/verification\/verify", should not be in there.
Is it possible that you added ?q=$uri in your nginx configuration in the PHP location?
Can you share your nginx configuration?
 Now Mosparo check just says 'error' again...
 CertBot part ....`

Hi @Sapper-Morton
Perfect, thank you very much for the update.
There is probably a different exception now. Can you adjust the code in the file again and go back to the previous one (with getMessage() at the end)?

Open the file /wp-content/plugins/mosparo-integration/src/MosparoIntegration/Module/ElementorForm/MosparoField.php
Find line 236: https://github.com/mosparo/wordpress-plugin/blob/master/src/MosparoIntegration/Module/ElementorForm/MosparoField.php#L236, which looks like this:

__('Verification failed which means the form contains spam.', 'mosparo-integration')

Add the following code  . $verificationHelper->getLastException()->getPrevious()->getMessage() at the end of the line:

__('Verification failed which means the form contains spam.', 'mosparo-integration') . $verificationHelper->getLastException()->getPrevious()->getMessage()

Save the file and try it again.

If that shows you the same error, please remove also the getPrevious()-> part.
Kind regards,
zepich

It still shows just 'error'.
Console shows error 500. Looks like CORS related.
I think i've forgot to tell that the mosparo server is not local. It is running on different virtual machine with different ip.
Status
500
VersionHTTP/2
Transferred648 B (184 B size)
Referrer Policystrict-origin-when-cross-origin
Request PriorityHighest
DNS ResolutionSystem

access-control-allow-credentials
	true
access-control-allow-origin
	https://xxxxxxxx.xxx
cache-control
	no-cache, must-revalidate, max-age=0, no-store, private
content-type
	text/html; charset=UTF-8
date
	Wed, 17 Apr 2024 09:30:53 GMT
expires
	Wed, 11 Jan 1984 05:00:00 GMT
referrer-policy
	strict-origin-when-cross-origin
server
	nginx
x-content-type-options
	nosniff
X-Firefox-Spdy
	h2
x-frame-options
	SAMEORIGIN
x-robots-tag
	noindex

Accept
	application/json, text/javascript, */*; q=0.01
Accept-Encoding
	gzip, deflate, br
Accept-Language
	en-US,en;q=0.5
Connection
	keep-alive
Content-Length
	1698
Content-Type
	multipart/form-data; boundary=---------------------------2148669536751623232489430797
Cookie
	wordpress_sec_694d206bcfd1e1d1962ab19d791a71de=oddy%7C1713348936%7ClTpIjz07eROsLmihclm6oNI1HS04tOvB8j0thnelE4m%7C79299ceb3226f2851a829ab91bf0f8ea0631c55494309f3f3eca45e6b7d0373c; prism_611062616=f492b1a4-7d0e-4403-b3e2-594ee5eb3d39; _ga_8XNEEYF5YC=GS1.1.1713345<IP_ADDRESS>3346<IP_ADDRESS>9435536; _ga=GA1.1.1585784418.1707828439; _lfa=LF1.1.63567abe43f78c88.1707828439407; _hjSessionUser_2081911=eyJpZCI6ImU1NzU2M2ZmLWYxMWEtNTVkMy05MmJmLTgzZGNlNzcxMGY1YiIsImNyZWF0ZWQiOjE3MDc4Mjg0NDA0NDQsImV4aXN0aW5nIjp0cnVlfQ==…%3A%22Mozilla%2F5.0%20%28Macintosh%3B%20Intel%20Mac%20OS%20X%2010.15%3B%20rv%3A123.0%29%20Gecko%2F20100101%20Firefox%2F123.0%22%7D; _gcl_au=1.1.2071219448.1710403740; wordpress_logged_in_694d206bcfd1e1d1962ab19d791a71de=oddy%7C1713348936%7ClTpIjz07eROsLmihclm6oNI1HS04tOvB8j0thnelE4m%7Cb276998f5bbf2dc6699809375b69eee36ec8c493a5942c90c18e16865a618da2; _hjSession_2081911=eyJpZCI6Ijk1ZDgyYjllLTA1YzUtNDBjNy1iZDE0LWMxOWY1MjFjMmU4MiIsImMiOjE3MTMzNDUxMTU3MjYsInMiOjEsInIiOjAsInNiIjowLCJzciI6MCwic2UiOjAsImZzIjowfQ==
DNT
	1
Host
	xxxxxxxx.xxx
Origin
	https://xxxxxxxx.xxx
Referer
	https://xxxxxxxx.xxx/yhteys/
Sec-Fetch-Dest
	empty
Sec-Fetch-Mode
	cors
Sec-Fetch-Site
	same-origin
Sec-GPC
	1
TE
	trailers
User-Agent
	Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:124.0) Gecko/20100101 Firefox/124.0
X-Requested-With
	XMLHttpRequest

Hi @Sapper-Morton
Thank you for your update.
The request to admin-ajax.php generates now (again) an error 500, correct?
What happens if you remove this part  . $verificationHelper->getLastException()->getPrevious()->getMessage() completely from the file which you edited earlier?
That mosparo is running on a different machine should be fine (for development, I'm working with a local WordPress installation that uses mosparo running in a data center).
Kind regards,
zepich

Hi,
Yeah. I see error 500.
The form says this:

What do you see in the access log of the mosparo host?
Do you still see an status code 400 for the /api/v1/verification/verify request?
(Like here https://github.com/mosparo/wordpress-plugin/issues/9#issuecomment-2056483533)

[17/Apr/2024:12:53:02 +0300] "POST /api/v1/verification/verify HTTP/1.1" 200 134 "-" "GuzzleHttp/7"

Awesome! Do you see the submission in mosparo in the list of submissions?

oops sorry! I checked the wrong project. I see 0/5 submissions!

Where do you see 0/5? In the dashboard?
If yes, can you show me a screenshot of one of the submissions? Because if the submissions are in mosparo but not as 'valid', there must be an issue with one of the fields.

Oh... The links-field is actually Elementor Honeypot field.

I removed the Honeypot field and now the form works.

Hi @Sapper-Morton
Awesome! I'm very happy that we found the issue!
Kind regards,
zepich


Archive "some" checked tasks

Right now the archive all checked tasks setting is all or nothing.

However I would like to archive specific checks, such as [x] for done and [-] for cancelled (see obsidian tasks) and leave others in place. Would like there to be an option for configuring "which" checked tasks are archived instead.

Hello, @tonyxiao,
You can create a rule on the settings page and define the statuses that get handled by the plugin.

Amazing, will check it out thank you!

Right now the archive all checked tasks setting is all or nothing.

However I would like to archive specific checks, such as [x] for done and [-] for cancelled (see obsidian tasks) and leave others in place. Would like there to be an option for configuring "which" checked tasks are archived instead.

If you still need assistance, I managed to do it by keeping the setting in your screenshot deactivated and using the following one :

I don't know, sorry for late reply btw.

Closing this as resolved


Can't access my profile on web from Your profile menu

What

Can't access my profile on the web from Your profile menu

Steps to reproduce the behavior

I sign in with my email credentials
Click on the First list tile in the profile section i.e
Click on view profile, for me, it shows unknown user
More sections on the same page throws me error cause it can't detect me as signed in

Expected behavior
I guess user name should be appended instead of the email address,
Why
Possible causes

checked on the link that is being opened in my browser,seems like it appends my email to the link
<EMAIL_ADDRESS>but what I saw on the web when I open my profile is something like this https://world.openfoodfacts.org/editor/ashaman

Screenshot/Mockup/Before-After
(optional, delete if empty)
Smartphone model

Device: [Android 11]

@AshAman999 Indeed there's a little problem here.
I do connect with my userId and everything is fine for me.
I've just retried with my email, and it's a bit weird already for the welcome page: I see "Identifiants OpenFoodFacts : ".
And of course, same problem as you when I click on the "to the web profile page" link.
I think it should be alright to connect with one's email, but the connection process should always return the userId.
And for the moment, in off-dart the login method returns just a bool.
And the '/cgi/auth.pl' query it calls does not return a response body.
Conclusion:

need to be fixed on the server side, that should return a body that includes the userId
then can be fixed in off-dart
then can be fixed here

Totally agree we need better server side support, not just for this but also for things like the account header in the settings.
But FYK that will be fixed in some time as another Google Summer of Code student has a project of switching to a pre-made Auth solution with OAuth and things like that. Don't know more then that but looking foreward to that.

@AshAman999 @M123-dev I thought this could be fixed using login2. Am I right?

I tried with my phone on the latest build on testflight
The issues still exist though we are using login2

We now have login2 but I'm not sure how we have implemented this. It could be that we still always use the userId (username or email)   in some places where we should always use the username

We now have login2 but I'm not sure how we have implemented this. It could be that we still always use the userId (username or email) in some places where we should always use the username

Actually you are right, I will have a look at this!


Option to ignore only some columns

I would like to compare a 50-column CSV file and I want to ignore the differences in a few columns only. Instead of specifying --columns 0,1,2,3,4..32,34..41,43..50 it would be nice to say --ignore-columns 33,42.
This is not the same as #20 which only controls the display of the columns.

I think we can add  --ignore-columns as a flag. Either of --columns or --ignore-columns can be supplied at any given point in time. Does this work?

Flag typically refers to a boolean option that doesn't take arguments (e.g. -f for rm), but I'm fine with an --ignore-columns option.

👍

Is anyone working on this? I can take a shot at it if nobody is currently working on it. I'm not super experienced at Go, but I think I could manage this.

Sure go ahead. PRs are welcome!
Just reiterating what i said here
Only one of --columns or --ignore-columns can be specified at a given time.


chore: upgrade @react-native-community/datetimepicker

Description
This should fix a compilation error in detox/test on Xcode 15.3.
I confirmed that it works on Xcode 15.2 locally as well.

See: https://github.com/react-native-datetimepicker/datetimepicker/pull/868


Carousel height resizes when slide images have different sizes/ratios

Seems like a lot of people are facing problems with heights of the images/carousel for responsive design.
Most implement a custom solution. I think we should standardize on a solution and implement it in core.
http://stackoverflow.com/questions/13391566/twitter-bootstrap-carousel-different-height-images-cause-bouncing-arrows
https://coderwall.com/p/uf2pka/normalize-twitter-bootstrap-carousel-slide-heights
http://parkhurstdesign.com/sites/bootstrapsandbox/slider-fixed.php
http://arturssmirnovs.com/blog/bootstrap-carousel-100-height-and-width/

One potential difficulty I foresee is dealing with slides which are dynamically added/removed from the Carousel's DOM.

If carousel is removed from Bootstrap, it can reduce total size of bootstrap. For most of users Bootstrap carousel is not enough, slick and owl carousel or other will work well. ( Same as Glyphicon, it not in latest alpha 2)

I am attempting to normalize the height of some carousels using the methods described by coderwall and stack overflow mentioned above, but I have had no success. Mostly because I probably don't know enough about jquery.
https://github.com/h20ld3n/holdenhardcastle.com.git
I am attempting to get this to work on the index.php
the problem child starts on line 261 - the code is below

Virginia Air & Space Center Educational Posters
Attik Designs heavily influenced the work created when the Virginia Air and Space Center asked me to create some cool educational posters, that kids would want to pin up in their rooms. The posters had to live next to supermodels, cars, magazine pullouts and rock stars. The strong imagery of the Space Shuttle launch and jets flying straight on center were enhanced with illustrations and interpretations of aerodynamic patterns.

  Previous    Next

@h20ld3n Please use StackOverflow, IRC, Slack, or similar for personal support questions, rather than this issue tracker. See https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md#using-the-issue-tracker

I think the solution to this is advising folks in the docs to ensure content is the same height in their implementation. That means same-sized images, setting dimensions on the slides themselves, etc.

For your information it's the same behavior in V3

mdo's answer is technically correct and supports cvrebert's foresight suggesting that dynamically generated elements are not supported for the Carousel feature.   No further information has been provided to indicate the contrary.  The issue persists in Bootstrap v3.3.7 as of this writing, July 2018.


Remembers last edit position and restores it.

Every time I saved a file, I lost the current position in the buffer. This change keeps it (as close as possible).

It was necessary. Thank you :+1:


Can I have the fumo database?

I'm finding fumo image api-s for my current project. Discovered this repo and I'm quite amazed by the size of your database. Can you send me those fumo ( I'm using Python, maybe I have to re-write this all again )
Torrent file is oke

Of course, if I find them I will send you them, also someone recommended me a free S3 like provider so I'll also look if I can revive this project


Copy-Item -exclude doesn't work recursevly

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
I am trying to copy the directory with the content but want to exclude some child folders. Copy-Item applies the Exclude on the root level only
Example:
$ExcludeFolder="x"
$Source = "c:\temp"
$Destination = "d:\temp"
set-location $Source
Copy-Item * -exclude $ExcludeFolder -force -recurce -destination $Destination -verbose
$Source folders:
-->Folder 1
---->>Folder 1.1
---->>Folder 1.2
---->>Folder x
-->Folder 2
---->>Folder 2.1
---->>Folder 2.2
---->>Folder x
-->Folder x
---->>Folder x.1
---->>Folder x.2
---->>Folder x
$Destination folders:
-->empty
Expected behavior
$Destination folders:
-->Folder 1
---->>Folder 1.1
---->>Folder 1.2

-->Folder 2
---->>Folder 2.1
---->>Folder 2.2

Actual behavior
$Destination folders:
-->Folder 1
---->>Folder 1.1
---->>Folder 1.2
---->>Folder x
-->Folder 2
---->>Folder 2.1
---->>Folder 2.2
---->>Folder x

Error details
no errors

Environment data
Name                           Value
----                           -----
PSVersion                      7.1.4
PSEdition                      Core
GitCommitId                    7.1.4
OS                             Microsoft Windows 10.0.19043
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals
No response

Exclude and Include parameters is used in some cmdlets and we should have the same behavior for all of them. Ex., see #15159.


I8N/internationalisation for keyboard

The keyboard now shows "Done" when selecting an option/dropdown.
This is English, and should be translatable/use a variable for user language.

So, Can not modify that word Done by ionic or cordova?
Oh.
I hope be translatable. (I'm using Japanese).


chore: clean up fsm

Recreating this PR: https://github.com/SupaStuff/game-mods/pull/19
I accidentally force pushed it out of my branch.

wrong repo


Problems with mac

since yesterday it does not work for mac, I have installed the certificate for 2 months and it worked fine but since today it is failing

Users reported it not working, but it is working now. Could have been an ISP thing or something with the host for a little bit. I'll investigate but, close the app completely and reopen it and it will work again.

yeah, it's right, thanks for your awesome collaboration @jaku


Backend: Build base game logic framework; opening question round and closing after timer is over, accessing current question, increasing points at end.

Backend:
-Build base game logic framework:
-Question Round class
-opening question round and closing after timer is over,
-accessing current question for this round
-increasing points at end of round based on voting system evaluation and correct answer

Should have been closed by pull request #80


Suggestion: build and distribute as a SQLite DB file

This library currently distributes data as a built JSON file, which has to be read into memory in full.
If the library used a binary SQLite DB file it could run lookups against an index and avoid needing to load the entire file into memory.
Since Python includes sqlite3 in the Python standard library this could be done without needing any extra library dependencies.

That's a great idea - thanks for the suggestion.
I've never packaged a library like that before; what's the right way to handle connections? Should I open a connection at import time and re-use it or make a connection for every query?

So I realized one issue with this - because JSON can be decompressed at runtime, it only takes up roughly 3MB on disk. In contrast vanilla sqlite can't be compressed on disk, so it's 70MB. That's not a big deal for most applications (and it's compressed for download anyway) but it's something to keep in mind.
I have working code doing this in the feature-sqlite branch.

Just released this as v0.2.0.


Mkdocs Serve Won't Collect my Function

Hi there,
from auto_docs, the folder where I store mkdocs.yml, I'm trying to document a script I have in the src directory.

Here is my mkdocs.yml
site_name: My Docs

theme:
  name: "material"

plugins:
  - search
  - mkdocstrings:
      handlers:
        python:
          import:
            - https://docs.python.org/3/objects.inv
            - https://docs.python-requests.org/en/master/objects.inv  # demonstration purpose in the docs
            - https://mkdocstrings.github.io/autorefs/objects.inv
          selection:
            docstring_style: google
            docstring_options:
              ignore_init_summary: yes
          rendering:
            merge_init_into_class: yes
            show_submodules: no
      watch:
        - src

nav:
  - Home: index.md
  - Installation: installation.md

Here is my myfunction documentation

# Documentation for 'MyClass'

::: src.models
   handler: python
   selection:
     members:
       - method_a
       - method_b
   rendering:
     show_root_heading: false
     show_source: false

When I call mkdocs serve from my auto_docs folder, it throws:

Could you help?

Solved!
Was an issue in my code, not an issue in mkdocstrings.


lutris and steam on unstable -> smpeg2-unstable-2017-10-18': No such file or directory

Describe the bug
My os flake (without changes) stopped wroking round about 8 days ago. I get the error "smpeg2-unstable-2017-10-18': No such file or directory". After removing steam and lutris, it is working again.
Expected behavior
Installation of Lutris and Steam succeeds.
Notify maintainers
@jagajaga
@Chiiruno
Metadata
06:56:30 ❯ nix-shell -p nix-info --run "nix-info -m"
this path will be fetched (0.00 MiB download, 0.00 MiB unpacked):
  /nix/store/rc7i07hxpz6h2a892x7pyzm0z6pw4gs4-nix-info
copying path '/nix/store/rc7i07hxpz6h2a892x7pyzm0z6pw4gs4-nix-info' from 'https://cache.nixos.org'...
 - system: `"x86_64-linux"`
 - host os: `Linux 5.15.29, NixOS, 22.05 (Quokka)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.7.0`
 - channels(root): `"nixos-22.05pre337103.581d2d6c9cd"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Kind regards
Alexander

it is working again. cudos for the interruption.


Connectivity between UI and Smart car.

As a user I want the UI to connect to the Smart car at startup.
Acceptance criteria: UI is connected to the smart car when the app is started.

Pull request #24 meets this issue and implements the mentioned requirements.


Colourful Screen

I don't know if you have any time to hear out stupid suggestions but have you ever considered adding colors to the screen?
I would really enjoy being able to set screen red for a non invasive light.

A user would like to have the option to change the color of the screen. What do you think about it?

Yes, can I work on adding this toggle?

Yes, can I work on adding this toggle?

That would be great. 👍

No feedback from @prathamesh-2002 so someone may pick this up. I would highly appreciate it.

Are you interested to work on this, @unbiaseduser?

@karimapps will develop this feature. 👍

Good. I haven't got enough free time recently, so it's great to see someone else doing stuff.

Good. I haven't got enough free time recently, so it's great to see someone else doing stuff.

Yes, that's great. I'm happy about it too. 😊

Hi
please explain it more , you want to chnage color in mobile app or in wear os app also please share the screen where you want to chnage color ? one thing more is the wear os standalone or comapnion app?


API to generate Well Known DID Configuration

API Definition

HTTP GET /<verifier|issuer>/profiles/{profileID}/well-known/did-config)
Response - VC in JWT/JSON-LD format

Logic

Fetch the profile data from profileID
Create a VC with

credentialSubject.id = signingDID from profile
origin = url from profile

Sign VC (based on vc-type from profile)

Add dev mode flag if dev mode true enable endpoint


MC: towards 1kHz rate controller loop

This is a refactoring of the attitude/rate controller to decouple them. The attitude controller is only run when the attitude updates, whereas the rate controller runs in sync with the gyro update.
In addition the rate controller is run before everything else. Together with a prio increase of the fmu, it reduces the fmu control latency from 219us to 134us.
The drawback is that the attitude to rate setpoint generation is delayed by one cycle (4ms), but it will be reduced to 1ms as soon as we run at 1kHz (we can also do this change when we actually run at 1kHz).
Tested in HIL & SITL.
I came accross an ESC that activates OneShot only if it receives the signal with at least 1kHz, so it's time that we push for this.

@bkueng Please request reviews from @PX4/testflights for changes as you submit them. Thanks!

Diff looks good. I would love to see the flight data @PX4/testflights

@LorenzMeier the Test Team doesn't have "OneShot" ESC's. Should we get the omnibus, that would be a valid platform to test on?

@Tony3dr we'll need that soon, but for now just a quick set of short MC flights to compare perf counters (postflight data) and check for any regressions would be great.

@bkueng the other thing to look at is the px4fmu polling and default mixers. The common quad_x mixer (https://github.com/PX4/Firmware/blob/master/ROMFS/px4fmu_common/mixers/quad_x.main.mix) has manual passthrough channels after the multicopter mixer.
This results in the fmu task running at a higher rate than the rate/attitude controller if you have manual input connected. We could probably get away with only ever polling the first actuator controls group (if used), or simple switching logic to be slightly more robust. Either way polling all of them and fmu running at ~ 300-360 Hz is a waste.
Ideally we need to find a way to make the mixer system more configurable to end users and only load pieces actually used, but that's a much bigger topic.

testing on pixhawk 1
https://review.px4.io/plot_app?log=09da76aa-3f91-4147-9506-c43409820339
pixhawk v4 pro
https://review.px4.io/plot_app?log=17dbdee6-b832-4b5a-ba68-07e2252f595b

@Tony3dr nice. Feel free to ping me if you have questions. If you're interested, you can create a build log in the form of https://docs.px4.io/en/frames_multicopter/qav_r_5_kiss_esc_racer.html.


Provide OOTB integration for Spring Interface Clients

Interested to hear your thoughts about what we will need to do to support this.

I've put the issue here to have a place to track it, but it's probably something to work on after this one is done: https://github.com/spring-projects/spring-boot/issues/31337, so possibly maybe this release but more likely next. Will then schedule a team meeting to discuss this and make a plan.


CompileError — file to import not found or unreadable: "../variables.scss"

After clean install and trying to log into the Admin interface:
CompileError at /admin/login/
d:\VirtualEnvironments\wagtail_test\lib\site-packages\wagtail\wagtailadmin\static\wagtailadmin\scss\layouts\login.scss:1: error: file to import not found or unreadable: "../variables.scss"

Windows 7 x64, Python 2.7 x32.

Wagtail no longer depends on django-libsass as of version 1.0.
(Current status of django-libsass on Windows is unknown, but no longer Wagtail's concern :-) Anyone interested in using that combination is welcome to report any issues against the django-libsass project)


Ability to get react component instance from anywhere in the component tree.

Currently, react-aop is unable to retrieve component instance.  Tried with ref , ReactTestUtilities, and even reactElement but in vain. Because of this limitation, the current version limits you to be able add advice only on react component methods that doesn't reference to same component, this.
The work around currently implemented is by putting pointcut only in to the method that doesn't has reference to itself(this). In case you only have method with this, just need to create new method with no implementation and make it call from your originally intended method and make this new method your hook. For instance:
Original method in specification:
{

_onValidZipcode:function(target){
...original code...
this.otherFunInvoketion()
.
.
this._aopHook();
},
_aopHook:function(){}
}

And create the pointCut on _aopHook.

Hi mate,
Googling about 'React cross-cutting concerns' I found this repo. Congrats, this is pretty nice. You have create an specific AOP solution for React. I don't have enough knowledge of React to indentify ccc far away from Logs or Ajax requests, but specific problems that AOP can solve in flux arquitectures (react related)
I'm looking for help to make examples of ccc problems solved by aop.
Please take a look over my repository. I wish colaborate with you to bring the benefits of AOP to React :)
https://github.com/k1r0s/kaop-ts/blob/master/docs/API.md#decorators


Vslice

Some adjustments for vertical slice presentation

LGTM, however if I leave the spaceship running long enough in the default orbit at max speed (the new maximum you created) after about 20s I get an assertion failure that we collided?
Assertion failed: (orbit.r > orbit.origin->radius), function update, file OrbitalMechanics.cpp, line 347.
So maybe the rocket's radius is not exactly to scale here?

It's the asteroid that collided and hit the assert. We probably need to replace that with a game over or something eventually.


Typo "** CntrlType value**"→"CntrlType value"

https://docs.microsoft.com/en-us/office/vba/api/visio.menu.typespecific1

Docs Build status updates of commit 2db0b2b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

api/Visio.Menu.TypeSpecific1.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Added support for line protocol

+1 - Need to get this supported properly. The new Grafana 2.1 alias filtering for InfluxDB 0.9x relies on tag support, without support for the influxdb backend we're kind of treading water with using StatsD.
Kapil: how would we craft the metrics with statsd to support the new line protocol? I'm assuming you've tested this, can you provide an eample? We might need to add some instructions in the readme on how to do this. I'm assuming the format would be something like:
metric,servername=server01,tag2=tagvalue metricvalue1=0.002,metricvalue2=0.003
Can you confirm how this works?

i wrote a very simple transform of the JSON payload to line protocol, which works for me. I am not using tags in influxdb. Hence, my code will just emit payloads in form:
measurement_name value=
measurement_name value=
Tag values are not supported.


MethodChannel doesn't register methodCallHandler on iOS

So, I having a bunch of plugins in my project, and one of them is self-written. I am trying to communicate with it via MethodChannel and it is working fine on android, and also successfully performing invokeMethod on both platforms. However, when it comes to performing invokeMethod from swift code to pass data into dart, Flutter side seems not to recognize previously registered with setMethodCallHandler handler from inside of it's BinaryMessenger. So, when I am successfully registering methodCallHandler for my plugin, _DefaultBinaryMessenger inside the MethodChannel having this static list of registered message handlers:
[flutter/system, flutter/lifecycle, flutter/keyevent, flutter/navigation, plugins.flutter.io/firebase_messaging, receive_sharing_intent/events-media, receive_sharing_intent/events-text, plugins.flutter.io/connectivity_status, flutter_voxeet, flutter_voxeet/event]

but when it is receiving binary message from native side of this particular plugin (flutter_voxeet) and trying to decode it and pass into the proper handler, it turns out that it is trying to reference this list of handlers
[flutter/system, flutter/lifecycle, flutter/keyevent, flutter/navigation, vn.hunghd/downloader_background]

it is different and not having a proper handler despite that MethodChannel using the only instance of _DefaultBinaryMessenger by default with a single static list of handlers. Can somebody explain what possibly can cause this behavior? Unfortunately, I can't share my code because of NDA, but swift initialization is pretty simple and doesn't have anything special
public static func register(with registrar: FlutterPluginRegistrar) {
        var channel: FlutterMethodChannel? = FlutterMethodChannel(
            name: "flutter_voxeet",
            binaryMessenger: registrar.messenger()
        )

        let instance = SwiftFlutterVoxeetPlugin()
        registrar.addMethodCallDelegate(instance, channel: channel!)

        let viewFactory = VoxeetViewFactory();
        registrar.register(viewFactory, withId: "VoxeetView")
    }

Expected results:
I am expecting that messages from swift side are successfully passing into the proper handler on flutter's side
Actual results:
I am receiving messages from swift and flutter recognizes them, but I can't handle them. Missing handler that has been registered previously is the only problem

Logs

[✓] Flutter (Channel stable, v1.12.13+hotfix.9, on Mac OS X 10.15.4 19E287, locale ru-RU)
    • Flutter version 1.12.13+hotfix.9 at /Users/sunfoxx/Development/flutter
    • Framework revision f139b11009 (4 weeks ago), 2020-03-30 13:57:30 -0700
    • Engine revision af51afceb8
    • Dart version 2.7.2

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/sunfoxx/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.4.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.4.1, Build version 11E503a
    • CocoaPods version 1.8.4

[✓] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 43.0.1
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[✓] IntelliJ IDEA Community Edition (version 2019.3.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 45.1.2
    • Dart plugin version 193.6494.35

Hi @SunFoxx
there is no need to share your production code,
but it would be useful if you could share
a reproducible minimal code sample
Thank you

Resolved. The problem was in non-proper plugin initialization for flutter_downloader in AppDelegate


How to work the VS13

How to work the VS13 ,I am a freshmen,please tell me the method!

Please read the documentation.


App Crashes with exit status 0xc0000005

HI, I am new to golang. I am integrating webview on a windows machine.
When I try to run the code, it gives me this error
exit status 0xc0000005

Interestingly enough, I have the same today using the simple example code in the readme. It was working fine before, so I wonder what are the changes. Maybe a windows update messed the webview component?

@pierrejoye I updated the WebView2Loader.dll from some old commit. and after that it is working fine for both mac os and windows.

which revision did you take?
On Sat, Feb 5, 2022, 7:10 PM Umar Farooq @.***> wrote:

@pierrejoye https://github.com/pierrejoye I updated the
WebView2Loader.dll from some old commit. and after that it is working fine
for both mac os and windows.
—
Reply to this email directly, view it on GitHub
https://github.com/webview/webview/issues/658#issuecomment-1030610594,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACE6KBQONIWBS34VSDPWLLUZUHVDANCNFSM5NI4VTXQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

oops, I don't remember exactly, but I can share that file
https://drive.google.com/file/d/1HXMpMle0rEXqNMIsm9k9_93N8eTfkue4/view?usp=sharing

I will debug, it needs to work with current version  :)

See https://github.com/webview/webview/issues/632

Duplicate of #632


Set vim alias base on client server being compiled into binary.

Git-commit 7088cb completed this task.


[Member codes] Send email to member contact when a workshop request is submitted using their code

This reduces the chance of someone taking a donated/shared code and requesting more workshops than they were meant to without the knowledge of the lead contact.
Originally posted by @elichad in https://github.com/carpentries/amy/issues/2380#issuecomment-1768639578

Having looked at the AMY code, I think this would be better handled using the new email system, after we've decided how to handle the 'autoresponder' type emails.
I'm therefore going to move this to the emails project and remove the milestone.


Improve GetValidatedActionResult() performance by validating action result blobs in parallel

Speed up GetValidatedActionResult() for proxy backends by validating
result blobs in parallel.
Previous behavior would iterate through result blobs sequentially. An
action with hundreds (or thousands) of result blobs to check at 10-20ms
each could easily run into timeouts for the caller.
Really, this is just reusing some of the functionality that already exists in FindMissingCasBlobs().  As a result, this should also improve performance for the local cache lookups since it is using findMissingLocalCAS() to check the local cache in batches.

I've got some tests to fix up in this first

Tests added, should be good to go.

Any thoughts @mostynb? This has made a pretty significant difference in my build environment (bazel-remote + aws s3).

Thanks- merged!

I pushed a couple of minor formatting changes that I didn't want to hold up the this review for.
I don't have a test setup for AWS S3, but if you have tried this out and it looks good I can make a new release.

The s3 stuff has been working fine, for me. I'm going to run one more build through a build off master just to make sure everything is jiving.. will report back in a couple hours.

@mostynb All my testing shows that it's working great! s3 no longer hangs for 2 minutes for the timeout (#531), and the validation performance is great! :shipit:


Release version 1.7.5

Could you please release a new version to npm ?
There is still version 1.7.4 months of commits behind.

@siddharthkp can you please attend to this?


CGlayer about the fps

Hi, thanks for your impressive work. I noticed some question about the code.
Firstly, layer3 gengerate F-fps with 256 points and D-Fps with 256 points. Then, layer3-vote turn the F-fps 256 points into the voted 256 points. right?  In CGlayer, using D-FPs obtain 256 points index which range (0, 512) from F-fps with 256 points and D-Fps with 256 points which total 512 points generated by layer3.  But I see the code "new_xyz = gather_point(vote_ctr, fps_idx)" . this means network will seek 256 points from voted points through  256 points index. However the 256 points index range (0, 512). this is impoeesible. I think it would I don't understand the code. But I can't find the wrong place which I understand.

In my opinions, there are some codes useless and some parameters are useless too. In CG layer, 256 points are considered as center points for ball query. vote_ctr contains the 256 points and fps_idx is from 0 to 255. So by doing new_xyz = gather_points(vote_ctr, fps_ids), 256 points are got and equal to vote_ctr.

but I see the code get the 512 fps_idx for vote points. I don't know what part of the code I misunderstood. Can you help me?

Agree with @kaiopen .
Look at the second row of the picture @JMU-HSF  uploaded, these parameters are used in for loops for 2 times.
In the first time, perform a F-FPS, with input of 256 and output of 256.
In the second time, perform a D-FPS, with input of -1 (=256, the remaining), and output of 0.
Thus the total output of this layer is 256, but not 512.


Fixed sh.st

Hi, I fixed handler for sh.st. Their API has changed a bit. I ran tests and everything is passing.

@martinsik Sorry I didn't see your PR until now. Does this fix still work? I won't have a chance to test it until the weekend. If it's still relevant I'll merge it.

Hi @jkehler, I tested it now and it works fine!

@martinsik great!. Just one last thing before I merge it. Could you please bump the version in unshortenit.init and update the HISTORY.rst. Then I can take care of pushing it directly to PyPi.

Merged and uploaded to Pypi. Thanks.


Possible bug in parametric curve handling inside cmsPipeline?

Hi again,
I'm writing some code to generate an YCbCr ICC profile. For V2, in the YCbCr -> XYZ direction, I need to pack the full transformation in the LUT, as follows:
Demo
#include <lcms2.h>

#include <array>
#include <iostream>

#define RESOLUTION 24

// Source: Tooms (2015), table 11.1, p.192
constexpr cmsCIExyY d65 = {0.3127, 0.3290, 1.0};

// Inverse OETF curve
//
// Source: basic algebra on ITU-R BT.601-7, ss. 2.6.4
constexpr std::array<cmsFloat64Number, 5> rec601ParametersInv = {1.0 / 0.45, 1.0 / 1.099, 0.099 / 1.099, 1.0 / 4.5, 0.081};

// OETF curve
//
// Source: ITU-R BT.601-7, ss. 2.6.4
const std::array<cmsFloat64Number, 7> rec601Parameters = {0.45, 1.099, 0, 4.5, 0.018, -0.099, 0};

void log(cmsContext ctx, unsigned int errorCode, const char *msg)
{
    std::cerr << "context " << ctx << " error: " << errorCode << " (" << msg << ")" << std::endl;
}

cmsInt32Number sample(const cmsUInt16Number In[], cmsUInt16Number Out[], void *cargo)
{
    cmsPipelineEval16(In, Out, reinterpret_cast<cmsPipeline *>(cargo));
    return TRUE;
}

// From the V4 profile above EXTRACT:
// - cmsSigMediaWhitePointTag
// - any of the cmsSigRedTRCTag, cmsSigGreenTRCTag, cmsSigBlueTRCTag
// - cmsSigChromaticAdaptationTag
// and use with the YCbCr profile
cmsHPROFILE createBaseRec709Profile(cmsContext ctx)
{
    // Elle Stone's prequantized sRGB primaries
    const cmsCIExyYTRIPLE sRGBPrimariesPreQuantized = {{0.639998686, 0.330010138, 1.0}, {0.300003784, 0.600003357, 1.0}, {0.150002046, 0.059997204, 1.0}};

    auto toneCurveInv = cmsBuildParametricToneCurve(ctx, 4, rec601ParametersInv.data());
    const std::array<cmsToneCurve *, 3> curves = {toneCurveInv, toneCurveInv, toneCurveInv};

    return cmsCreateRGBProfileTHR(ctx, &d65, &sRGBPrimariesPreQuantized, curves.data());
}

void setupMetadata(cmsContext ctx, cmsHPROFILE profile)
{
    cmsMLU *description = cmsMLUalloc(ctx, 1);
    cmsMLUsetASCII(description, "en", "US", "ITU-R BT.601-7 YCbCr ICC V2 profile");
    cmsWriteTag(profile, cmsSigProfileDescriptionTag, description);
}

int main()
{
    cmsSetLogErrorHandlerTHR(nullptr, log);
    auto ctx = cmsCreateContext(nullptr, nullptr);

    auto baseProfile = createBaseRec709Profile(ctx);
    cmsSaveProfileToFile(baseProfile, "srgb.icc");

    auto yCbrProfile = cmsCreateLab2Profile(&d65);
    setupMetadata(ctx, yCbrProfile);

    // Strict transformation between YCbCr and XYZ
    cmsSetDeviceClass(yCbrProfile, cmsSigColorSpaceClass);
    cmsSetColorSpace(yCbrProfile, cmsSigYCbCrData);
    cmsSetPCS(yCbrProfile, cmsSigXYZData);
    cmsSetHeaderRenderingIntent(yCbrProfile, INTENT_PERCEPTUAL);

    // The YCbCr -> XYZ conversion goes as follows:
    auto yCbrPipeline = cmsPipelineAlloc(ctx, T_CHANNELS(TYPE_YCbCr_16), T_CHANNELS(TYPE_XYZ_16));
    // 0. Dummy curves for the "gamma"-corrected YCbCr.
    auto pipeline1_M = cmsStageAllocToneCurves(ctx, T_CHANNELS(TYPE_YCbCr_16), nullptr);
    // 1. Chrominance channels are [-0.5, 0.5]. Adjust.
    // The offset is pre-applied before the transform.
    const std::array<double, 9> identity = {{1, 0, 0, 0, 1, 0, 0, 0, 1}};
    const std::array<double, 3> offset_ycbcr_to_rgb = {0, -0.5, -0.5};
    auto yCbrOffset = cmsStageAllocMatrix(ctx, T_CHANNELS(TYPE_YCbCr_16), T_CHANNELS(TYPE_YCbCr_16), identity.data(), offset_ycbcr_to_rgb.data());
    // 2. YCbCr -> normalized R'G'B. Source: Wolfram Alpha, inverted matrix.
    const std::array<double, 9> ycbcr_to_rgb = {{0.916602, 1.46156, 0.0287004, 1.04248, -0.744473, -0.358755, 1., 4.93315e-17, 1.772}};
    auto yCbrMatrix = cmsStageAllocMatrix(ctx, T_CHANNELS(TYPE_YCbCr_16), T_CHANNELS(TYPE_RGB_16), ycbcr_to_rgb.data(), NULL);
    // 2. Normalized R'G'B -> linear RGB. Source: ITU-R BT.601-7 ss. 2.6.4
    auto trc = reinterpret_cast<cmsToneCurve *>(cmsReadTag(baseProfile, cmsSigRedTRCTag));
    const std::array<cmsToneCurve *, 3> gamma = {trc, trc, trc};
    auto pipeline1_B = cmsStageAllocToneCurves(ctx, T_CHANNELS(TYPE_RGB_16), gamma.data());
    // 3. Linear RGB -> XYZ.
    const std::array<double, 9> rgb_to_xyz = {{0.4124, 0.3576, 0.1805, 0.2126, 0.7152, 0.0722, 0.0193, 0.1192, 0.9505}};
    auto pipeline1_C = cmsStageAllocMatrix(ctx, T_CHANNELS(TYPE_RGB_16), T_CHANNELS(TYPE_XYZ_16), rgb_to_xyz.data(), nullptr);

    // Assemble the YCbCr -> XYZ pipeline.
    cmsPipelineInsertStage(yCbrPipeline, cmsAT_END, yCbrOffset);
    cmsPipelineInsertStage(yCbrPipeline, cmsAT_END, yCbrMatrix);
    cmsPipelineInsertStage(yCbrPipeline, cmsAT_END, pipeline1_B); // M = OETF
    cmsPipelineInsertStage(yCbrPipeline, cmsAT_END, pipeline1_C); // Matrix = RGB -> XYZ

    auto lut1 = cmsStageAllocCLut16bit(ctx, RESOLUTION, T_CHANNELS(TYPE_YCbCr_16), T_CHANNELS(TYPE_XYZ_16), nullptr);
    cmsStageSampleCLut16bit(lut1, &sample, yCbrPipeline, 0);

    // This LUT is then saved to the profile
    auto p = cmsPipelineAlloc(ctx, T_CHANNELS(TYPE_YCbCr_16), T_CHANNELS(TYPE_XYZ_16));
    cmsPipelineInsertStage(p, cmsAT_END, pipeline1_M); // A = dummy curves
    // The CLUT is needed because AtoB0 in v2 can only pack a CLUT.
    cmsPipelineInsertStage(p, cmsAT_END, lut1);                     // CLUT = YCbr -> XYZ
    cmsPipelineInsertStage(p, cmsAT_END, cmsStageDup(pipeline1_M)); // B = dummy curves
    cmsWriteTag(yCbrProfile, cmsSigAToB0Tag, p);

    // The XYZ -> YCbCr conversion goes as follows:
    auto yCbrPipeline2 = cmsPipelineAlloc(ctx, T_CHANNELS(TYPE_XYZ_16), T_CHANNELS(TYPE_YCbCr_16));
    // 0. Dummy curves for the gamma-uncorrected YCbCr.
    auto pipeline2_M = cmsStageAllocToneCurves(ctx, 3, NULL);
    // 1. XYZ -> Linear RGB.
    const std::array<double, 9> xyz_to_rgb = {{3.2406, -1.5372, -0.4986, -0.9689, 1.8758, 0.0415, 0.0557, -0.2040, 1.0570}};
    auto pipeline2_C = cmsStageAllocMatrix(ctx, T_CHANNELS(TYPE_XYZ_16), T_CHANNELS(TYPE_RGB_16), xyz_to_rgb.data(), NULL);
    // 2. Linear RGB -> Normalized R'G'B. Source: ITU-R BT.601-7, ss. 2.6.4
    auto trcI = cmsBuildParametricToneCurve(ctx, 5, rec601Parameters.data());
    const std::array<cmsToneCurve *, 3> gamma_i = {trcI, trcI, trcI};
    cmsStage *pipeline2_B = cmsStageAllocToneCurves(ctx, 3, gamma_i.data());
    // 3. Normalized R'G'B -> YCbCr. Source: ITU-R BT.601-7, ss. 3.3
    const std::array<double, 9> rgb_to_ycbcr = {
        {0.299, 0.587, 0.114, 0.701 / 1.402, -0.507 / 1.402, -0.114 / 1.402, -0.299 / 1.772, -0.587 / 1.772, 0.886 / 1.772}};
    // 4. Chrominance channels are [-0.5, 0.5]. Adjust.
    // The offset is applied after the transform, so no additional matrix is
    // needed.
    const std::array<double, 3> offset_i = {0, 0.5, 0.5};
    auto pipeline2_Matrix = cmsStageAllocMatrix(ctx, T_CHANNELS(TYPE_RGB_16), T_CHANNELS(TYPE_YCbCr_16), rgb_to_ycbcr.data(), offset_i.data());

    cmsPipelineInsertStage(yCbrPipeline2, cmsAT_END, pipeline2_C); // Matrix = XYZ -> RGB
    cmsPipelineInsertStage(yCbrPipeline2, cmsAT_END, pipeline2_B); // M = OETF^-1
    cmsPipelineInsertStage(yCbrPipeline2, cmsAT_END, pipeline2_Matrix);

    auto lut2 = cmsStageAllocCLut16bit(ctx, RESOLUTION, T_CHANNELS(TYPE_XYZ_16), T_CHANNELS(TYPE_YCbCr_16), NULL);
    cmsStageSampleCLut16bit(lut2, &sample, yCbrPipeline2, 0);

    auto p2 = cmsPipelineAlloc(ctx, T_CHANNELS(TYPE_XYZ_16), T_CHANNELS(TYPE_YCbCr_16));

    cmsPipelineInsertStage(p2, cmsAT_END, pipeline2_M);              // B = dummy
    cmsPipelineInsertStage(p2, cmsAT_END, lut2);                     // CLUT = R'G'B' -> YCbr
    cmsPipelineInsertStage(p2, cmsAT_END, cmsStageDup(pipeline2_M)); // A = dummy
    cmsWriteTag(yCbrProfile, cmsSigBToA0Tag, p2);

    // Bradford transform from D65 (BT.709-6) to D50 (ICC 4.3)
    auto bradford = cmsReadTag(baseProfile, cmsSigChromaticAdaptationTag);
    cmsWriteTag(yCbrProfile, cmsSigChromaticAdaptationTag, bradford);

    if (!cmsMD5computeID(yCbrProfile))
        std::cerr << "Failed MD5 computation" << std::endl;
    if (!cmsSaveProfileToFile(yCbrProfile, "krita_bt601-7_ycbcr_v2.icc"))
        std::cerr << "CANNOT WRITE PROFILE" << std::endl;
}

However, doing so completely breaks the gamut of the profile as viewed in Krita's Color Space Selector. I've narrowed it down to the type 4 parametric curve I use for the linearization step after the YCbCr conversion; if I replace it by another type, e.g. cmsBuildGamma(ctx, 2.2), the problem disappears. This also doesn't occur in V4 profiles, where this step can be stored explicitly in the M curves of the AtoB0 tag.
@mm2 I'm not sure what is going on here, would you take a look?

UPD: I worked around it by replacing the parametric curve by a tabulated version, e.g.
Example
auto trc = [ctx, baseProfile]() {
        auto trc = reinterpret_cast<cmsToneCurve *>(cmsReadTag(baseProfile, cmsSigRedTRCTag));
        std::array<cmsFloat32Number, 1024> test{};
        for (auto i = 0; i < 1024; i++) {
            cmsFloat32Number x = 1.0f/ 1024.0f * (cmsFloat32Number)i;
            test[i] = cmsEvalToneCurveFloat(trc, x);
        }

        return cmsBuildTabulatedToneCurveFloat(ctx, test.size(), test.data());
    }();

I believe this is definitely a bug, though not sure where inside LCMS.

A quite complicated code, I see.  May I ask for a small snippet that demonstrates the issue?
I mean, a number across a parametric curve type 4 that results in something not good.
Thanks

I mean, a number across a parametric curve type 4 that results in something not good.

Based on my workaround, this issue seems to happen only in conjunction with a complete pipeline. I tried keeping only the gamma-RGB-XYZ part and the result's gamut is correct, though.

@mm2 I generated two separate profiles; one with the parametric curve swapped for the tabulated version, the other without. I sampled both pipelines with a 24x24x24 CLUT on both 16bit and floating point.
The first diverging point I found was:
(lldb) fr s 9
frame #9: 0x0000000100003c1e testClut`sample(In=0x00007ffeefbff160, Out=0x00007ffeefbfef60, cargo=0x00007ffeefbff1f0) at test.cpp:19:9
   16       cmsPipelineEvalFloat(In, test, x->b);
   17
   18       if (Out[0] != test[0] || Out[1] != test[1] || Out[2] != test[2])
-> 19           throw std::runtime_error("FAIL!");
   20
   21       return TRUE;
   22   }
(lldb) fr v
(const cmsFloat32Number *) In = 0x00007ffeefbff160
(cmsFloat32Number *) Out = 0x00007ffeefbfef60
(void *) cargo = 0x00007ffeefbff1f0
(pipelines *) x = 0x00007ffeefbff1f0
(cmsFloat32Number [3]) test = ([0] = 0.111345083, [1] = 0.222674906, [2] = 0.0371099412)
(lldb) parray 3 In
(const cmsFloat32Number *) $0 = 0x00007ffeefbff160 {
  (const cmsFloat32Number) [0] = 0
  (const cmsFloat32Number) [1] = 0
  (const cmsFloat32Number) [2] = 0
}
(lldb) parray 3 Out
(cmsFloat32Number *) $1 = 0x00007ffeefbfef60 {
  (cmsFloat32Number) [0] = 0.00772106508
  (cmsFloat32Number) [1] = 0.17367819
  (cmsFloat32Number) [2] = 0
}

YCbCr [0, 0, 0] is mapped to XYZ [0.00772106508, 0.17367819, 0] but XYZ [0.111345083, 0.222674906, 0.0371099412] in the CLUT version.
For 16-bit, the first diverging point is also [0, 0, 0]:
(cmsUInt16Number [3]) test = ([0] = 7297, [1] = 14593, [2] = 2432)
(lldb) parray 3 In
(const cmsUInt16Number *) $0 = 0x00007ffeefbff180 {
  (const cmsUInt16Number) [0] = 0
  (const cmsUInt16Number) [1] = 0
  (const cmsUInt16Number) [2] = 0
}
(lldb) parray 3 Out
(cmsUInt16Number *) $1 = 0x00007ffeefbff080 {
  (cmsUInt16Number) [0] = 506
  (cmsUInt16Number) [1] = 11382
  (cmsUInt16Number) [2] = 0
}

Let me know if you need the complete profile generation code for each instance.

Not sure about which code are debugging. Anyway if you compare 3D LUT interpolation versus a math expression, the results hardly depends on how you build the LUT. Keep in mind LUT's are interpolated linearly (tetrahedral or trilinear) and that means the indexing space should be as much linear as possible and the domain should be as wide as possible. Linear because the output will be linearly interpolated inside the cube of near nodes, and wide domain because you need to use as many nodes as possible. This is the reason of pre and post linearization tables, to provide linear space for 3D LUT.
Example: a function f(x) = 2x -3 works fine in a 3D LUT, a function f(x) = 2x^2 does not because is is not linear, but using a linearization table t(x) =   sqrt(2) works, because f(x) = 2sqrt(x)^2 = 2x

Not further comments so I close the issue

OK let's reopen it


Add 'on_error' argument to 'retry.retry_target' and 'Retry'.

Permit application code to reset / fix-up state before retrying.
See: #3889

This is fine to merge once on_error is passed the exc. Then, @tseaver can use it to make #3889 much simpler.


[Bug] ".ico" files (image/x-icon) not supported

Describe the bug
Files with ".ico" extension aren't supported.
To Reproduce
https://cdn.the-funding-place.unly.org//generic-favicon-default8.ico
Expected behavior
All images-based files should use the default browser behavior: display on the browser.
Please complete the following information about the solution:

[ ] Version: 6.0.0
[ ] Region: eu-west-1
[ ] Was the solution modified from the version published on this repository? No

Screenshots

Additional context
{"status":400,"code":"RequestTypeError","message":"The type of request you are making could not be processed. Please ensure that your original image is of a supported file type (jpg, png, tiff, webp, svg) and that your image request is provided in the correct syntax. Refer to the documentation for additional guidance on forming image requests."}

I believe SIH should only "extend" the native browser functionalities, and as such, should behave exactly the same way as the browser does, for all kinds of files.
It is somehow related to https://github.com/aws-solutions/serverless-image-handler/issues/387, but .ico files are definitely images and should definitely be supported.

This is not supported by the Sharp library which is used by this solution.
This issue has been discussed by Sharp https://github.com/lovell/sharp/issues/1118

Then, I suggest it gets ignored to avoid errors. See https://github.com/aws-solutions/serverless-image-handler/issues/387#issuecomment-1294017273


[BUG]: Node/Edge slot props type checks fail

Discussed in https://github.com/bcakmakoglu/vue-flow/discussions/477

Originally posted by ghiscoding December  5, 2022
It looks like a possible regression in latest v1.5.3 after I upgraded from 1.5.1, in my App it now shows Type error that I didn't have before

If I comment out dragHandle prop then the Type error goes way. But looking at the NodeProps interface, my code seems correct, so I'm not sure why it's complaining now and it's a bit hard to find what's missing with the long TypeScript error. Do I have to change something in my code? It was working find until v1.5.2, anything after is throwing the error shown above
Custom Edge is also complaining of Type errors, it also wasn't before the upgrade
For the Custom Edge, it starts working after I comment out style and markerEnd

oh wait I just got them working after making these 2 optional, to make them the same as the extended EdgeProps interface. I guess I could live with that but is that really intended to be this way? I'm guessing it is, but just want to confirm that is the way to go

The type issues come from extending the props improperly in the custom node / edge, thus no error was made in the slots prop.
Issue therefore closed.


Added default expire argument for url(name, expire) method.

Django filefield.url implemented as storage.url(name), which will fail on oss backend. Added default expire argument for url(name, expire) method to fix it.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Turns out that pull request https://github.com/aliyun/django-oss-storage/pull/10 from @jxltom is a better fix. Closed.


Restore selected item upon return to page

Hi, Artem.
From your documentation:

// edit row by jQueryElement
$("#grid").jsGrid("editItem", $(".specific-row"));

I am wanting to pass selected row from CurrentView to AnotherView for some processing and then, from AnotherView's HttpPost to Controller, I want to redirect back to CurrentView by passing the same row from AnotherView to it. This way, the selected row doesn't jump back to the first row.  User stays on the row he selected before leaving to AnotherView.
The above editItem sounds like a way to do it.
I don't understand the $(".specific-row").  It appears like CSS class notation.  Can you explain how I use this to go directly to a specific row upon loading?
Thanks.

Never mind.  I finally got it!
There's nothing like taking 50 lines of nasty hack that doesn't work and reducing it to 10 lines which do.  :-)

Nothing fancy, it shows that you can pass a jQuery element (or even DOMNode) to start editing row. It depends on the scenario how you want to get this row (specific with css selection or any other way).


Components inside Block do not re-render when state changes

Given the following:
import React from 'react';
import Block from 'react-blocks';

class Test extends React.Component {
  constructor(props) {
    super(props);
    this.state = { message: 'hello (initial)' };
  }

  render() {
    return (

         this.setState({ message: 'hello (modified)'})}>click me

        state outside Block: {this.state.message}
        <Block layout horizontal>
          <Block>state inside Block: {this.state.message}</Block>
        </Block>

    );
  }
}

The initial output is:
state outside Block: hello (initial)
state inside Block: hello (initial)

And after I click the "click me" link:
state outside Block: hello (modified)
state inside Block: hello (initial)

Looks like a bug. If not, then how can I force the contents of Block to re-render when state changes?

I narrowed it down to this the shouldComponentUpdate() method in decorate.js. It looks like it's not going to re-render unless the _media state changes.
Not sure how to fix this, but if I force shouldComponentUpdate to always return true, then my components inside Block re-render on state change properly.

Looks like shouldComponentUpdate() was added to prevent unnecessary state changes for media queries performance.  Except it breaks normal functionality, so just deleting the method fixes things.
I think a better approach would be only setState when the media query changes, but also the feature isn't even documented, it should be removed and put in it's own library for those who want it.

@munro Yes shouldComponentUpdate was added for perf sakes. Think componentWIllUpdate should work. Also it only sets state only when media query changes (Check out https://github.com/whoisandie/react-blocks/blob/master/src/compose.js#L168). Moreover, IMHO i think the media query part should go the the block, instead of it being another standalone library.


spurious: "Warning: Homebrew's bin was not found in your PATH."

echo $PATH
/home/timothee/usr/local/bin:/home/timothee/ubuntu1604/brew//bin: #...

which brew
/home/timothee/ubuntu1604/brew//bin/brew

The following seems wrong:
brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: Homebrew's bin was not found in your PATH.
Consider setting the PATH for example like so
  echo 'export PATH="/katrina/home/timothee/ubuntu1604/brew/bin:$PATH"' >> ~/.zshrc

pwd
~
ls -al ~
lrwxrwxrwx 1 timothee 23 Oct  4 13:20 /home/timothee -> /katrina/home/timothee//

There's two things going on here.

Your home directory is a symlink
You have a double slash // in your path

I would suggest getting rid of the double slash in the symlink like so:
ln -sf /katrina/home/timothee /home/timothee

And adding /katrina/home/timothee/ubuntu1604/brew/bin to your PATH.


Feature/differential loading take2

Update Angular CLI that has the fix
Activate differential loading
I don't know how/why my last thing fixes it but it does.

I don't know how/why my last thing fixes it but it does.

It's not random is it? How many times does it pass in a row?

I don't know how/why my last thing fixes it but it does.

It's not random is it? How many times does it pass in a row?

organization.ts always fails without it. 2/2 pass with it.


Kashmiri Apple Plant Disease Detection

Deep Learning Simplified Repository (Proposing new issue)
:red_circle: Project Title : Kashmiri Apple Plant Disease Detection
:red_circle: Aim : Create a DL model which will identify the Kashmiri Apple Plant Disease.
:red_circle: Dataset : https://www.kaggle.com/datasets/hsmcaju/d-kap
:red_circle: Approach : Try to use 3-4 algorithms to implement the models and compare all the algorithms to find out the best fitted algorithm for the model by checking the accuracy scores. Also do not forget to do a exploratory data analysis before creating any model.

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be four main components.

Images - To store the required images.
Dataset - To store the dataset or, information/source about the dataset.
Model - To store the machine learning model you've created using the dataset.
requirements.txt - This file will contain the required packages/libraries to run the project in other machines.

Inside the Model folder, the README.md file must be filled up properly, with proper visualizations and conclusions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.

:white_check_mark: To be Mentioned while taking the issue :

Full name :
GitHub Profile Link :
Email ID :
Participant ID (if applicable):
Approach for this Project :
What is your participant role? (Mention the Open Source program)

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

Full name : Vandit Tyagi
GitHub Profile Link :https://github.com/vandit98
Email ID<EMAIL_ADDRESS>Participant ID (if applicable):
Approach for this Project :Will try cnn or conv-net to classify the images
What is your participant role? (Mention the Open Source program) Contributer(S.W.O.C 3.0)

I like your approach. I'd recommend to you use atleast 3 different deep learning algorithms for this project, check out the accuracy scores and find out the best fitted model.
Issue assigned to you.


What kinds of extensions can Codeflow run? Any way to sideload?

Describe the bug
I was excited to learn the new Codeflow beta supported extensions, since I was looking for an alternative to running Reflame projects using our VSCode extension in GitHub Codespaces, which is slow and prohibitively expensive for many.
However, when I tried to install the extension through the marketplace, it didn't come up in search. I tried a few more random extensions, and some of them also seemed to be missing. This leads me to believe there's an allowlist of some kind.
A few questions:

Which kinds of VSCode extensions can Codeflow run? Since it's built on WebContainers, my hope is that it can run not just web-compatible extensions, but the whole gamut including those using node-exclusive APIs like the node-based git extension that Reflame currently depends on (the web-compatible git-base extension is missing a bunch of APIs).
Is there a way to test out extensions in Codeflow outside of the current allowlist, say by sideloading them? And after we've tested them out, any way to request them to be added to the allowlist?

Link to the blitz that caused the error
https://stackblitz.com/~/github.com/reflame/example-just-react
Steps to reproduce

Open any project
Go to the extensions tab
Search for Reflame
Find that no results come up

Expected behavior

Reflame extension exists in the list and can be installed

Parity with Local

[X] I have run the project in my local machine and I could not reproduce the issue.

Screenshots
No response
Platform
Version = 1.67.0
Hash = 38afc2533e9f1c1993b0ec404ee8058cfe0e0c99
WebContainer = d01b439520bbf0eaddbcd406fb838a0f8f913e9f

Browser name  = Chrome
Full version  = <IP_ADDRESS>
Major version = 106
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36 Edg/106.0.1370.42
performance.memory = {
  "totalJSHeapSize": 121623627,
  "usedJSHeapSize": 96857651,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}

Additional context
No response

Hey @lewisl9029! Thanks for the issue!
Currently, we don't have an extension marketplace. Since we're early in the process we looked at what was most popular and was most requested by users and manually loaded those extensions. We're definitely interested in pursuing a marketplace of sorts for extensions, but don't have plans in that direction yet.
In regards, to running extensions for development purposes in CodeFlow - you can definitely do that!
Here is a repo where I actually sideload and symlink-ed a very basic extension: pr.new/https://github.com/HeyGarrison/codeflow-extension
The main logic behind the extension's setup is that all of the extensions are located in the .codeflow folder. See the symlink command here: https://github.com/HeyGarrison/codeflow-extension/blob/b30a2a700e14e9827ec8f37c0d40901bc82eb09a/package.json#L71
I'm not super sure if your extension can be developed in StackBlitz, but this should at least get you going in the right direction.

@HeyGarrison thank you so much for the example repo! Definitely puts me on the right track. Will explore further and get back to you if I run into any further blockers.

hi @HeyGarrison! i'm looking to sideload an extension too. i've created a working vscode extension, and now trying to sideload it in codeflow.
my plan was to checkout the git repo of the extension, install & build it directly in the .codeflow/extensions folder. it works fine but the IDE doesn't seem to pick it.
how do you force-sideload the new extension? is there some refresh command i dont see?

Hi @y-nk ,
Once you've symlinked your extension, you can go to the extension panel, click on the refresh icon (see screenshot). This will allow you to look for your extension and then you can enable it.

Hope this helps!

@KwintenP after a couple of debugging it worked (mostly the extensionKind needed to be set, and the engine.vscode should be 1.57.0 so that codeflow allows installation)
sadly now i'm stuck again because my extension uses a too recent version of git (2.37 expected, 2.32.0 installed) so it breaks at activation (i should probably handle that in some way later on tho 🤔)

Oh thats awesome! Great work!
The git cli we use is a custom written one. So it doesn't use the native one you have on local. Which also means that we can't just update the version.
 Are there any specific commands that you use that you'd need to be available? If so, we could potentially look into providing them.

@KwintenP i think i could eventually write the same commands differently, but for the sake of being elegant i'm using git branch --contains which seems to break in codeflow. since i can't pass this step i'm not sure of others, although it's the only one which seems rather "modern"


I have some issues and doubts

Issues:

After successful connection between two user, i get the warning in server terminal that " channel congestion detected, updating channel capacity " and then connection gets poor.
When any user start screen sharing the quality suddenly started decreasing.

My doubts:
1.How can i set expiration of token using node js.
2.Can you please tell me the server requirement for 10,000 user at a time(both video audio).

Hi @GRNHACKER,

channel congestion detected is our congestion controller at work. this is when a participant's downstream bandwidth is limited.
I'm not sure what you mean, if you are talking about example app, that's because adaptive streaming is in play. When enabled, adaptive stream automatically adjusts resolution to match the size of the UI element

For information about access tokens, please refer to the docs


Add arm64 capability to the docker image + automated uploads

Thanks! I actually managed to merge this accidentally and I'm going to tweak it a little but thanks for the contribution!


feat(Category): added category modal window

Close #80
Close #61

Out of curiosity, why did you replace graphql-code-generator with apollo's generator?

Out of curiosity, why did you replace graphql-code-generator with apollo's generator?

We are already using apollo, so why not🤗

Can we merge this now?

Can we merge this now?

Yes, I finish with that


Fix fmemopen emulation issue

Thanks to your fix, and with this change the majority of tests now pass.  I am still hitting a JVM crash that I am trying to track down, but hopefully this will allow you to do more.

Coverage remained the same at 38.472% when pulling 60f9ec0fc2d5d6ae6391dac2cd4c85c2b33fc064 on boumenot:pr-wapiti-win-x64 into c40da163c8f664f18c92faf94586d2016ebb094d on kermitt2:master.

I found the last crash, and all of the tests are finally passing.  Give this version a spin, and let me know if it works for you.
Results :

Tests run: 6, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] grobid-parent ...................................... SUCCESS [  0.006 s]
[INFO] grobid-home ........................................ SUCCESS [  1.813 s]
[INFO] grobid-core ........................................ SUCCESS [03:12 min]
[INFO] grobid-trainer ..................................... SUCCESS [  0.664 s]
[INFO] grobid-service ..................................... SUCCESS [ 48.104 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 04:03 min
[INFO] Finished at: 2016-09-22T22:27:46-07:00
[INFO] Final Memory: 10M/154M
[INFO] ------------------------------------------------------------------------

Coverage remained the same at 38.472% when pulling e1c1a7ff6bd4f99ab97798cfc4396c725461d17c on boumenot:pr-wapiti-win-x64 into c40da163c8f664f18c92faf94586d2016ebb094d on kermitt2:master.

It works! 👍

I've tested the batch mode and didn't have technical problems. 👍
Great job @boumenot  :)

w00t!


Batch processing from FS file lister node

Hi,
It would be great if that node would work with simply file name as input without the UI widget. I have tens of CSV files each 200 MB in length I need to process to extract some data from each file. Now I need to manually choose file by file using UI widget.

Hello,
I believe that would require making a node that reads from a list of local files with back-pressure mechanism.
Are the files on the same machine than where your Node-RED instance runs?

Yes. they are in that case. For the file size of 200 MB I actually managed to feed your node with standard file-in node set as buffer and then while processing your node properly releases lines on msg.ticks. So if the file is on that scale the issue can be closed:-). However going forward I would love to directly process Azure blob files - but for that I guess I need to write my own....

@MateRadz Do you by any chance use PostgreSQL? If yes, I have just made a new related node that supports back-pressure for reading and writing large datasets in Postgres. Feedback welcome there https://github.com/alexandrainst/node-red-contrib-postgresql :-)


Dir vs regular file detection

It seems list assumes a file is a directory if it doesn't have an extension.
https://xyz-ratcfalrqb.now.sh/
In this case file is a regular file containing text HELLO. The proper way of checking the file type is to use one of the stat functions: https://nodejs.org/api/fs.html#fs_fs_stat_path_callback

I just submitted a PR to fix this 😃

https://github.com/zeit/list/pull/43


Bootstrap not included in create/delete/details/edit/index web pages

My create/delete/details/edit/index web pages don't include bootstrap so they look quite different form the picture on this page. Did I have to do something, such as include a layout page?

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

ID: 6719f08e-3bd7-dc1a-71df-f2ef9fbca9d8
Version Independent ID: 7096fdb3-612e-9e00-bd0b-8ea4886a09ce
Content: Add a model to a Razor Pages app in ASP.NET Core
Content Source: aspnetcore/tutorials/razor-pages/model.md
Product: aspnet-core
Technology: aspnetcore-tutorials
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

Look in wwwroot\lib\bootstrap\dist\css\bootstrap.css

Allow me to re-phrase.
My web page doesn't look like the example provided. I looked at the web page and saw this:
Index

Create New

                Title

                ReleaseDate

                Genre

                Price

In other words, the web page generated doesn't have all the other HTML codfe of the other pages. No doctype, no link to bootstrap.min.css, etc …
It doesn't look like the example you provided because it lacks the HTML to make it look like your example.

The tutorial works. I'm not sure what step you missed. You might try asking on StackOverflow,.

You're missing the layout.

Yes. I am missing the layout. I am also missing a Shared directory with two files: _Layout.cshtml and _ValidationScriptsPartial.cshtml

I'd start over and compare to the completed app.

The Index view is using the correct layout.

@Rick-Anderson, it is not clear to me where this one is at.  You reopened it so I'm thinking you found something that needs to be corrected, but it is not clear what that is.


for updating the ansible version to 2.9

@cs-zhang can you please review code change for ansible version?

/cherry-pick release-4.9

/cherry-pick release-4.8

/cherry-pick release-4.6

/cherry-pick release-4.9

@cs-zhang we need to ensure the commit is signed and proper commit message is provided with linked issue# before giving final lgtm. New contributors needs to follow contributing guidelines and read COC/DCO while creating any request.


@deprecated directive not supported for input field

GraphQL-Faker throws an error when running on a schema that contains a @deprecated directive on an input field. However that is now supported by the graphql-spec, see: https://github.com/graphql/graphql-spec/pull/805
Logs:
graphql-faker            |
graphql-faker            | Your schema constains 2 validation errors:
graphql-faker            |
graphql-faker            | Directive "deprecated" may not be used on INPUT_FIELD_DEFINITION.
graphql-faker            |
graphql-faker            | schema.sdl:261:19
graphql-faker            | 260 |   description: description_String_maxLength_2200
graphql-faker            | 261 |   active: Boolean @deprecated(reason: "this field will soon be replaced by the status field")
graphql-faker            |     |                   ^
graphql-faker            | 262 |   draft: Boolean @deprecated(reason: "this field will soon be replaced by the status field")
graphql-faker            |
graphql-faker            |
graphql-faker            | Directive "deprecated" may not be used on INPUT_FIELD_DEFINITION.
graphql-faker            |
graphql-faker            | schema.sdl:262:18
graphql-faker            | 261 |   active: Boolean @deprecated(reason: "this field will soon be replaced by the status field")
graphql-faker            | 262 |   draft: Boolean @deprecated(reason: "this field will soon be replaced by the status field")
graphql-faker            |     |                  ^
graphql-faker            | 263 |   expiresAt: String
graphql-faker            |

The directive declared for faker are only the one related to faker i.e.
directive @fake(
    type: fake__Types!
    options: fake__options = {}
    locale: fake__Locale
) on FIELD_DEFINITION | SCALAR
directive @listLength(min: Int!, max: Int!) on FIELD_DEFINITION
scalar examples__JSON
directive @examples(values: [examples__JSON]!) on FIELD_DEFINITION | SCALAR

Therefore, to support the @deprecated directive, try adding the following definition somewhere in your schema
directive @deprecated(
  reason: String = "No longer supported"
) on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE

I run into the same problem. I've tried @Xample solution but it gives me following error:  Directive "deprecated" already exists in the schema. It cannot be redefined.. Worth pointing that this directive is not declared anywhere else. I've put the declaration as the first thing is the schema file. Any workaround?

Check carefully the included files, you might be importing both a source and a generated .GraphQL file which leads to this duplicated directive error.


Babel and others should be in devDependencies or not?

I am curious to know why we keep the following dependencies in dependencies, not devDependencies ?
"dependencies": {
    "babel-core": "^6.17.0",
    "babel-loader": "^6.2.5",
    "babel-plugin-transform-runtime": "^6.15.0",
    "babel-preset-es2015": "^6.14.0",
    "babel-preset-react": "^6.11.1",
    "babel-preset-stage-0": "^6.3.13",
    "babel-runtime": "^6.11.6",
    "better-npm-run": "0.0.13",
    "compression": "^1.6.2",
    "css-loader": "^0.26.0",
    "postcss-loader": "^1.1.0",
    "webpack": "^1.12.14",

and more...

I agree, but ultimately it became a moot point and moving them to dependencies solved issues for some inexperienced heroku users. See https://github.com/davezuko/react-redux-starter-kit/issues/1122.


Build duktape cleanup - v2

Changes

v2 - (since: #538)

integrated patch: "build: make sure we have Makefile.gen before actually building";
dependency-resolver will always resolve filesystem files with abs path;
fix issues in Makefile.rules on handling:

out-of-tree objects with absolute path;
in-tree objects with absolute path;

added patch: "duktape: change the submodule settings to use mirror";
added patch: "git-init-submodule: get rid of it";

Rationale
This series does:

remove the submodule initialization from build system;
avoid failing if duktape is not present - we simply disable it;
add a mechanism to provide DUKTAPE_SRC variable so we can do external duktape clones and use it from there - this is a distro building requirement, namely clear linux;

Besides the feature set of changes the series also brings a patch to fix an -gen.h installation bug;

ack

applied


Contributors Table Update in README.md

Issue: #58

Do add DWOC and Level-x label before merging.
Below is the screenshot after the change:

Do add DWOC and Level-x label before merging.
Below is the screenshot after the change:


Implement format_speak_tags from neon_utils

    def test_format_speak_tags_with_speech(self):
        valid_output = "<speak>Speak This.</speak>"
        no_tags = format_speak_tags("Speak This.")
        self.assertEqual(no_tags, valid_output)

        leading_only = format_speak_tags("<speak>Speak This.")
        self.assertEqual(leading_only, valid_output)

        leading_with_exclusion = format_speak_tags("Nope.<speak>Speak This.")
        self.assertEqual(leading_with_exclusion, valid_output)

        trailing_only = format_speak_tags("Speak This.</speak>")
        self.assertEqual(trailing_only, valid_output)

        trailing_with_exclusion = format_speak_tags("Speak This.</speak> But not this.")
        self.assertEqual(trailing_with_exclusion, valid_output)

        tagged = format_speak_tags("<speak>Speak This.</speak>")
        self.assertEqual(tagged, valid_output)

        tagged_with_exclusion = format_speak_tags("Don't<speak>Speak This.</speak>But Not this.")
        self.assertEqual(tagged_with_exclusion, valid_output)

    def test_format_speak_tags_empty(self):
        leading_closure = format_speak_tags("</speak>hello.")
        self.assertFalse(leading_closure)

        trailing_open = format_speak_tags("hello.<speak>")
        self.assertFalse(trailing_open)

    def test_format_speak_tags_with_speech_no_tags(self):
        valid_output = "Speak This."
        no_tags = format_speak_tags("Speak This.", False)
        self.assertEqual(no_tags, valid_output)

        leading_only = format_speak_tags("<speak>Speak This.", False)
        self.assertEqual(leading_only, valid_output)

        leading_with_exclusion = format_speak_tags("Nope.<speak>Speak This.", False)
        self.assertEqual(leading_with_exclusion, valid_output)

        trailing_only = format_speak_tags("Speak This.</speak>", False)
        self.assertEqual(trailing_only, valid_output)

        trailing_with_exclusion = format_speak_tags("Speak This.</speak> But not this.", False)
        self.assertEqual(trailing_with_exclusion, valid_output)

        tagged = format_speak_tags("<speak>Speak This.</speak>", False)
        self.assertEqual(tagged, valid_output)

        tagged_with_exclusion = format_speak_tags("Don't<speak>Speak This.</speak>But Not this.", False)
        self.assertEqual(tagged_with_exclusion, valid_output)