Create generalized in-memory cache for attributes

https://github.com/mozilla-prototypes/sync-storage-prototype/issues/14
Ok, things I know need to be done:

Move EagerCache and Cacheable into a crate further down the stack. Right now they could not be used in querying as they can't be seen below the top level crate.
Tests for get and get_for_entid.

Things I think should probably be done:

Make cacheable a trait defining only add_to_cache and new functions. AttributeCache can then effectively go away and we only need to create an instance of EagerCache of the right type, provide a ValueProvider and store it somewhere.

Things I tried to do but couldn't make work

Providing ValueProvider as a trait object. I know this can be done, but there were problems with Size and lifetimes (storing a reference to a trait object) so I went with the solution I did and figured we can come back to it later if we want to.

Question about generality: you have a generic in there, Key, which presumably is so you can implement caching of paths (e.g., caching a child's parent's name). But the layering you have now means that all of the things in the cache must share a key-type, right? Right now that's attribute, but you couldn't have both attributes and paths in the same map, right?

So, the idea is that we have a generic cache when you can cache anything keyed to anything. Then, we have an AttributeCache that we know needs to store attributes against a entid/value map. So the generic cache becomes a map of maps and the AttributeCache determines what those are. If we wanted to store paths against an entid/value map then we would create another thing to store entid/value maps against paths. 2 caches, one for each type. Different population function, but otherwise the same code. If at a later date we decide we want to store just a map of attributes to entids, or txids to uuids, or whatever, we just create a new population function and use the same generic cache and it all behaves the same way.
The AttributeCache needs to be split into a different place than the EagerCache so they are more obviously different things, but right now I am having problems doing that due to not knowing the best place to put AttributeCache. The population function needs to have access to src/query.rs in the top level crate, but the AttributeCache needs to be available to stuff further down if we want to use it in queries. I thought about just added to the cache from wherever, but then if we want to cache attributes internally then we can't guarantee that it would use the same population function and we could get into a mess.
Maybe I'm overthinking this and I can just replace all of this with a map of maps that we pass around and have the write the same thing over and over again when we want to cache anything elsewhere.

The population function needs to have access to src/query.rs in the top level crate…

Not really! Your population function is, for a given a: Entid:
SELECT e, v FROM datoms WHERE a = ?
ORDER BY e ASC

for non-fulltext, and a similar version for fulltext. I think attribute caching is just the kind of thing that lives where it can be used by the query engine anyway, and the population function must not use the cache…

Maybe another way of phrasing that is: it's okay for this, IMO, to depend on internals, and that should let you cut that tie to query.rs.


🚀 Feature: enable environment variables or appConfig.yaml properties to be referred to from template.yaml files.

🔖 Feature description
In template.yaml I would like to be able to refer to variables that are in appConfig.yaml and/or an environment variable.
🎤 Context
I want to avoid hard coding values, especially api tokens and secrets, into template.yaml files.
✌ Possible Implementation
Similar to template parameters, I was thinking the ${{ env.name }} and ${{ appConfig.name }} format, such as:
-  id: fetchAPISpec
    name: Fetch API yaml from SwaggerHub
    action: fetch:plain:file
    input:
        url: ${{ parameters.url }}
        targetPath: ${{ parameters.target }}
        token: ${{ env.MY_API_TOKEN }}

Or from appConfig:
-  id: fetchAPISpec
    name: Fetch API yaml from SwaggerHub
    action: fetch:plain:file
    input:
        url: ${{ parameters.url }}
        targetPath: ${{ parameters.target }}
        token: ${{ appConfig.myApiToken }}

An custom action is another possible solution, but I don't have details of how that would work. I raised this question on the support discord channel, and a user @drodil answered they had made their own action.
👀 Have you spent some time to check if this feature request has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
No, but I'm happy to collaborate on a PR with someone else

I think that this is probably most related to #9461

Going to close this issue in favour of the one linked previously.

Question, has this already been implemented?

@AnouarSolita not as yet, https://github.com/backstage/backstage/issues/9461 has all of the context in order to fulfil the requirements of this ticket though.


nav bar tabs location

like the bazinga! spellenwinkel structure, shifting everything to the right including the logo in the nav bar, might actually look a bit better than it does currently.

Done


Return a value if a condition is met within .on('json')

First of all, Brilliant module .. thanks for the effort! ... Can you please help me with the issue. I am not able to return a value if a condition is met within .on('json')
    let a = "123", b = "456";

    let answer = csv()
    .fromFile(csvFilePath)
    .on('json',(jsonObj) => {
      if(a == jsonObj.a && b == jsonObj.b) {
        return jsonObj.c; // assuming condition is met, 'answer' doesn't get the value of 'jsonObj.c'
      }
    })
    .on('done',(error) => {
      console.log('end');
    })

    console.log(answer) // should contain the value of 'jsonObj.c'

I have tried using async/await but its no use.

This is a JS question rather than the lib


Add Google Analytics

Migrated from GitLab: https://gitlab.com/meltano/hub/-/issues/26
Originally created by @DouweM on 2021-05-07 14:44:26

View 3 previous comments from the original issue on GitLab


Add 'wheel' package to the list of prerequisites

Saw the following additional requirement when installing requirements.txt.
Using legacy 'setup.py install' for vsphere-automation-sdk, since package 'wheel' is not installed.
[admin@ansible ansible]$ pip3 install -r ~/.ansible/collections/ansible_collections/community/vmware/requirements.txt
Defaulting to user installation because normal site-packages is not writeable
Collecting git+https://github.com/vmware/vsphere-automation-sdk-python.git (from -r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2))
Cloning https://github.com/vmware/vsphere-automation-sdk-python.git to /tmp/pip-req-build-wp7f_9x_
Requirement already satisfied (use --upgrade to upgrade): vsphere-automation-sdk==1.86.0 from git+https://github.com/vmware/vsphere-automation-sdk-python.git in /home/admin/.local/lib/python3.9/site-packages (from -r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2))
Requirement already satisfied: pyVmomi>=6.7 in /usr/local/lib/python3.9/site-packages (from -r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 1)) (<IP_ADDRESS>.1)
Requirement already satisfied: lxml>=4.3.0 in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (5.1.0)
Requirement already satisfied: vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.44.0)
Requirement already satisfied: vcenter-bindings@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vcenter-bindings/vcenter_bindings-4.2.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vcenter-bindings/vcenter_bindings-4.2.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (4.2.0)
Requirement already satisfied: vapi-common-client@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-common-client/vapi_common_client-2.44.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-common-client/vapi_common_client-2.44.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.44.0)
Requirement already satisfied: vmwarecloud-aws@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vmwarecloud-aws/vmwarecloud_aws-1.64.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vmwarecloud-aws/vmwarecloud_aws-1.64.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (1.64.0)
Requirement already satisfied: nsx-python-sdk@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/nsx-python-sdk/nsx_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/nsx-python-sdk/nsx_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (<IP_ADDRESS>.0)
Requirement already satisfied: nsx-policy-python-sdk@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/nsx-policy-python-sdk/nsx_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/nsx-policy-python-sdk/nsx_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (<IP_ADDRESS>.0)
Requirement already satisfied: nsx-vmc-policy-python-sdk@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/nsx-vmc-policy-python-sdk/nsx_vmc_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/nsx-vmc-policy-python-sdk/nsx_vmc_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (<IP_ADDRESS>.0)
Requirement already satisfied: nsx-vmc-aws-integration-python-sdk@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/nsx-vmc-aws-integration-python-sdk/nsx_vmc_aws_integration_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/nsx-vmc-aws-integration-python-sdk/nsx_vmc_aws_integration_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (<IP_ADDRESS>.0)
Requirement already satisfied: vmwarecloud-draas@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vmwarecloud-draas/vmwarecloud_draas-1.23.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vmwarecloud-draas/vmwarecloud_draas-1.23.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (1.23.0)
Requirement already satisfied: six>=1.7.3 in /usr/local/lib/python3.9/site-packages (from pyVmomi>=6.7->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 1)) (1.16.0)
Requirement already satisfied: pyOpenSSL in /home/admin/.local/lib/python3.9/site-packages (from vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (24.0.0)
Requirement already satisfied: requests<3.0.0,>=2.0.0 in /usr/local/lib/python3.9/site-packages (from vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.31.0)
Requirement already satisfied: setuptools in /usr/lib/python3.9/site-packages (from vcenter-bindings@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vcenter-bindings/vcenter_bindings-4.2.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (50.3.2)
Requirement already satisfied: cryptography<43,>=41.0.5 in /home/admin/.local/lib/python3.9/site-packages (from pyOpenSSL->vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (42.0.1)
Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.9/site-packages (from requests<3.0.0,>=2.0.0->vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (3.6)
Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib64/python3.9/site-packages (from requests<3.0.0,>=2.0.0->vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (3.3.2)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.9/site-packages (from requests<3.0.0,>=2.0.0->vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2023.11.17)
Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.9/site-packages (from requests<3.0.0,>=2.0.0->vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.1.0)
Requirement already satisfied: cffi>=1.12; platform_python_implementation != "PyPy" in /home/admin/.local/lib/python3.9/site-packages (from cryptography<43,>=41.0.5->pyOpenSSL->vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (1.16.0)
Requirement already satisfied: pycparser in /home/admin/.local/lib/python3.9/site-packages (from cffi>=1.12; platform_python_implementation != "PyPy"->cryptography<43,>=41.0.5->pyOpenSSL->vapi-runtime@ file://localhost//tmp/pip-req-build-wp7f_9x_/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.21)
Using legacy 'setup.py install' for vsphere-automation-sdk, since package 'wheel' is not installed.
[admin@ansible ansible]$
[admin@ansible ansible]$ pip3 install wheel
Defaulting to user installation because normal site-packages is not writeable
Collecting wheel
Downloading wheel-0.42.0-py3-none-any.whl (65 kB)
|████████████████████████████████| 65 kB 3.7 MB/s
Installing collected packages: wheel
Successfully installed wheel-0.42.0
[admin@ansible ansible]$ pip3 install -r ~/.ansible/collections/ansible_collections/community/vmware/requirements.txt
Defaulting to user installation because normal site-packages is not writeable
Collecting git+https://github.com/vmware/vsphere-automation-sdk-python.git (from -r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2))
Cloning https://github.com/vmware/vsphere-automation-sdk-python.git to /tmp/pip-req-build-kggtof2w
Requirement already satisfied (use --upgrade to upgrade): vsphere-automation-sdk==1.86.0 from git+https://github.com/vmware/vsphere-automation-sdk-python.git in /home/admin/.local/lib/python3.9/site-packages (from -r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2))
Requirement already satisfied: pyVmomi>=6.7 in /usr/local/lib/python3.9/site-packages (from -r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 1)) (<IP_ADDRESS>.1)
Requirement already satisfied: lxml>=4.3.0 in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (5.1.0)
Requirement already satisfied: vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.44.0)
Requirement already satisfied: vcenter-bindings@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vcenter-bindings/vcenter_bindings-4.2.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/vcenter-bindings/vcenter_bindings-4.2.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (4.2.0)
Requirement already satisfied: vapi-common-client@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-common-client/vapi_common_client-2.44.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-common-client/vapi_common_client-2.44.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.44.0)
Requirement already satisfied: vmwarecloud-aws@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vmwarecloud-aws/vmwarecloud_aws-1.64.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/vmwarecloud-aws/vmwarecloud_aws-1.64.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (1.64.0)
Requirement already satisfied: nsx-python-sdk@ file://localhost//tmp/pip-req-build-kggtof2w/lib/nsx-python-sdk/nsx_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/nsx-python-sdk/nsx_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (<IP_ADDRESS>.0)
Requirement already satisfied: nsx-policy-python-sdk@ file://localhost//tmp/pip-req-build-kggtof2w/lib/nsx-policy-python-sdk/nsx_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/nsx-policy-python-sdk/nsx_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (<IP_ADDRESS>.0)
Requirement already satisfied: nsx-vmc-policy-python-sdk@ file://localhost//tmp/pip-req-build-kggtof2w/lib/nsx-vmc-policy-python-sdk/nsx_vmc_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/nsx-vmc-policy-python-sdk/nsx_vmc_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (<IP_ADDRESS>.0)
Requirement already satisfied: nsx-vmc-aws-integration-python-sdk@ file://localhost//tmp/pip-req-build-kggtof2w/lib/nsx-vmc-aws-integration-python-sdk/nsx_vmc_aws_integration_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/nsx-vmc-aws-integration-python-sdk/nsx_vmc_aws_integration_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (<IP_ADDRESS>.0)
Requirement already satisfied: vmwarecloud-draas@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vmwarecloud-draas/vmwarecloud_draas-1.23.0-py2.py3-none-any.whl from file://localhost//tmp/pip-req-build-kggtof2w/lib/vmwarecloud-draas/vmwarecloud_draas-1.23.0-py2.py3-none-any.whl in /home/admin/.local/lib/python3.9/site-packages (from vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (1.23.0)
Requirement already satisfied: six>=1.7.3 in /usr/local/lib/python3.9/site-packages (from pyVmomi>=6.7->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 1)) (1.16.0)
Requirement already satisfied: pyOpenSSL in /home/admin/.local/lib/python3.9/site-packages (from vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (24.0.0)
Requirement already satisfied: requests<3.0.0,>=2.0.0 in /usr/local/lib/python3.9/site-packages (from vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.31.0)
Requirement already satisfied: setuptools in /usr/lib/python3.9/site-packages (from vcenter-bindings@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vcenter-bindings/vcenter_bindings-4.2.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (50.3.2)
Requirement already satisfied: cryptography<43,>=41.0.5 in /home/admin/.local/lib/python3.9/site-packages (from pyOpenSSL->vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (42.0.1)
Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.9/site-packages (from requests<3.0.0,>=2.0.0->vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.1.0)
Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.9/site-packages (from requests<3.0.0,>=2.0.0->vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (3.6)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.9/site-packages (from requests<3.0.0,>=2.0.0->vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2023.11.17)
Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib64/python3.9/site-packages (from requests<3.0.0,>=2.0.0->vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (3.3.2)
Requirement already satisfied: cffi>=1.12; platform_python_implementation != "PyPy" in /home/admin/.local/lib/python3.9/site-packages (from cryptography<43,>=41.0.5->pyOpenSSL->vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (1.16.0)
Requirement already satisfied: pycparser in /home/admin/.local/lib/python3.9/site-packages (from cffi>=1.12; platform_python_implementation != "PyPy"->cryptography<43,>=41.0.5->pyOpenSSL->vapi-runtime@ file://localhost//tmp/pip-req-build-kggtof2w/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /home/admin/.ansible/collections/ansible_collections/community/vmware/requirements.txt (line 2)) (2.21)
Building wheels for collected packages: vsphere-automation-sdk
Building wheel for vsphere-automation-sdk (setup.py) ... done
Created wheel for vsphere-automation-sdk: filename=vsphere_automation_sdk-1.86.0-py3-none-any.whl size=2339 sha256=355dbca20fa9435ec987c1b851597df29662312d196557f30158b6b47d0e8627
Stored in directory: /tmp/pip-ephem-wheel-cache-lg7qu1tw/wheels/95/78/cd/cca5ecd9a3fe87775b445b0a2e5c5a51e5f5f032625c0f7c52
Successfully built vsphere-automation-sdk

Updated the prerequisites with the "pip3 install wheel" command
Thanks @netapp-jyhshing


Automatic 1111 backend

Another backend could be Automatic 1111. Its very easy to install even on Windows Systems and enjoys a large development comunity. Also has an api to generate images.
https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/API

Uhm, this is a front-end for stable diffusion (discord bot)

Uhm, this is a front-end for stable diffusion (discord bot)

Automatic1111 works as a REST server with a gradio frontend IIRC. So the bot would simply use the JSON REST API from running the automatic1111 client.


Cookie leaderboard

A /cookieleaderboard <global | guild> so that a local and a global leaderboard would be neat! Or just a standard local leaderboard would also work, totally up to you

Nice, can you assign it to me?

Hi @lk067fn!
I was just wondering if you were still interested in completing this issue. No worries if not and ill unassign it!


the loss is stuck at around 0.69 during training the syncnet

When I used the dataset collected by myself to train the syncnet of wav2lip, the loss tended to be around 0.69. Have you ever had the same problem? Hope you can help me. Thanks!

yes, I've encountered this problem. You should download avspecch dataset to discover the structure.
But I'll suggest for you some tips:

your dataset needs to be various (multiple speakers)
max length of the video is 10s (a speaker has multiple videos)
change fps of video to 25fps

@Rodger-Huang Have you solved this problem? I met it, too.


Character Name Limit

Added a config for character name limits between 1 character and 128 characters and just added the actual limit

Can't merge because doesn't use the language system, if you fix that i'll merge

There we go
I advise someone look at my spanish translations as I am not totally sure if the desc is right. I think the name is good.


Bootstrap write ignores instance ID when creating instance

During a bootstrap, an object instance may be written multiple times. The first time it is written (if it doesn't exist), an instance is created with the lowest available ID. This ignores the ID sent by the server. If they don't match, the next write to that instance ID will either create another instance or write to a different instance if one was created between the writes with the same ID.
bootstrap_handleCommand() calls object_createInstance(), which calls the create function with a new ID.

There is indeed a bug as the Instance ID sent by the server must not be ignored. I'll take care of this.
Thanks for spotting this issue.

Sorry it went so long with no feedback. I was travelling and didn't have a chance to look at it. Looks good.


When Building Tests I get Custom build for 'bindmonitor.c;bpf.c;bpf_call.c;droppacket.c;divide_by_zero.c;droppacket_unsafe.c' exited with code 9009.

Build started...
1>------ Build started: Project: sample, Configuration: Debug x64 ------
1>Performing Custom Build Tools
1>'clang' is not recognized as an internal or external command,
1>operable program or batch file.
1>Performing Custom Build Tools
1>'clang' is not recognized as an internal or external command,
1>operable program or batch file.
1>Performing Custom Build Tools
1>'clang' is not recognized as an internal or external command,
1>operable program or batch file.
1>Performing Custom Build Tools
1>'clang' is not recognized as an internal or external command,
1>operable program or batch file.
1>Performing Custom Build Tools
1>'clang' is not recognized as an internal or external command,
1>operable program or batch file.
1>Performing Custom Build Tools
1>'clang' is not recognized as an internal or external command,
1>operable program or batch file.
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(241,5): error MSB8066: Custom build for 'bindmonitor.c;bpf.c;bpf_call.c;droppacket.c;divide_by_zero.c;droppacket_unsafe.c' exited with code 9009.
1>Done building project "sample.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 19 up-to-date, 0 skipped ==========

Thanks for the feedback. Can you please confirm that clang is installed and in the path?

@TylerJaacks please check to make sure you have all the prerequisites installed that are listed in the Getting Started Guide, and that they are in your PATH.

@TylerJaacks we have been unable to repro this.  If you can get a repro, please reopen this issue and provide any more info you can.


Deleting useless lines

Deleting lines from script.js for stores. Doesn't add anything just shortens the code

merging now.....


Add dance crip by trueno

Song Name
dance crip
Artist Name
trueno
Source
Youtube
Youtube Link
m.youtube.com
Direct File Link
No response
Song ID
1
Start Offset [ms]
0
Extra
Created from Auto Nong.
Created for level: 150245

Yes

reject
invalid YouTube link


Disallowed attributes are not getting sanitized properly

To Reproduce
If i give html tag with improper syntax like this => <<imgimg src=1 onerror=alert('xss')>
Step by step instructions to reproduce the behavior:

Go to https://codesandbox.io/s/kind-euler-jp6k9f?file=/src/components/HelloWorld.vue
Click on Sanitize Html Button
It will show unsanitized img tag with onerror attribute

Expected behavior

Describe the bug

I am using this configuration: sanitizeHtml(this.sanitizedValue, {
allowedTags: [ 'p', 'img', 'canvas' ],
allowedAttributes: {
'*': [ ['src'] ]
}
})

If i am giving the following string as an input =>   <<imgimg src=1 onerror=alert('xss')>
Expected Output:
Actual Output:
Note: I have included canvas tag in the actual string but here it is getting executed so please refer my screenshot and codesandbox for actual string input and output
I expect the onerror attribute to be removed as i have not mentioned it in my configuration but it is not sanitizing the string
Details
Version of Node.js:
Version 16.13.2
Server Operating System:
Linux - ubuntu 20.04.03 64-bit
Screenshots

The output is escaped, both in your codesandbox and when I add this code as a unit test. It's not returning markup, it's escaping the angle brackets as plaintext. So there's no issue here as far as I can tell. Certainly it's bad input, but the output is as reasonable as any result could be, given how unreasonable the input is.
But please let me know if I'm missing something and there's a way to exploit this.

(btw you don't want to pass a double array for attributes. I checked it with and without that though, same result.)


oauth 2.0.7 VERSION and normalized user-role

fixed userDetailsService for oauth 2.0.7 VERSION and normalized user role realtion changing it to manyToMany

OK passed Travis , sorry again about all that mess with multiple requests

Thanks! No problem about the requests. This is just a sample project. :)

Resolves #19


Build Projector as a multi-arch image

Adds support for arm64.

To use it in the other build it's required to tag and push the image in the same buildx build command.
However it should be possible to move the build command in the modelix buildscript and to not use any script in this repository.
If you prefer that approach, you may close this PR.

There is already a parameter for providing the tag name. It's fine to run the command with --push if a target platform is provided. I just want a clean interface for this repository that is not Modelix specific, but still adds multi platform support.

Right now images are always pushed. I still want to be able to build a local version for my current platform. If the third parameter is not specified, run the original command without --push and --platform parameters.

For perfomance reasons it might be better to use the regular build instead of buildx for local single-platform images.
Another flaw with the current solution is that it only allows for a single tag, since each tag has to be specified with -t adding additional tags on multi-platform images outside of the buildx build command is not possible. Is a single tag sufficient? If not, invoking buildx build in the modelix build script instead might be more elegant imo.

The script will be added to the modelix/modelix repo instead.


Cannot import buffer

A strange bug in the imports. I have previously been able to use the examples/http3_client.py and examples/http3_server.py but trying to use this package to write more examples python fails to import the _buffer module in src/aioquic
To reproduce the issue:

open python in the src directory
from aioquic import about   (works)
from aioquic import buffer   (fail)

from aioquic import buffer
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/aioquic/src/aioquic/buffer.py", line 1, in <module>
    from ._buffer import Buffer, BufferReadError, BufferWriteError  # noqa
ModuleNotFoundError: No module named 'aioquic._buffer'

Something is wrong with buffer.py or with _buffer.pyi / _buffer.c that does not allow python to import it.
I don't understand why the examples http3_client and http3_server work but trying to import it directly they fail.
Looking for guidance on how to circumvent this bug. Thanks in advance.

This was caused by my own mistake. I forgot I needed to
pip install -e .


Management library guidance is for a deprecated library

The management library section suggests to install Microsoft.Azure.Management.Sql.Fluent which has been deprecated.
Apparently the replacement library is: Azure.ResourceManager.Sql.

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

ID: 4a2ee884-131a-5641-b433-3a305239f3a4
Version Independent ID: 90f66938-afd9-1ffe-69ab-9ccf244e2956
Content: Azure SQL Database APIs for .NET - Azure for .NET Developers
Content Source: api/overview/azure/sql.md
Service: sql-database
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

Thank you for your feedback.  Tagging and routing to the team member best able to assist.


Make hosts configurable

Currently, all URLs and hosts are configured in the application.properties, making it difficult to change by the user.
Move those to the preferences file.

We should then Think about a button to reset settings, as users might misset their settings!

Duplicate of #761

Not exactly; The current solution only allows to change the setting for the current session, it doesn't store it in the preferences file.
Preferably, we keep a history in the preferences file and convert the current text fields to ComboBoxes so users can easily switch.
I'd also like that it remembers the last selection. If it's non-default, the form is displayed automatically. If not, it's hidden.


Add multinomial option is_normalized and simplify lntm_mcem

Added multinomial option is_normalized to fit the case in LDA(not truly multinomial, but a production(multiplication) of variable number of categorical distribution. Also wrote some doc.
Simplify lntm_mcem

However, the speed seems to be slower(e.g. 2.2s-->3.8s).

Why there is nothing about "nosample" or "prob_only" anymore?

@csy530216 Any update?

LGTM. Any to change before merging? @csy530216

I think that's okay.


Enabling high availability for mysql instances

Is there any support in this module to enable high availability for MySQL instances?

Yes, you can configure the failover replica and associated settings. See the available inputs here: https://github.com/terraform-google-modules/terraform-google-sql-db/tree/master/modules/mysql#inputs

Hi @morgante it seems that cloud SQL 2nd generation instances doesn't use a replica for the failover according to google docs https://cloud.google.com/sql/docs/mysql/high-availability#legacy_mysql_high_availability_option

In the Terraform docs, there is a property not supported by this module https://www.terraform.io/docs/providers/google/r/sql_database_instance.html#availability_type which might work to enable this, although in the docs they just mentioned Postgres but I think it could also work for MySQL

I see, yes it looks like we would have to do some work to support the new version of high availability.

Hi, due to the official document(https://cloud.google.com/sql/docs/mysql/configure-ha), I think it should work to setup with availabilityType":"REGIONAL" and backupConfiguration in current version.
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
     --header 'Content-Type: application/json' \
     --data '{"name":"[INSTANCE_NAME]", "region":"[REGION]",
              "databaseVersion":"[DATABASE_VERSION]",
              "settings": {
                  "tier":"[MACHINE_TYPE]",
                  "backupConfiguration": {"binaryLogEnabled": true, "enabled": true},
                  "availabilityType":"REGIONAL"}}' \
     -X POST \
     https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances

Hi everyone, is there any progress about this issue? Thanks!

@alejandro-delgado-garcia Not currently, though I'd be happy to review a PR if anyone wants to take a stab at it.

It works the same way as postgres.
Just add availability_type = var.availability_type into settings and add this block into variables.tf and it will work like a charm on MySQL instances.
variable "availability_type" {
  description = "The availability type for the master instance. Can be either ZONAL or REGIONAL."
  type        = string
  default     = "ZONAL"
}

@mehdicopter in my case, this gives Error: Error, failed to update instance settings for : googleapi: Error 400: The incoming request contained invalid data., invalidRequest

@mehdicopter in my case, this gives Error: Error, failed to update instance settings for : googleapi: Error 400: The incoming request contained invalid data., invalidRequest

Could you please share what's the value you used to set the availability_type? Valid values should be ZONAL or REGIONAL
Please also be aware that this setting is still not available in this repo.

Which version of google provider do you have?

Hi,
We are experiencing the same issue here as @alejandro-delgado-garcia, same error.
Here's the snippet:
resource "google_sql_database_instance" "instance" {
  provider = google-beta
  project  = local.service_project_id

  # name   = "private-instance-${random_id.db_name_suffix.hex}"
  name = local.instance_name
  # region = "us-central1"
  region = "europe-west1"

  depends_on = [google_service_networking_connection.private_service_access]

  settings {
    tier              = "db-n1-standard-1"
    availability_type = "REGIONAL"
    ip_configuration {
      ipv4_enabled = false
      # private_network = google_compute_network.private_network.self_link
      private_network = data.google_compute_network.main.self_link
    }
  }
}

And, if I do
availability_type = "ZONAL"

no error.
Googol Terraform provider version is the latest and greatest now, 3.14.0.
Terraform core version is 0.12.20.

Hi,
See this one: https://github.com/terraform-providers/terraform-provider-google/issues/5286
So, apparently the API and gcloud does not support the REGIONAL, hence the problem... Not good...

@iniinikoski Tried enabling binary logs?
https://github.com/terraform-providers/terraform-provider-google/issues/5022
here's the non module way of doing it:
resource "google_sql_database_instance" "test" {
  name             = "test"
  region           = "europe-west1"
  database_version = "MYSQL_5_7"

  settings {
    tier              = "db-n1-standard-1"
    availability_type = "REGIONAL"

    backup_configuration {
      binary_log_enabled = true
      enabled            = true
    }

    ip_configuration {
      ipv4_enabled = true
    }
  }
}

This module still requires a update to the mysql/main.tf  to include availability_type

@Dev25 ouch, of course I forgot that part... :) Looks perfection now. Looks like weekend awaits ;) Thanks!

@morgante : Seems like @Dev25 and @cromaniuc added some PRs to this issue. Is the offer to review them still available? Thanks!

Thank you everyone. This is really good


Create 06nn.md

@nataliyaned did you intentionally omit the worker count (workers)?

Yes. I couldn't find any numbers around this other than the total population impacted (80,000).


Define feud.click.is_rich to check if rich_click is installed

Does this suggestion already exist?

[X] This is a new feature!

Feature description
There is currently no easy way to check whether rich_click is installed and being used.
A simple way to do this is to change:
https://github.com/eonu/feud/blob/e196e2ad15711eb0fdd9e38886c702a48081a0e3/feud/click/__init__.py#L8-L11
To:

#: Whether ``rich_click`` is installed or not.
is_rich: bool

try:
    from rich_click import *
    is_rich = True
except ImportError:
    from click import *
    is_rich = False

Then feud.click.is_rich can be used within the code base or by the user.
Existing parts of the code base relying on similar checks should be updated to re-use this variable.

Fixed in #132.


removing encoding dependency

Fix #98
Removing encoding from the dependencies, which was required to solve a compatibility issue with the earlier version of node-fetch.

It seems that the original dependency issue is still present, so abandoning this PR.


chore: jsonfmt visualstudio

Ran jsonfmt -w "specification/visualstudio/**/*.json"

Automation for azure-sdk-for-python

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-js

Automation for azure-sdk-for-java

Automation for azure-sdk-for-go

Can one of the admins verify this patch?


Another text.
## Section 1.1
Text of section 1.1
Another text.
## Section 1.2
Text of section 1.2
Another text.

When I run the command "Iron out the creases" it break my note like this:
# Сhapter 1Text of chapter 1.
Another text.
## Section 1.1
Text of section 1.1
Another text.
## Section 1.2
Text of section 1.2
Another text.

The header first line subtext join to the header.
It look like deteting the line break char on ending of header.

If "Chapter 1" do not have a subtext and have only nested headers all works good
P.S. The plugin is cool, thanks!

Fixed in v0.6.2


paramiko.ssh_exception.SSHException: No authentication methods available

When deploying in our local Linux environment， we use "fedvision-deploy deploy deploy --config standalone_template.yaml", but it occurs the error that "paramiko.ssh_exception.SSHException: No authentication methods available"
(In our /etc/ssh/ssh_config: PasswordAuthentication yes)

When deploying in our local Linux environment， we use "fedvision-deploy deploy deploy --config standalone_template.yaml", but it occurs the error that "paramiko.ssh_exception.SSHException: No authentication methods available"
(In our /etc/ssh/ssh_config: PasswordAuthentication yes)

according to this issue: You should provide either a password or a private key. Since we don't provide password appproch in this version, private key method is needed.
Try appends contents of ~/.ssh/id_rsa.pub to ~/.ssh/authorized_keys.

Thank you. If I do like abovePermissionError: [Errno 13] Permission denied: '/home/zcb/.ssh/id_rsa'

When deploying in our local Linux environment， we use "fedvision-deploy deploy deploy --config standalone_template.yaml", but it occurs the error that "paramiko.ssh_exception.SSHException: No authentication methods available"
(In our /etc/ssh/ssh_config: PasswordAuthentication yes)

according to this issue: You should provide either a password or a private key. Since we don't provide password appproch in this version, private key method is needed.
Try appends contents of ~/.ssh/id_rsa.pub to ~/.ssh/authorized_keys.

Thank you. If I do like above, it will raise "PermissionError: [Errno 13] Permission denied: '/home/zcb/.ssh/id_rsa'"
Then I try "sudo fedvision-deploy deploy deploy --config standalone_template.yaml", but it show that: "sudo: fedvision-deploy：找不到命令" after I enter my password

any fix for this??


Fix create volume in a directory which is a symbolic link

Signed-off-by: Lei Jitang<EMAIL_ADDRESS>Fixes #11862
You can reproduce this on ubuntu:14.04 machine use ubuntu:14.04 images
by steps:
1.sudo touch /var/run/gordon
2.docker run --rm -ti --volume /var/run/gordon ubuntu:14.04 /bin/bash
This is because /var/run is a symlink to /run in rootfs of
ubuntu:14.04. And  when do parseVolumeMountConfig
the container has not create a mount namespace, so the symlink of
container's will link to the host, so the error happened.

Can you add a test?

@cpuguy83   I was going to write a test, but I didn't know how to write a test for this one, can you give me some tips?

updated, added a test,ping @cpuguy83

So if I'm looking at this right, the issue is when there is a symlink at the volume path in the container?

@cpuguy83 it's a little bit more complicated the issue appears when you create a volume and when the corresponding path in the host is under a symlinked directory (/var/run on ubuntu 14.04)

@cpuguy83  Yes, when create a volume in a directory which is a symlink, parseVolumeMountConfig will link the volume to the host's rootfs and if the host happen to have the same file, the error will happen.

@cpuguy83  Yes, when create a volume in a directory which is a symlink, parseVolumeMountConfig will link the volume to the host's rootfs and if the host happen to have the same file, the error will happen.

Just to be certain, reproing locally, I get an error caught by the os.Stat, since the file in the container is not a dir.
Is this correct?

@cpuguy83  Yes, the error is caught by the os.Stat,  it's link to the host's file and the file is not a dir

Ok, I just ran into this testing 1.6.

@coolljt0725 If you don't mind I'm going to carry this since it's actually pretty bad and needs to be in 1.6.

And having said that, I'm having issues producing a test case for this... even the test you provided is passing on master for me.

Carried in #11934


Update webpack

Webpack updated, files with a new clean format and React Hot Loader added.
Now you can make changes and see it without reload the whole page. Try wit npm start and change title value in layout.js

It's already updated


Postgres db command execution fails with npgsql and multihost (primary/replica) connection

Describe the bug
We use multi host Postgres connection string that includes a primary and a read replica. We also have Marten ReadSessionPreference set to PreferStandby. Wolverine appears to have issues with this setup and we're seeing exceptions in the logs like this:
2024-10-31 12:52:07.773 EDT.    delete from public.wolverine_control_queue where expires < @p0;select body from public.wolverine_control_queue where node_id = @p1;
2024-10-31 12:52:07.773 EDT
---> Npgsql.PostgresException (0x80004005): 25006: cannot execute DELETE in a read-only transaction
at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
at Npgsql.NpgsqlCommand.ExecuteDbDataReaderAsync(CommandBehavior behavior, CancellationToken cancellationToken)
at Wolverine.RDBMS.Polling.DatabaseOperationBatch.ExecuteAsync(IWolverineRuntime runtime, CancellationToken cancellationToken) in /home/runner/work/wolverine/wolverine/src/Persistence/Wolverine.RDBMS/Polling/DatabaseOperationBatch.cs:line 68

To Reproduce
Steps to reproduce the behavior:

Use multi host connection string like: Host=primary-ip,read-replica-ip;Username=...;Password=...;Database=...;Load Balance Hosts=true
Set Marten ReadSessionPreference to PreferStandby
Add Wolverine
Watch go boom

Expected behavior
Wolverine should be able to execute commands against primary
Additional context
Using Marten 7.29.0
Wolverine 3.1.0
Npgsql 8.0.4
I'm registering NpgsqlDataSource via the Aspire.Npgsql nuget package 8.2.0 extension method

Thanks for the quick fix.  I think there might still be an issue with the initial schema creation though. I'm still seeing this exception when I start up my project, but I can't tell if this is Wolverine, Marten, or both.
Npgsql.PostgresException (0x80004005): 25006: cannot execute CREATE FUNCTION in a read-only transaction
         at Npgsql.Internal.NpgsqlConnector.ReadMessageLong(Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
         at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token)
         at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
         at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
         at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
         at Npgsql.NpgsqlCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
         at Npgsql.NpgsqlCommand.ExecuteNonQuery(Boolean async, CancellationToken cancellationToken)
         at Weasel.Postgresql.PostgresqlMigrator.executeDelta(SchemaMigration migration, DbConnection conn, AutoCreate autoCreate, IMigrationLogger logger, CancellationToken ct)
        Exception data:
          Severity: ERROR
          SqlState: 25006
          MessageText: cannot execute CREATE FUNCTION in a read-only transaction
          File: utility.c
          Line: 414
          Routine: PreventCommandIfReadOnly
         --- End of inner exception stack trace ---
         at Marten.StoreOptions.Weasel.Core.Migrations.IMigrationLogger.OnFailure(DbCommand command, Exception ex)
         at Weasel.Postgresql.PostgresqlMigrator.executeDelta(SchemaMigration migration, DbConnection conn, AutoCreate autoCreate, IMigrationLogger logger, CancellationToken ct)
         at Weasel.Core.Migrations.DatabaseBase`1.ApplyAllConfiguredChangesToDatabaseAsync(IGlobalLock`1 globalLock, Nullable`1 override, ReconnectionOptions reconnectionOptions, CancellationToken ct)
         at Weasel.Core.Migrations.DatabaseBase`1.ApplyAllConfiguredChangesToDatabaseAsync(IGlobalLock`1 globalLock, Nullable`1 override, ReconnectionOptions reconnectionOptions, CancellationToken ct)
         at Oakton.Resources.ResourceSetupHostService.<>c__DisplayClass5_0.<<StartAsync>g__execute|0>d.MoveNext()
         --- End of inner exception stack trace ---
         --- End of inner exception stack trace ---
         at Oakton.Resources.ResourceSetupHostService.StartAsync(CancellationToken cancellationToken)
         at Microsoft.Extensions.Hosting.Internal.Host.<StartAsync>b__15_1(IHostedService service, CancellationToken token)
         at Microsoft.Extensions.Hosting.Internal.Host.ForeachService[T](IEnumerable`1 services, CancellationToken token, Boolean concurrent, Boolean abortOnFirstException, List`1 exceptions, Func`3 operation)

It looks like both projects depend on Weasel for applying db changes, so perhaps there's something missing there? I was looking thru Weasel and thought maybe this file needs to specify the Target Session Attribute: https://github.com/JasperFx/weasel/blob/master/src/Weasel.Postgresql/Connections/DefaultNpgsqlDataSourceFactory.cs
If you agree, I'm happy to submit a PR.

Damn, I thought we only had a single entry-point for npgsql DS usage. I'll properly test this end to end over the weekend.

Could you try using AddMultiHostNpgsqlDataSource from Npgsql.DependencyInjection instead of Aspire.Npgsql? I don't see anything in the Aspire implementation that points to a multi-host data source being supported.

I am using AddMarten().IntegrateWithWolverine(). I'm not sure why I didn't run into this before adding Wolverine.
I was able to confirm that the NpgsqlDataSourceBuilder returns an instance of NpgsqlMultiHostDataSource if the connection string has multiple hosts: https://github.com/npgsql/npgsql/blob/main/src/Npgsql/NpgsqlSlimDataSourceBuilder.cs#L645
Output from debug console when trying to get NpgsqlDataSource:
app.Services.GetService<NpgsqlDataSource>()
  {Npgsql.NpgsqlMultiHostDataSource}
    ConnectionString: "Host=localhost:5432,localhost:5433;Username=postgres;Database=gail;Load Balance Hosts=True"

Would you be able to provide a reproduction? I've configured a wolverine environment with a multi-host configuration and I'm unable to get it to error out.

Sorry for the delay. It took me a while to come up with a consistent repro. I created a simple app that uses a lot of the same components I'm using in my real app. I'm guessing there is some randomness in how the host is picked per command. When I had the primary first in the connection string, I wasn't encountering the exception. But when I switched the connection string to have the read replica first, it started happening consistently. But it's not consistent on which command is the one that fails. Sometimes it would be a drop command that would fail. Sometimes it's the create function. I created this repo with the app I used to repro the issue. Hope this helps: https://github.com/rolyv/marten-repro

I still didn't manage to reproduce this even with the repro, but looking at the stack trace I realized what was wrong. Will be fixed in https://github.com/JasperFx/weasel/pull/151

Just upgraded to the latest release I haven't been able to reproduce the issue. Looks great. Thanks @Hawxy!

Great to hear!


HBASE-25847 More DEBUG and TRACE level logging in CatalogJanitor and HbckChore

Some background
https://issues.apache.org/jira/browse/HBASE-24942
I've found a bug when refactoring CatalogJanitor because of we may clean the merge qualifiers in MergeTableRegionsProcedure. Theoretically we should only do this in GCRegion related procedures(as what you proposed here), but doing this in other places could speed up later process which could be blocked by merge qualifiers.
For me I'm +1 on removing the redundant removal in CatalogJanitor, but let's wait for @saintstack 's opinon too?
Thanks.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  8s
Docker mode activated.

TestCatalogJanitorInMemoryStates failure might be relevant? Just retriggered the build, will get back to this after 2nd run completes.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  6s
Docker mode activated.

The error is persistent and it is relevant
java.lang.AssertionError: Parent region should have been removed from RegionStates
	at org.apache.hadoop.hbase.master.janitor.TestCatalogJanitorInMemoryStates.testInMemoryParentCleanup(TestCatalogJanitorInMemoryStates.java:123)

With these changes the ingestion test completes successfully and without weird artifacts in the logging. All split regions are GCed by procedures. In memory state aligns with filesystem state.
/hbase/logs/hbase-apurtell-master-ip-172-31-58-47.us-west-2.compute.internal.log:130972:2021-05-05 15:47:39,190 INFO  [master/ip-172-31-58-47:8100.Chore.1] master.HbckChore: Loaded 230 regions (0 disabled, 0 split parents) from in-memory state
/hbase/logs/hbase-apurtell-master-ip-172-31-58-47.us-west-2.compute.internal.log:130973:2021-05-05 15:47:39,190 DEBUG [master/ip-172-31-58-47:8100.Chore.1] master.HbckChore: Regions by state: OPEN=230

Well since what I want here is "More DEBUG and TRACE level logging" I will remove the additional changes so the test failure is fixed and address that on a separate PR.

Just the logging changes now, and the bug fix to ensure log lines emit correct information.
The CatalogJanitor cleanup proposal is now this PR: https://github.com/apache/hbase/pull/3234
I have submitted it without a test change so we get the same test results there and can carry the discussion forward. Will work on a test change too.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  5s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 39s
master passed

+1 :green_heart:
compile
3m 12s
master passed

+1 :green_heart:
checkstyle
1m  2s
master passed

+1 :green_heart:
spotbugs
2m  0s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 36s
the patch passed

+1 :green_heart:
compile
3m 11s
the patch passed

+1 :green_heart:
javac
3m 11s
the patch passed

-0 :warning:
checkstyle
1m  1s
hbase-server: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
18m  6s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1 3.3.0.

+1 :green_heart:
spotbugs
2m 15s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 13s
The patch does not generate ASF License warnings.

47m  9s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3230/4/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/3230

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti checkstyle compile

uname
Linux 2b2ba1cc9ec6 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / eb9b54304e

Default Java
AdoptOpenJDK-1.8.0_282-b08

checkstyle
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3230/4/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt

Max. process+thread count
96 (vs. ulimit of 30000)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3230/4/console

versions
git=2.17.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


Adding the kep for the skeleton generator

What type of PR is this?
/kind kep
What this PR does / why we need it:
Having a Skeleton generator would help people getting started faster when they want to develop a new KUDO framework.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Looking at this now. I like it. I'd like to establish some goals and non-goals for the purposes of this generator. cc/ @kaiwalyajoshi


proposal: Go 2: allow second argument to close as alternative to futures

I was reading through #17466 and I realized that future-style functionality already exists with channels via close(). The only real difference is that a closed channel always returns a zero value of its element type. Therefore, I propose adding a second, optional argument to close() which, if specified, causes receives on the channel to return the value given, rather than the zero value.
For example, the following would print 3 twice:
c := make(chan int)
close(c, 3)
println(<-c)
println(<-c)

I fiddled around with the runtime and compiler in an attempt to get it working myself as an experiment to see how viable it is. I'm not particularly familiar with a lot of the internals, but I managed to get it working in the runtime with minimal effort. I had a bit more trouble with getting the compiler to accept a second argument to close(), but I know that that's plausible as there are other built-in functions that do similar things.
Advantages

Doesn't break Go 1 compatibility guarantee. It would require a tweak to the internal structure of channels, but that's not something that's guaranteed to stay the same, so that should be fine.
Provides 1:N one-time broadcasting capability, as futures do, as well as the ability to receive the 'sent' value multiple times from the same channel. It basically makes channels act exactly like futures, without requiring any new types or standard library API.

Disadavantages

close() is a bit awkwardly named for this type of thing, even if it does make sense in terms of it being a channel. If this is accepted, it might be a good idea to do something a bit different for Go 2.

I'm sure there are other problems, but that's why I'm proposing it. I'd originally posted this as a comment on the previously referenced issue, but it's quite different from what was proposed there and no one responded, so I decided to make it a separate proposal.

Another potential issue that I had thought of but forgot about when writing the proposal is dealing with the reflect package's ability to close channels. The only way I can think of to implement it would be to add a second Close() method with a slightly different name to reflect.Value, which is less than ideal.

This would make debugging harder, at least for a while. Today, if you see a flood of 3s coming out of a channel you wouldn't go look for a close. You can still implement futures easily enough by having a 'done' channel with companion value field (or values, as you'll usually want to support an error result).

@bcmills maybe that should be another fix for Go 2.

@DeedleFake This has really awkward sematics. It would be better either to introduce explicit future type or to implement it in the standard library. There are at least two reasons for that.
The first one is that you modify API of channel that it is actual standard. It will wonder people who work with fifos in Linux for example. This is why I think that future type is more suitable.
The second one is that your proposal brings some overhead to common communication and synchronization primitive. Also it is not quite obvious for me how it will affects GC and code generation due to counter 3. In my view there is lack of future. However, it is highly unclear how futures should be in language. So, we could implement following interface into standard lib as initial step.
type Future interface {
	Set(value interface{})
	Get() interface{}
	Wait()
}

The only advantage I see over a future implemented in a package is that this approach is compile-time-type-safe.  I hope that in Go 2 we will have some form of generics which will permit writing a compile-time-type-safe future package.  If we have that, this seems like an odd change to the existing channel semantics.  If we don't have that, we can revisit this.


please report this issue on https://yt-dl.org/bug

As requested in the output from youtube-dl:
youtube-dl -vv https://www.youtube.com/watch?v=fNsHmjdgcHI&list=RDEME57zQmiWw8Qt3SWu3xOuWQ&index=5
[1] 221692
[2] 221693
phil@p:~/Downloads$ [debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-vv', 'https://www.youtube.com/watch?v=fNsHmjdgcHI']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.8.10 (CPython) - Linux-5.8.0-59-generic-x86_64-with-glibc2.29
[debug] exe versions: ffmpeg 4.2.7, ffprobe 4.2.7, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] fNsHmjdgcHI: Downloading webpage
[youtube] fNsHmjdgcHI: Downloading player 931a8913
ERROR: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/youtube_dl/YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/youtube_dl/YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "/usr/local/lib/python3.8/dist-packages/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "/usr/local/lib/python3.8/dist-packages/youtube_dl/extractor/youtube.py", line 1794, in _real_extract
    'uploader_id': self._search_regex(r'/(?:channel|user)/([^/?&#]+)', owner_profile_url, 'uploader id') if owner_profile_url else None,
  File "/usr/local/lib/python3.8/dist-packages/youtube_dl/extractor/common.py", line 1012, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

When it says "report this issue on", this is shorthand for "follow the reporting procedure laid out at" and obviously don't report it again if it's already been reported. This should have been apparent when you read the pinned issue #30839. The issue title "READ THIS BEFORE OPENING A NEW ISSUE! THIS MEANS YOU!" should have been a hint. Read it again.

Possibly you could add such an important warning to your software to avoid such outcome in the future.  When reading the message produced by the software it implies that something so unusual has gone wrong that there is some urgency to the situation which warrants immediate action.   Without this request, as worded,  one  might well have reported the problem in the usual manner if one had time to do so - or not if one did not have the  time or interest to do so.

It was important when it was first reported, less so after more than 300 people so far independently thought it might be helpful to do so again and especially since there is already a solution. See https://github.com/ytdl-org/youtube-dl#user-content-bugs. I really don't think that the instructions in the issue tracker could be plainer.


Buttons in Android

Why the appearance of buttons are so different from those in iOS? They are pretty ugly.

Hi,
Red box appears when RNMK is not well linked to your project. It seems that there is some issues with Android. Can you try what is suggested in #214?

The suggestion in #213 doesn't work. I think I correctly followed the instructions.

yesterday i also get a red box,because i forget add new ReactMaterialKitPackage() in getPackages.
settings.gradle
include ':react-native-material-kit'
project(':react-native-material-kit').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-material-kit/android')
app/build.gradle
compile project(':react-native-material-kit')
version
"react-native-material-kit": "^0.3.2"

same problem here...

Upgrading my project from RN28 to RN31 I'm now having this issue, trying various ways of linking the library as suggested is not fixing...

You need to check if new ReactMaterialKitPackage() is included to getPackages functions in MainApplication.java file. react-native link don't do this so the plugin is not connected properly.
And don't forget to import import com.github.xinthink.rnmk.ReactMaterialKitPackage; on top of the file first! :)

@designbuildplay & @itelo Can you tell me if @ollar's solution is working for you? If yes, I'll update the doc

@ollar @Crash--  Awesome thats done the trick!, so my getPackages func is now looking like this..
@Override     protected List<ReactPackage> getPackages() {       return Arrays.<ReactPackage>asList(           new MainReactPackage(),           new ReactMaterialKitPackage()       );     }

Having the same issue, but furthermore buttons do not react on touch events.
Same behaviour on emulator and real device.
RN40
"react-native-material-kit": "^0.3.4"
Read all comments, and checked related files, the content is correct as in this thread.

Do you have any red box around your button?

@Crash-- Yes, there is a red box(boder). Sorry for the report with few details, here are they:
My package.json
(master)⚡ % cat package.json
{
  "name": "rnTimeToEat",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "test": "jest"
  },
  "dependencies": {
    "react": "~15.4.0-rc.4",
    "react-native": "0.40.0",
    "react-native-material-kit": "^0.3.4",
    "react-native-scrollable-tab-view": "^0.7.0",
    "react-native-vector-icons": "^4.0.0"
  },
  "devDependencies": {
    "babel-jest": "18.0.0",
    "babel-preset-react-native": "1.9.1",
    "jest": "18.1.0",
    "react-test-renderer": "~15.4.0-rc.4"
  },
  "jest": {
    "preset": "react-native"
  }
}

Install MK
(master)⚡ % react-native install react-native-material-kit
<EMAIL_ADDRESS>/Users/garek/git/own/rnTimeToEat
└─┬<EMAIL_ADDRESS>  └──<EMAIL_ADDRESS>
rnpm-install info Module react-native-material-kit has been successfully installed & linked

link MK
(master)⚡ % react-native link react-native-material-kit
rnpm-install info Linking react-native-material-kit android dependency
rnpm-install info Android module react-native-material-kit has been successfully linked
rnpm-install info Linking react-native-material-kit ios dependency
rnpm-install info iOS module react-native-material-kit has been successfully linked

diff after install & link
diff --git a/android/app/build.gradle b/android/app/build.gradle
index 24942f0..b3de7e5 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -126,6 +126,7 @@ android {
 }

 dependencies {
+    compile project(':react-native-material-kit')
     compile fileTree(dir: "libs", include: ["*.jar"])
     compile "com.android.support:appcompat-v7:23.0.1"
     compile "com.facebook.react:react-native:+"  // From node_modules
diff --git a/android/app/src/main/java/com/rntimetoeat/MainApplication.java b/android/app/src/main/java/com/rntimetoeat/MainApplication.java
index 8d10359..05545ec 100644
--- a/android/app/src/main/java/com/rntimetoeat/MainApplication.java
+++ b/android/app/src/main/java/com/rntimetoeat/MainApplication.java
@@ -4,6 +4,7 @@ import android.app.Application;
 import android.util.Log;

 import com.facebook.react.ReactApplication;
+import com.github.xinthink.rnmk.ReactMaterialKitPackage;
 import com.facebook.react.ReactInstanceManager;
 import com.facebook.react.ReactNativeHost;
 import com.facebook.react.ReactPackage;
@@ -24,7 +25,8 @@ public class MainApplication extends Application implements ReactApplication {
     @Override
     protected List<ReactPackage> getPackages() {
       return Arrays.<ReactPackage>asList(
-          new MainReactPackage()
+          new MainReactPackage(),
+            new ReactMaterialKitPackage()
       );
     }
   };
diff --git a/android/settings.gradle b/android/settings.gradle
index 018a340..ac3f77f 100644
--- a/android/settings.gradle
+++ b/android/settings.gradle
@@ -1,3 +1,5 @@
 rootProject.name = 'rnTimeToEat'
+include ':react-native-material-kit'
+project(':react-native-material-kit').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-material-kit/android')

 include ':app'
diff --git a/ios/rnTimeToEat.xcodeproj/project.pbxproj b/ios/rnTimeToEat.xcodeproj/project.pbxproj
index 2722e70..479fa81 100644
--- a/ios/rnTimeToEat.xcodeproj/project.pbxproj
+++ b/ios/rnTimeToEat.xcodeproj/project.pbxproj
@@ -23,6 +23,7 @@
 		146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; };
 		5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */; };
 		832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; };
+		33CA612F7FCE454785C8F48C /* libRCTMaterialKit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 21BB60E843C14E2A95977C1E /* libRCTMaterialKit.a */; };
 /* End PBXBuildFile section */

 /* Begin PBXContainerItemProxy section */
@@ -233,6 +234,8 @@
 		5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAnimation.xcodeproj; path = "../node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = "<group>"; };
 		78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = "<group>"; };
 		832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = "<group>"; };
+		B8CCE38230344B6C8D1EDAA8 /* RCTMaterialKit.xcodeproj */ = {isa = PBXFileReference; name = "RCTMaterialKit.xcodeproj"; path = "../node_modules/react-native-material-kit/iOS/RCTMaterialKit.xcodeproj"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; };
+		21BB60E843C14E2A95977C1E /* libRCTMaterialKit.a */ = {isa = PBXFileReference; name = "libRCTMaterialKit.a"; path = "libRCTMaterialKit.a"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; };
 /* End PBXFileReference section */

 /* Begin PBXFrameworksBuildPhase section */
@@ -259,6 +262,7 @@
 				832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */,
 				00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */,
 				139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */,
+				33CA612F7FCE454785C8F48C /* libRCTMaterialKit.a in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -403,6 +407,7 @@
 				832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */,
 				00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */,
 				139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */,
+				B8CCE38230344B6C8D1EDAA8 /* RCTMaterialKit.xcodeproj */,
 			);
 			name = Libraries;
 			sourceTree = "<group>";
@@ -826,6 +831,7 @@
 				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/rnTimeToEat.app/rnTimeToEat";
 				LIBRARY_SEARCH_PATHS = (
 					"$(inherited)",
+					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 				);
 			};
 			name = Debug;
@@ -842,6 +848,7 @@
 				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/rnTimeToEat.app/rnTimeToEat";
 				LIBRARY_SEARCH_PATHS = (
 					"$(inherited)",
+					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 				);
 			};
 			name = Release;

Code
(master)⚡ % cat src/components/testmk.android.js
import React, { Component } from 'react';
import {
  Text,
  View,
} from 'react-native';

import {
  MKButton,
  MKColor,
} from 'react-native-material-kit';

const AddToOrderButton = MKButton.coloredFlatButton()
  .withText('BUTTON')
  .build();

const B2 = MKButton.coloredButton()
  .withText('BUTTON')
  .withOnPress(() => {
    console.log("Hi, it's a colored button!");
  })
  .build();

const AccentColoredRaisedButton = MKButton.accentColoredButton()
    .build();

export default class testmk extends Component {
  render() {
    return (
      <View style={{ flex: 1, justifyContent: 'center' }}>
        <AddToOrderButton />
        <B2 />
        <AccentColoredRaisedButton>
          <Text pointerEvents="none">BUTTON</Text>
        </AccentColoredRaisedButton>
      </View>
    );
  }
}


Add scoped parallelism support to private_memory

The docs for scoped parallelism mention private_memory, but the API did not actually support it since managed private data could only be accessed with an h_item rather than a logical_item.
This PR adds the necessary overload for private_memory::operator(), includes it in the extension unit test and updates documentation accordingly.

Thanks, this looks good!
@hipSYCL-ci-bot test please

Thanks, this looks good!
@hipSYCL-ci-bot test please


Guidance Page: 'Contact Support' missing from a child page

Should 'contact support' appear on all guidance pages? this is the PL equiv https://iatistandard.org/en/guidance/preparing-data/what-data-to-publish/

@IATI/bas Any ideas on this question?

@allthatilk can you explain further please. The 'contact support' is on the guidance pages....? Barr those which just have cards.

Moved to the PL repo: https://github.com/IATI/IATI-Pattern-Library/issues/90


DLL debugging: no guides on what if there are exceptions in calling app

No guides on what if there are exceptions in calling app.
If you just specify the exe location, not the source location of the exe, you can't find the root cause in your code.
https://docs.microsoft.com/en-us/visualstudio/debugger/how-to-debug-from-a-dll-project?view=vs-2019#specify-a-calling-app-in-a-native-dll-project

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

ID: c922c9cf-4c0b-18fb-d1bd-afa4303db5fd
Version Independent ID: 72b4a51f-b499-41b4-6d68-19c9deaf7e3f
Content: How to - Debug from a DLL Project - Visual Studio
Content Source: docs/debugger/how-to-debug-from-a-dll-project.md
Product: visual-studio-windows
Technology: vs-ide-debug
GitHub Login: @Mikejo5000
Microsoft Alias: mikejo

@DovahYol -- Bing, thank you for your feedback.  Please consider these resources:

https://social.msdn.microsoft.com/Forums/vstudio
https://www.stackoverflow.com
https://www.reddit.com/r/VisualStudio/

@Mikejo5000 -- Mike, please look into this issue.

@DovahYol So, in addition to specifying the .exe, you specified the location of the source code that generated the exe? Where did you specify this, and did it resolve the issue? Thanks!


status bar matches theme

Added lib to make the status bar match the background of the app

Please read the documentation thoroughly of the library you're adding before doing so.
The documentation states that this solution is deprecated: https://github.com/google/accompanist?tab=readme-ov-file#-system-ui-controller-deprecated--removed
You should add edge-to-edge support instead.


Update resource def

Added Virtual Hub naming regex

According to git you are changing all the files it is probably because you have a different line ending. Might be work looking into that.

You need to run 'go generate' after you added the definition them it will update the required files for you after that I recommend running 'go test ./...' To check if all the tests are still working

Elready fixed by other PR

Closing as the change is included in #72 - thanks @arnoldna for your contribution


fix: sidebar and header menu

[x] Others (Update, fix, translation, etc...)

Emergency fix after https://github.com/hexojs/site/pull/1139 breaks the sidebar and header menu.

Superseded by https://github.com/hexojs/site/pull/1173


Enhanced the terms and conditions page

Description
Enhanced the terms and conditions page
Fixes #1253
Replace issue_no with the issue number which is fixed in this PR
Screenshots

Checklist

[x] Tests have been added or updated to cover the changes
[x] Documentation has been updated to reflect the changes
[x] Code follows the established coding style guidelines
[x] All tests are passing

@thestarsahil please check it

Pull the latest changes and push again
Your branch is behind to current branch and dark should be same as other page
Take reference : Blog page , contributor page


Go to Definition: ID in same file

Go to Definition: ID in same file
Item { id: itemId }

Supported in Version_0.3.0


A Material Design Makeover for Substrate Front-End Template

Project Abstract
This project aims to enhance the user experience of the substrate-front-end-template by migrating to Material Design UI, ensuring a visually appealing, intuitive, and modern interface that aligns with contemporary design standards.
Grant level

[x] Level 1:  Up to $10,000, 2 approvals
[ ] Level 2:  Up to $30,000, 3 approvals
[ ] Level 3:  Unlimited, 5 approvals (for >$100k: Web3 Foundation Council approval)

Application Checklist

[x] The application template has been copied and aptly renamed (project_name.md).
[x] I have read the application guidelines.
[x] Payment details have been provided (bank details via email or Polkadot (USDC & USDT) address in the application).
[x] I am aware that, in order to receive a grant, I (and the entity I represent) have to successfully complete a KYC/KYB check.
[x] The software delivered for this grant will be released under an open-source license specified in the application.
[x] The initial PR contains only one commit (squash and force-push if needed).
[x] The grant will only be announced once the first milestone has been accepted (see the announcement guidelines).
[ ] I prefer the discussion of this application to take place in a private Element/Matrix channel. My username is: @_______:matrix.org (change the homeserver if you use a different one)

I have read and hereby sign the Contributor License Agreement.

Hi @keeganquigley

Material 3 is pretty cool. Have you looked into Polkadot Cloud? Since it is frame-agnostic, I'm wondering if you could integrate the library to keep the themes/aesthetics in line with other Polkadot apps such as the staking dashboard.

I do agree that using the common theme colors is ideal. I will integrate the  polkadot cloud themes.

Regarding M1, we usually don't fund the initial designs. Could you remove that deliverable?

Removed.

Because of this, we typically ask for mock-ups and/or figma designs to be provided upfront. Could you add these even if they are a rough draft?

Added an initial draft to the original proposal application.

It will be nice to see Angular + Material templates for the Substrate Front-End Template and Polkadot Cloud stuff :)

Hi @keeganquigley
Thanks for your comments. I have already completed a KYC. @semuelle  requested some changes that I have already incorporated in the proposal.
@takahser Thanks for the minor improvements. You will find answers to your questions below.

are you going to use any existing frontend library for the implementation?

Yes. I will use individual web components from the mui framework. @mui/material @emotion/react @emotion/styled

are you sure you'd need 2 months full-time to implement this relatively simply UI changes, i.e. replacing all UI elements with their Material-based counterparts? I've taken a brief look at the code and I have the impression that it could be rather quick and easy. Am I missing something here, i.e. is there anything that requires a bit more attention and is more complex than just replacing some UI elements and wiring up their props/state hooks?

Based on my analysis there are about 20 distinct components that have to be restyled in the Material Design Style Guide, so the estimated 2-month timeframe is appropriate. Some of the existing components (such as the top dashboard cards) don't have an exact implementation in Material Design, so it would require custom work. As mentioned in the proposal, there is
a new functionality that adds themes.

would you be open to rewrite the components to TypeScript as part of this grant?

No

are you going to fully overhaul the template and use material for any UI component, or are there any exceptions?
finally, feel free to have a look at my inline comments. There I'm mainly interested if these features you list bring any new or updated functionality, or if the scope is limited to UI element updates.

It will be a full overhaul of the template based on Material Design Standards. In the case when these standards are not provided, I will provide custom styling that is closest to the provided standard. Most of the features that are listed already exist, so it will be mostly UI updates to modernize the front-end template in hopes of enabling new upcoming developers a better user experience when building and working with Substrate.

@semuelle regarding the issues you've unresolved above - I think the features mostly exist already, quote from @stojanov-igor's comment:

Most of the features that are listed already exist, so it will be mostly UI updates to modernize the front-end template in hopes of enabling new upcoming developers a better user experience when building and working with Substrate.

Hi all,
My comments/ answers are below.

would be whether you are planning to have these changes merged into the substrate-front-end-template repo or whether you are planning to maintain a fork. For the former, have you reached out to the maintainers, (e.g. @sacha-l) if this is something they'd be interested in?

The plan is to maintain a fork of the official substrate-front-end repository under the same open and permissive license. We can create a pull request from the fork to the official repository if the maintainers would like to adopt my changes.

Thanks for the explanations @stojanov-igor I do agree with my colleague that TypeScript would be better, and this might help to change the minds of other committee members.

If the community prefers a typescript version, we will do the conversion to typescript as part of the delivery. Some old school javascript developers dislike strict typing and type annotations but if typescript is a strong preference for future development, we are willing to provide a typescript version.

I feel like 2 month is a lot to replace some ui-components + some props/state hook updates with little additional logic
regarding the top dashboard card: I think the only thing missing is the horizontal line, which should be easy to add: you can just add a HTML element or set the CSS border attribute accordingly.
While I applaud the idea of giving the template a fresh look, I believe a rewrite to TypeScript would be useful as well, since it would introduce better type and code safety, IDE support, readability, etc. In case you change your mind on this, I'd be open to support the grant.
Themes are nice but I'm not sure if it's very useful, since this template is used for the very early-stages of a Polkadot SDK project, rather than a public/customer-facing product.

Thank you for expressing your opinion @takahser. I think you are underestimating the work required. For instance, if you only look at the pallet Interactor  you will notice that these are not simple components. The fact that the code has not been updated in more than 2 years is also worrying for those who want to build applications on polkadot.
As mentioned above, we can provide a typescript rewrite if this is what the development community wants.

@stojanov-igor thanks for your reply

if you only look at the pallet Interactor you will notice that these are not simple components.

Pls correct me if I'm wrong, but wouldn't you just have to update the return value with the new UI components? Meaning, you'd bind all the event handlers of the existing component to the new ones (e.g. onChange={onInterxTypeChange}) and you're done.

As mentioned above, we can provide a typescript rewrite if this is what the development community wants.

That would be lovely indeed. I'd support the grant, if a complete TypeScript rewrite was included.

Hi all,
I have added Typescript migration as part of the milestone 1.

Pls correct me if I'm wrong, but wouldn't you just have to update the return value with the new UI components? Meaning, you'd bind all the event handlers of the existing component to the new ones (e.g. onChange={onInterxTypeChange}) and you're done.

The template is currently using semantic-ui-react. Migrating to Material-Ui is a little more complex than changing the attributes to new ones due to different design philosophies of Semantic UI and Material UI. For instance, the Interactor component that I mentioned previously is using Grid, Form, Dropdown, Input, Label which might not have the same attributes within Material Design. Furthermore, there are custom components that the substrate team has implemented such as TxButton, TxGroupButton within substrate-lib which have to be restyled manually.
Also, Material-UI follows a tree-shaking approach for importing components which allows developers to selectively import and use only the needed components. Semantic UI has a pre-build bundle which is larger in-size and can negatively affect performance.
Hope that clears out the confusion.


Segmentation fault

The first three lines of output are from the C code itself, while the rest of the output is from valgrind
ERROR c!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!! a-nc= 1 b-nr= 6
ERROR A!!!!!!!!!!!!!!!!!!!!!
==25411== Invalid read of size 8
==25411== at 0x55622C: tc_vote_proc (tc_mat.c:1087)
==25411== by 0x263BA9: ResolveVoteDialog::ResolveVoteDialog(QWidget) (resolvevotedialog.cpp:68)
==25411== by 0x200F7F: WalletView::gotoResolveVoteTab() (walletview.cpp:260)
==25411== by 0x202087: HivemindGUI::qt_static_metacall(QObject, QMetaObject::Call, int, void) (moc_hivemindgui.cpp:122)
==25411== by 0x6F8C71B: QMetaObject::activate(QObject, QMetaObject const, int, void) (in /usr/lib/x86_64-linux-gnu/libQtCore.so.4.8.6)
==25411== by 0x5AACCE1: QAction::triggered(bool) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5AAE866: QAction::activate(QAction::ActionEvent) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5F0369C: ??? (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5F08068: ??? (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5B06747: QWidget::event(QEvent) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5F0C04A: QMenu::event(QEvent) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5AB348B: QApplicationPrivate::notify_helper(QObject, QEvent) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== Address 0x0 is not stack'd, malloc'd or (recently) free'd
==25411==
==25411==
==25411== Process terminating with default action of signal 11 (SIGSEGV)
==25411== Access not within mapped region at address 0x0
==25411== at 0x55622C: tc_vote_proc (tc_mat.c:1087)
==25411== by 0x263BA9: ResolveVoteDialog::ResolveVoteDialog(QWidget) (resolvevotedialog.cpp:68)
==25411== by 0x200F7F: WalletView::gotoResolveVoteTab() (walletview.cpp:260)
==25411== by 0x202087: HivemindGUI::qt_static_metacall(QObject, QMetaObject::Call, int, void) (moc_hivemindgui.cpp:122)
==25411== by 0x6F8C71B: QMetaObject::activate(QObject, QMetaObject const, int, void) (in /usr/lib/x86_64-linux-gnu/libQtCore.so.4.8.6)
==25411== by 0x5AACCE1: QAction::triggered(bool) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5AAE866: QAction::activate(QAction::ActionEvent) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5F0369C: ??? (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5F08068: ??? (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5B06747: QWidget::event(QEvent) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5F0C04A: QMenu::event(QEvent) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== by 0x5AB348B: QApplicationPrivate::notify_helper(QObject, QEvent) (in /usr/lib/x86_64-linux-gnu/libQtGui.so.4.8.6)
==25411== If you believe this happened as a result of a stack
==25411== overflow in your program's main thread (unlikely but
==25411== possible), you can try to increase the size of the
==25411== main thread stack using the --main-stacksize= flag.
==25411== The main thread stack size used in this run was 8388608.

Fixed with merge https://github.com/bitcoin-hivemind/hivemind/commit/9880cb9b1ae49ffc600648f3bd9b058df6d7e009


Todo App Project

Closes #92

[x ] My project tutorial topic has already been approved by the Codédex team.
[x ] My project tutorial file renders properly in mdx.
[x ] My .mdx file follows the project template, as well as what's recommended in the content guidelines.
[x ] The content written is my own, and not plagiarized from other sources.
[x ] All code written is thoroughly functional and commented (or documented).
[x ] I have already completed a self-review of the project tutorial.
[x ] I will comply with changes made or recommended by the Codédex team about my project tutorial.

WIP

@Dusch4593 , the link to the project-template.mdx in the contributing guide leads to a 404. I think it's just because the template is under /docs versus the root. I can fix this in this PR. Would the URL be /main/docs/project-template.mdx?

Hey @mdwiltfong! Thanks for flagging this!
No need to make that change in this PR; I went ahead and made it here in aaa906c8fb4e4b14306e619a1445ef55482fbaeb. It turned out there also needed to be an underscore in project_template.mdx (not a dash).

Whoops! I was trying to be fancy squash some of my commits but I ended up mixing some commits 😬 Nonetheless this PR is ready for review @Dusch4593 !

Thanks @Dusch4593 !
I'll go ahead and address those comments and look at the email you sent.

Thanks @Dusch4593 !
I'll go ahead and address those comments and look at the email you sent.

Sounds great, @mdwiltfong! Let us know if you have any questions! 😄

Woah! I was able to squash my commits! So proud of myself 😎
@Dusch4593 Would you be so kind to give this another review?

@Dusch4593 thanks for the comments! Let me know what you think with the changes i've made

Nice, @mdwiltfong! I actually went and looked at some of your other files as well and left some feedback there (along with a little more in the actual tutorial).

No worries! I'll try and wrap those up during lunch.

Nice! Let me know what you guys think!
@Dusch4593 @sonnynomnom


./vcpkg is a directory

.Hello,
I am trying to follow the instruction here to learn how to do embedded c IoT, but I am stuck on the following line.
/vcpkg install --triplet x64-linux paho-mqtt
The error I get is:
-bash: ./vcpkg: Is a directory
Is this a bug, or am I doing something wrong in the instructions?
I am doing on Ubuntu 18.04.05 on Windows. I feel like the documentation is a little outdated, is there any recent resources?

Hi @uBoscuBo
Just to confirm you're doing this in WSL on Windows?
As for the installation, make sure that's in the directory for the cloned vcpkg, not in this repository. Also, be sure to check the vcpkgversion.txt in our repo to check out the specific version which we have tested.

Hi @danewalton
I ended up switching to my actual embedded device (Beagle Bone Black) using Debian.
Thank you for letting me know what the vcpkg-commit.txt that helped, but now I get the following error when I do the following command
./vcpkg install --triplet x64-linux curl cmocka paho-mqtt
bash: ./vcpkg: No such file or directory
I can't seem to find the vcpkg script on the vcpkg directory as directed here:

Thank you.

I think my issue is
./bootstrap-vcpkg.sh: 252: /home/uboscubo/EmbeddedDevTutorial/Chap11_Exploring_BBB/vcpkg/scripts/bootstrap.sh: /home/uboscubo/EmbeddedDevTutorial/Chap11_Exploring_BBB/vcpkg/downloads/tools/cmake-3.17.2-linux/cmake-3.17.2-Linux-x86_64/bin/cmake: Exec format error when I run the ./bootstrap-vcpkg.sh command

Yea I'm guessing the bootstrap script isn't working. If it succeeds, then that executable should be there. If you're having problems with the vcpkg install itself, I'd have to refer you to their repo since they likely will have more knowledge.

I appreciate it. I do have one more question while I have you. I have to get the vcpkg working before I do the build aspect? Or is it two different approach to get the embedded c SDK library?
https://github.com/Azure/azure-sdk-for-c/tree/main/sdk/samples/iot

In order to run the IoT samples, you will need to have the vcpkg working since that's how we pull in Paho MQTT.