CFE-965: [V2] Enable signature verification

Description
This change enables secure policy for signature verification on release and additionalImages (in V2) for all RedHat based images
Refer to v2/README.md for more details
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Testing
Checking additional images first - imagesetconfig
kind: ImageSetConfiguration
apiVersion: mirror.openshift.io/v1alpha2
storageConfig:
  local:
    path: /tmp/storageBackend

mirror:
  additionalImages:
  - name: registry.access.redhat.com/ubi8/ubi:latest

Ensure the additionalImages signature verification fails
Set a bad entry in /etc/container/policy.json (for registry.access.redhat.com)
{
  "default": [
      {
          "type": "insecureAcceptAnything"
      }
  ],
  "transports":
    {
      "docker-daemon":
          {
              "": [{"type":"insecureAcceptAnything"}]
          },
      "docker":
        {
          "registry.redhat.io/redhat/certified-operator-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io/redhat/community-operator-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io/redhat/redhat-marketplace-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-9-primary"
            }
          ],
	        "registry.access.redhat.com": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-9-primary"
            }
          ],
	        "quay.io/openshift-release-dev/openshift-release-dev" :[
 	          {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
	        ]
        }
    }
}

Execute oc-binary with --secure-policy flag
oc-mirror --v2 --config imstcfg.yaml file://cfe-965 --secure-policy

Console output
2023/10/12 13:53:38  [INFO]   : mode mirrorToDisk
2023/10/12 13:53:38  [INFO]   : local storage registry will log to /home/lzuccarelli/go/src/github.com/openshift/oc-mirror/logs/registry.log
2023/10/12 13:53:38  [INFO]   : starting local storage on :5000
2023/10/12 13:53:38  [INFO]   : total release images to copy 0
2023/10/12 13:53:38  [INFO]   : related images length 0
2023/10/12 13:53:38  [INFO]   : images to copy (before duplicates) 0
2023/10/12 13:53:38  [INFO]   : total operator images to copy 0
2023/10/12 13:53:38  [INFO]   : total additional images to copy 1
2023/10/12 13:53:38  [INFO]   : images to mirror 1
2023/10/12 13:53:38  [INFO]   : batch count 1
2023/10/12 13:53:38  [INFO]   : batch index 0
2023/10/12 13:53:38  [INFO]   : batch size 1
2023/10/12 13:53:38  [INFO]   : remainder size 0
2023/10/12 13:53:38  [INFO]   : starting batch 0
2023/10/12 13:53:41  [INFO]   : completed batch 0
2023/10/12 13:53:41  [ERROR]  : [Worker] errArray copying image 1/4 from manifest list: Source image rejected: None of the signatures were accepted, reasons: Invalid GPG signature: gpgme.Signature{Summary:128, Fingerprint:"199E2F91FD431D51", Status:gpgme.Error{err:0x9}, Timestamp:time.Date(2023, time.October, 9, 11, 31, 34, 0, time.Local), ExpTimestamp:time.Date(1970, time.January, 1, 1, 0, 0, 0, time.Local), WrongKeyUsage:false, PKATrust:0x0, ChainModel:false, Validity:0, ValidityReason:error(nil), PubkeyAlgo:1, HashAlgo:8}; Invalid GPG signature: gpgme.Signature{Summary:128, Fingerprint:"199E2F91FD431D51", Status:gpgme.Error{err:0x9}, Timestamp:time.Date(2023, time.October, 9, 11, 31, 34, 0, time.Local), ExpTimestamp:time.Date(1970, time.January, 1, 1, 0, 0, 0, time.Local), WrongKeyUsage:false, PKATrust:0x0, ChainModel:false, Validity:0, ValidityReason:error(nil), PubkeyAlgo:1, HashAlgo:8}; Invalid GPG signature: gpgme.Signature{Summary:128, Fingerprint:"199E2F91FD431D51", Status:gpgme.Error{err:0x9}, Timestamp:time.Date(2023, time.October, 9, 11, 31, 34, 0, time.Local), ExpTimestamp:time.Date(1970, time.January, 1, 1, 0, 0, 0, time.Local), WrongKeyUsage:false, PKATrust:0x0, ChainModel:false, Validity:0, ValidityReason:error(nil), PubkeyAlgo:1, HashAlgo:8}; Invalid GPG signature: gpgme.Signature{Summary:128, Fingerprint:"199E2F91FD431D51", Status:gpgme.Error{err:0x9}, Timestamp:time.Date(2023, time.October, 9, 11, 31, 34, 0, time.Local), ExpTimestamp:time.Date(1970, time.January, 1, 1, 0, 0, 0, time.Local), WrongKeyUsage:false, PKATrust:0x0, ChainModel:false, Validity:0, ValidityReason:error(nil), PubkeyAlgo:1, HashAlgo:8}; Invalid GPG signature: gpgme.Signature{Summary:128, Fingerprint:"199E2F91FD431D51", Status:gpgme.Error{err:0x9}, Timestamp:time.Date(2023, time.October, 9, 11, 31, 34, 0, time.Local), ExpTimestamp:time.Date(1970, time.January, 1, 1, 0, 0, 0, time.Local), WrongKeyUsage:false, PKATrust:0x0, ChainModel:false, Validity:0, ValidityReason:error(nil), PubkeyAlgo:1, HashAlgo:8}; Invalid GPG signature: gpgme.Signature{Summary:128, Fingerprint:"199E2F91FD431D51", Status:gpgme.Error{err:0x9}, Timestamp:time.Date(2023, time.October, 9, 11, 31, 34, 0, time.Local), ExpTimestamp:time.Date(1970, time.January, 1, 1, 0, 0, 0, time.Local), WrongKeyUsage:false, PKATrust:0x0, ChainModel:false, Validity:0, ValidityReason:error(nil), PubkeyAlgo:1, HashAlgo:8}
2023/10/12 13:53:41  [INFO]   : start time: 2023-10-12 13:53:38.936597935 +0200 CEST m=+0.068315660
collection time: 2023-10-12 13:53:38.936887769 +0200 CEST m=+0.068605489
mirror time: 2023-10-12 13:53:41.276122489 +0200 CEST m=+2.407840215
2023/10/12 13:53:41  [ERROR]  : [Worker] error in batch - refer to console logs

Update /etc/containers/policy.json to correct value
{
  "default": [
      {
          "type": "insecureAcceptAnything"
      }
  ],
  "transports":
    {
      "docker-daemon":
          {
              "": [{"type":"insecureAcceptAnything"}]
          },
      "docker":
        {
          "registry.redhat.io/redhat/certified-operator-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io/redhat/community-operator-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io/redhat/redhat-marketplace-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
          ],
	        "registry.access.redhat.com": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
          ],
	        "quay.io/openshift-release-dev/openshift-release-dev" :[
 	          {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
	        ]
        }
    }
}

Re-run oc-mirror

oc-mirror --v2 --config imstcfg.yaml file://cfe-965 --secure-policy

Console output

2023/10/12 14:04:51  [INFO]   : mode mirrorToDisk
2023/10/12 14:04:51  [INFO]   : local storage registry will log to /home/lzuccarelli/go/src/github.com/openshift/oc-mirror/logs/registry.log
2023/10/12 14:04:51  [INFO]   : starting local storage on :5000
2023/10/12 14:04:51  [INFO]   : total release images to copy 0
2023/10/12 14:04:51  [INFO]   : related images length 0
2023/10/12 14:04:51  [INFO]   : images to copy (before duplicates) 0
2023/10/12 14:04:51  [INFO]   : total operator images to copy 0
2023/10/12 14:04:51  [INFO]   : total additional images to copy 1
2023/10/12 14:04:51  [INFO]   : images to mirror 1
2023/10/12 14:04:51  [INFO]   : batch count 1
2023/10/12 14:04:51  [INFO]   : batch index 0
2023/10/12 14:04:51  [INFO]   : batch size 1
2023/10/12 14:04:51  [INFO]   : remainder size 0
2023/10/12 14:04:51  [INFO]   : starting batch 0
2023/10/12 14:07:44  [INFO]   : completed batch 0
2023/10/12 14:07:44  [INFO]   : start time: 2023-10-12 14:04:51.824126921 +0200 CEST m=+0.056019003
collection time: 2023-10-12 14:04:51.824638937 +0200 CEST m=+0.056531021
mirror time: 2023-10-12 14:07:44.201467392 +0200 CEST m=+172.433359478

Update imagesetconfig to include a release

kind: ImageSetConfiguration
apiVersion: mirror.openshift.io/v1alpha2
storageConfig:
  local:
    path: /tmp/storageBackend

mirror:
  platform:
    channels:
    - name: stable-4.13
      type: ocp
      minVersion: 4.13.1
      maxVersion: 4.1i3.1

Ensure the release signature fails
Update /etc/containers/policy.json with a bad entry
{
  "default": [
      {
          "type": "insecureAcceptAnything"
      }
  ],
  "transports":
    {
      "docker-daemon":
          {
              "": [{"type":"insecureAcceptAnything"}]
          },
      "docker":
        {
          "registry.redhat.io/redhat/certified-operator-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io/redhat/community-operator-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io/redhat/redhat-marketplace-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
          ],
	  "registry.access.redhat.com": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
          ],
	  "quay.io/openshift-release-dev/openshift-release-dev" :[
 	    {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-39-primary"
            }
	  ]
        }
    }
}

Execute oc-mirror

oc-mirror --v2 --config imstcfg.yaml file://cfe-965 --secure-policy

Console output
2023/10/12 14:18:44  [INFO]   : mode mirrorToDisk
2023/10/12 14:18:44  [INFO]   : local storage registry will log to /home/lzuccarelli/go/src/github.com/openshift/oc-mirror/logs/registry.log
2023/10/12 14:18:44  [INFO]   : starting local storage on :5000
2023/10/12 14:18:44  [INFO]   : processing minimum version 4.13.1 and maximum version 4.13.1
2023/10/12 14:18:45  [INFO]   : Found update 4.13.1
2023/10/12 14:18:45  [WARN]   : signature for 9c92b5ec203ee7f81626cc4e9f02086484056a76548961e5895916f136302b1f not in cache
2023/10/12 14:18:45  [INFO]   : signature 9c92b5ec203ee7f81626cc4e9f02086484056a76548961e5895916f136302b1f
2023/10/12 14:18:46  [INFO]   : content {"critical": {"image": {"docker-manifest-digest": "sha256:9c92b5ec203ee7f81626cc4e9f02086484056a76548961e5895916f136302b1f"}, "type": "atomic container signature", "identity": {"docker-reference": "quay.io/openshift-release-dev/ocp-release:4.13.1-x86_64"}}, "optional": {"creator": "Red Hat OpenShift Signing Authority 0.0.1"}}
2023/10/12 14:18:46  [INFO]   : image found : quay.io/openshift-release-dev/ocp-release:4.13.1-x86_64
2023/10/12 14:18:46  [INFO]   : public Key : 567E347AD0044ADE55BA8A5F199E2F91FD431D51
2023/10/12 14:18:46  [INFO]   : copying  quay.io/openshift-release-dev/ocp-release:4.13.1-x86_64
2023/10/12 14:19:45  [INFO]   : total release images to copy 184
2023/10/12 14:19:45  [INFO]   : related images length 0
2023/10/12 14:19:45  [INFO]   : images to copy (before duplicates) 0
2023/10/12 14:19:45  [INFO]   : total operator images to copy 0
2023/10/12 14:19:45  [INFO]   : total additional images to copy 0
2023/10/12 14:19:45  [INFO]   : images to mirror 184
2023/10/12 14:19:45  [INFO]   : batch count 23
2023/10/12 14:19:45  [INFO]   : batch index 0
2023/10/12 14:19:45  [INFO]   : batch size 8
2023/10/12 14:19:45  [INFO]   : remainder size 0
2023/10/12 14:19:45  [INFO]   : starting batch 0
2023/10/12 14:19:47  [INFO]   : completed batch 0
2023/10/12 14:19:47  [ERROR]  : [Worker] errArray initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:1dac5e9e31c011322d414a74f1aeb1ab2b4d766679b2ea7df359fa3456a7b83d: reading manifest sha256:1dac5e9e31c011322d414a74f1aeb1ab2b4d766679b2ea7df359fa3456a7b83d in quay.io/openshift-release-dev/ocp-v4.0-art-dev: unauthorized: access to the requested resource is not authorized
2023/10/12 14:19:47  [ERROR]  : [Worker] errArray initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:3a8b33263729ab42c0ff29b9d5e8b767b7b1a9b31240c592fa8d173463fb04d1: reading manifest sha256:3a8b33263729ab42c0ff29b9d5e8b767b7b1a9b31240c592fa8d173463fb04d1 in quay.io/openshift-release-dev/ocp-v4.0-art-dev: unauthorized: access to the requested resource is not authorized
2023/10/12 14:19:47  [ERROR]  : [Worker] errArray initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:2e1b327b96ce3b897f25133b0d119fbe671e499dee2483e72f5953cc85947a06: reading manifest sha256:2e1b327b96ce3b897f25133b0d119fbe671e499dee2483e72f5953cc85947a06 in quay.io/openshift-release-dev/ocp-v4.0-art-dev: unauthorized: access to the requested resource is not authorized
2023/10/12 14:19:47  [ERROR]  : [Worker] errArray initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:ce3e2e4aac617077ac98b82d9849659595d85cd31f17b3213da37bc5802b78e1: reading manifest sha256:ce3e2e4aac617077ac98b82d9849659595d85cd31f17b3213da37bc5802b78e1 in quay.io/openshift-release-dev/ocp-v4.0-art-dev: unauthorized: access to the requested resource is not authorized
2023/10/12 14:19:47  [ERROR]  : [Worker] errArray initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:c9836bc7472215104f20ba7f0656ad69061681cc626165cee18470645c880d33: reading manifest sha256:c9836bc7472215104f20ba7f0656ad69061681cc626165cee18470645c880d33 in quay.io/openshift-release-dev/ocp-v4.0-art-dev: unauthorized: access to the requested resource is not authorized
2023/10/12 14:19:47  [ERROR]  : [Worker] errArray initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:ee080b37108cc5bee6b0e0d1e55148f4aa67e3d236d53fb7d9aee4a83d187603: reading manifest sha256:ee080b37108cc5bee6b0e0d1e55148f4aa67e3d236d53fb7d9aee4a83d187603 in quay.io/openshift-release-dev/ocp-v4.0-art-dev: unauthorized: access to the requested resource is not authorized
2023/10/12 14:19:47  [ERROR]  : [Worker] errArray initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:29ef5c21337a918bb51939045206386790d22dec33cc705f668bdd0c7c9d5b51: reading manifest sha256:29ef5c21337a918bb51939045206386790d22dec33cc705f668bdd0c7c9d5b51 in quay.io/openshift-release-dev/ocp-v4.0-art-dev: unauthorized: access to the requested resource is not authorized
2023/10/12 14:19:47  [ERROR]  : [Worker] errArray initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:6a6bb6f9a57bc5484a3c3e3223606719c963b9939b07d40c2c7eaccf97ce6a20: reading manifest sha256:6a6bb6f9a57bc5484a3c3e3223606719c963b9939b07d40c2c7eaccf97ce6a20 in quay.io/openshift-release-dev/ocp-v4.0-art-dev: unauthorized: access to the requested resource is not authorized
2023/10/12 14:19:47  [INFO]   : start time: 2023-10-12 14:18:44.486017397 +0200 CEST m=+0.063208194
collection time: 2023-10-12 14:19:45.331170391 +0200 CEST m=+60.908361187
mirror time: 2023-10-12 14:19:47.390820731 +0200 CEST m=+62.968011585
2023/10/12 14:19:47  [ERROR]  : [Worker] error in batch - refer to console logs

Update the /etc/containers/policy.json to the correct value for quay.io/openshift-release-dev/openshift-release-dev
{
  "default": [
      {
          "type": "insecureAcceptAnything"
      }
  ],
  "transports":
    {
      "docker-daemon":
          {
              "": [{"type":"insecureAcceptAnything"}]
          },
      "docker":
        {
          "registry.redhat.io/redhat/certified-operator-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io/redhat/community-operator-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io/redhat/redhat-marketplace-index": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-isv"
            }
          ],
          "registry.redhat.io": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
          ],
	        "registry.access.redhat.com": [
            {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
          ],
	        "quay.io/openshift-release-dev/openshift-release-dev" :[
 	          {
              "type": "signedBy",
              "keyType": "GPGKeys",
              "keyPath": "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release"
            }
	        ]
        }
    }
}

This should now execute without any problems
Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

/hold

/unhold


improve closing of the server

Closing the sessions can be done concurrently.
I'm not sure why we were unlocking the mutex before calling session.Close().

Codecov Report

Merging #934 into master will increase coverage by 0.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #934      +/-   ##
==========================================
+ Coverage   90.64%   90.65%   +0.01%
==========================================
  Files          94       94
  Lines        6444     6448       +4
==========================================
+ Hits         5841     5845       +4
  Misses        387      387
  Partials      216      216

Impacted Files
Coverage Δ

server.go
92.89% <100%> (+0.15%)
:arrow_up:

Continue to review full report at Codecov.

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


Comments are low contrast in diffs on Monokai theme

VSCode Version: 1.29.1
OS Version: macOS Mojave 10.14

Steps to Reproduce:

Download the Github Pull Request plugin
Go into "Github Pull Requests" panel and double click a pull request.
Open one of the changes files and navigate where the diff shows changes (look for the green lines).
You'll then notice that comments are hard to see. Screenshot:

Does this issue occur when all extensions are disabled?: No

Thanks! I'm able to see this using the Monokai theme. This looks like an issue with the theme itself.


Can't use Vue component in my custom layout

Describe the bug
When Import Vue Component on layouts/my-cool-theme.vue, pages don't moves, (I think it's display:none won't applied on key pressed)
To Reproduce
Steps to reproduce the behavior:

Make vue component on root/layout  as layout

// my-cool-theme.vue

<template>

    <slot />

</template>


Post-intallation errors.

The info is in the pic. It's on Godot 4.3.stable.

I haven't touched anything yet. Should I be worried? Will it work?

It is most likely due to you not enabling the plugin as doing so adds the singleton that those scripts rely on. To enable the plugin you can go to Project > Project Settings... > Plugins. There you should see the plugin and just enable it then reload your project.

The message is generated right after the install process finishes. I didn't have the time to even try to use it or add it to the list of singletons.
That's why I was asking if there was something going on.

Like I said, you don't have to add the singleton manually, just enable the plugin and restart your project. Those errors are expected.
I will assume that the issue is fixed.


chore: update README.md to include details of how to approach the task

Updated README.md to give more information on how I approached the task.

Accidentally raised against the parent of the fork. (Sorry!) Declining.


docs: fix broken links

Resolves https://github.com/hyperledger/identus-docs/issues/182

@chereseeriepa I believe that my last commit should fix the problem of the job.
But you need to rebase your branch

@chereseeriepa I believe that my last commit should fix the problem of the job. But you need to rebase your branch. I believe you should have a button in the GitHub UI to do that

Done (I think)
Sorry should I have referenced it in the issue as well, I will do that next time

@chereseeriepa Thanks for your contribution


Allow ActiveAdmin 3

ActiveAdmin 3.0 has been released but the update is blocked for me due this gem does not support it.
Let's relax the condition to support ActiveAdmin 3.

@blocknotes Could you take a look into this?
Thanks!


ensure that Tagger field for ServerlessMetricAgent is set properly

What does this PR do?
One the previous PR that removed the global tagger from the codebase, we forgot to set the Tagger on all instances of ServerlessMetricAgent
Motivation
Describe how to test/QA your changes
Possible Drawbacks / Trade-offs
Additional Notes

/merge


ROX-16421: support OCI image index

Description
Central does not currently support images with manifest media type application/vnd.oci.image.index.v1+json. This PR adds this support by bumping the docker-registry-client library version which adds this support as well as adding a handler for this manifest type.
See https://github.com/stackrox/scanner/pull/1154 and https://github.com/stackrox/docker-registry-client/pull/10 for related work.
Checklist

[x] Investigated and inspected CI test results
[x] Unit test and regression tests added
~[ ] Evaluated and added CHANGELOG entry if required~
~[ ] Determined and documented upgrade steps~
~[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)~

Testing Performed
CI

/retest


Add Light Dark Mode

I can Add Light Dark Mode to all of the pages which adds another feature to this website and which just gives two choices to the user as whats its preferable UI is either light or dark.

Thats a needed feature, bit first of all we need to make need to make new home page, and then all rest pages. After that , this will be considered

Thats a needed feature, bit first of all we need to make need to make new home page, and then all rest pages. After that , this will be considered

So sir, is the part that has already been made in the repository need to be changed completely?

@himanshu007-creator About the home page, do we have to make a Home page from scratch? and even if we did make the home page, what are the chances of it being selected, I mean there must be other people also who have made the homepage UI but what I wanted to ask is, is there a selection criterion or procedure? #help

sorted


Update commons-compress to 1.26.2

Update commons-compress to 1.26.2

@mneethiraj Is there a way I can run CI to see if the change is ok. Following https://github.com/apache/ranger/tree/master/dev-support/ranger-docker is working well, but it takes a lot of time and also it is hard to work on multiple changes at once.

@kokosing  - thank you for the patch. It is merged in master and ranger-2.5 branches.

Is Hbase Service test connection verified?

@bhavikpatel9977  - if there is any issue with HBase test connection, let's track it via a separate JIRA.


Recipe/119 preprocessor usage and performance eval

Per pm/#119:

Use Preprocessor
Split the data
Evaluate model performance
Use trained model for forward predictions

@wgifford please take a look at this draft and let me know what you think.
In particular, when I go to make a forward prediction using the trained and evaluated model, am I doing that correctly? I assume the model gets modified by the Trainer; is that correct? Is the original model object modified, or does the Trainer make a copy? Ie., do I have to use trainer.model for the forward prediction?

I was thinking the following:

remove encode_categorical=False, from TSP
instead of "get_datasets" which return torch datasets, use:

train_df, valid_df, test_df = prepare_data_splits(
    input_df,
    context_length=params["context_length"],
    split_config=split_params,
)

this will give you dataframes.

do not use the zero-shot trainer and/or their evaluate method, go directly to the forecasting pipeline using the test data
you will need to train tsp on train_df, then pass tsp.preprocess(test_df) to the forecasting pipeline
don't trim the test data to context length, or use the explode option in the pipeline (we want all the predictions for the test data)
for plotting, plot a few chosen examples (using indices) with the ground truth showing
add a separate evaluation function to show how a custom metric can be implemented (I have an example I can provide).

@wgifford I've made those changes. LMK what you think.
A few things:

The PvA plot values are in scaled units. How can I convert back to the original units of the incoming data? Do you have a "de-scaler" Postprocessor?
I'd like to include forward prediction with pre-processed data, since it is what many users will do in production after evaluating the model. I'll need the "de-scaler" for this.
I'll need the evaluation function from you when you have it.

@wgifford, I merged your commit into my branch, but it's not signed. Could you amend the commit so that it is both "signed" (GPG/SSH) and "signed-off" (DCO)?
The instructions are in the first two bullets here:

The Developer Certificate of Origin (DCO) applies to the code, documentation, and any example data provided. See community CONTRIBUTING guide legal section for more on the DCO.
Commits must be GPG or SSH signed. See the community CONTRIBUTING guide signing commits section for details.

@wgifford thanks for this! Taking a look.

Made some minor changes. I will go ahead and merge.

I am not a huge fan of casting the dates, but if we must avoid the warning, I don't really see an alternative.


Muatation namespace

This PR adds the ability to turn a Controller into a Mutation Namespace as described in #440
The specific Implementation adds a MutationNamespace Attribute/Annotation which can optionally be added to a Controller to wrap all its mutations into a Mutation Namespace.
This would look something like this:
#[GQL\MutationNamespace]
class UserController {
    #[GQL\Query]
    public function user()...

    #[GQL\Mutation]
    public function create()...

    #[GQL\Mutation]
    public function update()...

    #[GQL\Mutation]
    public function delete()...

Which turns into:
UserMutations {
   create()...
   update()....
   delete()...
}

There is a optional name parameter on the MutationNamespace Attribute to rename automatically generated Namespace.
The automatically generated Namespace is the Classname - Controller + Muatations which turns UserController into UserMutations.
All queries in the Controller are completely unaffected.

Thanks for this @Lappihuan.
Firstly, is there any reason why we're limiting namespaces to mutations and not queries as well?  I'm assuming we can also namespace queries?  And, in this case, a GQL\Namespace attribute seems appropriate.  Can types be namespaced?  Should it be GQL\OperationNamespace if not?
Regarding the default namespacing, this is going to be contentious, as everyone is going to have different "controller" class names.  For instance, our "controller" namespace is Operation/Foo/Mutation.  I don't think we can settle on a default naming scheme that will have much unanimity.  At any rate, I don't think the chosen default is ideal.  We should probably just stick with whatever the class is, or even the entire namespace of the class.  I suspect most people will need to define the name option.

Firstly, is there any reason why we're limiting namespaces to mutations and not queries as well? I'm assuming we can also namespace queries? And, in this case, a GQL\Namespace attribute seems appropriate. Can types be namespaced? Should it be GQL\OperationNamespace if not?

@oojacoboo
This is a simple convention to group C*UD from CRUD since GraphQL only offers two Root queries (Mutation, Query) and since R from CRUD already maps 1:1 to Query, CUD could be grouped into a "Namespace".
But all thats it, is a parent Mutation user with the subType UserMutations which has all the mutations as fields.
As for the Attribute name, Namespace is a reserved word in PHP thats why i went with MutationNamespace since it describes the feature best.
I don't see this being usefull for Queries. And about Types, its just that a Type with fields, you'd be better to nest two types.
As for the naming, its just masking Controller out and Adds Mutations i don't mind adding a bunch common words to mask out and as soon as that convention doesn't work the name property can be used.
I actually forgot to set this as a Draft since there is quite a bit of stuff in the Technical implementation that should be improved.
Or at least discussed.
I'm unsure if those fields and Types should be created by a TypeMapper so they can be cached and so on. And if so i don't know way of doing so, but it might be easier than i think.

Can we add a possibility to specify a namespace as of #[Query] / #[Mutation] attributes too?
Or allow using new separated namespace attribute specified over methods?
We use invokable controllers with a single method in every class, so adding attribute over class (operation-related attribute already specified over method)  would be a bit uncomfortable :)

@andrew-demb do you have an example of such a invokable Controller?
I'm wondering if you shouldn't just use #[Mutation] as your "namespace" level and use #[Field] for whatever is nested in it.
Which would already be supported for your case.
See https://github.com/thecodingmachine/graphqlite/issues/182
Maybe to clarify, this is not a spec or anything special, its just a convention that should bring some DX to graphqlites way of grouping Root Level Mutations with controllers.

@Lappihuan
Here is an example:
// directory structure
Controller/
  Session/
    RevokeController.php
    StartController.php
_________________
// RevokeController.php
// ...
use TheCodingMachine\GraphQLite\Annotations\Mutation;

final class RevokeController
{
    #[Mutation(name: 'revokeSession')]
    public function __invoke(): bool
    {
        // just for example
        return true;
    }
}

I'm wondering if you shouldn't just use #[Mutation] as your "namespace" level and use #[Field] for whatever is nested in it.
Which would already be supported for your case.

Am I be correct if it will require to make some additional layer of classes with logic for "namespaced mutations"?
I think best variant for me will be a possibility to specify namespace parameter for #[Mutation] over controller method. It should be simple to use and namespace declaration will be near to mutation declaration

@Lappihuan makes sense and after reviewing our schema, applying namespaces to mutations is really all that's needed.  We already have around 100 mutations and only a portion of our apps are using GraphQL.  Luckily we have a decent pattern in place, but it's already becoming more problematic to find mutations.
#[MutationNamespace] sounds like an appropriate name to me.
https://graphql-rules.com/rules/mutation-namespaces
These list of rules are great overall.  The one on mutation namespaces does a pretty good job explaining how namespaces are helpful for others interested.
@andrew-demb makes a good point about defining namespaces on #[Mutation] directly.  But, not necessarily for the reason he mentioned, as that's a fairly strange implementation.  That said, I could easily see cases where you might have mutation/controller methods scattered across various classes that you want grouped together into a single namespace.  I could also see a desire to include a mutation into multiple namespaces.
What if we keep #[MutationNamespace] on a class which puts all mutations in that class within the defined namespace.  Then, also allow the attribute to be applied to mutation methods (must have Mutation attribute applied).  If the MutationNamespace is provided for a mutation method, it's placed within the defined namespaces and not the class' namespace.  To allow for multiple namespaces, the MutationNamespace would instead take an array for the property names.  We could also keep name or even make name a string|array type for API simplicity.
#[GQL\MutationNamespace(name: 'User')]
class UserController {
    #[GQL\Query]
    public function user()...

    #[GQL\Mutation]
    public function create()...

    #[GQL\Mutation]
    public function update()...

    #[GQL\Mutation]
    #[GQL\MutationNamespace(name: ['User', 'Role'])]
    public function delete()...

@oojacoboo @andrew-demb
I'm actually thinking about following the pattern @devmaslov started with #[Input] where you can define multiple Namespaces on classes and have a for property on #[Muatation] and #[Query] similar to how #[Field] works:
#[GQL\MutationNamespace(name: 'UserMuatations')]
#[GQL\MutationNamespace(name: 'UserQueries')]
#[GQL\MutationNamespace(name: 'Misc')]
class UserController {
    #[GQL\Query(for: "UserQueries")]
    public function user()...

    #[GQL\Query(for: "UserQueries")]
    public function userAlt()...

    #[GQL\Mutation(for: "UserMuatations")]
    public function create()...

    #[GQL\Mutation(for: "UserMuatations")]
    public function update()...

    #[GQL\Mutation(for: ["UserMuatations","Misc"])]
    public function delete()...

    #[GQL\Mutation(for: "Misc")]
    public function computeX()...

This gives quite a lot of flexibility and should also integrate with your Invokable Controller pattern as far as i can tell @andrew-demb
I'd actually also like to add the ability to define multiple #[Type] Annotations since i recently was suprised that Type doesn't support that and i really enjoy that feature on Input.

@Lappihuan The MutationNamespace can be defined anywhere though, right?  You could even include them all in a single namespace file if you wanted?

@oojacoboo yes i'd hope so, but i'm still a bit unsure about the implementation of the whole thing.
The output Type annotation https://graphqlite.thecodingmachine.io/docs/annotations-reference#type-annotation

Misread you on the #[Type] annotations - sounds good there.
As for the API design, I love it 🎉

Now i'd actually call it RequestGroup or something alike since it can be used for both Mutations and Queries.

Mutations and queries are called "operations".  So, OperationNamespace would be appropriate.

@Lappihuan now that 6.0 is released, it'd be great to get this merged in for 6.1.

@Lappihuan hope we haven't lost you.  What do we need to do to get this one merged in?

I've since learned this should not be done with the current gql spec: https://github.com/MichalLytek/type-graphql/issues/1219#issuecomment-1055293025


Odgi stats consensus graphs

PR checklist

[x] This comment contains a description of changes (with reason)
[ ] CHANGELOG.md is updated
[ ] If you've fixed a bug or added code that should be tested, add tests!
[ ] Documentation in docs is updated
[ ] If necessary, also make a PR on the nf-core/pangenome branch on the nf-core/test-datasets repo

This will take care of #10.
This PR only affects main.nf.

I replaced all occurrences of file with path to stick to the DSL2 standard as specified at https://www.nextflow.io/docs/latest/dsl2.html#dsl2-migration-notes.
2 new parameters:

do_stats=false. If set to true, odgi stats will be executed for the seqwish, the smoothxg, and the consensus graphs.
consensus_jump_max. This specifies the maximum jump in nucleotides of a structural variant to include in the consensus graph. The argument is comma-separated. For each entry, a consensus graph will be generated and statistics will be produced, if do_stats=true.

For better debugging, all odgiStats output is copied into the results folder under results/odgiStats. Later in the development, the output of this channel will be forwarded to MultiQC.

I was experimenting with emit in order to bend Nextflow to my need. However, I am still lacking some experience working with Nextflow. So I suspect that my code does, what I intend it to do. But there might be a neater way in Nextflow to get there. Or I don't stick to some formatting standards. Happy to learn!

I suspect https://github.com/nf-core/pangenome/pull/16/checks?check_run_id=1453281628 does not run through because of a too old Nextflow version?
For me the following works:
nextflow run main.nf --with-docker nfcore/pangenome:dev --input ../HLA-zoo/seqs/DRB1-3123.fa --do_stats

@heuermh or @Zethson Please take a look. Thanks!

Maybe we need to bump the Nextflow version to a higher one, again?

Ok, now let me find the lowest Nextflow version number the tests run through.

I just figured that the next proper release after 20.07.1 is 20.10.0, so we have to stick with this one.


Intro Video Should have some Meat 🥩

Right now the intro video has great production value, but in the future we should iterate where it has some information for the user, too

Should we just use the one I made for the release?
https://res.cloudinary.com/netlify/video/upload/v1605720958/explorers/jamstack-explorers-preview.mp4

Should we just use the one I made for the release?
https://res.cloudinary.com/netlify/video/upload/v1605720958/explorers/jamstack-explorers-preview.mp4


Setup CI pipeline for building harbor tile

Building harbor tile and upload to gcs for downloading

Done, see https://<IP_ADDRESS>/teams/main/pipelines/habo-ci?groups=harbor-ci


fix: properly serialize undefined in vuex store

Types of changes

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

Description
Resolves #3825
serialize-javascript dont serialize undefined values.
https://github.com/yahoo/serialize-javascript/issues/35
This PR use https://github.com/Rich-Harris/devalue for json serialization instead. JSON.stringify not used to avoid XSS
Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly. (PR: #)
[x] I have added tests to cover my changes (if not applicable, please state why)
[x] All new and existing tests passed.

Codecov Report

Merging #3913 into dev will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##              dev    #3913   +/-   ##
=======================================
  Coverage   97.64%   97.64%
=======================================
  Files          18       18
  Lines        1231     1231
  Branches      335      335
=======================================
  Hits         1202     1202
  Misses         28       28
  Partials        1        1

Impacted Files
Coverage Δ

lib/builder/builder.js
96.31% <ø> (ø)
:arrow_up:

lib/core/renderer.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Thanks for you effort @aldarund ☺
If devalue provides more value (no pun intended) and is a drop-in replacement for serialize-javascript I'd advocate to fully replace serialize-javascript with it.

No inconsistencies
Better support of common structures

Map
Set
undefined
cyclical references,
repeated references

We should also keep in mind that devalue does not support function serialization and has no plan to add this.

@manniL i did replaced serialize-javascripteverywhere where it was used for json. As i see in other places it is used for javascript serialization ( at least calls to serialize-javascript dont have isJson argument) so it probably cant be replaced entirely

Could you fix conflicts @aldarund ?

conflicts fixed

Waiting to CI passing :)

Hey the new option kills all methods (like formatters for tables) when serializing. That’s intended right?

@appinteractive not quite follow. What u do mean by methods? Functions? If functions they were killed before as well
See here
https://runkit.com/5baa3cac92a46f00121e2985/5babafa1191da800121dc83f

Getting isues with this now.
✖ error NuxtServerError: Cannot stringify a function
at walk (xxx/node_modules/devalue/dist/devalue.umd.js:16:19)
at xxx/node_modules/devalue/dist/devalue.umd.js:49:72
at Array.forEach ()
at walk (xxx/node_modules/devalue/dist/devalue.umd.js:49:40)
at xxx/node_modules/devalue/dist/devalue.umd.js:49:72
at Array.forEach ()
at walk (xxx/node_modules/devalue/dist/devalue.umd.js:49:40)
at xxx/node_modules/devalue/dist/devalue.umd.js:49:72
at Array.forEach ()
at walk (xxx/node_modules/devalue/dist/devalue.umd.js:49:40)
at devalue (xxx/node_modules/devalue/dist/devalue.umd.js:53:5)
at Renderer.renderRoute (xxx/node_modules/nuxt/dist/nuxt.js:2042:50)
at process._tickCallback (internal/process/next_tick.js:68:7)

@benfavre can you provide us your state? Likely there is a function inside

i18n issues again ...👎

@benfavre Could you open up an issue here ?

@benfavre According to the source code messages should never be a function, only an object 🤔

This is because I use the Lazy option.
https://nuxt-community.github.io/nuxt-i18n/lazy-load-translations.html

@benfavre But even with lazy it should await the promise properly (source)

apparently not, nothing special in my lang files

Weird. Could you open up a new issue with reproduction as request (here)? Let's continue the discussion there.

https://cmty.app needs forces a repro link ... randomly pasted jsfiddle (probably going to get many of theses)

I think this should have been a breaking change, I rolled back to nuxt<2.1.0 because my project throws Cannot stringify arbitrary non-POJOs from devalue now. ;)
Repro is basically this: https://github.com/Rich-Harris/devalue/blob/d73708c51f70bf9b962103976b44e782b1e3a068/test/test.ts#L89-L93 , putting foo in nuxt's vuex store.
(Just a heads up, I'm not complaining, thanks for the awesome work!)

@vhf We are working on replacing the error with "just" a warning to revert the breaking change.


Merge the multi-deployment branch to master finally, so we can continue development on master!

Our version 2.0 development has come so far.  We are close to release 2.0.
What is missing

[x] resolve conflicts
[x] fix the latest bugs: https://github.com/b3yond/ticketfrei/issues?q=is%3Aissue+is%3Aopen+label%3Abug
[ ] test the latest fixes, before we put this into master: https://github.com/b3yond/ticketfrei/issues?q=is%3Aissue+is%3Aopen+label%3A"wait+to+be+tested"
[x] make an own repository for promotion material #21
[ ] what a good opportunity to move the 3 ticketfrei repos to an own organization
[ ] organize a release party ;)

Future git workflow
But it would be nice to have branches for different versions etc. So we develop on branches, merge them into master, and from there we merge it to stable1 or stable2, where it gets released.
As soon as we implement tests, this will be useful or so.
@git-sid can you open an issue about writing tests, so we can write down our thoughts and track the process?

wuhuu! let's test the rest on the stable2 branch in a beta.


N-D support?

Hello,
I am interested in using nolds for the analysis of N-dimensional times-series.
I was wondering if there is a case for developping the support of N-dimensional data in the algorithms you have implemented (I'll be doing that work and providing a pull request down the line.) Or if running the algo on each dimensions separately and analysing the results separately makes more sense.
What do you think?

Hi toinsson,
currently the focus of nolds is exclusively on one-dimensional time series. The reason for this is mainly that I only work with one-dimensional time series myself and I have zero experience with the N-dimensional case.
I think support for N-dimensional data would be very interesting, but I only can dedicate a very limited amount of my time to nolds. You can of course send me a pull request of your implementations and I would be very glad for that, but it may take me quite some time to actually review the code.
As I said I do not have any experience with the multidimensional case, but I think I remember that there are extensions of some of the algorithms in nolds for multiple dimension (DFA comes to mind). I think it is important to look at the research in the area you are interested in and to see which algorithms are used by other researchers. The selection of algorithms for nolds was also mainly based on one paper that lists useful non-linear methods for HRV analysis.

hello, thanks a lot for your reply.
I realised a bit later that it might be harder than expected to implement this.
This is best closed for the moment.


Chibuzo - singleListing(CSS)

Styling the Single listing page

@Domicaren1 the page is already styled.

nice. Alright @Achele


Recompiled binary and README edits

Love this project Salvatore,
Here is a recompiled binary that works on 0.82.3 flipper firmware.
Also clarified the README.
Thanks,
Levi

Oh sorry I pushed the wrong readme, fixed now.


[Feature request] Support vuepress-plugin-blog

Feature request
Description

Is there any plan to integrate vuepress blog plugin?
Proposed Solution
Either migrate vupress-plugin-blogs to vuejs v3 or integrate its feature directly into default-theme.

Any plan or progress with this one? Will it be maintained as official plugin, or still being supported as a community plugin.

When I migrated to the v2 version, I found that it was not supported, which was so frustrating

Vuepress-plugin-blog 2 may help.
Docs are at https://vuepress-theme-hope.github.io/v2/blog/

@meteorlxy  If you think that vuepress-plugin-blog2 is ok, I can make a PR to rename it as @vuepress/plugin-blog in this repo.

@Mister-Hope Cool. But we may not put all those kind of plugins into a single repo.
I think we may need to somehow split this repo.

vuepress/core: including the bundlers, cli, client, core, markdown, utils, shared, etc.
vuepress/ecosystem (or vuepress/contrib or something else): including plugins and themes.

I'm not quite sure about the structure, maybe we could have other ways, like vuepress/core, vuepress/plugins, vuepress/themes.
The idea is to keep the core more stable. We have and will have more feature requests about the default theme and various plugins, it's not a good idea to keep the version of the core consistent with them after v2 stable is released

@meteorlxy I agree with having a more minimal and stable core and too many officially plugins and themes in the main repo may cause some bloat that keeps the core from evolving and having the ecosystem follow.
That being said, I think having an official blog theme and plug-in would make fans of v1 more eager to migrate.
My vote goes to vuepress/core and vuepress/ecosystem

Vuepress2 is awesome, I appreciate it. I can't wait to update my blog theme to be compatible with it once a blog plugin v2 merged.
Vote to vueperss/core and vuepress/ecosystem.

BTW, I already have my blog built with vuepress2 at  https://mrhope.site with vuepress-theme-hope@v2

I concur with people having their own tastes for a blog, but regardless... a plugin would be great because even I ran into some trouble and confusion trying to convert vuepress-theme-casper to v2

Closing as the original @vuepress/plugin-blog repo with no activity, and VuePress-plugin-blog2 is adding blog support to V2 with detailed docs.


Slow Printing Problem

Hi,
I am currently using
Distributor ID:	Ubuntu Description:	Ubuntu 22.04.2 LTS Release:	22.04 Codename:	jammy
cups version is 2.4.1
device for HP_Color_LaserJet_CM2320nf_MFP: hp:/net/HP_Color_LaserJet_CM2320nf_MFP?ip=<IP_ADDRESS>
Problem is, while i want to print multiple page document, it is printing so slow. One page at time. I think the printing queue is broken while printing somehow. I tried to write a document from other platforms(such as Android or Windows) and it wrote it quickly. Can't find solution. Thanks!
error_log.txt
HP_Color_LaserJet_CM2320nf_MFP.txt
log.txt

Hi,
thank you for reporting the issue and for the attached files!
Slowness usually happens if there is a conversion required for the file to be sent to the printer (PDF -> PS conversion in this case), because additional filters are run and the output file can end up pretty big for the printer to consume.
From the debug logs you've attached I see pdftops filter from cups-filters took a long time, especially the gs command it has spawned - so the possible issue (stress on possible - it can be an expected behavior for your file - it might be too complex...) can be in Ghostscript in Ubuntu or cups-filters calling it.
I've tested your PPD locally with writing into a local file, so the same filter chain is used - it is processed quickly on Fedora 38 with cups-filters-2.0b3 and  ghostscript 10.0.0. Please contact your distro maintainers for further help, there might be an issue with older version of those packages.


[Apple Mail] Fixes and improvements for commands

Description

#13936: Fixed See Recent Messages to factor in Message Limit.
Visual Improvements for See Recent Messages and See Important Messages commands.
Improved error handling for See Recent Messages and See Important Messages commands.
Message Actions: Fixed rendering order for "See Message" and "Open in Mail" actions.
Confirmation toast instead of HUDs to better prompt users for all no-view commands.
Upgraded the dependencies

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

closes https://github.com/raycast/extensions/issues/13936

It seems to be working for me, thanks for the update @jfkisafk 🔥
@yug2005, could you check this PR?


Add feature for RDS DB Parametergroups

Description of your changes
Add rds/dbparametergroup resources as described in
https://github.com/crossplane/provider-aws/issues/567
by following the guidelines in https://github.com/crossplane/provider-aws/blob/master/CODE_GENERATION.md
ToDo:
Add the possibility to pass in json / parameters that will be added/changed in the created DB parametergroup. It seems like these parameters cant be passed in at creation of the parametergroup. They need to be changed after it is created:
https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html

@muvaf can you review, please?

closing PR and re-creating from non-broken branch


Request for c.auth.logout

Would like this command for Tachyon that lets the user logout, but where server doesn't forcibly disconnect them from the socket

It's doable but I'm curious as to the use case. I'd currently rather you kill the connection and start a new one.

The issue for me atm is there's no way for clients to know if they were forcibly disconnected (e.g. due to a server error), or intentionally disconnected. If they were forcibly disconnected, the client needs to provide a way for the user to recover, i.e. reloading, but if they were intentionally disconnected (e.g. due to kicked, logged out, planned server maintenance), then the client needs to gracefully handle these and display messages, and send them back to login screen instead of performing full reload.
In theory, I could work around this client-side by marking when the user sends a logout request and then suppressing the next disconnect event from triggering the fatal reload prompt, but it feels a bit dirty.
The alternative would be the server sending the reason for disconnect when it closes the socket.
Just looking at the the events for tcp sockets in node, and it seems like there's a few potential avenues to communicate data or type of disconnect:
https://nodejs.org/api/net.html#event-close_1
See close, end, error and timeout.
But also, I think there's an argument to be made that logging out shouldn't constitute a full disconnect from the server, and there may by information the client wants from the server that shouldn't require authentication.

I'm adding it to my todo list :)


⚠ SceneTime has degraded performance

In c3cd4b4, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 2100 ms

Resolved: SceneTime performance has improved in 41591de after 6 minutes.


issues scaling across processes with the Redis store

First, I'd like to say thank you to the Socket.io devs for the great work, and for providing a way to scale this across processes with the Redis store! I think that this is a really promising thing, even though we've been encountering a few issues.
We've been having some problems scaling up socket.io with the Redis store. The problem appears to be that the PubSub is too chatty. For instance, each time a socket disconnects, every other process subscribes to the dispatch:[id] channel for that socket and waits for the close message, then unsubscribes from that channel. So in the case where you have to restart your entire service (let's say on a non-backward-compatible release), you have a TOTAL number of sockets connected to all of your worker processes (let's call that n) and a number of processes (let's call that p) and each process has to subscribe and unsubscribe for each socket, and the complexity of an unsubscribe in Redis is O(n) where n is the number of already-subscribed listeners on a channel. So that would seem to be O(n*p^2) work for Redis, and anyway is O(n) for every worker process.
Since we are only targeting websockets, we are working around this by disabling all pubsub channels except handshake, and only doing the initial handshake broadcast (so all processes other than the one that completes the handshake simply discard the data from the 'handshaken' hash as though the handshake was never finished). This appears to mitigate the issues sufficiently that we can run websockets via socket.io in production across our 36 node.js processes on 3 machines, but it still obviously won't scale indefinitely because every process still has to process a handshake message on the 'handshake' channel for each handshake initiated.
I propose that this would scale across processes if it used Redis as a store rather than publishing all data to all workers in these cases. For instance, rather than publishing on 'handshake', write a handshake:[id] key in Redis with a timeout of 30s and then let the process that completes the handshake update that key (or delete it and write a handshake-completed:[id] key).
I understand that this gets more complicated for other transports, where buffering responses becomes important, but it seems like this might be better-solved by storing the buffer as a capped list of JSON objects in Redis (our AJAX short-polling fallback uses that approach, and it works well), rather than using pubsub to pass them around.
I apologize for the lengthy and unsolicited suggestion, and we'd love to help if y'all are interested in going this direction. Also, if we're just doing something in a completely wrong or unanticipated way, please let me know. Thanks!

+1

We already talked on IRC about this, and i'm definitely +1 on this, as i'm also seeing the same behavior in my own application.
It would be just as easy to have one listener for handshakes,disconnects etc instead of adding new listeners for each connection. Which would probably make the stores much smoother to work with and gain a better overal performance.
Marked as bug + store. But I would love to see pull request against this ;)

Right now the decision is for us to continue to run with our current hack (turning off all pubsub channels except for the inital handshake propagation). We're not a good candidate for fixing the store, since we only run websockets in production and are happy with our short-polling fallback there for downlevel browsers (which are anyway decreasing in number). Also, it looks like guille's work on websocket.io and engine.io may obviate this kind of work.

+1


Is there a feature available in uptime to show which users are logged in to the domain?

⚠ Please verify that this bug has NOT been raised before.

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

🛡 Security Policy

[X] I agree to have read this project Security Policy

📝 Describe your problem
Is there a feature available in uptime to show which users are logged in to the domain?
Was hoping to see if there was a feature like this...
🐻 Uptime-Kuma Version
Latest
💻 Operating System and Arch
Ubuntu
🌐 Browser
Chrome
🐋 Docker Version
No response
🟩 NodeJS Version
No response

No - or - depends on what you mean with "logged in to the domain"...
Can you elaborate more?


Polarization sorter has power greater than unity

Carrying out a naive optimization of the polarization sorter challenge can yield unphysical results, i.e. situations where power is not conserved. This should be investigated and remedied.
We suspect the violation is coming from the large terms in the Fourier expansion, which are likely to be less well converged.

#117  removed the polarization sorter as a gym challenge.


Unable to install make v4.3

Describe the bug
An error is thrown when trying to install make v4.3
Steps to reproduce
asdf plugin add make
asdf install make 4.3

* Downloading make release 4.3...
* Installing make release 4.3...
asdf-make: Expected /root/.asdf/installs/make/4.3/bin/make to be executable.
asdf-make: An error ocurred while installing make 4.3. install log is /root/.asdf/downloads/make/4.3/install.log

Expected behavior
make 4.3 is installed
Screenshots

Additional context
Running on Ubuntu 20.04

Fixed by running apt install build-essential. The log file mentioned No acceptable C compiler found in $PATH


Fix describe titles duplication

In order to resolve #23 and fix #20

Genius! Thanks for the fix :+1:

@mltsy Thank you.
It sould be mentioned that later I found @sahava did the same but he didn't pull-requested his changes here.


DJMcSpookem: Watch zeveroh

DJMcSpookem requests the watch of the watch_keyword zeveroh. See the MS search here and the Stack Exchange search here.

zeveroh has been seen in 0 true positives, 0 false positives, and 0 NAAs.

Coverage remained the same at 63.789% when pulling 1a026cf9cf2a79563860c1a8b3c687a2c0d6074b on auto-blacklist-1540948118 into 2b8a9968710fc1a67ede0e269a53a6251572a4a3 on master.


[SSoC 2.0] Updating readme files

Fixes Issue Number - #280

Updating the comments

Updating the code line for cloning
As git clone https://github.com/<your-github-username>/Web3.0-World,
this code line should be git clone https://github.com/<your-github-username>/Future.WebNet

Also updating other code lines for easy use for users who wants to contribute.

Also updating other readme files (like readme files of level 0, level 1, level 2, etc.) for better understanding and remove any mis-confusion.

Also updating Summary.md

@Vikash-8090-Yadav Sir, please review this pull request and requested to merge it into the main branch for a successful contribution under SSoC 2.0 program

LGTM, Thanks!


Can you please provide an example for boilerplate for each function in your framework?

Can you please provide an example for boilerplate for each function in your framework?

You should find the documentation pretty exhaustive, but I'll add more. Here's the documentation that uses DocC: https://rryam.github.io/MusadoraKit/documentation/musadorakit/mcatalog/song(id:fetch:)-73pfi

@rudrankriyam: Are there comments explaining for each line of code in the source code very clearly and plenty of parameter-sweeped examples for each overloaded function signature for the API for MusadoraKit?  I don't have time to reverse-engineer each line of code.

@shyamalschandra make your own framework if you think you can do better.

@rudrankriyam: First of all, there is sparse documentation on MusicKit from Apple.  Second, where did you learn software engineering?  Do you have the proper workflow (spec written by a project manager, UML documentation written by an architect, pseudo-algorithms written by a theoretician, design-patterned code written by a "real" software engineer, and industrial-track test cases (regression and unit along with A/B testing) by a test engineer?  The numbers don't lie according to this cloc program output.  There are 162 files of Swift where there are 4,790 lines of Swift code and only 2,826 lines of comments.  In my high opinion, that is definitely not extensive documentation, that is sparse or nothing documentation.  To be completely honest, if you want to showcase your talents to the world, I would highly recommend taking a software engineering class along with a technical writing class in high school or college.  Which schools did you go to and what Swift courses in software engineering methodologies did you take?  Please answer and be upfront.  What books did you read?  I worked in the industry and I know what I am talking about.  Case not closed.

@rudrankriyam & @jordibruin: There are only 12 sparsely documented Swift-written packages on Github.
Link to MusicKit topic from Github
Plus, there are only 165 answers to questions on StackOverflow.
Link to MusicKit topic from StackOverflow
Facts don't lie.  Prove me wrong.  I don't have time to go through each package to find no documentation like the official non-documented API from Apple Corporation in Cupertino, CA.

@shyamalschandra I want to get started with your 1vs1-pong project: https://github.com/shyamalschandra/1vs1-pong.
Where can I find the extensive documentation to get me started? "I don't have time to reverse-engineer each line of code.".
Would be nice to walk the talk on this one, thanks!

This thread is amazing, thanks for the laugh


Where is the location METEOR_APP_DIR?

Now I tried to host spyfall via Heroku.
But I facing with METEOR_APP_DIR ...
I try to set METEOR_APP_DIR with

spyfall/spyfall

But not working. Do you have any idea?

It is sufficient to set METEOR_APP_DIR to ./spyfall and add the buildpack from https://github.com/AdmitHub/meteor-buildpack-horse.git


Update to 2019 queue

Description
Updates our build queue to the 2019 version.
Image is based on: https://github.com/improbable/platform/pull/18765
Engine: https://github.com/improbableio/UnrealEngine/pull/409
Tests
It builds!
Primary reviewers
@mironec @m-samiec

You will also need to update the template steps with the new build queue


[scan] Add automatic detection of derived data path

This is used to put it into the lane context from the fastlane action. The path is useful when following actions need to access the output of the tests
This is first used in https://github.com/KrauseFx/trainer

Tests are failing, will take a look as it seems like it behaves differently on Circle

Ready for review

I added a couple of comments/questions.

LGTM, if you decide you want to move forward with it.

@mfurtak I added one more commit, could you do another review on this? 👍

:+1:

@KrauseFx After updating to scan 0.11.0, Slather stops working. I get this error from Slather:
03:27:30 Slathering...
03:27:31 /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/slather-2.3.0/lib/slather/project.rb:177:in `profdata_coverage_dir': No coverage directory found. (StandardError)
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/slather-2.3.0/lib/slather/project.rb:410:in `block in find_binary_files'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/slather-2.3.0/lib/slather/project.rb:409:in `each'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/slather-2.3.0/lib/slather/project.rb:409:in `find_binary_files'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/slather-2.3.0/lib/slather/project.rb:344:in `configure_binary_file'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/slather-2.3.0/lib/slather/project.rb:240:in `configure'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/slather-2.3.0/lib/slather/command/coverage_command.rb:51:in `execute'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/clamp-0.6.5/lib/clamp/command.rb:67:in `run'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/clamp-0.6.5/lib/clamp/subcommand/execution.rb:11:in `execute'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/clamp-0.6.5/lib/clamp/command.rb:67:in `run'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/clamp-0.6.5/lib/clamp/command.rb:132:in `run'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/slather-2.3.0/bin/slather:17:in `<top (required)>'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/bin/slather:23:in `load'
03:27:31 	from /Users/jenkins/.rbenv/versions/2.2.3/bin/slather:23:in `<main>'
03:27:31 No coverage directory found.
03:27:31
03:27:31 	Are you sure your project is generating coverage? Make sure you enable code coverage in the Test section of your Xcode scheme.
03:27:31 	Did you specify your Xcode scheme? (--scheme or 'scheme' in .slather.yml)
03:27:31 	If you're using a workspace, did you specify it? (--workspace or 'workspace' in .slather.yml)

My slather.yml file and scan command didn't change. They are the same I use since scan version 0.8.0:
scan --clean --scheme MyCompany -w MyCompany.xcworkspace --code_coverage -o fastlane/test_output/unit
slather.yml:
coverage_service: cobertura_xml
xcodeproj: MyCompany.xcodeproj
workspace: MyCompany.xcworkspace
scheme: MyCompany
output_directory: .
ignore:
  - ExamplePodCode/*
  - ProjectTestsGroup/*
  - appium-tests/*
  - ci/*
  - fastlane/*
  - Pods/*
  - .github/*

Side note: using scan 0.10.1 works.

@cbalea thanks for the report. Let's move the discussion to https://github.com/SlatherOrg/slather/issues/244 👍

@cbalea thanks for the report. Could you please share the complete output when running scan? Do you use fastlane? Could you create a new issue on the fastlane repo, and follow the template, so that we have all required information 👍

@cbalea I think I found the issue, I'll have a fix prepared in a minute

@cbalea I pushed https://github.com/fastlane/fastlane/pull/5711, which should fix the issue 👍

@krausefx how can I test it locally?


Document the process for releasing GlaDoS

Sounds like a great time to do this is when @njgheorghita does it for the first time.
This doesn't have to be a fancy or public writeup. Just anything written down will be a step above where we're at AFAIK.

This definitely needs to be done, though I believe it's blocked on switching glados over to run in the cluster.

Glados has been deployed through Ansible for a while now, and the line to deploy it is in the trin book. Resolved


Doesn't mirror my DSI screen to HDMI display

Followed all the steps but doesn't work ..
feeling helpless
.

Will need more information to help you. Perhaps look at the Raspberry Pi forums.

Also, you probably should be using raspi2raspi to mirror the DSI screen to an HDMI display
https://github.com/AndrewFromMelbourne/raspi2raspi


⚠ Spryr has degraded performance

In 065a6f3, Spryr (https://spryr.com) experienced degraded performance:

HTTP code: 200
Response time: 7012 ms

Resolved: Spryr performance has improved in d1a328b after 7 minutes.


White Boots - Change update() so relic can work properly having more than one charge

Obsolete since the relic got a rework.


minDate prop in not working.

Warning: React does not recognize the minDate prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase mindate instead. If you accidentally passed it from a parent component, remove it from the DOM element.

Please provide the code, you are using

Closing issue due to no steps to reproduce


Update .travis.yml

Explicitly declare golang version - travis is picking 1.11 for some reason

nice try


Fjord: update Fjord spec for brotli compression feature

Description
Update spec for the Fjord upgrade's introduction of versioned channel_encodings & Brotli-based channel compression.

great work!


Sample: Add TransformViaArucoMarker sample

The sample reads a point cloud, detects an aruco marker and its pose.
Then transforms to this frame and saves the point cloud.
Tested sample on Ubuntu 20.04 and Windows with debug and release. Need a point cloud with an aruco marker to test the sample.

[ ]  Add sample point cloud to SampleData

I need some help with understanding the CI linting errors...

I need some help with understanding the CI linting errors...

@chrisasc Have you introduced any // NOLINT that is not already used in the samples? If not sure, check please.

@chrisasc Have you introduced any // NOLINT that is not already used in the samples? If not sure, check please.

What is the benefit of using a new aruco lib compared to cv aruco?
Should we also include something about aruco library as we do with eigen, pcl and cv in the readme? How to build with or without aruco depending. For eigen we did: -DUSE_EIGEN3=OFF
What happens if you try to use cmake in windows without pointing to aruco lib. Will it give the same nice "please point to aruco lib" as for eigen, cv and pcl?

What is the benefit of using a new aruco lib compared to cv aruco?
Should we also include something about aruco library as we do with eigen, pcl and cv in the readme? How to build with or without aruco depending. For eigen we did: -DUSE_EIGEN3=OFF
What happens if you try to use cmake in windows without pointing to aruco lib. Will it give the same nice "please point to aruco lib" as for eigen, cv and pcl?

Went through your comments Satja. Should this sample only take a single marker or multiple? For simplicity it should be only a single marker, but it would be cool to detect multiple. Depending on the outcome i will modify the name of the functions to either singular or plural.

Went through your comments Satja. Should this sample only take a single marker or multiple? For simplicity it should be only a single marker, but it would be cool to detect multiple. Depending on the outcome i will modify the name of the functions to either singular or plural.

Went through your comments Satja. Should this sample only take a single marker or multiple? For simplicity it should be only a single marker, but it would be cool to detect multiple. Depending on the outcome i will modify the name of the functions to either singular or plural.

I think we should chose simplicity for now.

Went through your comments Satja. Should this sample only take a single marker or multiple? For simplicity it should be only a single marker, but it would be cool to detect multiple. Depending on the outcome i will modify the name of the functions to either singular or plural.

I think we should chose simplicity for now.

@chrisasc Have you introduced any // NOLINT that is not already used in the samples? If not sure, check please.

@chrisasc bump

@chrisasc Have you introduced any // NOLINT that is not already used in the samples? If not sure, check please.

@chrisasc bump

@chrisasc Have you introduced any // NOLINT that is not already used in the samples? If not sure, check please.

@chrisasc bump

No, I have not. The one that are introduced are from Torbjørn

@chrisasc Have you introduced any // NOLINT that is not already used in the samples? If not sure, check please.

@chrisasc bump

No, I have not. The one that are introduced are from Torbjørn


cannot display "\n" as line break

when I run toastr.info("page1 \n page2"),
I wish it can show:
page1
page2
but now is:
page1 page2

\n is not a valid line break in HTML. Use .

What john-sanders-2 tried to write is:

Yes,
 is indeed what I meant to write. Thank you @ErroneousFatality

May be able to use the CSS rule: white-space: pre or similar to render \n as newlines - not sure if maintainers want to force this behavior by default?

@TimFerrell Recommend closing because this was a user issue, not an issue with the library.


IGCSInjector should check for a window with a non-empty title

Nowadays steam (and other launchers) games spawn a second process: the one started is the one logging into the service, the one spawned is the real process with the game. This causes problems if the IGCSInjector injects the dll in the first process, which has the same name as the second.
A simple fix is to test if the process has a window and if the window has a title. If the window isn't present or the window doesn't have a title, it's not a process worth injecting.
First check if there are multiple processes with the same name and if so, then find the one with a valid mainwindow.

Implemented


update laravel.gitignore for ignore all lock file

ignore all .lock files for install the new dependency file.

Lockfiles are not meant to be ignored in most projects.

Thanks for the PR, please provide more context on why this is needed. See the project's README for help.


Question regarding this project

How is this project different from https://github.com/bakape/meguca since both are written in Go?

gochan is a very traditional style imageboard, that generates static HTML pages that can be served by a web server. meguca seems to have WebSockets to connect clients to the server so they get posts pushed in realtime.

Is it possible to add this explanation to the ReadME? Would be useful to detail thegoals of the project.

I've updated the README in commit 1cd3fc2c409c5aac388d7cdd8537b7c08a690072. Let me know if that change clears things up.

Due to it being over a week since the last comment from the reporter, and I've added an explanation that gochan generates static HTML to the README file, I'm closing this issue. If there are further questions, it can be reopened.

@onekopaka originally I would like to ask for a "product comparison" table but that is too much to ask for, I would assume. Good to close it anyway.


there are a lot of extra notebooks that should be cleaned up/ deleted

for example, the logistic regression notebook in the classification folder can be removed.

i deleted them


Leaflet - adding the capability to update the title dynamically based on animation frames

Checklist

[X] I've searched through the plugins to make sure this feature isn't already available, or think it shouldn't require a plugin.
[X] I've searched through the current issues to make sure this feature hasn't been requested already.
[X] I agree to follow the Code of Conduct that this project adheres to.

Motivation
Create a map visualization with leaflet that takes a geojson with time properties and displays not only the time slider which you can with Folium or Leaflet Timestampedgeojson but also the title of the map will update based on the timestampedgeojson text. For example, if the time slider is on 1980 while playing the animation then the title of the map will be set to 1980. The title will get updated frame by frame. I already posted to the Folium GitLab and they said it is not possible within the Python wrapper for Leaflet.
Suggested solution
I am not sure if there is a property within Leaflet to access frame by frame properties but I did not see anything in documentation pertaining to API properties for this capability.
Alternatives considered
I have looked at other python based libraries and not leaflet seems to best one in JS to use.

This is core Leaflet, which doesn't implement any time sliders. Besides, you should be able to set up your own frame loop, query the relevant properties, and set document.title.


Part 4: User Privacy

As a player, I want to be able to decline recording geolocation for privacy reasons.

finished


Add TempFile Directoy parameter to WriteFile

https://github.com/google/renameio/blob/370b856c87755ae99ae5f93f85f113b98f216cff/writefile.go#L24
WriteFile uses an empty string as the TempFile Directory. Please add this as parameter to WriteFile.

No: the renameio.WriteFile method is designed to use the same signature as ioutil.WriteFile.
Use the TempFile entry point directly if you have a need to specify the directory.

I understand, thanks!


[Fix] Screen on refresh the feed

Even if notes are loaded, refreshing the feed gives this unpleasant screen, instead of some old notes to at least look at


Optimise-Reconfigure layout of files elements

What's the Problem?
Some difficulties with the placement of elements in Files, think can be improved.
Example: some elements waste too much space, other elements not needed, some elements in bizarre locations, some additional elements to optimise use, some changes to existing elements.
1-Date column widths preferably not truncated the dates in List view. Ideally dates should expand/contract to system , short, medium & long formats se macOS Finder images:
1-Finder-List-Date-Expanded-Short.png
2-Finder-List-Date-Expanded-Medium.png
3-Finder-List-Date-Expanded-Long.png
2-Disclosure triangle icon elements to view contents of multiple folders inside current tab List view.
See attachment:
Finder-List-Markup-View-Contents-multiple-folders.png
3-Files Path field-so much wasted space, could be utilised to house folder icon controls and Nav arrow icons in same bar at top of window where the current Tab/Title bar is.
Attachment:
Finder-Command+Shift+G-Go.to.Directory-Markup.png
Shows how a Go to path overing box and be displayed with key command, and by adding path icons in the status bar.
4-Removing Tab-bar from Titlebar-this is a poor google inspired design philosophy. Place the Tab-Bar above and actual folder window pane width-between the right side of sidebar and the right edge of window, Tabbar should be specifically enclosed in this space, this is the focus this is relevant. Tabs outside here stuff up in the titlebar lacks cohesion.
See attachment:
Files-List-Markup-Points-Markup.png
Yes a bit chaotic this markup screenshot, it's detailing and pointing out several elements that could be in better places.
Similar to previous point 3, Folder icon controls, Search field and Nav arrow icons, put in Titlebar. Then this gives user space to click and move the window from the Titlebar.
Put tabs titlebar above the window pane-tabs are relevant to the window pane space width.
Make the Sidebar full vertical height, also shows reducing indent space, also giving users ability to position drives above or below favourites.
Solution/Idea
Above does both, issue and resolution ideas
Alternatives
see screenshots:

Priorities

Capability
Priority

| This proposal will allow developers to accomplish Y | Could |
Files Version
2.3
Windows Version
Windows Feature Experience Pack 1000.25136.1000.0
Comments
No response

First of all Files is not suppose to be MacOS finder whitch many of your suggestions are.
You can right click and select resize to fit for the date collum to show correctly.
Dates are set to follow the users preference and removing that for a force date based on size just doesnt make sence.
The tree view feature in details view is beeing discussed in #1928
Ctrl + L is how you get to the path bar in Windows and is how file explorer has always done it.
Tabs beeing in the titlebar is used by many thing other than Google chrome. They didnt make that a standard. MacOS simply just does it there own way. You can move it at the very top as theres a area for it and theres one on the right.
Reording of sidebar items is beeing discussed in #9351 but right now WinUI hasnt implement a way of doing so/is blocking the develpment of it on Files. The padding and position are WinUI styles to keep consistency and allows for better touch input.

Thank you for your feedback, it looks like @Josh-65 covered this pretty well but I want to add that it's best if you open and comment on individual issues


How is the performance comparison between Yoga with other layouts in iOS? Autolayout, Texture, etc.

I am curious how good the performance of Yoga in comparison with other layouts, like Autolayout or Texture?

Hi @ajanuar, I've created the Layout Framework Benchmark.
The benchmark test the following layout frameworks:

Auto layout
Manual layout
FlexLayout
LayoutKit
PinLayout
UIStackViews

Yoga's performance hasn't been tested directly, but check FlexLayout's performance, it reflects the Yoga's performance since FlexLayout is a Swift interface for Yoga.
You'll see that the performance is amazing.
Texture's hasn't been benchmarked, anyone interested could add it to the benchmark.

Sure, I can help to benchmark using Texture.
But basically, Flex is much much faster than AutoLayout & UIStackViews.

What's result Texture vs FlexLayout?

@crossle no one has added the Texture framework to the benchmark yet.

Sorry, i was busy with works before. I already created the comparison in my local, will request PR to
@lucdion soon. Do you test the performance in real devices?

yes @ajanuar, benchmark must be executed on real devices. Test it on devices that you have. I could benchmark other devices later.


ResNet50 on ImageNet training script example

Motivation
A few goals for this script:

Replace several of the yamls we use for benchmarking purposes.
Example for users to quickly get a sense of how to use a variety of features in composer (general training, saving/loading checkpoints, create recipes, etc.)
Hackable example for users to quickly swap in their own model, dataset, or other training examples

For 1, yamls this should cover:

resnet18.yaml
resnet34.yaml
resnet50.yaml
resnet101.yaml
resnet152.yaml
resnet50_mild.yaml
resnet50_medium.yaml
resnet50_spicy.yaml

Additionally, there are a few features that are not in the yamls:

SpeedMonitor
LRMonitor
Save checkpoint
(Only) Resume training from a checkpoint

Results
Need to run...
Questions

Thoughts on having example commands as a comment at the top of the document? I could add these to a README, but I thought it would be nice to have the script be completely standalone
What do people think about how the recipes are instantiated? Is it okay that there are no argparse for the individuals methods in the recipe?
Should there be warnings about the crop resolution, loss function, and duration if a recipe is set, but these args are set to their default value?
Is it necessary to implement FFCV or Dali now to alleviate dataloader bottleneck? Or can this wait until a separate PR?

To answer your questions:
Thoughts on having example commands as a comment at the top of the document?
This or putting them in a README seems fine. The one thing I'd say is that, assuming we keep this in its own directory, something has to go in the README and example commands seem like the most natural content. I'd also vote against replicating them in two places.
What do people think about how the recipes are instantiated? Is it okay that there are no argparse for the individuals methods in the recipe?
Seems good to me. This both constrains the user's choice (good for an example) and suggests a helpful pattern (thinking in recipes rather than individual algos).
Should there be warnings about the crop resolution, loss function, and duration if a recipe is set, but these args are set to their default value?
Can we just make it do the right thing by default? E.g., check the 'recipe' arg earlier in the script?
Is it necessary to implement FFCV or Dali now to alleviate dataloader bottleneck? Or can this wait until a separate PR?
Fine to put in a separate PR. Only reason to fuse it would be to save you work + compute time, and it sounds like you already have it working this way.

This is really cool! I love the fully-working example without any YAHP. Great work, @Landanjs!

OMG, that was a real struggle with the doc tests. I wound adding the markdown in exclude_parameters in conf.py since I didn't want to include this in any toctree yet. Is it okay as a temporary solution?
Otherwise, hopefully I addressed all comments

Oops. I opened this tab >3h ago and didn't see that it got merged. Well, now we have suggestions for the next PR.


Fix/ new deprecated structure

Fixes
New deprecated structure (#117)
Keys for and since were added to deprecate options in order to avoid a warning.

I pushed one commit to add local types definitions to override the original ones that are not accurate.
Without this commit, your changes would not be accepted by TypeScript because at the time of editing this pull request, the types for deprecate() are:
export function deprecate(
  message: string,
  test: boolean,
  options: {
    /**
     * A unique id for this deprecation. The id can be used by Ember debugging
     * tools to change the behavior (raise, log or silence) for that specific
     * deprecation. The id should be namespaced by dots, e.g.
     * `"view.helper.select"`.
     */
    id: string;
    /**
     * The version of Ember when this deprecation warning will be removed.
     */
    until: string;
    /**
     * An optional url to the transition guide on the emberjs.com website.
     */
    url?: string | undefined;
  },
): void;

The keys for and since would not be valid.
I made a request to updates those types:
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/55745
When it is accepted we will be able to delete our patch.

@BlueCutOfficial
I pushed one commit to add local types definitions to override the original ones that are not accurate.
Without this commit, your changes would not be accepted by TypeScript because at the time of editing this pull request, the types for deprecate() are:
export function deprecate(
  message: string,
  test: boolean,
  options: {
    /**
     * A unique id for this deprecation. The id can be used by Ember debugging
     * tools to change the behavior (raise, log or silence) for that specific
     * deprecation. The id should be namespaced by dots, e.g.
     * `"view.helper.select"`.
     */
    id: string;
    /**
     * The version of Ember when this deprecation warning will be removed.
     */
    until: string;
    /**
     * An optional url to the transition guide on the emberjs.com website.
     */
    url?: string | undefined;
  },
): void;

The keys for and since would not be valid.
I made a request to updates those types:
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/55745
When it is accepted we will be able to delete our patch.

https://github.com/DefinitelyTyped/DefinitelyTyped/pull/55745 has been approved and merged, I pushed a commit to get the latest types definitions for @types/ember__debug.


can we use node_modules to replace plugins folder?

Sure you can use, but you may need to be change css,image,js paths


Recognize if-like Tree.MultiSegmentApp as IfThenElse IR

Pull Request Description
Fixes #9165 by recognizing if/then/else in a special way. Introduces new IfThenElse IR element to represent both if_then_else as well as if_then cases. Such element needs to be converted into executable from at least in IrToTruffle. This PR proposes to do it via new mini pass that converts IfThenElse to Case.Expr. This may not be ideal, but at least it unifies the two branching approaches for now.
Checklist
Please ensure that the following checklist has been satisfied before submitting the PR:

[ ] The documentation has been updated, if necessary.
[ ] All code follows the
Scala,
Java,
[ ] Unit tests have been written where possible.

[ ] Continue to support if_then_else methods?

To keep compatibility with original if_then_else and if_then method invocations, following code:
from Standard.Base import all

type X
    Ok
    Bad

    if_then_else self ~t ~f = case self of
        X.Ok -> t
        X.Bad -> f

    if_then self ~t = case self of
        X.Ok -> t
        X.Bad -> Nothing

main =
    a = X.Ok.if_then_else "true" "false"
    b = X.Bad.if_then_else "true" "false"
    c = if X.Ok then "true" else "false"
    d = if X.Bad then "true" else "false"

    x = X.Ok.if_then "true"
    y = X.Bad.if_then "true"
    z = if X.Ok then "true"
    w = if X.Bad then "true"

    [a, b, c, d, x, y, z, w]

should print ['true', 'false', 'true', 'false', 'true', Nothing, 'true', Nothing]. As of fba42c5a47 it doesn't do that. E.g. compatibility is broken.

Instrumenter_Spec tests are failing probably because we don't support instrumentation inside of case of statements!? fyi @4e6.

While working on this PR I realized that we represent every case_of branch as a separate function. Can we speed something up by delaying the IR processing when we need such a closure?
Creates wip/jtulach/LazyIfCaseOfBranches9165 branch and measuring startup. Let's see the result!

Looks like just converting IfThenElse to Case.Expr isn't really speeding up anything.

Quite contrary. The most essential benchmark is slowing down. I guess direct conversion of IfThenElse to a Truffle node is needed.

I can finally run if benchmarks:
sbt:runtime-benchmarks> benchOnly IfVsCaseBenchmarks
[info] Benchmark                      Mode  Cnt  Score   Error  Units
[info] IfVsCaseBenchmarks.caseBench3  avgt    3  0.369 ± 0.016  ms/op
[info] IfVsCaseBenchmarks.caseBench6  avgt    3  0.512 ± 0.054  ms/op
[info] IfVsCaseBenchmarks.ifBench3    avgt    3  0.314 ± 0.011  ms/op
[info] IfVsCaseBenchmarks.ifBench6    avgt    3  0.498 ± 0.053  ms/op
[info] IfVsCaseBenchmarks.ifBench6In  avgt    3  0.905 ± 1.001  ms/op

both ifBench3 and ifBench6 (both using the IfThenElseNode) are faster than coresponding case statements. ifBench6In remains slower, but that's OK as that one is still using the if_then_else method invocation.

Standard library tests are green: https://github.com/enso-org/enso/actions/runs/11582091869/job/32244310882?pr=11365
Next: Fix error reporting - e.g. unit tests


Wire up counts and enable proportion mode in markers

Now that https://github.com/VEuPathDB/EdaDataService/pull/269 is merged, this should be pretty simple.
Wait for #143 though ;-)

this looks to be done? im going to close, and if someone thinks im wrong they can reopen.


Fix python::pip - use valid, but highly unlikely package version

This PR fixes python::pip's $latest_version by replacing notreallyaversion with 9!0dev0+x.
Fixes #695

Looks good to me

Arch failure is not related


add helper class to build import bundle node

Goal
The goal of this PR is to add a helper class for node bridge
Checklist

[x] Tests added

Based on issues encountered this morning, we should probably bump the npm package patch version in this PR.


Restoration of open projects in separate windows now always restored to tabs

Description
Recently, like in the last 3-4 months, Atom for me has stopped restoring windows correctly.
Steps to Reproduce

Open Atom
Open 2 projects in 2 windows
Move them to separate windows
Quit atom: cmd+q
Reopen Atom both projects are in a single window

Before close:

After open:

Expected behavior:
Restore windows
Actual behavior:
Restores single window with tabs for each project
Reproduces how often:
Always
Versions
1.60.0

I have "Restore previous Windows on start" set to always.
I've tried deleting ~/.atom/storage/application.json.
I've searched issues, there's tonnes of results, but it's so hard finding anything relevant for recent version of Atom. I can't find anything similar.


Updates to rod dynamics

Updates and improvements to rod dynamics. These changes reflect the rod dynamics in the OpenFAST version of MoorDyn, they have been verified against the MoorDynF code.

Mistake, this was meant for the v2 branch


remove codecov patch

Codecov Report

Merging #5 (a681985) into main (03f2d16) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##            main      #5   +/-   ##
=====================================
  Coverage   0.67%   0.67%
=====================================
  Files         36      36
  Lines       1037    1037
=====================================
  Hits           7       7
  Misses      1030    1030

Continue to review full report at Codecov.

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


Use JDK 14 for CI and CD (#1226)

opensearch-security pull request intake form
Please provide as much details as possible to get feedback/acceptance on your PR quickly

Category: (Enhancement, New feature, Bug fix, Test fix, Refactoring, Maintenance, Documentation)

Github Issue # or road-map entry, if available:

Description of changes:

Why these changes are required?

What is the old behavior before changes and new behavior after changes? (Please add any example/logs/screen-shot if available)

Testing done: (Please provide details of testing done: Unit testing, integration testing and manual testing)

TO-DOs, if any: (Please describe pending items and provide Github issues# for each of them)

Is it backport from main branch? (If yes, please add backport PR # and commits #)

By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

:exclamation: No coverage uploaded for pull request base (opendistro-1.5@753e93d). Click here to learn what that means.
The diff coverage is n/a.

@@                Coverage Diff                @@
##             opendistro-1.5    #1234   +/-   ##
=================================================
  Coverage                  ?   62.69%
  Complexity                ?     2947
=================================================
  Files                     ?      229
  Lines                     ?    16321
  Branches                  ?     3056
=================================================
  Hits                      ?    10233
  Misses                    ?     4510
  Partials                  ?     1578

Continue to review full report at Codecov.

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


Imported the packages and classes also modified the pubspec.yaml

The shared preferences package and the onboarding screen.dart was not imported in the main.dart causing errors. I imported them.
Also there was no folder named images in the assets folder but was mentioned in the pubspec causing serious warnings worked on them.

This is quite basic PR and now this issue has been resolved. So no need for this.


Upgraded to macOS High Sierra, cannot build bison in Release mode

When building bison in Release mode on macOS High Sierra, I get the following error:
  CCLD     src/bison
ld: warning: directory not found for option '-L/Users/isaachier/proj/cmake/hunter/_testing/Hunter/_Base/5b769f7/4f86784/9a87fe0/Install/lib'
  GEN      doc/bison.help
/bin/sh: line 1: 86473 Illegal instruction: 4  src/bison --version > doc/bison.help.tmp

From what I can gather online, seeing the main issue may be in illegal optimization for the platform.

Wait, may have found the root cause: https://github.com/Homebrew/homebrew-core/pull/15129/commits/43adae2c38931a3fe5028d502f81fe8445b846fd.

This may affect a lot of libs down the line. Apple's new release means that any "%n" in snprintf and the like causes a crash in the program.