feat(helm): custom annotations for sidecarInjectorWebhook

About
This commit adds support for custom annotations in the sidecarInjectorWebhook manifest. This is consistent with the existing functionality for applying annotations to resources like Pods, Service Accounts, and others.
Background
I’m leveraging Argo sync waves to manage Istio. It is crucial to wait for istiod to be ready before applying the webhook to inject Istio sidecars. Argo requires custom annotations on Kubernetes resources to control the order in which manifests are applied. This PR introduces the ability to apply custom annotations to the sidecarInjectorWebhook, which can be beneficial in various other scenarios as well.
To help us figure out who should review this PR, please put an X in all the areas that this PR affects.

[ ] Ambient
[ ] Configuration Infrastructure
[ ] Docs
[ ] Dual Stack
[x] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
[ ] Upgrade
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Control Plane Revisions

Please check any characteristics that apply to this pull request.

[x] Does not have any user-facing changes. This may include CLI changes, API changes, behavior changes, performance improvements, etc.

Hi @ashithwilson. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

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

/ok-to-test

@ashithwilson: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test gencheck

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test gencheck

release-notes_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test gencheck

release-notes_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test release-notes

integ-helm_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test integ-helm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test gencheck

release-notes_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test release-notes

integ-helm_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test integ-helm

integ-security-multicluster_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test integ-security-multicluster

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

/retest

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-security-multicluster_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test integ-security-multicluster

release-notes_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test release-notes

gencheck_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test gencheck

integ-helm_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test integ-helm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

/retest

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test gencheck

integ-helm_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test integ-helm

release-notes_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-helm_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test integ-helm

release-notes_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test release-notes

gencheck_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test gencheck

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
cee4f4bb823210ae53f048b3200fad733f92cfd4
link
true
/test gencheck

release-notes_istio
da9a73704533c7f4449d984c93e6706fc95926f3
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
9873e33d6f47527b1cba4b1d2ad77fca743e06b5
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
9873e33d6f47527b1cba4b1d2ad77fca743e06b5
link
true
/test release-notes

gencheck_istio
9873e33d6f47527b1cba4b1d2ad77fca743e06b5
link
true
/test gencheck

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
9873e33d6f47527b1cba4b1d2ad77fca743e06b5
link
true
/test gencheck

release-notes_istio
70eaba17aff4eec7b879aa355d6857e08804f39f
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
70eaba17aff4eec7b879aa355d6857e08804f39f
link
true
/test release-notes

unit-tests-arm64_istio
70eaba17aff4eec7b879aa355d6857e08804f39f
link
true
/test unit-tests-arm64

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-telemetry-mc_istio
90b97341b5f252ce620bd5330086b325440772a3
link
true
/test integ-telemetry-mc

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@ashithwilson: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-telemetry-mc_istio
90b97341b5f252ce620bd5330086b325440772a3
link
true
/test integ-telemetry-mc

unit-tests_istio
90b97341b5f252ce620bd5330086b325440772a3
link
true
/test unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

/retest


Endpoint in imported postgres subwallets not updated

I had acapy running in aws ec2 together with postgres DB for couple of months.
Few days ago I got new ec2 instance where acapy currently runs so I imported all subwallets from an old ec2 inst.
However all subwallets still use old Endpoint since they are "hard-coded" in DB so I am unable to, for example, create new connections (Error: "Connection ... not ready.")
What I did and tried so far to update Endpoint:

Acapy start command uses new endpoint so that should be ok.

I also updated Endpoint with POST wallet/set-did-endpoint with
{ "did": "XZcf2eM9FsfZHFFD6JYaBC", "endpoint": "http://newIP/8020", "endpoint_type": "Endpoint" }
and when I execute GET wallet/get-did-endpoint, new IP is actually in Response,
{ "did": "XZcf2eM9FsfZHFFD6JYaBC", "endpoint": "http://newIP/8020" }
but Create Connection still uses old one in invitation_url.

The only way it works is when I force to overwrite service_endpoint with new IP in Create connection JSON Body like:
POST /connections/create-invitation
{ "service_endpoint" : "http://newIP/8020" }

Did I forget to do something? Or is there a way maybe I can overwrite Endpoint IP in my Postgres DB? Thanks :)

Is this using the connection protocol or did-exchange protocol?

It looks like the endpoint is generally inherited from the mediator, which may be the base wallet in the case of multitenancy. Are there any details returned from the /mediation/default-mediator endpoint?

It is connection protocol.
And invitation url in our usecases is almost always presented as QR code so we can scan it with mobile wallets.
I get empty Body response from /mediation/default-mediator Endpoint.

Hmm. Has the agent been restarted at all? Maybe it's a cache issue.

I had to restart Agent couple of times, have no idea why but now all endpoints are updated.
Thanks a lot @andrewwhitehead

I think it's worth investigating to see if the cache problem can be resolved without restarting the agent.

The endpoint in your comment is not defining a port, is that right?


App does not open, error code 2067 SQLITE_CONSTRAINT_UNIQUE

Updated the app today via the app store on Retroid Pocket 3+, android 11, and started getting this error. The app will not open, simply crashes and gives the error before making it past the splash screen. I cleared the cache, same issue, updated using the latest github apk (newer than the play store version, 1.4.24), still the same error. I found a post on reddit with the exact same error:
https://www.reddit.com/r/retroid/comments/11rjdwm/anyone_else_getting_this_error_when_launching/

Hello. Could you explain more about what dose it mean it occurred randomly. (It should occur on every start up afaik.)

Hello. Please check the latest release. Thanks.
https://github.com/magneticchen/Daijishou/releases/latest

That seems to have done the trick! Thank you so much!

Thanks for the report. I will leave this open for a while.

No problem, super happy to be back on my favorite launcher :D

Hello. Could you explain more about what does it mean it occurred randomly. (It should occur on every start up afaik.)

Sorry I should have been more clear. I get the error every time I launch it, it just "randomly" started and never stopped.

I just downloaded the latest release and it worked! Thanks for the fix!


OSASINFRA-3243: add ephemeral storage support

Allow to use the new AdditionalBlockDevices in OpenShift machines.

/test e2e-openstack

/retest-required

/test e2e-openstack

@mandre should we get a new tag in downstream CAPO? I pulled it from the main branch, I don't think we want that.

/lgtm
/hold waiting for Martin's reply

/hold

/lgtm cancel
holds are not being enforced

/lgtm

/hold cancel


Widget Uptime is not sorted by default

Widget Uptime is not sorted by default.
We must click on column "Uptime" to sort the list after a click on the widget.

The uptime widget links should filter the listing


Dothub-web only works at organization level

At the moment dothub-web only works by inviting the user to the organization. This means that dothub cannot handle single repos nor repos within an user. We need to figure out how to workaround the issue.

Web project has been cancelled


[Feature Request] Add support for OpenSearch v2 and the new dedicated provider

Description
There is a new dedicated provider for OpenSearch the module should use to support version >= 2
The attributes of the resources are pretty much the same but with slightly different names.

This would be great as we are interested in anomaly detection which seems to be already present in the new provider but is not present in https://github.com/phillbaker/terraform-provider-elasticsearch.


added calculator to find cube root and square root

Issue Id you have worked upon -
#210
Briefly explain your program logic -
to print cube root and square root of number
Screenshots(Attach 2 screenshots of your own input and output) -

By raising this PR I affirm that -

[x] My code follows the guidelines of this project.

[x] I have performed a self-review of my own code.

[x] I have commented my code.

[x] My code gives the correct output.

[x] I affirm that I strictly follow contributing guidelines and code of conduct.

Congratulations 🎉 @munfaridzahera on your contribution.
Thanks for adding value to this repository. 😊
Let's celebrate this fest 😃 by providing more developers 👨💻👩💻 an opportunity to contribute. Help us make this repository reach far and more by sharing this to your friends and colleagues.
Your efforts can make difference.

Hey 👋, may you also encourage us by clicking the star icon on the repository main page. ⭐


No need for spaces inside brackets

In English, it looks a bit odd with spaces inside brackets.

Would you mind editing this line too: https://github.com/jzaefferer/jquery-validation/blob/3de30ac8a173c844fab128ef0ebdef59a6b4e964/src/localization/messages_ge.js#L12

@Arkni Done!

thx for the PR. did you check all localization files for this "problem"?

Those are the only two like that.

thx


An error occurred (InvalidParameterException) when calling the DescribeServices operation

This issue appeared on AWS-CLI v2
An error occurred (InvalidParameterException) when calling the DescribeServices operation: Cluster must match ^[a-zA-Z0-9\-_]{1,255}$, but was myter-HQW81hf613dA

Same issue.
aws-cli/1.22.19 Python/3.9.2 Linux/4.14.252-195.483.amzn2.x86_64 botocore/1.23.19


Cannot create a new Python notebook

When I try to create a new Python 2 notebook (only available option for me) in the path caffe2/tutorials, I get the following error in jupyter:
Creating Notebook Failed
An error occurred while creating a new notebook.
Unexpected error while running post hook save: [Error 2] The system cannot find the file specified
However, I am able to create a new python notebook somewhere else.
My configuration:
Python 2.7
I installed jupyter using pip.
Below the console output
[I 00:29:12.068 NotebookApp] Serving notebooks from local directory: D:\Yeverino\git_projects\caffe2_tutorials
[I 00:29:12.069 NotebookApp] 0 active kernels
[I 00:29:12.069 NotebookApp] The Jupyter Notebook is running at:
[I 00:29:12.069 NotebookApp] http://localhost:8888/?token=62e280100ce0984423306bb702755a42b9523af35656aa55
[I 00:29:12.069 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 00:29:12.071 NotebookApp]
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
    http://localhost:8888/?token=62e280100ce0984423306bb702755a42b9523af35656aa55&token=62e280100ce0984423306bb702755a42b9523af35656aa55

[I 00:29:12.207 NotebookApp] Accepting one-time-token-authenticated connection from ::1
[I 00:29:43.572 NotebookApp] Creating new notebook in
[NbConvertApp] Converting notebook Untitled.ipynb to script
[NbConvertApp] Writing 0 bytes to Untitled.txt
[E 00:29:44.839 NotebookApp] Post-save hook failed o-n D:\Yeverino\git_projects\caffe2_tutorials\Untitled.ipynb
Traceback (most recent call last):
File "c:\python27\lib\site-packages\notebook\services\contents\filemanager.py", line 135, in run_post_save_hook
self.post_save_hook(os_path=os_path, model=model, contents_manager=self)
File "D:\Yeverino\git_projects\caffe2_tutorials\jupyter_notebook_config.py", line 26, in post_save
os.rename(full_py_name, new_py_location)
WindowsError: [Error 2] The system cannot find the file specified
[W 00:29:44.842 NotebookApp] 500 POST /api/contents (::1): Unexpected error while running post hook save: [Error 2] The system cannot find the file specified
[W 00:29:44.844 NotebookApp] Unexpected error while running post hook save: [Error 2] The system cannot find the file specified
[E 00:29:44.844 NotebookApp] {
"Origin": "http://localhost:8888",
"Content-Length": "19",
"Accept-Language": "es-ES,es;q=0.9,de;q=0.8,en;q=0.7",
"Accept-Encoding": "gzip, deflate, br",
"X-Xsrftoken": "2|f594acfd|b21763f337c6c61245f37d965d8f867f|1531174011",
"Host": "localhost:8888",
"Accept": "application/json, text/javascript, /; q=0.01",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36",
"Connection": "keep-alive",
"X-Requested-With": "XMLHttpRequest",
"Referer": "http://localhost:8888/tree",
"Cookie": "_xsrf=2|f594acfd|b21763f337c6c61245f37d965d8f867f|1531174011; username-localhost-8888="2|1:0|10:1531175352|23:username-localhost-8888|44:ZmJhNDZmNGEzMzhiNDEyY2JjM2M2ZTY3MWRmYjVjODk=|54ef5790a66a7d0df4653b14c741d91d3c62591e64adee63afa73a395031e103"",
"Content-Type": "application/json"
}
[E 00:29:44.845 NotebookApp] 500 POST /api/contents (::1) 1271.00ms referer=http://localhost:8888/tree

@CarlosYeverino - apologies that we were slow on responding here. Did you solve your issue?


Cannot verify the account contract

📝 Description
It cannot verify the account contract with zkSync hardhat.
🔄 Reproduction Steps
  if (hre.network.config.verifyURL) {
    console.log(`Requesting contract verification...`);
    for (let i = 0; i < 50; i++) {
      console.log(i);
      try {
        await verifyContract({
          address: accountAddress,
          contract: fullContractSource,
          constructorArguments: constructorArgs,
          bytecode: aaArtifact.bytecode,
        });
        break;
      } catch (e) {
        console.log(e)
        await timeout(3000);
      }
    }
  }

The factory is:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;

import<EMAIL_ADDRESS>import<EMAIL_ADDRESS>
contract AAFactory {
    bytes32 public aaBytecodeHash;

    constructor(bytes32 _aaBytecodeHash) {
        aaBytecodeHash = _aaBytecodeHash;
    }

    function deployAccount(
        bytes32 salt,
        address owner
    ) external returns (address accountAddress) {
        (bool success, bytes memory returnData) = SystemContractsCaller
            .systemCallWithReturndata(
                uint32(gasleft()),
                address(DEPLOYER_SYSTEM_CONTRACT),
                uint128(0),
                abi.encodeCall(
                    DEPLOYER_SYSTEM_CONTRACT.create2Account,
                    (
                        salt,
                        aaBytecodeHash,
                        abi.encode(owner),
                        IContractDeployer.AccountAbstractionVersion.Version1
                    )
                )
            );
        require(success, "Deployment failed");

        (accountAddress) = abi.decode(returnData, (address));
    }
}

🤔 Expected Behavior
Expect it to verify successfully.
😯 Current Behavior
ZkSyncVerifyPluginError: The address 0x7d9Cc156be13a4690eCcC840179c2771670E9AF4 has no bytecode. Is the contract deployed to this network?
  The selected network is zkSyncSepoliaTestnet.
    at retrieveContractBytecode (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/@matterlabs/hardhat-zksync-verify/src/utils.ts:75:15)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async OverriddenTaskDefinition.verifyContract [as _action] (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/@matterlabs/hardhat-zksync-verify/src/task-actions.ts:163:33)
    at async Environment._runTaskDefinition (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14)
    at async Object.Environment.run (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/hardhat/src/internal/core/runtime-environment.ts:192:14)
Done!

🖥 Environment
networks: {
    zkSyncSepoliaTestnet: {
      url: "https://sepolia.era.zksync.dev",
      ethNetwork: "sepolia",
      zksync: true,
      verifyURL:
        "https://explorer.sepolia.era.zksync.dev/contract_verification",
    }
  },

Hello @ChiHaoLu are you sure you are verifying the right address? It seems that you are working with your wallet address.
Please check exactly what is accountAddress you are passing to the verification.

create2Account

Thanks for your reply, I am sure this account address is my deployed account contract. Won't the account contract show as an Account instead of Contract in zkSync explorer?
Is there any successfully verified account contract I can refer to?

I deploy the account with factory here.

@ChiHaoLu, could you send us your full deployment process instead of just a part of it?

I found I should use await aaFactory.aaBytecodeHash() instead of aaArtifact.bytecode in my deploy script. It's my fault.
But I get another error when verifying the account contract:
ZkSyncVerifyPluginError: The address provided as argument contains a contract, but its bytecode doesn't match any of your local contracts.

      Possible causes are:
        - Contract code changed after the deployment was executed. This includes code for seemingly unrelated contracts.
        - A solidity file was added, moved, deleted or renamed after the deployment was executed. This includes files for seemingly unrelated contracts.
        - Solidity compiler settings were modified after the deployment was executed (like the optimizer, target EVM, etc.).
        - The given address is wrong.
        - The selected network is wrong.
    at OverriddenTaskDefinition.getContractInfo [as _action] (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/@matterlabs/hardhat-zksync-verify/src/task-actions.ts:286:19)
    at async Environment._runTaskDefinition (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14)
    at async Environment.run (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/hardhat/src/internal/core/runtime-environment.ts:192:14)
    at async OverriddenTaskDefinition.verifyContract [as _action] (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/@matterlabs/hardhat-zksync-verify/src/task-actions.ts:172:54)
    at async Environment._runTaskDefinition (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14)
    at async Object.Environment.run (/Users/chihaolu/Desktop/imToken/zkSync-Payment-Mininal-Demo/node_modules/hardhat/src/internal/core/runtime-environment.ts:192:14)

My deploy script is:
// load env file
import dotenv from "dotenv"
import * as ethers from "ethers"
import { HardhatRuntimeEnvironment } from "hardhat/types"
import { utils } from "zksync-ethers"
import { getDeployer, getWallet, verifyContract } from "./utils"

dotenv.config()
export default async function (hre: HardhatRuntimeEnvironment) {
    // Load the factory
    const wallet = getWallet()
    const deployer = getDeployer()
    const factoryArtifact = await deployer.loadArtifact("AAFactory")
    const aaArtifact = await deployer.loadArtifact("Account")
    const vaultAddress = process.env.VAULT_ADDRESS
    const factoryAddress = process.env.ACCOUNT_FACTORY_ADDRESS
    console.log(`AA factory address: ${factoryAddress}`)
    const aaFactory = new ethers.Contract(
        factoryAddress,
        factoryArtifact.abi,
        wallet
    )

    // Deploy account with factory
    const ownerAddress = wallet.address
    const salt = ethers.randomBytes(32)
    const tx = await aaFactory.deployAccount(salt, ownerAddress)
    await tx.wait()

    const abiCoder = new ethers.AbiCoder()
    const constructorArgs = abiCoder.encode(
        ["address", "address"],
        [ownerAddress, vaultAddress]
    )
    const accountAddress = utils.create2Address(
        factoryAddress,
        await aaFactory.aaBytecodeHash(),
        salt,
        constructorArgs
    )

    console.log(`Account deployed on address ${accountAddress}`)

    // Funding account with ETH
    console.log("Funding smart contract account with some ETH")
    await (
        await wallet.sendTransaction({
            to: accountAddress,
            value: ethers.parseEther("0.00001")
        })
    ).wait()

    // Verify the account
    const fullContractSource = `${aaArtifact.sourceName}:${aaArtifact.contractName}`
    if (hre.network.config.verifyURL) {
        const retryTime = 1
        console.log(`Requesting contract verification...`)
        for (let i = 0; i < retryTime; i++) {
            console.log(i)
            try {
                await verifyContract({
                    address: accountAddress,
                    contract: fullContractSource,
                    constructorArguments: constructorArgs,
                    bytecode: aaArtifact.bytecode
                })
                break
            } catch (e) {
                console.log(e)
                await timeout(3000)
            }
        }
    }
    console.log(`Done!`)
}

function timeout(ms: number) {
    return new Promise((resolve) => setTimeout(resolve, ms))
}

I also tried below code and failed too:
await verifyContract({
    address: accountAddress,
    contract: fullContractSource,
    constructorArguments: [ownerAddress, vaultAddress],
    bytecode: aaArtifact.bytecode
})

Could you provide the address of your deployed AAFactory?

Could you provide the address of your deployed AAFactory?
factory address

Hello, we are unable to reproduce the error with the code you provided. Therefore, I suggest reviewing the script we created for you and testing the deployment process with script that works at our side.
import * as zk from 'zksync-ethers';
import * as hre from 'hardhat';
import { ZeroHash, AbiCoder, parseEther } from 'ethers';

async function main() {
  const vault = '0x305A6E5796d41774c21BdC2c0474628B1Bf2f86E' // YOUR VAULT ADDRESS

  const aaArtifact = await hre.deployer.loadArtifact("Account");
  const bytecodeHash = zk.utils.hashBytecode(aaArtifact.bytecode);
  const factory = await hre.deployer.deploy("AAFactory", [bytecodeHash, vault], undefined, [
    aaArtifact.bytecode,
  ]);
  const factoryAddress = await factory.getAddress();

  console.log(`AA factory address: ${factoryAddress}`);

  const owner = await hre.deployer.getWallet();
  const salt = ZeroHash; // Salt is zero for simplicity

  // deploy account
  const tx = await factory.deployAccount(salt, owner.address);
  await tx.wait();

  const abiCoder = new AbiCoder();
  const accountAddress = zk.utils.create2Address(
    factoryAddress,
    await factory.aaBytecodeHash(),
    salt,
    abiCoder.encode(["address", "address"], [owner.address, vault])
  );
  console.log(`Account deployed on address ${accountAddress}`);

  console.log("Funding smart contract account with some ETH")
  await (
      await owner.sendTransaction({
          to: accountAddress,
          value: parseEther("0.00001")
      })
  ).wait()

  hre.run('verify', {
    address: accountAddress,
    contract: 'contracts/Account.sol:Account',
    constructorArgsParams: [owner.address, vault],
    bytecode: aaArtifact.bytecode,
  });
}

main().catch((error) => {
  console.error(error);
  process.exitCode = 1;
});

Thanks a lot! I will try it and give the feedback!


Make AssertQuery protected

For provider test suites which extend QueryTestBase

@roji - Can you change all AssertQuery to protected. In future other providers may need other overloads.

Done

@anpete @ajcvickers @divega - 2.0 milestone?

Sounds good to me. @ajcvickers?

Yes, especially since this is only test changes.

Merged with be888c3b4d16583787bf0af5d708f7f68f03f504


Trying to run openshift-apiserver scenario without success

I've set up a standalone cluster for Kraken and followed the steps provided in the Readme to get started. I made some changes in the Kraken config file to only include one scenario which would be the openshift-apiserver to isolate the problem I'm having. This is what I have in the kraken deployment pod log after starting the deployment:
2021-04-12 14:16:22,450 [INFO] Starting kraken
2021-04-12 14:16:22,455 [INFO] Initializing client to talk to the Kubernetes cluster
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1020: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.kraken-test-04.cp.fyre.ibm.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
  InsecureRequestWarning,
2021-04-12 14:16:23,455 [INFO] Fetching cluster info
2021-04-12 14:16:47,718 [INFO]
I0412 14:16:24.777729      13 request.go:668] Waited for 1.168597466s due to client-side throttling, not priority and fairness, request: GET:https://api.kraken-test-04.cp.fyre.ibm.com:6443/apis/policy/v1beta1?timeout=32s
I0412 14:16:34.778149      13 request.go:668] Waited for 11.168923785s due to client-side throttling, not priority and fairness, request: GET:https://api.kraken-test-04.cp.fyre.ibm.com:6443/apis/coordination.k8s.io/v1beta1?timeout=32s
NAME      VERSION   AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.6.16    True        False         21h     Cluster version is 4.6.16
I0412 14:16:36.903365      31 request.go:668] Waited for 1.155303512s due to client-side throttling, not priority and fairness, request: GET:https://api.kraken-test-04.cp.fyre.ibm.com:6443/apis/networking.k8s.io/v1?timeout=32s
I0412 14:16:47.103691      31 request.go:668] Waited for 11.353934532s due to client-side throttling, not priority and fairness, request: GET:https://api.kraken-test-04.cp.fyre.ibm.com:6443/apis/admissionregistration.k8s.io/v1beta1?timeout=32s
Kubernetes control plane is running at https://api.kraken-test-04.cp.fyre.ibm.com:6443

2021-04-12 14:16:47,718 [INFO] Daemon mode enabled, kraken will cause chaos forever

2021-04-12 14:16:47,718 [INFO] Ignoring the iterations set
2021-04-12 14:16:47,718 [INFO] Executing scenarios for iteration 0
2021-04-12 14:16:48,211 [INFO] Scenario: scenarios/openshift-apiserver.yml has been successfully injected!
2021-04-12 14:16:48,212 [INFO] Waiting for the specified duration: 60

My expectation based on the message is that I would be able to see in real time a pod in the openshift-apiserver namespace be taken down, and a new one initialized. However, I don't see anything happening to the pods. This was with the default openshift-apiserver.yml scenario.
I've also tried changing the selector in the scenario to app=openshift-apiserver-a to match our targeted pod label in its yaml, as well as getting rid of the selector line altogether.
Are there additional steps that need to be done to get this scenario to work?

Hi @paigerube14 can we get your thoughts on this one?

Are you able to post the config file you are using?
It seems like it's not trying to execute your scenario. Even if you are running the pod scenario and no pods match you would be getting output like the following; not what you are seeing so I am a little confused.
`
....
2021-04-13 10:33:10,001 [INFO] Daemon mode not enabled, will run through 1 iterations
2021-04-13 10:33:10,001 [INFO] Executing scenarios for iteration 0
2021-04-13 10:33:14 INFO main verbosity: None; log level: INFO; handler level: INFO
2021-04-13 10:33:14 INFO main Creating kubernetes client with config /Users/prubenda/.kube/config from --kubeconfig flag
2021-04-13 10:33:14 INFO k8s_client Initializing with config: /Users/prubenda/.kube/config
2021-04-13 10:33:14 INFO main No cloud driver - some functionality disabled
2021-04-13 10:33:14 INFO main Using stdout metrics collector
2021-04-13 10:33:14 INFO main NOT starting the UI server
2021-04-13 10:33:14 INFO main STARTING AUTONOMOUS MODE
2021-04-13 10:33:17 INFO scenario.delete openshif Starting scenario 'delete openshift-apiserver pods' (2 steps)
2021-04-13 10:33:17 INFO action_nodes_pods.delete openshif Matching 'labels' {'labels': {'namespace': 'openshift-apiserver', 'selector': 'app=openshift-apiserver'}}
2021-04-13 10:33:17 INFO action_nodes_pods.delete openshif Matched 0 pods for selector app=openshift-apiserver in namespace openshift-apiserver
2021-04-13 10:33:17 INFO action_nodes_pods.delete openshif Initial set length: 0
2021-04-13 10:33:17 INFO action_nodes_pods.delete openshif Matching 'labels' {'labels': {'namespace': 'openshift-apiserver', 'selector': 'app=openshift-apiserver'}}
2021-04-13 10:33:17 INFO action_nodes_pods.delete openshif Matched 0 pods for selector app=openshift-apiserver in namespace openshift-apiserver
2021-04-13 10:33:17 INFO action_nodes_pods.delete openshif Initial set length: 0
2021-04-13 10:33:17 INFO scenario.delete openshif Scenario finished
2021-04-13 10:33:17 INFO policy_runner All done here!
`

Here's the Kraken config.yaml file:
kraken:
    kubeconfig_path: /root/.kube/config                    # Path to kubeconfig
    exit_on_failure: False                                 # Exit when a post action scenario fails
    litmus_version: v1.10.0                                # Litmus version to install
    litmus_uninstall: False                                # If you want to uninstall litmus if failure
    chaos_scenarios:                                       # List of policies/chaos scenarios to load
        -   pod_scenarios:                                 # List of chaos pod scenarios to load
            - -    scenarios/openshift-apiserver.yml

cerberus:
    cerberus_enabled: False                                # Enable it when cerberus is previously installed
    cerberus_url:                                          # When cerberus_enabled is set to True, provide the url where cerberus publishes go/no-go signal

performance_monitoring:
    deploy_dashboards: False                              # Install a mutable grafana and load the performance dashboards. Enable this only when running on OpenShift
    repo: "https://github.com/cloud-bulldozer/performance-dashboards.git"

tunings:
    wait_duration: 60                                      # Duration to wait between each chaos scenario
    iterations: 1                                          # Number of times to execute the scenarios
    daemon_mode: True                                     # Iterations are set to infinity which means that the kraken will cause chaos forever

I should mention that we received a similar output when we used the default config.yaml as well without the node scenarios .
Right now we are only using the openshift-apiserver.yml scenario and we are currently using the default version of that file. Are there any extra steps that aren't listed in the README KubeApp section that we need to perform?

Fixed by #86


added 2 useful jira tips

Hi @jbecla this is great. Do you need sign-off before merging? I don't see any issue here.

Is this in limbo waiting for @ktlim to approve it? Seems uncontroversial.

Not waiting on me, AFAIK.  No ticket is evident, so no review requested.

I merged this as it seemed uncontroversial and everyone was waiting on everyone else.


ERRO[...] could not resolve peer "": timed out resolving peer by querying the cluster

Architecture
1 consul server IP : <IP_ADDRESS>
Launched like this
docker run -d -p 8300:8300 -p 8301:8301 -p 8301:8301/udp -p 8302:8302  -p 8302:8302/udp     -p 8400:8400 -p 8500:8500 -p 53:53/udp  progrium/consul --server -bootstrap-expect 1

3 docker nodes
Client:
 Version:      1.9.0-dev
 API version:  1.21
 Go version:   go1.4.2
 Git commit:   1529343
 Built:        Tue Oct  6 19:16:24 UTC 2015
 OS/Arch:      linux/amd64
 Experimental: true

Server:
 Version:      1.9.0-dev
 API version:  1.21
 Go version:   go1.4.2
 Git commit:   1529343
 Built:        Tue Oct  6 19:16:24 UTC 2015
 OS/Arch:      linux/amd64
 Experimental: true

First (<IP_ADDRESS>)
DOCKER_OPTS='
-H tcp://<IP_ADDRESS>:2376
-H unix:///var/run/docker.sock
--storage-driver aufs
--tlsverify
--tlscacert /etc/docker/ca.pem
--tlscert /etc/docker/server.pem
--tlskey /etc/docker/server-key.pem
--label com.docker.network.driver.overlay.bind_interface=eth0
--label provider=azure
--cluster-store=consul://<IP_ADDRESS>:8500
--cluster-advertise=<IP_ADDRESS>:2376
--default-network=overlay:multihost
--debug=true

Second  (<IP_ADDRESS>)
DOCKER_OPTS='
-H tcp://<IP_ADDRESS>:2376
-H unix:///var/run/docker.sock
--storage-driver aufs
--tlsverify
--tlscacert /etc/docker/ca.pem
--tlscert /etc/docker/server.pem
--tlskey /etc/docker/server-key.pem
--label com.docker.network.driver.overlay.bind_interface=eth0
--label com.docker.network.driver.overlay.neighbor_ip=<IP_ADDRESS>
--label provider=azure
--cluster-store=consul://<IP_ADDRESS>:8500
--cluster-advertise=<IP_ADDRESS>:2376
--default-network=overlay:multihost
--debug=true

'

Third  (<IP_ADDRESS>)
DOCKER_OPTS='
-H tcp://<IP_ADDRESS>:2376
-H unix:///var/run/docker.sock
--storage-driver aufs
--tlsverify
--tlscacert /etc/docker/ca.pem
--tlscert /etc/docker/server.pem
--tlskey /etc/docker/server-key.pem
--label com.docker.network.driver.overlay.bind_interface=eth0
--label com.docker.network.driver.overlay.neighbor_ip=<IP_ADDRESS>
--label provider=azure
--cluster-store=consul://<IP_ADDRESS>:8500
--cluster-advertise=<IP_ADDRESS>:2376
--default-network=overlay:multihost
--debug=true

'

Discovery is OK
When i try to do launch a simple container :
docker run -ti --rm --name deb1 debian

Got these errors
Received query name:peerlookup, payload:c3a4708f2ce9b7165f9cc8628ba5e3deecc2abe6f2c0286ee7e1281a1ec74255 <nil>
2015/10/09 08:37:42 [DEBUG] serf: messageQueryType: peerlookup
2015/10/09 08:37:42 [DEBUG] serf: messageQueryType: peerlookup
2015/10/09 08:37:42 [DEBUG] serf: messageQueryType: peerlookup

ERRO[0314] could not resolve peer "<nil>": timed out resolving peer by querying the cluster

Received query name:peerlookup, payload:c3a4708f2ce9b7165f9cc8628ba5e3deecc2abe6f2c0286ee7e1281a1ec74255 <nil>
2015/10/09 08:37:42 [DEBUG] memberlist: Responding to push/pull sync with: <IP_ADDRESS>:56260
2015/10/09 08:37:42 [DEBUG] serf: messageQueryType: peerlookup
2015/10/09 08:37:43 [DEBUG] serf: messageQueryType: peerlookup
2015/10/09 08:37:43 [DEBUG] serf: messageQueryType: peerlookup
2015/10/09 08:37:43 [DEBUG] serf: messageQueryType: peerlookup
2015/10/09 08:37:43 [DEBUG] serf: messageQueryType: peerlookup

ERRO[0315] could not resolve peer "<nil>": timed out resolving peer by querying the cluster

@herveleclerc --default-network=overlay:multihost has been removed.
Pls create a network using docker network create -d overlay multihost and then make use of the network in docker run --net=multihost ...

can't make it work with docker run --net=multihost
Error response from daemon: invalid --net: production
to make it works :
docker network create -d overlay production
on host 1 :
```docker service publish svc1.production.overlay````
docker run --publish-service svc1.production -ti --rm --name houlala debian
on host2
docker service publish svc2.production.overlay````    docker run --publish-service svc2.production -ti --rm --name houhou debian```
in  container svc2
ping svc1.production
PING svc1.production (<IP_ADDRESS>): 56 data bytes
64 bytes from <IP_ADDRESS>: icmp_seq=0 ttl=64 time=2.566 ms
64 bytes from <IP_ADDRESS>: icmp_seq=1 ttl=64 time=1.092 ms
64 bytes from <IP_ADDRESS>: icmp_seq=2 ttl=64 time=1.901 ms
64 bytes from <IP_ADDRESS>: icmp_seq=3 ttl=64 time=1.195 ms

I don't know why i can't use --net=network_previously_created

and for information the error message is still present  ERRO[2760] could not resolve peer "<nil>": timed out resolving peer by querying the cluster

@herveleclerc It has been detected that this issue has not received any activity in over 6 months. Can you please let us know if it is still relevant:

For a bug: do you still experience the issue with the latest version?
For a feature request: was your request appropriately answered in a later version?

Thank you!
This issue will be automatically closed in 1 week unless it is commented on.
For more information please refer to https://github.com/docker/libnetwork/issues/1926


Calling World#delete_later() on an already deleted entity causes an assertion error in World#maintain()

Example Code:
let mut world = World::new();

let entity = world.create_now().build();

world.delete_now(entity);
world.delete_later(entity);

world.maintain();

Triggered assertion: https://github.com/slide-rs/specs/blob/master/src/lib.rs#L50

What would you expect specs to do in this case?

I would expect it to either do nothing (ignore that the entity was deleted twice) or panic with a (useful) error message when deleting it (not sure whether this can be implemented well) - an assertion error usually means something went wrong inside the library.

@Aceeri my local code didn't seem to make any performance improvements, so I won't create a PR fixing this anytime soon.
If anybody is looking for an issue to solve, this one should be quite easy. If you need any help, just ask for it on Gitter.


[Feature Request] Make beartype.typing Actually Do Something

This feature request comes courtesy @JWCS via this secretive commit comment that has already been lost to the sands of time. @JWCS wisely notes that beartype.typing is currently undocumented, largely useless, and a pox upon the good name of @beartype:

Out of curiousity, why doesn't beartype.typing backport types?
I had previously expected that when I have to dip back to an earlier version of python, I can just from beartype.typing import List, Dict, Self, Never, TypeAlias, Literal, Final, TypeGuard, Protocol, OrderedDict, without having to sort through that these, respectively (depr sometime, depr sometime, 3.11+, 3.11+, 3.8+, 3.8+, 3.10+, 3.8+, 3.7.2+), etc.

@JWCS is not wrong. beartype.typing should do considerably more for everyone. It currently doesn't, mostly because I wasn't convinced anyone even used beartype.typing – let alone wanted beartype.typing to do considerably more for everyone.
Like beartype.cave, beartype.typing is this basically undocumented thing that I quietly maintain out of a nostalgic wistfulness for the halcyon past when I was young, less bald, and enthusiastic. But you've convinced me that somebody actually cares about beartype.typing!
Thankfully, I'm convinced that what everyone wants can be done without adding typing_extensions as a mandatory runtime dependency to either @beartype or your workflow. If anyone would like to require typing_extensions in their workflow, of course, that's perfectly fine – but we won't be mandating that on @beartype's end.
What Is This Inchoate Madness You Speak Of!?
Here is what the implementation of beartype.typing should look like. It doesn't currently, because I am contemptible, degenerate, and/or an inveterate pauper. But it should:
# In "beartype.typing.__init__": the future of typing backports begins today.
from typing import TYPE_CHECKING

# If @beartype is currently being statically type-checked (e.g.,
# by mypy or pyright), just defer to the third-party
# "typing_extensions" package.
#
# Note that this does *NOT* mean that @beartype now unconditionally
# requires "typing_extensions" at either runtime or static
# type-checking time. Any code in an "if TYPE_CHECKING:" is (basically)
# just a convincing semantic lie that everything syntactically ignores.
if TYPE_CHECKING:
    from typing_extensions import *  # <-- heh
# Else, @beartype is currently being imported from at runtime. This is
# the common case. This is also the non-trivial case, because @beartype
# does *NOT* require "typing_extensions" as a mandatory runtime
# dependency, because @beartype requires *NOTHING* as a runtime
# dependency. This is the only rule in @beartype's Rule of Law.
else:
    # Import the requisite machinery that will make the magic happen.
    from beartype._util.mod.lib.utiltyping import (
        import_typing_attr_or_fallback as _import_typing_attr_or_fallback)

    # Dynamically define the "Self" type hint as follows:
    # * If the active Python interpreter targets Python >= 3.11, just
    #   defer to the canonical "typing.Self" type hint.
    # * Else if "typing_extensions" is importable *AND* of a sufficiently
    #   recent version to define the backported "typing_extensions.Self"
    #   type hint, fallback to that hint.
    # * Else, synthesize a placeholder type hint that @beartype internally
    #   recognizes as semantically equivalent to "typing.Self".
    Self = _import_typing_attr_or_fallback('Self', TypeHintTypeFactory(object))

    #FIXME: Repeat the above logic for *ALL* existing "typing" attributes.

:muscle: :bear: :+1:

Thanks! I wasn't sure if I was blatantly misreading code, or missing something obvious.
But now that I too have started thinking more deeply about it, I've realized that the typing_extensions has mostly implemented all the backporting (I think I think), so if everything was imported directly from typing_extensionis, you'd get this feature for free.
Plus then add/wrap/change anything that needed @beartype specific runtime changes, though none are forthcoming.
Tto not have it as a runtime dep, subtree or subrepo it directly into beartype; it has a infrequent release cycle.
Alternatively, to this degree, since I'd been importing beartyping everywhere, it was trivial for me to disregard typing/typing_extensions and pull types from beartype.typing, but if the answer is "just use typing_extensions, that's literally what its for", that's no big deal. That might be why nobody mentioned it before.

Thanks for being so understanding, @JWCS. Your patience humbles us all. The answer is, indeed:

"just use typing_extensions, that's literally what its for"

That said, I'd still like to resolve this issue at some point this year. beartype.typing should just work as expected out-of-the-box, where "as expected" means:

beartype.typing should greedily import all attributes that can be imported from the current version of the standard typing module. The runtime implementations of these attributes are typically superior (i.e., stabler, saner, faster, harder) to those defined by the non-standard typing_extensions module.
Additionally:

If typing_extensions is installed, beartype.typing should greedily import all remaining attributes from typing_extensions.
Else, beartype.typing should fallback to sane implementations of all remaining attributes (e.g., with trivial aliases like LiteralString = str and TypeGuard = bool).

Let's tentatively pencil this in for beartype 0.16.0. Chug the future like you just don't care! :beers:


util.TempFile: use ioutil-like implementation, fixes #41

Adapt iotuil.TempFile to billy.
This prevents having a global temporary file maximum.
Also prevents race-condition on getting the file name.
helper/temporal: run full filesystem test suite
test: test that we can open a lot of temp files

I think you might be referring to another repository when you say in the title of this PR and on the commit messages that this PR fixes #22.

@alcortesm Wrong number, it's #41


Modernize slack

Reversing commands to be noun verb not verb noun, as it standard
in knausj. I'm not removing the old way for now, though I think
we shouild
Dropping the "clear" command, as it is dealt with elsewhere and
it conflicts with those other commands, e.g. "clear word left"
being interpreted as "clear everything and type the word 'left'"
instead of "clear the word left of the cursor"

This PR does remove the old way I think?
The move to noun verb sounds good to me, but we should keep in the old commands for a while (particularly since Slack is so important to Talon users, some of them are probably even using the desktop app :D). To do that you can show a notify balloon when the old commands are executed but then execute them anyway. See mouse_grid.talon for another place we've done that.
Removing the clear command completely seems like a good idea though since its commands conflict with some more commonly used ones.

This PR does remove the old way I think?

So it does! At some point I was maintaining both
I've added the changed ones back with deprecation warnings (except clear)
What do you think of "toggle <left|right> side bar"? I've left that as is, but I wonder if that should be "<left|right> side bar toggle"?
I also fixed a couple of bugs with some of the other existing commands.

Cool, looks good to me now :). Probably the left/right side bar toggle version would fit the pattern as well if you'd like to add that :).
Otherwise will give other maintainers a day or two to look and can then merge it in.


graphelement.cpp and graphstate.cpp need to be inplemented

header files are currently created now cpp files need to be implemented.

GraphElement is currently usable I think. It might need a few tweaks in the future but the basic implementation is up and running.


Update tests and documentation

Pull Request Test Coverage Report for Build 653

21 of 21 (100.0%) changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.3%) to 88.363%

Totals

Change from base Build 648:
0.3%

Covered Lines:
3432

Relevant Lines:
3884

💛  - Coveralls


Strapi plugin implementation

Description
The plugin should provide a simple UI view allowing a user to upload a CSV file and import the content into Strapi CMS
During the preprocessing we generate a set of CSV files that describe instances of a collection (e.g. Neurons collection). We want to populate the database by importing the CSV files with the custom Strapi plugin.
Tasks

Implement minimal UI upload form (based on Strapi's tutorial, but we don't need the history page). User can upload a single CSV and click on an "Import" button
Parse the uploaded CSV & create instances that match the respective collection format
Add these instances to Strapi by using the endpoints of the respective collection

Most entities contain file paths that point to objs or other media files. Since we are waiting for information about the storage of these files, we should focus solely on the logic of executing a file upload with Strapi that links file and instance. File retrieval and resolution of the file paths will be part of a connector in a separate issue.

Some dude created this. Seems to do what we wanted

moving this to icebox waiting for open questions about the data to be answered.

I created a new branch that automatically fills the columns based on the conditions:

The csv headers match with model attributes
The match on and related column are the 'uid' attribute

Both conditions are met in NeuroScan.
Some time measurements for  the biggest csv file synapses_300  (10688 rows):
Analyzing the file: ~15 minutes
Importing the content: ~15 minutes
Importing relations: ~30 minutes

Imo can be closed and now tracked on #142. cc @ddelpiano


[BP-1.10][FLINK-18012] Deactivate slot timeout when calling TaskSlotTable.tryMarkSlotActive

Backport of #12388 to release-1.10.

Manually merged.


move socials to resources, add newsletter subscribe

😉  closes #174

LOVE THIS!!!
One tiny thing: would it be possible to mention that the newsletter will notify you when applications are opened? (since most of the people care about that the most)


Apply published bugfix patches

The Lua project publishes bugfix patches after releases: http://www.lua.org/bugs.html#5.3.3. This PR applies exactly those patches released so far to the bundled Lua source.

Thanks.


bash tools/build-standalone-lib.sh  出错

build shared lib for armeabi-v7a
ERROR: /home/ql/mace-master/mace/codegen/BUILD:22:1: no such package '@local_opencl_kernel_encrypt//': Not a regular file: /home/ql/mace-master/.git/HEAD and referenced by '//mace/codegen:encrypt_opencl_kernel_gen'
ERROR: Analysis of target '//mace/libmace:libmace_dynamic' failed; build aborted: Analysis failed
INFO: Elapsed time: 18.967s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (22 packages loaded)
currently loading: @com_google_protobuf//

Did you pull the latest code?

I pulled yesterday

What is the cause of this problem?  help me ，please

@SankQin The current building depends on git message. Please download code by command git pull.  And we will fix it later. Thanks for feedback.

Fixed, please try again.

thx,successfully


Object and array literals via {} and [] followed by items

Braced object literals have many more features than unbraced object literals (from CoffeeScript). This PR transforms an unbraced object literal into a braced one by adding {} in front of it, both in the inline case ({} foo, bar) and in the nested case with a layer of indentation:
{}
  foo
  bar

Overall, the syntax aligns with implicit function calls, and {} is never a function that can be called, so there's effectively no ambiguity here.
Similarly, [] constructs array literals. This isn't as important, especially given that we have bulleted arrays (which are still useful because they allow clear delineation between unbraced object literal elements), but it does allow for some fun things:
[] [] [] [] x
↓↓↓
[ [ [ [ x]]]]

consList := [] x, [] y, [] z
↓↓↓
const consList = [ x, [ y, [ z]]]

Let's see how it feels! I was a bit scared about this one for a while, until I realized we're only replacing function calls that didn't make sense.


chore: add assets from upstream

Everytime copying files is not so fast when doing patching
Assets doesn't change regularly so can be kept in repo as its easier to work in docker etc
I don't need submodules to test something in docker

but lets keep inside the apply-patch the logic that we update the assets folder once we apply a new patch?

Will add  in the next roll for v1.17

@mxschmitt merge


Add key config

Great extention, but would help to add custom shortcuts,

Hey, thanks for your feedback.
I think you should be able to override the default shortcuts in either your Keyboard Shortcuts or your keybindings.json.
If you go to File>Preferences>Keyboard Shortcuts you should find a list of all VS Code commands. Just search for one of jump-bracket's commands (i.e. 'jump-forward') and from there on you should easily be able to add your own shortcut.
Alternatively, you can Ctrl+Shift+P, search for 'Keyboard Shortcuts (JSON)' and directly override the commands, by simply adding:

{
"command":  command you want to override (i. e. "jump-forward"),
"key":  your own shortcut (i.e. "ctrl+m")
}

Let me know if this was what you were looking for and if so, I'll update the README to let others know how to do it as well.


Allow converting string pointers to integers

Is your feature request related to a problem? Please describe.
Ghidra tends to interpret ints that point to strings as char* even if they aren't supposed to be.

Describe the solution you'd like
When I right click and select "set equate: hexadecimal", it should show as hexadecimal rather than a string.
Describe alternatives you've considered
I tried moving the base of the program, but this leads to problems with static variables and variables that are strings in the same region.
Additional context
N/A

Same as #4104 .  The (not great) workaround is to re-type the starting address


Bump consensus version bounds

Changelog
- description: |
    Bump consensus packages version bounds
# uncomment types applicable to the change:
  type:
  # - feature        # introduces a new feature
  # - breaking       # the API has changed in a breaking way
  # - compatible     # the API has changed but is non-breaking
  # - optimisation   # measurable performance improvements
  # - improvement    # QoL changes e.g. refactoring
  # - bugfix         # fixes a defect
  # - test           # fixes/modifies tests
  # - maintenance    # not directly related to the code
  - release        # related to a new release preparation
  # - documentation  # change in code docs, haddocks...

Context
For node 8.9.1

I think this can be just a revision on CHaP

CHaP release: https://github.com/IntersectMBO/cardano-haskell-packages/pull/704

Can you make another PR which branches off latest main which just contains:

Updated changelog - we would like to keep the log of all API releases
Dependecies' and indices' bump
Code changes
?
I think this PR should be closed, because it bumps the API version to a lower than the one in main and we don't want that.

@carbolymer yes I can do that. This is something I needed for 8.9.1 which uses cardano-api 8.39.2 . I didn't want to integrate/release latest cardano-api for 8.9.1, that will be done for 8.10.

Done: https://github.com/IntersectMBO/cardano-api/pull/488 !


Closes: #1

Updated validations.py python script.
Fixed the behavior of validate_user function in validations.py. added additional checks to make sure user name starts with a letter.
Fixes #<issue_number_goes_here>
@marga-google

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

@googlebot I signed it!

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
📝 Please visit https://cla.developers.google.com/ to sign.
Once you've signed (or fixed any issues), please reply here with @googlebot I signed it! and we'll verify it.
What to do if you already signed the CLA
Individual signers

It's possible we don't have your GitHub username or you're using a different email address on your commit. Check your existing CLA data and verify that your email is set on your git commits.

Corporate signers

Your company has a Point of Contact who decides which employees are authorized to participate. Ask your POC to be added to the group of authorized contributors. If you don't know who your Point of Contact is, direct the Google project maintainer to go/cla#troubleshoot (Public version).
The email used to register you as an authorized contributor must be the email used for the Git commit. Check your existing CLA data and verify that your email is set on your git commits.
The email used to register you as an authorized contributor must also be attached to your GitHub account.


fix: Remove premature removal of finalizer from Default ArgoCD Instance

What type of PR is this?

Uncomment only one  /kind line, and delete the rest.
For example, > /kind bug would simply become: /kind bug

/kind bug
/kind cleanup
/kind failing-test
/kind enhancement
/kind documentation
/kind code-refactoring

What type of PR is this?

Uncomment only one  /kind line, and delete the rest.
For example, > /kind bug would simply become: /kind bug

/kind bug

What does this PR do / why we need it:
Problem Description
When DISABLE_DEFAULT_ARGOCD_INSTANCE is changed from false to true. It is expected that all the associated RBAC resources too get cleaned up. But the clean up of RBAC resources does not remove the ClusterRoles and ClusterRoleBindings associated with the default ArgoCD instance. However, the ServiceAccount, Role and RoleBinding resources are cleaned up correctly.
Following ClusterRoles are not cleaned up
openshift-gitops-openshift-gitops-argocd-application-controller
openshift-gitops-openshift-gitops-argocd-server

Following ClusterRoleBindings are not cleaned up
openshift-gitops-openshift-gitops-argocd-application-controller             ClusterRole/openshift-gitops-openshift-gitops-argocd-application-controller
openshift-gitops-openshift-gitops-argocd-server                             ClusterRole/openshift-gitops-openshift-gitops-argocd-server

Solution
In gitopservice_controller.go, when DEFAULT_ARGOCD_INSTANCE is set to true it removes the finalizers, and then marks the ArgoCD CR for deletion. The ArgoCD controller, cleanup code depends on the finalizers to cleanup the RBAC resources.
Have you updated the necessary documentation?

[ ] Documentation update is required by this PR.
[ ] Documentation has been updated.

Which issue(s) this PR fixes:
Fixes GITOPS-2572
Test acceptance criteria:

[] Unit Test
[x] E2E Test

How to test changes / Special notes to the reviewer:
Related PR -> https://github.com/redhat-developer/gitops-operator/pull/525

/test v4.12-kuttl-sequential
/test v4.13-kuttl-sequential

/test v4.12-kuttl-sequential
/test v4.13-kuttl-sequential

/test v4.12-kuttl-sequential

/lgtm
/approve


feat: add Persian and Turkish localization files for application messages

@feelgood1987 Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@feelgood1987 Thank you for signing the Contributor License Agreement!


Revert "OCPBUGS-16809: Configured IgnitionProxy to support IPv4 and IPv6"

Reverts openshift/hypershift#2850, tracked by TRT-1168
TRT suspects this PR as being a possible cause of a recent payload regression. We are floating this revert to perform additional testing.  It seems unlikely this is the cause, but we don't have any other candidates at the moment. Workers are failing to provision on the nightly jobs (se jira above for details)
Holding pending confirmation:
/hold

/close
https://github.com/openshift/machine-config-operator/pull/3828 fixed it


Data from charts absent in report; State & county charts absent

Problem
Two charts are missing data in the Generate Report PDF and the State and County Charts are absent
The image below highlights the two problems in red boxes.

Desired Function

Data for the Open Vulnerabilities by Domain is present
Data for the Most Common Ports is available
The State Chart is present
The County Chart is present

Solved.  See Issue #6


GitHub Action Output formatter

We could add an action output formatter which will address violations as annotation ->
https://help.github.com/en/actions/automating-your-workflow-with-github-actions/development-tools-for-github-actions#set-an-error-message-error

@smoench Please can you assign this to me

@jtaylor100 Sure, thanks for the takeover

resolved by #305


Commands: Use embed for emoji command instead of sending emoji directly

Continuation of #85 as requested changes weren't implemented yet

Haha sorry.... wasn't paying attention.


Update forking-and-cloning-gists.md

Why:
Closes [issue link]

What's being changed:

Check off the following:

[ ] I have reviewed my changes in staging (look for the latest deployment event in your pull request's timeline, then click View deployment).
[ ] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

https://github.com/github/docs/pull/8631#issue-699190130


When the DS has a blank list of opmodes

@gwarby
I just experienced the Driver Station presenting a blank list of op modes.  This one time it was fixed entirely with the DS by:

Use the Android apps tab to shutdown the FTC Driver Station app
Use the pull down from the top of the Android screen to turn off DS wifi
Turn back on DS wifi
Re-open the FTC Driver Station app

Maybe we can add a Debug section to the README in order to close this issue.  (Or maybe the drive team can simply read it and delete it.)

Good to know, I'll add it to the README, and keep it in mind for competition when I'm on the field. If it happens again (not in competition), we'll try to find the source.


feat(bgp): logger & enhance nadProvider config

This PR makes the configuration of the BGP NAT GW easier, we're dropping the nadName field in the configmap and using only the provider instead. Name of the NAD is inferred from the name of the provider.
I also added a custom logger to GoBGP so we can change the verbosity of GoBGP on the fly.
Klog verbosity over 3 makes GoBGP go to trace levels. This is useful to see what's going on when peering is not working.

The "make lint" doesn't fix the indentation by running gofumpt (which has been removed), so I had to do it manually. I think the developper experience could be improved by making the Makefile do that automatically.

The "make lint" doesn't fix the indentation by running gofumpt (which has been removed), so I had to do it manually. I think the developper experience could be improved by making the Makefile do that automatically.

The golangci-lint has a --fix option, I will check if it can work for local dev and ci (We still need to failed the ci if lint issue exists).

Thanks @SkalaNetworks for amazing work, i have a quick question. I tried using the last PR you implemented.
After deploying the nat gw with dns configuration it has 4 interfaces, local, external, internal, api-server right?
I couldn't expose eip via bgp, because i read the code there might be some parts that i am missing, can you provide some docs on what was the design?
Thanks.

@ah8ad3 would this help you? https://github.com/kubeovn/docs/pull/186
What exactly did you fail to do? Announce the EIPs?

Also @oilbeater is this PR mergeable? @ah8ad3 you'll need this patch to follow the documentation I sent you, the configmap changed a bit compared to what's currently merged in master

@ah8ad3 would this help you? https://github.com/kubeovn/docs/pull/186
What exactly did you fail to do? Announce the EIPs?

Thanks, I think the most problem with my setup was that the speaker couldn't reach the neighbour and there was no log emphasize that problem, I will try with verbose arg that you provided. But out of curiosity can neighbour be the node speaker? Or should it be a router outside node?

It should be the router outside the node, the same one used by the node speakers. It needs to be on the external network added to it.
There's indeed 4 interfaces:

lo
net1 aka the external network, on which the BGP speaker will connect to your router speaker
eth0 aka the network behind the NAT GW hosting your pods
net2 aka the API network, used by the BGP speaker to poll for EIPs

Please ignore if my ideas are not correct i'm new here.
I have a setup which 1 nat-gw with 1 eip has been created.
The eip is <IP_ADDRESS> and the default ip for nat-gw is <IP_ADDRESS>

When we create the nat-gw, 1 ip will be added to the net1 by default. I don't think that is necessary anymore, am i right?

 142: net1@if143: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc noqueue state UP group default
    link/ether 62:82:11:f9:21:71 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global net1
       valid_lft forever preferred_lft forever
    inet <IP_ADDRESS>/24 scope global secondary net1
       valid_lft forever preferred_lft forever
    inet6 fe80::6082:11ff:fef9:2171/64 scope link proto kernel_ll
       valid_lft forever preferred_lft forever

When net1 in nat-gw has an predefined ip the next hop for the eip bgp is that ip
announcing route with prefix <IP_ADDRESS>/32 and nexthop: <IP_ADDRESS>
But when you create a subnet it will add the routing to <IP_ADDRESS>/24 via <IP_ADDRESS> dev ovn0

So when you ping the <IP_ADDRESS> from host it reaches.
ping <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from <IP_ADDRESS>: icmp_seq=1 ttl=63 time=2.29 ms
64 bytes from <IP_ADDRESS>: icmp_seq=2 ttl=63 time=1.60 ms

And the route goes through
traceroute <IP_ADDRESS>
traceroute to <IP_ADDRESS> (<IP_ADDRESS>), 30 hops max, 60 byte packets
 1  <IP_ADDRESS> (<IP_ADDRESS>)  7.255 ms  7.514 ms  7.845 ms
 2  <IP_ADDRESS> (<IP_ADDRESS>)  6.472 ms  6.452 ms  6.462 ms

So maybe next hop there can be fixed, or we can remove the default ip in nat-gw?

It's still added for legacy purposes, if the NAT GW is not in BGP mode, the bash script adding the EIP to the interface is still called. If your BGP speaker is connected to a daemon like FRR's zebra, the route for the /32s should be appended to your RIB, so obviously adding the IPs to respond to ARP is unnecessary, but it does no harm.
I don't exactly see the problem here, the next hop announced for your EIP is indeed the IP of the NAT GW (the .6), which is correct considering it is gonna do the NAT of the EIP to redirect the traffic to the pod that has a SNAT/DNAT on that EIP. This pod is in the "private" subnet attached to the NAT GW.

One important thing to note that might not be clear in the VPC doc:

The default GW in the subnet is "invisible", and is not replaced by the NAT GW when you put one. The NAT GW should run on a different IP from the default GW of the subnet.
The traffic will always go to the default GW, and then a custom route needs to be appended to reroute everything to the NAT GW
Something like that in the VPC, with .70 being the IP of my NAT GW.

@oilbeater @zhangzujian just pinging you to know if something is holding this PR, it's in line with the documentation already pushed in the main branch (on the repo doc), but the code is not yet merged.

LGTM @zhangzujian do you have any other comment


Lora fine tuning phi-3.5 moe

Hi,
I recently fine-tuned the phi-3.5-moe-instruct model and phi-3.5-mini-instruct model using PEFT LORA. It seems the Moe model is performing way worse than 3.5 Mini Are there any specific things that need to be in mind during LORA fine-tuning with a mixture of expert models? And also during fine-tuning for Moe the validation loss is showing as No Log

Can you show me training result and hyperparameter? Did you fine tune using UNSLOTH?

sorry, there is no unsloth support for phi-3.5-moe-instruct model. However, below are the hyper parameters:
"base_model": "microsoft/Phi-3.5-MoE-instruct",
"max_seq_length": 4096,
"lora_config":
{
    "rank": 32,
    "alpha": 32,
    "task_type": "CAUSAL_LM",
    "target_modules": ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj",], #"all-linear",
    "rslora": True,
    "bias": "lora_only"
},

"quantization_config":
{
    "load_in_4bit": False,
    "bnb_4bit_quant_type": "nf4",
    "bnb_4bit_use_double_quant": True
},

"training_arguments":
{
    "logging_dir": f"logs/{get_iter_name(__file__)}/",
    "output_dir":f"models/{get_iter_name(__file__)}/",
    "evaluation_strategy": "steps",
    "save_strategy": "steps",
    "logging_strategy": "steps",
    "learning_rate": 2e-4,
    "weight_decay": 0.1,
    "logging_steps": 5,
    "eval_steps": 10,
    "save_steps": 10,
    "eval_delay": 100,
    "warmup_steps": 0,
    "save_total_limit": 5,

    "optim": "adamw_torch_fused",
    "per_device_train_batch_size": 2*2*2*2,
    "per_device_eval_batch_size": 2*2*2*2,
    "gradient_accumulation_steps": 4*2*2,
    "eval_accumulation_steps": 4*2*2,
    "gradient_checkpointing": True,

    "adam_beta1": 0.9,
    "adam_beta2": 0.95,
    "adam_epsilon": 1e-8,
    "max_grad_norm": 1.0,
    "lr_scheduler_type": 'cosine',
    "num_train_epochs": 1,
    "continue_from_checkpoint": True,

    "fp16": False,
    "fp16_full_eval": False,

    "bf16": True,
    "bf16_full_eval": True,
},

phi-3.5-mini-instruct model have o_proj and qkv_proj so why are you adding ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj",] in targeted modules?  see the layers in below image and see what are you targetting

I am not using phi-3.5-mini I am using phi-3.5-moe-instruct model

phi-3.5-mini-instruct model have o_proj and qkv_proj so why are you adding ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj",] in targeted modules? see the layers in below image and see what are you targetting. It too doesnot have "gate_proj", "up_proj" , it has gate_up_proj.

and i too fine tuned phi-3.5-mini-instruct model. it is giving validation loss results tooo...

https://github.com/microsoft/Phi-3CookBook/blob/main/code/04.Finetuning/Phi-3-finetune-qlora-python.ipynb
The example in the example scripts in this cookbook appears to be misleading, as it shows
target_modules = ['k_proj', 'q_proj', 'v_proj', 'o_proj', 'gate_proj', 'down_proj', 'up_proj'],
which is incorrect based on the model's architecture.

when i fine tune like this only o_proj is adjusted by lora


Code profile page

Should contain toggles for each type of the specified allergens - exporting the choices as booleans to a local storage array

Finished - Aditional design changes can be applied 😁

Finished - Aditional design changes can be applied 😁


Hot get get primary instead of gray color

Describe the bug
All my elements contain the gray flowbite color, how can I switch globally to primary?
Reproduction
All my elements contain the gray flowbite color, how can I switch globally to primary?
Flowbite version and System Info
last version

You need to overwrite class for each component if the component class has gray.


Median distance driven per day and Median kWh used per day remain 0

Describe the bug
Median distance driven per day and Median kWh used per day remain 0(zero). Have driven close to 2K miles as shown below in past 16 days
Expected behavior
I was expecting to see some number based on number of days and distance driven instead of zero
How to reproduce it (as minimally and precisely as possible):
Check Drive Stats to see missing calculations as shown in attached screenshot
Relevant entries from the logs
Likely grafana related
Screenshots

Environment

TeslaMate version: 1.24.0
Type of installation: Docker
OS TeslaMate is installed on: Raspberry Pi4B
User OS & Browser: Safari iPadOS
Others:

Edit
Spelling correction

I don't have this issue with Drive Details on the same version but I do have it with Charge Details for what I assume is Energy Added where it instead shows N/A:

I can see that the Energy Added stat is populating by TeslaMate because I can see the value in Home Assistant via MQTT

@mattenz - I checked mine and find same result as yours. Even Drive Details show ‘N/A’

Th drive and charge details dashboards are designed to work with exactly one drive/charge identified by the drive_id/charge_id handed over in the URL when you open the dashboard by clicking on a drive/charge on the Drives/Charges dashboard.
Regarding the original question: the median distance takes days without any activity into account too. Is it possible that you have not driven the car most days?

Thanks @adriankumpf for your response and explanation about Details. For Drive Stats, I checked for this month where I had many drives, this year and last year as I stated using Teslamate as of May 5, 2020. Snapshots attached where each of them show 0(zero) for  median distance & kWh.

Can you check your data for the days where the driven distance is 0?
This is the same database query is used in the dashboard. It will show all days since 2021-01-01.
docker-compose exec -T database psql -U teslamate << .
WITH since as (
	SELECT date FROM positions
	WHERE car_id = 1
	ORDER BY date ASC
	LIMIT 1
),
actual AS (
	SELECT
		date_trunc('day', start_date)::date AS date,
		sum(distance) AS distance
	FROM drives
	WHERE car_id = 1
	GROUP BY 1
),
base_line AS (
	SELECT date_trunc('day', dd)::date AS date
  FROM generate_series((select date from since), NOW(), '1 day'::interval) dd
),
combined as (
  SELECT base_line.date, COALESCE(actual.distance, 0) as distance
  FROM base_line
  LEFT JOIN actual ON actual.date = base_line.date
)
SELECT *
FROM combined
WHERE date > '2021-01-01'
ORDER BY date ASC;
.

Here’s the output
    date    |       distance
------------+----------------------
 2021-01-02 |                    0
 2021-01-03 |                    0
 2021-01-04 |                    0
 2021-01-05 |                    0
 2021-01-06 |                    0
 2021-01-07 |                    0
 2021-01-08 |                    0
 2021-01-09 |                    0
 2021-01-10 |                    0
 2021-01-11 |      72.035869000003
 2021-01-12 |    35.92497899999944
 2021-01-13 |<PHONE_NUMBER>9999754
 2021-01-14 |                    0
 2021-01-15 |                    0
 2021-01-16 |                    0
 2021-01-17 |                    0
 2021-01-18 |                    0
 2021-01-19 |                    0
 2021-01-20 |                    0
 2021-01-21 |                    0
 2021-01-22 |                    0
 2021-01-23 |                    0
 2021-01-24 |                    0
 2021-01-25 |                    0
 2021-01-26 |                    0
 2021-01-27 |                    0
 2021-01-28 |                    0
 2021-01-29 |<PHONE_NUMBER>0000124
 2021-01-30 |   47.080159999997704
 2021-01-31 |     59.9330829999999
 2021-02-01 |                    0
 2021-02-02 |                    0
 2021-02-03 |                    0
 2021-02-04 |                    0
 2021-02-05 |                    0
 2021-02-06 |                    0
 2021-02-07 |                    0
 2021-02-08 |                    0
 2021-02-09 |                    0
 2021-02-10 |                    0
 2021-02-11 |                    0
 2021-02-12 |   49.032602999996016
 2021-02-13 |    28.75694300000032
 2021-02-14 |    52.68967100000009
 2021-02-15 |<PHONE_NUMBER>9999305
 2021-02-16 |     70.9095050000069
 2021-02-17 |      74.677466000001
 2021-02-18 |                    0
 2021-02-19 |                    0
 2021-02-20 |                    0
 2021-02-21 |                    0
 2021-02-22 |                    0
 2021-02-23 |                    0
 2021-02-24 |                    0
 2021-02-25 |                    0
 2021-02-26 |                    0
 2021-02-27 |                    0
 2021-02-28 |                    0
 2021-03-01 |                    0
 2021-03-02 |                    0
 2021-03-03 |                    0
 2021-03-04 |                    0
 2021-03-05 |   18.397580000000744
 2021-03-06 |     66.4270940000024
 2021-03-07 |     73.4400029999997
 2021-03-08 |                    0
 2021-03-09 |    54.99252999999953
 2021-03-10 |                    0
 2021-03-11 |                    0
 2021-03-12 |                    0
 2021-03-13 |                    0
 2021-03-14 |                    0
 2021-03-15 |                    0
 2021-03-16 |                    0
 2021-03-17 |                    0
 2021-03-18 |                    0
 2021-03-19 |                    0
 2021-03-20 |                    0
 2021-03-21 |   40.836967999999615
 2021-03-22 |                    0
 2021-03-23 |                    0
 2021-03-24 |                    0
 2021-03-25 |                    0
 2021-03-26 |                    0
 2021-03-27 |                    0
 2021-03-28 |                    0
 2021-03-29 |                    0
 2021-03-30 |                    0
 2021-03-31 |                    0
 2021-04-01 |                    0
 2021-04-02 |                    0
 2021-04-03 |                    0
 2021-04-04 |                    0
 2021-04-05 |                    0
 2021-04-06 |                    0
 2021-04-07 |                    0
 2021-04-08 |                    0
 2021-04-09 |                    0
 2021-04-10 |                    0
 2021-04-11 |                    0
 2021-04-12 |                    0
 2021-04-13 |    19.47052600000461
 2021-04-14 |   28.112001000001328
 2021-04-15 |     60.1123220000045
 2021-04-16 |      30.408445999994
 2021-04-17 |   18.531577999998262
 2021-04-18 |                    0
 2021-04-19 |  0.12053199999718345
 2021-04-20 |    36.09739300000001
 2021-04-21 |    21.63836100000117
 2021-04-22 |    82.07543600000281
 2021-04-23 |     85.2224619999979
 2021-04-24 |     81.7167510000072
 2021-04-25 |     32.2565680000007
 2021-04-26 |    41.06691900000442
 2021-04-27 |    94.41228599999886
 2021-04-28 |    57.43686300000263
 2021-04-29 |    43.66150500000367
 2021-04-30 | 0.015393000001495238
 2021-05-01 |    2.297998000001826
 2021-05-02 |                    0
 2021-05-03 |                    0
 2021-05-04 |                    0
 2021-05-05 |   27.523002000005363
 2021-05-06 |                    0
 2021-05-07 |                    0
 2021-05-08 |                    0
 2021-05-09 |                    0
 2021-05-10 |                    0
 2021-05-11 |                    0
 2021-05-12 |                    0
 2021-05-13 |                    0
 2021-05-14 |                    0
 2021-05-15 |   22.970470000003843
 2021-05-16 |                    0
 2021-05-17 |                    0
 2021-05-18 |                    0
 2021-05-19 |    41.71439399999872
 2021-05-20 |    36.84090200000355
 2021-05-21 |                    0
 2021-05-22 |                    0
 2021-05-23 |                    0
 2021-05-24 |                    0
 2021-05-25 |                    0
 2021-05-26 |                    0
 2021-05-27 |                    0
 2021-05-28 |                    0
 2021-05-29 |                    0
 2021-05-30 |    43.85778799999753
 2021-05-31 |<PHONE_NUMBER>9999426
 2021-06-01 |   23.474001000002318
 2021-06-02 |    44.98468399999547
 2021-06-03 |   22.203053999997792
 2021-06-04 |    48.66121400000702
 2021-06-05 |    38.21419199999946
 2021-06-06 |   18.898001000001386
 2021-06-07 |                    0
 2021-06-08 |                    0
 2021-06-09 |                    0
 2021-06-10 |                    0
 2021-06-11 |   3.0269310000003316
 2021-06-12 |                    0
 2021-06-13 |                    0
 2021-06-14 |                    0
 2021-06-15 |                    0
 2021-06-16 |                    0
 2021-06-17 |                    0
 2021-06-18 |    5.041915000001609
 2021-06-19 |   13.334330000005139
 2021-06-20 |   14.780084999998508
 2021-06-21 |                    0
 2021-06-22 |   6.7241700000013225
 2021-06-23 |                    0
 2021-06-24 |                    0
 2021-06-25 |                    0
 2021-06-26 |                    0
 2021-06-27 |                    0
 2021-06-28 |                    0
 2021-06-29 |   30.154041000001598
 2021-06-30 |                    0
 2021-07-01 |                    0
 2021-07-02 |                    0
 2021-07-03 |                    0
 2021-07-04 |    83.14311499999894
 2021-07-05 |<PHONE_NUMBER>0000773
 2021-07-06 |    70.18239499999618
 2021-07-07 |    74.97043000000122
 2021-07-08 |   0.1107620000038878
 2021-07-09 |    21.32686899998953
 2021-07-10 |   14.695862000000488
 2021-07-11 |<PHONE_NUMBER>9998662
 2021-07-12 |<PHONE_NUMBER>0000678
 2021-07-13 |    15.52697199999966
 2021-07-14 |                    0
 2021-07-15 |                    0
 2021-07-16 |<PHONE_NUMBER>9999536
 2021-07-17 |<PHONE_NUMBER>0000543
 2021-07-18 |<PHONE_NUMBER>999993
 2021-07-19 |                    0
 2021-07-20 |                    0
 2021-07-21 |                    0
 2021-07-22 |                    0
 2021-07-23 |                    0
 2021-07-24 |   22.270000999997137
 2021-07-25 |<PHONE_NUMBER>000053
 2021-07-26 |     77.0822909999988
 2021-07-27 |                    0
 2021-07-28 |      18.922000999999
 2021-07-29 |                    0
 2021-07-30 |   38.064263000007486
 2021-07-31 |    63.39625999999407
 2021-08-01 |                    0
 2021-08-02 |                    0
 2021-08-03 |                    0
 2021-08-04 |                    0
 2021-08-05 |                    0
 2021-08-06 |                    0
 2021-08-07 |   19.264255000001867
 2021-08-08 |   30.568710999999894
 2021-08-09 |                    0
 2021-08-10 |                    0
 2021-08-11 |                    0
 2021-08-12 |                    0
 2021-08-13 |                    0
 2021-08-14 |   14.146684999999707
 2021-08-15 |                    0
 2021-08-16 |                    0
 2021-08-17 |                    0
 2021-08-18 |   19.850642000004882
 2021-08-19 |                    0
 2021-08-20 |                    0
 2021-08-21 |                    0
 2021-08-22 |                    0
 2021-08-23 |                    0
 2021-08-24 |                    0
 2021-08-25 |                    0
 2021-08-26 |                    0
 2021-08-27 |                    0
 2021-08-28 |    5.675001000003249
 2021-08-29 |    45.94636499999615
 2021-08-30 |    85.55884100000549
 2021-08-31 |                    0
 2021-09-01 |                    0
 2021-09-02 |                    0
 2021-09-03 |   1140.8825730000171
 2021-09-04 |                    0
 2021-09-05 |<PHONE_NUMBER>9998424
 2021-09-06 |<PHONE_NUMBER>999996
 2021-09-07 |<PHONE_NUMBER>00004
 2021-09-08 |                    0
 2021-09-09 |                    0
 2021-09-10 |    27.77947000000131
 2021-09-11 |   28.171000000002095
 2021-09-12 |    38.18595700000151
 2021-09-13 |                    0
 2021-09-14 |                    0
 2021-09-15 |                    0
 2021-09-16 |    69.84098799999629
 2021-09-17 |                    0
 2021-09-18 |   22.959287999998196
 2021-09-19 |                    0
 2021-09-20 |   17.816575000004377
 2021-09-21 |                    0
(263 rows)

174 out of 263 days the distance is zero 0. That's why the median distance driven is 0 mi :)

I am fine to close this however shouldn’t there be data for this month where number of drives and miles are significant for this year. I would have hoped to see some details for this month if not for year owing to drives/miles this month. Is there a threshold of how many days must car be driven to have this data populated? If that is know I will take it out every week or other required parameter to keep this filled. Just a thought if you happen to know that finite number.
Thanks


CMP+CRMF: Add data structures for CMPv3 and OSSL_CRMF_ATTRIBUTETYPEANDVALUE

This adds datatypes and related getter/setter functions supporting the upcoming CMP-Updates RFC (see https://datatracker.ietf.org/doc/html/draft-ietf-lamps-cmp-updates), which defines extensions to CMPv2 and the new CMP version 3.
This PR is a little bulky (including the new docs) but its contents are pretty shallow and schematic.

[x] documentation is added or updated

@kaduk good point to discuss the timeline of such PRs.
This and related PRs aim at implementing CMPv3 as described in https://datatracker.ietf.org/doc/html/draft-ietf-lamps-cmp-updates. This IETF draft has already passed LAMPS WG last call and is currently under IANA review.
It is on the agenda of the IESG telechat on June 2nd, and we expect IESG approval soon thereafter.
Already now, there are no more technical changes to be expected.
For me being both co-author and implementer it was very helpful to do large parts of the OpenSSL-based implementation already when we still had the chance to adapt the specification in case the implementation work brings up problems or ambiguities in details of the spec. Since meanwhile the technical specification is complete, I believe now is good time to start submitting the code such that time pressure before the next OpenSSL feature release (v3.1) can be avoided.
A complication is that the PRs contributing to the CMPv3 implementation (most of which are not yet available) are not independent - there are certain dependencies, in particular, most of them build on the data structures being defined here in this PR. Therefore, it would be very helpful for submitting them if this PR gets merged rather soon.
I agree that merging of CMPv3 feature branches can/should wait until the final approval of CMP-Updates has been done, which we expect for June.
Yet it is pretty likely that the release/publication of the document will be delayed for quite some time just because other documents that it references are not yet released.
Therefore in my view it would be nice if we do not have to wait until CMP-Updates is ultimately published.
In particular, for the PR dependency reason given above, I suggest merging this PR (assuming of course that it will be approved by then) as soon as CMP-Updates got the IESG approval.

Thanks @t8m for your comments.
I've meanwhile handled all of them.

Can someone please do the 2nd review?

Well outside my comfort zone. I'd prefer someone more knowledgeable about this to review this. If nobody takes up the challenge, I'll have a stab next week (time permitting).

I have some experience with CMP, but am unlikely to have time in the next week (I start a new role for $dayjob on monday).
Skimming, it seems that this is mostly just about the data types, so a willingness to look at the ASN.1 is the main requirement.

Thank you @paulidale and @kaduk for your comments and your willingness to review this.
It's really "just" some typical ASN.1 structures (where I'm not an expert myself, but simply learned from existing models)
and directly related straightforward C datatype declarations with their getter and setter functions.
The specs of the implemented ASN.1 structures are given as comments in crypto/cmp/cmp_local.h,
such that no particular current (CMP+CRMF) domain knowledge should be needed.
I repeat them here for convenience from Appendix A.1 of the spec, removing comments in that ASN.1 module that are not important here:
-- CertReqTemplateContent, id-regCtrl-algId, id-regCtrl-algId, and
   -- id-regCtrl-rsaKeyLen were added in CMP Updates [thisRFC]

   CertReqTemplateContent ::= SEQUENCE {
      certTemplate           CertTemplate,
      keySpec                Controls OPTIONAL
      -- Controls  ::= SEQUENCE SIZE (1..MAX) OF AttributeTypeAndValue
      -- as specified in CRMF ([RFC4211](https://datatracker.ietf.org/doc/html/rfc4211))
      }

   id-regCtrl-algId OBJECT IDENTIFIER ::= { id-regCtrl 11 }
      AlgIdCtrl ::= AlgorithmIdentifier

   id-regCtrl-rsaKeyLen OBJECT IDENTIFIER ::= { id-regCtrl 12 }
      RsaKeyLenCtrl ::= INTEGER (1..MAX)

   -- RootCaKeyUpdateContent, CRLSource, and CRLStatus were added in
   -- CMP Updates [thisRFC]

   RootCaKeyUpdateContent ::= SEQUENCE {
      newWithNew       CMPCertificate,
      newWithOld   [0] CMPCertificate OPTIONAL,
      oldWithNew   [1] CMPCertificate OPTIONAL
      }

   CRLSource ::= CHOICE {
      dpn          [0] DistributionPointName,
      issuer       [1] GeneralNames }

   CRLStatus ::= SEQUENCE {

   InfoTypeAndValue ::= SEQUENCE {
       infoType               OBJECT IDENTIFIER,
       infoValue              ANY DEFINED BY infoType  OPTIONAL
   }
   -- Example InfoTypeAndValue contents include, but are not limited
   -- to, the following (un-comment in this ASN.1 module and use as
   -- appropriate for a given environment):

   --   id-it-caCerts          OBJECT IDENTIFIER ::= {id-it 17}
   --      CaCertsValue            ::= SEQUENCE SIZE (1..MAX) OF CMPCertificate

   --   id-it-rootCaKeyUpdate  OBJECT IDENTIFIER ::= {id-it 18}
   --      RootCaKeyUpdateValue    ::= RootCaKeyUpdateContent

   --   id-it-certReqTemplate  OBJECT IDENTIFIER ::= {id-it 19}
   --      CertReqTemplateValue    ::= CertReqTemplateContent

   --   id-it-rootCaCert       OBJECT IDENTIFIER ::= {id-it 20}
   --      RootCaCertValue         ::= CMPCertificate

   --   id-it-certProfile      OBJECT IDENTIFIER ::= {id-it 21}
   --      CertProfileValue        ::= SEQUENCE SIZE (1..MAX) OF UTF8String

   --   id-it-crlStatusList    OBJECT IDENTIFIER ::= {id-it TBD1}
   --   CRLStatusListValue         ::= SEQUENCE SIZE (1..MAX) OF CRLStatus

   --   id-it-crls             OBJECT IDENTIFIER ::= {id-it TBD2}
   --   CRLsValue                  ::= SEQUENCE SIZE (1..MAX) OF CertificateList

@paulidale and @kaduk, three weeks ago I provided more detail that is hopefully of help for reviewing this.
Could either of you please do the 2nd review by next week?

It is perhaps worth asking whether this change should wait to be merged (but nt necessarily to be reviewed/approved) until the final RFC is published. It does appear to implement new ASN.1 types that are defined by the currently-still-a-draft document, but on a cursory look those appear to be contained as internal to libcrypto (e.g., in cmp_local.h). So I'm not sure there's a "clearly obvious" answer one way or the other.

Yesterday the draft got its IESG approval, so the technical contents of CMP Updates (defining CMPv3) are officially accepted.

@openssl/committers, can someone please do the 2nd review?
This is blocking further CMPv3 contributions.

Yesterday the draft got its IESG approval, so the technical contents of CMP Updates (defining CMPv3) are officially accepted.

Historical project practice is to wait for the actual RFC; just IESG Approval is not quite good enough.
Also, I am sorry I have not been able to review much lately -- I've taken a new role within Akamai and getting up to speed with it does not leave much time for OpenSSL work at the moment.

@mattcaswell @levitte?

I learned today that the current BouncyCastle release 1.71 (for Java) already supports the upcoming CMP RFCs,
i.e., the extensions to CMP v2 General Messages and polling and the new version v3 (mainly for central key generation).

This PR is in a state where it requires action by @openssl/committers but the last update was 30 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 61 days ago

Rebased to fix trivial merge conflct.
Ping for 2nd review.

This PR is in a state where it requires action by @openssl/committers but the last update was 30 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 61 days ago

Rebased to fix merge conflicts.
Meanwhile it turned out that some helper functions require some adaptations for usability
and four more such functions are needed:
OSSL_CMP_ATAV_new_algId
OSSL_CMP_ATAV_get0_algId
OSSL_CMP_ATAV_new_rsaKeyLen
OSSL_CMP_ATAV_get_rsaKeyLen

which also eliminate the need to export OSSL_CMP_ATAV_dup .

This PR is in a state where it requires action by @openssl/committers but the last update was 30 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 61 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 92 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 123 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 154 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 185 days ago

Carved out the certProfile feature to #21281.

This PR is in a state where it requires action by @openssl/committers but the last update was 30 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 61 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 92 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 123 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 154 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 185 days ago

This PR is in a state where it requires action by @openssl/committers but the last update was 216 days ago

I'm going to split this up topic-wise, which will likely make it better reviewable.

Closing this PR because meanwhile it has been and is being superseded by topic-wise PRs:

#19231
#21129
#23768
and one more TBD on requesting a certificate request template, as detailed in RFC 9483 section 4.3.3