Calculate incremental note commitment trees

Motivation

We need to compute Orchard, Sapling, and Sprout note commitment trees incrementally (and thus their roots) as note commitments are produced as part of shielded transactions on the blockchain. We can then use these updatable data structures to check that anchors in future transactions are pointing to  the roots of note commitment trees we have observed and computed ourselves before.
Specifications

Implementing an incremental merkle tree is not directly specified in the spec but the MerkleCRH hash functions are:
https://zips.z.cash/protocol/protocol.pdf#merklecrh
https://zips.z.cash/protocol/protocol.pdf#merklepath
Designs

The draft Treestate design RFC is related: https://github.com/ZcashFoundation/zebra/blob/main/book/src/dev/rfcs/drafts/0005-treestate.md
Solution

Implement the Sapling and Orchard incremental note commitment trees, supporting append(), and checking conformance with empty root test vectors and incrementally added note commitments  test vectors.
Resolves the sapling and orchard parts of #1287
Review

https://github.com/ZcashFoundation/zebra/issues/2425 relies on this
Reviewer Checklist

[ ] Code implements Specs and Designs
[ ] Tests for Expected Behavior
[ ] Tests for Errors

Follow Up Work

Sprout

@dconnolly: does this PR also cover #1320? I remember we discussed something along those lines previously but I'm not 100% sure

@dconnolly just to confirm: is the PR ready, and I'll just need to address the comments, or is some part of it incomplete?
Also I'm bit confused about the context, the PR basically replaces and old implementation. What was that old implementation? Just a placeholder?

@dconnolly: does this PR also cover #1320? I remember we discussed something along those lines previously but I'm not 100% sure

This PR only calculates the incremental note commitment trees for sapling and orchard.
Here is the remaining work:

calculate the incremental note commitment tree for sprout (part of #1287)
update all 3 incremental note commitment trees in the state (#1320), when we:

add a block to a non-finalized chain
fork a non-finalized chain
add a block to the finalized tip

query and validate anchors in the transaction verifier (new ticket?)

The design for #1320 will be very similar to the chain history tree, but we won't need to validate anchors in the state.

Also I'm bit confused about the context, the PR basically replaces and old implementation. What was that old implementation? Just a placeholder?

It was a buggy implementation based on an incorrect understanding of the spec (or possible an unclear spec).

FYI we've published (and are using in zcashd) the incrementalmerkletree crate, which you could either use directly or leveraged in tests for cross-checking.

I've added the test in 42a8d6fb if you want to take a look. It's a bit ugly, it was just to validate the idea.

I've added the test in 42a8d6f if you want to take a look. It's a bit ugly, it was just to validate the idea.

This looks great!
Looking forward to seeing the final PR.

Update: I've changed it to use incrementalmerkletree but I need to solve a bug. No need to review this right now unless you want to.

I've updated the code. This should be now ready for review.

Solved the bug; it was a confusion between "layers" (what the spec uses, root is layer 0) and "levels" or Altitudes (what incrementalmerkletree uses, root level is 31).
In an attempt to make that clearer, I've changed the code such that we use layers everywhere and convert any levels to layers when needed. Not sure if I succeeded :sweat_smile:
I've incorporated the recent spec change to MerkleCRH^Orchard that encodes "null" values as a zero byte vector, which simplifies some of the code by avoiding Options
I've added test vectors for Orchard from zcash-test-vectors
I've tried to organized the tests by moving them (and the vectors) to their own files. But the vectors.rs / test_vectors.rs split is a bit weird. Suggestions are welcome. (Maybe move test_vectors.rs to zebra-tests?

Levels, layers, leaves, altitudes, positions, 😵

I took the liberty of resolving the remaining of @dconnolly's comments since: they were small; I believe they were properly addressed; @teor2345 approved the PR; and I don't want to bother her vacations just for those :rofl:


Add socok8s-trackupstream job

Similar to openstack-trackupstream and cloud-trackupstream, a new job
called soco-trackupstream is added.
This job will periodically update the Cloud:socok8s:master/socok8s RPM
package from the git source defined in the _service file.
This is needed to get an updated ISO with the latest socok8s code on a
daily base.

Job deployed, but change to track-upstream.sh untested

I had the idea to only use Pipeline Jobs for Cloud 10 as they are easier to connect with each other. If this is urgent we can go ahead and merge this but we might change it later again.

@rsalevsky this is a job on ci.o.org, no pipelines there

@rsalevsky this is a job on ci.o.org, no pipelines there

And? Doesn't mean we can't change that or at least think about it.

Followup to hopefully fix the job is https://github.com/SUSE-Cloud/automation/pull/3618


chore: add integration tests for cookie handling

This PR follows on from https://github.com/valendres/playwright-msw/pull/30. It adds a bunch of integration tests to make sure cookies are handled in an expected way in between tests. To achieve this, it required beefing up the login form so that it simulates how authentication may work in a real application.
The new tests:
https://github.com/valendres/playwright-msw/pull/36/files#diff-b7608c5d28bb64f30c2fc1fd5a3d077edfe379b7d3d9380ec22563b40a0f346d

@lesha1201 this PR may be of particular interest to you 🙂


readme: updated link to IoTDevKit package repo

Looks like the IoT DevKit repo link is outdated and <...>/2.0/<...> is a correct one.

Merged. Thanks!


fix(material/chip): allow focusing to disabled listbox options

allow focusing to disabled listbox options

This is still a draft, need to do more testing and cleanup the code a bit.

Hi @crisbeto , this is working now, and it's ready for your review


Add Timestamp utils

This PR adds utility class for working with Timestamp (which is copied from Time, and will be removed there later).

@armiol, PTAL.


Work Items should be searchable by string

From @mishaone on June 21, 2017 5:0
Work items can currently be filtered based on area, assignee and type, but this is not useful when searching to see if an existing issue has already been logged. Work Items should be searchable by strings or keywords to be able to tell if the new issue would just be a duplicate.
Copied from original issue: openshiftio/openshift.io#263

Should the work items be searchable just by title or description as well?

@mishaone this question is for you.


Questions about the source of the camera_path.json file in the render method

The render method requires a parameter, the parameter name is camera_path, this parameter corresponds to a camera_path.json file, how is this file generated? Calculated from the image information (coordinate position)? Let me know if there is a method for generating the camera_path.json file in nerfstudio. Thank you

You can export the cameras manually created by you in nerfstudio

Although there should be a way to generate cameras (the camera_path json) from the original images (colmap). Maybe parsing in some way transforms.json to the camera_path format?

 If you already have your test camera poses for inference in ex. transforms_test.json file, then you have to do the following for each of the transform_matrix inside the transforms_test.json file:
camera_pose = (global_transform @ transform_matrix) * global_scale
You just create a new json file with the above transformed poses and some additional fields such as "fov", "aspect_ratio" etc. and voila you have your camera_path.json file ready to be used with ns-render.

I really don't want to create the camera path file manually, I need an automated way. I haven't successfully created a transform.json file yet, and I don't know how to create or generate transforms. I did not successfully create the transforms.json file using ns-process-data. I actually need to create the implementation code for camera_path.json and transforms.json, or something more concise. There's a lot of nerfstudio code that I haven't figured out yet.

If you do not want to create it manually as mentioned in the previous comment then you have to do the following steps: Typically you get a dataparser_transforms.json file inside your experiment directory which contains the global transform and global scale that was applied on your data during training. Assuming you already have your test camera poses for inference in ex. transforms_test.json file, then you have to do the following for each of the transform_matrix inside the transforms_test.json file: camera_pose = (global_transform @ transform_matrix) * global_scale
You just create a new json file with the above transformed poses and some additional fields such as "fov", "aspect_ratio" etc. and voila you have your camera_path.json file ready to be used with ns-render.

In transforms.json we can find:
{
    "w": 1920,
    "h": 1080,
    "fl_x": 2112.723689601598,
    "fl_y": 1079.287413874534,
    "cx":<PHONE_NUMBER>049482,
    "cy":<PHONE_NUMBER>099115,
    "k1": -0.15875208367910668,
    "k2": 0.5445972290211778,
    "p1": 0.031097698426890398,
    "p2": -0.008216706346486307,
    "camera_model": "OPENCV",
    "frames": [
        {
            "file_path": "images/frame_00120.png",
            "transform_matrix": [
                [
                    -0.0009658443869269452,
                    -0.9999993072865259,
                    0.0006727340400314923,
                    1.6029432288042562
                ],
                [
                    0.9999992280870377,
                    -0.0009653180331807652,
                    0.0007822956114453294,
                    -0.4232954579179001
                ],
                [
                    -0.0007816456672382416,
                    0.0006734890965645985,
                    0.9999994677211022,
                    1.6207892465144746
                ],
                [
                    0.0,
                    0.0,
                    0.0,
                    1.0
                ]
            ],
            "colmap_im_id": 120
        },
        ...
        ]
}

So the fields  "w", "h", "fl_x", "fl_y", "cx", "cy", "k1", "k2", "p1", "p2" are the global transform and each "transform matrix" is every image transform?

Does your project code already have the code to generate the camera path in this way? If yes, please also give the name of the file

With the option "interpolate" in the ns-render you avoid needing a camera path in order to render the scene. Although generating the camera path from the transforms.json not trivial.

hi @dberga ,
kindly ask do you have any suggestions on generating the camera_path.json in an automatic way? I'm currently facing the same issues. Thanks.

hi @dberga , kindly ask do you have any suggestions on generating the camera_path.json in an automatic way? I'm currently facing the same issues. Thanks.

Hi @ChongjianGE ,
you can render the scene without the camera paths by selecting "interpolate" or "spiral" in the render mode:
ns-render **interpolate** --load-config $CFG_PATH --output-path $OUTPUT_PATH.mp4 --downscale-factor 1 --rendered_output_name rgb
ns-render **spiral** --load-config $CFG_PATH --output-path $OUTPUT_PATH.mp4 --downscale-factor 1 --rendered_output_name rgb

Hi @dberga
Thanks for sharing.

Hi @dberga Thanks for sharing.

Forgot to include this but you can extract the transforms.json with
ns-export cameras --load-config $PATH_TO_config.yml --output-dir $OUTPUT_FOLDER

i found a script for this here and modified it so that i can use the resulting camera path in blender. you have to do export the cameras as mentioned in the comment by @wuzirui  before using the script, hope it helps
`
import json
import re
import numpy as np
from pathlib import Path
def ind(c2w):
if len(c2w) == 3:
c2w += [[0, 0, 0, 1]]
return c2w
def flatten_transform(transform):
return [
transform[0][0], transform[0][1], transform[0][2], transform[0][3],
transform[1][0], transform[1][1], transform[1][2], transform[1][3],
transform[2][0], transform[2][1], transform[2][2], transform[2][3],
0, 0, 0, 1
]
train_transforms = json.loads(open('poses/transforms_train.json').read())
eval_transforms = json.loads(open('poses/transforms_eval.json').read())
transforms = train_transforms + eval_transforms
transforms = sorted(transforms, key=lambda x: int(re.search(r'\d+', Path(x['file_path']).stem).group()))
out = {
'camera_type': 'perspective',
'render_height': 1080,
'render_width': 1920,
'seconds': len(transforms),
'camera_path': [
{'camera_to_world': flatten_transform(pose['transform']), 'fov': 50, 'aspect': 1, 'file_path': pose['file_path']}
for pose in transforms
]
}
outstr = json.dumps(out, indent=4)
with open('camera_path.json', mode='w') as f:
f.write(outstr)
`


Calculate and fill distance (API)

Calculate and fill distance if QSO was posted via API.
Things needed:

MY_GRIDSQUARE at station_profile
Gridquare from partner-station in ADIF-QSO
Distance NOT precalculated / posted within ADIF

should resolve #1339
Testing: Do a curl against the API (https://github.com/wavelog/wavelog/wiki/API#apiqso) with valid key.
Try with and without provided gridsquare and/or distance

Latest dev: no distance set in db when logging from WSJT-X improved.
This pr: distance set in db when logging from WSJT-X improved.


ratchet update exit with errors

New issue?

[X] I have reviewed the Known Issues and confirm this is not a known issue.

TL;DR
I'm getting error panic: runtime error: index out of range [40] with length 40 when running ratchet update mega-linter.yml
Expected behavior
It should update the GitHub Action file or give me the "understandable" error.
Observed behavior
No response
Version
0.9.1
On what operating system are you using ratchet?
Mac OS
CI/CD workflow file
---
name: mega-linter

on:
  workflow_dispatch:
  push:
    branches-ignore:
      - main

permissions: read-all

jobs:
  mega-linter:
    runs-on: ubuntu-latest
    timeout-minutes: 30
    steps:
      - name: Checkout Code
        uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1

      - name: Restore lychee cache
        uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
        with:
          path: .lycheecache
          key: cache-lychee-${{ github.sha }}
          restore-keys: cache-lychee-

      - name: Extract commands from markdown files
        run: |
          set -euxo pipefail
          echo '#!/usr/bin/env bash' > README.sh
          find . -name '*.md' -print0 | while IFS= read -r -d '' FILE; do
            # Extract:  ...
            sed -n "/^\`\`\`\(bash\|shell\)$/,/^\`\`\`$/p" "${FILE}" | sed '/^```*/d' >> README.sh
            # Extract:   ```bash ... ```
            sed -n "/^  \`\`\`\(bash\|shell\)$/,/^  \`\`\`$/p" "${FILE}" | sed '/^  ```*/d; s/^  //' >> README.sh
          done
          ls -la README.sh
          chmod a+x README.sh

      - name: 💡 MegaLinter
        uses: oxsecurity/megalinter@a7a0163b6c8ff7474a283d99a706e27483ddd80f # v7.10.0
        env:
          GITHUB_COMMENT_REPORTER: false
          # Disabled due to error: [GitHub Status Reporter] Error posting Status for REPOSITORY with ...: 403
          GITHUB_STATUS_REPORTER: false
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Relevant log output
❯ ratchet update mega-linter.yml
panic: runtime error: index out of range [40] with length 40

goroutine 1 [running]:
github.com/sethvargo/ratchet/command.fixIndentation(0x1400011e0f0)
	github.com/sethvargo/ratchet/command/command.go:180 +0x404
github.com/sethvargo/ratchet/command.loadYAMLFiles({0x104df0358, 0x14000200080}, {0x14000200050, 0x1, 0x3?}, 0x1)
	github.com/sethvargo/ratchet/command/command.go:147 +0x1d4
github.com/sethvargo/ratchet/command.(*UpdateCommand).Run(0x14000198060, {0x104df30b0, 0x1400003b180}, {0x140000122c0, 0x1, 0x1})
	github.com/sethvargo/ratchet/command/update.go:72 +0x144
github.com/sethvargo/ratchet/command.Run({0x104df30b0, 0x1400003b180}, {0x140000122b0?, 0x2?, 0x2?})
	github.com/sethvargo/ratchet/command/command.go:58 +0x278
main.realMain(...)
	github.com/sethvargo/ratchet/main.go:26
main.main()
	github.com/sethvargo/ratchet/main.go:18 +0xc0

Additional information
Steps to reproduce the error:
$ cd /tmp/
$ wget https://raw.githubusercontent.com/ruzickap/my-git-projects/main/gh-repo-defaults/my-defaults/.github/workflows/mega-linter.yml
$ ratchet update mega-linter.yml
panic: runtime error: index out of range [40] with length 40

goroutine 1 [running]:
github.com/sethvargo/ratchet/command.fixIndentation(0x140001981e0)
	github.com/sethvargo/ratchet/command/command.go:180 +0x404
github.com/sethvargo/ratchet/command.loadYAMLFiles({0x104970358, 0x14000110080}, {0x14000110050, 0x1, 0x3?}, 0x1)
	github.com/sethvargo/ratchet/command/command.go:147 +0x1d4
github.com/sethvargo/ratchet/command.(*UpdateCommand).Run(0x14000198060, {0x1049730b0, 0x1400003b180}, {0x140000122c0, 0x1, 0x1})
	github.com/sethvargo/ratchet/command/update.go:72 +0x144
github.com/sethvargo/ratchet/command.Run({0x1049730b0, 0x1400003b180}, {0x140000122b0?, 0x2?, 0x2?})
	github.com/sethvargo/ratchet/command/command.go:58 +0x278
main.realMain(...)
	github.com/sethvargo/ratchet/main.go:26
main.main()
	github.com/sethvargo/ratchet/main.go:18 +0xc0

I know why this is happening, but I don't know WHY this is happening. The document separator (---) is messing up the line parsing. @ruzickap you can remove the document separator and everything will be happy. I need to think about how to fix this edge case though

Thank you, but starting the yaml files with --- is something considered as "good practice" and various yaml linters reports it (https://yamllint.readthedocs.io/en/latest/rules.html#module-yamllint.rules.document_start).
I will fait for the final fix...
Thank you

Yes, I know. You can remove it, run ratchet, and manually re-add it.

https://github.com/sethvargo/ratchet/pull/81

I am having a number of unrelated errors with most of these files - even after removing ---:
https://github.com/pylint-dev/pylint-pytest/tree/master/.github

@stdedos I just cloned and ran ratchet against that repo at HEAD using the code in #81 and it ran without errors:
➜  pylint-pytest master ❃ git status
On branch master
Your branch is up to date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   .github/workflows/release.yml

no changes added to commit (use "git add" and/or "git commit -a")
➜  pylint-pytest master ❃ git diff
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 10b8cd1..4003613 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -21,10 +21,10 @@ jobs:
       url: https://pypi.org/project/pylint-pytest/
     steps:
       - name: Check out code from Github
-        uses: actions/checkout@v4
+        uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # ratchet:actions/checkout@v4
       - name: Set up Python ${{ env.DEFAULT_PYTHON }}
         id: python
-        uses: actions/setup-python@v5
+        uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # ratchet:actions/setup-python@v5
         with:
           python-version: ${{ env.DEFAULT_PYTHON }}
           check-latest: true

Did you, by any chance, happen to "just pick the one that works" 😅
$ find .github/ -name '*.yml' -or -name '*.yaml' | xargs -I{} ./ratchet pin {}
panic: runtime error: index out of range [95] with length 95

goroutine 1 [running]:
github.com/sethvargo/ratchet/command.fixIndentation(0xc0001121b0)
	github.com/sethvargo/ratchet/command/command.go:180 +0x4ed
github.com/sethvargo/ratchet/command.loadYAMLFiles({0x82c500, 0xc00010c070}, {0xc00010c040, 0x1, 0x416113?}, 0x1)
	github.com/sethvargo/ratchet/command/command.go:147 +0x255
github.com/sethvargo/ratchet/command.(*PinCommand).Run(0xc000015da0, {0x82f248, 0xc0000ab140}, {0xc000014140, 0x1, 0x1})
	github.com/sethvargo/ratchet/command/pin.go:83 +0x1cb
github.com/sethvargo/ratchet/command.Run({0x82f248, 0xc0000ab140}, {0xc000014130?, 0x2?, 0x2?})
	github.com/sethvargo/ratchet/command/command.go:58 +0x212
main.realMain(...)
	github.com/sethvargo/ratchet/main.go:26
main.main()
	github.com/sethvargo/ratchet/main.go:18 +0xba
panic: runtime error: index out of range [9] with length 9

goroutine 1 [running]:
github.com/sethvargo/ratchet/command.fixIndentation(0xc00028c0c0)
	github.com/sethvargo/ratchet/command/command.go:180 +0x4ed
github.com/sethvargo/ratchet/command.loadYAMLFiles({0x82c500, 0xc00011c070}, {0xc00011c040, 0x1, 0x416113?}, 0x1)
	github.com/sethvargo/ratchet/command/command.go:147 +0x255
github.com/sethvargo/ratchet/command.(*PinCommand).Run(0xc000191d70, {0x82f248, 0xc0001a3140}, {0xc000190110, 0x1, 0x1})
	github.com/sethvargo/ratchet/command/pin.go:83 +0x1cb
github.com/sethvargo/ratchet/command.Run({0x82f248, 0xc0001a3140}, {0xc000190100?, 0x2?, 0x2?})
	github.com/sethvargo/ratchet/command/command.go:58 +0x212
main.realMain(...)
	github.com/sethvargo/ratchet/main.go:26
main.main()
	github.com/sethvargo/ratchet/main.go:18 +0xba
panic: runtime error: index out of range [65] with length 65

goroutine 1 [running]:
github.com/sethvargo/ratchet/command.fixIndentation(0xc0000141e0)
	github.com/sethvargo/ratchet/command/command.go:180 +0x4ed
github.com/sethvargo/ratchet/command.loadYAMLFiles({0x82c500, 0xc0000320b0}, {0xc000032080, 0x1, 0x100000000000000?}, 0x1)
	github.com/sethvargo/ratchet/command/command.go:147 +0x255
github.com/sethvargo/ratchet/command.(*PinCommand).Run(0xc00011bd70, {0x82f248, 0xc00012b140}, {0xc00011a110, 0x1, 0x1})
	github.com/sethvargo/ratchet/command/pin.go:83 +0x1cb
github.com/sethvargo/ratchet/command.Run({0x82f248, 0xc00012b140}, {0xc00011a100?, 0x2?, 0x2?})
	github.com/sethvargo/ratchet/command/command.go:58 +0x212
main.realMain(...)
	github.com/sethvargo/ratchet/main.go:26
main.main()
	github.com/sethvargo/ratchet/main.go:18 +0xba

I'm using ratchet compiled from #81:
➜  Development  git clone https://github.com/pylint-dev/pylint-pytest
Cloning into 'pylint-pytest'...
remote: Enumerating objects: 1039, done.
remote: Counting objects: 100% (393/393), done.
remote: Compressing objects: 100% (230/230), done.
remote: Total 1039 (delta 223), reused 251 (delta 163), pack-reused 646
Receiving objects: 100% (1039/1039), 229.28 KiB | 14.33 MiB/s, done.
Resolving deltas: 100% (596/596), done.
➜  Development  cd pylint-pytest
➜  pylint-pytest master ✔ ratchet -v
ratchet (devel) (d905c9cd9c2f8741d02765f56b4d31681599e0fd, darwin/arm64)
➜  pylint-pytest master ✔ ratchet pin .github/workflows/*.{yml,yaml}
➜  pylint-pytest master ❃ git diff
diff --git a/.github/workflows/checks.yaml b/.github/workflows/checks.yaml
index 2ee5938..a66daa0 100644
--- a/.github/workflows/checks.yaml
+++ b/.github/workflows/checks.yaml
@@ -28,10 +28,10 @@ jobs:
       pre-commit-key: ${{ steps.generate-pre-commit-key.outputs.key }}
     steps:
       - name: Check out code from GitHub
-        uses: actions/checkout@v4
+        uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # ratchet:actions/checkout@v4
       - name: Set up Python ${{ env.DEFAULT_PYTHON }}
         id: python
-        uses: actions/setup-python@v5
+        uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # ratchet:actions/setup-python@v5
         with:
           python-version: ${{ env.DEFAULT_PYTHON }}
           check-latest: true
@@ -42,7 +42,7 @@ jobs:
             hashFiles('pyproject.toml', 'requirements/**.txt') }}" >> $GITHUB_OUTPUT
       - name: Restore Python virtual environment
         id: cache-venv
-        uses<EMAIL_ADDRESS>+        uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 #<EMAIL_ADDRESS>         with:
           path: .venv
           key: >-
@@ -55,7 +55,7 @@ jobs:
             hashFiles('.pre-commit-config.yaml') }}" >> $GITHUB_OUTPUT
       - name: Restore pre-commit environment
         id: cache-precommit
-        uses<EMAIL_ADDRESS>+        uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 #<EMAIL_ADDRESS>         with:
           path: ${{ env.PRE_COMMIT_CACHE }}
           key: >-
@@ -71,23 +71,23 @@ jobs:
     needs: prepare-base
     steps:
       - name: Check out code from GitHub
-        uses: actions/checkout@v4
+        uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # ratchet:actions/checkout@v4
       - name: Set up Python ${{ env.DEFAULT_PYTHON }}
         id: python
-        uses: actions/setup-python@v5
+        uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # ratchet:actions/setup-python@v5
         with:
           python-version: ${{ env.DEFAULT_PYTHON }}

# ...

Also note, you don't need xargs - see the command I ran above:
ratchet pin .github/workflows/*.{yml,yaml}

I'm pretty confident that merging #81 and releasing will resolve your issue.

On a tanget (and since you don't have Discussions), what is the logic of  #<EMAIL_ADDRESS>vs # ratchet:actions/setup-python@v5 supposed to be?
I think GHA parses "partial tags" (@v5) to support "auto-updating minors etc". However, any sha1 you may write can possibly only be a specific version.


the A320214 is nonworking links

heer are good links
easyJet carrot- https://raw.githubusercontent.com/iuhairways/a320214/main/easyjet.jpg
AliTalia- https://raw.githubusercontent.com/iuhairways/a320214/main/alitalia.png
House livrey- https://raw.githubusercontent.com/iuhairways/a320214/main/a320.jpg

I have some problems with this aircraft, something can be wrong with the map. The correct size is 2048*2048px, but the parts are somehow in the wrong places. We should try to figure it out, or ask the creator to check out if the map is correct.
Thanks for your help in this project. Kolos26

I prepared this experimental texture file, if you wanna try it

ok thanks!

@kolos26 try this https://raw.githubusercontent.com/iuhairways/a320214/main/test.jpg

wait i will try too

The problem is the parts are totally in the wrong place.

And Idk why

oh

move up the body abit

But there is the end of the texture file. Spice wrote a few months ago that he needs to remap the whole plane in blender. I think, we can't do it alone.

hmm ok
i do have some of the previous maps we could try

Wait a minute. Can you remember what was the original size of the texture you've uploaded to this post: https://github.com/Spice9/Geofs-Multiliveries/issues/13???
I think it will work, in the good size

THX I'm trying theese

this is da ML one https://user-images.githubusercontent.com/103064103/169350570-e88301c6-0890-4e36-b6d3-70b753eaa621.png

thanks

have you got it to work

not yet

oh
did the liveries even change?

yes, but the texture is not aligned

oh
lol on a320neo

yes, but the texture is not aligned

screen shot?

@kolos26

Sorry, I'm here, I have about 6 different widows, and i'm totally lost
I just cannot guess the size because 2048 is the maximum, but it looks too small on the plane. I think we should ask Spice9 for some ideas.

Sorry, I'm here, I have about 6 different widows, and i'm totally lost I just cannot guess the size because 2048 is the maximum, but it looks too small on the plane. I think we should ask Spice9 for some ideas.

@kolos26 try 4096

too big, after 2048 it throws an error

oh

did you join thi diskord

no, I'm only avaliable on github

ok

But now I need to go, sorry. I will try again tomorrow. Bye

But now I need to go, sorry. I will try again tomorrow. Bye

ok me to

bye bye

I think we can't do this, until the a320-214 rework arrives, that will have new texture map. Sorry, about that, I hope it will arrive soon.

I think we can't do this, until the a320-214 rework arrives, that will have new texture map. Sorry, about that, I hope it will arrive soon.

ok


[YUNIKORN-478]Handle app completion at the shim side

Delete pod when receive ReleaseAllocation response, and delete application from context when receive UpdatedApplication response.
Please review @yangwwei
Thanks.

hi @HuangTing-Yao  there is some issue here. First, we need to update go.mod file in order to use the latest binary from scheduler-interface repo, where we get the new UpdateResponse#AllocationRelease. And one more thing I forgot to mention, from the doc:
 // Released allocations, this could be either ack from scheduler when RM asks to terminate some allocations.
  // Or it could be decision made by scheduler (such as preemption or timeout).
  repeated AllocationRelease releasedAllocations = 3;

we need to handle this differently based on the different TERMINATION_TYPE,
 enum TerminationType {
    STOPPED_BY_RM = 0;          // Stopped or killed by ResourceManager (created by RM)
    TIMEOUT = 1;                // Timed out based on the executionTimeoutMilliSeconds (created by core)
    PREEMPTED_BY_SCHEDULER = 2; // Preempted allocation by scheduler (created by core)
    PLACEHOLDER_REPLACED = 3;   // Placeholder allocation replaced by real allocation (created by core)
  }

if STOPPED_BY_RM,  there is no operation needed in the shim side (today's behavior)
if otherwise i.e TIMEOUT, PREEMPTED_BY_SCHEDULER or PLACEHOLDER_REPLACED, we will need to trigger the pod delete.

hi @HuangTing-Yao  any updates? If you have more questions, pls let me know. Thanks

hi @HuangTing-Yao any updates? If you have more questions, pls let me know. Thanks

almost done, I will upload new version today.


Feature request: Allow credentials to be set per API call

To set credentials you do something like R4J(APICredentials(apiKey)). This updates global state such that any subsequent API operation uses those credentials. This works fine if you're only using one Riot API key but not well at all if you have multiple in one application (TFT, League, etc.)
I am requesting an enhancement to the API where you can set the credentials per call. For example, instead of Summoner.byAccountId(leagueShard, id), maybe you could do Summoner.byAccountId(leagueShard, id).withCredentials(APICredentials(apiKey)).
Thanks!

Hello @lolbyte-code !
I'm not sure to understand your issue, have you tried to use this solution ? You can this way choose which api (and key) you want to use.
APICredentials creds = new APICredentials(leagueTocken, tournamentLeagueTocken, tftTocken, lorTocken, valorantTocken); //you can set to null the one you are not using
R4J r4j = new R4J(creds);

r4j.getLoLAPI().getSummonerAPI().getSummonerByName(LeagueShard.EUW1, "summonerName"); //Use LoL tocken
r4j.getTFTAPI().getSummonerAPI().getSummonerByName(LeagueShard.EUW1, "summonerName"); //Use TFT tocken

@KaluNight - Ooo nice! I can give that a shot. It seems that I wasn't using the APIs as designed 😉

Ok great that worked perfectly. TYSM @KaluNight!


[MATLAB] Remove  the DeepCopy name-value pair from arrow.array.<Numeric>Array constructors

Describe the enhancement requested
We initially added the DeepCopy name-value pair to the numeric array class constructors for testing purposes. When DeepCopy=true, the proxy classes copy the data from the MATLAB array when creating the underlying std::shared_ptr<arrow::NumericArray<CType>>. By default, we don't make a copy and instead store the original array as property named MatlabArray.
Component(s)
MATLAB

take


Use credx anoncreds in napi wrapper

Codecov Report

Merging #927 (ec1fd22) into main (dae1105) will increase coverage by 0.10%.
The diff coverage is 58.31%.

:exclamation: Current head ec1fd22 differs from pull request most recent head 8b7313e. Consider uploading reports for the commit 8b7313e to get more accurate results

@@            Coverage Diff             @@
##             main     #927      +/-   ##
==========================================
+ Coverage   44.25%   44.35%   +0.10%
==========================================
  Files         418      415       -3
  Lines       29311    29225      -86
  Branches     6262     6252      -10
==========================================
- Hits        12972    12964       -8
+ Misses      12512    12434      -78
  Partials     3827     3827

Flag
Coverage Δ

unittests-aries-vcx
44.35% <58.31%> (+0.10%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Changed
Coverage Δ

aries_vcx/src/common/keys.rs
44.64% <ø> (ø)

...es_vcx/src/common/proofs/prover/prover_internal.rs
27.27% <ø> (ø)

aries_vcx/src/common/proofs/verifier/verifier.rs
81.64% <0.00%> (ø)

aries_vcx/src/common/test_utils.rs
93.54% <ø> (ø)

aries_vcx/src/core/profile/mod.rs
0.00% <ø> (ø)

aries_vcx/src/core/profile/modular_libs_profile.rs
0.00% <0.00%> (ø)

aries_vcx/src/utils/constants.rs
0.00% <ø> (ø)

...ries_vcx/src/utils/mockdata/profile/mock_ledger.rs
0.00% <0.00%> (ø)

aries_vcx/tests/utils/devsetup_util.rs
48.71% <ø> (ø)

aries_vcx_core/src/ledger/indy/pool.rs
83.87% <ø> (ø)

... and 28 more

... and 39 files with indirect coverage changes


Nightly: Exclude connectivity test on invalid policies

Due c7b1a677ca61607695dae504c0db7a1f6f698bec HTTP L7 policies need to
have L4 port and protocol defined. Nightly test policies combinations
test that these policies work.
To test these combinations, a exclude parameters in Policy definition is
added, so we can test that the CNP resource returns an error message.
Fix #3894
Signed-off-by: Eloy Coto<EMAIL_ADDRESS>

test-nightly

test-nightly

test-me-please

test-nightly

test-me-please

test-nightly


Create lbs-eibiswald.txt

@MuriTube First stage of verification passed, official domain is verwaltung.steiermark.at as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision. Proof of domain ownership: https://www.verwaltung.steiermark.at/cms/ziel/74835209/DE/

hey, the email addresses the school gives out to students are to the domain lbs-eibiswald.ac.at - e.g<EMAIL_ADDRESS>for me. Only problem is, the school currently doesn't support receiving emails to those addresses, and they are only used for teams & moodle login, etc. The school is currently working on fixing this, is there any other way to verify with you guys without being able to receive mails on the school address?

@MuriTube

hey, the email addresses the school gives out to students are to the domain lbs-eibiswald.ac.at - e.g<EMAIL_ADDRESS>for me. Only problem is, the school currently doesn't support receiving emails to those addresses, and they are only used for teams & moodle login, etc. The school is currently working on fixing this, is there any other way to verify with you guys without being able to receive mails on the school address?

Given that the school does not accept emails to students with this email domain, adding it to the trusted list seems to be pointless. Let me suggest you to apply for free educational license with an official document which proves that you are a student. You can do it using "OFFICIAL DOCUMENT" tab at https://www.jetbrains.com/shop/eform/students.
I have to close the request without merging.
Thank you for your understanding!


Verbesserung Urlaubsübersicht durch dynamische Sortierung

#395

Coverage remained the same at 66.631% when pulling 034e20b34807ccab220f5719f1cbb8690e428121 on ajanus:395-availability-overview-enhancement into 9c2f226563dbaae52a8fa7a217d677978d0eec3d on synyx:master.

Hey it would be nice if you could rebase this against the master branch! :)

will be closed in favor of #512


Date Picker option is not available in Safari.

Describe the bug
Date Picker option is not available in Safari.
To Reproduce
Steps to reproduce the behavior:
Go to https://subsets-client.staging-bip-app.ssb.no/
Select lag uttrekk
For both "Gyldig fra og med:" and "Gyldig til og med:" the datepicker option is not available
Expected behavior
Date Picker option works in Safari as in Google Chrome.
Screenshots
Please find the attached screen shot

Desktop:
Device: Web
OS: MacOs Catalina 10.15.4
Browser Safari
Version 13.1 (156<IP_ADDRESS>.8)

@KashyapNPS
what happens when you click on the calendar field?

@KashyapNPS
what happens when you click on the calendar field in Safari?

There is no Calendar option in Safari as seen in the screen shot. Clicking on the empty spaces has no effect.

click on the date itself (on the day number, month or year)


[WAR] Storm's Eye Maintenance Feature

New feature to place Storm's Eye onto Storm's Path when the buff is at or below the threshold.

@Akechi-kun Yes, one of the reasons is to reduce button bloat while NOT using the one-button feature. I think it is a good addition to prevent the buff from falling off while being as unintrusive as possible.
Sorry for the late reply as I was (and still am) sick.


stderr: autoware_tensorrt_common

Checklist

[X] I've read the contribution guidelines.
[X] I've searched other issues and no duplicate issues were found.
[X] I'm convinced that this is not my fault but a bug.

Description
I'm trying to build the main branch and I found an error. If you don't use deb to install cuda, cudnn and tensorrt, stderr: autoware_tensorrt_common will appear.
CMake Warning at CMakeLists.txt:17 (message):
cuda, cudnn, tensorrt libraries are not found
My actual output found tensorrt not found. I have configured export LD_LIBRARY_PATH=/opt/TensorRT-<IP_ADDRESS>/lib:$LD_LIBRARY_PATH in the .bashrc file.
OS: Ubuntu 22.04.5 LTS
Processor: Intel® Core™ i7-10700F CPU @ 2.90GHz × 16
GPU: GeForce RTX 3060
OS Type: 64-bit
cuda version 12.0, cudnn8.9.7, tensorrt<IP_ADDRESS>
how can i solve
Expected behavior
colcon build success
Actual behavior
Summary: 347 packages finished [52min 36s]
29 packages had stderr output: autoware_costmap_generator autoware_elevation_map_loader autoware_freespace_planning_algorithms autoware_image_projection_based_fusion autoware_lanelet2_extension_python autoware_lidar_apollo_instance_segmentation autoware_lidar_centerpoint autoware_lidar_transfusion autoware_overlay_rviz_plugin autoware_radar_scan_to_pointcloud2 autoware_shape_estimation autoware_smart_mpc_trajectory_follower autoware_surround_obstacle_checker autoware_tensorrt_classifier autoware_tensorrt_common autoware_tensorrt_yolox bag_time_manager_rviz_plugin eagleye_can_velocity_converter eagleye_coordinate eagleye_geo_pose_fusion eagleye_rt lanelet2_extension_python nebula_ros pointcloud_to_laserscan system_monitor yabloc_common yabloc_image_processing yabloc_particle_filter yabloc_pose_initializer
Steps to reproduce
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
Versions
No response
Possible causes
No response
Additional context
No response

Hi @shuofeng1
Did you use setup-dev-env.sh script for installing dependencies? Nevertheless, we suggest to use CUDA 12.3. If you would like to check which library is missing, the fastest way will be modifying CMakeLists.txt and check which of CUDAToolkit_FOUND,  CUDNN_FOUND, TENSORRT_FOUND fails.
It's hard to localize source of issue in customized environment, therefore I can recommend you using Docker containers.

I'm not using the setup-dev-env.sh script
except for the version above
I've also tried multiple versions
cuda12.3, cudnn8.9, tensorrt8.6;
cuda11.8, cudnn8.8, tensorrt8.6.
I tried outputting CUDAToolkit_FOUND, CUDNN_FOUND, TENSORRT_FOUND. In every version, TENSORRT_FOUND is false. I'm just a little confused if I need any other behavior after setting LD_LIBRARY_PATH=/opt/TensorRT-<IP_ADDRESS>/lib:$LD_LIBRARY_PATH using the tar installation method?
I am using the main branch

Hi  你好@shuofeng1 Did you use setup-dev-env.sh script for installing dependencies? Nevertheless, we suggest to use CUDA 12.3. If you would like to check which library is missing, the fastest way will be modifying CMakeLists.txt and check which of CUDAToolkit_FOUND, CUDNN_FOUND, TENSORRT_FOUND fails.您是否使用 setup-dev-env.sh 脚本来安装依赖项？尽管如此，我们建议使用 CUDA 12.3。如果您想检查缺少哪个库，最快的方法是修改CMakeLists.txt并检查CUDAToolkit_FOUND中的哪个库CUDNN_FOUND TENSORRT_FOUND失败。
It's hard to localize source of issue in customized environment, therefore I can recommend you using Docker containers.在自定义环境中很难定位问题根源，因此我建议您使用 Docker 容器。

I'm not using the setup-dev-env.sh script
except for the version above
I've also tried multiple versions
cuda12.3, cudnn8.9, tensorrt8.6;
cuda11.8, cudnn8.8, tensorrt8.6.
I tried outputting CUDAToolkit_FOUND, CUDNN_FOUND, TENSORRT_FOUND. In every version, TENSORRT_FOUND is false. I'm just a little confused if I need any other behavior after setting LD_LIBRARY_PATH=/opt/TensorRT-<IP_ADDRESS>/lib:$LD_LIBRARY_PATH using the tar installation method?
I am using the main branch

I'm not using the setup-dev-env.sh script except for the version above I've also tried multiple versions cuda12.3, cudnn8.9, tensorrt8.6; cuda11.8, cudnn8.8, tensorrt8.6. I tried outputting CUDAToolkit_FOUND, CUDNN_FOUND, TENSORRT_FOUND. In every version, TENSORRT_FOUND is false. I'm just a little confused if I need any other behavior after setting LD_LIBRARY_PATH=/opt/TensorRT-<IP_ADDRESS>/lib:$LD_LIBRARY_PATH using the tar installation method? I am using the main branch

Could you show us an output of dpkg -l | grep nvinfer? Expected output:
hi  libnvinfer-dev                                    <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT development libraries
hi  libnvinfer-headers-dev                            <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT development headers
hi  libnvinfer-headers-plugin-dev                     <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT plugin headers
hi  libnvinfer-plugin-dev                             <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT plugin libraries
hi  libnvinfer-plugin8                                <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT plugin libraries
hi  libnvinfer8                                       <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT runtime libraries

If problem after installing missing dependencies still exists, please try with Docker.

I'm not using the setup-dev-env.sh script except for the version above I've also tried multiple versions cuda12.3, cudnn8.9, tensorrt8.6; cuda11.8, cudnn8.8, tensorrt8.6. I tried outputting CUDAToolkit_FOUND, CUDNN_FOUND, TENSORRT_FOUND. In every version, TENSORRT_FOUND is false. I'm just a little confused if I need any other behavior after setting LD_LIBRARY_PATH=/opt/TensorRT-<IP_ADDRESS>/lib:$LD_LIBRARY_PATH using the tar installation method? I am using the main branch除了上面的版本外，我没有使用 setup-dev-env.sh 脚本，我还尝试了多个版本 cuda12.3、cudnn8.9、tensorrt8.6;CUDA11.8、CUDNN8.8、TensorRT8.6 的。我尝试输出 CUDAToolkit_FOUND、CUDNN_FOUND TENSORRT_FOUND。在每个版本中，TENSORRT_FOUND 都是 false。我只是有点困惑，在使用 tar 安装方法设置 LD_LIBRARY_PATH=/opt/TensorRT-<IP_ADDRESS>/lib：$LD_LIBRARY_PATH 后是否需要任何其他行为？我正在使用 main 分支

Could you show us an output of dpkg -l | grep nvinfer? Expected output:您能给我们看一下 dpkg -l | grep nvinfer 的输出吗？预期输出：
hi  libnvinfer-dev                                    <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT development libraries
hi  libnvinfer-headers-dev                            <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT development headers
hi  libnvinfer-headers-plugin-dev                     <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT plugin headers
hi  libnvinfer-plugin-dev                             <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT plugin libraries
hi  libnvinfer-plugin8                                <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT plugin libraries
hi  libnvinfer8                                       <IP_ADDRESS>-1+cuda12.0                      amd64        TensorRT runtime libraries

If problem after installing missing dependencies still exists, please try with Docker.如果安装后缺少的依赖项仍然存在问题，请尝试使用 Docker。

I installed tensorrt using a tar file. dpkg did not apply to me. Installing according to deb will complete the expected work. Thank you for your answer. If one day I successfully compile according to the tar installation method, I will put the solution here.

I have the same issue. What i've noticed, is that when building from scratch (remove the folders: build/ log/ install/ before building), i get the same stderr's. When the Building is done, and i run same build command again, everything is built without errors/warnings.
@amadeuszsz, is that intended or not? Also, did the packages found the nvidia-dependencies in the second build-run or how does it exactly work?
Other than that, I'm also interested in a fix for that.

If you are installing using a tar file, please additionally add
export TENSORRT_ROOT=/opt/TensorRT-<IP_ADDRESS>
and replace it with your actual installation path


Add option to run simpler WSGI app

Add option to run simpler WSGI app instead of flask  app in the docker entry-point
Overview
Adds an entry in the configure to decide which app wsgi or wsgi.flask should run via the docker entrypoint
Related Issue / Discussion
The flask app at the moment depends on the pycsw backend (e.g.: PostgreSQL, SQLite ) - the actual entrypoint doesn't have an option to run the simpler wsgi app to deploy a csw service
Additional Information
Contributions and Licensing
(as per https://github.com/geopython/pycsw/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

[x] I'd like to contribute [feature X|bugfix Y|docs|something else] to pycsw. I confirm that my contributions to pycsw will be compatible with the pycsw license guidelines at the time of contribution.
[x] I have already previously agreed to the pycsw Contributions and Licensing Guidelines

@tomkralidis - can we look into this?

I tried to add some comments, since feedback has been requested on the gitter channel.
I am trying to get my head around the Dockerfile. Why the code to start pycsw is in an entrypoint in the first place?

In this change i simply bypass the db settings/connection as it is not required to run the CSW services. Which makes the code more likely a standard docker entry point. Perhaps the db settings should go into the flask app itself?

Closing in lieu of #907


Fix social-adatper tests for allauth>=0.25.0

See https://github.com/pennersr/django-allauth/commit/742d114abf57917d69fbdfd9babf7fd806ddba44 for more details.
This unfortunately requires bumping up the version to 0.25.0, not sure if we want to do that though but it seems 0.25.0 doesn't have any backwards incompatible changes so I think it'll be fine.

Thanks this PR fix
https://github.com/Tivix/django-rest-auth/issues/195
https://github.com/Tivix/django-rest-auth/issues/196

A temporary workaround is found in #197 by @juliandramirez
class FacebookOAuth2AdapterFixed(FacebookOAuth2Adapter):
    def __init__(self):
        pass

class FacebookLogin(SocialLoginView):
    adapter_class = FacebookOAuth2AdapterFixed

+1

Thanks a lot for the fix @EnTeQuAk 👍

@mariodev any idea when there will be a release with this fix?


Update Composer dependencies (2022-03-05-00-05)

Visual regression test passed!
View the visual regression test report


fix: limit/offset pushdown was not working correctly in the presence of deletions

We need to push back the scan start and potentially grab more rows than requested to make sure we fulfill the request.  For v2 files we could also convert the row range into multiple ranges instead of grabbing more rows than required.  This might be something to investigate in the future.

Does this work right if the range straddles two fragments? Do we care that it does?
@wjones127

The logic for that is in the scan node.  We take the limit/offset for the dataset and chop it up into limit/offsets for each of the fragments.  That logic was actually ok.  We were accounting for deleted rows so if the the range was something like 1000...3000 and each fragment had 1000 rows and 100 deleted rows we would translate it into:
fragment 0: skip (skip 900 rows)
fragment 1: 100..900 (skip 100, take 800)
fragment 2: 0..900 (skip 0, take 900)
fragment 3: 0..300 (skip 0, take 300)

Codecov Report
Attention: Patch coverage is 97.75281% with 2 lines in your changes missing coverage. Please review.

Project coverage is 77.90%. Comparing base (c0e966c) to head (7a7d981).
Report is 4 commits behind head on main.

Files with missing lines
Patch %
Lines

rust/lance-core/src/utils/deletion.rs
66.66%
2 Missing :warning:

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2895   +/-   ##
=======================================
  Coverage   77.90%   77.90%
=======================================
  Files         231      231
  Lines       70528    70613   +85
  Branches    70528    70613   +85
=======================================
+ Hits        54946    55014   +68
- Misses      12465    12472    +7
- Partials     3117     3127   +10

Flag
Coverage Δ

unittests
77.90% <97.75%> (+<0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

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


proposal: archive/tar: add iterator form of (&Reader).Next()

Proposal Details
In Go 1.23, we can use range-over-func a.k.a iterator and developers propose to apply for the package into some packages.
For instance, the following issues are easy to know what kind of content are proposed.
https://github.com/golang/go/issues/61897
https://github.com/golang/go/issues/64341
This proposal is similar with above it.
I think it's good to apply for archive/tar, too.
func (tr *Reader) NextIter() iter.Seq2[*Header, error] {
	return func(yield func(*Header, error) bool) {
		hdr, err := tr.Next()
		if err == io.EOF {
			return
		}
		if !yield(hdr, err) {
			return
		}
	}
}

Thanks.

Perhaps AllHeaders would be a better name.
Also I think error handling for this sort of iterator is currently an open issue.  We may want to wait a bit to see if we come to a consensus on iterators where each value can fail.

I think that the question of adding iterators to existing packages is an example of what I was talking about in https://github.com/golang/go/issues/67510


[Improvement][README] Update official website link in readme

What is the purpose of the pull request
Update official website link in readme
Brief change log

Update official website link in readme

Verify this pull request
This change added tests and can be verified as follows:

Manually verified the change by testing locally.

Codecov Report

Merging #4903 (923cf23) into dev (bfc5d1e) will decrease coverage by 0.16%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev    #4903      +/-   ##
============================================
- Coverage     47.07%   46.90%   -0.17%
+ Complexity     3639     3625      -14
============================================
  Files           567      567
  Lines         23810    23810
  Branches       2742     2742
============================================
- Hits          11208    11168      -40
- Misses        11588    11632      +44
+ Partials       1014     1010       -4

Impacted Files
Coverage Δ
Complexity Δ

.../server/master/runner/DependentTaskExecThread.java
51.57% <0.00%> (-16.85%)
10.00% <0.00%> (-5.00%)

...ver/master/consumer/TaskPriorityQueueConsumer.java
43.62% <0.00%> (-9.40%)
16.00% <0.00%> (-4.00%)

...olphinscheduler/server/utils/DependentExecute.java
61.84% <0.00%> (-9.22%)
17.00% <0.00%> (-4.00%)

...olphinscheduler/plugin/alert/email/ExcelUtils.java
78.18% <0.00%> (-3.64%)
8.00% <0.00%> (-1.00%)

...r/server/worker/processor/TaskCallbackService.java
38.09% <0.00%> (-3.18%)
8.00% <0.00%> (ø%)

...inscheduler/server/master/config/MasterConfig.java
42.42% <0.00%> (-3.04%)
11.00% <0.00%> (-1.00%)

...inscheduler/service/zk/CuratorZookeeperClient.java
65.85% <0.00%> (+4.87%)
8.00% <0.00%> (+1.00%)

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 bfc5d1e...923cf23. Read the comment docs.


Error: Dependabot couldn't fetch all your path-based dependencies

Package ecosystem
npm
Package manager version
npm 8.1.2
Language version
node 16.13.2
Manifest location and content before the Dependabot update
/package.json contains private dependencies and a path-based dependency (config/lint-rules/index.js does exist):
  "eslint-plugin-internal-rules": "file:./config/lint-rules",

dependabot.yml content
version: 2
registries:
  npm-github:
    type: npm-registry
    url: https://npm.pkg.github.com
    token: ${{secrets.ACCESS_TOKEN}}
updates:
  - package-ecosystem: npm
    directory: /
    registries:
      - npm-github
    schedule:
      interval: daily
    open-pull-requests-limit: 10

What you expected to see, versus what you actually saw
Before recently (2 days at max), dependabot was running properly.
But then, it started failing in some of our private repositories that have private dependencies and a path-based dependency.

might be related to https://github.com/dependabot/dependabot-core/issues/5099

Apparently adding a package.json file to the folder fixes the issue. That was not necessary before though...

#5099 is fixed, would you mind trying to reproduce the issue again and see if that resolved it?

Closing due to lack of user response.

For anyone arriving here from Google like I did:

If your local dependency points directly to a file (i.e. "foo": "file:./lib/foo.js"), Dependabot will fail to load it regardless of the format of the path (file:lib, file:./lib...) - even though these all work fine in npm itself
Instead, your local dependency must be organised into its own directory, called index.js, and have a package.json next to it like so:

{
	"name": "foo",
	"main": "index.js"
}

After that, your main package.json must import the local dependency with a directory path (and not a file path): "foo": "file:./lib/foo". These changes unblocked Dependabot updates for us.


PyTorch and HTTPS error (Mac)

This one is a situation that I've come accross before with Lazarus (it was fixed for FPC)
Torch will optionally download models from a centralized repository if required. When it does this it uses Python's urllib3 to obtain the file(s) it needs over HTTPS which results in the mess pictured below....

I suspect Delphi Python on Mac has the same issue Lazarus had in that it expects openssl - which Apple deprecated some years ago in favour of their own SSL transport layer (hey, it's Apple - what do you expect...)
To replicate all you need to do is to try loading a public model - VGG16 in the case above - and the Mac will go all "Apple" on you.
This situation can be worked around by providing the required models eitehr on-demand via a Delphi download or by including them in the deployment package (they can be big, depending on the model you choose - VGG16/19 are each 500Mb+
As a work-around exists it seems sensible to "patch the developer" rather than the system in a "known issues" section in the Docs/README.md by informing them of this problem and how to work around it.
I'm going to alter the Python my stuff uses to cater for this eventuality and will provide a tech-note with clear instructions.

I've worked out the method to allow Macs to work with models from local copies
Just going to run a model to double check it works and compare to previously generated model (this will take some time - might run it at night)

I will try this as soon as possible.

As a note I've identified the specific Python that was triggering this issue so trying to run ther following will definitely upset all Macs...
from collections import namedtuple
import torch
from torchvision import models
from torchvision.models import VGG16_Weights, VGG19_Weights

class Vgg16(torch.nn.Module):
  def __init__(self, requires_grad=False, vgg_path=None):
    super(Vgg16, self).__init__()
      dies = models.vgg19(weights=VGG19_Weights.IMAGENET1K_V1).features

While this version replacing the bad one will work as long as vgg_path points at a copy of vgg16-397923af.pth - this file is obtainable by running the bad version on a non-Mac OS - it'll end up in ($HOME)/.cache/torch somewhere then you can copy it to Mac and set vgg_path to it
works = models.vgg16()
works.load_state_dict(torch.load(vgg_path), strict=False)
works_features = vgg_pretrained.features

I've now verified the non-invasive work-around (took 3 hours and 15 mins to train two models on my Laptop's 3060) and I've checked that the code at least functions on my 2013 MacBook using the same conditions (it's not worth running a proper test - it'll take forever).
I'll go rent another M1 Mac Mini for the day (2.50 euros I can just about afford) to try running the same test I just completed while sleeping on an M1.
I'm unsure as to the performance of the M1 but for comparison running without CPU one of my AFK tests took 90 mins while it has an ETA of 32 hours (I've killed the job - just wanted the ETA) if I disable GPU usage. This means that using a GPU boosts processing around 20x (didn't run CPU test long enough for a properly accurate ETA)
As the M1 is supposed to transparently be supported by Torch at least I'll get an idea of the speed compared to my Laptop - the M1 I can rent ATM only has 8Gb so this will only be a rough test.
After I've run the M1 tests I'll document my findings.
All this is pretty academic - I can't build my full project on a Mac anyway (Skia needs Delphi 11 - CE won't work) - same goes for Linux (for different reasons).

Won't install on M1 (fine on X64)
See https://github.com/Embarcadero/PythonEnviroments/issues/1#issuecomment-1195365073


Add OOZIE_URL to motd

Tenants working on oozie want to know the OOZIE_URL. With multiple clusters, its hard to remember the URLs for all the clusters. We should add the OOZIE_URL to the motd

I would much rather see us expose Oozie via the VIP, as Oozie should be HA and thus would have multiple URLs. Simply putting Oozie behind haproxy would work well as I understand it.


sms is not defined

Hi, just a question, I tried this plugin last week and it seemed I got it working. But now I always get "sms is not defined" when I try to use the sms object. I followed your instructions, but it's not working anymore.
I did these simple steps:

Created new phonegap app (phonegap create sms)
Added plugin (phonegap local plugin add https://github.com/aharris88/phonegap-sms-plugin.git)
Put your code to send sms in index.html (replacing the jquery part), and I always get the error (sms is not defined).
build for android

I get the same error both on the emulator and on the phone
Did I do something wrong?
thanks

Hi aharris88,
I started using sms plugin to my phonegap, I am facing the above issue like "sms not defined".
Environment:
OS : UBUNTU
Added File : config.xml
Line:
<gap:plugin name="org.apache.cordova.vibration" />
<gap:plugin name="com.cordova.plugins.sms" version="0.1.1" />

But When run command "phonegap serve" and checking in my console. It is not showing in loaded services.
What is wrong I am doing.
Please help me.

This repo has actually moved. You can submit a new issue over here: https://github.com/cordova-sms/cordova-sms-plugin/issues/new


"No such file or directory" error

Type of Issue

[X] Bug Report
[ ] Feature Request

Description
This is directly related to issue #81.
While using the https://github.com/vmware/clarity/ components the ng-packagr step results in the following error output:
$ yarn build:lib
yarn build:lib v1.0.2
$ ng-packagr
Building Angular library from /Users/jsmith/Projects/ng-packaged/ng-package.json

BUILD ERROR
ENOENT: no such file or directory, open '/Users/jsmith/Projects/ng-packaged/node_modules/clarity-angular/icon/index.ts'
Error: ENOENT: no such file or directory, open '/Users/jsmith/Projects/ng-packaged/node_modules/clarity-angular/icon/index.ts'

error Command failed with exit code 111.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

I'm not sure if this is an issue in ng-packagr or in how clarity is packaged.
How To Reproduce
I've forked the ng-packaged repo to provide a reproducible environment: https://github.com/justindsmith/ng-packaged-clarity
You can see the commit I added for the only changes: https://github.com/justindsmith/ng-packaged-clarity/commit/238d76b4e968ca700f31edae67cea8cf4554747f
Version Information
ng-packagr: v1.3.0
node: v8.6.0
@angular: v4.4.4
rxjs: v5.4.2
zone.js: v0.8.17

Hi, can you check #129 and specially the lib.externals whether the issue is answered?

That gets me closer and meets my immediate needs (which is awesome!), but doesn't answer the question of getting all of Clarity added to a lib module.
The way clarity is organized there is a root module (ClarityModule) and then a bunch of sub-modules underneath that. I was not able to get the root module to work, even after providing the externals for the import as below (found in the clarity umd file).
"externals": {
  "clarity-angular": "ng.clarity"
}

I still get the same error.
If I ignore the root module and pull in only the sub-modules that I need (in this case ClrIconModule) then I can get it to work by defining the following externals:
"externals": {
  "clarity-angular/icon/icon.module": "ng.clarity"
}

My guess is that it's a problem in how clarity is joining the dependencies between the different sub-modules?
The packaging is catching on the clarity-angular/icon/icon export/import, which is the IconCustomTag. Looking at the clarity umd file, it appears that the IconCustomTag is not exported except inside an array ICON_DIRECTIVE, so I'm not immediately sure how to get at that dependency through the externals...
So for my immediate need I was able to use the externals to get to the module that I cared about, which means "bug fixed", but I'm still not able to use the ClarityModule root module, which is weird (but might be an issue in how Clarity is packaging their modules).


Enable Tern to pull image digests and images using the registry HTTP(s) APIs

Describe the Feature
Enable Tern to pull images and image digests directly using the registry HTTP(s) APIs. This capability will ensure that Tern does not require the presence of docker client libs and utilities to pull images from any registry.
Use Cases

Run Tern within a docker container as a Kubernetes service in non-privileged mode without requiring docker on docker
Enable light-weight and fast pulling of image from various OCI compatible registries for e.g. Harbor and GCR.

Implementation Changes
I currently do not have a complete set of changes that would need to be done. However, as a start I was evaluating whether the Google Container Registry Python SDKs can be used for this purpose.
Alternatively, we can create a standalone command line executable written in Go that uses the go-containerregistry SDK or related tools kie crane

@nishakm @prahaladdarkin @rnjudge Can I take it?

I figured out how to query the API using python: https://gist.github.com/nishakm/98d2fceaf8647bf521e98451123e5152
We will need requests to do this. requests doesn't have a "Bearer" authentication class, but it looks like one can create a custom authentication class: https://requests.readthedocs.io/en/master/user/authentication/#new-forms-of-authentication
A python implementation of the API handshake needs the following:

Docker style image path resolution: All of Docker's library images have the path library/<image>, but one can just use . For example, debian resolves to library/debian. Alternatively, we don't resolve the path and hint to users that they may need to add library to the path. This is not needed for other images. This also holds for the domain name. Docker inherently resolves debian:buster to https://index.docker.io/v1/debian/manifests/buster and we may either resolve this ourselves or ask the user to provide a domain like docker.io/debian:buster. We will also need to keep a list of https endpoints for the different registries.
Implement the "bearer" authentication to this API. Luckily, for OCI compliant registries, the paths are standardized:
a. GET "https://{domain}/v2/{image_path}/manifests/{tag}
b. In the response headers, you should get the authentication domain, type, and query parameters.
c. Get a token using GET "https://{auth_domain}?query_params". requests makes this easy.
d. GET "https://{domain}/v2/{image_path}/manifests/{tag} again but with headers -H {Authorization: <token>} and -H {Accept: application/vnd.docker.distribution.manifest.list.v2+json. Again, requestsmakes it easy to create aGET request. This will get you the index manifest which will have a list of manifests to choose from. e. Choose a manifest: typically you look for a manifest with'mediaType': 'application/vnd.docker.distribution.manifest.v2+json'andplatformkey matching the platform of the system you are working with. Ifplatformis not available, just pick the first manifest. f. GET the manifest by digestGET "https://{domain}/v2/{image_path}/manifests/{digest}. This assures us that we are pulling exactly the manifest we want and this digest is also the image's digest. g. Read this manifest for layers. GETthe config and layers.GET "https://{domain}/v2/{image_path}/blobs/{digest}`.

I personally think if we are going to use the pure API, we should use schema2 which is OCI compatible and keep the layout similarly.

@mukultaneja This is actually related to your OCI work. If you can implement the "Bearer" authentication and the whole querying process, you can use it for your OCIImage test.

@nishakm sure. I will look and start working on it

@nishakm, @mukultaneja and @rnjudge can we check if the google container registry SDKs can be used? I have been able to use them pretty reliably and we can actually avoid re-doing the entire authentication process as well as handling conditions like retry IMO.
I know of security compliance scanners that use the Go SDK of the library and I have heard the feedback that is lightweight and fast.

@nishakm, @mukultaneja and @rnjudge can we check if the google container registry SDKs can be used? I have been able to use them pretty reliably and we can actually avoid re-doing the entire authentication process as well as handling conditions like retry IMO.
I know of security compliance scanners that use the Go SDK of the library and I have heard the feedback that is lightweight and fast.

I am a bit hesitant to use that library because of its dependency on Bazel and GCR's builders. In the long run, it's actually less maintenance on our part if we just implement this small bit of functionality.

@nishakm  - Thank you for this note. I One thing I did notice was that they still ship the SDK as a source repository and not using PyPi - I think there is  a issue created for them to create a PyPi package.
When I used the SDK, I did not have bazel installed and after copying their source folders to the project was able to use it without bazel.
However, you can take a call. I do agree that implementing this small bit of functionality is not so much of a effort from our end - we just need to careful with the various HTTP error conditions and retry

When I used the SDK, I did not have bazel installed and after copying their source folders to the project was able to use it without bazel.

Not having a pip package is the other issue. We will then need to vendor this source package using a vendor directory or a submodule.
It also looks like implementing retries and managing HTTP errors are pretty straightforward using requests.

@nishakm @rnjudge @prahaladdarkin I have created a Pull Request with the initial implementation. Please take a look and share feedback on it. I have added methods inside the Image class as of now. I think these would be common methods and implementation which could be shared across docker and OCI images [ still need to verify though ].

@nishakm @mukultaneja  @rnjudge Apologies for the very delayed response. Thank you very much for working on the enhancement proposal which will go a long way in implementing my PoC on Harbor and Tern integration. I was held up with major refactoring in DB schema and vulnerability data storage layer in Harbor.
The Tern integration with Harbor is an area I have started discussions with Harbor folks again and have started off from where I left. Will keep you posted.

This is now available in release 2.9.0


[SRK-3] Some minor cleaning and additions in utility modules

Adds Buildable instance to prepare better for migration onto fmt.
Also cleans functions a little in utility modules.

@neongreen Done

Will merge after checks pass.


Optional fields?

Hi!
Is there a way to decode optional fields? Something like Json.Decode’s maybe?

Oh right, didn’t realize sometimes was just what I needed, even though it’s explicitly mentioned in the docs…
Thanks for mentioning the other options as well! I’ll consider them if I need to work more with YAML later.


hang/Fatal error server disconnect with little tiles mod

Please use the search functionality before reporting an issue. Also take a look at the closed issues!
Issue description:
People are reporting a crash that occurs regularly for them but not at all for other players. I myself experienced this connecting to a server but it eventually went away. This is getting enough attention and causing enough people frustration I wanted to get some reports out to both mod devs that the stacktrace shows in hopes of a fix from either dev. The stacktrace seems to involve both mek and little tiles but im not sure which mod is best suited to the fix so I'm posting to both trackers.
Steps to reproduce:

Join a server or switch to LAN game
change world
error sometimes happens for some people but rarely and hard to reproduce

Version (make sure you are on the latest version before reporting):
Forge: 2795
Mekanism: Mekanism-1.12.2-<IP_ADDRESS>0.jar
Other relevant version: LT: LittleTiles_v1.5.0-pre130_mc1.12.2.jar
If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)
Logifle:
https://cdn.discordapp.com/attachments/563344094043045903/563344186913325094/2019-04-04-6.log
relevant part where the disconnect happens:
[23:46:24] [Netty Local Client IO #0/ERROR]: Something went wrong java.lang.NullPointerException: null 	at mekanism.common.block.BlockBounding.getMainBlockPos(BlockBounding.java:31) ~[BlockBounding.class:?] 	at mekanism.common.block.BlockBounding.getPickBlock(BlockBounding.java:94) [BlockBounding.class:?] 	at li.cil.scannable.util.BlockUtils.getItemStackFromState(BlockUtils.java:23) [BlockUtils.class:?] 	at li.cil.scannable.client.scanning.ScanResultProviderBlock.buildOreCache(ScanResultProviderBlock.java:424) [ScanResultProviderBlock.class:?] 	at li.cil.scannable.client.scanning.ScanResultProviderBlock.rebuildOreCache(ScanResultProviderBlock.java:91) [ScanResultProviderBlock.class:?] 	at li.cil.scannable.common.config.Settings.setServerSettings(Settings.java:272) [Settings.class:?] 	at li.cil.scannable.common.network.Network.onClientDisconnectionFromServer(Network.java:58) [Network.class:?] 	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_3086_Network_onClientDisconnectionFromServer_ClientDisconnectionFromServerEvent.invoke(.dynamic) [?:?] 	at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90) [ASMEventHandler.class:?] 	at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182) [EventBus.class:?] 	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.close(NetworkDispatcher.java:502) [NetworkDispatcher.class:?] 	at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:624) [netty-all-4.1.9.Final.jar:4.1.9.Final] 	at io.netty.channel.AbstractChannelHandlerContext.access$1100(AbstractChannelHandlerContext.java:38) [netty-all-4.1.9.Final.jar:4.1.9.Final] 	at io.netty.channel.AbstractChannelHandlerContext$13.run(AbstractChannelHandlerContext.java:613) [netty-all-4.1.9.Final.jar:4.1.9.Final] 	at io.netty.channel.DefaultEventLoop.run(DefaultEventLoop.java:54) [netty-all-4.1.9.Final.jar:4.1.9.Final] 	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [netty-all-4.1.9.Final.jar:4.1.9.Final] 	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_51]
cross posted to little tiles tracker:
https://github.com/CreativeMD/LittleTiles/issues/152

duplicate of #5319


Most Recent Responsive Styles

Assignee Tasks

[ ] added unit tests (or none needed)
[ ] written relevant docs (or none needed)
[ ] referenced any relevant issues (or none exist)

Guidelines
Please add a description of this Pull Request's motivation, scope, outstanding issues or potential alternatives, reasoning behind the current solution, and any other relevant information for posterity.

Your PR Notes Here

Navbar, logo, favicon, services-menu are now responsive


chore: update Nx workspace to v17.2.5 and fix docs path in config

The warning that is now displayed when running nx serve(The CJS build of Vite's Node API is deprecated. See https://vitejs.dev/guide/troubleshooting.html#vite-cjs-node-api-deprecated for more details.) is already solved in https://github.com/nrwl/nx/pull/20774 (yet to be released)

LGTM


Properly inline documentation and use intra-crate lints

Now that rust-lang/rust#64536 has landed, all of the bugs with proc
macro documentation have now been fixed (currently only on the latest
nightly). We can now use #[doc(inline)] on proc macro imports, which
works just like any other import.

Note that docs.rs is currently using an older version of rust, which might not properly build this. This should be fixed after September 30th when docs.rs switches to always using the latest nightly.

@taiki-e: The docs.rs changes have been applied, so this PR should be ready to merge

Thanks again!
bors r+


Possible to adapt logo json markup according to Google guidlines?

Hello,
today I ran into an issue with the json markup from a news article. Google testing tool complains about the logo because the type "@type": "ImageObject" will not be set.
This is what I get as output:
"logo":"http:www.xxxxxxxxxxxxx.png"

but Google wants it in that kind of format:
"logo": {
      "@type": "ImageObject",
      "url": "https://google.com/logo.jpg"
    }

I add the logo to the Schema.org type like this:
->logo("http:www.xxxxxxxxxxxxx.png")

So is it possible to enrich the logo markup with the type attribute and how?
Best regards

Sorry, I have found the solution:
->logo(Schema::ImageObject()->url("http:www.xxxxxxxxxxxxx.png"))


v16.0+1 Second level repeat binding is broken.

Please see following link for details:
https://code.google.com/p/dart/issues/detail?id=22863&sort=-opened&colspec=ID Type Status Priority Area Milestone Owner Summary Modified Opened

Looks like the same issue as the one discussed at the end here https://github.com/dart-lang/polymer-dart/issues/33. I have a fix in flight here. With that I was able to just increase the polymer upper bound, run pub upgrade, and everything works fine.

should be fixed now if you do a pub upgrade (make sure you get 0.5.1+7 of the initialize  package)

This is not fixed in 0.16.0+1.

@jakemac53
After upgrading to v0.16.0+1 (0.5.1+7 for initialize), the issue is fixed for using <link ref="impor" ...> in .html template. However, it is still a issue if using @HtmlImport("...html") in .dart file.

I just attached a version to the original dart bug which has been converted over to @HtmlImport for everything and it seems to be working fine. I didn't have a chance to look to much into the version that you did, but I can confirm its not working for me either, there must be some subtle difference there which is escaping me.

Ah found it, looks like this has to do with how you are using exports instead of imports (probably to hide the unused import hints). This should work, although its probably exposing more than you really want to the outside world. If your only goal is to hide the hint then I would recommend a dartdoc comment instead, for instance add something like this to your class will hide the hint for any import containing a ToolButtonGroup class:
/// Using [ToolButtonGroup] in the template.

fix pending here https://codereview.chromium.org/1011743006/, should be in by EOD

@jakemac53  Thanks!

released as 0.16.0+4, thanks for the report!


Bump Dependencies #6862032680

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/6862032680

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.jenkins-is-staging seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Remove import statements referencing to tda-api library

Can you please fix this code - https://github.com/alexgolec/schwab-py/blob/main/schwab/orders/common.py#L367
It has got the following code which is not allowing to create OCO orders.
     from tda.orders.generic import OrderBuilder

May be it is a good idea to search whole code base for "from tda" and "import tda" to find similar issues.

Fixed, thanks for pointing this out!


procurve telnet functionality

I've built on your code to add telnet functionality, improved python3 support and mac address table functionality. If you're interested, you can pull it in.
Thanks,
Pieter

Thank you very much for your contribution. Lemme have a look at the code. Generally very happy to merge.

The mac-address table functionality isn't easy to mock as it's not one command that ends up parsed to one output. As procurve doesn't list the vlan_id in "show mac". This means I first get the list of vlans and then end up getting all their mac addresses individually.
Not sure how to get a decent test going without reworking your entire test framework or without removing vlan_id functionality.

The test framework supports multiple commands. Have a look at test_get_lldp_neighbors_detail which does exactly what your code does, first fetch a general list using "show lldp info remote device" and then it gets details such as "show lldp info remote device ethernet 1".
But don't worry about it, I already mocked the right data for the testing framework on my local branch...
But on another note, I just checked the command used. You use show vlan, but as far as I can see on my test switches, "show vlans" is the right command. Can you please double check that this is indeed the case on your device as well?
If your device is different, please give product and os version.

you are right, it's "show vlans" on my model too.

Could you please paste me some sample output here so that I understand what is going on?
Thanks.

Closing pull request for now, code that works has been comitted as master.

@pieterdejaeghere Can you try adding adding the following code to your script and then see what the output is from the device when the weird breakage happens?
I am pretty sure it is not a problem with the reuse of the the output and line parameters but instead is something that goes wrong parsing the procurve output. I saw that once during my testing but was not able to reproduce.
import logging
logging.basicConfig(filename='test.log', level=logging.DEBUG)
logger = logging.getLogger("netmiko")

Do you have your debug output still around?
Could you please paste it here as code with passwords removed?
That way I can understand what is going on.

I looked at my pycharm debugger, the output variable of the show vlans command had a couple of empty lines sitting in the middle of the output (so vlan x, newline, vlan y, newline, newline, newline, vlan z, newline)

@pieterdejaeghere I pushed a new version which wraps the split in a try/except block.
This should cover the case of unparsable newlines/empty lines. Tests are passing for this.
Would be interesting to see if this also works for you.


Make update text output less verbose

Describe the solution you'd like
Make update text output less verbose.
We could have more verbose outputs based on whether the dev flag has been set.
What does your solution aim to solve?
We shouldn't show users confusing blobs of text that represent internal mechanisms.

Probably best to combine with #464 and #422.

We should make it such that it dumps the verbose output stream if a command fails.


Reduce duplicated code to handle directives

In addition, parse only expression statements as each directive consists
of a string literal and thereby guarantees that it can't be other types
of statements.
Fixes #1404

Current coverage is 100.00%

Merging #1405 into master will not affect coverage as of c66c102

@@            master   #1405   diff @@
======================================
  Files            1       1
  Stmts         3194    3182    -12
  Branches       585     580     -5
  Methods          0       0
======================================
- Hit           3194    3182    -12
  Partial          0       0
  Missed           0       0

Review entire Coverage Diff as of c66c102

Powered by Codecov. Updated on successful CI builds.

:+1:


String conversion for collection made from whereIn shows different behaviors depending on the value you specified

Laravel Version: 7.22.4
PHP Version: 7.21.31
Database Driver & Version:

Related Issue: https://github.com/laravel/ideas/issues/2299
Description:
I am trying to convert a collection array to string after I created it from whereIn.
As you see below, in the first case I specified the first value [1], and then I get a simple array [{"a":1,"b":1}] .
In the second case I specified the second value [2], and then I get a map of map {"1":{"a":2,"b":2}} .
I have to add flatten to the second case to standardize both cases. Is this behavior expected?
Steps To Reproduce:
$array = collect([['a' => 1, 'b' => 1],['a' => 2, 'b' => 2]]);
print($array->whereIn('a', [1]));
[{"a":1,"b":1}]
print($array->whereIn('a', [2]));
{"1":{"a":2,"b":2}}

This becomes a problem especially when you want to receive the array or any instance as a json response on the client side. The code will be like below.
$array = collect([['a' => 1, 'b' => 1],['a' => 2, 'b' => 2]]);

$case1 = $array->whereIn('a', [1]);
$response1 = response()->json([$case1])
$response1->content()
=> "[[{"a":1,"b":1}]]"

$case2 = $array->whereIn('a', [2]);
$response2 = response()->json([$case2])
$response2->content()
=> "[{"1":{"a":2,"b":2}}]"

Any ideas or advices?
Thanks!

I have same issue when after use collection filter method.

Ho @KotaroSetoyama
Try doing this:
$case2 = $array->whereIn('a', [2])->values();

The ->values() will ignore the filtered keys from the ->where() and create a 0-indexed collection that will be serialized as a json array.
When you create the collection its internal array looks like this:
[
  0 => ['a' => 1, 'b' => 1],
  1 => ['a' => 2, 'b' => 2]
]

After applying the ->where() that matches only the second element, the internal array becomes like this:
[
  1 => ['a' => 2, 'b' => 2]
]

So when serializing to json it could be either an array or an object with a key equals to "1".
After applying the ->values() method, a new collection is created and its internal array only preserve the old collections values, re-indexing its key from 0:
[
  0 => ['a' => 2, 'b' => 2]
]

And it gets serializes as you would expect.
As a rule of thumb I always apply the ->values() after filtering a collection (with ->where(), ->filter(), or other methods that create a new collection) when its keys aren't meaningful to the data it holds to avoid ending with an array that is not 0-indexed.

Hi @rodrigopedra
Thanks very much for the quick response.
So then why is the result of the filtering that matches the first element not like this?
[
    0 => ['a' => 1, 'b' => 1]
]

If the array preserves its index whatever you indexed, 0 or 1, the structure will be same
0 => ['a' => 1, 'b' => 1] or
1 => ['a' => 2, 'b' => 2]
and this is less confusing, isn't it?

When the filtering matches the first element the result is 0-indexed. Sorry if I don understand clearly your reply.
I added this command to my ./routes/console.php file:
Artisan::command('test', function () {
    $array = collect([['a' => 1, 'b' => 1],['a' => 2, 'b' => 2]]);
    $array->whereIn('a', [1])->dump();

    $array->whereIn('a', [2])->dump();
    // as index starts at one, serializes to object
    $this->info(\json_encode($array->whereIn('a', [2])));

    // as index starts at zero serializes to array
    $this->info(\json_encode($array->whereIn('a', [2])->values()));
});

And the output is this:
$ php artisan test
Illuminate\Support\Collection {#791
  #items: array:1 [
    0 => array:2 [
      "a" => 1
      "b" => 1
    ]
  ]
}
Illuminate\Support\Collection {#784
  #items: array:1 [
    1 => array:2 [
      "a" => 2
      "b" => 2
    ]
  ]
}
{"1":{"a":2,"b":2}}
[{"a":2,"b":2}]

As you can see the first ->where(), which matches only the first element is keyed with 0. That is why it gets serialized as an array.
Keeping the index after filtering may seem odd when dealing mostly with numeric indexed collections, but it makes sense when a collection's key have meaningful data, for example I added this other command:
Artisan::command('other', function () {
    $people = collect();

    $people->put('John', ['age' => 25, 'preference' => 'gaming']);
    $people->put('Mary', ['age' => 22, 'preference' => 'coding']);

    $people->dump();

    $preferCoding = $people->where('preference', 'coding');

    $preferCoding->dump();

    $this->info(\json_encode($preferCoding));

    // if we reset keys we lose the person's name:
    $preferCoding->values()->dump();

    $this->info(\json_encode($preferCoding->values()));
});

Which generates this output:
$ php artisan other
Illuminate\Support\Collection {#27
  #items: array:2 [
    "John" => array:2 [
      "age" => 25
      "preference" => "gaming"
    ]
    "Mary" => array:2 [
      "age" => 22
      "preference" => "coding"
    ]
  ]
}
Illuminate\Support\Collection {#791
  #items: array:1 [
    "Mary" => array:2 [
      "age" => 22
      "preference" => "coding"
    ]
  ]
}
{"Mary":{"age":22,"preference":"coding"}}
Illuminate\Support\Collection {#784
  #items: array:1 [
    0 => array:2 [
      "age" => 22
      "preference" => "coding"
    ]
  ]
}
[{"age":22,"preference":"coding"}]

In this case we would loose the key when we apply the ->values() after filtering, which for this collection is not desirable.
As the collection cannot know if you want to keep the keys or not applying the ->values automatically is not an options, that is why I add it manually when dealing with collections where its keys doesn't add meaning to the data.

@rodrigopedra
Thanks! I understand how I should use it now. Your example is quite helpful!

@KotaroSetoyama you're welcome :smile:


Arrange cards in a uniform manner

Describe the bug
Cards are not arranged properly
To Reproduce
Steps to reproduce the behavior:

Go to the website
Scroll down to see alignment of cards
See error

Expected behavior
A clear and concise description of what you expected to happen.
Cards should be arranged in a uniform manner and also be of equal size
Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
I am a GSSOC 22 contributor.
Steps Followed✅
Check the box with [x] If you followed all the steps.

[x] Describe the bug
[x] To Reproduce
[x] Expected behavior
[x] Screenshots

Code of Conduct✅

[x] I agree to follow this project's Code of Conduct.
[x] I checked the current issues for duplicate problems.
[x] I have gone through project README.

Assigned in #507


[Bug] 3D地图上添加scatter3D自定义散列图形，图形hover位置偏移问题

Version
5.2.0
Link to Minimal Reproduction
https://jsfiddle.net/d9rm5y0p/
Steps to Reproduce

如下图所示，页面加载完地图，鼠标放到黄色圆环区域，五角星被hover触发 ，与预想五角星正上方hover区域不一致

Current Behavior

鼠标放到黄色圆环区域，五角星被hover触发

Expected Behavior
1.鼠标放到五角星区域，hover事件触发
Environment
- OS:macOS Sonoma
- Browser:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
- Framework:Jquery

Any additional comments?
No response

Could not reproduce such drastic mismatch between scatter point and hover area.
Even with bigger symbolSize the hover area is ~99% inside the symbol. But the area is definitely smaller than the symbol and does not cover it all. There is a certain area-offset towards the center of the chart.  The bigger symbolSize is, the more visible that offset is.
As a pure GL issue, you may ask it on the GL board.

Could not reproduce such drastic mismatch between scatter point and hover area. Even with bigger symbolSize the hover area is ~99% inside the symbol. But the area is definitely smaller than the symbol and does not cover it all. There is a certain area-offset towards the center of the chart. The bigger symbolSize is, the more visible that offset is. As a pure GL issue, you may ask it on the GL board.

Thank you for your answer. I went to GL issues and saw an interesting answer and got a hidden attribute（textStyle-backgroundColor-image）.
https://github.com/ecomfe/echarts-gl/issues/471

你好，请问这个问题有什么好的解决方案么

你好，请问这个问题有什么好的解决方案么

没有，最后放弃了这种展现方式


Added MysticLands Network

General:

[x] The pull request title is descriptive. (ex. Added Lunar Network, not Updated metadata.json)
[x] The pull request does not contain any unrelated commits.  (ex. commits from previous pull requests)

Mapping Additions or Updates:

[x] Folder with appropriate name has been created / updated (must not include any non-alpha characters or whitespace).
[x] No changes were made to the file's formatting (4 spaces per tab).
[x] There are no syntax errors.
[x] There is no pre-existing mapping matching my id (check if there is an existing folder).
[x] My field values match your requirements.
You can view our patterns here: metadata.schema.json, or take a look below and complete the field checklist:

[x] id: a lowercase string, which should match the folder name (ex. myserver)
[x] name: a string (ex. MyServerPvP)
[x] addresses: an array with lowercase strings (ex. ["my.server", "your-server.com"])

You do not need to specify subdomains, Lunar Client services automatically detect them.

[x] primaryAddress: an address (ex. my.server)
[x] minecraftVersions: an array with Minecraft versions as strings (ex. ["1.18", "1.19"] - Must be versions supported by Lunar Client)
[x] primaryMinecraftVersion: a Minecraft version as a string (ex. 1.18 - Must be versions supported by Lunar Client)
[x] primaryColor: a hexademical color code that primarily distiguishes the server (ex. #00FFFF)
[x] secondaryColor: a hexademical color code that accompanies the primaryColor of the server (ex. #FF0000)
[x] primaryRegion: the primary region where your server operates in (ex. NA)
[x] regions: a list of regions where you have servers located that service your players (ex. ["NA", "EU", "AS"])
[x] gameTypes: a list of games that describe the content on your server, must be a max of 3 listed (ez. ["PVP", "UHC", "HCF"])

Media:
Logo

[x] My logo is a png file.
[x] I have uploaded my logo to my server folder (ex. lunarnetwork) and named it logo.png.
[x] My logo has a transparent background and is square (1:1 aspect ratio).
[x] My logo is 512 pixels in width and height.
[x] My logo is my own property and complies with relevant copyright/privacy laws.

Background

[x] My background is a png file.
[x] I have uploaded my background to my server folder (ex. lunarnetwork) and named it background.png.
[x] My background has an aspect ratio of 16:9.
[x] My background is atleast 1920 pixels in width and 1080 pixels in height (can be bigger, but must remain the same aspect ratio).
[x] My background contains relevant content pertaining to the server, is my own property, and complies with relevant copyright/privacy laws.
[x] My background doesn't contain any markings, text, or logos (unless part of a build).

Can i make a commit or you prefer that i remake the pull request?

Can i make a commit or you prefer that i remake the pull request?

Make a commit to your forked repo and it will update the PR.

I've added a commit for remove the old directory and a new one for add the correct version.
Thanks for the patience.

@rkomi
Can you please confirm if the ONLY versions supported are 1.7 and 1.19?
If all versions between those are supported, please add them to your 'minecraftVersions' array.

I've added the other version, sorry for the error.

Fixed.


could you please suggest some possible reasons why my testing results are all zero?

I have followed all the readme suggestions, and here are my commands, when I finally managed to get the test file running, somehow the results were wrong, could you please suggest some possible reasons why my testing results are all zero?
running command - python tools/test.py configs/m2mrf/fcn_hr48-M2MRF-A_60k_ddr_bdice.py ./M2MRF-Lesion-Segmentation-master/fcn_hr48-M2MRF-A_60k_ddr_bdice_iter_60000.pth --eval mIoU --show-dir ./M2MRF-Lesion-Segmentation-master/

hello, do you know the reasno why? i meet the same problem


Troubleshoot webform issue for General payment

DOD

[ ] Dev team to Provide Intake Mgr with full list of General requests received in May and June:  Request ID, Applicant ID, date and description for

cc: @abin-aot @acoard-aot @arielleandrews @m-prodan @lmullane
Please add to DOD and estimate effort of this.

@abin-aot @lmullane - tested another pay scenario and BCSC in TEST - no issues. I think we are good to go to PROD given the other tests the devs did over 10AM, including IGE and a non-BCSC personal request


Configure UI & Menu Styles

I really like old display UI that was similar with vanilla bundle item. I really wish to return old design by config option.
I wish to have option to disable backpack render then you open it from ground or other player back. Would be useful to have option to disable that too and replace with something like chest, that dynamically adds slots to the UI. (When it is empty, no slots should appear)

I've been messing around the UI in the inventory when you hover over it and I think I'm going to update it one more time + add a setting in config to choose your style.
As for the placed menu, I think I might run into issues with the slots syncing on the server and client if I let you change the menu style in config but I'll definitely test it out since this is something requested a lot. I think the recent changes with the menu are definitely a step in the right direction though so I'll keep iterating.

By trying bundles just now, I remembered that they are having cool tooltip, helping to figure out when it almost full. Whould be really helpful to have that on backpacks.

Your texture pack makes the tooltip look really good, hated the vanilla one so I threw out that code. I now have 3 backpack tooltips you can choose from using config but I couldn't completely revert to using the old bundle style so I made a much more vanilla style that solves the problems I was having with the original. This is what the vanilla style looks like vvv

This wouldn't work with the mod you use to remove the purple border around the tooltip though but if you tell me the mod I'll add compatibility for it before I release the update.

Btw with telling how full it is, the 7/64 text at the bottom doesn't feel right considering that armor adds 64 and the backpack can hold many more items. I do have the durability bar under the backpack when its equipped and when it's full it removes the first empty slot then turns that bar red. Maybe I could turn the bar yellow if you have less than a stack left of space but I like where there's as little reading as possible in GUIs, purely a preference thing tho.

It might be a disabled by default config option, if it is not really hard to implement. Whould be really good one for people that wish to have consistency with vanilla. I also like the bar how it is now. Colors different with blue people reading as durability, that might confuse them.

As for tooltips, I am using mod called ModernUI. I might drop you my config options to test them.
ModernUI.zip
The ModernUI folder should be placed in .minecraft/config

That style looks amazing, except ability to view tooltip of current item. Thanks a lot for your efforts!

Version 20.1-0.25-v2 on Modrinth lets you use config to change the menu type. Change "COMPACT" to  "VANILLA". I haven't gotten it working with ModernUI just yet but what don't you like about tooltip of the current item?


Curved goes to negative

When Data goes too high and curved set true it goes under the bottom line

.

https://github.com/imaNNeoFighT/fl_chart/issues/1024#issuecomment-1186562047


NSD authoritative DNS server - automatic relationship with mailserver?

Sorry my understanding of how and where the NSD server sits in this mailserver configuration is limited.
I currently configure the SPF, DKIM and DMARC records on an external DNS service. Am I correct to assume that if NSD was set up, that these records would be automatically populated? (if it were to be configured as authoritative for the domain)

Am I correct to assume that if NSD was set up, that these records would be automatically populated?

These records are not automatically populated, you have to set the dns zone as shown here :
https://github.com/hardware/mailserver/wiki/NSD-initial-configuration

Am I correct to assume that if NSD was set up, that these records would be automatically populated?

These records are not automatically populated, you have to set the dns zone as shown here :
https://github.com/hardware/mailserver/wiki/NSD-initial-configuration

Sorry for the bump, got the same question, the link is broken though. Any other link you could provide please? Many thanks.


devon naming convention rule hitting Cobigen generated code

Problem
The devon rule for naming convention violation is hit for code which is generated by Cobigen

Expectation
It seems that there is a Bug in the rule implementation itself as it is saying for non-abstract classes but here we have an abstract class.  I fixed them and did lots of tidy up.
I also added your scenario as additional test-case that is now green:
https://github.com/devonfw/sonar-devon4j-plugin/blob/36a3c85bfaf7bc9838d66b4dd26a9c67c9818d9f/plugin/src/test/files/naming/DevonNamingConventionUcCase8Check.java#L3