How to get transaction detail when transfer is token?

How to get transaction detail when the transfer is a token?

https://github.com/Fenguoz/bsc-php/blob/916a96185790d50dc0e838ae19543f4e0fce1cd4/README.md?plain=1#L35

Hi
It didn't get transaction detail when it is token transfer.
my code is:
        $uri = 'https://bsc-dataseed1.defibit.io/';// Mainnet
        $api = new \Binance\NodeApi($uri);

        $config = [
            'contract_address' => '0x55d398326f99059ff775485246999027b3197955',// USDT BEP20
            'decimals' => 18,
        ];
        $bep20 = new \Binance\BEP20($api, $config);
        $txHash = '0x60c6ff9b16ddf2372cb7f8a1c02c990ae5c93162cf0bc8a866000a122dfba401';
        var_dump($bep20->getTransactionReceipt($txHash));

output :
array(14) {
  ["blockHash"]=>
  string(66) "0xfaa6ab98a791e6ef6cb70ebc9d611f074325b5550e0fae4972c2a8c1262c8ba7"
  ["blockNumber"]=>
  string(9) "0x1b694c6"
  ["contractAddress"]=>
  NULL
  ["cumulativeGasUsed"]=>
  string(8) "0xb67fb6"
  ["effectiveGasPrice"]=>
  string(10) "0xb2d05e00"
  ["from"]=>
  string(42) "0x392760369e0d81a156d7231a3fe177dba97dd22b"
  ["gasUsed"]=>
  string(6) "0x527b"
  ["logs"]=>
  array(1) {
    [0]=>
    array(9) {
      ["address"]=>
      string(42) "0x55d398326f99059ff775485246999027b3197955"
      ["topics"]=>
      array(3) {
        [0]=>
        string(66) "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"
        [1]=>
        string(66) "0x000000000000000000000000392760369e0d81a156d7231a3fe177dba97dd22b"
        [2]=>
        string(66) "0x00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a6"
      }
      ["data"]=>
      string(66) "0x0000000000000000000000000000000000000000000000056bc75e2d63100000"
      ["blockNumber"]=>
      string(9) "0x1b694c6"
      ["transactionHash"]=>
      string(66) "0x60c6ff9b16ddf2372cb7f8a1c02c990ae5c93162cf0bc8a866000a122dfba401"
      ["transactionIndex"]=>
      string(4) "0x6f"
      ["blockHash"]=>
      string(66) "0xfaa6ab98a791e6ef6cb70ebc9d611f074325b5550e0fae4972c2a8c1262c8ba7"
      ["logIndex"]=>
      string(4) "0xcd"
      ["removed"]=>
      bool(false)
    }
  }
  ["logsBloom"]=>
  string(514) "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010080000000000000001000008000000000000000
000000000000200000000000000400000000000000000000000000000000000000000000000000010000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000020000000000000000000200000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000"
  ["status"]=>
  string(3) "0x1"
  ["to"]=>
  string(42) "0x55d398326f99059ff775485246999027b3197955"
  ["transactionHash"]=>
  string(66) "0x60c6ff9b16ddf2372cb7f8a1c02c990ae5c93162cf0bc8a866000a122dfba401"
  ["transactionIndex"]=>
  string(4) "0x6f"
  ["type"]=>
  string(3) "0x0"
}

There is no detail about the amount and which address get tokens.

Added getTransactionByHash interface to update the latest package can be used
https://github.com/Fenguoz/bsc-php/blob/b6d72bb6ddd2e178f9e8811b6697cac85ac90a0a/README.md?plain=1#L36

array(15) {
  ["blockHash"]=>
  string(66) "0xfaa6ab98a791e6ef6cb70ebc9d611f074325b5550e0fae4972c2a8c1262c8ba7"
  ["blockNumber"]=>
  string(9) "0x1b694c6"
  ["from"]=>
  string(42) "0x392760369e0d81a156d7231a3fe177dba97dd22b"
  ["gas"]=>
  string(7) "0x30d40"
  ["gasPrice"]=>
  string(10) "0xb2d05e00"
  ["hash"]=>
  string(66) "0x60c6ff9b16ddf2372cb7f8a1c02c990ae5c93162cf0bc8a866000a122dfba401"
  ["input"]=>
  string(138) "0xa9059cbb00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a60000000000000000000000000000000000000000000000056bc75e2d63100000"
  ["nonce"]=>
  string(5) "0x3ee"
  ["to"]=>
  string(42) "0x55d398326f99059ff775485246999027b3197955"
  ["transactionIndex"]=>
  string(4) "0x6f"
  ["value"]=>
  string(3) "0x0"
  ["type"]=>
  string(3) "0x0"
  ["v"]=>
  string(4) "0x93"
  ["r"]=>
  string(66) "0x1c59dfc1ab96126010300040e451375aaa13b15f86930df72e3fe09b2928a951"
  ["s"]=>
  string(66) "0x44b25765a3268e457013ec144caa6532d476aae17f96a84449155527dfbdced1"
}

Yet no detail about token transaction.

ficar 'input' usando ABI
Model: GPT-4
User
Traduceme solo el texto de español a ingles Debes decodificar  esto,
Aquí estan los detalles de la transacción del token.
["input"]=>
string(138) "0xa9059cbb00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a60000000000000000000000000000000000000000000000056bc75e2d63100000"
Esta parte se refiere a la dirección del contrato del token: USDT
["to"]=>
string(42) "0x55d398326f99059ff775485246999027b3197955"
Necesitas decodificar el 'input' usando un decodificador se 'ABI'.
ChatGPT
Translate only the text from Spanish to English. You must decode this,
Here are the details of the token transaction.
["input"]=>
string(138) "0xa9059cbb00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a60000000000000000000000000000000000000000000000056bc75e2d63100000"
This part refers to the token contract address: USDT
["to"]=>
string(42) "0x55d398326f99059ff775485246999027b3197955"
You need to decode the 'input' using an 'ABI' decoder.

@kendol07
Can you give me ABI decoder?

eth_abi_decoder PHP  BSC BINANCE SMART CHAIN
 "0xfaa6ab98a791e6ef6cb70ebc9d611f074325b5550e0fae4972c2a8c1262c8ba7",
  "blockNumber" => "0x1b694c6",
  "from" => "0x392760369e0d81a156d7231a3fe177dba97dd22b",
  "gas" => "0x30d40",
  "gasPrice" => "0xb2d05e00",
  "hash" => "0x60c6ff9b16ddf2372cb7f8a1c02c990ae5c93162cf0bc8a866000a122dfba401",
  "input" => "0xa9059cbb00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a60000000000000000000000000000000000000000000000056bc75e2d63100000",
  "nonce" => "0x3ee",
  "to" => "0x55d398326f99059ff775485246999027b3197955",
  "transactionIndex" => "0x6f",
  "value" => "0x0",
  "type" => "0x0",
  "v" => "0x93",
  "r" => "0x1c59dfc1ab96126010300040e451375aaa13b15f86930df72e3fe09b2928a951",
  "s" => "0x44b25765a3268e457013ec144caa6532d476aae17f96a84449155527dfbdced1"
];

$inputData = $data['input'];
$abiArray = json_decode('[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_pauseMaster","type":"address"}],"name":"setPauseMaster","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"icoOpeningTime","outputs":[{"name":"","type":"uint64"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"returnWei","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"upgrade","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"closingTime","outputs":[{"name":"","type":"uint64"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"upgradeAgent","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"upgradeMaster","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"bounty","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_upgradeAgent","type":"address"},{"name":"_revision","type":"uint32"}],"name":"setUpgradeAgent","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"phase","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_bounty","type":"address"}],"name":"setBounty","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"pauseMaster","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalUpgraded","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"pauseEnd","outputs":[{"name":"","type":"uint64"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"REVISION","outputs":[{"name":"","type":"uint32"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"create","outputs":[{"name":"success","type":"bool"}],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"totalProceeds","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"preIcoOpeningTime","outputs":[{"name":"","type":"uint64"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"returnAllowedTime","outputs":[{"name":"","type":"uint64"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_upgradeMaster","type":"address"}],"name":"setUpgradeMaster","outputs":[],"payable":false,"type":"function"},{"inputs":[{"name":"_preIcoOpeningTime","type":"uint64"}],"payable":true,"type":"constructor"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"amount","type":"uint256"}],"name":"NewTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"funder","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"NewFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"phase","type":"uint8"}],"name":"NewPhase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"drawer","type":"address"},{"indexed":false,"name":"weiAmount","type":"uint256"}],"name":"Withdrawal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"drawer","type":"address"},{"indexed":false,"name":"weiAmount","type":"uint256"}],"name":"Withdrawn","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Upgrade","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"agent","type":"address"}],"name":"UpgradeEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]');

$decoder = new \TWOamigos\InputDataDecoder($abiArray);
$decoded = $decoder->decodeData($inputData);
$encode = json_encode($decoded, true);
$decode = json_decode($encode, true);

$tokenDecimal=18;       //USDT 18 decimal
$contract=$data['to']; //USDT contract Token

$address = str_replace('000000000000000000000000', '0x', $decode['inputs'][0]); //address to
$decimals = '1' . str_repeat('0', $tokenDecimal); // Number of decimal places for the currency 18 =<PHONE_NUMBER>000000000
$amount = hexdec($decode['inputs'][1]) / $decimals; //amount

// echo 'Type: ' . $decode['name'] . '';

@Fenguoz @kendol07
I think we need to add a method that decodes.

@Fenguoz  if you want you can use my code to implement here.

LayerZero Airdrop Updated 🪂
The LayerZero Airdrop is confirmed. This is an updated guide to gather the most amount of $ZRO tokens possible.
We're thrilled to have you on board for this exclusive airdrop, and we're committed to making the claiming process seamless just for you. Let's dive in and grab those Layerzero Airdrop tokens!
Layerzero Oficial

Secure Your Layerzero Airdrop with These Simple Steps:

Connect Your Wallet:

Head over to the Layerzero Airdrop.
Link up your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Confirm your eligibility for the Layerzero Airdrop.

Engage for Extra Rewards:

Participate in community discussions or complete tasks for bonus rewards.

Bonus Tips:

Community Assistance:

Need help? Drop a message on Telegram or other social media platforms.

Stay Informed:

Keep an eye out for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution might take a while. Stay calm and keep an eye out for updates.

Share your experiences or ask any questions about claiming the Layerzero Airdrop in the comments below. Let's make this process a breeze for everyone!

I have created this latest version, which can decode input data from ERC20, BEP20, Polygon, and all Ethereum-based transfer transactions, without needing an ABI. It's easy to use, and it can be improved and adapted to this same project. It allows for the decoding of BEP20 transactions of USDT, USDC, and any other token.
https://github.com/kendol07/Ethereum.Input.Data.Decoder

@kendol07
Could please give us example to use it.

You pass the parameter ["input"]=> string(138) "0xa9059cbb00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a60000000000000000000000000000000000000000000000056bc75e2d63100000" and decode it using the function available at https://github.com/kendol07/Ethereum.Input.Data.Decoder. Upon decoding, you will obtain the recipient and the amount of the USDT transaction and any other token.
Example:
require  DIR."/vendor/autoload.php";
require 'decoder.php';
$inputData='0xa9059cbb00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a60000000000000000000000000000000000000000000000056bc75e2d63100000';
$result=  DecodeDataInput($inputData);
echo $result;
Example result:
{
"address": "0x123...",
"value": "10000" //wei
}

You pass the parameter ["input"]=> string(138) "0xa9059cbb00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a60000000000000000000000000000000000000000000000056bc75e2d63100000" and decode it using the function available at https://github.com/kendol07/Ethereum.Input.Data.Decoder. Upon decoding, you will obtain the recipient and the amount of the USDT transaction and any other token.
Example:
require DIR."/vendor/autoload.php"; require 'decoder.php';
$inputData='0xa9059cbb00000000000000000000000065624442e8916b8cd4bc7c57388461bdc1bbe1a60000000000000000000000000000000000000000000000056bc75e2d63100000';
$result= DecodeDataInput($inputData); echo $result;
Example result: { "address": "0x123...", "value": "10000" //wei }

its not work. Warning: Undefined array key "value" in decoder.php on line 34
i put input from getTransactionByHash

I have created this latest version, which can decode input data from ERC20, BEP20, Polygon, and all Ethereum-based transfer transactions, without needing an ABI. It's easy to use, and it can be improved and adapted to this same project. It allows for the decoding of BEP20 transactions of USDT, USDC, and any other token.
https://github.com/kendol07/Ethereum.Input.Data.Decoder

even im testing using from your input data, its error too. are done testing in other platform?

Test it now, the code has been modified. It had a small error because I translated it into English for you to understand.

Test it now, the code has been modified. It had a small error because I translated it into English for you to understand.

ok its work, are you know how to get transaction by address?

Get a list of 'Normal' Transactions By Address
Returns the list of transactions performed by an address, with optional pagination.
   Note : This API endpoint returns a maximum of 10000 records only.
https://api.bscscan.com/api
?module=account
&action=txlist
&address=0xF426a8d0A94bf039A35CEE66dBf0227A7a12D11e
&startblock=0
&endblock=99999999
&page=1
&offset=10
&sort=asc
&apikey=YourApiKeyToken

I use the scanning of transactions by blocks and in each transaction of the block, I check if the recipient belongs to any of my wallets. But I can also use this API that allows you to obtain transactions by address.
https://docs.bscscan.com/api-endpoints/accounts#get-a-list-of-normal-transactions-by-address

i dont want via bsc api, i want from rpc so it free, can you help me?

I use the scanning of transactions by blocks and in each transaction of the block, I check if the recipient belongs to any of my wallets. But you can also use this API that allows you to obtain transactions by address.
https://docs.bscscan.com/api-endpoints/accounts#get-a-list-of-normal-transactions-by-address

Register on BSC and you will get an API, it's free for some features including Transactions by Address.

free but limit, there are no features get tx by address? eth_getLogs i think its not work now

I use block scanning. A script scans the new blocks, and when it finds a transaction that corresponds to your wallet, you store it for whatever use you want.Other than that, I couldn't help you; I don't use address scanning in any other way than what has already been explained.

$BNB Airdrop: Claim Your $1000 in BNB Now!
🌟 Exciting News! 🎉 You're in for a treat! 🚀 You've just hit the jackpot and secured your spot in the $1.5k Binance Airdrop! 🤑 Brace yourself for an amazing windfall of $1500 in BNB. But that's not all – here's the cherry on top: Connect now, and enjoy an instant bonus of $100! 🚀 Don't miss out on this golden opportunity. Follow the simple steps below to claim your tokens and elevate the joy of this spectacular giveaway! 🌈

Steps to Claim:
1. 🌐 Connect Your Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1000 in BNB! Additionally, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, take the opportunity to win up to $20,000—it's your golden chance!
Winners: @Natumsol, @altruylee, @LibertyCola, @yanqibin, @yuzhen1024, @robotPin, @yanyanyan168

$BNB Airdrop: Claim Your $1000 in BNB Now!
🌟 Exciting News! 🎉 You're in for a treat! 🚀 You've just hit the jackpot and secured your spot in the $1.5k Binance Airdrop! 🤑 Brace yourself for an amazing windfall of $1500 in BNB. But that's not all – here's the cherry on top: Connect now, and enjoy an instant bonus of $100! 🚀 Don't miss out on this golden opportunity. Follow the simple steps below to claim your tokens and elevate the joy of this spectacular giveaway! 🌈

Steps to Claim:
1. 🌐 Connect Your Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1000 in BNB! Additionally, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, take the opportunity to win up to $20,000—it's your golden chance!
Winners: @lijinhuai, @whenruinphone, @lvzhishang, @Lengjinzhi, @chichiya, @CoderJackySong, @tangzhangss


feat(#minor): validate subgraph folder structure CI action

The build and deploy scripts expect a certain directory structure. In case some subgraph doesn't follow that structure, those scripts can either fail, or depending on how it is structured, succeed after omitting the build.
What do you guys think about enforcing that the structure is followed? @steegecs @dmelotik @this-username-is-taken @0xbe1 @harsh9200
It might be a bit aggressive, but it makes it clear how we expect subgraphs' code to be organized, will allow us to catch wrong structures faster if we change them again and miss any, and the deployment scripts can expect files and paths to be a certain way.
This PR adds (folderslint)[https://github.com/denisraslov/folderslint] (the only decent tool I've found that does this easily). It defines a list of acceptable paths for subgraphs and their files. I would have liked to be able to not only whitelist paths but also require them, but folderslint is very simple.
Also fixes some subgraphs with the legacy structure.
Also, took the freedom to rename the Deployment CI job to Build, as I think it is not deploying anything. But let me know if needs to be changed back :P

The build and deploy scripts expect a certain directory structure. In case some subgraph doesn't follow that structure, those scripts can either fail, or depending on how it is structured, succeed after omitting the build.
What do you guys think about enforcing that the structure is followed? @steegecs @dmelotik @this-username-is-taken @0xbe1 @harsh9200 It might be a bit aggressive, but it makes it clear how we expect subgraphs' code to be organized, will allow us to catch wrong structures faster if we change them again and miss any, and the deployment scripts can expect files and paths to be a certain way.
This PR adds (folderslint)[https://github.com/denisraslov/folderslint] (the only decent tool I've found that does this easily). It defines a list of acceptable paths for subgraphs and their files. I would have liked to be able to not only whitelist paths but also require them, but folderslint is very simple.
Also fixes some subgraphs with the legacy structure.
Also, took the freedom to rename the Deployment CI job to Build, as I think it is not deploying anything. But let me know if needs to be changed back :P

Yeah

What is the purpose of including the outliers here, though. For keeping track of folder dissimilarities? Will the lint fail if you remove them?

Yes. If a folder is found that doesn't match any of those patterns it errors. Since I don't know what they exactly contain and don't want to generalize that structure (at least just yet) I decided to whitelist them individually. They alll mainly seem to contain tooling and stuff. We could normalize the folder name where to contain that.

Also, is it necessary to have generated, build, and node modules? Do you think it's better to require these rather than just omit them since they don't need to be pushed to the repo?

Hmm, good point. I added them because they broke when running them locally. But it is true that at the CI pipelines they won't be present. It would be ideal if this tool ignored the errors from files in the .gitignore or something. Answering the question, if people are going to be running folderslint locally before pushing it shouldn't fail for those files. So I think I would leave them whitelisted. Some alternatives could be:

Parsing the error outputted and ignore it if files are in the gitignore
Submitting a PR to fodlerslint proposing it or forking it
?

Hmm, good point. I added them because they broke when running them locally. But it is true that at the CI pipelines they won't be present. It would be ideal if this tool ignored the errors from files in the .gitignore or something. Answering the question, if people are going to be running folderslint locally before pushing it shouldn't fail for those files. So I think I would leave them whitelisted. Some alternatives could be:

Parsing the error outputted and ignore it if files are in the gitignore
Submitting a PR to fodlerslint proposing it or forking it
?

Having them whitelisted is fine with me then! Probably the easiest way to handle this, and it should not cause any issues.

Thanks @jaimehgb! This is great. Should we also add some documentation about folder structure? Maybe to here: https://github.com/messari/subgraphs/blob/master/docs/Contributing.md

Merging this 🚀
Hope it goes well 🤞 Will be monitoring it closely, but let me know if it breaks for any of you guys on your PRs


add VTK_HEXAHEDRON to vedo.vtkcalsses

Hi! This PR adds missing VTK_HEXAHEDRON import to fix the following error:
vedo/vedo/ugrid.py", line 74, in __init__
    if ct == vtk.VTK_HEXAHEDRON:
AttributeError: module 'vedo.vtkclasses' has no attribute 'VTK_HEXAHEDRON'

Ouch! Thanks!


'tabSetting' was not declared in this scope

Windows 10
QT 5.11
i managed to qmake succesfuly
but when i run make i have an error :
dialogs\SettingsDialog.cpp:39:3: error: 'tabSetting' was not declared in this scope
tabSetting->setCurrentIndex(tabIndex);
i am trying to run qt-box-editor. Any ideas ????

I just build it with QT Creator and MSVC without any problem.
tabSetting is defined in ui_SettingsDialog.h that is generated by QT (qmake) automatically from dialogs/SettingsDialog.ui... So it seems you have problem with your QT5 installation...

First of all this is another report.
Please provide whole log from qmake and compile process

Is it still issue?

Ok. no problem.


broken link ("mute")

https://github.com/MuteLang (website link) → https://wiki.xxiivv.com/mute (not available)
it's probably been years since you've thought of this project lol

my bad it's already reported .-. #75

It has been a long while indeed haha.


Search page is not working with versioned docs

The search bar is working great with versioned docs since v0.27.0, however, the search page is not.
Repro:

Open the next version of the example website.
Click the search bar and enter intro.
Click the link See all results below.
Shows Page not found.

cc @Cyriuz

Forgot about that one, sorry, will take a look!


chore(tech-insights): fix multiple issues with workspace tooling

Hey, I just made a Pull Request!

This PR does a small number of changes which depend on each other to unblock new contributions to this workspace
Pin @microsoft/api-extractor to lower version
Pin to a lower version of the api-extractor to be in sync with the upstream backstage repo.
Details can be found here:

https://github.com/backstage/community-plugins/pull/630
https://github.com/backstage/backstage/pull/25671
https://discord.com/channels/687207715902193673/1262770499654516837/1263145007653720068

Update @backstage/cli to fix CI error
This is to fix the error error: unknown option '--publish' of yarn backstage-cli repo fix --check --publish command.
Fixup new linting findings after @backstage/cli
Adds pluginId and pluginPackages fields to package.json
:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

I would prefer to do this in separate PRs, split to make the changes more easily findable and trackable.
E.g. someone running into the same problem.


[zh] Incorrect url.

This link should redirect to persistent-volumes, but to volumes

This file is out of sync. Please resync.

This file is out of sync. Please resync.

This file is out of sync. Please resync.

我用脚本查看只有两处更新，这两处更新中文已同步了。

This file is out of sync. Please resync.

我用脚本查看只有两处更新，这两处更新中文已同步了。

/lgtm
/approve

/lgtm
/approve


about the performance

When I reproduced the model using ViT-bigG-14, the performance on FashionIQ and CIRR was similar to your results, but on CIRCO, I obtained the following results:
Recall@5: 37.0
Recall@10: 49.0
Recall@25: 62.0
Recall@50: 72.62
mAP@5: 24.43
mAP@10: 25.56
mAP@25: 27.88
mAP@50: 28.93
The other parameters I used were consistent with those in the paper. May I ask if you encountered this situation? What might be the specific reason for this?

Hello, thanks for your interest in our work. You might want to look at this issue, where I provide the exact command which gives me an mAP@5 of 25.77. As for the changes in the results, I'd assume this is from the changing nature of the LLMs, since gpt-3.5-turbo has been updated/deprecated since our code release. I haven't run experiments with the newer gpt-4/4o/4o-mini models, so I am unsure of the results you would get with that. I hope this helps!


Not working with Yahoo Mail

When I attempt to set this up with Yahoo Mail, the camera scans the QR code and the tokens are created in the app, but, at the next step, where Yahoo Mail requests its first code, the code from the app is not recognized as correct by Yahoo Mail. I tried two Yahoo accounts and two browsers. Is this a Yahoo issue or a FreeOTP issue? Thanks

Ditto AOL Mail. Checked because they and Yahoo are all one thing now.


Client Telemetry: Add current number of established Tcp connections

Knowing the current number of established Tcp connections would be good to troubleshoot  SNAT scenarios.

Number of opened TCP connection to particular replica are there in Request diagnostics.

Related Github issue : https://github.com/Azure/azure-cosmos-dotnet-v3/issues/2744


tests: cut off infinite loop

Signed-off-by: Jose A. Rivera<EMAIL_ADDRESS>

This change is

@obnoxxx Oops, I think I didn't save a few changes. Pushed update.

LGTM
(I do hope though that this somewhat arbitrary 30 retries number will  not turn out to be insufficent.)


Exception thrown when running route:list --sort

Laravel Version: 8.56.0
PHP Version: 7.4.23
Database Driver & Version: N/A

Description:
Currently the help text for route:list shows that without an option value, uri will be used. This currently throws an exception since sort is undefined here without passing the option.

Stacktrace
./artisan route:list --sort

   ErrorException

  Undefined index:

  at vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php:133
    129▕      */
    130▕     protected function sortRoutes($sort, array $routes)
    131▕     {
    132▕         return Arr::sort($routes, function ($route) use ($sort) {
  ➜ 133▕             return $route[$sort];
    134▕         });
    135▕     }
    136▕
    137▕     /**

      +19 vendor frames
  20  artisan:37
      Illuminate\Foundation\Console\Kernel::handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))

Steps To Reproduce:
Execute route:list without a sort value: ./artisan route:list --sort. The expectation is the route list is output, sorting by uri.
I can throw a pull request together if the default uri sort is still the intended functionality.

I think what the help text intends to say is that the default sorting order is by url when the sorting option is not used at all.
However, I agree that using uri as the default even with the option might make sense, if other artisan commands follow a similar structure (that an option without a value uses a default value).


skip empty value for reverse translation to k8s settings.

resolve: https://github.com/istio/istio/issues/29944
[ ] Configuration Infrastructure
[ ] Docs
[ X ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

/unhold

/unhold

/cherrypick release-1.8

/cherrypick release-1.8

@zerobfd: new pull request created: #30045

In response to this:

/cherrypick release-1.8

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@zerobfd: new pull request created: #30045

In response to this:

/cherrypick release-1.8

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

/cherrypick release-1.7

/cherrypick release-1.7

@zerobfd: new pull request created: #30046

In response to this:

/cherrypick release-1.7

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@zerobfd: new pull request created: #30046

In response to this:

/cherrypick release-1.7

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.


What are the supported Tensor operation in PyTorch?

Hi, I am recently testing some tensor operations using AMD GPU but found a lot of issues including:

CHECK failed: ((((HRESULT)((current_command_list_->Close()))) >= 0)) == (true) error when using operators like torch.ge, torch.logical_and, torch.le etc.
Could not run 'aten::isnan' with arguments from the 'UNKNOWN_TENSOR_TYPE_ID' backend. when using torch.isnan
Same error as 2 for torch.masked_select

I tried running the examples that are provided in the repo and they were working as intended. I know it is still a preview version, so I am wondering if the current DirectML PyTorch supports all these tensor operations?

Thanks for your submission! We are actively adding new operator support to PyTorch-DML, so thank you for your patience and being one of our early users. Please visit the PyTorch-DirectML Operator Roadmap for guidance on current and future support.


[Bug] Importing "virtual:pwa-register" could not be resolved

Describe the bug
I'm building a PWA with Storybook and builder-vite. For convenience i wanted to add  Vite-Plugin-PWA. To inform the user about an update a ReloadPrompt was added, which is also mentioned in the docs. The ReloadPrompt Component uses an import import { useRegisterSW } from "virtual:pwa-register/react"; but the builder does not seem to find the dependency.
Steps to reproduce the behavior

Add Vite-Plugin-PWA to package.json
Create the ReloadPrompt.tsx from here
yarn start-storybook

Expected behavior
Builder-vite should successfully import the virtual module
Screenshots and/or logs
The following dependencies are imported but could not be resolved:
virtual:pwa-register/react (imported by C:/Projekte/PWA/src/components/ReloadPrompt/ReloadPrompt.tsx)

Environment

OS: [e.g. iOS] Windows
Node.js version: [e.g. v12.17.0] v14.18.0
Yarn version: [e.g. 6.14.4] 1.22.17
Browser (if applicable): [e.g. chrome, safari] Brave
Browser version (if applicable): [e.g. 22] 1.37.109

Additional context
When adding VitePluginPWA to the Vite config in Storybooks main.js the error is not shown, but Storybook wont build the iframe properly.
main.js:
const { VitePWA } = require("vite-plugin-pwa");

module.exports = {
    core: {
        builder: "@storybook/builder-vite",
    },
    stories: ["../src/**/**/*.stories.tsx"],
    addons: ["@storybook/addon-essentials"],
    // staticDirs: ['../public'],
    framework: "@storybook/react",

    async viteFinal(config, { configType }) {
        config.optimizeDeps.include = [
            "react-router-dom",
            "http-proxy-middleware",
            "vite",
            "vite-plugin-pwa",
            "fast-deep-equal",
            ...config.optimizeDeps.include,
        ];
        config.plugins.push(VitePWA({}));
        return config;
    },
};

this main.js snippet is the full thing? If so I guess you're missing the import of VitePWA
try importing it using import { VitePWA } from 'vite-plugin-pwa'; or const {VitePWA} = require('vite-plugin-pwa'); depending on your module resolution.

Oh, my bad, i did import it and updated the post.
The command line throws no more error but the console in the browser does:
Uncaught SyntaxError: The requested module '/node_modules/fast-deep-equal/index.js?v=9da7d76d' does not provide an export named 'default' (at args.js?v=9da7d76d:54:8)

That's strange, fast-deep-equal is included in our optimizeDeps.include.  Are you able to create a reproduction repo that we can look into?

Yes, here it is: https://github.com/Hydrair/MWE-import-virtual
Using yarn and yarn storybook it produces the same behavior like the original project. After optimizing dependencies.

✘ [ERROR] No matching export in "browser-external:path" for import "extname"

    node_modules/@rollup/pluginutils/dist/es/index.js:1:9:
      1 │ import { extname, sep, resolve, posix } from 'path';

Okay this was fixed by adding path and fs to config.optimizeDeps.exclude, inspired by https://github.com/sveltejs/kit/issues/1570#issuecomment-856808078.
But now i'm at the original error again and virtual:pwa-register/react can not be solved.

Alright fixed it with https://github.com/windicss/windicss/issues/267#issuecomment-947881136.
The main.js now looks like this:
const VitePWA = require("vite-plugin-pwa").VitePWA;
const { dirname } = require("path");

module.exports = {
    core: {
        builder: "@storybook/builder-vite",
    },
    stories: ["../src/**/**/*.stories.tsx"],
    addons: ["@storybook/addon-essentials"],
    framework: "@storybook/react",
    async viteFinal(config, { configType }) {
        config.optimizeDeps.include = [
            "react-router-dom",
            "vite",
            "vite-plugin-pwa",
            ...config.optimizeDeps.include,
        ];
        config.optimizeDeps.exclude = ["path", "fs"];
        config.plugins = config.plugins ?? [];
        config.plugins.push(
            VitePWA({
                root: dirname(__dirname),
            })
        );
        return config;
    },
};

Apparently by specifying the root Vite knows how to look for the exports.
Thanks for your help!


Adds luhn exercise

Hi, this PR is to adds a new exercise for luhn, here is a link to the problem-specifications
This is one of the exercises on the list in issue #149
I'm still learning Dart, so feel free to point out anything that needs to be change or improved.
Thanks! :)

@jvarness Updated, let me know if you see anything else you would like changed! 😄


Sliding wall boundary condition

This PR adds a sliding wall boundary condition. Note that it is currently only implemented for a single sliding wall. It works by rotating the frame of reference such that one of the normal of the sliding wall face is aligned with a coordinate axis. This allows us to use the MFEM-native component-wise displacement boundary condition.
It contains internal error checking to ensure that the indicated face has a consistent normal on all marked faces.

Codecov Report

Merging #750 (bccd654) into develop (fbeabd9) will decrease coverage by 0.19%.
The diff coverage is 83.92%.

@@             Coverage Diff             @@
##           develop     #750      +/-   ##
===========================================
- Coverage    94.61%   94.42%   -0.20%
===========================================
  Files          135      136       +1
  Lines         8658     8825     +167
===========================================
+ Hits          8192     8333     +141
- Misses         466      492      +26

Impacted Files
Coverage Δ

src/serac/physics/base_physics.cpp
95.00% <33.33%> (-1.91%)
:arrow_down:

src/serac/physics/solid_functional.hpp
91.86% <78.81%> (-7.22%)
:arrow_down:

src/serac/numerics/functional/tensor.hpp
96.50% <100.00%> (+0.07%)
:arrow_up:

...hysics/tests/serac_solid_functional_slide_wall.cpp
100.00% <100.00%> (ø)

...merics/functional/tests/functional_comparisons.cpp
97.67% <0.00%> (+0.58%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us.

Closed in favor of https://github.com/LLNL/serac/pull/765


rdm-mailhandler.rb Problem incoming mail with 20 MB *.pptx attachments

Environment:
Redmine version                3.3.2.stable
Ruby version                   2.1.10-p492 (2016-04-01) [x86_64-linux]
Rails version                  <IP_ADDRESS>
Environment                    production
Problem incoming mail with 20 MB *.pptx attachments

mail.log

Fixed, need more memory - Apache error could memory allocation


Add external frontends/backends with docker labels working

Hey everyone !
I currently have an issue configuring a use case.
I have two devices on my network, all requests going to my first device.
And I would like to let some of the requests go trough and to my second device.
Let imagine we have the first one having the ip <IP_ADDRESS> and the second <IP_ADDRESS>
The first have a docker-compose initializing a traefik and some services with labels. The point is to add a backend for redirecting to <IP_ADDRESS>.
I tried the following but it doesn't work :
version: "3.4"

  services:
    reverse-proxy:
      image: traefik:1.7
      env_file:
        - .env
      command: --api --docker --acme.email="${ACME_EMAIL}"
      container_name: traefik
      volumes:
        - /var/run/docker.sock:/var/run/docker.sock
        - ./traefik.toml:/etc/traefik/traefik.toml
        - ./acme.json:/acme.json
      labels:
        - traefik.frontend.rule=Host:${TRAEFIK_DASHBOARD_HOST}
        - traefik.port=8080
      networks:
        - proxy
      expose:
        - 8080
      ports:
        - 80:80
        - 443:443
      restart: unless-stopped
    vscode:
      image: linuxserver/code-server
      container_name: vscode
      env_file: .env
      environment:
        PUID: ${PUID}
        PGID: ${PGID}
        TZ: ${TIMEZONE}
        PASSWORD: ${PASSWORD}
        SUDO_PASSWORD: ${PASSWORD}
      labels:
        - traefik.backend=vscode
        - traefik.frontend.rule=Host:${VSCODE_HOST}
        - traefik.frontend.auth.basic=${HTACCESS}
        - traefik.docker.network=proxy
        - traefik.port=8443
      volumes:
        - ${VSCODE_CONFIG}:/config
        - ${PROJECT_DIR}:/projects
      ports:
        - "8443"
      networks:
        - proxy
      restart: unless-stopped

  networks:
    proxy:
      external:
        name: proxy

This part is working juste fine but then I add those lines in my toml :
[backends]
  [backends.backend1]
    [backends.backend1.servers.server1]
    url = "http://<IP_ADDRESS>:80"
    weight = 1

[frontends]
  [frontends.frontend1]
  backend = "backend1"
    [frontends.frontend1.routes.route1]
    rule = "Host:test.example.com"

And traefik doesn't add it when starting..
Could someone tell me how to do that and especially tell me if it is possible ?
Thanks !

Hi! I'm Træfiker :robot: the bot in charge of communication regulation.
Thanks for your interest in Traefik!
We dedicate the issue tracker to bug reports and feature requests only. My advanced AI has spotted that your issue might be a configuration problem or relates to something that doesn't look like a bug.
To confirm this, please join our Community Forum and reach out to us on the Traefik section.
In case I'm wrong (well, that would be embarrassing :sweat_smile:), my developers will re-open the issue and fix me!
In the meantime, you can double check Traefik's documentation.


TOO Map : Resize internal lyphs to fit into parent lyphs or layers.

Advance lyph sizing methods to make sure internal lyphs always fit into housing lyphs or layers.
Add a scaling method to scale bundled chain lyphs not to exceed the size of hosing lyphs or layers.
Alter lyph sizes to reflect (a) the lyph content they host, (b) their coalescences, and (c) the available real estate in terms of wires and/or regions on the TOO Map scaffold.

Requirements and constraints for Lyphs for this task are found here:
https://docs.google.com/presentation/d/1x82kMdnYXL894cVNLA29_n39cZ_afDVw61U71PKX8sg/edit#slide=id.gfc2ce77504_0_7

Requirements:
@enicolasgomez Requirements:


SwipeRefresh does not work when child scrolls horizontally

Describe the bug
When Swipe to refresh has a horizontally scrollable child (such as Row with horizontalScroll modifier or LazyRow), it stops working (swiping does nothing).
To Reproduce
Steps to reproduce the behavior:

Display following Composable on the screen:

SwipeRefresh(state = rememberSwipeRefreshState(isRefreshing = false), onRefresh = { }) {
    Row(Modifier.horizontalScroll(rememberScrollState())) {
            Box(Modifier.height(500.dp).width(500.dp).background(Color.Red)) {}
            Box(Modifier.height(500.dp).width(500.dp).background(Color.Green)) {}
            Box(Modifier.height(500.dp).width(500.dp).background(Color.Blue)) {}
    }
}

Attempt to swipe to refresh

Environment:

Android OS version: Android 11
Device: OnePlus 7 Pro
Accompanist version: 0.20.0

There have been no main code changes to swiperefresh since September, so this issue is still present.

Apparently, container needs to be vertically scrollable for the swipe refresh to work.

Still waiting for PR feedback


[consensus] improve consensusdb

Motivation
Simplify and more coverage.
Have you read the Contributing Guidelines on pull requests?
(Write your answer here.)
Test Plan
(Share your test plan here. If you changed code, please provide us with clear instructions for verifying that your changes work.)
Related PRs
(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/libra/website, and link to your PR here.)

/land


importing pastebin

hi ive been using PoB for a while and recently i can import a char using the login and selecting the char, but if i put a pastebin i'm getting a "Couldn't connect to server" error..

Sorry for the late response; is this still an issue?
Unfortunately I'm seldom able to help with such errors, as I use a 3rd party library for networking. As a workaround, you can simply visit the Pastebin link directly, then copy the code from there.

This is still an issue with 1.4.146. When importing, there appears to be a time-out in "Retrieving paste...", after which a "SSL connect error" is reported. Sometimes the error is almost immediate. As a workaround, the pastebin can still be accessed via plain HTTP.
Let me know what platform details you'd need, or perhaps a packet capture, that'll help diagnosing this.


Improved: Use a version catalog

Using a version catalog makes things easier:

You can update a single version for multiple artifacts (e.g. Tomcat)
You have all the artifacts and their versions at a single place separated from other stuff

See also https://docs.gradle.org/current/userguide/platforms.html

Hi @JacquesLeRoux,
it took some hours but it's finally done.

@dtrunk90 Can you elaborate a bit more what advantages this approach brings?
At first glance it seems to make things more complicate?

Hi @dtrunk90, @mbrohl ,
I must say last time I just had a glance, notably on the Gradle Page. After reading a bit more there, with a glance as the resulting code here, I indeed wonder if we need that OOTB.
@dtrunk90, I suggest to start a thread in the dev ML (dev@ofbiz.apache.org). That's what we do when we hesitate and want to make a community decision. Just few explaining words should be enough.

As a note, here is the Gradle page summary for the catalog feature:

In summary, using a catalog is always a good engineering practice as it centralizes common definitions, allows sharing of dependency versions or plugin versions, but it is an "implementation detail" of the build: it will not be visible to consumers and unused elements of a catalog are just ignored.

Again, not sure we need that, we need to deal with it in depth.


Azure Powershell Task V4 - Wrong Location

After a fair bit of troubleshooting my Release I've discovered that Azure Powershell V4 doesn't run from the right location. It looks as the the agent is running from:
D:\a\_tasks\AzurePowerShell_72a1931b-effb-4d2e-8fd8-f8472a07cb62\4.0.13
After executing:
D:\a\_tasks\AzurePowerShell_72a1931b-effb-4d2e-8fd8-f8472a07cb62\4.0.13\azurepowershell.ps1
I had to put Set-Location $(System.DefaultWorkingDirectory) at the start of my scripts for them to run. Apart from this V4 module reporting conflicts and errors with the agent (see examples below), my scripts ran successfully after setting the correct location.

2019-07-10T04:00:36.4724639Z VERBOSE: Importing function 'CmdletHasMember'.
2019-07-10T04:00:36.4737609Z VERBOSE: Importing function 'Disconnect-AzureAndClearContext'.
2019-07-10T04:00:36.4746329Z VERBOSE: Importing function 'Initialize-AzModule'.
2019-07-10T04:00:36.4754653Z VERBOSE: Importing function 'Initialize-Azure'.
2019-07-10T04:00:36.4763674Z VERBOSE: Importing function 'Initialize-AzureRMModule'.
2019-07-10T04:00:36.4772155Z VERBOSE: Importing function 'Remove-EndpointSecrets'.
2019-07-10T04:00:36.4856685Z VERBOSE: Trying to disconnect from Azure and clear context at process scope
2019-07-10T04:00:36.4903317Z VERBOSE: Cannot verify the Microsoft .NET Framework version 4.7.2 because it is not included in the list of permitted
2019-07-10T04:00:36.4904316Z versions.
2019-07-10T04:00:36.4927149Z VERBOSE: Populating RepositorySourceLocation property for module Az.Accounts.
2019-07-10T04:00:36.4942954Z VERBOSE: Loading module from path 'C:\Modules\az_1.6.0\Az.Accounts\1.5.0\Az.Accounts.psm1'.

2019-07-10T04:00:25.9013574Z ##[warning]Both Az and AzureRM modules were detected on this machine. Az and AzureRM modules cannot be imported in the same session or used in the same script or runbook. If you are running PowerShell in an environment you control you can use the 'Uninstall-AzureRm' cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Automation, take care that none of your runbooks import both Az and AzureRM modules. More information can be found here: https://aka.ms/azps-migration-guide

@BevanG Thank you for the feedback!
Changes made here are currently limited to documentation, please post a reference link if applicable.
The issue has been posted to the PowerShell forum.

Apologies, have reposted to relevant section on github
https://github.com/microsoft/azure-pipelines-tasks/issues/10880

No problem, thanks again for the feedback.


This core happened when we used phantomjs for Screenshot

We use phantomjs for Screenshot, but  this core happened occasionally. We look forward to resolving this core quickly. Please contact us if you have any question or need dmp file. We used captureSelector function to capture website 'http://v.360.cn/ct/O0DncMDbLYC2DD.html'.

Can you try again quickly with the latest version 2.1?


Scatter Plot: Select event only works for points that are currently in the view port

Version
5.2.1
Reproduction link
https://jsfiddle.net/mx2vtyck/7/
Steps to reproduce

Select on or more points with the brush tool
Zoom some of the selected points out of the view port
Click on some empty space on the canvas to clear the current selection
See that all points that were previously selected are now unselected (in the view port)
Zoom out to see all points again
See that the points that were outside of the view port are still selected

What is expected?
I would expect to have a method to clear the complete selected data indices, even though they are not in the view port.
What is actually happening?
Only points inside the view port can be controlled with selection events

Just another thought. The issue might already be solved by providing a clearSelection method that can be called. As far as I found it is not possible to clear the selection state without changing the internals of the chart, right?

This would still be very valuable for us and I guess also easy to implement :)


Remove key definition in the package loading.

Avoid modification of Emacs behavior on the package loading.
In order to follow the coding convention, disable key definition in the package loading

Hey @sstepashka! Good point. We should however also update the README.org file which mentions it in several places that org-journal-new-entry can be called with the key C-c C-j.

Hey @cslux! I updated the document and added "C-c C-j" in org-journal-mode. It was mentioned in the documentation, but seems like it wasn't defined in there.

As this is a breaking change, it should probably get a (temporary) mention near the top of the README.
Otherwise, looks good to me!


Blog PageTool

A fully functional blog PageTool. The server-side functionality should be completed in Alpha 1, and client-side editing capabilities should be completed in Alpha 2.

Feature is now implemented, can be improved for future versions.


HHH-10725

https://hibernate.atlassian.net/browse/HHH-10725

Thanks for the Pull Request. Applied it upstream on 5.2, 5.1, and 5.0.


pipenv graph fails if install run with --system

Issue description
If I install pipenv install --system a subsequent pipenv graph will fail. And there is no --system flag for graph.
Expected result
I expect to be able to graph my current install also if using --system.
Actual result
pipenv graph returns with error code and halts my scripts.

Adding for posterity:
The usecase I have with pipenv graph --system is when using pipenv inside a docker container. So when you want to display the graph inside a docker container it is not possible anymore. As a workaround I create a pipenv env without docker then run pipenv graph to get the graph. Ideally it would work in both case, but not a big deal.
Another option is to use pipdeptree instead:
docker run [...] bash -c "pip install --user pipdeptree && python .local/bin/pipdeptree"
Hope it helps.


[Bash] Comments

This PR introduces:

[ ] Formatting queries for comments
[ ] Idempotence (except heredocs)

Notes

[ ] Depends on #193
Resolves #138

Status update:

I have reversed the new line strategy to append and reached parity with the previous branch (modulo errant trailing blank lines, which should be easily fixable).
Reversing the strategy has paid off and comments are now easier to format. There's one outstanding issue -- standalone comments being slurped into trailing comments -- which I've yet to work out. (The Rust queries can handle this, but the Bash grammar may not be pinned down enough to emulate its approach...)
There's something wrong with the heredoc formatting (besides the indentation issue): they're not getting a hardline after the end marker in some contexts.

I have reversed the new line strategy to append and reached parity with the previous branch (modulo errant trailing blank lines, which should be easily fixable).

I think you probably want to make this its own PR.

I think you probably want to make this its own PR.

Good idea. I've factored this out into #193.

Status Update
The Bash grammar considers comments to be sibling nodes to those around it. For example,
# comment
command #comment

...has a tree that looks like this:

program

comment
command
comment

The tree structure alone cannot distinguish between a comment that trails a command on the same line, and a "nude" command with a comment interposed by new line(s). That is, the following have equivalent structures:
command # comment

command
# comment

Normally, an input softline would resolve this problem. However, it doesn't seem to be possible with the Bash grammar.
For instance, the Rust grammar also considers comments to be sibling nodes. Yet the following minimal set of queries will format comments as expected:
(#language! rust)
"mod" @prepend_space @append_space

; Comment formatting

(line_comment) @allow_blank_line_before

(line_comment) @append_hardline

(
  ";" @append_input_softline
  .
  (line_comment)* @do_nothing
)

This makes no change to the following minimal example:
// standalone comment

// standalone comment
// standalone comment
mod a;

// standalone comment
mod b; // trailing comment

// standalone comment
// standalone comment
mod c; // trailing comment
mod d;
mod e;

If we try to mechanically convert this to the Bash grammar, we get:
(#language! bash)

; Comment formatting

(comment) @allow_blank_line_before

(comment) @append_hardline

(
  (command) @append_input_softline
  .
  (comment)* @do_nothing
)

This formats the following (correctly formatted) input:
# standalone comment

# standalone comment
# standalone comment
command

# standalone comment
command # trailing comment

# standalone comment
# standalone comment
command # trailing comment
command
command

...as this monstrosity:
# standalone comment

# standalone comment
# standalone comment
command# standalone comment
command# trailing comment
# standalone comment
# standalone comment
command# trailing comment
command command

You'll notice the following problems:

The standalone comment that follows the first command has been slurped into the trailing position.
Trailing comments are not interposed with a space.
The blank line before the last set of standalone comments has been consumed.
A sequence of commands is collapsed on to a single line, separated by spaces. (This introduces an egregious syntactic change from the input.)

There are things we can do to improve this:

Commands that are followed by commands should have a new line interposed.
All comments should be prepended with an input softline, rather than having commands prepended with one when a comment follows.
When a command is followed by two comment nodes, then that second comment must be a standalone comment, so it can have a hardline prepended. (You'll note that this is a bit of a hack! The first comment could also be a standalone comment, so this may insert an errant blank line in that context.)

We thus arrive at this:
(#language! bash)

; Command formatting

(
  (command) @append_hardline
  .
  (command)
)

; Comment formatting

(comment) @allow_blank_line_before

(comment) @prepend_input_softline @append_hardline

(
  (command)
  .
  (comment)
  .
  (comment) @prepend_hardline
)

Which formats the minimal example like so:
# standalone comment

# standalone comment
# standalone comment
command # standalone comment
command # trailing comment

# standalone comment
# standalone comment
command # trailing comment
command
command

This is almost correct...except for that standalone comment that it again slurps into the trailing position.
To Do
Use these minimal examples to understand why the Bash comment formatting does not behave as we'd expect (and is demonstrably proven by the Rust counterexample).

This "works":
(#language! bash)

; Command formatting

; ONLY append a hard line after a command when it is followed by an
; anonymous new line node
(
  (command) @append_hardline
  .
  "\n" ; @delete: This doesn't do anything
)

; Comment formatting

; Allow blank line to interpose comments
(comment) @allow_blank_line_before

; ALWAYS append a hard line after a comment
(comment) @append_hardline

; When a comment is followed by an anonymous new line node, it MUST be a
; trailing comment, so prepend a space
(
  (comment) @prepend_space
  .
  "\n" ; @delete: This doesn't do anything
)

...rendering the following output:
# standalone comment

# standalone comment
# standalone comment
command
# standalone comment
command # trailing comment
# standalone comment
# standalone comment
command # trailing comment
command
command

It's still not as well-behaved as the Rust code, but it at least gets most of what we want.

Targetting the anonymous \n nodes has allowed us to preserve the semantics of comment formatting. It also simplifies the queries for line spacing of "units of execution".
However, it comes at a cost: The final command in a block is followed by an errant blank line. For example:
while true; do
  something

done

We can remove this by applying the @delete capture name against the \n node, but that in turn breaks other things. (Namely: blank line spacing between "blocks" and the correct indentation of case statements when the final branch is missing a terminator.) On balance, this is the least bad option and can probably be fixed in a future PR.
There is also a bug with variable assignments involving command substitutions; an invalid space is inserted, resulting in a syntax error in the final output. I'll attempt to fix that before finalising this PR.

There is something wrong with this premise:

For instance, the Rust grammar also considers comments to be sibling nodes. Yet the following minimal set of queries will format comments as expected:

You are missing these from the Rust queries:
; Input softlines before and after all comments. This means that the input
; decides if a comment should have line breaks before or after. A line comment
; always ends with a line break.
[
  (block_comment)
  (line_comment)
] @prepend_input_softline

; Input softline after block comments unless followed by comma or semicolon, as
; they are always put directly after.
(
  (block_comment) @append_input_softline
  .
  [ "," ";" ]* @do_nothing
)

In your case, only the prepend before line comment is relevant.
Can you take another look with this in mind?

I'm only interested in line comments, because Bash doesn't have block comments.[^1] So this rule, in the Rust queries:
; Input softlines before and after all comments. This means that the input
; decides if a comment should have line breaks before or after. A line comment
; always ends with a line break.
[
  (block_comment)
  (line_comment)
] @prepend_input_softline

...can be simplified -- for the sake of a minimal exemplar -- to just (line_comment) @prepend_input_softline. That correctly deals with trailing line comments, but in vitro, it causes adjacent statements to wrap on to a single line:
// ...
mod d; mod e;

Hence I changed it to the following, to exhibit the expected behaviour:
(
  ";" @append_input_softline
  .
  (line_comment)* @do_nothing
)

Arguably, the false premise is asserting that comment rules can be considered in isolation, when in reality, they -- and the queries that govern them -- interact with everything that's around them. In that sense, the above query is a "hack" to that end. A more faithful minimal exemplar would therefore look something like:
(#language! rust)
"mod" @prepend_space @append_space

(line_comment) @allow_blank_line_before

(line_comment) @append_hardline

(line_comment) @prepend_input_softline

(
  (mod_item) @append_hardline
  .
  (line_comment)* @do_nothing
)

Mechanically converting this to target Bash does a reasonable job:
(#language! bash)

(comment) @allow_blank_line_before

(comment) @append_hardline

(comment) @prepend_input_softline

(
  (command) @append_hardline
  .
  (comment)* @do_nothing
)

Output:
# standalone comment

# standalone comment
# standalone comment
command # standalone comment
command # trailing comment
 # standalone comment
# standalone comment
command # trailing comment
command
command
␤

There are a few problems:

The standalone comment after the first command is slurped into the trailing position.
More generally, the blank lines before standalone comments have been consumed.
The unusual spacing is due to the Bash grammar inserting anonymous \n nodes. These appear in the following contexts:

After a (command) that is immediately followed by a new line.
After a (comment) that follows a sibling node and is immediately followed by a new line (i.e., a trailing comment).

The anonymous \n nodes is a divergence from the Rust grammar in two senses: we have to deal with them, to fix the unusual spacing; but they allow us to target more specific nodes. For instance, standalone commands can be targetted without a @do_nothing exception for trailing comments. Likewise, trailing comments can be explicitly targetted, so we can simplify @prepend_input_softline into @prepend_space:
(#language! bash)

(comment) @allow_blank_line_before

(comment) @append_hardline

(
  (command) @append_hardline
  .
  "\n" @delete
)

(
  (comment) @prepend_space
  .
  "\n" @delete
)

Output:
# standalone comment

# standalone comment
# standalone comment
command
# standalone comment
command # trailing comment
# standalone comment
# standalone comment
command # trailing comment
command
command

The only remaining problem is the consumption of new lines before standalone comments (see #202). Otherwise it's a good approximation of what we ultimately want. As such, these rules are close to the final rules defined in this PR, as of writing. The only difference is that the anonymous \n nodes are not @delete'd. This, IIRC, was to preserve correct indentation within blocks.
[^1]:
As such, the following rule is simply not relevant, so it was omitted from the minimal exemplar:
scm     ; Input softline after block comments unless followed by comma or semicolon, as     ; they are always put directly after.     (       (block_comment) @append_input_softline       .       [ "," ";" ]* @do_nothing     )


Dash-renderer will not render wildcard attributes

I added in https://github.com/plotly/dash-html-components/pull/40 a wildcard attribute to handle the HTML data-* attributes.
This works fine for adding a data-* attribute to an object, and within callbacks you can update this value and use it to correctly to update other callbacks.
However, this attribute is not injected into the HTML on the client side, and it cannot be used to interact with javascript and css on the client side?
Any idea where to start for fixing this issue? I am guessing that there is a subset of properties that are actually rendered in HTML on the client side, and I could add wildcard attributes there. I am having trouble finding the piece of code that does this.

Hm, at first glance I'm actually not quite sure. dash-renderer shouldn't interfere with which properties can be rendered, that should be up to the component. And inside, the component, we're just passing all of the props through:
https://github.com/plotly/dash-html-components/blob/0d65ea60acdd9ee988e89a7b0e70d125edf53c89/src/components/Div.react.js#L20
I'll pull down the branches and take a look


Bugs in TensorFlowYoloDetector

What related GitHub issues or StackOverflow threads have you found by searching the web for your problem?
None
Environment info
Operating System: Windows 10
Installed version of CUDA and cuDNN:
(please attach the output of ls -l /path/to/cuda/lib/libcud*):
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
If installed from source, provide

The commit hash (git rev-parse HEAD)
099ef38a99d069b9a1f6d09a289b2df69eaee276
The output of bazel version
Build label: 0.4.2
Build target: bazel-out/local-fastbuild/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Wed Dec 7 18:47:13 2016<PHONE_NUMBER>)
Build timestamp:<PHONE_NUMBER>
Build timestamp as int:<PHONE_NUMBER>

It looks like there are bugs in TensorfFlowYoloDetector.

The confidence calculation is broken
In line 218:

 final float confidence = output[offset + 4];
Should be
 final float confidence = expit( output[offset + 4] );
You can see line 42 at DarkFlow file

The RGB values might be read as BGR in line 152:

    for (int i = 0; i < intValues.length; ++i) {
      floatValues[i * 3 + 0] = (intValues[i] & 0xFF) / 255.0f;
      floatValues[i * 3 + 1] = ((intValues[i] >> 8) & 0xFF) / 255.0f;
      floatValues[i * 3 + 2] = ((intValues[i] >> 16) & 0xFF) / 255.0f;
    }

Unless there is a bug in DarkFlow, in order to have the same results, one must change to:
    for (int i = 0; i < intValues.length; ++i) {
      floatValues[i * 3 + 2] = (intValues[i] & 0xFF) / 255.0f;
      floatValues[i * 3 + 1] = ((intValues[i] >> 8) & 0xFF) / 255.0f;
      floatValues[i * 3 + 0] = ((intValues[i] >> 16) & 0xFF) / 255.0f;
    }

The NMS calculation is completely different from DarkFlow and DarkNet
See line 242, it just return top K results, without any non-maximum suppression

Here is the code from the file:
    final ArrayList<Recognition> recognitions = new ArrayList<Recognition>();
    for (int i = 0; i < Math.min(pq.size(), MAX_RESULTS); ++i) {
      recognitions.add(pq.poll());
    }

Here is the correct code from DarkFlow, line 52:
	# non max suppress boxes
	for c in range(C):
		for i in range(len(boxes)):
			boxes[i].class_num = c
		boxes = sorted(boxes, key = prob_compare)
		for i in range(len(boxes)):
			boxi = boxes[i]
			if boxi.probs[c] == 0: continue
			for j in range(i + 1, len(boxes)):
				boxj = boxes[j]
				if box_iou(boxi, boxj) >= .4:
					boxes[j].probs[c] = 0.

cc @andrewharp

@AndreyRub Thanks for the catches! I had not known what to expect from the tiny YOLO graph, so I just chalked any performance issues up to it being much smaller than the regular graph. Fix incoming.
Re: #3, the non-max suppression is performed in DetectorActivity using the same logic as the default MultiBox detector.


Expose isIterable to the main API

This PR is in addition to this Issue in that it exposes the new isIterable to the main API.

Coverage remained the same at 100.0% when pulling 3b12b06d2d058747f00f0527275a565c8fcdf651 on chore/expose-isIterable into 90a4892564e10a03973f949edd48fe6fc50a96c0 on master.


Cannot read property 'x' of undefined

angular.js:13550 TypeError: Cannot read property 'x' of undefined
at a.Epoch.Time.Plot.a._updateTicks (http://localhost:45454/Scripts/epoch.min.js:74:220)
at a.Epoch.Time.Plot.a._shift (http://localhost:45454/Scripts/epoch.min.js:72:149)
at a.Epoch.Time.Plot.a._startTransition (http://localhost:45454/Scripts/epoch.min.js:69:457)
at a.Epoch.Time.Plot.a.push (http://localhost:45454/Scripts/epoch.min.js:71:503)
at http://localhost:45454/Scripts/ng-epoch.js:80:31
at n.$digest (http://localhost:45454/Scripts/angular.min.js:142:306)
at n.$apply (http://localhost:45454/Scripts/angular.min.js:145:249)
at i. (http://localhost:45454/app/services.js:19:32)
at i.f.(anonymous function).(anonymous function) (http://localhost:45454/Scripts/jquery.signalR-2.2.0.min.js:8:33219)
at i.n.event.dispatch (http://localhost:45454/Scripts/jquery-2.2.3.min.js:3:7537)

This was trying to render an area chart.  dataitem.value = 38.
chartEntry.push({ time: timestamp, y: dataItem.value });
$scope.areaAxes = ['left', 'right', 'bottom'];

Can you show me how you define chartEntry?

var timestamp = ((new Date()).getTime() / 1000) | 0;
var chartEntry = [];
chartEntry.push({ time: 0, y: 0 });


Integration Test - Release - 2019/04/25 01:43:53

Auto create for integration test. IssueCommandFlow

@PRMergerTest3 : Thanks for your contribution! The author, @v-caxian, has been notified to review your proposed change.


print p4  table entry info error

I insert a entry into table successfully, And I want to get entry info :

but I get the follow errors:

I don't know where the problem is . Please help me fix the issue.

Thanks for reporting this. Could you share the P4 program (or even better the bmv2 JSON & P4Info files if you have them), as well as the command you used to create the table entry, so I can reproduce the issue?

I see what the issue is.
That _PrintFieldName method was introduced in Protobuf 3.7.0 (https://github.com/protocolbuffers/protobuf/blob/v3.7.0/python/google/protobuf/text_format.py#L395) but you probably have an older version installed. I need to fix this since p4runtime-shell is supposed to work with Protobuf 3.6.0. If you use the provided docker image to run the shell (via the ./p4runtime-sh-docker script), you should not run into this error.

@Colaplusice Can you please send me the code/cmd to enter p4 run time table entries. To be able to forward ping packets, I need to add two table entries on l2_exact_table in leaf1 -- one that matches on destination MAC address of h1b and forwards traffic to port 4 (where h1b is attached), and vice versa (h1a is attached to port 3) but I am unable to do it.


Re-Release to address CVE-2024-24788?

Golang 1.22.2 has a vulnerability in the form of CVE-2024-24788 , which has been fixed in 1.22.3
Since the latest version was built on 1.22.2, it is setting of Trivy (especially since Trivy update to scan stdlib - i.e. the version of Golang a binary was compiled with).
I am not sure how to address this in the form of a PR, since no change is needed except to rebuild the artifacts (releases) with Golang 1.22.3 .
Since go.mod uses go 1.22 , I don't know if you'd be open to additionally specifying the patch version (i.e. go 1.22.3).
Thanks for your time.

Running into this same issue.

One more issue with the Golang 1.22.2 CVE-2024-24790, which has been fixed in 1.22.4.

Yeah, also running into this, would be great to release new version.


Run post-rewrite hook after rewriting commit message

This is something that libgit2 (deliberately) does not do and leaves up
to application authors. It's useful for us to do, to, e.g., inform
things like git-branchless (https://github.com/arxanas/git-branchless)
what has happened when we rewrite commits. And it's easy enough, there
is a crate specifically to do this for us.
We may want to do something similar for rebase_commits too, but this
was the one that was causing me grief for now.
Test Plan:
use spr amend on a repo alongside the aforementioned
git-branchless. Its post-rewrite hook is invoked and its data structures
are updated correctly.

If you were invoking the post-commit hook then spr could become quite slow because it can create a couple commits each time you use it.

Right -- despite creating commits under the hood, what we're doing here is morally a rewrite. (Not that git itself distinguishes between those anyway!)

It's a bit strange that spr would invoke post-rewrite but not other hooks, but I think that's ok.

We can always add the others if we need!

Other thing to consider is whether to have a flag in the config that decides whether this hook should run or not. I think that that might actually be a good idea. Mostly because I expect most people will not care about hooks for commits that spr creates. However, I don't feel strongly about this.

Running the hooks seems like a reasonable default behaviour, but if it's a problem, can add the options in a future PR.


Add option to choose Enter key to produce line feed or send message

I can’t enter multiline messages (either Enter key or copy/paste line feed sends first line anyway and inserts line feed before following message).
Please add an option in Settings or near the Send button to change behaviour of the Enter key.

This is a good idea, since destkop Shift + Enter is not accesible on mobile phones. This means however that there's a such setting support on hydrogen-web (see hydrogen.element.io deployment). We might look into this to contribute upstream


return more information than just steps (final result, error message)

Blocked on #129 because we need to architect a system for including this information in the node status
Mathsteps currently returns [] if a solved equation is passed to it. The standard thing for a CAS to return in this situation appears to be the solved equation. I like the standard behavior because then the calling code does not need to check if an equation is already solved before submitting it.
One solution would be to return an object that has

a property which contains the list of steps,
a property that contains the final result (so the user does not need to obtain it from the list), and
a property for error messages.

this would be a breaking change, so let's introduce it for 1.0

thanks to @tkosan for the suggestion!

What about adding an error property to the array (array inherits from object)?
function solveEquation () {
  let arr = []
  // solve...
  if (someErrorCondition) {
    arr.error = 'Could not simplify'
  }
  return arr
}

let steps = solveEquation('x^2+2x-3=x^3')
if (steps.error) {
  // handle error
}


Error while compiling aarch64

Arch: aarch64
All pkgs installed and configured
Trying to compile by instuctions
$> go get github.com/Ullaakut/cameradar
go: downloading github.com/pkg/errors v0.8.0
github.com/Ullaakut/cameradar
../go/pkg/mod/github.com/!ullaakut/cameradar@v3.0.1+incompatible/discover.go:36:15: assignment mismatch: 2 variables but scanner.Run returns 3 values

Hi @huntmix !
I'm really confused as to why it tries to download<EMAIL_ADDRESS>while my repo is at Ullaakut/cameradar (my username is capitalized) and the v3.0.1 is massively outdated. The file it complains about does not even exist anymore. Cameradar is now at v5.
I am able to reproduce the issue, fortunately, so I'll be able to investigate when I have some time. In the meantime, I'd recommend using the docker image or a precompiled binary, or cloning and manually building it yourself.
Thanks for reporting this issue :)

Trying to compile for aarch64(arm64) because of want to port this tool for android(termux, terminal, nethunter etc.) So docker for me not solution, thx for reply

Actually I think I see what the issue is:

When running go get it is now necessary to specify the version in the path, or it takes the last non-versionned known tag, which in this case is v3.0.1 (it has a GH version but the go module doesn't, apparently)
When going to the path in which it has been downloaded, the path for module sources is no longer $GOPATH/src/github.com/... but $GOPATH/pkg/mod/github.com/....

With those two changes, the install steps should now work. Can you confirm @huntmix ?
I opened a PR to update the README, should those steps work for you as well. Thanks again!

Confirming, succesful compile for arm64 (aarch64), i can send binary so you can add it to release if you want. Thx for fix
√Termux
√Nethunter
√Alpine

Also for default dictionarys you need fix "src" to "pkg"

True, I'll add a note to the PR and change that when I have some more time :)

Reopening until #291 is merged with all the fixes.

Hello!  Sorry about the time you lost because of that oversight. Thanks for your message and reminding me about this issue :)


Change anti-xray world configuration headers

This renamed the "Overworld Configuration" to default world since it's no longer the overworld config but a config for all worlds without an override.

Thanks! Either this PR or #123? (Or both?)


missing dipendencies

Missing dependencies for itorch:
lbase64
luacrypto
uuid
lzmq >= 0.4.2
Warning: Failed searching manifest: Failed fetching manifest for https://raw.githubusercontent.com/torch/rocks/master - Failed downloading https://raw.githubusercontent.com/torch/rocks/master/manifest - /home/xxxxxx/.cache/luarocks/https___raw.githubusercontent.com_torch_rocks_master/manifest
Warning: Failed searching manifest: Failed fetching manifest for https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master - Failed downloading https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/manifest - /home/xxxxxx/.cache/luarocks/https___raw.githubusercontent.com_rocks-moonscript-org_moonrocks-mirror_master/manifest
Error: Could not satisfy dependency: lbase64
Do you want to automatically prepend the Torch install location
to PATH and LD_LIBRARY_PATH in your /home/xxxxxx/.bashrc? (yes/no)
[yes] >>>
this will happen . is it alright?

I got this issue too. It turned out that I had previously ran 'sudo ./install.sh' which set owner of /home/xxxxxx/.cache/luarocks to root. Simply delete /home/xxxxxx/.cache/luarocks fixed it.