feat(frontend): explain (logical)

I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
Implement explain logical.
It can be useful to some users who want to understand the logical plan of their query, but not the physical plan or look through the trace.
Usage combinations:

explain (logical) [stmt]: show the optimized logical plan
explain (logical, trace) [stmt]: only show the optimizer trace up to optimized logical plan
explain (logical, verbose) [stmt]: no change with 1

Checklist

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Documentation
The documentation for EXPLAIN should be updated (we can merge it after release)
Release note
Enabled explain (logical) and explain (logical, trace).
Refer to a related PR or issue link (optional)
https://github.com/risingwavelabs/risingwave/issues/4856

@jon-chuang explain_to_string() is called even for non-explain queries. This is unacceptable and might be a performance botten-neck for serving queries.
https://github.com/risingwavelabs/risingwave/blob/58da8cac59a943bbb633932f7b66a203350e593d/src/frontend/src/optimizer/mod.rs#L444
I think you can simply run explain multiple times to get the output of each stage. Anyway, explain is for human users so the performance is not critical problem.


Test-Connection cannot access network without sudo on Fedora 37

Prerequisites

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

Steps to reproduce

Download and install Powershell 7.3.0 in Fedora 37
Open Terminal and type
touch powershell.ps1
This will create and empty file. This is needed to reproduce the bug easily.
Now, open the newly created powershell.ps1 file, type and save
Test-Connection -TargetName www.bing.com -Ping -Count 1
Open the Terminal again, type and run
pwsh powershell.ps1
(this worked in v7.2.6)
One more time but this time with sudo (to confirm the bug)
sudo pwsh powershell.ps1

Expected behavior
For both cases:
`
   Destination: www.bing.com

Ping Source           Address                   Latency BufferSize Status
                                                   (ms)        (B)
---- ------           -------                   ------- ---------- ------
   1 fedora           <IP_ADDRESS>                 54         32 Success

`(something just like this)

Actual behavior
When the powershell file is run without root:
   1 |  Test-Connection -TargetName www.bing.com -Ping -Count 1
     |  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | Unable to send custom ping payload. Run program under privileged user account or grant cap_net_raw capability using setcap(8).

When the powershell file is run with root:

   Destination: www.bing.com

Ping Source           Address                   Latency BufferSize Status
                                                   (ms)        (B)
---- ------           -------                   ------- ---------- ------
   1 fedora           <IP_ADDRESS>                 54         32 Success

Error details
No response
Environment data
Name                           Value
----                           -----
PSVersion                      7.3.0
PSEdition                      Core
GitCommitId                    7.3.0
OS                             Linux 6.0.8-300.fc37.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Nov 11 15:09:04 UTC 2022
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals

It would be nice to document this. @237dmitry Please open doc issue with your suggestion in PowerShell Docs repository.

Thanks. It worked.


validation: title-missing-fixes-6

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

File
Status
Preview URL
Details

Skype/UCWA/addPhoneAudio_ref.md
:warning:Warning

Details

Skype/UCWA/audioTranscript_ref.md
:warning:Warning

Details

Skype/UCWA/immediateForwardSettings_ref.md
:warning:Warning

Details

Skype/UCWA/immediateForwardToVoicemail_ref.md
:warning:Warning

Details

Skype/UCWA/myGroups2_ref.md
:warning:Warning

Details

Skype/UCWA/myGroups_ref.md
:warning:Warning

Details

Skype/UCWA/startAudioVideo_ref.md
:warning:Warning

Details

Skype/UCWA/Availability_ref.md
:bulb:Suggestion

Details

Skype/UCWA/ErrorCode_ref.md
:bulb:Suggestion

Details

Skype/UCWA/ModalityType_ref.md
:bulb:Suggestion

Details

Skype/UCWA/addPhoneAudio_ref.md

Line 39, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/audioTranscript_ref.md

Line 46, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/immediateForwardSettings_ref.md

Line 54, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/immediateForwardToVoicemail_ref.md

Line 44, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/myGroups2_ref.md

Line 59, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 71, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 117, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 158, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/myGroups_ref.md

Line 57, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 69, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 115, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 156, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/startAudioVideo_ref.md

Line 40, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/Availability_ref.md

Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/ErrorCode_ref.md

Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/ModalityType_ref.md

Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

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 the docs.microsoft.com contributor guidesPost your question in the Docs support channel

@lindalu-MSFT
The Content & Learning team is fixing build validation errors on docs.microsoft.com for the rest of H2. This will eliminate potential accessibility, security, and usability issues. This PR includes only build validation fixes and does not change other content. Please review within five business days and merge or comment in the PR with any changes you’d like to see. Thank you!

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

File
Status
Preview URL
Details

Skype/UCWA/addPhoneAudio_ref.md
:warning:Warning

Details

Skype/UCWA/audioTranscript_ref.md
:warning:Warning

Details

Skype/UCWA/immediateForwardSettings_ref.md
:warning:Warning

Details

Skype/UCWA/immediateForwardToVoicemail_ref.md
:warning:Warning

Details

Skype/UCWA/myGroups2_ref.md
:warning:Warning

Details

Skype/UCWA/myGroups_ref.md
:warning:Warning

Details

Skype/UCWA/startAudioVideo_ref.md
:warning:Warning

Details

Skype/UCWA/Availability_ref.md
:bulb:Suggestion

Details

Skype/UCWA/ErrorCode_ref.md
:bulb:Suggestion

Details

Skype/UCWA/ModalityType_ref.md
:bulb:Suggestion

Details

Skype/UCWA/addPhoneAudio_ref.md

Line 39, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/audioTranscript_ref.md

Line 46, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/immediateForwardSettings_ref.md

Line 54, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/immediateForwardToVoicemail_ref.md

Line 44, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/myGroups2_ref.md

Line 59, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 71, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 117, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 158, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/myGroups_ref.md

Line 57, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 69, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 115, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 156, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/startAudioVideo_ref.md

Line 40, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/Availability_ref.md

Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/ErrorCode_ref.md

Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

Skype/UCWA/ModalityType_ref.md

Line 2, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

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 the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Switch module and input control styles added

-moved the styles for checkbox, radio, and switch controls to placeholder selectors
-temporarily disabled normalize.scss

Coverage remained the same at 95.21% when pulling e37d500f749df1a19c1b759ba5196a32df02e133 on simeonoff:master into c94666348ff634ccad014055062eb8683b1d2e50 on Infragistics:master.


added three c++ programs in the codechef solutions folder and have al…

Hi @pranjay-poddar ! I have added three C++ problem statements along with my solution for the previous codechef contest inside "Codechef Solutions/c++" folder and I have added comments explaining crucial sections of my code. I have also added my GitHub handle in the contributions.md file to the issue "Add Codechef Contest Solutions #8 ". Please merge my PR to your main branch if my codechef solutions sound good to you. Thank you.

Thank you for your contribution!

Thank you so much for giving me a chance and making my first PR successful @pranjay-poddar  :-)


bump version and republish package

this package wasn't republished since the last changes.

Is there any update on this?

Sorry everyone.  Been distracted with other things.  I just published and update.  now version 1.3.5


Add icon for every new pane

The icons are added on a per pane basis, so need to be added each time a new pane opens, not just onload.

Fixed in 0.0.4


How to find components in children, using enzyme?

I'm trying to incorporate react-measure in an existing project, using it to measure the width of a modal so I can pass in the modal width and set the width of my fixed-data-table-2 Table (I'm yanking out fixed-data-table and responsive-fixed-data-table).
Functionally, everything works, but my tests are broken because enzyme can't find Modal.Title anymore... It can find Modal, but even with mount, anything inside the Modal seems unaccessable.
Have any of you run into this? Do you have a solution? Thanks.

Hmm weird 🤔 I'm not familiar with testing in enzyme. What version are you using?

"react-measure": "2.0.2",
"enzyme": "^2.8.2"

Obviously, I don't want to change testing libraries for a single component, but is there a testing library that you use that can find child components inside Measure?

Definitely, I feel you. Unfortunately, I'm not too savvy with testing. I've only done a little bit, I really need to get better about it. I'll leave this open though so someone can hopefully help. Maybe there is a pattern for testing render props or HoCs with enzyme 🤔. I'll try and do some research.

@matneyx I'm sure it's trivial since render prop allows you to render anything.
const inst = mount(
  <Viewport>
    {({ width }) => (

    )}
  </Viewport>
)
const myElement = inst.find('.myElement')
// ....

Try with simple example, it's probably not react-measure problem.

Btw, is there a way to mock parameters "width" and "height" provided to child div by react-measure?

I was able to get my tests to work by moving Measure further into the component (the last div surrounding my fixed-data-table).  I'm still not positive that I could get inside a react-bootstrap Modal, but I think that's more to do with how Modal is rendered and nothing to do with Measure.
Thanks for all your input.


Greedy plan enumeration algorithm must use the cost model

Currently, our implementation of the greedy plan enumeration algorithm compares plans solely based on their estimated result cardinalities. To make the comparison to our evolutionary algorithm fair, the implementation of the greedy algorithm must be changed such that is compares plans based on their estimated cost.
Additionally, the Java package that contains the implementation of the greedy algorithm is wrongly named (see #71). Hence, before changing it to use the cost model rather than the cardinality estimates, it should be moved to a new package called se.liu.ida.hefquin.engine.queryproc.impl.optimizer.greedy.

Done. /cc @chengsijin0817


jar v1.30 has high severity Prisma vulnerability (CVE-2022-25857) associated with otel (OpenTelemetry Java Agent) v1.17.0

jar v1.30 has high severity Prisma vulnerability (CVE-2022-25857) associated with otel (OpenTelemetry Java Agent) v1.17.0. org.yaml_snakeyaml at path:/opt/aws/aws-opentelemetry-agent.jar
Please remediate Prisma vulnerability. Thank you!

Hi,
Thank you for reaching out.
As per our guidelines we ask you not to create a public issue on this GitHub repo but rather the AWS/Amazon Security via our vulnerability reporting page. Now, since this issue exists already, we can share with you that a patch for this vulnerability is now available via aws-otel-java-instrumentation-v1.18.0


Repo sync for protected CLA branch

The pull request is created from master637416870015422990 to master to fix git push error for protected CLA branch

@cmcclister : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Page feedback migration to AWS

The page feedback infrastructure is being migrated to AWS.
This involves:

Recreation of the database using DynamoDB instead of Azure CosmosDB
Recreation of the Function As A Service which receives page feedback form POSTS
Coordinate with data team to make sure the new database migrates to Google Cloud to power the dashboards
Update all sites which use page feedback to use the new endpoint
Update the design system component to use the new endpoint as default and not use an endpoint as a required param

This has been completed, Azure resources have been retied.


ISO Generator

Create a GHA
min ks from each repo
defines the location of custom image
slipstream into fedora iso
mkksiso
each of these is 560mb net installer for each flavor of image
attach to each release
installer checks if it's nvidia and can determine if it's an nvidia machine

Blocked on: https://github.com/rhinstaller/anaconda/pull/4561

We have ISOs that work on most conditions now, there's still some work left but I think we can track that separately

I want to leave it open until we either figure out how to make downstream images work or we put bluefin on the existing iso


eth/abi: implement encode_packed/decode_packed

Given: I sign a message with a private key generated using eth.rb
Then: I get a signature
Expected: The signer of the message to be the signer verified on the smart contract
Ruby (Eth.rb)
# Generate new key and wallet address
new_wallet = Eth::Key.new

# Array to be encoded
token_ids = [1,2,3]

 # Sign message
get_signature = Eth::Util.method(:prefix_hex) << new_wallet.method(:personal_sign) << Eth::Util
.method(:bin_to_prefixed_hex)  << Eth::Util.method(:keccak256)  << Eth::Abi.method(:encode)

get_signature.call(['uint256[]'], [token_ids])
# returns 0x656f70ae6747dc4de541fdaea84701a4b06feea22714cdae6b49ebd4e3c32d1b5b96dca9cf232add9ee0d0e35c951f3e940e93d26fcaf22a51413cd058402fb21c

Smart contract
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.9;
import<EMAIL_ADDRESS>contract VerifySignature {
    using ECDSA for bytes32;

    function getMessageHash(uint256[] memory  ids) public pure returns (bytes32) {
        return keccak256(abi.encodePacked(ids));
    }

    function verify(bytes memory sig, uint256[] memory ids) external pure returns (bool) {
        bytes32 messagehash = keccak256(
            abi.encodePacked(ids)
        );
        return messagehash.toEthSignedMessageHash().recover(sig) == 0x2ceBaa61f571C38d41cFFc8605FB3C1ac4d7F6e7;
    }

    function getSigner(bytes memory sig, uint256[] memory ids) external pure returns (address) {
        bytes32 messagehash = getMessageHash(ids);
        return messagehash.toEthSignedMessageHash().recover(sig);
    }

}

getSigner
returns a different address from the new_wallet.address
@q9f @kurotaky
Is there a difference between how encodePacked in solidity works and encode in eth.rb?
Using v'0.5.3'

I also tried with simple strings and I get the same result

@tomiwaAdey Hi, You could use abi.encode(ids) and the result would be the same.
Result of encode in eth.rb
returns 0x62e243217b24f0adeab63b697d9c38d64bd4cbf540c9915772ddc377b45b411c
[2] pry(main)> token_ids = [1,2,3]
=> [1, 2, 3]
 [23] pry(main)> Eth::Util.bin_to_prefixed_hex(Eth::Util.keccak256(Eth::Abi.encode(['uint256[]'], [token_ids])))
=> "0x62e243217b24f0adeab63b697d9c38d64bd4cbf540c9915772ddc377b45b411c"

Try it on Smart Contract with Remix  (use abi.encodePacked() )
returns 0x6e0c627900b24bd432fe7b1f713f1b0744091a646a9fe4a65a18dfed21f2949c
Code
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.9;
import "./ECDSA.sol";

contract VerifySignature {
    using ECDSA for bytes32;

    function getMessageHash(uint256[] memory ids) public pure returns (bytes32) {
        return keccak256(abi.encodePacked(ids));
    }

    function verify(bytes memory sig, uint256[] memory ids) external pure returns (bool) {
        bytes32 messagehash = keccak256(
            abi.encodePacked(ids)
        );
        return messagehash.toEthSignedMessageHash().recover(sig) == 0x2ceBaa61f571C38d41cFFc8605FB3C1ac4d7F6e7;
    }

    function getSigner(bytes memory sig, uint256[] memory ids) external pure returns (address) {
        bytes32 messagehash = getMessageHash(ids);
        return messagehash.toEthSignedMessageHash().recover(sig);
    }
}

Capture when executed

Try it on Smart Contract with Remix  (use abi.encode() )
returns 0x62e243217b24f0adeab63b697d9c38d64bd4cbf540c9915772ddc377b45b411c
Code
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.9;
import "./ECDSA.sol";

contract VerifySignature {
    using ECDSA for bytes32;

    function getMessageHash(uint256[] memory ids) public pure returns (bytes32) {
        return keccak256(abi.encode(ids));
    }

    function verify(bytes memory sig, uint256[] memory ids) external pure returns (bool) {
        bytes32 messagehash = keccak256(
            abi.encode(ids)
        );
        return messagehash.toEthSignedMessageHash().recover(sig) == 0x2ceBaa61f571C38d41cFFc8605FB3C1ac4d7F6e7;
    }

    function getSigner(bytes memory sig, uint256[] memory ids) external pure returns (address) {
        bytes32 messagehash = getMessageHash(ids);
        return messagehash.toEthSignedMessageHash().recover(sig);
    }
}

Capture when executed

@kurotaky I appreciate you taking the time to look into this.
I have since dug deeper into it and encoding in solidity works the same as encoding here.
The only problem when it comes to signing the message hash with eth.rb and verifying using Openzeplin's ECDSA is that OZ uses encodePacked and I'm not exactly sure exactly why they are using encodePacked instead of encode.
These are the options I'm considering:

adding a method to generate tightly packed encodings on eth.rb
encoding the ids in the FE (frontend) using ethers' solidityPack before sending it to the BE (backend) and signing (personal_sign) with eth.rb
Using a custom verifier instead of OZ's

I was leaning more towards option 3 but I'm a bit worried as to why OZ uses encodePacked considering their code has been audited multiple times.
Now I'll probably go with option 2 and then when I've finished the implementation, I'll work on option 1 and submit a pr.

Unfortunately, no luck with option 2 either.
I'll move most of the logic here to use JS for now.
The implementation in JS using ethers:
const ids = [1,2,3]
const messageHash = ethers.utils.solidityKeccak256(["uint256[]"], [ids]);
const arrayifyMessage = ethers.utils.arrayify(messageHash);
const sig = await new ethers.Wallet(<PrivateKey>).signMessage(arrayifyMessage);

The sig return is verifiable with OZ ECDSA.
I've tried to send the messageHash to ruby.eth so I just sign the hash, but even that produces the wrong signature.
key = Eth::Key.new
key.personal_sign messageHash

@tomiwaAdey
I am going to look at this issue now, what did you find out?

Hey @kurotaky :)
I ended up using etherjs for signing just because I have a deadline coming up about a week from today.
EncodePacked
Yes, encodePacked performs packed encoding where:

Dynamic types are encoded in place without length.
Static types will not be padded if they are shorter than 32 bytes
with the exception of arrays which doesn't have it's elements packed (not sure why)
So this should be doable.

Another path is to verify the signature manually instead of using OZ ECDSA. Which I implemented like this:
function _splitSignature(bytes memory signature) private pure returns (
        bytes32 r,
        bytes32 s,
        uint8 v
        ) {
        require(signature.length == 65, "INVALID SIGNATURE LENGTH");
        assembly {
            r := mload(add(signature, 32))
            s := mload(add(signature, 64))
            v := byte(0, mload(add(signature, 96)))
        }
    }

    function _recoverSigner(
        bytes32 messageHash,
        bytes memory signature) private pure returns (address) {
        (bytes32 r, bytes32 s, uint8 v) = _splitSignature(signature);
        return ecrecover(
           keccak256(
            abi.encode(
                "\x19Ethereum Signed Message:\n32",
                messageHash
            )),
            v,
            r,
            s
        );
    }

Then I can verify
require(_recoverSigner(keccak256(abi.encode(id, address(this))), signature) == <signerAddress>, "WRONG SIGNATURE");

In terms of generating the signature
I didn't dive as much as ethersjs was working out of the box.
It might have something to do with the way I was constructing the message to be signed but I'm not sure and haven't looked much further. I'll look into it after I'm done with this project as I'll rather write these things in ruby than JS(typescript).
But this is a common pattern generally with writing dapps, sign a message offchain and verify onchain. We should make it as seamless as possible for developers to keep to the ruby ethos.

Right, we might need encode_packed then.

EncodePacked Yes, encodePacked performs packed encoding where:

Dynamic types are encoded in place without length.
Static types will not be padded if they are shorter than 32 bytes
with the exception of arrays which doesn't have their elements packed (not sure why)
So this should be doable.

Do you mind pointing me toward the specification of this?


Test: AI lightbulb action menu

Refs: https://github.com/microsoft/vscode/issues/199156

[ ] anyOS @lramos15
[ ] anyOS @alexr00
[ ] anyOS @TylerLeonhardt

Complexity: 4
Create Issue

This iteration, we have done some exploration in order to better surface the inline chat in VS Code. Several ideas have been explored, namely adding a sparkle icon in the editor gutter, adding a sparkle icon in the editor toolbar and lastly, changing the lightbulb code action menu to better surface AI code actions it contains. We have finally decided to stick to the latter idea. Follow the following steps in order to test the new AI lightbulb icons.

Install and enable the Copilot and Copilot Chat extensions in VS Code
Set the following setting editor.lightbulb.experimental.showAiIcon to the value on
Open a document with code in it
Place your cursor in different positions of the editor and verify the following:

Verify that a sparkle icon (in lieu of the lightbulb icon) appears on empty lines. The on value for the setting indicates that VS Code should also show AI Code actions on empty lines.
Verify that when the menu contains only AI code actions, the lightbulb icon becomes a filled in sparkle icon. It may be that when you click on the sparkle icon it directly opens the inline chat, without showing a menu with the actions. This happens when the menu only contains one AI code action. In that case, this AI code action is triggered immediately. If this happens, you are most likely triggering the Generate using Copilot code action.
Verify that when the menu contains AI and standard code actions, the lightbulb icon becomes a yellow lightbulb overlayed with sparkles

Additionally, when the menu contains an auto-fix action, then the lightbulb icon becomes a blue lightbulb overlayed with sparkles

Verify that when the menu contains only standard code actions, the lightbulb icon behaves as usual

Now set the value of editor.lightbulb.experimental.showAiIcon to onCode

Verify that no sparkles appear on empty lines. The value onCode of the setting means that the sparkle/lightbulb appears in the same locations as before (when we had only a lightbulb icon).

Set the value of the setting editor.lightbulb.experimental.showAiIcon to off

Verify that you get the same lightbulb experience as before. In particular:

The lightbulb never appears on empty lines
You only see a yellow or a blue light-bulb

All feedback concerning the UI/UX is welcome!

Neither Settings Editor nor JSON completions are offering me the the options for this settings as an enum. Is that expected?

Neither Settings Editor nor JSON completions are offering me the the options for this settings as an enum. Is that expected?

My bad. I was looking at a different setting, typescript.experimental.aiCodeActions, which doesn't have an enum.


Update smithy4s-http4s, ... to 0.17.6

About this PR
📦 Updates

com.disneystreaming.smithy4s:smithy4s-http4s
com.disneystreaming.smithy4s:smithy4s-http4s-swagger
com.disneystreaming.smithy4s:smithy4s-sbt-codegen

from 0.17.0 to 0.17.6
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.disneystreaming.smithy4s" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.disneystreaming.smithy4s" }
}]

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

Superseded by #37.


[dvsim] Add verilator to nightly

This PR adds verilator based simulations to the CI and nightly runs.
We cannot sustainably keep adding more and more tests to systemtest -
it puts a strain on our CI runtime.
Plus, there are some benefits of running Verilator sims within DVSim:

Testplanning for a more doc-oriented approach
Report generation
Triaging failures
Parallelize deployment to external compute systems over LSF / GCP
Defining regression sets

For CI, the smoke regression is not enabled. This is because we already
have systemtest approach hooked up and running.
Signed-off-by: Srikrishna Iyer<EMAIL_ADDRESS>

It's fine with me to run Verilator regressions in nightlies as well.
Private CI fails currently with:
INFO: [SimCfg] [scratch_path]: [chip_verilator] [/azp/agent/_work/1/s/scratch/HEAD/chip_earlgrey_verilator-sim-vcs]
ERROR: [Modes] Sub mode "vcs_gui" added to mode "gui" was not found!

Please make sure that private CI does not run anything but the VCS smoke regressions.
Not that it matters here, but the points you mention above are mostly not unique to dvsim. For example, reports (including per-test history) is available at https://dev.azure.com/lowrisc/opentitan/_build/results?buildId=42264&view=ms.vss-test-web.build-test-results-tab and https://github.com/lowRISC/opentitan/pull/6715/checks?check_run_id=2671025352 in summary form.

It's fine with me to run Verilator regressions in nightlies as well.
Private CI fails currently with:
INFO: [SimCfg] [scratch_path]: [chip_verilator] [/azp/agent/_work/1/s/scratch/HEAD/chip_earlgrey_verilator-sim-vcs]
ERROR: [Modes] Sub mode "vcs_gui" added to mode "gui" was not found!

Please make sure that private CI does not run anything but the VCS smoke regressions.
Not that it matters here, but the points you mention above are mostly not unique to dvsim. For example, reports (including per-test history) is available at https://dev.azure.com/lowrisc/opentitan/_build/results?buildId=42264&view=ms.vss-test-web.build-test-results-tab and https://github.com/lowRISC/opentitan/pull/6715/checks?check_run_id=2671025352 in summary form.

Sigh.. I am unable to reproduce the CI error locally. Let me see what's going on.

It's fine with me to run Verilator regressions in nightlies as well.
Private CI fails currently with:
INFO: [SimCfg] [scratch_path]: [chip_verilator] [/azp/agent/_work/1/s/scratch/HEAD/chip_earlgrey_verilator-sim-vcs]
ERROR: [Modes] Sub mode "vcs_gui" added to mode "gui" was not found!

Please make sure that private CI does not run anything but the VCS smoke regressions.
Not that it matters here, but the points you mention above are mostly not unique to dvsim. For example, reports (including per-test history) is available at https://dev.azure.com/lowrisc/opentitan/_build/results?buildId=42264&view=ms.vss-test-web.build-test-results-tab and https://github.com/lowRISC/opentitan/pull/6715/checks?check_run_id=2671025352 in summary form.

Sigh.. I am unable to reproduce the CI error locally. Let me see what's going on.

The problem is with the --tool vcs override applied in the CI run. We cannot unfortunately do that for a Verilator config.

Closing this PR, since it does not work. Alternate approach is to run Verilator in the nightly separately.


refactor: move overrides into a separate file

Cross posting from https://prontolab.slack.com/archives/C07JU2SCP9C/p1734235298670169 for details
Any idea how to make the reactant_override stuff work nicely with Revise. currently if we make any arbitrary change in a file containing a reactant_override it fails to revise. For example, adding:
foooooo(sss) = sss

before the overrides for Enzyme leads to
stmt = :($(Expr(:method, :(Base.getproperty(Reactant, :REACTANT_METHOD_TABLE)), %J11, CodeInfo(
1 ─      nothing
│   @ /mnt/software/lux/Reactant.jl/src/Interpreter.jl:486 within `none`
│   %2 = overload_autodiff
│   %3 = Core.tuple(rmode, f, rt)
│   %4 = Core._apply_iterate(Base.iterate, %2, %3, args)
└──      return %4
))))
┌ Error: Failed to revise /mnt/software/lux/Reactant.jl/src/Interpreter.jl
│   exception =
│    name Expr not recognized
│    Stacktrace:
│     [1] error(::String, ::Type, ::String)
│       @ Base ./error.jl:44
│     [2] direct_links!(cl::LoweredCodeUtils.CodeLinks, src::Core.CodeInfo)
│       @ LoweredCodeUtils /mnt/.julia/packages/LoweredCodeUtils/RTbGF/src/codeedges.jl:246
└ @ Revise /mnt/.julia/packages/Revise/vhmOR/src/packagedef.jl:743
┌ Warning: The running code does not match the saved version for the following files:
│
│   /mnt/software/lux/Reactant.jl/src/Interpreter.jl
│
│ If the error was due to evaluation order, it can sometimes be resolved by calling `Revise.retry()`.
│ Use Revise.errors() to report errors again. Only the first error in each file is shown.
│ Your prompt color may be yellow until the errors are resolved.
└ @ Revise /mnt/.julia/packages/Revise/vhmOR/src/packagedef.jl:854

If there is no nice solution, does anyone mind if I move all the overlays to a separate file "Overrides.jl"? That way Revise only doesn't work if a change is made to that particular file

I like this.
The only thing left is that if we want to rename @reactant_override to @reactant_overlay to keep consistency with Julia (in the end it's just a partial to @overlay) this is a fantastic moment to do it. If not, let's keep then with "override".

@avik-pal what is the difference between "TracedUtils.jl" and "Tracing.jl"? i created "Tracing.jl" to put all things related to tracing but not TracedRArray, and as i see, "TracedRUtils.jl" has things related to "TracedRArray" (like materialize_traced_array) but also not related to them like make_mlir_fn.

@avik-pal what is the difference between "TracedUtils.jl" and "Tracing.jl"? i created "Tracing.jl" to put all things related to tracing but not TracedRArray, and as i see, "TracedRUtils.jl" has things related to "TracedRArray" (like materialize_traced_array) but also not related to them like make_mlir_fn.
should i put a comment on top of the files to tell what that file is about? like i did in "Ops.jl"

I needed a namespace such that we told our interpreter we don't need to continue recursing into it and replacing all code with code from our interpreter (for compile time performance). Ops is one such namespace, as is TracedUtils

I needed a namespace such that we told our interpreter we don't need to continue recursing into it and replacing all code with code from our interpreter (for compile time performance). Ops is one such namespace, as is TracedUtils

aha and the same thing for TracedRArrayOverrides and TracedRNumberOverrides? although they don't seem like they are considered in should_rewrite_ft, so maybe no.
i don't like much that TracedRArray and TracedRNumber are back again in "Reactant.jl" file, but i guess this is one of the things you said about "let's get it done first and clean it later" right? i think that it makes sense to move "TracedUtils.jl" inside "Tracing.jl" and put it all inside a Tracing module. i'm ok waiting you to finish and then cleaning.

Not quite, those were there because I wanted to avoid exporting any internal utilities for implementing the traced overrides of Base
And yeah definitely go for reorganizing things [I just wanted to get things running to start with]

Not quite, those were there because I wanted to avoid exporting any internal utilities for implementing the traced overrides of Base
And yeah definitely go for reorganizing things [I just wanted to get things running to start with]

yeah, will still wait for you to finish so there are no overlaps or conflicts

all good from my side
just be careful with @wsmoses's #385


Parallelize build steps

Upload of the prepared project with all node_modules is too slow, so there is no benefit here.


Dist folder - testing and proper building

Found that dist is not tested in integration and worse yet the templates folder is not being copied to NPM!

@GantMan What's the status of this?

I think I had trouble getting it to work on Windows, lots of trouble.

I'm gonna take a look at this once again, and I'll let you know.

Hey @GantMan,
Something went wrong with the build.
TravisCI finished with status errored, which means the build failed because something unrelated to the tests, like a problem a dependency or the build process itself.

Hey @GantMan,
Something went wrong with the build.
TravisCI finished with status errored, which means the build failed because something unrelated to the tests, like a problem a dependency or the build process itself.

Hey @GantMan,
Something went wrong with the build.
TravisCI finished with status errored, which means the build failed because something unrelated to the tests, like a problem a dependency or the build process itself.

Warnings

:warning:

Changes were made to package.json, but not to package-lock.json - Perhaps you need to run npm install?

  Generated by :no_entry_sign: dangerJS

Hey @GantMan,
Something went wrong with the build.
TravisCI finished with status errored, which means the build failed because something unrelated to the tests, like a problem a dependency or the build process itself.

Man that TravisBuddy bot is annoying.

Oh my God yes
On Sat, May 12, 2018 at 2:46 PM Jamon Holmgren<EMAIL_ADDRESS>wrote:

Man that TravisBuddy bot is annoying.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/infinitered/solidarity/pull/185#issuecomment-388575077,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACyh-K-D0s8CAgUaMZ6mVbq7Win4bZ4_ks5txy4bgaJpZM4Sg2hT
.

@GantMan Can we disable the Travis bot please?


testonly: delete unused code

Motivation

TEST

Changes

Test Plan

TODO

[ ] Explain motivation or link existing issue(s)
[ ] Test changes and document test plan
[ ] Update documentation as needed

DevOps Notes

[x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources)
[x] This PR does not affect public APIs
[x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.)
[x] This PR does not make changes to log messages (which monitoring infrastructure may rely on)

bors try

does it break something? i would rather open an issue so that this error is used by peersync verifier. smapp expects this error to show meaningful error to the user

does it break something? i would rather open an issue so that this error is used by peersync verifier. smapp expects this error to show meaningful error to the user

no. i was using this PR to test CI. feel free to open an issue


Error while running the script. havent experienced it before

HI
on running the script o receive this error which i havent received before even though ive used the script multiple times. the error is :
sudo python ./krackattack/krack_all_zero_tk.py wlan2 wlan0 eth0 "testnetwork -t -----------------
===[ KRACK Attacks against Linux/Android by Lucas Woody ]===

[10:34:27] Note: remember to disable Wi-Fi in your network manager so it doesn't interfere with this script
[10:34:27] Note: keep >1 meter between both interfaces. Else packet delivery is unreliable & target may disconnect
[10:34:29] Searching for target network on other channels
[10:34:36] Target network ----------------- detected on channel 6
[10:34:36] Will create rogue AP on channel 1
[10:34:36] Setting MAC address of wlan0 to -----------------
Traceback (most recent call last):
File "./krackattack/krack_all_zero_tk.py", line 593, in
attack.run(strict_echo_test=args.strict_echo_test)
File "./krackattack/krack_all_zero_tk.py", line 513, in run
self.mitmconfig.run()
File "/root/.local/lib/python2.7/site-packages/mitm_channel_based/mitm_code.py", line 420, in run
subprocess.Popen(["./enable_internet_forwarding.sh", self.nic_ether, self.nic_rogue_ap], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
File "/usr/lib/python2.7/subprocess.py", line 394, in init
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1047, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
[10:34:36] Closing hostapd and cleaning up ...
hoping you could help. ive been stuck for weeks for some reason and i just dont get it.

Really sorry to bother you but the issue has been resolved. thanks anyways.
however when i run the enable_internet_forwarding.sh script with the command
sudo ./enable_internet_forwarding.sh
it gives me an error:
Command line is not complete. Try option "help".
where am i going wrong?

No sorry. Haven't been able to solve it.
Get Outlook for Androidhttps://aka.ms/ghei36

From: Ali Akbar Mohammadi<EMAIL_ADDRESS>Sent: Saturday, February 2, 2019 5:25:32 AM
To: lucascouto/krackattack-all-zero-tk-key
Cc: ketasic; Mention
Subject: Re: [lucascouto/krackattack-all-zero-tk-key] Error while running the script. havent experienced it before (#3)
@ketasichttps://github.com/ketasic What did you do. I have the same problem here, just reading python files, could you solve your problem?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/lucascouto/krackattack-all-zero-tk-key/issues/3#issuecomment-459913236, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Ap2bJurz1m21Y-DGhwODaJ7Dky5uF128ks5vJNr8gaJpZM4YYiqR.

I solved the issue, The main point is that this project relies on scapy. In scapy the developer forgot to put the LICENSE file so in recent version it was not working properly. I used kali 2018.4 and after upgrading pip and setup tools to the latest it worked fine.
$pip install pip --upgrade
$sudo pip install setuptools --upgrade

Oh okay
that's nice work done.
Thanks
Get Outlook for Androidhttps://aka.ms/ghei36

From: Ali Akbar Mohammadi<EMAIL_ADDRESS>Sent: Wednesday, February 6, 2019 10:56:49 AM
To: lucascouto/krackattack-all-zero-tk-key
Cc: ketasic; Mention
Subject: Re: [lucascouto/krackattack-all-zero-tk-key] Error while running the script. havent experienced it before (#3)
I solved the issue, The main point is that this project relies on scapy. In scapy the developer forgot to put the LICENSE file so in recent version it was not working properly. I used kali 2018.4 and after upgrading pip and setup tools to the latest it worked fine.
$pip install pip --upgrade
$sudo pip install setuptools --upgrade
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/lucascouto/krackattack-all-zero-tk-key/issues/3#issuecomment-460909811, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Ap2bJuQcNS3I9HVuzZZofWzUPftboseSks5vKm6hgaJpZM4YYiqR.


GitHub integration

Implement GitHub intergration and allow posts to be converted as issues on GitHub platform.

See full discussion at  Feedbacky here.


Course Videos Feature

Description
LEARNER-1037

Feature is behind the feature flag: COURSE_VIDEOS_ENABLED
Only videos that have mobile friendly encodings will be available
Last accessed bar won’t be appearing in this section

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@a814744). Click here to learn what that means.
The diff coverage is 52.63%.

@@            Coverage Diff            @@
##             master     #961   +/-   ##
=========================================
  Coverage          ?   16.84%
  Complexity        ?     1022
=========================================
  Files             ?      475
  Lines             ?    20272
  Branches          ?     2348
=========================================
  Hits              ?     3415
  Misses            ?    16460
  Partials          ?      397

Impacted Files
Coverage Δ
Complexity Δ

...a/org/edx/mobile/view/CourseDashboardFragment.java
45.73% <0%> (ø)
7 <0> (?)

...bile/src/main/java/org/edx/mobile/util/Config.java
64% <100%> (ø)
28 <1> (?)

...edx/mobile/view/adapters/CourseOutlineAdapter.java
17.55% <33.33%> (ø)
14 <0> (?)

.../edx/mobile/view/CourseUnitNavigationActivity.java
53.78% <50%> (ø)
11 <0> (?)

...a/org/edx/mobile/model/course/CourseComponent.java
59.14% <60%> (ø)
50 <1> (?)

...ava/org/edx/mobile/view/CourseOutlineFragment.java
61.94% <69.23%> (ø)
17 <2> (?)

...ava/org/edx/mobile/view/CourseOutlineActivity.java
79.59% <70%> (ø)
9 <0> (?)

...bile/src/main/java/org/edx/mobile/view/Router.java
16.14% <71.42%> (ø)
8 <3> (?)

Continue to review full report at Codecov.

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

Downloading spiral doesn't hide

Press download icon to download some video.
Press spiral to go to 'Downloads' screen.
Cancel the download.
Come back to previous screen, you will still the downloading spiral.

Headers/Titles are not according to requirement.

This requirement has been cut-off.

Downloading spiral doesn't hide

This was an issue even before this PR which had a ticket for itself (LEARNER-585). But since this issue was closely related to this PR/feature, I've fixed it in 6a8e760.
Ready for another pass @farhan.


Update helm and helm-setup versions

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 77.52%. Comparing base (d3fe031) to head (72a197f).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #101   +/-   ##
=======================================
  Coverage   77.52%   77.52%
=======================================
  Files           4        4
  Lines         178      178
  Branches       23       22    -1
=======================================
  Hits          138      138
  Misses         27       27
  Partials       13       13

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


URL Cleanup

This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
Fixed URLs
Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

[ ] http://www.apache.org/licenses/ with 3 occurrences migrated to:
https://www.apache.org/licenses/ (https result 200).
[ ] http://www.apache.org/licenses/LICENSE-2.0 with 79 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0 (https result 200).
[ ] http://www.apache.org/licenses/LICENSE-2.0.txt with 2 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0.txt (https result 200).

http URLs have been fixed and this PR is now outdated.


weird messaging for enum when testing isPublic

Summary
the messaging here is weird, I'm not sure it's a bug, or really whether it must be fixed
Example
Expecting:
  <com.potreromed.phg.entity.RoleName>
to be a "public" class but was "final".

enum RoleName { // in my own file
    MONITOR
}

   @ParameterizedTest
    @ArgumentsSource( EntityClassProvider.class)
    void publicClass( Class<?> clazz ) {
        assertThat(clazz).isPublic();
    }

static class EntityClassProvider implements ArgumentsProvider {

        @Override
        public Stream<? extends Arguments> provideArguments( ExtensionContext context ) throws Exception {
            return Stream.of(
                Arguments.of( RoleName.class )
            );
        }
    }

We'll look into it, thanks for reporting this.

According to the example, RoleName is package-private (i.e., no modifiers).
Also, from JLS section 8.9:

An enum declaration is implicitly final unless it contains at least one enum constant that has a class body

Overall the message seems OK!
Maybe it could be improved either mentioning what is implicit or printing the values of all possible flags.

yeah, I just thought it was weird that I'm checking for public and get back it's final, my thought was ok, what does one have to do with the other. obviously I knew it was because they were modifiers. I also thought package private was confusing because it just comes out as "", but not too hard to figure out. printing them all might be better, I'll leave it up to you, as I don't really have a better suggestion.

Since a13f73bd73ad94e648bc74bbc72dbe2a0c300a18, AbstractClassAssert#isPackagePrivate is available and gives the following output in case of error:
Expecting:
  <java.lang.String>
to be a "package-private" class but was "public final".

For completeness, we could support a package-private output value in the ClassModifierShouldBe error message factory. As ClassModifierShouldBe relies on java.lang.reflect.Modifier#toString, we would need to enhance the outcome with an additional package-private string if relevant for the error.
@joel-costigliola thoughts?

the new error message adds package-private, it looks like:
[TEST]
Expecting:
  <org.assertj.core.error.ClassModifierShouldBe_create_Test.PackagePrivate>
to be a "public" class but was "package-private static final".


Fix link issues

Line	Status	Link
206	403 https://www.udemy.com/arkit-beginner-to-professional/?couponCode=CREATORS
228	301 https://answers.io/ redirects to
https://get.fabric.io
460	301 https://github.com/hyperoslo/Hue redirects to
https://github.com/zenangst/Hue
613	404 https://github.com/mentalfaculty/impeller
939	301 https://github.com/schibsted/layout redirects to
https://github.com/nicklockwood/layout
1134	301 https://github.com/luiyezheng/JLStickerTextView redirects to
https://github.com/Textcat/JLStickerTextView
1340	404 https://github.com/SvenTiigi/PerfectAPIClient
1516	301 https://github.com/RC7770/MFCard redirects to
https://github.com/MobileFirstInc/MFCard
1630	Error	https://www.packetzoom.com/
Connection refused - connect(2) for "www.packetzoom.com" port 443
1661	301 https://github.com/SlackKit/SlackKit redirects to
https://github.com/pvzig/SlackKit
1673	404 https://github.com/SvenTiigi/PerfectSlackAPIClient
1899	301 https://github.com/KrauseFx/trainer redirects to
https://github.com/xcpretty/trainer
2694	301 https://github.com/DenHeadless/DTTableViewManager redirects to
https://github.com/DenTelezhkin/DTTableViewManager
3216	301 https://www.shinobicontrols.com/blog/ios-10-day-by-day-index redirects to
https://www.shinobicontrols.com/blog/ios-10-day-by-day-index/
3259	301 http://principleformac.com redirects to
https://principleformac.com/

          2 Warnings

:warning:
Too many changes (when adding, please keep it to one project per Pull Request)

:warning:
Found 1 link issue, a project collaborator will take care of these, thanks :)

Link issue by awesome_bot

Line
Status
Link

206
403
https://www.udemy.com/arkit-beginner-to-professional/

  Generated by :no_entry_sign: Danger

@serhii-londar Thanks ❤

@vsouza Maybe it will be better to add https://www.udemy.com/arkit-beginner-to-professional/ to white list?

@serhii-londar Seems that Udemy check if you're logged. So they return a 403 status. So the best solution (for now) will add this link in our whitelist, as you said.


Fix the broken link in NGINX sdk document.

@limingu - It's odd that these samples are linking to another repository and not to specific SHA or tag. That seems like it would be more resilient to changes in that repository if it were looking at the samples which were valid at the time the libraries were released. This is especially true if you're changing the libraries themself and then having to change the samples to go with them.

@limingu - It's odd that these samples are linking to another repository and not to specific SHA or tag. That seems like it would be more resilient to changes in that repository if it were looking at the samples which were valid at the time the libraries were released. This is especially true if you're changing the libraries themself and then having to change the samples to go with them.

F5(external company) owns NGINX. They put the samples in their repository. They updated there and caused this error.

You're updating the Nginx overview to fix the links but the Overview page for the azure.mgmt.nginx still has the wrong link. The Preview version's overview page, since it was released this year, after you'd updated the samples repository, is correct. The additional file that needs to be updated is the Other Nginx Management doc link in docs-ref-services/latest/mgmt-nginx-readme.md.

Thank you @JimSuplizio! I updated the other Nginx Management doc link in docs-ref-services/latest/mgmt-nginx-readme.md.

@limingu I see that you updated the other Nginx Management doc link in docs-ref-services/latest/mgmt-nginx-readme.md, thank you. All of the checks have passed and I'll merge the pull request for you. The documentation updates should be on the live site Monday morning (it's updated every morning M-F now).

@limingu I see that you updated the other Nginx Management doc link in docs-ref-services/latest/mgmt-nginx-readme.md, thank you. All of the checks have passed and I'll merge the pull request for you. The documentation updates should be on the live site Monday morning (it's updated every morning M-F now).

Thank you!


Build issue on nightly - JULIA_HOME not defined

Looks like JULIA_HOME has been renamed  to JULIA_BINDIR.
$ cat /Users/tomkwong/.julia/packages/IJulia/tVAv/deps/build.log
Solving environment: ...working... done

# All requested packages already installed.

┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = top-level scope at build.jl:31
└ @ Core build.jl:31
INFO: Installing Jupyter via the Conda package.
┌ Warning: `convert(::Type{VersionNumber}, v::AbstractString)` is deprecated, use `VersionNumber(v)` instead.
│   caller = (::getfield(Main, Symbol("#prog_version#5")))(::String) at build.jl:17
└ @ Main build.jl:17
┌ Warning: `info()` is deprecated, use `@info` instead.
│   caller = top-level scope at build.jl:39
└ @ Core build.jl:39
INFO: Found Jupyter version 4.4.0: /Users/tomkwong/.julia/packages/Conda/BTNx/deps/usr/bin/jupyter
┌ Warning: `replace(s::AbstractString, pat, f)` is deprecated, use `replace(s, pat => f)` instead.
│   caller = installkernel(::String) at kspec.jl:36
└ @ Main kspec.jl:36
ERROR: LoadError: UndefVarError: JULIA_HOME not defined
Stacktrace:
 [1] uv_error at ./libuv.jl:68 [inlined]
 [2] unlink(::String) at ./file.jl:549
 [3] #rm#9(::Bool, ::Bool, ::Function, ::String) at ./file.jl:151
 [4] #rm at ./<missing>:0 [inlined]
 [5] #installkernel#6(::String, ::Function, ::String) at /Users/tomkwong/.julia/packages/IJulia/tVAv/deps/kspec.jl:117
 [6] installkernel(::String) at /Users/tomkwong/.julia/packages/IJulia/tVAv/deps/kspec.jl:36
 [7] top-level scope at /Users/tomkwong/.julia/packages/IJulia/tVAv/deps/build.jl:75
 [8] include at ./boot.jl:306 [inlined]
 [9] include_relative(::Module, ::String) at ./loading.jl:1072
 [10] include(::Module, ::String) at ./sysimg.jl:29
 [11] include(::String) at ./sysimg.jl:68
 [12] top-level scope
in expression starting at /Users/tomkwong/.julia/packages/IJulia/tVAv/deps/build.jl:104

My config:
julia> versioninfo()
Julia Version 0.7.0-DEV.4531
Commit 06eb54312e (2018-03-10 13:10 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin14.5.0)
  CPU: Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, haswell)
Environment:

Already addressed in #623.

Should this issue be closed?

Just a heads up: I use the new julia-beta2, update packages and then when build IJulia I get this old error again?:

(v0.7) pkg> build IJulia
  Updating registry at `~/.julia/registries/General`
  Updating git-repo `https://github.com/JuliaRegistries/General.git`
  Building Conda ──→ `~/.julia/packages/Conda/S0nV/deps/build.log`
  Building MbedTLS → `~/.julia/packages/MbedTLS/u15M/deps/build.log`
  Building ZMQ ────→ `~/.julia/packages/ZMQ/Ih0B/deps/build.log`
  Building IJulia ─→ `~/.julia/packages/IJulia/oaZM/deps/build.log`
┌ Error: Error building `IJulia`:
│ ┌ Warning: Deprecated syntax `try without catch or finally` at /Users/jonnorberg/.julia/packages/BinDeps/2wxq/src/dependencies.jl:122.
│ └ @ ~/.julia/packages/BinDeps/2wxq/src/dependencies.jl:122
│ Solving environment: ...working... done
│
│ # All requested packages already installed.
│
│ ┌ Warning: Deprecated syntax `try without catch or finally` at /Users/jonnorberg/.julia/packages/IJulia/oaZM/deps/build.jl:82.
│ └ @ ~/.julia/packages/IJulia/oaZM/deps/build.jl:82
│ ┌ Warning: `info()` is deprecated, use `@info` instead.
│ │   caller = top-level scope at build.jl:44
│ └ @ Core ~/.julia/packages/IJulia/oaZM/deps/build.jl:44
│ INFO: Installing Jupyter via the Conda package.
│ ┌ Warning: `convert(::Type{VersionNumber}, v::AbstractString)` is deprecated, use `VersionNumber(v)` instead.
│ │   caller = (::getfield(Main, Symbol("#prog_version#3")))(::String) at build.jl:22
│ └ @ Main ~/.julia/packages/IJulia/oaZM/deps/build.jl:22
│ ┌ Warning: `info()` is deprecated, use `@info` instead.
│ │   caller = top-level scope at build.jl:52
│ └ @ Core ~/.julia/packages/IJulia/oaZM/deps/build.jl:52
│ INFO: Found Jupyter version 4.4.0: /Users/jonnorberg/.julia/packages/Conda/S0nV/deps/usr/bin/jupyter
│ ┌ Warning: `replace(s::AbstractString, pat, f)` is deprecated, use `replace(s, pat => f)` instead.
│ │   caller = installkernel(::String) at kspec.jl:36
│ └ @ Main ~/.julia/packages/IJulia/oaZM/deps/kspec.jl:36
│ ERROR: LoadError: UndefVarError: JULIA_HOME not defined
│ Stacktrace:
│  [1] uv_error at ./libuv.jl:80 [inlined]
│  [2] unlink(::String) at ./file.jl:741
│  [3] #rm#9(::Bool, ::Bool, ::Function, ::String) at ./file.jl:253
│  [4] #rm at /Users/jonnorberg/.julia/packages/IJulia/oaZM/deps/kspec.jl:0 [inlined]
│  [5] #installkernel#4(::String, ::Function, ::String) at /Users/jonnorberg/.julia/packages/IJulia/oaZM/deps/kspec.jl:117
│  [6] installkernel(::String) at /Users/jonnorberg/.julia/packages/IJulia/oaZM/deps/kspec.jl:36
│  [7] top-level scope at /Users/jonnorberg/.julia/packages/IJulia/oaZM/deps/build.jl:88
│  [8] include at ./boot.jl:317 [inlined]
│  [9] include_relative(::Module, ::String) at ./loading.jl:1034
│  [10] include(::Module, ::String) at ./sysimg.jl:29
│  [11] include(::String) at ./client.jl:393
│  [12] top-level scope at none:0
│ in expression starting at /Users/jonnorberg/.julia/packages/IJulia/oaZM/deps/build.jl:9
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v0.7/Pkg/src/Operations.jl:1007

Fixed on master.


[AutoPR apimanagement/resource-manager] Remove restriction on groupId

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/6373

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/5754


WIP Add docs about tile size variants

This should only get merged once the buffered terrain service is in production, and we are ready to go public with it.

@nvkelso I was pretty terse with what I added. Could you take a quick look and add in some more details as you see fit?

This change won't show up on mapzen.com/documentation until we do a release of this repo:

https://github.com/mapzen/documentation/blob/master/Makefile#L6

So we can merge this as-is now.

@rmarianski can you also add documentation in the vector-datasource repo about the optional 256 and 512 sizes?

@rmarianski can you also add documentation in the vector-datasource repo about the optional 256 and 512 sizes?

Just double checking, you mean just for the tile sizes, and nothing to do with terrain right?


feat: add payments table to user manager

https://github.com/lnbits/lnbits/assets/1743657/b86ed746-e235-47ff-8b8b-bc92c7a985ba
refactor payments table and payment chart into components and add them to usermanager

nitpick: when the payments dialog is open the user has two dialogs one on top of the other, that is not great UX.

Wow


Beta pages API doesn't work if you have pages with custom content types

Category

[ ] Question
[ ] Documentation issue
[x] Bug

Expected or Desired Behavior
The API call to succeed and return pages.
Observed Behavior
You get the following error.
{
    "error": {
        "code": "generalException",
        "message": "General exception while processing",
        "innerError": {
            "request-id": "6041c48f-732f-4a0b-9849-0294bd9e637b",
            "date": "2019-11-25T17:00:43"
        }
    }
}

Tenant mag013qa2tolead
RID's
6041c48f-732f-4a0b-9849-0294bd9e637b (graph explorer)
3df05a8d-84e5-49f8-8809-1feff5127225 (dotnet sdk)
Steps to Reproduce

create a team or communication site
add custom content types to the site pages library
add pages using that new content type
GET https://graph.microsoft.com/beta/<siteid>/pages

Thanks for your help!

Thanks for the feedback.  We'll follow up with this feedback internally to our partner team working on this API.

As part of a repository clean up effort we are closing older issues. If this issue remains, please: open a new issue, reference this issue, and provide any additional details that may help in resolution. Thank you for your understanding as we work to improve our responsiveness.


Running Demos

Hi @juliagsy
I wanted to check if the optimize_policy can reproduce the results indicated by the output gif in the README.
Thanks

Hello! Apologies for the late reply! This slipped under the radar somehow!
They should be reproducible since the function hasn't changed, except for issues related to the tests as they're being fixed at the moment! But in general they should be reproducible!
Another point is that as we are currently incorporating the ivy compiler API in this repo as well, an API key may be required to use certain functions, but more information on this will be made available a bit later when this is ready in the very near future!
Thanks!
Julia

I wasn't able to set up the environment and hence attempted to reproduce the environment on gym, along with a similar training code using pytorch. The model does seem to get better but is nowhere close to the results shown on the README. (Please find attached for your reference)

How many iterations is this?

10,000 iterations. I have used all the default parameters as on the repository.
Separate question that I wanted to clarify, you are using the same initial state during training? https://github.com/unifyai/gym/blob/master/ivy_gym_demos/optimization/optimize_policy.py#L26

yep, cuz we need to run an episode with n steps (in this case n=100) in each iteration (a run through in an iteration for collecting data of the movement of the cartpole), thus, when the iteration start, this is also the start of the episode, therefore we are using the initial state, the state is then updated as the run progresses. after stepping through n=100 in an iteration of training, the loss is obtained and stepping / optimisation is applied to the model. we then progress to the next iteration, and the procedure repeats

Basically the score increases to 40-43 very quickly in < 1000 steps, then saturates and does not increase anymore.
Any help would be greatly appreciated.

Hey! Apologies for the delayed response! I took some time to investigate the environments! I actually do need to correct my last comment (which I also confused myself about), so I actually overlooked that the initial state has to be randomly sampled during the start of each episode, so it is of the same range but distributed uniformly, therefore isn't exactly identical! I've also pushed a small fix, hope it's working as expected now (I'm unable to visualise it atm on my current setup unfortunately), let me know if any further help is needed! Apologies again about the confusion!


fix(dependencies): fix dependencies

close #10

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


✨[feature Request]: Dark Mode/ Light Mode Toggle

Description

Added the Dark Mode/ Light Mode toggle for every pages and with updated styles.
Closes #65
Type of PR

[X] (Added New Feature)

Screenshots / videos (if applicable)

-###  Home

- About Us

- Collections

- Services

- Contact Us

- Cart

- Login

- Signup

Checklist

[X] I have gone through the contributing guide
[X] I have updated my branch and synced it with project main branch before making this PR
[X] I have performed a self-review of my code
[X] I have tested the changes thoroughly before submitting this pull request.
[X] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[X] I have commented my code, particularly in hard-to-understand areas.

Additional context:

Added the toggle for every page .
Updated the styles of the paragraph, h1, h2 etc. accordingly.

@Poushmita in below picture see , use right side toggle button , such that on input it should change the modes.

@Anjaliavv51  I think someone added the right side toggle button. I added the left side toggle button.
okay, no problem I am adding all feature for the right one and removing the left one.
Can you please confirm me one thing that, is the mode id changing by the left side toggle button?

@Anjaliavv51 If it is working then can you please merge this issue and I will create another issue regarding the problem( changing mode by the right side toggle button) you mentioned above.
If you have no problem regarding this request, then can you please merge this and let me create another issue for the right side toggle button?

@Anjaliavv51 please give reply to me.

@Anjaliavv51 please give reply to me.

@Anjaliavv51 please give reply to me.

@Anjaliav51
Please confirm:

Does the left toggle button successfully change the mode?
I set the dark mode background to dark purple on login/sign-up pages and black for the rest. Would you like any changes to these colours?
The right side toggle button is not in every page. Should I add the right toggle button to all pages?

If the left toggle button is fine, please merge this PR.  I will create another issue regarding the problem( changing mode by the right side toggle button) you mentioned above..

(Note: - I am requesting this because the right side toggle button was not in the website when, I forked it .
So, I am not able to analyse the problem with the right one. if I pull all changes in my local code then it will overlap with my changes.
So, if you please consider to merge the PR first then I will change rest of the needs and will make another PR for it.
And, please tell me if any conflicts arise.)

@Anjaliavv51   If you like this, I can update my PR with these stylings.
Additional Style
Screenshots

@Anjaliavv51 If you like this, I can update my PR with these stylings.
Additional Style
Screenshots

yes these changes are great

@Anjaliavv51  Check the changes and merge my PR. Please let me know, if anything is needed.
Final Change
Screenshots

@Anjaliavv51 Merge this PR.

@Anjaliavv51 Merge this PR.

@Poushmita their are still so bugs and misalignment check in ur deployment in the below link and rectify
https://deploy-preview-625--rococo-mooncake-0d89f7.netlify.app/

@Anjaliavv51 Please check and merge this PR.
For now please, merge this PR with the toggle button added in the rest of the pages (except the two pages: Login & Sign up).
For the two pages ( login and sign up), Because of it's different structure It is having problem in adding this toggle. So, I am working on it and will send a PR for this.

@Anjaliavv51 check & Merge PR.


Modular etherspot wallet

Description

Removal of ERC7579 and ERC6900 submodules and import of ERC7579 contracts required.

Changed naming from EtherspotWallet7579 to ModularEtherspotWallet.

Rework of wallet, factory and base wallet to comply with updated standard.

Updating of test suite with utilisation of standard tests.

Addition of testing utils to make test setup easier.

Update of deployment scripting.

Updating gas estimation documents.

Updated hardhat.config to abstract solidity compliers, chain configs and Etherscan configs into their own separate config files /config.

Added setup script command to make setup easier and updated README.md.

Motivation and Context

To comply with updated ERC7579 standard for Modular Smart Accounts.

How Has This Been Tested?

Test suite (testing code).
Local deployment (testing deploy script).

Screenshots (if appropriate):
Test Suite:

Successful Local Deployment:

Gas Estimations

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to change)

@lbw33 Pls resolve merge conflicts and issues reported by openzeppelin inspector.

Deleting comment from openzeppelin-code as it contains false positives.


xplat-intl: default to non intl compare for localeCompare

Fixes #4623
Also enabling a test case that only tests the interface.

@obastemur this doesn't seem to be working on xplat in 1.9 and master - I think it has broken CI (though it works on 1.8)

The reason is the test baseline on release/1.9 doesn't match with spec. While spec says the result should be neg, zero, or positive, the baseline checks for a particular integer. Sending the PR


[1.0.0]: rxJava2, Kotlin

Better late than never :wink:

#9 RxJava2 implementation.
Both libraries rewritten to Kotlin.

com.github.zellius:rxlocationmanager.kotlin will no longer be supported. Use com.github.zellius:rxlocationmanager or com.github.zellius:rxlocationmanager-rxjava2 instead

Coverage increased (+18.1%) to 87.586% when pulling 7e3947787d58a580896d54f00c5bfd9632a1b746 on feature/rxjava2 into 14f7a6b38dcf9595b6861003392539c056567441 on master.

Coverage increased (+18.1%) to 87.586% when pulling a274f3a27379a681d7f7c3cbe76d59c269bbd36b on feature/rxjava2 into 14f7a6b38dcf9595b6861003392539c056567441 on master.

Coverage increased (+18.1%) to 87.586% when pulling b2274bb367b46841985b53f17aaab565aabdd912 on feature/rxjava2 into 14f7a6b38dcf9595b6861003392539c056567441 on master.


handle invalid resource keys in templates

Signed-off-by: ckandag<EMAIL_ADDRESS>fyi @gparvin
This is to fix issue in https://github.com/open-cluster-management/backlog/issues/15882
Not throwing errors for invalid/nonexistent  keys will cause the value to be set incorrectly to  empty strings and user wouldn't be alerted to it if thats unexpected.
We have the lookup function if user wants the flexibility to check for empty value and do something else.

@ckandag I'm not sure how to proceed here because you are changing a documented behavior:

If the data key does not exist on the target cluster, the value becomes an empty string.

https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.3/html/governance/governance#fromsecret-func

@mprahl ,  I  remember that you made some last minute  update to the doc for this last release and as a result I  understand that this means a change in  behavior since last release.
While theoretically there is a chance this might effect an existing policy in previous release.   But realistic,    Its only been a release and if there are folks that use the function they "most likely" have the correct/valid key in there already and this wouldn't affect them.  Someone using it to set empty values doesnt sound plausible.
I made the fix because as a user I would rather be alerted to it than have it set to empty values and not not realizing  it until later on.
rather than  continuing with the incorrect behavior because there might theoretically be someone using it and expecting empty values.
This is what I think is better,    but  I do not intend to argue it out to death.   I will  let  you and @gparvin take a call and probably re-assign the defect to you  to work with QE if the current doc'ed behavior is what y'all prefer..

I thought there was some way to switch between different behaviors fairly easily using some flag that could be passed to the templates engine in the functions.  I don't remember what the flag was and I can't find it in the doc.  Do you all remember this?  Would it allow the behavior selection fairly easily?

I thought there was some way to switch between different behaviors fairly easily using some flag that could be passed to the templates engine in the functions. I don't remember what the flag was and I can't find it in the doc. Do you all remember this? Would it allow the behavior selection fairly easily?

@gparvin is this what you're referring to?
https://pkg.go.dev/text/template#Template.Option
I believe this only affects if the template accesses a key on a map that doesn't exist but doesn't extend to custom functions like this one.

@ckandag @mprahl Do the custom functions end up calling the lookup function or is there a full custom implementation for each custom function?  Wondering if there's a chance the flags could be integrated with the custom functions easily.

@ckandag @mprahl Do the custom functions end up calling the lookup function or is there a full custom implementation for each custom function? Wondering if there's a chance the flags could be integrated with the custom functions easily.

They don't reuse the lookup function. This is mainly so that a dynamic API client is not necessary in those functions.

THanks for the great discussion and work here.  For now I've returned the issue that prompted this PR.  Let's wait on the change for now and see if we get more feedback related to our default behavior for the custom functions.
/hold


Add best practices for HNC health

/assign @yiqigao217

/cc @rjbez17
Ryan, we'll probably approve this while you're OOO but please feel free to take a look and send me any comments, and I can update the docs.


Add sun effects

Add sun effects when the players look to the sun

You mean a lens flare?
That’s a duplicate of #3.


Windows 10 22H2 Endpoint information is scheduled to be released.

The customer wants to know when Windows 10 22H2 is scheduled to be released for this article.
https://learn.microsoft.com/ja-jp/windows/privacy/manage-windows-21h2-endpoints
Best Regards,
Tsubasa Nagatani
[Enter feedback here]

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

ID: 7c231307-5106-4d90-5c2b-d614ccc2dadd
Version Independent ID: e5a8a01b-e2d4-fc7c-b8a5-6d40c3d40f24
Content: Connection endpoints for Windows 11 Enterprise - Windows Privacy
Content Source: windows/privacy/manage-windows-11-endpoints.md
Product: windows-client
Technology: itpro-privacy
GitHub Login: @DHB-MSFT
Microsoft Alias: danbrown

Hi any update for my pleasure.

Closing because discussion is happening internally with submitter and appropriate PM.


nicstobridge: Handle the case for /32 IP address.

One could set the IP address of a Linux interface as
<IP_ADDRESS>/32 and then give it a default gateway of <IP_ADDRESS>.
This can be done for e.g. by running the following commands.

1. ifconfig eth0 <IP_ADDRESS> netmask <IP_ADDRESS> broadcast <IP_ADDRESS>
2. route add <IP_ADDRESS> dev eth0
3. route add default gw <IP_ADDRESS>

The above configuration is what google cloud uses for its VMs.

When the above configuration is used, the current code can fail
because we may attenmpt to do 3. before 2. With this commit,
we do 3. after everything else has been done.

Fixes: #224
Signed-off-by: Gurucharan Shetty<EMAIL_ADDRESS>

@shettyg good catch.
Now mostly for my education here:
In the solution, is it assumed that there is a route to the gateway available?
e.g. what if this route was not available on the machine:
route add <IP_ADDRESS> dev eth0
simply because there is another default gateway through another interface.
Also, consequently the default route through this interface will not exist also. So, will our interface in the OVS bridge not have any gateway route?

It is possible that we still are some corner case. But for your specific query.

Now mostly for my education here:
In the solution, is it assumed that there is a route to the gateway available?

The code gets the routes for only the interface for which we want to create a bridge. In this case, 3 looks like this in the routing table (even though we never specified 'eth0' in the command')

<IP_ADDRESS> <IP_ADDRESS>  <IP_ADDRESS> eth0

So we pick up that route too.
If that route did not exist, and there was another default gateway, we simply would not have picked up that route.

Also, consequently the default route through this interface will not exist also. So, will our interface in the OVS bridge not have any gateway route?

I think, there can only be one default gateway - i.e <IP_ADDRESS> route. If we have 2 interfaces, I would guess that the second interface would have a specific route which tells what is the next hop and will restore it.

If that route did not exist, and there was another default gateway, we simply would not have picked up that route.

Yes. That is clear.

I think, there can only be one default gateway - i.e <IP_ADDRESS> route. If we have 2 interfaces, I would guess that the second interface would have a specific route which tells what is the next hop and will restore it.

But what will be the next hop route in OVS then? Or will we have none?

But what will be the next hop route in OVS then? Or will we have none?

The route for OVS bridge should be whatever the routes that existed for the physical interface. For OVN gateway, if you did not pass -gateway-nexthop as an option, it will chose the default gateway (which may work or may not work)

/lgtm


[Bug][gitextractor] subtask Clone Git Repo ended unexpectedly

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
My pipeline results in errors. One of them is related to clone GitHub repositories. My pipeline includes 60+ repositories. At the beginning of the pipeline, tasks finish successfully, but after 15 or 20th tasks, all other tasks finish with git clone errors.
time="2024-08-26 13:18:26" level=info msg=" [pipeline service] [pipeline #119] [task #7340] start executing task: 7340"
time="2024-08-26 13:18:26" level=info msg=" [pipeline service] [pipeline #119] [task #7340] start plugin"
time="2024-08-26 13:18:26" level=info msg=" [pipeline service] [pipeline #119] [task #7340] [gitextractor.PrepareTaskData] UseGoGit: false"
time="2024-08-26 13:18:26" level=info msg=" [pipeline service] [pipeline #119] [task #7340] [gitextractor.PrepareTaskData] SkipCommitStat: false"
time="2024-08-26 13:18:26" level=info msg=" [pipeline service] [pipeline #119] [task #7340] [gitextractor.PrepareTaskData] SkipCommitFiles: true"
time="2024-08-26 13:18:26" level=info msg=" [pipeline service] [pipeline #119] [task #7340] total step: 4"
time="2024-08-26 13:18:26" level=info msg=" [pipeline service] [pipeline #119] [task #7340] executing subtask Clone Git Repo"
time="2024-08-26 13:18:27" level=error msg=" [pipeline service] [pipeline #119] [task #7340] subtask Clone Git Repo ended unexpectedly\n\tWraps: (2) git cmd [git clone<EMAIL_ADDRESS>/tmp/gitextractor3060880397 --depth=1 --bare] in  failed: Cloning into bare repository '/tmp/gitextractor3060880397'...\n\t  | remote: Invalid username or password.\n\t  | fatal: Authentication failed for 'https://github.com/Pl/adapter--.git/'\n\tError types: (1) *hintdetail.withDetail (2) *errors.errorString"

What do you expect to happen
The pipeline uses one GitHub connection. Why are some of repositories cloning successfully and all other repositories not cloning with "Invalid username or password" error?
How to reproduce
Rerun pipeline
Anything else
No response
Version
v1.0.1-beta7
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Have you tried running it again? If so, did you encounter the same outcome? Specifically, were some tasks successful initially while other failed with "Authentication error"?
Did those repositories belong to the same connection?
How many token did you set for the connection (or connection)?

we are also running into this, when all pipelines ran at the same time it happened but when i gave them different schedules it worked fine, using a private github org with github app auth

Have you tried running it again? If so, did you encounter the same outcome? Specifically, were some tasks successful initially while other failed with "Authentication error"?
Did those repositories belong to the same connection?
How many token did you set for the connection (or connection)?

Yes, I tried repeatedly. Usually, it begins in the same stage. At first, it is working normally
Yes. I have one GitHub connection
I use one GitHub app token.

UPDATE: I changed the rate limit manually, for example, I set 10,000 requests per hour, and the pipeline begins with the error after stage 38. Before, it began after stages 20, 21, or 22. I think that it exceeds rate limits, therefore some stages end with errors. But, I don't see any errors about it at logs

It’s quite likely you're encountering this error due to the rate limiting. We introduced it to give users the ability to reduce request frequency and avoid 429 errors. 😅
I recommend trying the approach shared by @KyriosGN0, as unfortunately, there’s not much else we can do to prevent this kind of issue(likely the data source or some point in the network closes the connection).

@KyriosGN0
auto retry when cloning: maybe, but it is unlikely to help when there are too many clones.
rerun: there is a button on the right of the task already?

It’s quite likely you're encountering this error due to the rate limiting. We introduced it to give users the ability to reduce request frequency and avoid 429 errors. 😅
I recommend trying the approach shared by @KyriosGN0, as unfortunately, there’s not much else we can do to prevent this kind of issue(likely the data source or some point in the network closes the connection).

If the application returns an error about the rate limit, it would be clearer for users. Also, We should be able to change the duration of the pipeline. For example, if the pipeline works slowly, it won't exceed the rate limit.

To clarify, there are 2 things here:

Ratelimit affect API request, setting it to a high value might cause the data source plugin, e.g. Github to fail, normally it returns 429 errors,  we can provide a friendly message for them, I think it is reasonable.
Gitextractor doesn't issue any API request, so it won't be affected by ratelimit, and there will be no clear indicator that it was ratelmited. In fact, it was my guess that the clone failed due to high concurrent cloning, I don't know it was ratelimited or some routers in the network just drop the connection.

@klesh is trace a supported log level? i really want to see what went wrong in gitextractor

@klesh this seems to have gotten worse in the new v1.0.1-beta9@e061ef2 version, from using debug logs it seems like for some reason the gitextractor plugin is not refreshing the token it uses for cloning the repo (i for example use github app)

I updated to the latest version v1.0.1-beta9. But I have the same issue. Only gitextractor failed, api sync client is working normally with GitHub api.
time="2024-09-08 23:21:14" level=debug msg=" [pipeline service] [pipeline #140] [task #11941] [Clone Git Repo] [gitcli] err: exit status 128, output: Cloning into bare repository '/tmp/gitextractor1157925462'...\nremote: Invalid username or password.\nfatal: Authentication failed for 'https://github.com/PB-/adapter-.git/'\n"
time="2024-09-08 23:21:14" level=info msg=" [pipeline service] [pipeline #140] [task #11941] subtask Clone Git Repo finished in 655 ms"
time="2024-09-08 23:21:14" level=error msg=" [pipeline service] [pipeline #140] [task #11941] subtask Clone Git Repo ended unexpectedly\n\tWraps: (2) git cmd [git clone<EMAIL_ADDRESS>/tmp/gitextractor1157925462 --depth=1 --bare] in  failed: Cloning into bare repository '/tmp/gitextractor1157925462'...\n\t  | remote: Invalid username or password.\n\t  | fatal: Authentication failed for 'https://github.com/PB-/adapter-.git/'\n\tError types: (1) *hintdetail.withDetail (2) *errors.errorString"
t

It seems to be working fine on my end.
Try removing and readding the repo.

It seems to be working fine on my end. Try removing and readding the repo.

no, it is not a solution. Because it can be error different repositories

@KyriosGN0 To clarify, did you mean the token assigned to the gitextractor plugin is incorrect? while the API requests are using the right one?

@klesh yes

@KyriosGN0 Do you know how to reproduce the problem? It is working as expected on my local machine 😂

@klesh, i can reproduce it my devlake but it will take me a couple of hours
generally i use a github app so maybe that's the difference there

@KyriosGN0 Oh, github app token would expire in 1 hour, it was a known problem. Try using PAT as a workaround for the moment. See #7655
@realhuseyn  R u using Github App authentication as well?

@klesh yeah, I am using Github App. I tried PAT one time. It results with the same error. The Github App is more useable than PAT because it has a 15000 rate limit per hour.

@realhuseyn Same error as the following?
[Clone Git Repo] [gitcli] err: exit status 128, output: Cloning into bare repository '/tmp/gitextractor1157925462'...\nremote: Invalid username or password.\nfatal: Authentication failed for '[https://github.com/PB-***/adapter-***.git/'\n](https://github.com/PB-***/adapter-***.git/'%5Cn)"

Try to take the following steps:

Setting up PAT on the GitHub connection page, make sure the Test connection works properly
Go to your project, and click the "Collect Data" button, it should pull through.

@klesh yes, the same error. I tried again and again. But it doesn't work. It starts to write errors after different steps. For example, after the 20th step, after the 23rd, after the 29, etc. But, when I use PAT, gitextractor finishes successfully, and the middle of the step finishes with errors. But when I use GitHub App, gitextractor finishes with errors, and the middle of the step finishes successfully
PAT

GIthub App

What was the error message when using PAT?

Response: {"message":"API rate limit exceeded for user ID 31611637. If you reach out to GitHub Support for help, please include the request ID 720F:309301:21A54C4:221F619:66E26312 and timestamp 2024-09-12 03:42:10 UTC.","documentation_url":"https://docs.github.com/rest/overview/rate-limits-for-the-rest-api","status":"403"} (403) Error types: (1) *hintdetail.withDetail (2) *errors.errorString

hey @klesh is there any update on this? i see that the github app issue is resolved but i still get the error in gitextractor plugin

@KyriosGN0 No, why do you think the GitHub app issue is resolved? I don't think it did though 😂
The token produced by GitHub App Auth would expire in 1 hour.

@klesh i saw that #7655 was closed, and i know it not , since im still experiencing it

@KyriosGN0 You are correct. The GitHub App Auth is still problematic and no one is working on it AFAIK.

@klesh can you point me to where we init the gitextractor plugin ? i will try to open a PR to fix this

@KyriosGN0 The pipeline task generated by the github plugin is located at https://github.com/apache/incubator-devlake/blob/main/backend/plugins/github/api/blueprint_v200.go#L130

@klesh i think i have clue, this pipeline is rather long (6-7 hours) and the first 2 stages take around an hour, by which point the github app installation token expires, i assume that because the pipeline generates all of its steps in advance it will be rather hard to update the token in "runtime" (i.e when the pipeline is running) correct?
@realhuseyn is this similar in your case ?

@KyriosGN0 You are 100% correct. From what I can tell, we need a new mechanism to support such a scene which is not an easy task. 😂

Hi everyone! What do you think about this temporary solution for this issue? https://github.com/apache/incubator-devlake/pull/8136
I'm open to suggestions and how to evolve this solution.


Upgrade 2.0.1 branch

Description of changes:
** Increased the retry limit to 30 times to handle VPC resource creations that take longer.
** Ugpraded to RPDK 2.0.1
** Fixe hanlders to respond original model values.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Merging Pull request for 2.0.1 upgrade


Use SHAs for all GHA versions

Per GitHub's security guidelines, GHAs should be pinned using full
length commit SHAs instead of tags.
The SHAs are from the latest commit of each GHA, which also updates the
GHAs from their tagged versions.
Even "trusted" GHAs from GitHub developers are pinned because it's
possible their repo right could be compromised and a malicious GHA
published. These core repos are not frequently substantially updated.
Submariner-internal GHAs are left pinned at devel because we want
automatic updates from Shipyard's shared tooling.
Signed-off-by: Daniel Farrell<EMAIL_ADDRESS>

It seems like the update of yamllint has highlighted new issues.
https://github.com/submariner-io/submariner-operator/pull/1526/checks?check_run_id=3256447545

I think the switch to SHAs shouldn’t bump the versions, i.e. the SHA used here should be the one matching the tag. Bumping should be done separately.

It seems like the update of yamllint has highlighted new issues.
https://github.com/submariner-io/submariner-operator/pull/1526/checks?check_run_id=3256447545

That one’s weird, yamllint isn’t upgraded in this PR, is it?

I think the switch to SHAs shouldn’t bump the versions, i.e. the SHA used here should be the one matching the tag. Bumping should be done separately.

Makes sense, I've updated the PR to the SHAs resolved by the current versions.

It seems like the update of yamllint has highlighted new issues.
https://github.com/submariner-io/submariner-operator/pull/1526/checks?check_run_id=3256447545

That one’s weird, yamllint isn’t upgraded in this PR, is it?

Yeah, good point. I can replicate this locally on devel.

It seems like the update of yamllint has highlighted new issues.
https://github.com/submariner-io/submariner-operator/pull/1526/checks?check_run_id=3256447545

That one’s weird, yamllint isn’t upgraded in this PR, is it?

Yeah, good point. I can replicate this locally on devel.

This is really weird, see https://github.com/submariner-io/submariner-operator/pull/1527#issuecomment-894408408.

I think the switch to SHAs shouldn’t bump the versions, i.e. the SHA used here should be the one matching the tag. Bumping should be done separately.

Makes sense, I've updated the PR to the SHAs resolved by the current versions. I'll send different commits/PRs to update the versions.

I updated actions/upload-artifact here: https://github.com/submariner-io/submariner-operator/pull/1529
It's actually the only GHA dependency here that needs an update I think. The others are either the latest commit (for not very active projects) or recent/latest release (for active projects, where we can expect regular releases).


Question : etcd HA ? Kubernetes HA ?

Hello,
I did not find any information if typhoon deploy clusters are high availability?
Maxence

https://github.com/poseidon/typhoon#features-
BootKube self-hosts etcd and the control-plane components in kubernetes.
When you do this in a multi-master configuration, everything is HA.
See the self-hosted design document: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/cluster-lifecycle/self-hosted-kubernetes.md

Thanks


Add "mix statues with bosses" flag

This functions similarly to how we are currently excluding Phunbaba 3, in that he is naturally in the boss pool, but is removed under his respective flag. Using the same logic we can keep the statue fights in place

I've been slowly chipping away at this.
Changing statues to be treated similarly to dragons. This includes:

Refactor -bmbd (mix bosses / dragons) to another --boss-dragon-locations which has options "original", "mix", and "shuffle"

original will be vanilla location
mix will add the boss and its location to the common boss pool ("Mix dragons with bosses"
shuffle will shuffle them with a restriction of "adjacency". i.e. dragons can shuffle with other dragons, statues can be shuffled with other statues

Add --boss-statue-location similar to the previous flag
Add the three statue locations as "Check" conditions

This has the side-effect of increasing the # of checks done, but maybe we could not include these as checks.
We also have to add a mod similar to the atma_mod in kefka_tower.py I had issue have finding specific event address to replace.

Add --scale-statues option

I hit a snag last time i tried to implement this. There are a lot of side effects and errors that occur when you begin modifying data/bosses.py (boss conditions) which is the objects currently used to


Allow class of expanded paper-item to be customized

Makes behaviour consistent between collapsed and expanded/header components

Makes sense. Thanks.

Released in 0.0.2


⚠ Samsung has degraded performance

In 599853e, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2106 ms

Resolved: Samsung performance has improved in bcb5872.


Merge pull request #3 from Alua-Kinzhebayeva/master

Update from master

Sorry. I was trying to update my copy. Not merge into yours


Pitch: toggle back to 0 on touch lift

Please consider making the pitch a "pitch wheel" which classically snaps back to zero (with some speed and bounce?) after letting go of the pitch wheel.
Finding the right speed and bounce (bounce needed?) could be difficult to get right. May be based on the distance the wheel is pulled away from zero? Interesting programming challenge tbh.
FYI if you download a midi soundfont player on the phone your app still works. Just wanted to point that out, nice work. :-)

I considered it, it might be extremely difficult

I considered it, it might be extremely difficult