"not for direct annotation" flags required

GO:0051234    establishment of localization (no point if you do not know what is being localized)
GO:0110165    cellular anatomical entity (no point if you do not know the entity)
GO:0036211    protein modification process  (MF in BP)
GO:0043227    membrane-bounded organelle  (no point if you do not know the organelle)
GO:0006996    organelle organization (no point if you do not know the organelle)
GO:0022607    cellular component assembly (no point if you do not know the component, and many of these annotations are misleading anyways)
More than this,  for these examples I did not agree with the annotations that the high-level terms were derived from, otherwise descendants would be annotated, so the inferences are most likely incorrect anyways)

GO:0043231 	intracellular membrane-bounded organelle
(note this one is also used by PAINT), and I can't work out what the membrane-bounded organelle referred to is in all cases (for example one is a plasma membrane protein)

PAINT issue reported in https://github.com/geneontology/go-annotation/issues/4400

@ValWood
Can protein modification process still be used for phenotypes? The children which are mF I will fix but this term itself?

Hi @pfey03  currently there are only 38 direct annotations to "protein modification process", only 15 IMP and none for Dicty?
I don't know if the term will survive long term, but probably it will since some modifications a (like ubiquitination, SUMOylation) are multistep
v

Hi @pfey03
What would be the definition of "GO:0036211 protein modification process "?  Generally I think this corresponds to either protein maturation (glycosylation), or to signaling (other PTMs). Are there other cases for which 'protein modification process' would be needed? It does sound very vague, it's hard to argue it's a 'coordinated process'.
Thanks, Pascale

Phenotypes are different. I fixed all in GO but we annotate phenotypes for ages and I have so many strains to this term annotated. It's a pain with phenotypes fixing with all these GO changes.

Isn't the best  solution to put the obsoleted terms into a mini ontology at UPHENO until they can be handled ( @cmungall suggested (it shouldn't be necessary to fix annotations, it's only the logical definitions in the uPHENO design patterns that need fixing).
We were discussing these modification terms at PomBase today  (we have over 100's of terms and >1000 annotations using GO modification defined phenotypes). Modification phenotypes should  be possible to define logically using PRO provided they have the necessary grouping terms for the modifications
(note that in GO these terms did not have logical definitions, - if you follow the logical def through you just get abnormal GO:blah with no equivalence axioms- so this is really just a form of outsourcing which would need to be dealt with eventually)

Well I don't think there will be some UPHENO ontology for these. Like in cell death they will add a PATO term that is good for all and then it  can be solved in different patterns. I have already changed 275 phenotypes by now with all the MF BP going. It is bottomless. But the 30 strains with protein modification will take me another week just doing that. I've been for weeks on updating phenotypes with current good GO, a few for chemorepellent Pascale added 2 new terms I could use for all these. Maybe protein modification I will have to delete quite some as there is no better term.

@cmungall  is there a way to address this? I think I'm missing something, but I haven't needed to delete a single  phenotype annotation, even though we use GO in logical definitions throughout and have 1000's of annotations to these modification and cell death terms. Couldn't the terms we obsolete move into some temporary ontology until the  uPHENO group can manage the changes by finding an appropriate logical definition? The annotations shouldn't need updating at all,  just migrating? I'm stressing that people are losing good phenotype annotation even though this process is an absolutely necessary GO clean-up exercise. Also of note, I don't think a single one of these terms had a GO logical definition (otherwise uPHENO could use possibly use these logical defs directly (kim's suggestion). Many of us have been guilty of punting the problem of logically defining some phenotypes to GO....

I'm even getting done today with my strains


[coreaudio] enumerate.rs example shows "Built-in Mic input" supports 44.1khz but only works at 48khz

This can be tested by checking the output of the enumerate.rs example and then changing the record_wav.rs example to use a sample rate of 44_100. Curiously neither the event loop or stream return any errors indicating why - the event loop callback simply never gets called.

It seems that this is due to a mismatch between the sample rate set for the device and the sample rate set for the audio unit. I've managed to fix this by setting the device sample rate during build_input_stream if it differs from the target sample rate. However, I still need to add a check for the condition where there's another existing audio unit already using the audio device at the existing sample rate. I'll likely submit a PR with a fix for this tomorrow.


Adaptive Card Outgoing Webhook Support

The article talks about adaptive cards as not being supported in Connectors, and being supported in incoming webhooks. It would be good if it clarified whether they were supported in outgoing webhooks.

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

ID: adcfd49d-0d36-b19a-2857-395289f1c6c2
Version Independent ID: 464b2cd8-0cd7-dd52-aef6-47e040c89c8d
Content: Introducing cards - Teams
Content Source: msteams-platform/task-modules-and-cards/what-are-cards.md
Product: msteams
GitHub Login: @laujan
Microsoft Alias: lajanuar

Currently adaptive cards in webhooks is in public developer preview program.


link to npm and action to publish

could you add a link to the npm package, either in the readme or as a url for the repository which you can find under settings
also you could add an action to automatically publish new npm versions see my example. You'll need to go into settings > secrets > npm and add your publisher ci token from npm.

@ryanrosello-og

@lastlink  good idea,  I will look into this.


Added conference information from new config settings

One of the first things regular speakers look for on CFP page is the conference date and location. This PR replaces the text "For More Information About The Conference" with the text "GeeHCon is on 26/10/2014 to 31/10/2014 in Swansea, UK".
This only happens if the two new config values that are added are present, and so is backwards compatible.
The new config values are:
event_location - the location of the event in string format
date_format - a Twig date() filter compatible string to format the event dates

Hey @GeeH! I'm presuming this is not troll, but I'm getting some strong "boy who cried wolf" vibes. :smile:
Looks like a good addition. What do you think about making the default location ~ (nil) such that the feature is not enabled by default. Folks can enable it when they configure their instance for the first time.
Introducing configurable representation of dates is good as well. I think we should create an issue forward from this request to apply that filter to other dates as well as standardize the configuration file's date/time expectations.
Small things:

[ ] The testing configuration schema should be updated to reflect this change.

Yes, believe it or not this isn't a troll :smile:
I've updated PR as you suggested.

With regards to the defaults, I just copied the existing rules, for example the airport code defaults to MIA, and the start/end dates have data in them.

Thanks @GeeH!


try to add pekko support

relates to #1103
more work needed

Any reason why you closed this PR? I am thinking about picking this up soon-ish.

@ptrdom feel free to open a new PR and you can use this branch as a starting point if that helps.


Request Payment button does not show up

Using the official demo https://stripe-payments-demo.appspot.com the Pay request button does not show up on safari :

I've tested on safari-12 on osX-10.14 and also safari-11 on osX-10.13
Is it a stripev3.js known bug ?
Thanks for your help

It is also not showing up on latest Chrome Canary release (v71):

Hi @jenan-stripe and thank you for the quick reply.
By reading https://support.apple.com/en-us/HT204506 I think I know get the point : in order to pay on Safari, we need to have:

a Touch ID capable device (like iPhone or macbook pro...)
To be able to add a card on apple pay:

I was missing the point because I though I could use a basic credit card setup in my Safari preferences:

I think you may add some clarifications on your docs https://stripe.com/docs/stripe-js/elements/payment-request-button#testing because the feature is not only browser dependent but also rely on device capabilities (if it has touch ID or not) + having a pay account correctly set up.
Thanks again for your answer.

I believe this may be an issue only affecting chrome for Mac. I have saved payment methods on my google account, but do not have Apple Pay setup/enabled. Here are my results to back up the claim this is only affecting chrome for Mac.

Chrome (70) for Mac: ❌
Chrome (71) for Mac: ❌
Chrome (70) for Android ✅
Chrome (70) for Linux (Pop_OS): ✅

@tedlin182 How did you add a test card to your google account without it refusing to accept it?

From my testing, currently on macOS Chrome:

Google Pay works in https://paydemo.withgoogle.com/, but not by using Stripe's Payment Request Button.
If you've added testing cards to Chrome on macOS, Stripe's button still shows up and let you use those cards to pay. You can do this in Chrome's settings.

Can we re-open this issue? I'm experiencing it on Chrome Version 71.0.3578.98 (Official Build) (64-bit), Ubuntu 18.04.
Notice a saved card on Chrome - yet no "Pay with saved card" button on the stripe example.

The solution of adding a test stripe card "4242 4242 4242 4242" to my saved cards worked, and actually allowed me to choose my other "hidden card".
Note that adding a name to my other saved card allowed it to be displayed without having the test card saved.
Not sure if this is a bug or a feature!

first of all, thank you @scottwilson312 you saved my time.
also i faced another issue - payment request doesn't work if you are using the 1password extension even if you have the saved cards and the "4242" card.
Latest chrome, win10

Google Pay / Buy Now Button Not Showing Up (Windows 10 on Chrome)
I just tested this out on Mac OS High Sierra 10.13.6 on Chrome 73.0.3683.86 and it works. (You can choose from your Credit Cards saved within Chrome)
On Windows 10, Chrome 73.0.3683.103, Google Pay only works with the 4242 test card added to Chrome. It looks like the plugin is on 'developer' mode for Windows 10 on Chrome.
@thorsten-stripe @jenan-stripe I don't mean to bug, but is this being worked on or looked into? Cheers!

When I select choose payment method, non of my actual working payment methods show up:

I have 2 other payment methods saved in Chrome that did not show up in the above screen but show up in Chrome settings:

So apparently, I had a bunch of credit cards saved in Google Pay from Android or directly on Google, but it for some reason does not count as cards that can be accessed from the Buy Now button (or saved within the Chrome Browser directly).
Is there any way to activate that buy now button or to make it show up even if a user does not have any cards saved in their Chrome browser? The use case is that the Chrome browser already likely has their address information auto-filled even if their credit card details are not. The UI on Chrome/Google Pay is more slick that a standard checkout form.
Thanks <3

If a payment method is saved within the Chrome browser directly the pay now button appears.  If it is saved in Google Pay the pay now button does not appear.  Not sure why this is but just wanted to add that.

Any solution for this issue? Facing it here also.

Did anyone had the problem that the "Done" Button does not work?
I had to add an address to my Stripe Testing Card but nothing happens after clicking the button.

In what countries do you face the issue as described by kyleabens.?
I have the issue in Germany.

I have it in Belgium

I have this issue in the UK (MacOS 10.14.4, Chrome 78.0.3904.108)
Also have not been able to get the test card numbers into Google pay

Faced same issue and finally solved it. Looks like it depends on country in you google payment profile.
So my solution is:

Open https://pay.google.com/gp/w/u/0/home/settings
Tap on edit icon on Country/Region row.
Add fake profile with US as country, it OK to use any random address and phone
It's impossible to add test stripe card from here, so
Open chrome://settings/payments and add card like 4242 4242 4242 4242 from here.
Now open https://stripe-payments-demo.appspot.com/ again and check if you can see Pay Now button.

We were having the same issue. It was working on Android devices, but not on Chrome on Mac or Chrome on iOS. This is what we've found so far:

Android devices or Chrome on Linux don't seem to let you add the test card 4242 4242 4242 4242 - so you need to add a real card to test.
Chrome on MacOS does though - and the Payment Request button only shows up on Chrome on Mac (at least when using Stripe in test mode) when you have a test card added.
Apply Pay still doesn't seem to show up on iOS in test mode. Haven't tested live mode.

Hope the above helps.

I was having this problem in Chrome on Windows 10. The Payment Request button appeared fine on my android device, but wouldn't appear on desktop, even though I have a card added in my payment methods. What got it working for me was to add a card in the brower directly (not tied to Google Pay). So I actually had the same card twice. One manually added inside chrome desktop, and the same card is listed again, but with a 'google pay' designation. Once I added the card directly in the browser, it started appearing.
A bug for sure, because shouldn't a card that's in your Google pay (and is already showing in your google account in the desktop browser) qualify as a valid payment method to display the Payment Request Button? Regardless, adding a duplicate card through the desktop chrome app fixed the issue for me and allows me to test my application.

I was having this problem in Chrome on Windows 10. The Payment Request button appeared fine on my android device, but wouldn't appear on desktop, even though I have a card added in my payment methods. What got it working for me was to add a card in the brower directly (not tied to Google Pay). So I actually had the same card twice. One manually added inside chrome desktop, and the same card is listed again, but with a 'google pay' designation. Once I added the card directly in the browser, it started appearing.
A bug for sure, because shouldn't a card that's in your Google pay (and is already showing in your google account in the desktop browser) qualify as a valid payment method to display the Payment Request Button? Regardless, adding a duplicate card through the desktop chrome app fixed the issue for me and allows me to test my application.

On Mac Chrome, you need to have at least one card saved to your browser, for the Payment Request Button to show up. If you only have Google Pay cards, then the button does not show up. I may do a manual integration to fix this, as this has been an unresolved issue for 1.5 years.

Just to clarify why the Request Payment button doesn't show up for "Google Pay" on mobile/web browsers. Stripe's Payment Request Button only checks to see if the browser has saved payment cards.

Stripe.js checks if the browser has an enrolled instrument using hasEnrolledInstrument(), for either basic cards or for Google Pay. The problem is that the PaymentRequest API implementation in Chrome has limitations:

For a card to be usable through PR API, the saved card needs to contain some info (e.g. card holder name, future expiration date). See https://chromestatus.com/feature/5532279906500608
For Google Pay, the payment handler needs to been already installed. Unfortunately this doesn't happen automatically and the user first needs to have used Google Pay once before with the PaymentRequest API (with an integration that allowed the use of Google Pay without checking if it was ready). The fact that Chrome shows Google Pay cards in the saved payment methods of the browser is misleading as the browser does not make those cards available by default.

If you want to test this, Stripe.js basically does the same check as https://rsolomakhin.github.io/pr/pwg/ but doesn't show the button if no instruments are enrolled.

@hofman-stripe Sorry to ping you personally but I wanted to clarify something you talked about in the comment above. I've got the Google Pay app set up on my android 10 phone, one credit card added. I have no credit cards set up in Chrome.

If you want to test this, Stripe.js basically does the same check as https://rsolomakhin.github.io/pr/pwg/ but doesn't show the button if no instruments are enrolled.

I went to the site https://rsolomakhin.github.io/pr/pwg/ in my chrome os browser, hit the buy button and was prompted with a GPay with my credit card details. :heavy_check_mark:
Then I went to the stripe-demo site, but I didn't see a "Pay Now" button. I presume this is because the demo site doesn't query Stripe with the same options as the rsolomakhin site does here.
I'm presuming that if I made the same call as rsolomakhin with the same parameters (and my own keys of course) I'd be able to determine whether google pay was a supported payment method, and
from there complete the rest of the transaction using Google Pay through Stripe.
Is my understanding correct?

@juddey there are 2 things:

On Chrome Android, the browser PaymentRequest API lies, and always answers true to hasEntrolledInstrument for Google Pay, which means if Google Pay is available (canMakePayment), then we would show the payment button even if no card is configured in Google Pay. The enrolled instrument check is only meaningful on desktop.
The above is true in normal times. However Chrome Android 83 shipped with a crippling bug, and Google Pay transactions would never complete. See https://bugs.chromium.org/p/chromium/issues/detail?id=1090986. On June 3rd we completely disabled Google Pay (all versions, both desktop and mobile) as a workaround. Today we re-enabled Google Pay, except for impacted Chrome Android version, aka Chrome 83 if lower than 83.0.4103.100. Google rollout is very slow, so you probably don't have an up to date version yet, which is why you don't see a "Pay Now" button. If you switch to "Desktop Site" you will see the button, but you won't be able to complete a payment.

Also, Chrome implements rate limiting for payment method querying so you should not query hasEnrolledInstrument yourself and let Stripe.js do it. If Stripe.js gets rate limited for some reason, it will always show the button, even if no payment method is available, resulting is low conversion from the button.

Thank you for your speedy answer @hofman-stripe, and your explanation.  I wont hold my breath for a browser update though. :smile:

I am in a situation where neither the 'G Pay' button or the more generic 'Pay Now' button of stripes design show up...anywhere...not in my web app ( Gatsby + Netlify ) and not in any of stripes demos of either checkout or elements. The 'Apple Pay' button shows up and works great in safari on iPhone, iPad and MacBook Pro and Air. I have quintuple checked that i have payment information saved in Chrome 83 for macOS, and it all looks good, and I have seen the 'G Pay' button pop up on other sites, but not for anything that stripe seems to make. Just curious why this might be and if there is anything that i might be able to do about it...

@rchrdnsh have you checked that the payment methods saved in Chrome have billing info associated to them? Or that the Google Pay Payment Handler is actually installed? As I mentioned in my earlier comment, Stripe.js not only checks that the browser supports those PaymentRequest methods, but that they actually have available instruments as well.

Billing info? Check! XD
PaymentHandler? How do I do that? Tried to google that and it looks like it's an API, not a plugin to be installed in Chrome:
https://developers.google.com/web/updates/2018/06/payment-handler-api
According to the google dev docs my google pay seems to be working just fine when not a stripe implementation:

...so i don't know...G Pay seems to work for me in chrome with all my payment and billing info correct on sites that support it, except when stripe is involved (my site, stripe examples, etc...). I'm using the PaymentRequestButtonElement to implement on my site, and apple pay works great, just not any of the other quick pay options.
Here is my code, basically copied directly from the stripe docs. Please let me know if I am missing something:
useEffect(() => {
    if (stripe && paymentRequest === null) {
      const pr = stripe.paymentRequest({
        country: 'US',
        currency: 'usd',
        total: {
          label: 'Donation Amount',
          amount: amount,
        },
        requestPayerName: true,
        requestPayerEmail: true,
      })
      pr.canMakePayment().then((result) => {
        if (result) {
          setPaymentRequest(pr)
        }
      })
    }
  }, [stripe, paymentRequest])

  useEffect(() => {
    if (paymentRequest) {
      paymentRequest.update({
        total: {
          label: 'Donation Amount',
          amount: amount,
        },
      })
    }
  }, [amount, paymentRequest])

...and thank you for your time and effort! XD

Sorry, let me take a step back. There is nothing you can do on your end when integrating the Stripe Payment Request to force the button to be shown or not. I was trying to explain why the button may or may not show in Chrome.
Stripe Elements currently integrates with Google Pay through the browser PaymentRequest API, not the Google Pay SDK. If you see a branded Google Pay button on a website, it's likely a Google Pay SDK integration, not using the browser PaymentRequest API.
Stripe checks if the browser is ready to pay with either a saved card or Google Pay, and uses the browser PaymentRequest API to check if either instrument is enrolled. The check is basically equivalent to the one done in this page. If it says "Has enrolled Instrument" then the button should show. If it says "Has enrolled instrument" there but the Stripe button doesn't show on your page, then we need to investigate further.
If you, for testing in your local browser, want to force the browser based Google Pay Payment Handler to be installed, you can visit https://rsolomakhin.github.io/pr/gp2/ and click "Buy". Currently Chrome doesn't install a Payment Handler unless it's the only payment method configured in the PaymentRequest API call, which is not the case with most integrations, including Stripe's, since we support both Google Pay and basic-card.
Long story short, the browser PaymentRequest API is finicky, we try to shield you from some of the complications, but there are still issues, which translates into e.g. the button not showing in some environments. We're working with Google and Standards Groups to improve the API and the payment experience they provide, so things should get better over time.

ooh! I don't remember doing anything different but the 'pay now' button just showed up for me! This makes me very happy!
...again, however, dunno what i did or if i did anything, but it seems to be working now...will test with other browsers now. Here's a screenshot with the 'Pay Now' button showing up in a dialog box when I click into the cardNumberElement field:

it's showing up now on stripes example as well:

no idea what's different, tho...quite perplexed...🤔

You probably visited a page, like https://rsolomakhin.github.io/pr/gp2/, which forced the Google Pay Payment Handler to install. Once it's there, it stays available (unless you manually uninstall the associated service worker in the chrome internals page)

AHA! I know what happened! Chrome updated to Version 84! They seemed to have fixed something on their end, then, it would seem. ok, things are starting to make more sense, this is good. And thank you @hofman-stripe for your detailed explanation, as that helps quite a bit...maybe adding something like that in the docs would be nice as well...
I also want to officially vote for OFFICIAL 'G Pay', Samsung Pay', 'Ali Pay', 'Microsoft Pay' etc... integration for the PaymentRequestButtonElement in the future, as that would be amazing to see :-)

hmmmm...i also did go to that other page as well...any way to install the google pay payment handler on my site? If it wasn't the upgrade to chrome 84 that did it?

officially vote for OFFICIAL 'G Pay', Samsung Pay', 'Ali Pay', 'Microsoft Pay' etc... integration for the PaymentRequestButtonElement in the future

Microsoft Pay, and I believe Samsung Pay are both "branded" versions of basic card. It's already supported in those browsers through a simple PaymentRequest, but there will never be a separate branded button. A direct Google Pay integration might be possible. AliPay doesn't have any browser PaymentRequest support as far as I know, and I'm not sure if they have an SDK to integrate with, however you can support AliPay today with Sources (on the demo site, choose China as a country).
For those wallets that do not integrate with the browser PaymentRequest API, it becomes tricky since a single button wouldn't work anymore: there would be no way to seamlessly let the customer choose the payment method they want to use. This is one of the problems we're working with the Standards groups to solve.

any way to install the google pay payment handler on my site

As I stated before, there is unfortunately nothing you can do on your end. It's a matter of the Google Pay Handler being available in the browser, not just for your site. Google is aware of the limitation and working on improving the experience in Chrome.

hmmmm...so just roll with and wait and see it improve over time, i guess. Thank you for taking the time to fully explain things. It is very helpful and gives me much needed clarity :-)

I had similar issues as you, guys. I have switched between test and live keys and Google Pay button finally started work expectantly.

Can't get Apple Pay button with activated domain and see it with deactivated one.
We started with the activation of merchant.dessert-pay.com in Stripe Apple Pay settings. Then we noticed that payment with Apple Pay does not proceed. Not sure why, but suppose because of web page use not 443 port.
So we created separate stripe.dessert-pay.com subdomain, activated it, and deactivated the old one. Surprisingly old domain continues to show Apple Pay button, while new is orphan.
The issue is mentioned here and disappears in private browsing or if in Safari->Settings->Privacy: “Allow websites to check for Apple Pay and Apple Card” is unchecked.

Can't get Apple Pay button with activated domain and see it with deactivated one.
We started with the activation of merchant.dessert-pay.com in Stripe Apple Pay settings. Then we noticed that payment with Apple Pay does not proceed. Not sure why, but suppose because of web page use not 443 port.
So we created separate stripe.dessert-pay.com subdomain, activated it, and deactivated the old one. Surprisingly old domain continues to show Apple Pay button, while new is orphan.
The issue is mentioned here and disappears in private browsing or if in Safari->Settings->Privacy: “Allow websites to check for Apple Pay and Apple Card” is unchecked.
Does apple-developer-merchantid-domain-association file contain domain association? Seems it's permanent to Stripe account

We activated Apple Pay for platform account, not connected.
Now we resolved the issue by api Apple Pay registration for connected accounts.

Does anyone know why the stripe requires that a card is already saved to display the button ??
And does anyone know how I can solve the problem? Is there any method to save the card and then call stripe.paymentRequest

Hey,
There are a bunch of things that are kind of weird about the payment request button

It uses a custom image not even saying google pay on it instead of the official one
it requires a card being saved

both things are different on the official demo site https://developers.google.com/pay/api/web/guides/resources/demos
it even works in incognito mode as it fallbacks into a web version if the native version is not available

the stripe version does not do this so it never worked in the desktop version for me
But if you take a look it shopify which is a stripe customer according to stripes website google pay always works
Why does it work on shopify but not with the stripe sdk or the stripe demo?
Why does the sdk use a different image for the button?
And how is this still an issue after 2 years?

@lnfernandobr we have found that when a customer doesn't have a card already enrolled in their wallet (Apple Pay or Google Pay), the conversion rate falls dramatically. That's probably due to the fact that most card enrollment flows require an authentication step that takes the customer away from the checkout flow, sometimes with no easy way to come back. If the customer doesn't have a card enrolled, there is pretty much no benefit to using a wallet compared to regular card Elements. That said we do understand some merchants would like the ability to control this and we are looking into ways to make that check controllable.
@DRSchlaubi, as stated above in this issue, Stripe.js currently relies on the browser PaymentRequest API to offer Google Pay. Since we also support browser saved cards through the same API, and Chrome implements quotas as a privacy measure, there is no way for Stripe.js to know if the payment method available is through Google Pay or a browser saved card. Because of that we cannot show a branded Google Pay button. We are still working with Google to improve the situation here.

Also it doesn't show up for me on my phone with cards added

Do you have an iPhone or Android? On Android, is the Google Pay native application installed? Do you have the option enabled to allow Websites to check for available payment methods in Chrome settings? Does the following page indicate that you can make payment and have an enrolled instrument: https://rsolomakhin.github.io/pr/gp2/

Why does it work on shopify but not with the stripe sdk or the stripe demo?

Shopify does not use Stripe.js or Elements.

Is there a reason for only supporting the payment request API as it seems to be extremely difficult and unreliable to use with google pay.
Google pay will stop working once you switch to another browser than chrome or install a password manager extension supporting card autofill like dashlane as the extension disables chromes builtin autofill, once I disabled dashlane it worked again
In addition the autofill version requires you to enter your email address (name) and address each time you make a payment https://rice.by.devs-from.asia/chrome_aDaa24qlxw.png
whilst the google pay api just requires you to click a button
Why not support both the autofill api and the google pay api like it's done with apple pay

Does the following page indicate that you can make payment and have an enrolled instrument: https://rsolomakhin.github.io/pr/gp2/

Even with Dashlane enabled the page shows me the google pay view https://rice.by.devs-from.asia/chrome_MGnnlpCKLB.png
I made that screenshot on windows on Android it sometimes work and sometimes it doesn't

@hofman-stripe "Chrome implements quotas as a privacy measure"
Where to read on?

did anyone solve this? I'm facing the same issue. all was working before on multiple machines and suddenly it stopped working everywhere,  4242 card was already inserted into my chrome browser.

I tried to use Microsoft Edge and insert the cart there but the same issue, it's still not showing .


Upgrade fails because the URL for the Saltstack GPG key no longer exists

https://repo.saltproject.io/py3/ubuntu/20.04/amd64/3001 does not exist anymore, so the installer cannot download the GPG key in order to verify the SaltStack installation.

@RobotsOnDrugs, please follow these steps to install the latest version of the REMnux updater, which should address the issue:
Download the installer:
wget https://REMnux.org/remnux-cli

Validate that the SHA-256 hash of the downloaded file to make sure it matches this expected value:
23c7f4eefa7599ea2c4156f083906ea5fd99df18f306e4bb43eec0430073985a
To generate the hash of your  file, run:
sha256sum remnux-cli

Set up the REMnux installer:
mv remnux-cli remnux
chmod +x remnux
sudo mv remnux /usr/local/bin

it doesn't fully fix it.
the updated remnux file begins update/upgrade, but still refers the nonexistent URL and ends up prematurely after upgrading most softwares.

after a few attempts of upgrade + update + upgrade, it actually completed the upgrage:
>> Running: ssh
>> Running: remnux-dedicated

>> COMPLETED SUCCESSFULLY! Success: 815, Failure: 0

>> Please reboot to make sure all settings go into effect.

Running remnux upgrade after the manual update did resolve the issue, but FYI to anyone who runs into this issue, running remnux update before the upgrade will clobber remnux-cli and install the old version.
I would say this bug is not that it can't retrieve the PGP key, but rather that the installer in the appliance seems to lack the ability to upgrade itself. I would say that this workaround should be in the documentation, at least until the appliance is updated.

Hello @lennyzeltser, the updated file doesn't fully fix it.
Altought it begins update/upgrade, it still refers the nonexistent URL and ends up prematurely after upgrading most softwares.
><EMAIL_ADDRESS>> remnux-version: v2021.15.2

NOTICE: Fixing incorrect Saltstack version configuration.
Installing and configuring Saltstack properly ...
> downloading v2022.26.3
>> downloading remnux-salt-states-v2022.26.3.tar.gz.asc
>> downloading remnux-salt-states-v2022.26.3.tar.gz.sha256
>> downloading remnux-salt-states-v2022.26.3.tar.gz.sha256.asc
>> downloading remnux-salt-states-v2022.26.3.tar.gz
> validating file remnux-salt-states-v2022.26.3.tar.gz
> validating signature for remnux-salt-states-v2022.26.3.tar.gz.sha256
> extracting update remnux-salt-states-v2022.26.3.tar.gz
> using previous mode: dedicated
> upgrading/updating to v2022.26.3
>> Log file: /var/cache/remnux/cli/v2022.26.3/saltstack.log

>> Running: deb [arch=amd64] https://repo.saltproject.io/py3/ubuntu/20.04/amd64/3001 focal main
>> Running: deb [arch=amd64] https://repo.saltproject.io/py3/ubuntu/20.04/amd64/3004 focal main
>> Running: deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable
>> Running: deb http://download.draios.com/stable/deb stable-amd64/
>> Running: deb http://www.inetsim.org/debian/ binary/

....
>> Running: remnux-theme
>> Running: ssh
Update returned exit code not zero
Error: Update returned exit code not zero
    at ChildProcess.<anonymous> (/snapshot/remnux-cli/remnux-cli.js:569:23)
    at ChildProcess.emit (events.js:315:20)
    at maybeClose (internal/child_process.js:1021:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)

Sometimes problems occur due to network or server issues when
downloading packages, in which case retrying your operation
a bit later might lead to good results.

To determine the nature of the issue, please review the
saltstack.log file under /var/cache/remnux/cli in the
subdirectory that matches the REMnux version you're installing.
Search for the log file for "result: false" messages and look at
the surrounding lines to diagnose the issue.

For assistance go to https://github.com/REMnux/remnux-cli/issues

Also, even after the upgrade, the update function downloads remnux-cli older version back again:
remnux@remnux:~$ remnux update
><EMAIL_ADDRESS>> remnux-version: v2021.15.2

> downloading v2021.15.2
>> downloading remnux-salt-states-v2021.15.2.tar.gz.asc
>> downloading remnux-salt-states-v2021.15.2.tar.gz.sha256
>> downloading remnux-salt-states-v2021.15.2.tar.gz.sha256.asc
>> downloading remnux-salt-states-v2021.15.2.tar.gz
> validating file remnux-salt-states-v2021.15.2.tar.gz
> validating signature for remnux-salt-states-v2021.15.2.tar.gz.sha256
> extracting update remnux-salt-states-v2021.15.2.tar.gz
> using previous mode: dedicated
> upgrading/updating to v2021.15.2
>> Log file: /var/cache/remnux/cli/v2021.15.2/saltstack.log

Pretty sure this error is caused by #88 which I just logged.

Hi @rtkcgrantcharov Can you provide your saltstack.log file for this? The references you saw to Saltstack above:
>> Running: deb [arch=amd64] https://repo.saltproject.io/py3/ubuntu/20.04/amd64/3001 focal main
>> Running: deb [arch=amd64] https://repo.saltproject.io/py3/ubuntu/20.04/amd64/3004 focal main

Is the process of removing the 3001 focal, and adding the 3004 focal. It's not actually installing 3001, it's removing it in favor of 3004.
Your saltstack.log file will contain the actual error you received during this install which, I'm guessing by #88 is the original cause. However, it's best to actually review the entire log first.

Sure, here you are the logs:
saltstack (old).log
saltstack (new).log

So the new log shows everything is working fine with no issues, likely due to the recent update! Glad to see it's working properly now :)


feat: always display both underlying and rewards balances in opportunity row

Description

Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[ ] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)

closes #
Risk

Testing

Engineering

Operations

Screenshots (if applicable)

Current dependencies on/for this PR:

develop

PR #4680

PR #4679

PR #4681

PR #4682

PR #4690

PR #4691

PR #4692

PR #4693   👈

This comment was auto-generated by Graphite.


Experience with delay

We'd like to put audio triggers into a video stream and then detect those on iOS & Android to synchronize. Is that possible and with what delay?

What kind of triggers? Acoustic of Visual?

We'd do 20 minutes of video stream with 20 minutes of audio. The video starts and goes for a few minutes.
Now, imagine a user opens an app that includes sound fingerprinting, then sound fingerprinting starts and we'd like to know the exact timecode of the video. Is that possible?

This is achievable.

You need to fingerprint and store your streaming audio first.
When the second app starts, fingerprint 10-15 seconds chunks and query fingerprints storage.
Check the results. If Confidence is > 0.5, check TrackMatchStartsAt, this should give you the position where the query matched in the fingerprinted stream.
Seek to TrackMatchStartsAt + QueryLength. This should sync both apps.


too much time for "corest sampling"

Thank you for your work!!
I found that the training time is very long, especially during the "corest subsampling" step.
When you are training, how long does it take for a category?

It's been almost an hour without any progress...

Hi my chengdu's friends!
I got the same problem with you: wait 'calculating distances...' long time, when I use kCenterGreedy(SamplingMethodf).
Do you know why? and have solved it?
Much appreciate!

Thank you for your work!!
I found that the training time is very long, especially during the "corest subsampling" step.
When you are training, how long does it take for a category?

It's been almost an hour without any progress...

Thank you for your work!!
I found that the training time is very long, especially during the "corest subsampling" step.
When you are training, how long does it take for a category?

It's been almost an hour without any progress...

Hi my chengdu's friends!
I got the same problem with you, like...

Thank you for your work!!
I found that the training time is very long, especially during the "corest subsampling" step.
When you are training, how long does it take for a category?

It's been almost an hour without any progress...

Hi my chengdu's friends!
I got the same problem with you, like...

Hi my chengdu's friends! I got the same problem with you: wait 'calculating distances...' long time, when I use kCenterGreedy(SamplingMethodf). Do you know why? and have solved it? Much appreciate!

I guess maybe because it's calculating minimum distance using cpu, probably you dataset is too big, or you cpu is occupied by other processes

you are right. and it's hard to avoid


feat: generic progress events

Summary
We don't have a way to signal progress in a generic way, so things like tiled spandrel are just an indeterminate progress bar in the UI. The UX is poor.
This PR is a first go at rectifying this. It adds a separate "generic" progress event, that accepts:

name: str: used to group progress events (along with the invocation's ID)
step: int | None: the current step (omit for indeterminate)
total_steps: int | None: the total steps (omit for indeterminate)
message: str | None: a message to display
image: ProgressImage | None = None: an image to display

No frontend implementation yet as I'm still unsure of the direction of this PR.
See code comments for discussion.
Related Issues / Discussions
Dunno if there are any.
QA Instructions
You can test this PR by opening the network monitor in your browser's dev tools, filtering for websockets and reviewing the events while using spandrel. Start with an image > 512x512 else you only get one step.
Merge Plan
n/a
Checklist

[ ] The PR has a short but descriptive title, suitable for a changelog
[ ] Tests added / updated (if applicable)
[ ] Documentation added / updated (if applicable)

If we want to implement this change, once the details are stabilized I can play around with the frontend implementation. I don't anticipate it being difficult.

Good idea 🤘

I've revised this PR a bit, simplifying the API and updating the frontend to use the new progress events.
Currently it's only the two spandrel nodes that signal progress with the new API. For the autoscale node, which does multiple spandrel runs, the progress bar resets for each. Its message looks like this: "Processing image (iteration 2, tile 4/25)".
While there is a message attached to each progress event, it's not yet used in the UI. I'd like to get this core implementation merged first, then iterate on the presentation.
I tried displaying the messages as a tooltip on the progress bar but it's not particularly discoverable. Maybe it should go on the invoke button tooltip? Not sure.
When that presentation is sorted, I'll update the UI's event handling to present model events as well as invocation start and complete events.

With this new flexible API, I'd like to explore some changes:

Wrap context.images.load with progress updates, so you get some feedback as to what is happening while that long PNG encode happens.
Currently, we have dedicated "model load" events. Maybe we should remove those and use this simpler API instead. The UI would have a single source of truth for execution status. Another option is more complicated frontend handling that updates the message with the last received event, be it a model load event or progress event. This sounds tedious.
When downloading auxiliary models, we can use this to signal progress.


ListView fast scrolling

It would be nice and useful to have a fast scrolling feature for ListView, just like Android's ReyclerView does with android:fastScrollEnabled="true", with the possibility to customize track and cursor.

CC @goderbauer

@aleripe I just submitted a PR for this. Hopefully, if it gets merged, you will be able to use a property called scrollSpeedFactor on ListView, which is basically a constant double that gets multiplied with the normal speed to achieve a certain desired speed for scrolling.

@aleripe I just submitted a PR for this. Hopefully, if it gets merged, you will be able to use a property called scrollSpeedFactor on ListView, which is basically a constant double that gets multiplied with the normal speed to achieve a certain desired speed in scrolling.

Hi Mohammad, unfortunately I don't think it's the same as my request. "Fast scrolling" doesn't mean a scrolling that is faster than usual, it is a wholly new feature where you can drag the cursor of the scrollbar to instantly scroll long lists. You can see it in action in your phone's address book. Cheers!

Oh, my bad... I thought that was already supported, so I assumed that you wanted the ability to change the scrolling speed. Sorry!


SUBMARINE-533. Add pysubmarine ci dockerfile

What is this PR for?
Add pysubmarine ci docker image
The reason to add this dockerfile

The main reason is to generate python API from swagger without install any dependencies (java, python, code-jen.jar..etc)
Run pysubmarine testing and formatting Code inside docker
We could also build submarine inside docker
pysubmarine development

What type of PR is it?
[Improvement]
Todos

[ ] - Task

What is the Jira issue?
https://issues.apache.org/jira/browse/SUBMARINE-533
How should this be tested?
https://travis-ci.org/github/pingsutw/hadoop-submarine/builds/706069697
Screenshots (if appropriate)
Questions:

Does the licenses files need update? No
Is there breaking changes for older versions? No
Does this needs documentation? No

@liuxunorg Thanks for the review.
Sorry for the confusion.
I've updated the content in pr and Jira

@pingsutw Thank you contribution this feature. :-)
Will merge if no more comnents.


rvztz/postgres destination connector

Adds a connector to upload processed output into a SQL database

Can we make the 2 .sh scripts executable?

I'm missing
scripts/sql-test-helpers/create-sql-instance.sh: No such file or directory
scripts/sql-test-helpers/docker-compose.yml: no such file or directory
maybe they haven't been checked into this branch?

can you update pr title to conventional commit message?

can you add comprehensive pr description?

update sphinx docs?

appreciate that you're thinking bigger picture about sql general abstraction, but probably need to comb through and clarify the sql vs postgres-specific portions throughout. for instance, currently test-ingest-sql-output.py specifically tests postgres..so let's bump filename to make that clear.

Can you check that the ./test_unstructured_ingest/dest/sql.sh runs in CI?
I saw this in the last successfull CI tests
--------- SKIPPING SCRIPT sql.sh ---------
https://github.com/Unstructured-IO/unstructured/actions/runs/6848685710/job/18619418567

This SQL destination connector is really cool. Works great.
Will be nice when it's validated on more than just PostgreSQL. SQLite should be easier since we don't have to do a docker container.

This SQL destination connector is really cool. Works great.
Will be nice when it's validated on more than just PostgreSQL. SQLite should be easier since we don't have to do a docker container.

Sweet! I also think sqlite opens up a lot of possibilities. By the way, SQLite plus sqlite-vss is a vectordb! https://github.com/asg017/sqlite-vss :)

This SQL destination connector is really cool. Works great.
Will be nice when it's validated on more than just PostgreSQL. SQLite should be easier since we don't have to do a docker container.

Sweet! I also think sqlite opens up a lot of possibilities. By the way, SQLite plus sqlite-vss is a vectordb! https://github.com/asg017/sqlite-vss :)

Awesome! SQLite is the new SQLite:). ChromaDB is vectordb on top of SQLite (though I think you can substitute another database in production). And its super simple to use. I'm building the destination connector for it.

General comments about table creation/management:

The sqlalchemy code to create tables for the content to be written to is in the core ingest code. We should not include anything in there responsible for provisioning a DB on behalf of a user. We might still need this for integration testing but then that should exist in the test directory.
We can/should still include a sample schema a user can use to provision their own database. You can provision a table via sqlalchemy and then dump it in a format a user could use with postgres regardless of having access to python.
Regarding the schema, in my opinion, we should leverage the json flattening code used by the delta table connector (and any other table-based dbs) when writing the content to avoid the complexities of cross-table joins. This means you only need to provision a single table and write to it.

@rvztz Let's ignore all the mysql comments. We can add those at a different point in time. Let's just try to button up the postgres and sqlite :)

I'm standardizing on postgres instead of postgresql where practical.


Allow testing range whether bounds are open/closed

the Range#hasMask method is private, which makes it not possible for clients of class to test whether a range includes/excludes its bounds.
Suggest making hasMask public and /or add convenience methods

isLowerClosed/isLowerOpen
isUpperClosed/isUpperOpen
isClosed
isOpen

Send me a Pull Request with your fix proposal. Thanks.

Fixed.


marketMakerAdded

Coverage decreased (-5.0%) to 57.478% when pulling 5ba309ee140abefeb88c88ee7f20cd8ca5213bfb on joerischasfoort:dev into 3e42134013030eb6156a16ab6572ac9ff2238d2f on LCfP:dev.


Recursive fetch doesn't work on server-side

I tried to run such code on server-side but for some reason it doesn't work. fetch function is imported from domain-task
return fetch('https://jsonplaceholder.typicode.com/posts/1')
    .then(response => response.json())
    .then(response => {
        return fetch('https://jsonplaceholder.typicode.com/posts/2')
            .then(response2 => response2.json())
    });

I receive the following error:
Exception: Call to Node module failed with error: Error:
When running outside the browser (e.g., in Node.js), you must specify a base URL
before invoking domain-task's 'fetch' wrapper.
Example:
import { baseUrl } from 'domain-task/fetch';
baseUrl('http://example.com'); // Relative URLs will be resolved against this

If you want server-side prerendering to wait for your chain of promises to complete, then you must add the outer promise to the list of domain tasks, like the WeatherForecasts.ts example does in the ReactRedux template.
For example,
import { fetch, addTask } from 'domain-task';

... and then...
const myTask = fetch('https://jsonplaceholder.typicode.com/posts/1')
    .then(response => response.json())
    .then(response => {
        return fetch('https://jsonplaceholder.typicode.com/posts/2')
            .then(response2 => response2.json())
    });
addTask(myTask);
return myTask;

This should keep the domain context open for as long as your promise chain is in flight, so it should not clear out the baseUrl context data before it's finished.

I was aware of addTask from WeatherForecasts.ts - I have made a few other tests and I noticed that:

when I call my function without addTask the error show up in Visual Studio output window but the page is properly displayed in browser.
when I call my function with addTask then I see that error in browser as a error page.

@SteveSandersonMS - I have published example that shows this issue. To reproduce that:

clone this repository: https://github.com/rosieks/JavaScriptServices-issue902/commits/master
run npm install
run dotnet run
enter the page: http://localhost:5000/fetchdata
you will see the error

@rosieks Thanks - I'll check it soon. Reopening.

@SteveSandersonMS Would you mind making addTask return the task fluently as then we can condense code like the above (of which I have a fair amount) to return addTask(myTask);
Great use case for using async await too, although not sure on the projects policy on that.

I just made one test - I replaced first fetch with:
const delay = timeout => new Promise((resolve, reject) => setTimeout(resolve, timeout));
and it also failed.
It looks like baseUrl() doesn't work with promises in general.

any workaround for this? it looks like when nested fetch is called there is no active domain and baseUrl returns undefined.


AutoMigrate should return an error when it skips newly added FK fields

Relates to #349 and #450.
If automatically migrating FK fields is not yet possible / done, I think gorm should at least return an error.
Otherwise it will just silently start dropping parts of the inserted objects, when using the not-yet-migrated table.

@tp return an error will revert the created table, I think this won't be the way we will go.
And if you want the FK constraints, you still could create it manually.


index.html file is not found!

The APP does not work because the file index.html is not found.

https://github.com/uberspot/2048-android/issues/40


Feature/global toc

This adds functionality to add a global Table of Contents. I think this will be helpful when sub folders are implemented to get a full hierarchy. I did not add any link for this (say, on the side bar). I'll let you decide if you want the feature, and how to link it. To access it, go to /-/toc

Merged, feature in PageIndex and /-/index.
See #31


⚠ Bofrost.be has degraded performance

In e7af31a, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1677 ms

Resolved: Bofrost.be performance has improved in f73fcf3.


Show animations when switching between pages

iron-pages should be replaced with neon-animatable-pages

Current status:


Huge amount of ScheduledFutureTask in memory in case pubsub.googleapis.com isn't available

Describe the bug
If pubsub.googleapis.com isn't available, there is a huge amount of io.grpc.netty.shaded.io.netty.util.concurrent.ScheduledFutureTask objects instantiated (millions) that uses a huge amount of memory and can cause OOM and our service outage. Issue should be reproduced within 10 minutes after application is started. Prerequisite for this issue is that pubsub.googleapis.com isn't available. Originally it has been found in our docker environment, but I was able to reproduce it by simply adding this line to my /etc/hosts file:
<IP_ADDRESS> pubsub.googleapis.com
Also, in our case, even full GC doesn't cleanup a lot of objects. For some reason, it is different for the sample project but it anyway causes OutOfMemoryError after some time.
This case is quite important for us because it can cause service outage (due to OOM) for all our service instances using PubSub. Fortunately, DNS failure happens rarely but still, it can happen and affect a lot of our users.
Screenshots from VisualVM tool and some extra information is attached.

memory_issue_gcp.nps.zip
Sample
I attached zip archive with the simple project reproducing the issue. Simply import it to your IDE and run main method in com.example.gcp_report.Main.kt file. Please don't forget to update your hosts as I mentioned above before run.
gcp_report.zip
Please let me know if there are any questions.

Do you experience the same issue with the 2.x version?
See: https://github.com/GoogleCloudPlatform/spring-cloud-gcp

Do you experience the same issue with the 2.x version?

No, we haven't tried yet, should we?

Do you experience the same issue with the 2.x version?

No, we haven't tried yet, should we?

Yes. The 1.x version is outside of the support period now.

Do you experience the same issue with the 2.x version?

No, we haven't tried yet, should we?

Yes. The 1.x version is outside of the support period now.

Ok, I'll try during working time.
Thanks for the information.

Yes. Here: https://github.com/GoogleCloudPlatform/spring-cloud-gcp/issues
Thanks!

https://github.com/GoogleCloudPlatform/spring-cloud-gcp/issues/614 - same issue is reproduced and logged to the new repo for 2.0.4 version.
If there is no plans to fix this issue for the version I used here, then this issue can be closed.
Thanks

I'll close this one in favor of GoogleCloudPlatform/spring-cloud-gcp#614


Update copy on nav bar, try to fix layout bug with MySectionsPage

Who is this PR for?
HS educators
What problem does this PR fix?
JS layout bug with react-virtualized thrashing layout, link isn't live.
What does this PR do?
Release my students page from https://github.com/studentinsights/studentinsights/pull/2018.

selfie


Increase network-transport bound

network-transport was bumped past 0.5 recently.

Thanks! I'll update cabal on hackage today.


Increase the maximum zoom on the timeline

I would like to design micro animations (~250ms) but the current maximum zoom level is making it difficult for me right now.
I only have access to a very small area on my screen to place my keyframes because the maximum zoom shows 10 seconds on my screen.
I'd like to have a full second taking the whole width of my screen (or even less).
If you don't want to change the default behavior, maybe you can add an option to the initialization?
Something like :
studio.initialize({maxZoom: 0.1})

My workaround for now is to consider 1 second as 1/10 second and play({rate: 10})

Hi, here is a quick video on how to zoom further.

Thank you very much !


Ability to use some repository keywords will vary based on support from the database

This discussion started under #99 (see comments from @otaviojava) but is a much broader topic that isn't specific to that single pull.  Several repository keywords, including GreaterThan, GreaterThanEqual, LessThan, LessThanEqual, IgnoreCase, Between, Or? ... will be available from some databases but not others.  We should improve the specification and API in ways that are most helpful in conveying this information so that it is clear to users which keywords to rely on for the databases or types of databases used.

Let's take a step back on the Jakarta Data proposal. The main goal is to be data agnostic instead of looking only at a specific database type, such as a relational database.
Said that the Repository interface should have a more considerable cohesion around database types instead of going to a database type.
We have almost 400 database solutions in the market, and it would take a lot of work to keep and add support to those keyword databases.
I suggest exploring OOP in our favor. Therefore, the extensions like the market do with Spring and Jakarta NoSQL. Thus, CassandraRepository, MongoRepository, and so on.
So, allowing it to JPA creates its repository to put that specific behavior is a good solution to the API moving those to this specialization:

https://github.com/jakartaee/data/pull/96
https://github.com/jakartaee/data/pull/97
https://github.com/jakartaee/data/pull/93
https://github.com/jakartaee/data/issues/100


Let club leaders know they can ask for stickers

Hack Club staff is happy to ship club leaders stickers when they need some (if I recall correctly).

Done!


[crypto] Introduce word-aligned buffers for cryptolib.

Introduces a datatype called crypto_word32_buf that is analogous to crypto_byte_buf and holds aligned data, which is easier and safer to handle when interfacing with the hardware. Word buffers then replace byte buffers for most things: signatures, DRBG output values, AES initialization vectors, hash function digests, and MAC tags. Byte buffers remain for freeform "message" inputs, for example hash function inputs and message inputs for signatures.
See https://github.com/lowRISC/opentitan/issues/19549 for discussion.

@timothytrippel I requested your review since had to change the manuf lib a little bit here; since it would violate strict aliasing to cast a uint64_t * to a uint32_t *, I changed a few 64-bit data buffers to 32-bit.

I'd like to go ahead and merge this; it's blocking all other cryptolib work at the moment because it changes so many interfaces. I'm happy to resolve post-merge comments in follow-up changes, so if anyone has feedback please post it here!


Explore an idea for handling client commands on the server

Feature Request
This is mostly something I've been kicking around in my head while also thinking about a new client, but I want to expand the discussion here.
For the client, we need to support commands like USE database for both a user-friendly experience and because people familiar with SQL are familiar with that command. While specifying the database isn't required in our system, it's still really convenient to do.
But in our system, the database being used is completely up to the client. It gets sent through a query parameter and that's the only way to do it. So at the moment, the client would need to do a partial parse of the query it's about to send to the server to check to see if it sees a client command.
But that also provides a bit of a problem. Since these queries are implemented on the client and not the server, sending a USE database inside of an HTTP request to the server means nothing. For those who might use the CLI to execute commands, this could end up being weird. Additionally, the parser in the client is a poor man's version of the parser in the server, but we don't really want to perform parsing on both the client and the server.
I would prefer it if we could just send the entire query to the server and it figures things out. But, while we could make that work with uploading the entire file, it could cause some issues with the client because the client doesn't keep a persistent connection to the server.
On the other hand, there are some client commands that make no sense on the server. While it might make sense to have USE and INSERT work on the server, I don't think there's a very strong case that FORMAT needs to be processable because that is a UI issue.
With that background...
Proposal: Make some client commands processable by the server.
Current behavior: Client commands have to be parsed out separately from the query and can't be interspersed easily within the query statements without putting undue pressure on the client.
Desired behavior: I would like to see USE, INSERT, and probably everything except for FORMAT be processable by the server. I would like to see them return something within their result to indicate to the client. I would like the following query to work if done through curl.
USE NOAA_water_database;
SELECT count(*) FROM h2o_pH;

It should then include in a response something that indicates the the default database was changed so the client can change its value locally. Either as part of the JSON response or as part of the HTTP headers.
Use case: Described above. It would clean up a lot of the code within the client and remove the bad parser we have there. It would also allow people to create a schema file that can be uploaded through something other than the client without requiring a custom format like influx -import supports.

closing due to age.


Explain everything related to Mozilla Winter of Security

Description :

Explain everything related to Mozilla Winter of Security

Note :

Changes should be made inside the Open_Source/ directory & Opensource branch.
Issue only for GWOC'21 contributors.
Issue will be assigned on a first come first serve basis, 1 Issue  ==  1 PR == 1 Contributor
For Contributor please don't create the same issue again, before creating any issue do visit OpenSource Milestone
Doc name should same as the issue title

Must Follow : Contributing Guidelines & Code of Conduct before start Contributing.
Happy Contributing 🙌

Please assign this issue to me
I want to work on this
Batch - 2

@itsbittoosharma Assigning issue to you

In which directory the file has to be created or in which Section folder in Open Source directory? And also what will be the serial number for .md file in that directory?

@Muskan-creator ?? Please let me know so that I could make a PR

PR should in section -4 of open source directory and in .md file format
On Sun, Sep 19, 2021, 7:57 PM Utkarsh Upadhyay @.***>
wrote:

In which directory the file has to be created or in which Section folder
in Open Source directory? And also what will be the serial number for .md
file in that directory?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/girlscript/winter-of-contributing/issues/800#issuecomment-922482506,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOH5LJGCYHS5JIKAGKTUKBLUCXXOFANCNFSM5EKCGD3Q
.
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.

Please check my pr


Tutorials. Introduction.  Improved verbage.

I've improved the verbage up to the 1st example. Let me know if this approach is acceptable and I will continue to make improvements as I work through the tutorial examples.

Ok perfect, thank you so much!


'evolve' Breaks w/ Partial Structs

🐛 Bug report
evolve, as currently defined, exhibits strange behavior re: partial fields
Current Behavior
Given:
interface A {
  a?: 'a';
  b?: 'b';
  c?: 'c';
}

const a: A = {};
const b = F.pipe(
  a,
  evolve({
    a: fromNullable,
    b: fromNullable,
    c: fromNullable,
  })
);

runtime value of b = {}

Expected behavior
runtime value of b = {
  a: O.none,
  b: O.none,
  c: O.none
}

Reproducible example
TS Playground
Suggested solution(s)
New implementation for evolve (keeping the same type signature)
TS Playground
Additional context
Originally posted by @kalda341 here
Your environment
Which versions of fp-ts are affected by this issue? Did this work in previous versions of fp-ts?

Software
Version(s)

fp-ts
2.11.5

TypeScript
4.5.4

Hey, it seems that the suggested solution would have a similar issue that some non-evolved fields won't be copied to the new object. In the playground, where you have const out = {}, it should probably be const out = {...a}

That's a great point, I had totally missed that, and great idea for a simple fix!
I think that requires a change to the type signature as well - here's an updated playground to reflect that

I've also noticed that Eq is incorrect for partial structs. Maybe it's worth creating a separate partial struct module?

I'm not sure what you mean - how would Eq.struct be used with partial fields? Something like this?

I've been playing around with the following:
export const partialStructEq = <A>(eqs: {
  [K in keyof Required<A>]: Eq.Eq<Exclude<A[K], undefined>>;
}): Eq.Eq<{
  readonly [K in keyof A]: A[K];
}> =>
  Eq.fromEquals((first, second) => {
    for (const key in eqs) {
      const v1 = first[key];
      const v2 = second[key];

      if (v1 === undefined && v2 === undefined) {
        continue;
      } else if (v1 === undefined || v2 === undefined) {
        return false;
      } else if (
        !eqs[key].equals(
          v1 as Exclude<A[Extract<keyof A, string>], undefined>,
          v2 as Exclude<A[Extract<keyof A, string>], undefined>
        )
      ) {
        return false;
      }
    }
    return true;
  });

This allows checking equality on optional fields, without having to handle the undefined case. It also requires providing an Eq for each field, which the regular Eq.struct doesn't handle.
Anyway, the specifics aren't super relevant - my point is more that most of the functions in fp-ts for structs don't handle optional fields elegantly (io-ts too, I can't count the number of times this specific question has come up: https://github.com/gcanti/io-ts/issues/629).

Agreed that Eq.struct<{ a?: number }>({}) should not be allowed, and is unexpected behavior - all keys should be required
However, under this implementation
const keyExists = { a: 123, b: undefined }
const keyMissing = { a: 123 }

partialEq.equals(keyExists, keyMissing) === true

Which may not always be desired, since 'b' in keyExists === true and 'b' in keyMissing === false
Which actually raises a thorn in the original question - should keys always be copied if the original object doesn't have them? The word 'evolve' could be seen to imply that it would only affect what's already there.
monocle-ts handles the undefined/missing key disparity by having separate key and atKey operators, but we're not really able to have separate eq's for cases where keys are missing vs value-level undefined
I hate to say it, but maybe a more robust solution is disallowing partial fields in struct functions?
Either that or some interface like this (which is admittedly ugly)?
declare const withUndefined: <A>(eq: Eq.Eq<A>) => Eq.Eq<A | undefined>

const partialEq = Eq.struct<{
  a: number;
  b?: number;
}>({
  a: eqNumber,
  b: {
    eq: withUndefined(eqNumber),
    failWhenMissing: false
  }
})

There would theoretically also have to be a couple versions of withUndefined, an inclusive one where undefined === undefined, and an exclusive one where undefined !== undefined, since it can have a variety of meaning in different contexts
// A 'User' can be anonymous
interface User { email: string; name: string | undefined }
declare const users: Users[]

// might use inclusive here -- anonymous users have the same 'name'
const sameUser = (a: User, b: User): boolean => ...

// might use exclusive here -- an index-out-of-bounds is different from an anonymous user
const userName = (index: number): string | undefined => users[index]?.name
const sameName = (indexA: number, indexB: number): boolean => ...

Another idea is that we could take inspiration from monocle-ts atKey, and use an Option<Option<A>> type - the outer Option is none if the key is missing, and the inner Option is none if the value itself is undefined. So something like this:
declare const handleB: Eq<Option<Option<number>>>

const partialEq = Eq.struct<{
  a: number;
  b?: number;
}>({
  a: eqNumber,
  b: handleB
})

Imo that type, while complicated and possibly confusing, minimizes data loss and allows the user flexibility in all cases. And it's probably a preferred solution over preventing partial fields entirely.
The same idea would make the evolve function look like so:
interface A { a: number | undefined; b?: number; }

declare const handlePartialNumber:

const a: A = { a: undefined };
const b = F.pipe(
  a,
  evolve({
    a: O.fromNullable,
    b: (a: O.Option<O.Option<number>>) => ...,
  })
);

I actually quite like this, but I think it's a little arbitrary to represent undefined with an option in this case. It is nice to be able to treat individual fields differently, but I do wonder how often it would be necessary.
I think this is devolving into a discussion about value of undefined vs missing key? It would be amazing to have some consistency on this within fp-ts (and ideally the rest of the ecosystem). Personally I hate treating them differently, especially in functional programming in Javascript due to the difficulty of removing a key from a struct without mutating the original value. The treatment of undefined is probably my biggest gripe with JS in general.
Typescript (by default: https://devblogs.microsoft.com/typescript/announcing-typescript-4-4-beta/#exact-optional-property-types) treats the two as more or less the same in many situations, which makes me wonder whether we should do the same.
Alternatively it may be a good idea to specify that that compiler flag should be enabled on projects with fp-ts?

You've also got me thinking about how I'm contradicting myself with how I want Eq and evolve implemented (Eq functions shouldn't be passed undefined, but evolve should). We haven't even talked about what we want for Semigroup, Monoid, etc, which are also not totally clear.

I think a lot of fp-ts users would agree w/ you that js's treatment and use of undefined is frustrating - that's why we've avoided it in favor of Option, and to some extent pretended it wasn't there (thus this issue)
Oh wow I didn't know about 'exact optional property types'. That could even motivate the use of Option instead of undefined in these cases - a missing key really isn't an undefined value at all. Imo that property is proof that some developers want to treat 'missing key' as separate from 'undefined'
Maybe it makes sense to conditionally use a type- of Option<A | undefined> or Option<A> depending on whether that property is enabled. Something like this, maybe? Playground (excludedOptionalPropertyTypes enabled), Playground (excludedOptionalPropertyTypes disabled)

Really interesting that you can actually test whether the flag is enabled. That might be a good solution, however I wouldn't know for sure until I have some time to play around with some implementations.

You've got a good instinct, it turns out what I wrote is impossible to achieve at runtime, since you can't know whether a key is partial or not at the value level.
I think the simplest solution here is to take inspiration from io-ts and have separate 'struct' and 'partial' functions, and have users merge these outputs together thru the Eq monoid

You've got a good instinct, it turns out what I wrote is impossible to achieve at runtime, since you can't know whether a key is partial or not at the value level.
I think the simplest solution here is to take inspiration from io-ts and have separate 'struct' and 'partial' functions, and merge these together thru the Eq monoid - playground
As for monoid and semigroup, we might introduce an 'intersection' combinator to allow the same pattern (also similar to io-ts), which could be useful otherwise - playground
Evolve is a bit more complicated - we have to be able to separate partial and unpartial fields & handle them separately - Playground
The evolve use-case seems uncommon enough that I'm not sure how useful it would end up being, and it looks like a bit of a nightmare to maintain. Maybe it's best to simply ignore missing keys in this case - something like the fix proposed above

Your Eq and Semigroup implementations look very, very good, and I think keeping the struct and partial functions separate is a pretty clean way of doing it.
Your evolve implementation really tested my Typescript comprehension, and I agree that it might end up a maintenance nightmare. By ignore, you mean forbidding optional keys? That could be a decent solution, and it may not be worth the extra effort of supporting them for evolve.
Thanks so much for putting so much effort into this (much more than even me!). It's really appreciated.

That's great, I'm glad you like them! Ok it sounds like we have
Just a note: this already exists for Eq, inside the module io-ts. Maybe 'semigroup' and 'monoid' also belong there? Although it's hard to see how those are 'decoding' or 'encoding' values in a runtime type system


TaxCloud::TaxCodes::PREPARED_FOOD got tax?

Hi,
I try calling taxCloud with  "TaxCloud::TaxCodes::PREPARED_FOOD" [ tic ]
and i got a tax number value return back. Any idea why?
i thought we don't tax on food purchases?
I look thru Groupon site to verify and see that they don't tax food purchase from merchant store.
Any idea what am i missing here? Thanks for your help.
US tax is so complicated and i'm trying to figure out what is taxable and what is not.  :- )

Welcome to the world of pain :) I don't have the answer for this but the better place to ask it is probably with https://taxcloud.net, the gem is just a wrapper and an unofficial one for that matter (aka one that works :)

@thomasjoyce it certainly depends on state, county, and city. In Texas, prepared foods are taxable. In most cases, tax is applied if the origin and destination are within the same state.
I don't really use Groupon, but I've never seen food items available. I believe what's being sold are redeemable coupons/certificates for specific food items.

Daniel, Drew, thanks for responding so quickly.
yeah, i wish this was more straightforward to figure out. :- )
I guess i will check with the taxcloud folks.
you are right, Drew, Groupon don't tax food coupon values, i guess it is a good things for customers.  :- )

I'll close this.


Reactive intersection, union and diff should return Integer, not Long

Fixed #2241. Set.intersection, union and diff should return a Single, or Mono, of Integer, not Long.

Thank you!


The system cannot find the path specified.

Hi,
I am getting the following error on Windows 10 Home.
I am getting the following output when I try to import any resource:
PS C:\Users\Marcelo\Documents\GitHub\...\infrastructure\kubernetes> terraformer import kubernetes --resources=secrets
2020/08/25 11:17:22 kubernetes importing... secrets
2020/08/25 11:17:23 open \.terraform.d/plugins/windows_amd64: The system cannot find the path specified.
2020/08/25 11:17:23 kubernetes: secrets not supported resource

On the third line it says the system cannot find the path specified. This is the output of terraform init with log trace enabled.
PS C:\Users\Marcelo\Documents\GitHub\...\infrastructure\teste> terraformer import kubernetes --resources=secrets
2020/08/25 11:16:31 kubernetes importing... secrets
2020/08/25 11:16:32 open \.terraform.d/plugins/windows_amd64: The system cannot find the path specified.
2020/08/25 11:16:32 kubernetes: secrets not supported resource
PS C:\Users\Marcelo\Documents\GitHub\odeon-monorepo\infrastructure\teste> cd ..
PS C:\Users\Marcelo\Documents\GitHub\odeon-monorepo\infrastructure> cd .\kubernetes\
PS C:\Users\Marcelo\Documents\GitHub\odeon-monorepo\infrastructure\kubernetes> terraform init
2020/08/25 11:16:52 [INFO] Terraform version: 0.13.0
2020/08/25 11:16:52 [INFO] Go runtime version: go1.14.2
2020/08/25 11:16:52 [INFO] CLI args: []string{"C:\\ProgramData\\chocolatey\\lib\\terraform\\tools\\terraform.exe", "init"}
2020/08/25 11:16:52 [DEBUG] Attempting to open CLI config file: C:\Users\Marcelo\AppData\Roaming\terraform.rc
2020/08/25 11:16:52 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2020/08/25 11:16:52 [DEBUG] checking for credentials in "C:\\Users\\Marcelo\\AppData\\Roaming\\terraform.d\\plugins"
2020/08/25 11:16:52 [DEBUG] ignoring non-existing provider search directory terraform.d/plugins
2020/08/25 11:16:52 [DEBUG] will search for provider plugins in C:\Users\Marcelo\AppData\Roaming\terraform.d\plugins
2020/08/25 11:16:52 [DEBUG] ignoring non-existing provider search directory C:\Users\Marcelo\AppData\Roaming\HashiCorp\Terraform\plugins
2020/08/25 11:16:52 [INFO] CLI command args: []string{"init"}

2020/08/25 11:16:52 [TRACE] Meta.Backend: no config given or present on disk, so returning nil config
2020/08/25 11:16:52 [TRACE] Meta.Backend: backend has not previously been initialized in this working directory
2020/08/25 11:16:52 [DEBUG] New state was assigned lineage "1cb54927-5dd2-e9fc-e763-131da1b0ef42"
2020/08/25 11:16:52 [TRACE] Meta.Backend: using default local state only (no backend configuration, and no existing initialized backend)
2020/08/25 11:16:52 [TRACE] Meta.Backend: instantiated backend of type <nil>
Initializing the backend...2020/08/25 11:16:52 [TRACE] providercache.fillMetaCache: scanning directory .terraform\plugins

2020/08/25 11:16:52 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/google v3.36.0 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\google\3.36.0\windows_amd64
2020/08/25 11:16:52 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/kubernetes v1.12.0 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\kubernetes\1.12.0\windows_amd64
2020/08/25 11:16:52 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\google\3.36.0\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/google 3.36.0
2020/08/25 11:16:52 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\kubernetes\1.12.0\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/kubernetes 1.12.0
2020/08/25 11:16:52 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/08/25 11:16:53 [DEBUG] checking for provisioner in "."
2020/08/25 11:16:53 [DEBUG] checking for provisioner in "C:\\ProgramData\\chocolatey\\lib\\terraform\\tools"
2020/08/25 11:16:53 [DEBUG] checking for provisioner in "C:\\Users\\Marcelo\\AppData\\Roaming\\terraform.d\\plugins"
2020/08/25 11:16:53 [INFO] Failed to read plugin lock file .terraform\plugins\windows_amd64\lock.json: open .terraform\plugins\windows_amd64\lock.json: The system cannot find the path specified.

2020/08/25 11:16:53 [TRACE] Meta.Backend: backend <nil> does not support operations, so wrapping it in a local backend
2020/08/25 11:16:53 [TRACE] backend/local: state manager for workspace "default" will:
 - read initial snapshot from terraform.tfstate
 - write new snapshots to terraform.tfstate
 - create any backup at terraform.tfstate.backup
2020/08/25 11:16:53 [TRACE] statemgr.Filesystem: reading initial snapshot from terraform.tfstate
2020/08/25 11:16:53 [TRACE] statemgr.Filesystem: snapshot file has nil snapshot, but that's okay
2020/08/25 11:16:53 [TRACE] statemgr.Filesystem: read nil snapshot
2020/08/25 11:16:53 [TRACE] providercache.fillMetaCache: scanning directory .terraform\plugins
2020/08/25 11:16:53 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/google v3.36.0 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\google\3.36.0\windows_amd64
Initializing provider plugins...2020/08/25 11:16:53 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/kubernetes v1.12.0 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\kubernetes\1.12.0\windows_amd64

2020/08/25 11:16:53 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\google\3.36.0\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/google 3.36.0
- Using previously2020/08/25 11:16:53 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\kubernetes\1.12.0\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/kubernetes 1.12.0
2020/08/25 11:16:53 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
-installed hashicorp/google v3.36.0
- Using previously-installed hashicorp/kubernetes v1.12.0
2020/08/25 11:16:53 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins

The following providers do not have any version constraints in configuration,
so the latest version was installed.

To prevent automatic upgrades to new major versions that may contain breaking
changes, we recommend adding version constraints in a required_providers block
in your configuration, with the constraint strings suggested below.

* hashicorp/google: version = "~> 3.36.0"
* hashicorp/kubernetes: version = "~> 1.12.0"

Terraform has been successfully initialized!

You may now begin working with Terraform. Try running "terraform plan" to see
any changes that are required for your infrastructure. All Terraform commands
should now work.

If you ever set or change modules or backend configuration for Terraform,
rerun this command to reinitialize your working directory. If you forget, other
commands will detect it and remind you to do so if necessary.

At the end of the init command, my directory will have successfuly retrieved the required plugins from the registries:
.terraform/
  plugins/
    registry.terraform.io/
      hashicorp/
        google/3.36.0/windows_amd64/terraform-provider-google_v3.36.0_x5.exe
        ...

Here it is what I have tried:

I have download the providers from the github page and moved them to %APPDATA%/terraform.d/plugins and %APPDATA%/terraform.d/plugins/windows_amd64.
Rerun terraform init with the plugins availables on the mentioned folders.
Edit the PATH env var to add the mentioned path.
Reinstall terraformer using choco install --HEAD terraformer.

I am facing the same issue on windows, any leads on how to fix this?

I have the same issue. any solution?

I faced the same issue and found the solution for this(On Windows). Download the aws or required provider: ex: https://releases.hashicorp.com/terraform-provider-aws/4.51.0/ > Unzip it > Place the .exe file in here: C:\Users\XXXX.terraform.d\plugins\windows_amd64.


Fix v3 behaviour when input or output token is ETH

Fix for Uniswap v3 behaviour when ETH is the input or output token, resolving issues #154 and #155. There has also been some general tidying-up of parts of the code. Basic tests for all v3 scenarios have been run, but it would be good to check edge cases and verify that v1 and v2 still work as expected.

Cool! I didn't get to do it, and it's pretty much what I had in mind!


ZodResolver error: "Expected number, received string"

The zodResolver example does not work as there is alway the following error.
{
  "age":{
    "message":"Expected number, received string",
    "type":"invalid_type"
  }
}

Here is a code sandbox to reproduce the error:
https://codesandbox.io/s/react-hook-form-zod-resolver-example-forked-0p8rt?file=/src/App.js
Thanks for your reply/help.

Hi @lailo , this is "normal". You can find an answer here https://github.com/react-hook-form/resolvers/issues/62.
You're right, the example does not work as expected, we have to update it :)

Thanks for the quick reply @jorisre. Based on the current documentation and code examples, I was expecting that the zodResolver would do the transform for me.
In case someone has the same question, I've updated the code sandbox to use  zod@beta v2 and it works now.
https://codesandbox.io/s/react-hook-form-zod-resolver-example-forked-0p8rt?file=/src/App.js

@lailo If you won't to update to zod@beta v2 and don't need to transform the value in number, you can do the following:
const schema = z.object({
  name: z.string(),
  age: z.string().refine((val) => !Number.isNaN(parseInt(val, 10)), {
    message: "Expected number, received a string"
  })
});

thanks @jorisre it's awesome to have a zod export in this lib. 🙉

After a bit of digging around, i've discovered that the following achieves what i was looking for:
<input
  type="number"
  { ...register('myNumberField', { valueAsNumber: true } ) }  // <--- `valueAsNumber` is the solution here...
/>

Please see coercion: https://github.com/colinhacks/zod#coercion-for-primitives

After a bit of digging around, i've discovered that the following achieves what i was looking for:
<input
  type="number"
  { ...register('myNumberField', { valueAsNumber: true } ) }  // <--- `valueAsNumber` is the solution here...
/>

It works but not if input is optional. When submit is done with empty input i get "Expected number, received nan"

Coerce primitive values with Zod. Full example
const form = z.object({
    age: z
        .coerce    // SOLUTION
        .number(),
})

Thank you @omgismartinez, that was the most clean solution for me.

Thanks @omgismartinez , this way was my solution.

thanks @omgismartinez worked for me

Coerce primitive values with Zod. Full example
const form = z.object({
    age: z
        .coerce    // SOLUTION
        .number(),
})

This worked perfect for me, many thanks @omgismartinez

Coerce primitive values with Zod. Full example
const form = z.object({
    age: z
        .coerce    // SOLUTION
        .number(),
})

You saved my time. Thanks!

After a bit of digging around, i've discovered that the following achieves what i was looking for:
<input
  type="number"
  { ...register('myNumberField', { valueAsNumber: true } ) }  // <--- `valueAsNumber` is the solution here...
/>

Thanks @adamwdennis worked for me

Coerce primitive values with Zod. Full example
const form = z.object({
    age: z
        .coerce    // SOLUTION
        .number(),
})

thats working for me. thanks!

Coerce primitive values with Zod. Full example
const form = z.object({
    age: z
        .coerce    // SOLUTION
        .number(),
})

works, perfectly!

Thanks @omgismartinez , this way was my solution.

Was your output still a string or number

Thanks @omgismartinez , this way was my solution.

Was your output still a string or number

So, my issue, exactly like yours, kept returning message":"Expected number, received string",
"type":"invalid_type" on form submission.
With @omgismartinez solution,this was corrected.
The output was a number.

@lailo If you won't update to zod@beta v2 and don't need to transform the value in number, you can do the following:
const schema = z.object({
  name: z.string(),
  age: z.string().refine((val) => !Number.isNaN(parseInt(val, 10)), {
    message: "Expected number, received a string"
  })
});

Input like "123aaa" bypasses validation due to parseInt ignoring non-numeric characters after a valid number.

Coerce primitive values with Zod. Full example
const form = z.object({
    age: z
        .coerce    // SOLUTION
        .number(),
})

Solved the issue. Thanks

const schema = z.object({
  name: z.string(),
  age: z.number(),
});

const schema = z.object({
  name: z.string(),
  age: z.number(),
});

lol you already got the reply :joy:

z
        .coerce    // SOLUTION
        .number()

Easy and clean!

Coerce primitive values with Zod. Full example
const form = z.object({
    age: z
        .coerce    // SOLUTION
        .number(),
})

thanks bro. this helped me a lot...


Add a GitHub PR template

This PR proposes the introduction of a PR template, following the same structure as those in dask and distributed.

Hmm the "CI / docs (pull_request)" failure is new:
Updating 'dask-ml-docs' env from conda env update...
  /usr/share/miniconda3/condabin/conda env update --name dask-ml-docs --file /tmp/environment-patched.yml
  Collecting package metadata (repodata.json): ...working... done
  Solving environment: ...working... failed
  Warning:
  ResolvePackageNotFound:
    - python[version='3.6.6.*,3.7.*']

  ResolvePackageNotFound:
    - python[version='3.6.6.*,3.7.*']

It doesn't seem to me that it's related to the most recent commit pushed to this PR.

I can see the same failure in https://github.com/dask/dask-ml/pull/813.
@jrbourbeau, could this by any chance be related to https://github.com/dask/distributed/pull/4647#issuecomment-809614689?

Ah, thanks for pointing the documentation build errors out -- should be fixed by https://github.com/dask/dask-ml/pull/815


Updates "Forked project" to "Forked from" in project show page

Fixes #1360
Describe the changes you have made in this PR -
Forked Project --> Forked From
Screenshots of the changes (If any) -
Note: Please check Allow edits from maintainers. if you would like us to assist in the PR.

Coverage remained the same at 84.087% when pulling dc0e5210539a3ef997a46733c0b4c1423f48dc90 on Nitish145:forked-project-title-issue into bc89cead0b643d42eb6c38010b69c2bee52b4fa1 on CircuitVerse:master.

@nitin10s please review :)

Looks good to be merged @tachyons


IN-1105 More GL Codes and enable events truncate in QA

Purpose
Ensure all non-AD invoices have a supervision level.
Re-enable the events truncate in QA so we can deploy to it
Approach
Learning
Checklist

[ ] I have performed a self-review of my own code
[ ] I have done an adhoc run against preprod (only needed for high complexity PRs)
[ ] I have added relevant logging with appropriate levels to my code
[ ] I have updated documentation where relevant
[ ] I have added tests to prove my work
[ ] The product team have tested these changes

@devkokov can you please confirm you got these mappings from a reliable source and not from my guesses? :)

@devkokov can you please confirm you got these mappings from a reliable source and not from my guesses? :)

@townxelliot Confirmed. I double-checked in the casrec data 👍


useEffectOnce

A modified useEffect hook that only runs once. Similar to useLifecycles but implementation can be used more similar to React's useEffect.
This implementation uses a ref to know if the effect already ran. I have seen a lot of people using this kind of implementation but I'm not sure if it's the best way. A more straightforward way would be:
import {useEffect, EffectCallback} from 'react';

const useEffectOnce = (effect: EffectCallback) => {
  useEffect(effect, []);
}

export default useEffectOnce;

I thought I read somewhere that the ref implementation is preferable but I can't find it back.

Maybe it would be interesting to run effect once per deps change.
const useEffectOnce = (effect, deps) => {
  const didRun = useRef(false);

   useEffect(() => {
    if (!didRun.current) {
      didRun.current = true;
      const res = effect();
      return () => {
        didRun.current = false;
        return res();
      };
    }
  }, deps);
}

@streamich Isn't running the effect once per deps change is the same as useEffect?

I think we could also deprecate the useLifecycles hook if we accept this hook as they serve similar purposes. I would prefer this implementation as it's closer to React's useEffect so it should be easier to understand when you are already using hooks.

Isn't running the effect once per deps change is the same as useEffect?

@wardoost yeah, it is, haven't had coffee yet 😆
I like the name useEffectOnce, better than useLifecycles, too. And the fact that you return the unmount function, same as in useEffect hook, is nice.
Audit of what we have now:
useMount(mount)
useUnmount(unmount)
useLifecycles(mount, unmount)
useEffectOnce(function mount () {return unmount})
useUpdateEffect(update)

useMount is kinda nice semantic alias, although if you work with hooks a lot, you don't really have  a problem of doing useEffect(mount, []). I'm kinda leaning on keeping useMount and useUnmount.
useLifecycles seems, indeed, inferior to useEffectOnce and can be removed.
useUpdateEffect is very useful.

I like the
const useEffectOnce = effect => useEffect(effect, []);

implementation much more, unless there are good reasons of using the ref implementation.

I would definitely keep useMount and useUnmount because they are indeed nice semantic aliases. In useMount we might not want to return mount and change it to something like this:
const useMount = (mount) => {
  useEffect(() => {
    mount();
  }, []);
};

This way you only run your effect on mount which is more true to its name and a way to avoid overlapping functionality. useMount and useUnmount could actually also use useEffectOnce internally.
useUpdateEffect is very useful indeed 👍

I pushed the ref-less implementation more too. Let's keep it at that until there actually is a reason that the ref implementation is better.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Repair packs download

This PR fixes two bugs introduced in #1570 / #1571
Double .git extension
SSH protocol downloads via Git
In certain circumstances, the repo_url passed into the packs.download
action is returns a double .git.git extension. Contains fix to only
append .git suffix if doesn't already exist.
In #1570, the protocol for Git was changed from SSH -> HTTPS. In cases
where a git-helper is not installed (ref: st2workroom), the protocol
needs to be reverted to avoid credential prompts.
Recreating https://github.com/StackStorm/st2/pull/1576

Ugh. No good, will need to cherry pick commits. Closing.


Adding condition when categorical feature is None

Modified file:

~/multimodal_transformers/data/tabular_torch_dataset.py
~/multimodal_transformers/data/load_data.py
~/multimodal_transformers/model/tabular_combiner.py

Hi,
There seems to be a lot of file changes (20) but it isn't very clear what the actual changes are. Please resubmit the PR with changes only to the 3 files you've mentioned. This will make it easier to review and merge!


Update Defender Bypasses

Hey, I have seen the new miner and it bypasses perfectly for Defender so can you update it for your miner and binder as well? Thanks!

@UnamSanctam

@UnamSanctam Will you fix this

Hello?

Yes sorry I slept for a bit since I was up all night, I will update both the binder and the downloader now that I've "finished" the miner.

Oh, sorry for that, np, I also though that you was sleeping too because you reply really fast

Any progress?

How it's going

I'm also updating other things in the binder.

OK, thanks for letting me know!


"Gura Foii", "Bumbuia" are listed in the drop-down menu

Description:
When user writes ”Gura Foii” and "Bumbuia" the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Gura Foii"

Expected results
The location appears in the drop-down menu as "Sat Gura Foii, DÂMBOVIȚA (Gura Foii)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.


eslint-formatter: improve file

just a small refactor on the file to use some FP concepts like
map, reduce and filter chained
and other ES6+ features

Ok! I’ll keep it then!
If I need to do any changes let me know 😄

On 12 Nov 2017, at 13:12, Bond<EMAIL_ADDRESS>wrote:
@bondz commented on this pull request.
In packages/react-dev-utils/eslintFormatter.js:

let hasErrors = false;
let reportContainsErrorRuleIDs = false;

results.forEach(result => {
let messages = result.messages;

let output = results.reduce((finalString, result) => {
let { messages } = result;
Other parts of the codebase already use features that aren't supported in Node 4 and tests don't even run for that version, I guess its safe to keep using it. :)

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Fails to connect to Remote

For dome reason I can't connect to remote CC Computer.
I'm trying to use "Connect to Remote" but fails with error: Websocket connections are disabled.

What should I do, to fix it?

There was a problem in server config

I fix it


Fix for i686 on Linux

Closes: https://github.com/lighttiger2505/lab/issues/73

Thanks for contribution.
Merged


Cardinality agnostic

Allow arrays (or not) to Strings, Numbers, Objects  @kenneyw

awesome! :ship:


Docs for Adding a Tool to the Viewer do not work

Reported twice:

https://groups.google.com/forum/?nomobile=true#!topic/cornerstone-platform/H0ZK-Tfilmw
https://groups.google.com/forum/?nomobile=true#!topic/cornerstone-platform/jeypxgjRrF4

We're getting ready to formally announce version 2 of the OHIF Viewer. After the announcement, version 1 issues will receive lower priority support. As this issue is a bit stale, I'm going to close it for now.
Related: https://github.com/OHIF/Viewers/projects/3#card-21712696


Add compaction type output result for nodetool compactionhistory for CASSANDRA-18061

Add compaction type output result for nodetool compactionhistory for CASSANDRA-18061
The Cassandra 18061

I have a question - where exactly the new column is added to the table schema?

The new column is added in SystemKeyspace
In SystemKeyspace.java at the first time CompactionHistory's TableMeta parsed.

also needs an update in NEWS.txt and CHANGES.txt