Fix Ledger error for Stacks contract executions ("Your ledger device has rejected the payload stating it is invalid")

Reproduction steps

Go to app.arkadiko.finance
Sign in with Leather extension and Ledger device connected
Go to Borrow
Click any of the three options, for example xBTC, click the borrow button.
Input amount of xBTC to collateralize
mint a minimum of 500 USDA
Click continue
Click open vault
Leather popup appears, click confirm
See error

A user reported that the same thing happens with other vault operations.

Experiencing Issues with Deposit, Withdrawal, and Debt Repayment Interactions

It wasn't an issue prior to this vault v2 merge on Arkadiko's side https://github.com/arkadiko-dao/arkadiko/pull/557

This was tested with Ledger nano S plus (firmware v1.1.1), And Ledger Nano X, with latest firmware.

This might be related to this issue?
https://github.com/leather-wallet/extension/issues/5113

Thanks for sharing! 5113 looks related to bitcoin/PSBT operations, while this is related to Stacks network operations. They are likely unrelated.

That said we do want to do a full audit of the wallet with Ledger this week.

Possibly resolved with #2725?
Retested today
Closing vault works with Ledger device. But opening a vault is not supported, "rejected payload..."
Deposit and withdraw, I tested and confirmed to fail with "rejected payload" error too.

Users are reporting this same issue when visiting Gamma Stacks NFT marketplace and trying to use Ledger.
'There's a technical issue when we try to access our account or manage collection using Leather (connected to Ledger Nano X) on PC. When we click on 'sign message,' on Gamma profile page, it returns this error: 'Your Ledger device has rejected the payload, stating it is invalid.' It occurs only on Stacks. The Bitcoin Gamma it's ok. Tested with: Chrome: v.124.0.6367.63, Leather: v.6.36, Ledger Live: v.2.79.1, Windows 10 Pro: v.22H2'

Also on stackingdao btw

Thanks for the reports and apologies this isn't working.
I'm doing a full audit of ledger with Leather right now and and will investigate this soon

@pete-watters thanks!
the same error also happens when trying to generate a signature on https://app.stackingdao.com/signer?pool=SP4SZE494VC2YC5JYG7AYFQ44F5Q4PYV7DVMDPBG.stacking-pool-v1 - would be great if you can try it (just click on either of the "Save Commit Signature" buttons and sign the message)

Thanks @philiphacks . I took a quick look to triage and I can indeed re-reproduce the error.
We are showing this error as were are getting a 27012 error message when running whenSignableMessageOfType here. This gives us the response:
{returnCode: 27012, errorMessage: 'Data is invalid : Unexpected data type’}

I also see in the console of https://app.stackingdao.com/ that we are displaying a deprecation warning and recommending to instead use LeatherProvider.request('stx_signMessage')
inpage.ts:257 Deprecation warning: Use LeatherProvider.request('stx_signMessage') instead

I was reproducing and trying to gather more information to see whats going wrong but now when I am clicking Save Commit Signature I am getting a weird disconnection message

Have you seen that?
I am not sure if the above is helpful and I will keep investigating but just sharing these initial findings

@philiphacks - did you have a chance to check https://github.com/leather-wallet/extension/issues/5115#issuecomment-2089641125?
According to the issue description it seems like this was working prior to https://github.com/arkadiko-dao/arkadiko/pull/557 so perhaps it's not an issue with Leather?

This has also been reported by ALEX with Leather version 6.41.1 👇

Hi, I am unable to vote on the Treasury Grant Program, and the Re-opening of Unaffected Pools ballots using a Ledger verified account. I see several others above are also getting the same error, but there's no resolution, update, or workaround provided that I can find.  Can you advise?   The error received is Data Invalid Your Ledger device has rejected the payload stating it is invalid "

I'll have a look at this again but afaik this is not Arkadiko-related, I will try to upgrade our dependencies though

Another team experienced similar issues on certain contract calls. And they also ran into this error.
They tried on Xverse and they also get an error. Trying to open a vault with Xverse following the steps in the first post here results in this error:

I think the issue is on the Ledger/Stacks App side.
The Stacks Foundation will need to be involved to get the Stacks App updated. They can ask Zondax for help.

@pete-watters has filed here for resolution with the Stacks app, since it appears that the functionality is broken in Leather as a downstream effect of a Ledger-side bug.

I am working with Zondax to try and get to the bottom of this. I have provided them with details of how to replicate the problem on Stacking Dao. I confirmed that the problem does also occur on nano s.
I provided them with the payload we are sending when following these steps:

Go to https://app.stackingdao.com/signer?pool=SP4SZE494VC2YC5JYG7AYFQ44F5Q4PYV7DVMDPBG.stacking-pool-v1
Authenticate with Leather Wallet
Click on either of the "Save Commit Signature" buttons and sign the message

They replied to say:

This issue would not be fixed by any of the latest changes that will soon be merged.
it is likely that the number of nested values in that structured message is triggering a recursion limit in the app, to avoid consuming the stack that is very limited on nanos/s2/x or an unexpected data type in the message domain or while traversing the msg values.
there is no way to get the serialized data being send to the ledger? I can not tell with certainty that this is the case. i will take a look at the link and see if I can extract some data to use also in our testing suite

I will try and get the serialised data sent to help them diagnose further

I passed on some more information to Zondax: https://github.com/Zondax/ledger-stacks/issues/159#issuecomment-2223276545
They said:
I will put it in our tests suite internally for easy debugging of this bug, hopefully, it would be about adjusting some types/value limits and not due to device limitations. I will keep you posted

Hi @all
We were provided the following data that in theory would help to reproduce the issue in discussion here:

stx_derivation_path: m/44'/5757'/0'/0/0
domain: 0c0000000308636861696e2d69640100000000000000000000000000000001046e616d650d0000000c706f782d342d7369676e65720776657273696f6e0d00000005312e302e30
payload: 0c0000000607617574682d696401000000000000000000000000000ca5640a6d61782d616d6f756e7401000000000000003635c9acdd09faf00006706572696f64010000000000000000000000000000000108706f782d616464720c000000020968617368627974657302000000142fffa9a09bb7fa7dced44834d77ee81c49c5f0cc0776657273696f6e0200000001040c7265776172642d6379636c65010000000000000000000000000000005905746f7069630d0000000a6167672d636f6d6d6974

However, that data passed our tests and we do not see any issue,
As we are preparing for a release, I would rather want to revisit this in order to apply any fixes if necessary, can anyone help by providing similar information as above that we can use to reproduce the issue?

@neithanmo Is there an idiot's guide to finding the domain and payload?
My derivation path in Ledger is the same as yours, but I'm still getting the error regardless, when I try to open an Arkadiko vault. I'd be happy to provide my data, but I'm not sure how to find those two

Hi @Dior-Aranel ,
I obtained the payload and domain by:

performing the actions here
analysing the data sent to app.sign_structured_msg in Leather's signLedgerStacksStructuredMessage function

You could add a breakpoint to get that information or else I can get it. You are trying to open a Vault right? Similar to https://github.com/leather-io/extension/issues/5115#issue-2202850199?
I think it could be worth it to update to stx_signMessage as per https://github.com/leather-io/extension/issues/5115#issuecomment-2089641125 however we can see that performing the same action on Xverse also fails https://github.com/leather-io/extension/issues/5115#issuecomment-2145521615

I have gathered info reproducing this bug when trying to create a Vault in Arkadiko.
When creating a vault it's slightly different and we use app.sign rather than app.sign_structured_msg. The result is the same though and it is rejected with the following error:
errorMessage: "Data is invalid : Authorization type not supported"
returnCode: 27012

For app.sign we don't send the domain but we send this payload:
0000000001040025a6b5c2c50a2abbff700b87c8dfe29bda77523b0000000000000003000000000000e41800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003020000000101021625a6b5c2c50a2abbff700b87c8dfe29bda77523b16dbd1c48f77bf2f9506a3d79117fc1c7eda3b89100f577261707065642d426974636f696e0f777261707065642d626974636f696e05000000000015e3070216982f3ec112a5f5928a5c96a914bd733793b896a51f61726b6164696b6f2d7661756c74732d6f7065726174696f6e732d76312d320a6f70656e2d7661756c740000000b0616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d746f6b656e732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51961726b6164696b6f2d7661756c74732d646174612d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d736f727465642d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a52061726b6164696b6f2d7661756c74732d706f6f6c2d6163746976652d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51c61726b6164696b6f2d7661756c74732d68656c706572732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51461726b6164696b6f2d6f7261636c652d76322d330616dbd1c48f77bf2f9506a3d79117fc1c7eda3b89100f577261707065642d426974636f696e010000000000000000000000000015e307010000000000000000000000001ddca7400a0516c9a03720732a3148129a121f58d2ba37f6c649450100000000000000000000000000000000

@pete-watters
Correct, I am trying to open a vault similar to the comment you linked
I tried going through the steps you listed here
The error message I got was: "Your Ledger device has rejected the payload stating it is invalid". When I try to open an Arkadiko vault, that's the same error message I get
When I try Arkadiko, this is the payload I can find. I'm still stuck on trying find the domain. I'm a newbie when it comes to digging through Chrome DevTools
0216982f3ec112a5f5928a5c96a914bd733793b896a51f61726b6164696b6f2d7661756c74732d6f7065726174696f6e732d76312d320a6f70656e2d7661756c740000000b0616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d746f6b656e732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51961726b6164696b6f2d7661756c74732d646174612d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d736f727465642d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a52061726b6164696b6f2d7661756c74732d706f6f6c2d6163746976652d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51c61726b6164696b6f2d7661756c74732d68656c706572732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51461726b6164696b6f2d6f7261636c652d76322d330616982f3ec112a5f5928a5c96a914bd733793b896a50a777374782d746f6b656e010000000000000000000000003b9aca00010000000000000000000000001dcd65000a05161e5db096b4fc9a7bf49395d5168997257f262bb40100000000000000000000000000000000

I have gathered info reproducing this bug when trying to create a Vault in Arkadiko.
When creating a vault it's slightly different and we use app.sign rather than app.sign_structured_msg. Ledger rejects it with the following error:
errorMessage: "Data is invalid : Authorization type not supported"
returnCode: 27012

This is a structured message, so You should use app.sign_structured_msg method, which takes care of construction the header + domain and message(payload)

When calling `app.sign_structured_msg`. Ledger rejects it with the following error:

that is weird, i used your data in a test that calls app.sign_structured_msg:
      const signatureRequest = app.sign_structured_msg(
        path,
        '0c0000000308636861696e2d69640100000000000000000000000000000001046e616d650d0000000c706f782d342d7369676e65720776657273696f6e0d00000005312e302e30',
        '0c0000000607617574682d696401000000000000000000000000000ca5640a6d61782d616d6f756e7401000000000000003635c9acdd09faf00006706572696f64010000000000000000000000000000000108706f782d616464720c000000020968617368627974657302000000142fffa9a09bb7fa7dced44834d77ee81c49c5f0cc0776657273696f6e0200000001040c7265776172642d6379636c65010000000000000000000000000000005905746f7069630d0000000a6167672d636f6d6d6974',
      )

      // Wait until we are not in the main menu
      await sim.waitUntilScreenIsNot(sim.getMainMenuSnapshot())
      await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign-structured_data_${name}`)

      // Check the signature
      const signature = await signatureRequest

      console.log(signature)
      expect(signature.returnCode).toEqual(0x9000)
      expect(signature.errorMessage).toEqual('No errors')

no errors

I would give this payload:
0000000001040025a6b5c2c50a2abbff700b87c8dfe29bda77523b0000000000000003000000000000e41800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003020000000101021625a6b5c2c50a2abbff700b87c8dfe29bda77523b16dbd1c48f77bf2f9506a3d79117fc1c7eda3b89100f577261707065642d426974636f696e0f777261707065642d626974636f696e05000000000015e3070216982f3ec112a5f5928a5c96a914bd733793b896a51f61726b6164696b6f2d7661756c74732d6f7065726174696f6e732d76312d320a6f70656e2d7661756c740000000b0616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d746f6b656e732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51961726b6164696b6f2d7661756c74732d646174612d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d736f727465642d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a52061726b6164696b6f2d7661756c74732d706f6f6c2d6163746976652d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51c61726b6164696b6f2d7661756c74732d68656c706572732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51461726b6164696b6f2d6f7261636c652d76322d330616dbd1c48f77bf2f9506a3d79117fc1c7eda3b89100f577261707065642d426974636f696e010000000000000000000000000015e307010000000000000000000000001ddca7400a0516c9a03720732a3148129a121f58d2ba37f6c649450100000000000000000000000000000000
a try while still using the domain above.

I would give this payload:
0000000001040025a6b5c2c50a2abbff700b87c8dfe29bda77523b0000000000000003000000000000e41800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003020000000101021625a6b5c2c50a2abbff700b87c8dfe29bda77523b16dbd1c48f77bf2f9506a3d79117fc1c7eda3b89100f577261707065642d426974636f696e0f777261707065642d626974636f696e05000000000015e3070216982f3ec112a5f5928a5c96a914bd733793b896a51f61726b6164696b6f2d7661756c74732d6f7065726174696f6e732d76312d320a6f70656e2d7661756c740000000b0616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d746f6b656e732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51961726b6164696b6f2d7661756c74732d646174612d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d736f727465642d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a52061726b6164696b6f2d7661756c74732d706f6f6c2d6163746976652d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51c61726b6164696b6f2d7661756c74732d68656c706572732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51461726b6164696b6f2d6f7261636c652d76322d330616dbd1c48f77bf2f9506a3d79117fc1c7eda3b89100f577261707065642d426974636f696e010000000000000000000000000015e307010000000000000000000000001ddca7400a0516c9a03720732a3148129a121f58d2ba37f6c649450100000000000000000000000000000000
a try while still using the domain above.

Ok this payload triggers an error, i am assuming it does not contains a domain.
i replaced the previous payload with this one, and logs seem to indicate that there is more data than expected, this is considered an error
|SP| 500036f8 5000aee8 (30700) : **Domain parsed
|SP| 500036f8 5000aec0 (30660) : Value::from_bytes
|SP| 500036f8 5000aee8 (30700) : **Remainder data not empty

So, after parsing the payload as a clarity value, the parser found unexpected data in the input buffer.
Can you check if more data is being appended to the serialized payload and sent to the device?

Is the payload not a tuple?
0000000001040025a6b5c2c50a2abbff700b87c8dfe29bda77523b0000000000000003000000000000e41800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003020000000101021625a6b5c2c50a2abbff700b87c8dfe29bda77523b16dbd1c48f77bf2f9506a3d79117fc1c7eda3b89100f577261707065642d426974636f696e0f777261707065642d626974636f696e05000000000015e3070216982f3ec112a5f5928a5c96a914bd733793b896a51f61726b6164696b6f2d7661756c74732d6f7065726174696f6e732d76312d320a6f70656e2d7661756c740000000b0616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d746f6b656e732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51961726b6164696b6f2d7661756c74732d646174612d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51b61726b6164696b6f2d7661756c74732d736f727465642d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a52061726b6164696b6f2d7661756c74732d706f6f6c2d6163746976652d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51c61726b6164696b6f2d7661756c74732d68656c706572732d76312d310616982f3ec112a5f5928a5c96a914bd733793b896a51461726b6164696b6f2d6f7261636c652d76322d330616dbd1c48f77bf2f9506a3d79117fc1c7eda3b89100f577261707065642d426974636f696e010000000000000000000000000015e307010000000000000000000000001ddca7400a0516c9a03720732a3148129a121f58d2ba37f6c649450100000000000000000000000000000000
it starts with 1, which is the clarity value identifier for uint:
pub enum ValueId {
    Int = 0x00,
    UInt = 0x01,
    Buffer = 0x02,
    BoolTrue = 0x03,
    BoolFalse = 0x04,
    StandardPrincipal = 0x05,
    ContractPrincipal = 0x06,
    ResponseOk = 0x07,
    ResponseErr = 0x08,
    OptionalNone = 0x09,
    OptionalSome = 0x0a,
    List = 0x0b,
    Tuple = 0x0c,
    StringAscii = 0x0d,
    StringUtf8 = 0x0e,
}

that is why the parse reads that and finishes, leaving remaining data in the buffer which triggers an error

@philiphacks see the above, is the payload type something that changed on your side from v1 to v2?

Hi there, im getting the same error trying to launch a memecoin on stx.city
i keep getting the following error:
Data Invalid
Your Ledger device has rejected the payload stating it is invalid
Has there been any sollution for this yet?

@314159265359879 I doubt it - I don't know what we would have changed since the implementation works with SW wallets; not sure I understand the question :)

@pete-watters thank you for coordinating this issue with Zondax's team! any update?

Hi @lgalabru,
I don't have a further update yet. When I spoke to the Zondax team they ran the original data through their simulator and it worked. They then came back to me with these Q's about the data provided:

https://github.com/leather-io/extension/issues/5115#issuecomment-2251768148
https://github.com/leather-io/extension/issues/5115#issuecomment-2251893456

The error message we see in Leather Your ledger device has rejected the payload stating it is invalid" is a generic one we show in the UI when ledger rejects the transaction. It could reject the transaction for many reasons, including data issues and a possible bug.
In @314159265359879 's original report he says

It wasn't an issue prior to this vault v2 merge on Arkadiko's side https://github.com/arkadiko-dao/arkadiko/pull/557

I'm unsure if it's to do with the data being passed as the Zondax team mention
Do you have a particular use case you are seeing this error for? Is it with Arkadiko or doing something else? If it's different and you can give me some reproduction steps I am happy to take a look and gather some more information on it to try and solve this

With stacks app version 0.24.2 I nolonger get the "your ledger device has rejected the payload stateing it is invalid" but I still can't proceed. Now the Ledger device screen goes black. It looks like the whole thing turns off.
I see this when opening a vault on arkadiko.finance
trying to sign a simple swap transaction on bitflow.finance or alexlab.co
I tested this with two ledger devices, I thought maybe the device was faulty. It is the same on both.
As soon as I click "confirm" in the pop-over it just remains on loading and the device turns off:

With stacks app version 0.24.2 I nolonger get the "your ledger device has rejected the payload stateing it is invalid" but I still can't proceed. Now the Ledger device screen goes black. It looks like the whole thing turns off.
I see this when opening a vault on arkadiko.finance trying to sign a simple swap transaction on bitflow.finance or alexlab.co
I tested this with two ledger devices, I thought maybe the device was faulty. It is the same on both.
As soon as I click "confirm" in the pop-over it just remains on loading and the device turns off:

Thanks for testing this @314159265359879 . This seems like a different issue but as you said it also happens with Xverse it could be a new problem with the Zondax app.

Has anyone investigated this issue?
We need to adhere to the specification's recommendations, which involve using tuples for passing arguments. This method is safer than reading arguments one by one until the buffer is exhausted, as it prevents the risk of reading invalid bytes when the number of arguments is unknown. Unless this is fixed in the wallets currently in use, this error will continue to occur.
In my previous message, I analyzed the passed payload and noticed that the arguments are not being passed as a Clarity tuple:
tuple(arg1, arg2, arg3)

Instead, they are concatenated directly as:
arg1 || arg2 || arg3

This is error-prone because our parser expects arguments in tuple format, as recommended by the specification. We recommend updating the wallets or clients to pass arguments using tuples to prevent this issue from recurring.

Trying to make sense of this thread. This issue discusses problems with both stx_signMessage and signTransaction specifically with contract calls, which makes it difficult to follow.
@philiphacks mentions in https://github.com/leather-io/extension/issues/5115#issuecomment-2088717168 that he found a similar error when signing a message. Are we certain these are related, or is it just a similar error?
@neithanmo In https://github.com/leather-io/extension/issues/5115#issuecomment-2251893456 you pass a Stacks transaction payload, and then cite the SIP-018 structured message SIP. If I'm not mistaken, this SIP has no relevance to transaction signing?

Thanks @kyranjamie, I did some more investigating also checking differences with different Stacks app versions. It looks like they are unrelated. Just throwing the same general error.
Way forward: With this issue lets focus only on resolving the issue with Arkadiko Vaults. For which we have reproduction steps in the first post.
Sidenotes
I have moved the StackingDAO issue mentioned here https://github.com/leather-io/extension/issues/5115#issuecomment-2088717168 to https://github.com/leather-io/extension/issues/5864 that looks to have been resolved. Although the latest Stacks App update has a bug that is causing other issues now a solution for that https://github.com/Zondax/ledger-stacks/issues/171 is in the works.
This comment relates to this issue https://github.com/leather-io/extension/issues/4683 and is partially resolved on the live version and completely resolved with version 0.24.4+ (not yet live).

Retested opening a vault on Arkadiko (reproduction steps in first post) this still fails the same way) with 0.24.5 of the Stacks App (sideloaded on Ledger Nano S+).
According to this comment by neithanmo https://github.com/leather-io/extension/issues/5115#issuecomment-2358489861 the wallet is passing the arguments concatenated rather than as a tuple which is causing the issue.
@kyranjamie can you create a Leather build in which we do pass the arguments as a tuple, so we can test if that resolves the issue?

I'm not particularly well versed Stacks tx construction, would love input from others cc/ @janniks @Jbencin
From what I can see, functionArgs are untouched by stacks.js' makeUnsignedContractCall method meaning, currently, apps would need to make these tx formatting changes themselves, without the wallet manipulating inbound txs, or stacks.js lib updates.
Contract call functionArgs are expected to be type ClarityValue[], not specifically a tupleCV type specifically. Also TupleCV expects an associative array, so unclear how this ordering mentioned in @neithanmo's comment is achieved.
Where is it stated that contract call args must be a tuple? Also SIP-005 says that they should be encoded with a length-prefix, doesn't this mitigate the need to read the args one by one until empty, as length is known?

Contract call functionArgs are expected to be type ClarityValue[], not specifically a tupleCV type specifically. Also TupleCV expects an associative array, so unclear how this ordering mentioned in @neithanmo's comment is achieved.

Hi @kyranjamie
Indeed, for a contract call(functionArgs), we do not expect a tuple but a length-prefixed list of clarity values(arguments). On this, we are on the same page.
The issue I outlined here and above pertains to signing structured data. According to the specs, this data should be wrapped in a tuple, but we received a structured message with a list of Clarity values instead, that is why app is returning an "Invalid Data error". I recommended following the specification’s guidance.
This issue is unrelated to function arguments in contract calls.

So should the zondax JS library be used differently? I'm not sure where this misalignment is happening. The domain is a tuple yes, and the message can be any clarity type. Spec. When is the error occurring?

So should the zondax JS library be used differently? I'm not sure where this misalignment is happening. The domain is a tuple yes, and the message can be any clarity type. Spec. When is the error occurring?

the stacks.js library takes any clarity value, but spec recommends it to be a tuple which is a clarity value. However in the sip018 documentation, the following is suggested:
_Structured Data can be any valid Clarity Value. It is assumed that it will usually take the form of a tuple type, as it allows for multiple fields with readable names to be encoded. The standard does permit it to be another type to remain flexible. Still, developers should consider the informational content of requesting a user to sign a simple type like a principal, int, uint, or bool. A tuple can of course contain any type.
That is why our parser looks for a clarity value, a tuple, that is why it returns a Data invalid error

Another user reported this issue while trying to swap for some $ROO on Velar.
RaizeL from Velar mentioned a fix, thought I would share it here.
Please check if this is your fix:
https://x.com/raizel_btc/status/1854733129367667094
"This error occurs due to a limitation on the number of contract call arguments ledger support in normal mode, which is capped at 10. To sign a transaction with more than 10 arguments, please enable Expert Mode in your Ledger app. No need to make any other changes, just turn on expert mode"

Hi @highrollerBTC, thanks for sharing it here too.
I also thought there might be a relation because there is 11 arguments here, tested and confirmed this resolved it, I informed Arkadiko about it via telegram. https://t.me/arkadikofin/25124
I have asked one of the Stacks App devs to increase the limit in non-expert-mode so users don't have to take this extra step for otherwise normal transactions. It is just a lot of clicks on the device to go all the way through the transaction arguments. So expert-mode may be used to allow skipping some of that.
The related issue on the Stacks App for Ledger live can be found here: https://github.com/Zondax/ledger-stacks/issues/176


no DeepCopyObject() method for watch.Event type

Hi,
We're using the watch.Event type in our internal code base extensively. Some of the places encode it as well. After upgrading to latest client-go it stopped compiling because of the missing method DeepCopyObject. Seems like the following line is missing (https://github.com/kubernetes/apimachinery/blob/master/pkg/watch/watch.go#L54):
// k8s:deepcopy-gen:interfaces=k8s.io/kubernetes/runtime.Object

Can we generate this method for this type as well? I can open a PR but wasn't sure if that was intentionally like this.

@sttts

@fatih please take a look at https://github.com/kubernetes/client-go/issues/259. Sounds like the same problem, i.e. vendoring of the wrong apimachinery version.

@sttts Thanks for the info. But we're using now the latest apimachinery and I think this type should have this method anyway as it might be needed (we do now). Is there a way we could add these ?

@fatih got it. I am hestitant to turn watch.Event into an object. It is an internal type not meant to be serialized. It misses the GetObjectKind() schema.ObjectKind implementation as well. Why don't you use metav1.WatchEvent?

@sttts sure, but seems like it's not the same struct. It expects a runtime.RawExtension, not a runtime.Object.

It is an internal type not meant to be serialized

I'm using it for testing a Watch() call from the client. An example from the test I use:
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
	flusher, ok := w.(http.Flusher)
	if !ok {
		panic("need flusher!")
	}

	w.Header().Set("Transfer-Encoding", "chunked")
	w.WriteHeader(http.StatusOK)
	flusher.Flush()

	scheme := runtime.NewScheme()
	jsonSerializer := kubejson.NewSerializer(
		kubejson.DefaultMetaFactory, scheme, scheme, false)

	encoder := streaming.NewEncoder(w, jsonSerializer)
        // this is the place where it doesn't work anymore as `watch.Event()` doesn't have DeepCopyBoject() anymore
	if err := encoder.Encode(watch.Event{
		Type:   watch.Added,
		Object: obj,
	},
	); err != nil {
		panic(err)
	}

	flusher.Flush()
}))
defer ts.Close()

config := &rest.Config{
	Host: ts.URL,
}

client, err := NewClient(config)
if err != nil {
	t.Fatal(err)
}

// Certificates is a TPR we have implemented internally, but same logic applies to other resources
watcher, err := client.Certificates("default").Watch(metav1.ListOptions{})
if err != nil {
	t.Fatal(err)
}

ch := watcher.ResultChan()
event, ok := <-ch
if !ok {
	t.Errorf("should get a response, didn't have anything")
}

If there is any other solutions I'm happy to test it, but adding the DeepObjectObject() at least is useful for reasons like this (testing).

Compare vendor/k8s.io/apiserver/pkg/endpoints/handlers/watch.go:221. That's the http watch server in kube. It converts the watch.Event to a metav1.Event by essentially writing the embedded runtime.Object into the RawExtension's Object field (in Convert_versioned_InternalEvent_to_versioned_Event). Then the encoder will do the serialization normally.

Thanks @sttts.

@sttts Sure, thanks for the help again.


Include sources in package?

Hey, how about including the sources in the npm package? this could be useful for debugging.
Also, I'm using webpack with source-map-loader with a setup that expects source maps to be valid, and they fail in this case since the paths indicated in the source map is absent.

Sure. Could you please help me on this? What should I do, just
-  "files": ["lib"],
+  "files": ["lib", "src"],

in package.json?

Could we solve the import "fp-ts/lib/.." issue while we're at it?
Basically, I think most people just want to write "fp-ts/module" instead of "fp-ts/lib/module". This was already mentioned in an issue somewhere, forgot where.
If I remember, I'll have a tinker with it tonight.
As for the sources, you need to generate mappings, etc, I'll have a look at that too.

Will adding sources affect IDE/editor autocompletion in any way? Especially with duplicates in lib and src?

It shouldn't, when properly done

I'm hitting the source-map-loader issue as well which prevents me from using this wonderful library
WARNING in ../~/fp-ts/lib/Option.js
(Emitted value instead of an instance of Error) Cannot find source file '../src/Option.ts': Error: Can't resolve '../src/Option.ts' in...

@boaz-chen do you know what's the fix?

Ok, I found a working workaround follwing https://github.com/apollographql/react-apollo/issues/597 which makes the warnings go away.
@gcanti I don't know what the fix is unfortunately.

@gcanti
I'm happy to jump in here and fix this, I just need a bit of direction on a few points:
Publish source or remove sourcemaps?
Just double-checking: we do want to publish the source to the registry?
Pros

Editor/IDE source lookup, not just type lookup.

Cons

Larger package size.
Potential conflicts in the version of TypeScript used to write fp-ts vs. the consumer.

FWIW, most TypeScript libraries do not publish the source, just the definitions files, since the source files are potentially not valid depending on the version of TypeScript compiler you're using. If we wanted to go this route, we would just need to turn off sourcemaps in the compilerOptions or ignore the .map.js files in package.json. Either way is super easy. 👍
Module import pattern
There is a mention of the fp-ts/lib/Foo pattern being a bit of a friction point. That feels like a breaking change to actually fix that, but I think we could keep that but also re-export each class in the main as a named export.
Basically, I'm suggesting we support both of these import statements for backwards-compatibility:
import Foo from 'fp-ts/lib/Foo';

and
import { Foo } from 'fp-ts';

FWIW, most TypeScript libraries do not publish the source, just the definitions files, since the source files are potentially not valid depending on the version of TypeScript compiler you're using

Thanks for pointing out. So, let's do not generate the .map.js files in compilerOptions for now.


Flutter engine -> framework autoroller doesn't account for Fuchsia build failures

Commit: https://chromium.googlesource.com/external/github.com/flutter/engine/+/f44f50f3c58785807936b12b8ed6bec42a135f84
Failure: https://ci.chromium.org/p/flutter/builders/prod/Linux Fuchsia/2370
Successful autoroll: https://github.com/flutter/flutter/pull/50113
This shouldn't be successful because the fuchsia.stamp file isn't successfully uploaded for that commit.
cc: @dnfield , @rmistry

I'm not sure what happened there. But I need to update that roller to use dnfield@'s merge bot, which should not run into issues like this. I'll do it later today.

Ok, switched the roller to use the mergebot. The autoroller will no longer try to figure out if everything passed and do the merging.

awesome, thanks @rmistry !


usePermission throws exception in iOS Safari

What is the current behavior?
When testing on BrowserStack with a physical iPhone 11 in Safari, navigator.permissions.query is throwing an exception within usePermission.

Steps to reproduce it and if possible a minimal demo of the problem. Your bug will get fixed much faster if we can run your code and it doesn't have extra dependencies other than react-use. Paste the link to your JSFiddle or CodeSandbox example below:
Run the code in Safari on desktop. Or, sign up for BrowserStack (free) and open an app that uses usePermission in Safari.
What is the expected behavior?
usePermission should probably no-op if the Permissions API is not supported. Alternatively, for each kind of permission, it could try and support what Safari is able to support (notifications, mostly).
See Google polyfill for an example: https://github.com/chromium/permissions.request
Workaround
I haven't found one yet since Rule of Hooks states you can't conditionally execute a hook. Polyfilling the APIs that I need (notifications) may be the only alternative that is compatible.
A little about versions:

OS: iOS
Browser (vendor and version): Safari v13
React: 16.13
react-use: 15.1.1
Did this worked in the previous package version? No

I'm seeing this on safari on mobile and desktop

This is still throwing an exception on safari on all plaftorms...


[FLINK-6773] [checkpoint] Introduce compression (snappy) for keyed st…

This PR introduce optional snappy compression for the keyed state in full checkpoints and savepoints. This feature can be activated through a flag in ExecutionConfig.
For the future, we can also support user-defined compression schemes, which will also require a upgrade and compatibility feature, as described in FLINK-6931.

CC @tillrohrmann

Thanks for the review @tillrohrmann! I will address your comments and proceed with merging.

Merged in 5171513a3c.


cannot make inputs artifacts optional

Summary
The workflow in test/e2e/testdata/input-artifacts.yaml fails like this

We're using argo v3.1.6
Init container logs are like this:

time="2021-08-25T06:52:45.318Z" level=info msg="Start loading input artifacts..."
time="2021-08-25T06:52:45.318Z" level=info msg="Downloading artifact: my-http-artifact"
time="2021-08-25T06:52:45.318Z" level=info msg="curl -fsS -L -o /argo/inputs/artifacts/my-http-artifact.tmp https://github.com/argop
roj/argo-workflows/not-found"
time="2021-08-25T06:54:46.808Z" level=info msg="curl: (52) Empty reply from server\n"
time="2021-08-25T06:54:46.808Z" level=error error="exit status 52"
time="2021-08-25T06:54:46.808Z" level=error msg="executor error: artifact my-http-artifact failed to load: exit status 52"
time="2021-08-25T06:54:46.809Z" level=info msg="Alloc=4874 TotalAlloc=9829 Sys=74577 NumGC=4 Goroutines=3"
time="2021-08-25T06:54:46.849Z" level=fatal msg="artifact my-http-artifact failed to load: exit status 52"

We're trying to pass caches to templates as optional artifacts, so templates won't fail when certain caches don't exist. However, the optional field is not working as expected.

Message from the maintainers:
Impacted by this bug? Give it a 👍. We prioritise the issues with the most 👍.

https://github.com/argoproj/argo-workflows/blob/4e450e250168e6b4d51a126b784e90b11a0162bc/workflow/artifacts/hdfs/hdfs.go#L145
Take this for example. If the file doesn't exist on hdfs, hdfscli.Stat won't succeed. However, a specific error which is not CodeNotFound is returned, even when optional is specified.

This looks like HDFS only. Would you like to submit a fix to do the error mapping?


Update question_11.c

corrected the syntax

Have you read the Contributing Guidelines on Pull Requests?
yes
Description
I decided to make this change because these were the basic syntax errors . If not corrected them it will bring a lot of errors during compilation.
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[ ] I've edited the README.md according to the changes I have made.

Related Issues or Pull Requests
found many syntax errors . Corrected them

You had done the nice work @SanyuktaSaha, But this programme is not yet started, we will check it and commit once we announce this officially. Until the time, please be patient!😊.

We are closing this pull request because of the following reasons:

The Event hasn't started yet.
You have not followed the Contributing Guidelines mentioned in this repository.


Update native messaging documentation

Docs Build status updates of commit 0aff66b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:bulb:Suggestion

Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 22, Column 1: [Suggestion-code-block-indented] Indented code blocks aren't allowed. Use a Markdown code block surrounded by triple backticks (```). NOTE: This Suggestion will become a Warning in late September, 2020.
Line 44, Column 1: [Suggestion-code-block-indented] Indented code blocks aren't allowed. Use a Markdown code block surrounded by triple backticks (```). NOTE: This Suggestion will become a Warning in late September, 2020.

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

Docs Build status updates of commit 1ceecaa:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:warning:Warning

Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 6, Column 10: [Warning-ms-date-invalid] Invalid date format for 'ms.date': '26/08/2020'. Must be a date in format MM/DD/YYYY, no more than 30 days from today.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 672fca1:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:warning:Warning

Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 6, Column 10: [Warning-ms-date-invalid] Invalid date format for 'ms.date': '26/08/2020'. Must be a date in format MM/DD/YYYY, no more than 30 days from today.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 2778cad:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:warning:Warning

Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 6, Column 10: [Warning-ms-date-invalid] Invalid date format for 'ms.date': '26/08/2020'. Must be a date in format MM/DD/YYYY, no more than 30 days from today.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit b4f1b71:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:warning:Warning

Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 6, Column 10: [Warning-ms-date-invalid] Invalid date format for 'ms.date': '26/08/2020'. Must be a date in format MM/DD/YYYY, no more than 30 days from today.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 13bc514:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:warning:Warning

Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 6, Column 10: [Warning-ms-date-invalid] Invalid date format for 'ms.date': '26/08/2020'. Must be a date in format MM/DD/YYYY, no more than 30 days from today.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit c8049f0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:white_check_mark:Succeeded

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

Docs Build status updates of commit 795cc1e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:white_check_mark:Succeeded

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

Docs Build status updates of commit 91c394f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:white_check_mark:Succeeded

microsoft-edge/toc.yml
:white_check_mark:Succeeded

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

Docs Build status updates of commit 2588492:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-PullRequestMergeConflict] Cannot sync git repo to specified state. Please make sure the pull request is mergeable.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 4a07ac4:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-PullRequestMergeConflict] Cannot sync git repo to specified state. Please make sure the pull request is mergeable.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit be3928a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:bulb:Suggestion

Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 90, Column 1: [Suggestion-code-block-indented] Indented code blocks aren't allowed. Use a Markdown code block surrounded by triple backticks (```). NOTE: This Suggestion will become a Warning in late September, 2020.

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

Docs Build status updates of commit 589d141:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:bulb:Suggestion

Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 94, Column 1: [Suggestion-code-block-indented] Indented code blocks aren't allowed. Use a Markdown code block surrounded by triple backticks (```). NOTE: This Suggestion will become a Warning in late September, 2020.

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

Docs Build status updates of commit bc05535:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:bulb:Suggestion

Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md

Line 94, Column 1: [Suggestion-code-block-indented] Indented code blocks aren't allowed. Use a Markdown code block surrounded by triple backticks (```). NOTE: This Suggestion will become a Warning in late September, 2020.
Line 100, Column 1: [Suggestion-code-block-indented] Indented code blocks aren't allowed. Use a Markdown code block surrounded by triple backticks (```). NOTE: This Suggestion will become a Warning in late September, 2020.

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

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

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:white_check_mark:Succeeded

microsoft-edge/toc.yml
:white_check_mark:Succeeded

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

Signing off on the native messaging documentation.

Docs Build status updates of commit bcba1a7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:white_check_mark:Succeeded

microsoft-edge/toc.yml
:white_check_mark:Succeeded

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

Docs Build status updates of commit 2608135:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:white_check_mark:Succeeded

microsoft-edge/toc.yml
:white_check_mark:Succeeded

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

Docs Build status updates of commit d65acd7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:white_check_mark:Succeeded

microsoft-edge/toc.yml
:white_check_mark:Succeeded

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

Docs Build status updates of commit 3a2e61f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
:white_check_mark:Succeeded

microsoft-edge/toc.yml
:white_check_mark:Succeeded

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


[SILOptimizer] Don't diagnose infinite recursion if a branch terminates the program

(Re-applies commit e94450e, but alters the strategy)
This patch augments the infinite recursion checker to not warn if a
branch terminates, but still warns if a branch calls into something with
@_semantics("programtermination_point"). This way, calling fatalError
doesn't disqualify you for the diagnostic, but calling exit does.
This also removes the warning workaround in the standard library, and
annotates the internal _assertionFailure functions as
programtermination_points, so they get this treatment too.

@gottesmm For posterity, the problem that caused this to revert was that _emptyStringAddressBits could possibly have side effects, but it's only used on i386/arm, which I didn't test when I merged the first PR. Since that function is called when creating the empty string, the call to fatalError() implicitly called it after inlining the default argument initializer. The presence of something with side effects defeated the ARC inertness check, which it turns out was the wrong check for infinite recursion detection anyway.
By checking explicitly for the presence of an apply of something with @_semantics("programtermination_point"), we disregard inertness when looking for infinite recursion.
All that to say that a possible test to ensure we don't regress on this specific bug is:
func mayHaveSideEffects() {}

func x() { // expected-warning {{all paths through this function will call itself}}
  if Bool.random() {
    // execute some side effects
    mayHaveSideEffects()
    fatalError()
  }
  x()
}

And I'll add that test.

@swift-ci please test

Build failed
Swift Test OS X Platform
Git Sha - ed00dbc942aaf95cdc1565e411fe23708d5af9e5

rdar://45080912


Rename metanorma-csand to metanorma-csa

Per https://github.com/metanorma/metanorma-cli/pull/123#issuecomment-569813831 we need to rename all instances of csand to csa

@ronaldtse BTW do we have plans to rename this gem to metanorma-csa ?

@CAMOBAP795 yes we should rename it. Let me rename the repo now.

@CAMOBAP795 can you help rename the gemspec and the internal code? Thanks!

@ronaldtse sure

Done


[Feature] Integrate Gitlab authentication and note storage

Instead of Gists, Gitlab has snippets
https://github.com/GitJournal/GitJournal takes a more abstract approach by using a git repo itself as storage, which may have some benefits

Hi! The plan at this point for TakeNote is to store the notes in a repo, as opposed to Gists. Adding support for GitLab will be a nice stretch for the future, but definitely want to get it working for one provider first.

Going to close this for now as it's not on the immediate roadmap. Will reopen once GitHub sync is done if we want to support multiple Git hosts.

Awesome tool! +1 for Gitlab repo support for note storage-sync please! I am waiting for either Wiki.js or TakeNote to support Gitlab.


Does the web ui support IPv6?

I want to run locust using
locust -f locustfile.py --web-host="[::]"
but it does not work
can I run with --web-host="[::]" or some else way to run it

If you dont specify anything, locust will bind to all your ip addresses, so you dont need to say anything.
If you want to make requests to an ipv6 address (--host, not --web-host), that should work too, but you may need to battle issues with requests/geventhttpclient. I dont really have a good environment to test this in, sorry.


Add Undo/Redo operations

Problem & Solution
Sometimes it happens that you rename the wrong file by mistake or delete something you shouldn't have deleted. For this you need a way to get things back to the way they were. And that way is undo/redo.
Operation history file
It may also be worth saving the operation history to a file, so that even after restarting the superfile we can undo the operation. This behavior can be regulated by the save_operation_history parameter in the config. It is also worth specifying the maximum number of operations to save, for example, with the parameter maximum_operation_history.
Keyboard shortcuts
Regular keyboard shortcuts

Undo: Ctrl + Z
Redo: Ctrl + Y or Ctrl + Shift + Z

Vim keyboard shortcuts

Undo: U
Redo: Ctrl + R

Absolutely a good idea, I wanted to do this when superfile was first created!


RFC: S3 concurrent writer via dynamoDB

Context
S3 does not support transactional-operations like *_if_not_exist.
We would like to support transactional-operations on S3 for concurrent writers.
Requirement:

Implement a native locking mechanism in Lance to support *_if_not_exist on s3.
This new mechanism should be usable in all language lance binds to.
Ensure we still have snapshot isolation. (unsuccessful and en route commit should not be visable)
(Nice to have) Pave the road for redis/sql based commit mechanisms.

Why Dynamo?
Out of the three major Cloud providers, AWS(S3), GCP(GCS), and Azure(Blob Storage), S3 is only one that does not provide transactional semantics in its APIs. This means, it is okay to use an AWS native solution as we do not need to port this locking mechanism to other cloud providers.
(minio, http, et al. will probably use redis/sql commit mechanism)
Interface
Since this is a S3-only feature, it doesn't make a lot of sense to add more params to ObjectStoreParams nor [Read|Write]Params.
The proposed solution is to pass in dynamo params as part of the s3 URI with the following syntax
s3+ddb://<ddb_table_name>:<bucket>/<path>

Problems with dynamodb-lock-rs
The library does not support unexpirable locks. This means, the library can only support synchronous* fail-stop model. (*: the lock lease duration effectively converts async consensus into a sync consensus with time as epoch boundaries).
This is can cause data corruption under pause or network partition failure model. (The lock can expiry while manifest commit is still going on)
Problem with unexpirable locks
They can crash-deadlock and only recoverable by manual intervention
Crux of the problem
Having two sources of truth makes consensus with strong consistency requirement not possible. (S3 is the source of truth for manifest content, where Dynamo is the source of truth of which writer's manifest is valid)
Proposal solution
When committing to S3, we can use the following procedure
For procedure commit(manifest: Manifest) do

Write the manifest we want to commit to S3 with a temporary name e.g. dataset.lance/_versions/staging/152a8c85-e4e7-4a1f-96d1-1cef1c6dbd9d.manifest
Try to commit this version to dynamodb with attribute_not_exists(PK) AND attribute_not_exists(SK) condition. Where the committed data would look like

{
  pk: {table_uri}, <-- String
  sk: {version}, <-- int
  commiter: <hostname>, <-- String
  uri: <temporary_uri> <-- String
}

If dynamodb commit fails, return err
Writer proceed to call copy and copy the manifest from temporary path to dataset.lance/_version/{version}.manifest

What if step 4 fails?
To address this problem,  We should always load manifest from dynamodb.
When loading manifest we can use the following procedure:
For procedure checkout_latest(uri: &str) do

The loader reach out to dynamodb first and find the latest version V of the dataset.
Check if dataset.lance/_version/{V}.manifest exists. If not, try to repeat step 4 of the commit procedure until successful

This checkout procedure can guarantee that

When DynamoDB and S3 go out of sync, S3 is at most behind by one version
All operations are blocked until the two stores are in sync again

Caveats
This solution changes the source of truth for manifests from s3 to dynamodb. This means

Reader and writer must both use dynamodb to ensure consistency
To off-board dynamodb, user would have to make sure the s3 and dynamodb are in sync before they can safely off-board.

Execution Plan
TBD

cc: @wjones127 @westonpace @eddyxu

This looks good. I wish we could didn't have to modify the read path, but there are some edge cases that make it necessary.

This sounds interesting!
I'm not sure I fully understand it. Seems DynamoDB is source of truth in system, however, the commit would regard as "success" and can be seen by reader when finally data is "post committed" in s3? And this will not change the process of reader, just make writer need to handle more roundtrip of write?

@mapleFU Yeah roughly. This is making DynamoDB the source of truth and S3 a replica, but with some constraints on how out-of-sync the two stores can be. On the read path, the read will try to sync the two stores and refuse to load if the two stores can not be sync'd. See #1190 for the commit logic

Are there any rough back-of-the-envelopes on how this will work out in terms of cost compared to S3 alone or other workarounds? Another workaround is to switch to AWS EFS, but for analytical workloads reading/ writing the whole dataset frequently the read and write elastic bandwidth charge is horrific, like >50X the cost of S3 so far in my hands (the storage cost is ~7X but this is insignificant compared to the above).
If I understand correctly the proposed fix only stores a subset of what I'd normally see in my lance s3 directory (the manifest) on DynamoDB, rather than a full copy of the data? If anyone wanted to provide guesses on what fraction of the 1) GB storage and 2) Read / Write requests would route to DynamoDB compared to a just-S3 setup I'm happy to share my napkin math on total relative cost as I need this for figuring out viability of lancedb at my company.

hi @sandias42, with dynamo manifest store, the expected amount of IOs are as follows
Read:

get latest dataset -- 1 full read (we always use consistent read)
get version N -- no read, hits object store directly

Commit:

no conflict -- 2 writes (1 for the initial temp commit, 1 for finalization)
N conflicts -- 2 * (N + 1) writes

the total IOPS is num_commit/s * ^^^
w.r.t. to the read write size, we only commit a path like _version/3.manifest-<tmp-id> value to dynamodb. so the throughput util should be very low.

This is indeed very interesting and useful in my opinion. I could see usage documentation on the lanceDb guides on storage options. However I don't understand if this feature is fully available already or if it's still in development. I tried a very quick implementation of S3+dynamoDb but was encountering commit storage errors on table creation. Do you guys confirm that this is still expected since the tasks are not done or I'm doing something wrong?
Thank you

This is indeed very interesting and useful in my opinion. I could see usage documentation on the lanceDb guides on storage options. However I don't understand if this feature is fully available already or if it's still in development. I tried a very quick implementation of S3+dynamoDb but was encountering commit storage errors on table creation. Do you guys confirm that this is still expected since the tasks are not done or I'm doing something wrong?
Thank you

Hi,
Could you share a simple repro and the errors you see?

Hi @chebbyChefNEQ thank you for the quick reply. As I'm writing I could do some more tests that actually succeeded and the only part that I believe I changed was in the permissions towards the dynamo DB (I was using an already created table with only read permissions but I clearly forgot that I need to write stuff in there I apologize for the rookie mistake here).


create bdd tests for ArgumentSeparator

these are failling.  looks like ThrowOnUnexpectedArgument also has to be true.
@bilal-fazlani I wrote these tests for the argument separator.  It looks like all args after -- are placed in a RemainingArgs list and never passed to the command method.  I didn't see any documentation on the feature.  How should it work?

replaced by https://github.com/bilal-fazlani/commanddotnet/pull/122


Feature/starter code

Updated with final index page

Reviewing pull request for practice - should be done by another team member


Concurrent publishes from multiple clients

Hello,
For my use case, I am using 1 client / connection per use case. For one of my .net core services, this results in about 10 clients / connections. I am seeing lots of disconnects and reconnects, even though the connection is stable. Any suggestions? I'm using the default keepalive, which I believe is 15 seconds (sounds aggressive?)
Thanks,
Colin

As a first question: Did you assign unique client ids to your clients / connections? If not, this could be the issue as client ids need to be unique in the whole MQTT broker.

Hi @SeppPenner
The each client / connection has a unique clientId (we use app_name + Guid.NewGuid() to gurantee uniqueness)

The issue was actually from using an incorrect profile in our F5 configuration. Closing issue.
Thanks!


User Teams limited to 30 due to pagination

The API call made to Github for fetching the teams a user is a member of (/user/teams) is by default limited to 30. This can be a problem in a big organization where users a member of a large amount of teams. To retrieve the complete list of teams the plugin should implement traversing with pagination: https://developer.github.com/v3/guides/traversing-with-pagination/

Hi @jorisboelen thanks for your input, good catch! Indeed we didn't think about that. Would you like to provide a PR? Maybe it is a good idea to use an existing Github Java API (e.g.) instead of implementing the pagination by hand.

Thank you for the quick reply. I can give it a try, but I am not a very good developer. Perhaps someone else is more suitable for this task?
As a workaround I have set the page size to the maximum of 100 for the teams path:
private static final String GITHUB_USER_TEAMS_PATH = "/user/teams?page=1&per_page=100";
but that is obviously not a proper fix.

haha, nice workaround! seems like an idea only a good developer could have ;-)


yarn outdated sits forever on exit

I'm upgrading to Yarn Modern and am trying out yarn outdated. It appears to work; however, after its output, it never finishes:
➤ YN0000: ┌ Checking for outdated dependencies
➤ YN0000: └ Completed in 3s 490ms

...

➤ YN0000: Package                        Current    Latest    Workspace        Package Type
➤ YN0000: 33 dependencies are out of date
➤ YN0000: Done with warnings in 3s 493ms
➤ YN0000: ⠇ ============================================================================----

The progress bar on the last line sits at this state indefinitely, without ever finishing.
If I run yarn outdated --json, the command finishes as expected.
I'm using Yarn 3.2.0, https://mskelton.dev/yarn-outdated/v2, and Node 14.19.1.

I tried the following steps and could not reproduce this error:
yarn init -2
yarn plugin import https://mskelton.dev/yarn-outdated/v2
yarn add axios@1
yarn outdated

As expected I get the following output:
➤ YN0000: ┌ Checking for outdated dependencies
➤ YN0000: └ Completed

➤ YN0000: Package   Current   Latest   Package Type
➤ YN0000: axios     0.10.0    0.27.2   dependencies

➤ YN0000: 1 dependency is out of date
➤ YN0000: Done with warnings in 0s 150ms

Could you share a reproducible set of steps or a repo that causes this error?

(Un?)fortunately, the problem has cleared itself up. I've been making several changes as part of upgrading to Yarn Modern, so I'm not sure what might have resolved the issue.
Thanks for the quick reply. Since this isn't reproducible, I'll go ahead and close the issue.

I'm also running into this issue on Yarn v3.2.1. Seems like the progress bar hangs and stays present after the command finishes. I control + c to kill it each time.
Running Node 14 on macOS 12.4

@mutewinter Does it happen consistently?  If so, could you share a reproduction repo?

It does. I’ll see if it happens in a new repo.

Does not happen in a new repo. My current repo is a monorepo using nodeLinker: node-modules. It happens when I run the yarn outdated command in the root of the project or in one of the packages.

I was able to reproduce this on one of my monorepos.  Now that I can reproduce it, I'll figure out what's going on and get it fixed.

Just released a new version which fixes this.  Turns out that it would happen if you had workspace dependencies which were skipped, but the code wasn't properly updating the progress for those dependencies.


bug when upgrading to version 2.8.0

this is a error:
Android resource linking failed
Output:  /home/dev/git/offrie-android/Deals/app/build/intermediates/incremental/mergeDevelopDebugResources/merged.dir/values-v28/values-v28.xml:7: error: resource android:attr/dialogCornerRadius not found.
/home/dev/git/offrie-android/Deals/app/build/intermediates/incremental/mergeDevelopDebugResources/merged.dir/values-v28/values-v28.xml:11: error: resource android:attr/dialogCornerRadius not found.
/home/dev/git/offrie-android/Deals/app/build/intermediates/incremental/mergeDevelopDebugResources/merged.dir/values/values.xml:672: error: resource android:attr/fontVariationSettings not found.
/home/dev/git/offrie-android/Deals/app/build/intermediates/incremental/mergeDevelopDebugResources/merged.dir/values/values.xml:672: error: resource android:attr/ttcIndex not found.
error: failed linking references.
Command: /home/edwinvargas/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.1-4818971-linux.jar/6b6e14aacb166ecf82e7269b6699b50d/aapt2-3.2.1-4818971-linux/aapt2 link -I
/home/edwinvargas/Android/Sdk/platforms/android-27/android.jar
--manifest
/home/dev/git/offrie-android/Deals/app/build/intermediates/merged_manifests/developDebug/processDevelopDebugManifest/merged/AndroidManifest.xml
-o
/home/dev/git/offrie-android/Deals/app/build/intermediates/processed_res/developDebug/processDevelopDebugResources/out/resources-developDebug.ap_
-R
@/home/dev/git/offrie-android/Deals/app/build/intermediates/incremental/processDevelopDebugResources/resources-list-for-resources-developDebug.ap_.txt
--auto-add-overlay
--java
/home/dev/git/offrie-android/Deals/app/build/generated/not_namespaced_r_class_sources/developDebug/processDevelopDebugResources/r
--proguard-main-dex
/home/dev/git/offrie-android/Deals/app/build/intermediates/legacy_multidex_aapt_derived_proguard_rules/developDebug/processDevelopDebugResources/manifest_keep.txt
--custom-package
co.transportsystems.offrie
-0
apk
--output-text-symbols
/home/dev/git/offrie-android/Deals/app/build/intermediates/symbols/develop/debug/R.txt
--no-version-vectors
Daemon:  AAPT2 aapt2-3.2.1-4818971-linux Daemon #0

What version of android support libraries are you using?

Here are the relevant AndroidX declarations:
    implementation 'androidx.vectordrawable:vectordrawable:1.0.1'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    implementation 'androidx.cardview:cardview:1.0.0'
    implementation 'androidx.browser:browser:1.0.0'
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.exifinterface:exifinterface:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha3'
    implementation 'androidx.emoji:emoji:1.0.0'
    implementation 'androidx.emoji:emoji-appcompat:1.0.0'
    implementation 'androidx.lifecycle:lifecycle-runtime:2.0.0'
    implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'
    implementation 'androidx.room:room-runtime:2.1.0-alpha04'
    implementation 'androidx.paging:paging-runtime:2.1.0'

Hopefully that helps, thanks.

What is your compile SDK version?

Not sure if it's gonna help but downgrade gradle to 3.1.4 and check.

2.8.0 adds Androidx, try adding support https://developer.android.com/jetpack/androidx/migrate
or just stick with 2.7.0 unless u really need 2.8.0 features

I haven't gotten a chance to try downgrading gradle, but the issue happens when using AndroidX and 2.8.0. Moving back to 2.7.0 with AndroidX works.

Just for info, migrating to androidX is automated from the IDE and is the way forward now as it comes in replacement of the support libraries that will disappear in the next version of android.


MYNEWT-801: Lora API

Add first cut at lora api for application devlopers and first cut at MAC/higher layer API.

tremendous!


iss

Description:
A clear and concise description of what the bug is.
Action version:
Specify the action version
Platform:

[ ] Ubuntu
[ ] macOS
[ ] Windows

Runner type:

[ ] Hosted
[ ] Self-hosted

Tools version:

Repro steps:
A description with steps to reproduce the issue. If you have a public example or repo to share, please provide the link.
Expected behavior:
A description of what you expected to happen.
Actual behavior:
A description of what is actually happening.

Hello @NEA-cloud2. For now I'm going to close the issue because it looks like a spam. Feel free to fill in the form and ping us.

Ok
Pada Ahd, 22 Jan 2023, 19:36 Dmitry Shibanov @.***>
menulis:

Closed #674 https://github.com/actions/setup-node/issues/674 as not
planned.
—
Reply to this email directly, view it on GitHub
https://github.com/actions/setup-node/issues/674#event-8328632952, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AYVZJUPCHSWPPD745234J3TWTULULANCNFSM6AAAAAAUCXOKZE
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


connectivity dependency does not build in release mode

flutter run --release
FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'connectivity'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

sdk.dir is present in my android/local.properties
[✓] Flutter (Channel stable, v1.12.13+hotfix.5, on Mac OS X 10.15.1 19B88, locale fr-FR)
    • Flutter version 1.12.13+hotfix.5 at /Users/sbntt/flutter
    • Framework revision 27321ebbad (5 days ago), 2019-12-10 18:15:01 -0800
    • Engine revision 2994f7e1e6
    • Dart version 2.7.0

[!] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/sbntt/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Users/sbntt/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/191.6010548/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

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

[✓] Android Studio (version 3.5)
    • Android Studio at /Users/sbntt/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/191.6010548/Android Studio.app/Contents
    • Flutter plugin version 42.0.1
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[!] IntelliJ IDEA Ultimate Edition (version 2019.3)
    • IntelliJ at /Users/sbntt/Applications/JetBrains Toolbox/IntelliJ IDEA Ultimate.app
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • For information about installing plugins, see
      https://flutter.dev/intellij-setup/#installing-the-plugins

[✓] VS Code (version 1.41.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.7.1

[✓] Connected device (1 available)
    • ONEPLUS A6003 • a8e258a3 • android-arm64 • Android 10 (API 29)

! Doctor found issues in 2 categories.

Hi @SBNTT
could you please run
flutter clean
flutter pub cache repair
let me know if the issue persists
thank you

Hi,
Error is still there.
does the full build output helps ?
 flutter build apk --release
You are building a fat APK that includes binaries for android-arm, android-arm64, android-x64.
If you are deploying the app to the Play Store, it's recommended to use app bundles or split the APK to reduce the APK size.
    To generate an app bundle, run:
        flutter build appbundle --target-platform android-arm,android-arm64,android-x64
        Learn more on: https://developer.android.com/guide/app-bundle
    To split the APKs per ABI, run:
        flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
        Learn more on:  https://developer.android.com/studio/build/configure-apk-splits#configure-abi-split
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_analytics-5.0.6/android/src/main/java/io/flutter/plugins/firebaseanalytics/FirebaseAnalyticsPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core-0.4.2+1/android/src/main/java/io/flutter/plugins/firebase/core/FirebaseCorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_performance-0.3.1+4/android/src/main/java/io/flutter/plugins/firebaseperformance/FirebasePerformancePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Running Gradle task 'assembleRelease'...                                                                                Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/image_jpeg-1.1.1/android/src/main/java/com/yangyxd/imagejpeg/ImageJpegPlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/package_info-0.4.0+11/android/src/main/java/io/flutter/plugins/packageinfo/PackageInfoPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-1.4.5/android/src/main/java/io/flutter/plugins/pathprovider/PathProviderPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
/Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.4+6/android/src/main/java/io/flutter/plugins/sharedpreferences/SharedPreferencesPlugin.java:25: warning: [deprecation] getFlutterEngine() in FlutterPluginBinding has been deprecated
    setupChannel(binding.getFlutterEngine().getDartExecutor(), binding.getApplicationContext());
                        ^
1 warning
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':image_jpeg:verifyReleaseResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Android resource linking failed
     /Users/sbntt/.gradle/caches/transforms-2/files-2.1/de633fab5705acbce5b6dd3356ab4c4e/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource android:attr/fontVariationSettings not found.

     /Users/sbntt/.gradle/caches/transforms-2/files-2.1/de633fab5705acbce5b6dd3356ab4c4e/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource android:attr/ttcIndex not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2m 55s
Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done                     178,3s (!)
The built failed likely due to AndroidX incompatibilities in a plugin. The tool is about to try using Jetfier to solve the incompatibility.
Building plugin connectivity...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                   12,4s
Starting a Gradle Daemon (subsequent builds will be faster)

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'connectivity'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 11s

The plugin connectivity could not be built due to the issue above.

Thank you @SBNTT

same with you
flutter build apk --release
You are building a fat APK that includes binaries for android-arm, android-arm64, android-x64.
If you are deploying the app to the Play Store, it's recommended to use app bundles or split the APK to reduce the APK size.
To generate an app bundle, run:
flutter build appbundle --target-platform android-arm,android-arm64,android-x64
Learn more on: https://developer.android.com/guide/app-bundle
To split the APKs per ABI, run:
flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
Learn more on:  https://developer.android.com/studio/build/configure-apk-splits#configure-abi-split
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':flutter_native_image:verifyReleaseResources'.

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
Android resource linking failed
/Users/icy/.gradle/caches/transforms-2/files-2.1/66ec8c9e439f1c666907245b569d6532/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource android:attr/fontVariationSettings not found.

 /Users/icy/.gradle/caches/transforms-2/files-2.1/66ec8c9e439f1c666907245b569d6532/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource android:attr/ttcIndex not found.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 5s
Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done                       6.1s
The built failed likely due to AndroidX incompatibilities in a plugin. The tool is about to try using Jetfier to solve the incompatibility.
Building plugin barcode_scan...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                    0.8s
✓ Built build/app/outputs/repo.
Building plugin bugly_crash...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                    0.9s
✓ Built build/app/outputs/repo.
Building plugin connectivity...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                    0.5s
FAILURE: Build failed with an exception.

What went wrong:
A problem occurred configuring root project 'connectivity'.

SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 0s

flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v1.12.13+hotfix.6, on Mac OS X 10.15.2 19C46a, locale zh-Hans-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 11.3)
[✓] Android Studio (version 3.5)
[!] IntelliJ IDEA Ultimate Edition (version 2018.3.4)
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] VS Code (version 1.39.1)
[✓] Connected device (1 available)

about gradle :
gradle-5.6.2-all
'com.android.tools.build:gradle:3.5.1'
android.useAndroidX=true
android.enableJetifier=true

Hey also having the same issue  in release mode:
connectivity 0.4.6+1

Hi,
Error is still there.
does the full build output helps ?
 flutter build apk --release
You are building a fat APK that includes binaries for android-arm, android-arm64, android-x64.
If you are deploying the app to the Play Store, it's recommended to use app bundles or split the APK to reduce the APK size.
    To generate an app bundle, run:
        flutter build appbundle --target-platform android-arm,android-arm64,android-x64
        Learn more on: https://developer.android.com/guide/app-bundle
    To split the APKs per ABI, run:
        flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
        Learn more on:  https://developer.android.com/studio/build/configure-apk-splits#configure-abi-split
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_analytics-5.0.6/android/src/main/java/io/flutter/plugins/firebaseanalytics/FirebaseAnalyticsPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core-0.4.2+1/android/src/main/java/io/flutter/plugins/firebase/core/FirebaseCorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_performance-0.3.1+4/android/src/main/java/io/flutter/plugins/firebaseperformance/FirebasePerformancePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Running Gradle task 'assembleRelease'...                                                                                Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/image_jpeg-1.1.1/android/src/main/java/com/yangyxd/imagejpeg/ImageJpegPlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/package_info-0.4.0+11/android/src/main/java/io/flutter/plugins/packageinfo/PackageInfoPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-1.4.5/android/src/main/java/io/flutter/plugins/pathprovider/PathProviderPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
/Users/sbntt/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.4+6/android/src/main/java/io/flutter/plugins/sharedpreferences/SharedPreferencesPlugin.java:25: warning: [deprecation] getFlutterEngine() in FlutterPluginBinding has been deprecated
    setupChannel(binding.getFlutterEngine().getDartExecutor(), binding.getApplicationContext());
                        ^
1 warning
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':image_jpeg:verifyReleaseResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Android resource linking failed
     /Users/sbntt/.gradle/caches/transforms-2/files-2.1/de633fab5705acbce5b6dd3356ab4c4e/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource android:attr/fontVariationSettings not found.

     /Users/sbntt/.gradle/caches/transforms-2/files-2.1/de633fab5705acbce5b6dd3356ab4c4e/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource android:attr/ttcIndex not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2m 55s
Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done                     178,3s (!)
The built failed likely due to AndroidX incompatibilities in a plugin. The tool is about to try using Jetfier to solve the incompatibility.
Building plugin connectivity...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                   12,4s
Starting a Gradle Daemon (subsequent builds will be faster)

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'connectivity'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 11s

The plugin connectivity could not be built due to the issue above.

for temp solution i replaced connectivity plugin with connectivity_wrapper and built release apk in native android project.....
looking for fix.

I have the same problem. My solution is to change the compilesdkversion 27 of android/build.gradle in the error reporting plugin to 28. And then it's solved

This does not helps for connectivity plugin as it already has  compilesdkversion  set to 28

Actually, this is not related to the connectivity plugin :)

What is the solution for this?

Actually, this is not related to the connectivity plugin :)

Hey what is the solution for this?

@Sarthaktydy if you are in the exact same case
replace
image_jpeg: ^1.1.1

by
image_jpeg:
    git:
      url: https://github.com/yangyxd/image_jpeg

in your pubspec.

Could everyone who still has this problem please file a new issue with the exact descriptions what happens, logs and the output of 'flutter doctor -v'  please.
All system setups can be slightly different so it's always better to open new issues and reference related issues.

hi i still has this problem,
how to fix this ?

So, this is the final solution that works for me.

Try to update all your flutter dependencies.
Search anywhere for the string compilesdkversion and be sure it has the exact value you have in your android/app/build.gradle

try this

hi i still has this problem,
how to fix this ?

have you solve this problem ?

hi i still has this problem,
how to fix this ?

have you solve this problem ?

solved after upgrading all dependencies

Also having the same issue, happens only on release mode.

The solution has been explained multiple times. Read carrefully guys!

I have the same problem when i created flutter build apk .

What went wrong:
A problem occurred configuring root project 'connectivity'.

SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

pubspec.yaml
connectivity: ^0.4.2
help me if anyone found the solution 😌

I have the same problem when i created flutter build apk .
* What went wrong:
  A problem occurred configuring root project 'connectivity'.

SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

pubspec.yaml
connectivity: ^0.4.2
help me if anyone found the solution 😌

verify the source code of all your plugins / dependencies and alter the sdk version to 28, if there are plugins any under that version

hi i still has this problem,
how to fix this ?

have you solve this problem ?

solved after upgrading all dependencies
edited:
solved only on debug mode.
when run flutter build apk --release --target-platform=android-arm64
still have this problem

I just solved all problem, and for everyone who still has this problem,

please upgrade all of your dependencies.
open your project in android mode, sync all Gradle. please make sure all Gradle are passed successfully
in my case I have a root checker, this dependency is not in android x, even its in last update
so I must manually change to android x.
problem solved.

@tehort Thanks a lot for your response 😀

@Jigneshiosdeveloper stoll getting same issue after upgrading all packages with this command.flutter packages upgrade

flutter packages upgrade
This one has done the magic for me.

I got the same error while building the app after added a sms package which was using compiled skd version 27, I simply upgraded its version to 28 and it worked.
related issue  https://github.com/flutter/flutter/issues/27226#issuecomment-567018039

I have finally solve this error:
You have to check, one by one each versions of your dependencies in your pubspec.yaml.
During one week I got stuck bcs my version of path_provider package wasn't the latest.