HashAgg w/o spill doesn't outperform vanilla Spark

Description
In a customer workload profiling, we found hashAgg can't outperform vanilla Spark, even in the case that no spill happens.  In this query, the groupby keys are the primary keys of the table so aggregation doesn't produce reduction at all. Here is the detailed plan stats:
    -- Aggregation[FINAL [n0_0, n0_1] n1_2 := sum("n0_2"), n1_3 := sum("n0_3"), n1_4 := sum("n0_4"), n1_5 := sum("n0_5"), n1_6 := sum("n0_6"), n1_7 := sum("n0_7"), n1_8 := sum("n0_8"), n1_9 := sum("n0_9"), n1_10 := sum("n0_10")] -> n0_0:VARCHAR, n0_1:VARCHAR, n1_2:BIGINT, n1_3:BIGINT, n1_4:DOUBLE, n1_5:BIGINT, n1_6:DOUBLE, n1_7:BIGINT, n1_8:DOUBLE, n1_9:BIGINT, n1_10:DOUBLE
       Output: 28319541 rows (6.01GB, 6914 batches), Cpu time: 37.48s, Blocked wall time: 0ns, Peak memory: 5.05GB, Memory allocations: 207459, Threads: 1
          distinctKey0                 sum: 1, count: 1, min: 1, max: 1
          distinctKey1                 sum: 32250, count: 1, min: 32250, max: 32250
          hashtable.capacity           sum: 33554432, count: 1, min: 33554432, max: 33554432
          hashtable.numDistinct        sum: 28319541, count: 1, min: 28319541, max: 28319541
          hashtable.numRehashes        sum: 14, count: 1, min: 14, max: 14
          hashtable.numTombstones      sum: 0, count: 1, min: 0, max: 0
          runningAddInputWallNanos     sum: 34.32s, count: 1, min: 34.32s, max: 34.32s
          runningFinishWallNanos       sum: 1.62us, count: 1, min: 1.62us, max: 1.62us
          runningGetOutputWallNanos    sum: 3.15s, count: 1, min: 3.15s, max: 3.15s

ping @FelixYBW @mbasmanova.

@yma11 Thank you for reporting this. Would you add the previous node as well? What are the types of the grouping keys n0_0, n0_1? Does Spark use hash aggregation or sort + streaming aggregation? Any chance you could attach a profile?
I see that grouping keys are strings. Can you share the distribution of lengths of these strings?
n0_0:VARCHAR, n0_1:VARCHAR
This aggregation computes 8 sums. Can we reproduce the issue with 1 sum or 2? E.g. if we reduce number of sums, do we still see Velox not being faster than Spark? Is it slower or about the same?
I wonder if we could create a benchmark that ilustrates the issue.

Assuming input is 2 strings + 8 bigint / double. With 6.01GB total over 28319541 rows -> that's 227 bytes per row. 8 bigint / double are 8 * 8 = 64 bytes. This leaves 163 bytes for 2 strings. ~80 bytes per string. Is this how it is?
Does the issue reproduced with just one string group-by key? Or do we need 2?
All pairs of input group-by strings are unique, but how many unique values are in each group-by key? Are these keys unique by themselves as well?

CC: @oerling @Yuhta @xiaoxmeng

@mbasmanova Thanks for quick reply.

Would you add the previous node as well?

This is final Aggregation so previous node is shuffle.

What are the types of the grouping keys n0_0, n0_1?

As you assumed, they are strings. For n0_0, it has 19,653,306 unique values in total 28,273,546 rows. For n0_1, it has 23,225,893 unique values in total 23,642,319 rows.

Does Spark use hash aggregation or sort + streaming aggregation?

It uses HashAggregation.

Can we reproduce the issue with 1 sum or 2?

Yes. This issue can be reproduced using 2 keys with less sum.  But with single key, Velox can outperform vanilla Spark even with several sums, about 1.5X.
I will do a profile but it will need some time. Hope above info can give you some clue.

@yma11 Thank you for these additional details. This is helpful. To recap, we need 2 string keys with mostly unique values and  1 aggregation. BTW, can you also clarify what are the lengths of the strings? Are these roughly 80 bytes each?

can you also clarify what are the lengths of the strings? Are these roughly 80 bytes each?
Seems it's not so long but 32 bytes, like 256d12eb37ee1fed458dce8cfd6b67f1.

@yma11 Thanks.
So, it is 2 string keys with mostly unique values and 1 aggregation. Strings are ~32 bytes each, e.g. '256d12eb37ee1fed458dce8cfd6b67f1'.

The aggregation number doesn't quite matter.  Multi string keys affect much.

@yma11 @oerling Discussed with Orri. We suspect the hot spot is hashing of StringView using spooky hash. Orri will put together a more efficient hash. @yma11 Would you be able to give it a try once PR is out?
namespace folly {
template <>
struct hasher<::facebook::velox::StringView> {
  size_t operator()(const ::facebook::velox::StringView view) const {
    return hash::SpookyHashV2::Hash64(view.data(), view.size(), 0);
    // return facebook::velox::bits::hashBytes(1, view.data(), view.size());
  }
};

@yma11 Any chance you could you try to apply #7261 to see if it helps?

@yma11 Any chance you could you try to apply #7261 to see if it helps?

@mbasmanova I applied this patch and E2E of the query is shortened to 40s from 56s. So this change helps. But 40s is still not good enough and maybe caused by other code changes. Now I am switching to latest code and make deeper investigation. So will keep this ticket open util we figure out a good result.

@yma11 Thank you for the update.

But 40s is still not good enough

Just out of curiosity, what is the number we are looking for?

Now I am switching to latest code and make deeper investigation. So will keep this ticket open util we figure out a good result.

Thanks.  Here are the hotspots identified:
1):

2):

I am still using the query with group by on 2 primary string keys. Is it possible to further optimize this?
Actually there is a regression after Gluten switched to upstream Velox. Before the switch, the perf of this query is similar between Velox and spark and it's expected to have perf gain using the Hasher optimization. But after this switch, Velox perf is worse than spark, about ~80% and then become similar with Hasher optimization applied.
Thanks,
Yan

@yma11 Thank you for the updates. We'll take a closer look. We need to create a benchmark so we can profile and optimize more easily. If you have cycles, see if you can help create such a benchmark. An example can be found in velox/functions/prestosql/aggregates/benchmarks/ReduceAgg.cpp. Otherwise, I'll create one. Thanks.

I think it maybe easier to reproduce by using parquet file velox/dwio/parquet/tests/examples/str_sort.parquet and a sql select query_sig, result_sig from tmp groupby query_sig, result_sig but haven't found any available example I can refer.

@yma11 Unfortunately, I'm not setup to run tests over Parquet files.
I tried to create a benchmark to reproduce this issue: #7344
I'm seeing different numbers though: 14s cpu time vs. 37s in your case. Also, 2x fewer memory allocations: 110K vs. 210K.
  He is going to add a fast path to HashStringAllocator to copy a single string.

@yma11 Fast path for HashStringAllocator to copy a single string: #7355

@mbasmanova with 7355, E2E time of same query shortens to 37s from 42s, so it now has about 14% perf gain in this case.
By the way, I see 7261 is reverted for test failure, will it be ported again?

@yma11 Thank you for the update. Happy to hear that we are no longer slower than Spark and a tiny bit faster.
I also noticed that https://github.com/facebookincubator/velox/pull/7261 was reverted. We'll need to work on getting it back in. CC: @Yuhta @oerling

@yma11 One more optimization from Orri: #7386
Any chance you could try that?

@yma11 One more optimization from Orri: #7386
Any chance you could try that?

I got a build error at gluten cpp side for this PR.
error: cannot convert ‘const xsimd::avx’ to ‘const xsimd::sse2&’
  294 |   return detail::BitMask<T, A>::toBitMask(mask, arch);
```
Any clue on it?

@yma11 Do you have the full output from compiler?

@Yuhta like this:
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil.h: In instantiation of ‘auto facebook::velox::simd::toBitMask(xsimd::batch_bool<T, A>, const A&) [with T = unsigned char; A = xsimd::avx]’:
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil-inl.h:1362:26:   required from ‘bool facebook::velox::simd::memEqualUnsafe(const void*, const void*, int32_t) [with A = xsimd::avx; int32_t = int]’
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/exec/RowContainer.h:1086:61:   required from here
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil.h:294:42: error: cannot convert ‘const xsimd::avx’ to ‘const xsimd::sse2&’
  294 |   return detail::BitMask<T, A>::toBitMask(mask, arch);
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
In file included from /root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil.h:435,
                 from /root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/buffer/Buffer.h:26,
                 from /root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/vector/BaseVector.h:29,
                 from /root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/vector/ComplexVector.h:26,
                 from /root/workspace/gluten-111/cpp/velox/memory/VeloxColumnarBatch.h:22,
                 from /root/workspace/gluten-111/cpp/velox/operators/plannodes/RowVectorStream.h:22,
                 from /root/workspace/gluten-111/cpp/velox/compute/VeloxBackend.cc:24:
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil-inl.h:73:54: note:   initializing argument 2 of ‘static int facebook::velox::simd::detail::BitMask<T, A, 1>::toBitMask(xsimd::batch_bool<T, A>, const xsimd::sse2&) [with T = unsigned char; A = xsimd::avx]’
   73 |   static int toBitMask(xsimd::batch_bool<T, A> mask, const xsimd::sse2&) {
      |                                                      ^~~~~~~~~~~~~~~~~~
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil-inl.h: In instantiation of ‘bool facebook::velox::simd::memEqualUnsafe(const void*, const void*, int32_t) [with A = xsimd::avx; int32_t = int]’:
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/exec/RowContainer.h:1086:61:   required from here
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil-inl.h:1362:10: error: ‘void bits’ has incomplete type
 1362 |     auto bits = toBitMask(
      |          ^~~~
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil-inl.h: In instantiation of ‘static int facebook::velox::simd::detail::BitMask<T, A, 1>::toBitMask(xsimd::batch_bool<T, A>, const xsimd::sse2&) [with T = unsigned char; A = xsimd::avx]’:
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil.h:294:42:   required from ‘auto facebook::velox::simd::toBitMask(xsimd::batch_bool<T, A>, const A&) [with T = unsigned char; A = xsimd::avx]’
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil-inl.h:1362:26:   required from ‘bool facebook::velox::simd::memEqualUnsafe(const void*, const void*, int32_t) [with A = xsimd::avx; int32_t = int]’
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/exec/RowContainer.h:1086:61:   required from here
/root/workspace/gluten-111/ep/build-velox/build/velox_ep/velox/common/base/SimdUtil-inl.h:74:30: error: cannot convert ‘xsimd::batch_bool<unsigned char, xsimd::avx>’ to ‘__m128i’ {aka ‘__vector(2) long long int’}
   74 |     return _mm_movemask_epi8(mask);

@Yuhta Does the log help? I'd like to try this PR to see whether it can bring more perf gain.

Are you missing -mavx2 in your build?


Add GitHub templates

This adds Templates for new Issues and Pull Requests to help people. The Templates are mostly a backport from #344 .
We could even go a step further and add multiple templates..
This could be safely included in the next release (0.6.5).

Excellent idea, @dritter! We are for sure long overdue for this. I built on what you submitted and added a bit more detail. Very happy to get this in for v0.6.5 =)


Freeze status

Issues
#46
#40

changes are tiny and in the last two commits

Changes are small and in the last 3 commits. Right now the form level freeze column is empty which is why it's returning NAs - I asked Heather if that was intentional, but in the meantime I just filled it with zeros, so when this is merged there wont be NaN% in the ready for freeze column anymore)

just saw your comment @pburnsdata .  somehow the data file grew to 60 megs/1,000,000 records so i removed all those extra rows.  would you ask Heather to remove any columns we don't need?

yeah I just messaged her, she said she'll do that when she gets back from the break. The from level freeze column was also not supposed to be empty and she updated it. So in the meantime, I'll use the updated data and just drop the unnecessary columns for our test data manually and she'll make it part of the SAS process when she gets back.


+v0.01 Bitkit update

LN URL Modal:

[ ] Interface bug where scanning a Lightning Network (LN) URL consistently opens the modal popup twice. It briefly appears, closes (200ms), and then reopens with LN URL Payment UI details. We should ensure it opens correctly on the first attempt.

Contact List Scrolling:

[ ] We should ensure the send modal contact list is always scrollable, especially when use user has ±>10 contacts. Currently, on first attempt scrolling is not possible. Closing and reopening the modal sometimes resolves this. We should make scrolling work consistently.

LN Loader on Receive:

[ ] We should show the same payment network loader animation when the user immediately hits “Receive” after opening the app as is currently done for the “Send” flow. The problem is that currently, initially only the Bitcoin on-chain address is shown, because the Lightning Node isn’t ready. If the user has an active spending balance (channel), we should display the LN loading animation until the Lightning Node finishes loading and Bitkit is able to generate the unified QR.

Send to Contact (unified QR):

[ ] Balance Toggle Functionality: It would be nice to allow the sender to switch between “Savings” and “Spending” after scanning a unified QR code (see mockup video)

[ ] Fixed States for Toggle:
•	For On-chain-only QR codes, the toggle will be set to a fixed “Savings” state (see mockup video).
•	For Lightning-only invoices, the toggle will be set to a fixed “Spending” state.

Split into different tasks


Improve highlight CSS for dark mode

This improves the appearance of highlights in dark modes.
Before:

After:

I also like this but felt the simpler change was more worth a PR, since anyone can customize anyway:
.unlink-highlight {
  background-color: transparent !important; /* override the plugin */
  backdrop-filter: invert(.2);
  display: inline-block;
}


wasm language-server example fails to find pre-opened file descriptor

Hi @dbaeumer, now that #214 is closed, I get the following error when attempting to run the sample:

Starting WASM based LSP server
thread 'main' panicked at src/main.rs:24:32:
called Result::unwrap() on an Err value: Custom { kind: Uncategorized, error: "failed to find a pre-opened file descriptor > through which "/workspace" could be opened" }
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

the error is occurring on this line:
https://github.com/microsoft/vscode-extension-samples/blob/9378d7c9299e543713a9eae22eadda70b7fc9431/wasm-language-server/server/src/main.rs#L22-L24
Any thoughts?

When you run it do you open a workspace in the target folder?
The deadlock issue got fixed in WASI libc. If you are using the latest Rust toolchain you could try to remove the code as well and see if it works.


cobang: 0.12.0 -> 0.14.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for cobang is: A QR code scanner desktop app for Linux
meta.homepage for cobang is: https://github.com/hongquan/CoBang
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.13.0 with grep in /nix/store/ydf3p8q99ayxgjr2ci3df4rsix3max4v-cobang-0.13.0
found 0.13.0 in filename of file in /nix/store/ydf3p8q99ayxgjr2ci3df4rsix3max4v-cobang-0.13.0

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

cobang

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/ydf3p8q99ayxgjr2ci3df4rsix3max4v-cobang-0.13.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A cobang https://github.com/r-ryantm/nixpkgs/archive/ce8014edb936dd2ec3ae051fe61a70dea7eca193.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/ce8014edb936dd2ec3ae051fe61a70dea7eca193#cobang

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/ydf3p8q99ayxgjr2ci3df4rsix3max4v-cobang-0.13.0
ls -la /nix/store/ydf3p8q99ayxgjr2ci3df4rsix3max4v-cobang-0.13.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

2 packages built:

cobang
cobang.dist

Maintainer pings
cc @WolfangAukang for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for cobang is: QR code scanner desktop app for Linux
meta.homepage for cobang is: https://github.com/hongquan/CoBang
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.13.1 with grep in /nix/store/ycsfk6zc3fa2xq6ar8ryk28isjmylzmr-cobang-0.13.1
found 0.13.1 in filename of file in /nix/store/ycsfk6zc3fa2xq6ar8ryk28isjmylzmr-cobang-0.13.1

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

cobang

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/ycsfk6zc3fa2xq6ar8ryk28isjmylzmr-cobang-0.13.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A cobang https://github.com/r-ryantm/nixpkgs/archive/ca9915eb89a8a329ce3b9f501a5a701be3db08a6.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/ca9915eb89a8a329ce3b9f501a5a701be3db08a6#cobang

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/ycsfk6zc3fa2xq6ar8ryk28isjmylzmr-cobang-0.13.1
ls -la /nix/store/ycsfk6zc3fa2xq6ar8ryk28isjmylzmr-cobang-0.13.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

2 packages built:

cobang
cobang.dist

Maintainer pings
cc @WolfangAukang for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for cobang is: QR code scanner desktop app for Linux
meta.homepage for cobang is: https://github.com/hongquan/CoBang
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.14.1 with grep in /nix/store/02zajwg67b6jpk4vy753dnaj1wwczsha-cobang-0.14.1
found 0.14.1 in filename of file in /nix/store/02zajwg67b6jpk4vy753dnaj1wwczsha-cobang-0.14.1

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

cobang

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/02zajwg67b6jpk4vy753dnaj1wwczsha-cobang-0.14.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A cobang https://github.com/r-ryantm/nixpkgs/archive/33c2d3038ef079def23d97d73c56d23c0003c034.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/33c2d3038ef079def23d97d73c56d23c0003c034#cobang

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/02zajwg67b6jpk4vy753dnaj1wwczsha-cobang-0.14.1
ls -la /nix/store/02zajwg67b6jpk4vy753dnaj1wwczsha-cobang-0.14.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

2 packages built:

cobang
cobang.dist

Maintainer pings
cc @WolfangAukang for testing.

Result of nixpkgs-review pr 318129 run on aarch64-linux 1


Bugfixes for EOF, whitespace, and prettier checks.

PR Checklist

[x] A description of the changes is added to the description of this PR.
[x] If there is a related issue, make sure it is linked to this PR.

Description of changes
When running CI, we observe the following errors due to linting.
🚀 Checking Poetry lock file consistency with 'pyproject.toml': Running poetry lock --check
All set!
🚀 Linting code: Running pre-commit
[INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks.
[INFO] Initializing environment for https://github.com/astral-sh/ruff-pre-commit.
[INFO] Initializing environment for https://github.com/pre-commit/mirrors-prettier.
[INFO] Initializing environment for<EMAIL_ADDRESS>[INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
[INFO] Installing environment for https://github.com/astral-sh/ruff-pre-commit.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
[INFO] Installing environment for https://github.com/pre-commit/mirrors-prettier.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
check for case conflicts.................................................Passed
check for merge conflicts................................................Passed
check toml...............................................................Passed
check yaml...............................................................Passed
fix end of files.........................................................Failed
- hook id: end-of-file-fixer
- exit code: 1
- files were modified by this hook

Fixing LICENSE

trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing .github/workflows/on-release-main.yml

ruff.....................................................................Passed
ruff-format..............................................................Passed
prettier.................................................................Failed
- hook id: prettier
- files were modified by this hook

README.md
.github/actions/setup-poetry-env/action.yml
.github/workflows/main.yml
.github/workflows/on-release-main.yml
mkdocs.yml

make: *** [Makefile:13: check] Error 1
Error: Process completed with exit code 2.

This PR applies some formatting changes across the repo such that these tests are now passed in the initial commit. This appears to be related to https://github.com/fpgmaas/cookiecutter-poetry/issues/96 and https://github.com/fpgmaas/cookiecutter-poetry/pull/97.
Changes include:

Reformatting the extensions item in {{cookiecutter.project_name}}/.devcontainer/devcontainer.json to be on a single line.
Un-indenting lines 5 through 8 in {{cookiecutter.project_name}}/.github/actions/setup-poetry-env/action.yml.
Removing a newline on line 51 in {{cookiecutter.project_name}}/.github/workflows/main.yml.
Jinja templating changes for lstrip and trim blocks in {{cookiecutter.project_name}}/.github/workflows/on-release-main.yml.
Jinja templating changes for lstrip and trim blocks in {{cookiecutter.project_name}}/README.md.
Un-indenting in {{cookiecutter.project_name}}/mkdocs.yml.

These changes should not change any user behaviour apart from allowing the CI to pass first time without any user modification.

@fpgmaas I wanted to ask if you could take a look at this. They've been errors that I've been encountering while using this template that I've needed to manually fix before using it every time; I thought it would be useful to make the PR for others to benefit from.

@fpgmaas I wanted to ask if you could take a look at this. They've been errors that I've been encountering while using this template that I've needed to manually fix before using it every time; I thought it would be useful to make the PR for others to benefit from.

hanks for the contribution, and sorry for the late response! I was on holiday the past three weeks. I left one small comment; I'm happy to merge the PR after that is processed.


fix: remove Clone impl from Intervention

BREAKING CHANGE: Intervention previously incorrectly implemented Clone. This is incorrect because the struct contains owned raw pointers, which are dropped when the Intervention object is dropped. This change should fix any potential UB resulting from this error.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 93.8%. Comparing base (922b25f) to head (3992f2d).

Additional details and impacted files

Files with missing lines
Coverage Δ

src/intervention.rs
65.8% <ø> (ø)

... and 1 file with indirect coverage changes


docs: link to the original blog post instead of medium

This is a very small and opinionated suggestion regarding the «Concept» section of the docs.
Just link to the original blog post and ditch Medium, especially given the fact that you already have it online somewhere else. I really don't care about their business model, but in terms of UX/UI Medium is an abomination. I tried to read the thing on my mobile on a train ride earlier today. Ugh.
Then I found the link at the top (I know, right) that points to the original post – much cleaner, no more fighting modals and whatever shitshow is going on over there – I mean, just readable fcs.
I might be unaware of some advantages you see by promoting Medium over your own, imho much better approach. If there are any, just don't mind me.
Thanks for the project and have a nice weekend!
Regards
Lukas
Edit: Just realised, it's probably not you (the lib author) who wrote the blog post. Still, I'd rather have the link point to the original thing than Medium.

Absolutely!


List of features

[ ] Abstract functions so as we can have PIM statecharts and just implement functions in a PSM thing
[ ] external things to replace protocols. Things can define ports and properties and be instantiated many times
[ ] Byte/Bit operations
[ ] composite types (struct like) packed (array) and not packed (memory-aligned)
[ ] Prevent a thing from including two statecharts
[ ] for each loop for arrays (maybe two types: to iterate over elements and to iterate over indexes). The rationale is to avoid common bugs when iterating through arrays in a while loop (typically not incrementing the index)
[ ] dafault/basics datatypes
[ ] Time/Timers directly in the language. The rationale is that almost everyone uses timers, either through protocols or through things, and it would be good to have a unified way of dealing with time directly in ThingML (e.g. as asked by @oysteinh)
[ ] CEP
[ ] switch/case, which can simplify long series of if/else if

Some thoughts about for each loops
It would be nice to have two different syntaxes if you want to loop over the variable or the indices, like:
foreach ( value in array ) do
   ...
end

(the type of the value is given by the type of the array) and:
foreach ( index i : Integer in array ) do
   ...
end

And maybe break/continue in both foreach and while loops :)

CEP as a feature: does this mean based on ReactiveX or in connection with Apama? What are the plans for a feature?

This is more a a meta-issue and whould be broken down in individual feature requests


Handle more complex browser-compat-data

Continuation of #105
There are a few cases in the data that we don't handle.

Support was added under an experimental flag

For those that have become standardized, we can just display the latest supported version. (e.g., supported through flag in ver 1, become officially supported in v2, we can just show Browser V2)
For those that haven't become standardized. We need to find a way to display the information. For example Chrome 61 with flag. @aeschli What do you think?

Support is not chronological, for example: https://github.com/mdn/browser-compat-data/issues/1596. We can worry about this later, as mdn/browser-compat-data seem to have plan for enforcing certain linting rules on the order of support data.

Closing, no plans for now


Error happened when open a view in DBeaver

Proposed changes
Fix bug #4777：Error happened when open a view in DBeaver
Types of changes
What types of changes does your code introduce to Doris?
Put an x in the boxes that apply

[x] Bugfix (non-breaking change which fixes an issue)
[] New feature (non-breaking change which adds functionality)
[] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[] Documentation Update (if none of the other choices apply)
[] Code refactor (Modify the code structure, format the code, etc...)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] I have create an issue on (Fix #4777), and have described the bug/feature there in detail
[] Compiling and unit tests pass locally with my changes
[] I have added tests that prove my fix is effective or that my feature works
[] If this change need a document change, I have updated the document
[] Any dependent changes have been merged

Further comments
Fix bug #4777

It is best to talk about the cause of the problem and the idea of PR change.
This will allow others to better review the code


first video in a list is not playing

Hi any one help first video in a tableview is not playing only sound is coming please provide me update on this issue

Hello @sudarvizhi3026 , Did you get any solution?

no @sudarvizhi3026

@ashish0309  Can you give a solution for Video in the First cell is not playing when it appears the first time, we have to drag its bottom slightly to play the video.
Plz, help me with that. Thanks in advance.

I got one solution for that, Put pausePlayeVideos() method in Api call after reload table view. This works for me.

I solved it with this. There is an issue with your current and fully visible item of collectionview.
Add this method in ASVideoPlayerController  above  pausePlayeVideosFor.
func fullyVisibleCells(_ inCollectionView: UICollectionView) -> [UICollectionViewCell] {

        var returnCells = [UICollectionViewCell]()

        var vCells = inCollectionView.visibleCells
        vCells = vCells.filter({ cell -> Bool in
            let cellRect = inCollectionView.convert(cell.frame, to: inCollectionView.superview)
            return inCollectionView.frame.contains(cellRect)
        })
        vCells.forEach({
            returnCells.append($0)
        })
        return returnCells
    }

Replace first line of pausePlayeVideosFor
       let visisbleCells = collectionView.visibleCells
to
       let visisbleCells = fullyVisibleCells(collectionView)

I solved it with this. There is an issue with your current and fully visible item of collectionview.
Add this method in ASVideoPlayerController above pausePlayeVideosFor.
func fullyVisibleCells(_ inCollectionView: UICollectionView) -> [UICollectionViewCell] {

        var returnCells = [UICollectionViewCell]()

        var vCells = inCollectionView.visibleCells
        vCells = vCells.filter({ cell -> Bool in
            let cellRect = inCollectionView.convert(cell.frame, to: inCollectionView.superview)
            return inCollectionView.frame.contains(cellRect)
        })
        vCells.forEach({
            returnCells.append($0)
        })
        return returnCells
    }

Replace pausePlayeVideosFor to this
       func pausePlayeVideosFor(collectionView: UICollectionView, appEnteredFromBackground: Bool = false) {
        let visisbleCells = fullyVisibleCells(collectionView)
        var videoCellContainer: ASAutoPlayVideoLayerContainer?
        var maxHeight: CGFloat = 0.0

        for cellView in collectionView.visibleCells {
            guard let containerCell = cellView as? ASAutoPlayVideoLayerContainer,
                let videoCellURL = containerCell.videoURL else {
                    continue
            }
            let height = containerCell.visibleVideoHeight()
            if maxHeight < height {
                maxHeight = height
                videoCellContainer = containerCell
            }
            pauseRemoveLayer(layer: containerCell.videoLayer, url: videoCellURL, layerHeight: height)
        }

        guard let videoCell = visisbleCells.first as? ASAutoPlayVideoLayerContainer,
            let videoCellURL = videoCell.videoURL else {
                return
        }

        let minCellLayerHeight = videoCell.videoLayer.bounds.size.height * 0.5
        /**
         Visible video layer height should be at least more than max of predefined minimum height and
         cell's videolayer's 50% height to play video.
         */
        let minimumVideoLayerVisibleHeight = max(minCellLayerHeight, minimumLayerHeightToPlay)
        if maxHeight > minimumVideoLayerVisibleHeight {
            if appEnteredFromBackground {
                setupVideoFor(url: videoCellURL)
            }
            playVideo(withLayer: videoCell.videoLayer, url: videoCellURL)
        }
    }

Can You help to achieve my collection view with auto video support

try
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 1) {
                                    self.pausePlayeVideos()
                                }

after reloading the tableview / collectionview


translate(scalaPath, Some(javaOutputDir))

value of is not a member of object java.nio.file.Path

@wuyu8995861 - please make sure you are using Java 17


tests: nrf: posix: portability.posix.common.tls.newlib fails on nrf9160dk_nrf9160

Describe the bug
The test portability.posix.common.tls.newlib from tests/posix/common/ fails on nrf9160dk_nrf9160
To Reproduce
Steps to reproduce the behavior:

Have nrf9160dk connected
call ./scripts/twister --device-testing -T tests/posix/common/ -p nrf9160dk_nrf9160 --device-serial /dev/ttyACM0 -v -v
See error

Expected behavior
The test passes
Impact
Not clear
Logs and console output
The part containing FAIL status:
START - test_posix_realtime
POSIX clock set APIs
Assertion failed at WEST_TOPDIR/zephyr/tests/posix/common/src/clock.c:75: test_posix_realtime: (rts.tv_nsec not equal to mts.tv_nsec)
Nanoseconds not equal
FAIL - test_posix_realtime

Environment (please complete the following information):

OS: Ubuntu 18.04
Toolchain Zephyr SDK
Commit Version used: Zephyr v2.5.0-rc1-11-gf91e9f

will take a look

I think this test is unstable in fact. It eventually passes after some retries

I can't reproduce this @PerMac , are you sure you keep seeing the error?
I am on Zephyr v-2-5-0 -rc2

My suggestion is to close this ticket.

I think this test is unstable in fact. It eventually passes after some retries

It does not fail for me (but i only tested gnu arm embedded)

I still see this with  v-2-5-0 -rc2 Sometimes  some scenarios from this test pass, but most of the time at least one will fail and it is always an issue with realtime test case

I've run the reproducing command on  v2.5.0-rc2-8-gcf946d3365 five times and all tests pass on my rev 0.8.5 nrf9160dk_nrf9160.  Perhaps it's device-specific (bad crystal)?

I will close the ticket then. Might be as you are suggesting Peter, that it is a particular board issue (if it matters I have 0.9.0 on my desk).

@pabigot I reopened the issue as this test start failing again recently. It works with v2.5.0. The last time I was able to bisect with reverted logic to find that https://github.com/zephyrproject-rtos/zephyr/commit/544475d8a709f42926bd4059c3a1a4f78d023676 was the commit which (unnoticeably) fixed the issue previously

so is this a regression then?

so is this a regression then?

Possibly, or it was just chance that it passed in https://github.com/zephyrproject-rtos/zephyr/issues/31721#issuecomment-772591585.  It does fail for me today; I'll see if I can bisect.

Yes, I believe it is regression.
I tried to bisect where the issue is introduced but had no success. The test already was unstable which makes bisecting by hand a nightmare. However, I think we can narrow down the scope to verify:
The test passed in our internal CI for  zephyr-v2.5.0-268-g3fe33 (how after a 1 retry)
Then for zephyr-v2.5.0-441-g5de3f and later on it continues to fail, retries did not help.
Our CI is set to do 2 retries

I don't think so @pabigot Please check my above comments. I was able to find that the last time the test was actually fixed by https://github.com/zephyrproject-rtos/zephyr/commit/544475d8a709f42926bd4059c3a1a4f78d023676
It worked (with retires) up to (including) zephyr-v2.5.0-268-g3fe33
It cannot pass with retries since zephyr-v2.5.0-441-g5de3f

I hit a failure at zephyr-v2.5.0-108-g84e4e62c2db5 so I think the problem have have been reintroduced earlier.  I'll report back when I know more.

My bisect between v2.5.0-rc2-8-gcf946d3365 and zephyr-v2.5.0-693-gd19741f1ec located the failure at zephyr-v2.5.0-7-g91946ef21c.
zephyr-v2.5.0-6-gdd4322154067 passed ten (10) reps.
zephyr-v2.5.0-6-gdd4322154067 also passed thirty (30) reps (total 40)
zephyr-v2.5.0-7-g91946ef21c fails quickly.
zephyr-v2.5.0-268-g3fe33 failed at rep 8 so the problem was visible there, even if it wasn't revealed in local testing.
All this with SDK 0.12.3.
zephyr-v2.5.0-7-g91946ef21c (91946ef21c4a1653be862dbaeae90c55aeadd932) is not supposed to change any behavior, so this may be due to something as subtle as code placement and caching.
I've got a nice script that does the necessary testing for a generic twister failure at a particular commit.  It could probably be used with git bisect run to automate the narrowing down process.  I'll clean it up and get it posted somewhere.

This does not really seem to fail; I 've tested it with 2.6.0-RC1 and with current master.
Closing for now, @PerMac pls, reopen if you test this and it fails for nrf9160.

after patching nrf53 with #35455 I see these tests failing most of the time on nrf5340dk_nrf5340_cpuappns. Haven't seen it failed on not ns version yet. I created a separate issue for timer-related instability in tests #35509.


Add active workout helper functions

Add helper functions for timings with coroutines

Utils area added for active exercises, they just need to be exposed better in the active workout API.

All utils needed to be implemented in core are done in 46cd75301fb25441cce36ef17f47da04946ddbb5


Added Description for AdditionalFields Property of Remote Attribute

Fixes #4754

@Rabadash8820,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@Rabadash8820,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@Rabadash8820,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@Rabadash8820  nice work. I made some slight changes:

Removed future tense. We avoid future tense.
Shortened long sentence. My rewrite isn't great but we need to keep sentences short. The machine language translates can't do very well on long sentences.

@Rick-Anderson Any reason for the rapid closing/re-opening earlier?

Also, out of curiosity, is there an error with the syntax highlighting in the published page?  All of the controller action method code in the Remote validation section is just white text, but the model properties still look correct.

The doc build engine was not running. Sometimes closing/opening fixes that. Where exactly is highlighting missing?

Highlighting is missing on the VerifyEmail and VerifyName snippets in the
Remote Validation section.
On Nov 11, 2017 2:08 AM, "Rick Anderson"<EMAIL_ADDRESS>wrote:

The doc build engine was not running. Sometimes closing/opening fixes
that. Where exactly is highlighting missing?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/aspnet/Docs/pull/4768#issuecomment-343646016, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AIAAsS000abjSwNig3QAfoQPuwpXBaSgks5s1UfPgaJpZM4QaMTP
.

What's the offending markup?

@Rick-Anderson I think this new PR (#4781) will fix it.


Add buffer to scheduler to deal with multiple inputs

There is still a rarely occuring synchronization bug which will be solved later in another PR.


feat(chart): add proxy config override template

This adds a template for proxy-config Secret which is meant
to replace the proxy-config secret in the osm subchart. Because
the default value of .Values.fluentBit.enableProxySupport in the
osm subchart is false AND we do not change this value as part of the
parent chart, we can create a new proxy-config Secret in the parent
chart if the azureHTTPProxy and azureHTTPSProxy values are passed in
at install time.
To test these changes, run:
$ helm template charts/osm-arc > output1.yaml
In output1.yaml, you should not find a Secret called proxy-config. Neither chart created a Secret called proxy-config.
To see the proxy-config Secret, run:
$ helm template charts/osm-arc --set "azureHTTPProxy=something1,azureHTTPSProxy=something2" > output2.yaml
In output2.yaml, you should see a Secret called proxy-config. This was created by the parent chart because the two values related to proxy settings were passed in.
Note: these are not the final value names. Once those are finalized by the azure arc extension team, we can update them and the configuration in this chart.
Signed-off-by: Michelle Noorali<EMAIL_ADDRESS>

/azp run pr-e2e-arc

/azp run pr-e2e-arc

will add some tests for this

will add some tests for this

From the proxy email thread, the values we need to expose should look like this:
Azure:

  proxySettings:

    isProxyEnabled: true/false

    httpProxy: ""

    httpsProxy: ""

    noProxy: ""

    proxyCert: ""

From the proxy email thread, the values we need to expose should look like this:
Azure:

  proxySettings:

    isProxyEnabled: true/false

    httpProxy: ""

    httpsProxy: ""

    noProxy: ""

    proxyCert: ""

We'd need to use a helm's post rendering functionality to update these lines: https://github.com/openservicemesh/osm/blob/b7337ab144d0126fa44312bc3001f563183ffb76/charts/osm/templates/osm-deployment.yaml#L89-L100

We'd need to use a helm's post rendering functionality to update these lines: https://github.com/openservicemesh/osm/blob/b7337ab144d0126fa44312bc3001f563183ffb76/charts/osm/templates/osm-deployment.yaml#L89-L100

If we create the values under the Azure key in the oss chart, then we can use helm's import/export functionality to remap the values isProxyEnabled,httpProxy, httpsProxy under the Azure key in the parent chart. I'll open a PR to show going this route as well.

If we create the values under the Azure key in the oss chart, then we can use helm's import/export functionality to remap the values isProxyEnabled,httpProxy, httpsProxy under the Azure key in the parent chart. I'll open a PR to show going this route as well.

Closing in favor of #54

Closing in favor of #54


Add a sokol microui example program.

When I try to build the sample from the build directory via:
odin run ../examples/microui --debug

...I get:
/Users/floh/projects/sokol-odin/examples/microui/main.odin(9:1) Syntax Error: Path does not exist: vendor:microui

Odin was installed via brew install odin --HEAD and version is:
odin version dev-2023-02:16262800

...is there a step I'm missing to install the vendor packages?

Apart from the above, could you add the new sample to the GH Action script? (that way compilation is tested on the various platforms):
See the end of file here:
https://github.com/floooh/sokol-odin/blob/main/.github/workflows/main.yml

Sure, I can update that.
vendor is packaged with the compiler so it should be there and able to find it. Reading through here https://odin-lang.org/docs/install/ and from searching discord it may be that it is relying on locating vendor relative to the compiler executable. So I think you either need to make a softlink to odin.exe or put the Odin compiler directory in your path.

Alternatively, it looks like an ODIN_ROOT environment variable can be set to specify where the core and vendor collections live.

Aha ok, on Mac homebrew is creating a link to the actual Odin executable, and that link is in the path. Maybe this confuses the compiler... sucks though that it doesn't work out of the box... I guess that would need to be fixed in Odin to first follow links before trying to resolve a relative path.
...but it's still strange that I don't see any traces of the vendor packages in the install directory...
...e.g. at the top level I have 3 directories:
bin                  libexec              share

..under libexex there's two directories: core and shared (and shared is empty).
core looks like it only has stdlib stuff...
...maybe there's something wrong with the homebrew formula?

...e.g. here's the tree output of the Odin install dir (when installed with homebrew) for reference:
odin_install_dir.txt

Yeah it should have a vendor directory. I don't have macOS to test anything. Seems like another discord user ran into the same issue and made a fork of that homebrew: https://github.com/esnunes/homebrew-tap/blob/main/Formula/odin.rb#L31

Hmm ok... I think it's better to not put any samples in for now which use vendor packages... TBH I looked at the Mac installation instructions on the Odin landing page, realized that this involves installing llvm and building from source, and then checked if there's a homebrew package instead :D
Would be nice if Odin had ready-made downloads like this:
https://ziglang.org/download/

Alright, I'll keep it on a fork until a future date when Odin is at 1.0 and has fully-fledged releases.
There are currently efforts to move off of LLVM which should solve these issues.
This is worth a listen if you are interested: https://www.youtube.com/watch?v=g1qF9LZOoFE


Cluster Connect Error

What happened?
I'm seeing this while connecting a cluster:
[fatal]  initialize core: graphql: init service namespace: helm init: Error in command: exit status 1 => $HELM_HOME has been configured at /root/.helm.
Error: error installing: the server could not find the requested resource

Kubernetes Cluster:

Cloud Provider: self-hosted
Kubernetes Version: Latest as of today.

/kind bug

@iMerica thanks for opening this issue! Are you using kubernetes v1.16 by any chance? I think the extensions/v1beta1 was disabled there and helm cannot install tiller anymore (see https://github.com/helm/helm/issues/6374)


Document OPENWISP_ADMIN_SHOW_USERLINKS_BLOCK setting

Add documentation for OPENWISP_ADMIN_SHOW_USERLINKS_BLOCK settings in README.rst simialar to what has been done for other settings.
`
@nemesisdesign please add corresponding labels : good first issue GCI

@TheOneAboveAllTitan :ok: thanks


Create new lambda to receive feedback

Either receive feedback via form and the lambda will forward it as an email to the admins, or configure SES to receive emails and forward them.

I think it is better to receive emails so that we know the sender. The new lambda should handle receiving emails on SES and send a new email to a preconfigured address with the email subject/body and sender information.


e2e: Monitoring operator has one pod since OCP 4.13

Starting with OpenShift 4.13, monitoring operator will have 1 pod. We used to check for 2/2.
<failure message="Step stdout matches ".*cluster-monitoring-operator-\w+-\w+\ *2/2\ *Running.*": output did not match. Expected: '.*cluster-monitoring-operator-\w+-\w+\ *2/2\ *Running.*', Actual: 'NAME READY STATUS RESTARTS AGE alertmanager-main-0 6/6 Running 1 (3m58s ago) 4m5s cluster-monitoring-operator-78b755f457-6k4df 1/1 Running 0 4m37s kube-state-metrics-58957c56bc-v268k 3/3 Running 0 4m11s node-exporter-4rx4t 2/2 Running 0 4m10s openshift-state-metrics-5449996978-p585x 3/3 Running 0 4m11s prometheus-adapter-7f65dfd454-jrmqt 1/1 Running 0 4m8s prometheus-k8s-0 6/6 Running 0 4m1s prometheus-operator-6c5b488ff4-vgq9w 2/2 Running 0 4m20s prometheus-operator-admission-webhook-c8c577b57-bzww2 1/1 Running 0 4m28s telemeter-client-dcdcf886d-2hb9b 3/3 Running 0 4m5s thanos-querier-57c756949c-pz82d 6/6 Running 0 4m3s'"/>

Should only be merged when we start using 4.13.x bundles.

/hold

/home

Why? For use with OCP 4.13 only... if so, please specify this reason

/unhold

@jsliacan Can you rebase it once #3680 merge so that this test is also get verified before we merge this PR.

As per https://prow.ci.openshift.org/view/gs/origin-ci-test/pr-logs/pull/crc-org_crc/3680/pull-ci-crc-org-crc-main-e2e-crc/1662020038300798976 looks like CI only failing because of this, so I am merging this one


[libde265] Updated to v1.0.8

Fix #14487
Update libde265 to the latest version 1.0.8
Note: No feature need to test

Thanks @JonLiu1993 , again :)


Customize validation error messages

Description
When using the form validation, the integrated error messages are almost :) correct, but not very helpful for a user.
Steps to reproduce
For example:

adding a text_input
set Min Length to {{1}}
click submit
The error message is "Must be greater than 1" which is not correct at all (i should be greater then 0 if min length is 1) and i would prefer a message like "Must not be empty.

ILLA Builder Version
2.8.4
Browser
No response
Operating System

[ ] macOS
[ ] Windows
[ ] Linux

Additional Information
No response

Thanks for your feedback. You can customize the message. For example:


URL path is removed

I am using nginx to proxy connection to qdrant node via /qdrant path.
The qdrant library seems to remove the path from url:
  new QdrantClient({
    url: "http://{ip}:6333/qdrant",
    apiKey: process.env.QDRANT_API_KEY,
  })

this returns 404. As you can see, the /qdrant path is removed
  url: 'http://{ip}:6333/collections/ah-00000000-b9b5-findings',
  status: 404,
  statusText: 'Not Found',
  data: '\r\n' +
    '<title>404 Not Found</title>\r\n' +
    '\r\n' +
    '
404 Not Found
\r\n' +
    '
nginx/1.25.4\r\n' +
    '\r\n' +
    '\r\n'
}

If I use the prefix variable, then the request is successful
  new QdrantClient({
    url: "http://{ip}:6333",
    prefix: "/qdrant",
    apiKey: process.env.QDRANT_API_KEY,
  })

qdrant.js: 1.7.0

Another issue problem with this kind of setup is that qdrant dashboard doesn't work. This is because the dashboard queries embeddings from localhost:6333. Without the relative /qdrant path.
note: I am not sysadmin expert so my setup might not be the standard one

there ia a similar open issue:
https://github.com/qdrant/qdrant-web-ui/issues/94

Hey @fedecompa,
Actually this isn't the exact same issue as the other one, the main repo issue does use some path but just not the full dashboard paths, however this issue for collections page doesn't include any subpaths as all. It attempts to access the direct host host/collections, instead of the full FQDN.


Video and Audio calls not working

Operating system: Windows 10 x64
Messenger for Desktop version: 2.0.4-beta

When disabled "Open link in Browser" option clicking on the one of both call buttons opens new blank window and nothing happens.
With enabled "Open link in Browser" option, clicking on call buttons opens Windows "Open With" dialogue

Answering on Incoming Calls also works with that logic.

i have same problem.
Win10 Enterprise 2016 LTSB x64

Same problem here. Windows 10 Education 64-bit.
Messenger for Desktop 2.0.4-beta
I'd like to note this problem is present since I reinstalled my OS.
It was working fine before on the same version of Messenger for Desktop on W10 Enterprise 64-bit.

Fixed in 2.0.5, will be released soon

Thanks, waiting for update 👍


Add DemoGPT

DemoGPT enables you to create quick demos by just using prompts.

Thank you. The link has been added in the new version.


Second pass on hacking.rst

I applied the feedback we got on the first iteration of the Hacking documentation.
@Pike, @zbraniecki — r?

Thanks to you both for the comments. I addressed all feedback.  Pike already lgtm'ed this on IRC. @zbraniecki, would you like to give it another read?

r+


CLI is not showing an update banner

Describe the bug
See this issue: https://github.com/netlify/next-runtime/issues/1996
I was using a old CLI version without getting the update banner (therefore I assumed I'm on the latest version and it was crashing)
Steps to reproduce
hard to reproduce. I thinnk just installing an outdated version and run ntl dev
Configuration
No response
Environment
netlify-cli
System:
OS: macOS 13.2.1
CPU: (10) arm64 Apple M1 Max
Memory: 11.66 GB / 64.00 GB
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 18.14.2 - ~/.nvm/versions/node/v18.14.2/bin/node
Yarn: 1.22.19 - ~/.nvm/versions/node/v18.14.2/bin/yarn
npm: 9.5.0 - ~/.nvm/versions/node/v18.14.2/bin/npm
npmGlobalPackages:
netlify-cli: 13.1.1

We only check every 12 hours, but I assume the new version was older than 12 hours?


EnterMessage now triggered by users who are /invited

See https://github.com/RocketChat/Rocket.Chat/pull/5158
It seems an oversight that only users who actively join a channel (messagetype == 'uj') get an EnterMessage. This change, in conjunction with the PR above, means /inviting a user also triggers an EnterMessage.

Ah yes we forgot about the ua message type!  Thanks I'll get this merged

We will change the MSG object, so this PR won't be necessary.

Closing this PR


Add ability to define partitions in ignition file.

On branch main
Your branch is up to date with 'origin/main'.
Changes to be committed:
modified:   roles/patch_host_config/tasks/main.yml
new file:   roles/patch_host_config/templates/patch-worker-partition.j2

Makes sense!
Will try to get the template corrected so that user is able to decide on the number of partition if required or not.
Making this work with an older version is highly unlikely since 3.1.0 & below ignition spec does not have the "resize" parameter for making this work.
Need to further discuss this with crucible team before making another commit.

Because the PR is still a work in progress, I converted it to a draft.
Feel free to mark it as "ready for review" once it's finished. :)

Looking great!
Needs the commits squashing, and since the behaviour is only v4.8 or higher it would be great to have a version check for this. I suggest adding a task to inventory validation to fail if the version is too low and the partition data is provided.

Please address the issue mentioned above.

Validations have been added.


Migrating contain matcher

Before submitting this PR, please make sure:

[x] My code follows the style guidelines of this project
[ ] Your code builds clean without any errors or warnings
[x] You are using approved terminology
[x] You have added unit tests

Type of change

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

'test_method_chaining' get failed, contain matcher definition should be edit.

Seems like we can also remove expycted.internals.utils.assertion.

right, will be remove.

there is still using of this 'assertion' in  expycted.internals.filesystem. after I will edit this code Its could be remove.

LGTM


OpenGraph meta tags are not rendered and when rendered, URLs are wrong

Describe the bug
Open Graph meta tags are not rendered whenever you access the site but rather it seems it is postrendered somehow (sorry but I'm not familiar with NextJS, etc).
Additionally, once rendered, the URLs of the meta tags are pointing to localhost:3000
How to Reproduce

curl --stderr - https://www.asyncapi.com | grep "og\|twitter" looks the meta tags into the first rendered version. The output is empty.
To see the final rendered meta tags of the site, go to https://www.asyncapi.com, open a developer tools bar and inspect the meta tags.

You can additionally test the Open Graph metas via https://www.opengraph.xyz/url/https%3A%2F%2Fwww.asyncapi.com
Expected behavior

Open Graph meta tags are rendered in the first render and not postponed. Meaning curl --stderr - https://www.asyncapi.com | grep "og|twitter"` should return those meta tags.
The URL of those meta tags should point to the right URL.

I am working on it

I found that this bug was introduced in this commit
If we remove the <I18nProvider> from the _app.js, the og tags becomes visible again
I think the cause of it is, that we have implemented nexti18next library incorrectly.

I would like to work on this

I would like to work on this

They don't assign issues here, you can just start working and open a PR

Happy to know you are gonna work on this anyway @sambhavgupta0705 👍

/bounty

I like to be assigned to this bounty issue and start working.!
I have previous experience working with the og meta tags specifically and I believe I am suitable to do this job and ready to tackle the challenge.
Thanks.

@bupd
Adding
https://github.com/search?q=is%3Apr+is%3Amerged+author%3Abupd+-org%3Abupd
to your comment would make the decision much easier.

Hello @aeworxet,
Could you please assign the #2639 to me? I'm eager to dedicate my full attention to resolving it.
Is there anything else to do before this.?
Thank you!

@bupd, I cannot assign the issue to you because it is Akshat Nema who submitted it for the Bounty Program, so it is him who is responsible for it (and thus is the point of contact about it.)
@akshatnema, can you please take a look at @bupd's contributions and make a decision?

@aeworxet I would like to work on this during the bounty program

@akshatnema, and at @sambhavgupta0705's 45 merged PRs throughout the AsyncAPI Organization, except for the fact that he is an AsyncAPI Maintainer thus could have been assigned immediately after the addition of the label bounty.

@aeworxet Assigned @sambhavgupta0705  for this issue.

thus could have been assigned immediately after the addition of the label bounty.

Sure, I'll take care of this next time.

Bounty Issue's Timeline

Complexity Level
Assignment date (by GitHub)
Start date (by BP rules)
End date (by BP rules)
Draft PR submission
Final PR submission
Final PR merge

Medium
2024-03-21
2024-04-01
2024-05-10
2024-04-12
2024-04-26
2024-05-10

Please note that the dates given represent deadlines, not specific dates, so if the goal is reached sooner, it's better.

Ok that's great to get to know about How this works.
Maintainers > Contributors > Newbies. as mentioned in the doc.
Looking forward put my time and effort to the async api.
Thanks.

@bupd
You can take a look at other Bounty Issues for 2024-Q2:
https://github.com/orgs/asyncapi/projects/36/views/4?sliceBy[value]=bounty%2F2024-Q2

@sambhavgupta0705 The Bounty program has been started for this quarter. Please make sure that you share your updates on this issue every week.

Yes @akshatnema I was just busy with my exams
Will do it by tomorrow
Sorry for the delay

If we remove the  from the _app.js, the og tags becomes visible again
I think the cause of it is, that we have implemented nexti18next library incorrectly.

@JeelRajodiya can you please explain how you removed it as I am unable to see it after remove it the tags also

If we remove the  from the _app.js, the og tags becomes visible again
I think the cause of it is, that we have implemented nexti18next library incorrectly.

@JeelRajodiya can you please explain how you removed it as I am unable to see it after remove it the tags also

Sure! please refer to the video below to see how removing the <I18nProvider> tag solves the issue.
https://github.com/asyncapi/website/assets/63534268/46787f9d-b0ac-4dc5-95d9-dc3814857fa1
Possible solution
Removing the <I18nProvider> tag is not the solution, as we need i18n for language translations.
You can refer to next-i18next project setup guide, compare it with asyncAPI codebase and check if there is anything wrong with the configuration in asyncAPI codebase.
One thing that differs in next-i18next setup and asyncAPI codebase is that there is no serverSideTranslations setup in asyncAPI codebase. You can start with configuring serverSideTranslations I believe it can resolve the issue. If it does not, you can follow the above mentioned procedure of comparing the configuration of asyncAPI and next-i18next.

stderr command consol log the errors I think so it is good if it doesn't

stderr command consol log the errors I think so it is good if it doesn't

As far as I understood, if the command returns empty output means there are no meta tags, and if the command returns something means the meta tags are present.
I am not sure about it. You might be right, I might be wrong.

Got it

We can't use next-18next instead of that we can only use react-i18next and i18next

currently I am investigating it and will post the an update by end of this week

@sambhavgupta0705, please provide an update to the PR.

Currently I am having my exams so I won't be able to devote that much time till 13th may so can the deadline of this issue be increased by 2-3 weeks
For the update : We have identified the root cause of the issue and working on its solution

Upon request of the Bounty Program Participant (@sambhavgupta0705), all remaining target dates of the Bounty Issue's Timeline are extended by three calendar weeks.
Bounty Issue's Timeline Extended

Complexity Level
Assignment date (by GitHub)
Start date (by BP rules)
End date (by BP rules)
Draft PR submission
Final PR submission
Final PR merge

Medium
2024-03-21
2024-04-01
2024-05-31
2024-04-12
2024-04-26
2024-05-31

Please note that the dates given represent deadlines, not specific dates, so if the goal is reached sooner, it's better.
Keep in mind the responsibility for violations of the Timeline.

@user, please provide an update to the PR.

@sambhavgupta0705, please provide an update to the PR.

Requesting an extension of 2 weeks more as I am busy with my intern project for now

Upon request of the Bounty Program Participant (@sambhavgupta0705), all remaining target dates of the Bounty Issue's Timeline are extended by two calendar weeks.
Bounty Issue's Timeline Extended

Complexity Level
Assignment date (by GitHub)
Start date (by BP rules)
End date (by BP rules)
Draft PR submission
Final PR submission
Final PR merge

Medium
2024-03-21
2024-04-01
2024-06-14
2024-04-12
2024-05-31
2024-06-14

Please note that the dates given represent deadlines, not specific dates, so if the goal is reached sooner, it's better.
Keep in mind the responsibility for violations of the Timeline.

Taking into account the comments in the PR and that removal of internationalization is not an option, should the reconfiguration of the i18n library be considered out of scope, or should the Bounty Issue be reclassified to Advanced, its Timeline extended, and it pushed through until completion?
@derberg @akshatnema @sambhavgupta0705 @anshgoyalevil

@sambhavgupta0705 If we extend this issue to Advanced, will you be able to reconfigure the i18n library in the given timeline?

Well it is a hit and trial issue
Don't know the exact solution as it is an error in the i18n library only
I can try working on this one but don't know the exact solution to solve this

@sambhavgupta0705 Communicate with @aeworxet about new guidelines, if the issue is extended for Advanced, and then make a decision on whether you are willing to take up or not.
Also @sambhavgupta0705, I would prefer to think of a way before taking a Bounty issue, as this is not a mentorship program. So you should be clear with your ways.

Since there are clearly difficulties with this Bounty Issue, I would propose taking an incremental approach: to consider reconfiguration of the i18n library exceeding the scope of this Bounty Issue and to close it as completed, and I will continue working on this issue as on a usual GitHub issue driving it to full completion.

I presume the error is caused by improper configuration/implementation of I18nextProvider of the react-i18next.
Next.js has its own built-in support for internationalized (i18n) routing since v10.0.0 (website uses Next.js v14.1.1)
The simplest guess is that these two functionalities are conflicting and what would solve the issue is migration of the website to internal built-in Next.js' i18n support, which is logical because react-i18next is a legacy from the times when website was a plain React SPA and Next.js should be using built-in mechanisms whenever possible.
@akshatnema Do you have thoughts on this subject?

@aeworxet I think @anshgoyalevil already explored that part in his Mentorship project last year, and there were some configuration errors. Also, we can't have built-in support of Next js inside our website, because this will lead us to have different page components for different languages. We actually decided to go with global variable and locales based i18n configuration, where this content will be rendered via useTranslation Hook and we will then have fallback mechanism for each language as well. So, I think instead of using built in configuration, we should think to use https://www.npmjs.com/package/next-i18next in place of current one. Moreover, we can think of using ssr via Netlify functions using next-on-netlify package.

@sambhavgupta0705, if this Bounty Issue is reclassified (upgraded) to Advanced, would you take it and will two months be enough to implement the change @akshatnema is suggesting above?

Yeah it will be enough but @sambhavgupta0705 do you have enough bandwidth to resolve this in 2 months?

@sambhavgupta0705, please respond to @akshatnema's very doable proposal.

@aeworxet I will be working on this issue
Sorry for this much of delay

@sambhavgupta0705
Please repeat your comment about this Bounty Issue, because it was received by email but is not visible in the web UI.

@aeworxet I will be working on this issue

Sorry for the delay
I am free from next week so I will be back contributing to asyncapi

Upon the joint decision of two AsyncAPI Maintainers, one of whom is responsible for the resolution of this Bounty Issue from the AsyncAPI's side (@akshatnema) and the second one is the Bounty Program Participant (@sambhavgupta0705), this Bounty Issue is reclassified (upgraded) to Advanced and its Timeline is extended by thirteen weeks.
Bounty Issue has been Reclassified and its Timeline Changed

Complexity Level
Assignment Date (by GitHub)
Start Date (by BP Rules)
End Date (by BP Rules)
Draft PR Submission
Final PR Merge Start
Final PR Merge End

Advanced
2024-03-21
2024-04-01
2024-08-23
2024-07-19
2024-08-09
2024-08-23

Please note that the dates given represent deadlines, not specific dates, so if the goal is reached sooner, it's better.
Keep in mind the responsibility for violations of the Timeline.

@sambhavgupta0705, please provide the Draft PR.

yes @aeworxet submitting it

@sambhavgupta0705, please provide an update to the PR.

@akshatnema had scheduled a call with @derberg on 2024-08-27 to clarify some final details on this Bounty Issue before merging https://github.com/asyncapi/website/pull/3111.

@akshatnema
Please confirm that everything is working as expected after the merge of https://github.com/asyncapi/website/pull/3111 and this Bounty Issue is technically resolved.

Hey @aeworxet this issue is now resolved ✅

Bounty Issue Completed 🎉
@sambhavgupta0705, please go to the AsyncAPI page on Open Collective and submit an invoice for USD 400.00 with the expense title Bounty website#2639, tag bounty, and full URL of this Bounty Issue in the description.


Fixing UserIdentity update (https://github.com/cloudbees/zendesk-java…

Please review my pull request for updating user identity.
I've tested it locally with updating email identity value and it works correctly.

@mspavkovic thank you for the contribution. I will try to review your change as soon as I can.


initialViewBox as object is not working

In (line 317)[https://github.com/DanielHoffmann/jquery-svg-pan-zoom/blob/c313/src/jquery.svg.pan.zoom.coffee#L317] the vb variable is never null

And what exactly does (line 310)[https://github.com/DanielHoffmann/jquery-svg-pan-zoom/blob/c313/src/jquery.svg.pan.zoom.coffee#L310] mean?

@tomekwi hm I don't remember exactly, I just found this bug, its being some time since I last played with this. Sorry I did not had the opportunity to improve this plugin this week because I had my wisdom teeth removed, I need to do some major cleanups to the code and merge your changes (and I can't just merge without testing with my own project first)

@DanielHoffmann fair enough. To be honest, I'm also quite tied up at the moment. The project I'm working on needs to speed up, and it's possible that I won't have time to implement panning and zooming just yet.
All PRs I've submitted are ready to merge.


snakemake does not find mamba or conda

When I run snakemake --use-conda -k -j 8 I get:
Error: mamba package manager is not available. .....
and when I run
snakemake --use-conda -k -j 8 --conda-frontend conda
I get:
CreateCondaEnvironmentException:
The 'conda' command is not available in the shell /usr/bin/bash that will be used by Snakemake. You have to ensure that it is in your PATH, e.g., first activating the conda base environment with `conda activate base`.
outside of snakemake, mamba and conda work just fine, so they are definitely available. Snakemake for some reason does not find them?

I tried with multiple versions of snakemake (6.8.1, 6.7 and 6.3)

What shell are you using? When you run echo $0, does it say /usr/bin/bash?

When I run echo $0 outside of Snakemake I get
-bash
conda and mamba are available in that shell, but I'm not sure how I can find out whether they are available in /usr/bin/bash, or how I can install them in that shell instead of the main shell, or how I can make sure they are also available in /usr/bin/bash?

hmm, I'm not sure then...
You could maybe try this:

Run and enter the bash shell at \usr\bin\bash:\usr\bin\bash

Check if conda is in your $PATH:which conda

and/orecho "$PATH"

The latter should show something like miniconda3/bin or anaconda3/bin among the list

I think this issue is similar to issue #1009 , even though the original post there was about cluster jobs and I understand this issue here to be about usage on a regular machine, right? Just wanted to cross-reference, so that these issues are aware of each other...

I had a similar issue, that seemed to be related to this mamba issue. It seems to work ok if I run deactivate to the base environment and then just run writing out the full path to the snakemake command
~/mambaforge-pypy3/envs/snakemake/bin/snakemake ...

I am having the same issue. I have installed the latest miniforge3 and snakemake 8.0.1.
Running $ snakemake --slurm --jobs 100 --use-conda produces a similar error:
Building DAG of jobs...
/usr/bin/bash: conda: command not found
Traceback (most recent call last):
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/cli.py", line 1970, in args_to_api
dag_api.execute_workflow(
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/api.py", line 564, in execute_workflow
workflow.execute(
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/workflow.py", line 1093, in execute
self.dag.create_conda_envs()
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/dag.py", line 405, in create_conda_envs
env.create(self.workflow.dryrun)
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/deployment/conda.py", line 393, in create
pin_file = self.pin_file
^^^^^^^^^^^^^
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake_interface_common/utils.py", line 30, in get
value = self.method(instance)
^^^^^^^^^^^^^^^^^^^^^
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/deployment/conda.py", line 103, in pin_file
f".{self.conda.platform}.pin.txt"
^^^^^^^^^^
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake_interface_common/utils.py", line 30, in get
value = self.method(instance)
^^^^^^^^^^^^^^^^^^^^^
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/deployment/conda.py", line 96, in conda
return Conda(
^^^^^^
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/deployment/conda.py", line 653, in init
shell.check_output(self._get_cmd("conda info --json"), text=True)
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/site-packages/snakemake/shell.py", line 61, in check_output
return sp.check_output(cmd, shell=True, executable=executable, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/subprocess.py", line 466, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/hpc/group/peterallen/mki3/sw/miniforge3/envs/smk/lib/python3.12/subprocess.py", line 571, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command 'conda info --json' returned non-zero exit status 127.

Have you double-checked your conda installation as suggested above:
https://github.com/snakemake/snakemake/issues/1204#issuecomment-933732315

I also had that problem, but in the end found out the solution @alyenkin also proposes was a good workaround.


issue: #141 styling changes

Completes issue #141  .
Changes in this pull request:

made github and email icons larger
changed search "call to action" text according to comp

plz include screenshots in the future 🙇


Transparent window backgrounds?

Is it possible to have transparent window backgrounds, such that you can see through to the desktop behind it? I tried setting the theme's clearColor to both transparent and rgbaHex "#000000" 0, but both resulted in a fully opaque window background.
Is there something I'm missing, or is this not possible?

Transparent window backgrounds are, in my experience at least, rather frustrating to work with.
I'm new to the project, but Monomer appears to use SDL under the hood. SDL does support transparent windows [1], but I'm not sure if this is exposed to Monomer. You could try checking the haskell SDL library documentation; there might be something useful there!
It's also worth considering that transparent window backgrounds rely on Windows' Layered Windows. I am unaware if this is possible at all on Linux or Macos systems.


[Website] Expressive modal

There's no planned changes to expressive modal in v2. There is an opportunity to answer key questions – the page itself has very little content or guidance.
v1 guidance updates:

[ ] Adopters have asked in the past around centering the modal, we should provide more context here.
[ ] Should clarify that the modal becomes scrollable if content does not fit into container.
[ ] Should clarify that the expressive modal comes with a close button that removes the overlay. Clicking into the dark area dismisses the modal.
[ ] The above can probably be adapted from Carbon core's Modal page.

v1 media update:

[ ] Repurpose image in lightbox media viewer page to better reflect nesting content.

V2

[ ] Remove use case image for large variant (does not reflect accurate usage

Future enhancements:

[ ] The examples used only show a blank background below the dark area of the overlay. We should provide more in-context shots so it's clear how the modal appears over page content.
[ ] The image assets do not convey the flexibility of expressive modal in the best way. We should consider new media assets or an animated GIF to help illustrate that content can be fed into the overlay in multiple ways.

[ ] Use the Component template for release for content updates


Constructed transaction does not parse correctly

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/8779523-constructed-transaction-does-not-parse-correctly?utm_campaign=plugin&utm_content=tracker%2F494307&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F494307&utm_medium=issues&utm_source=github).

Sending dust to the destination helps?

see https://github.com/CounterpartyXCP/counterpartyd/pull/725

Looking for an elegant fix to this.

The problem commit?
https://github.com/CounterpartyXCP/counterpartyd/commit/6e0bf7592d749728ce5e9e66691c4e6e73c19ae6

yep! the output used for the transaction can belongs to an 1 of X address that contains the monosig source address.

Solved.


Basket. Filters. Operation status filter works wrong.

Description

Valid filter is shown Unavailable operations
Invalid filter remove all operations

Steps to Reproduce

Add to basket: valid, failed and unavailable operations
Apply appropriate filters one by one

Expected Behavior
When Valid filter apply - only Valid operations is shown
When Failed filter apply - only Failed operations is shown
When Invalid filter apply - only Invalid operations is shown
Actual Behavior
When Valid filter apply - Valid and Unavailable operations is shown ❌
When Failed filter apply - only Failed operations is shown ✅
When Invalid filter apply - no operations is shown ❌
https://github.com/user-attachments/assets/f105dbf2-2b9d-42c1-8caf-c9edca734375
Additional info
Why filter is called Invalid? looks like it's should be Unavailable
Environment
https://github.com/novasamatech/nova-spektr/commit/2cce1f29f01abd638e141f2738010cd4967c63a7

Status verification: ✅


Dependencies in Gulp4

Hi,

This tracker is for bug reports only.

the "contributing guidelines" welcome ideas - so this may be considered rather an idea or a request for comments than a real "bug report". Nevertheless, current related behaviour appears somewhat "buggy"...
Well, apparently Gulp 4 doesn't resolve dependencies. With this gulpfile:
const gulp = require('gulp')

gulp.task('a', cb => {
  console.log('a')
  cb()
})

gulp.task('b', cb => {
  console.log('b')
  cb()
})

gulp.task('c', gulp.series('a', 'b', cb => {
  console.log('c')
  cb()
}))

gulp.task('d', gulp.series('a', 'b', cb => {
  console.log('d')
  cb()
}))

gulp.task('e', gulp.series('c', 'd', cb => {
  console.log('e')
  cb()
}))

'a' and 'b' would be run twice for task 'e'.
It had been recommended to make use of async-once (https://github.com/gulpjs/gulp/issues/2142) - otoh, this is called an "anti-pattern" in the docs https://gulpjs.org/recipes/running-tasks-in-series.html
Even if I would use async-once, I would need to resolve all those dependencies from Gulp3 (of which there may be many) manually. So, apart from the watch task mentioned in https://github.com/gulpjs/gulp/issues/2142, async-once is not a solution. Creating subtasks (like 'c:a' and 'd:a') is neither - it just doesn't fit the general case (and would be just another way of manually resolving dependencies anyway).
The usual advice when going from Gulp3 to 4 is to replace dependencies by gulp.series or gulp.parallel, but this will not work sufficiently for meta tasks like 'e', when 'c' and 'd' are needed as well. Whether or not 'a' and 'b' have side effects.
To be honest, I wonder what Gulp4 is good for, since the main task of a building system - resolving of dependencies - needs to be done by the users themselves.
Do you consider reducing tasks to those necessary?
Well, yes, in theory I could stick to Gulp3 - if it wasn't stripping BOMs of UTF8 files. Yes, I know there's a "work-around" like gulp-bom. But it's silly to reinsert BOMs which had been stripped pointlessly beforehand - especially when files are not known. They shouldn't be modified in the first place.
But, hey,  that's another sad story...

@jeffrson please don't link unofficial documentation into our issue tracker.
The situation you describe is by design.  Implicit dependency graphs were something people felt were confusing about gulp 3, so they were removed in favor of explicit chains (it also made gulp more functional, in the process).  I'm sorry that it was a feature that you heavily relied on.
I personally wrote async-once as a solution for people that didn't have time to rewrite their gulpfiles to the new pattern.  While it's not the recommended pattern, it's also not an anti-pattern.  Different pieces can solve different needs.
We have official documentation now and you can find some more details at https://gulpjs.com/docs/en/getting-started/creating-tasks and https://gulpjs.com/docs/en/api/parallel#avoid-duplicating-tasks

As for your BOM use-case, you can always pull the new vinyl-fs into a gulp3 project.  It still returns a stream so everything works together - just be aware of the breaking changes you might encounter, so please read the changelog.


PHPLIB-1227 Use void return types for operations without meaningful result document

Fix PHPLIB-1227
This introduces major breaking changes that we did not deprecate.

Rebased. Ready for review @jmikola @alcaeus


Errors from third party packages (e.g. numpy)

Hello! First of all I'd like to express appreciation for the project and your time. MyPy type checking is a requirement for our team and we're hoping to retain all of the Bazel optimizations while using it.
I'm trying to onboard and ran into 2 problems (I'll create another issue to track the other problem). When importing numpy==1.26.4, I got lots of errors. Here's a small subset:
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/__init__.pyi:4242: error: Signature of "partition" incompatible with supertype "ndarray"  [override]
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/__init__.pyi:4242: note:      Superclass:
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/__init__.pyi:4242: note:          def partition(self, kth: _SupportsArray[dtype[bool_ | integer[Any]]] | _NestedSequence[_SupportsArray[dtype[bool_ | integer[Any]]]] | bool | int | _NestedSequence[bool | int], axis: SupportsIndex = ..., kind: Literal['introselect'] = ..., order: str | Sequence[str] | None = ...) -> None
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/__init__.pyi:4242: note:      Subclass:
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/__init__.pyi:4242: note:          @overload
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/__init__.pyi:4242: note:          def partition(self, sep: _SupportsArray[dtype[str_]] | _NestedSequence[_SupportsArray[dtype[str_]]] | str | _NestedSequence[str]) -> chararray[Any, dtype[str_]]
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/__init__.pyi:4242: note:          @overload
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/__init__.pyi:4242: note:          def partition(self, sep: _SupportsArray[dtype[bytes_]] | _NestedSequence[_SupportsArray[dtype[bytes_]]] | bytes | _NestedSequence[bytes]) -> chararray[Any, dtype[bytes_]]
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/lib/scimath.pyi:18: error: Overloaded function signatures 2 and 3 overlap with incompatible return types  [overload-overlap]
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/lib/scimath.pyi:18: error: Overloaded function signatures 2 and 4 overlap with incompatible return types  [overload-overlap]
external/rules_python~~pip~our_env1_312_numpy_cp312_cp312_manylinux_2_17_x86_64_675d61ff/site-packages/numpy/lib/scimath.pyi:27: error: Overloaded function signatures 2 and 3 overlap with incompatible return types  [overload-overlap]

Steps to reproduce:
I was able to reproduce this in the example from this repo (examples/demo) with the following modifications:

numpy==1.26.4 added to requirements.in.
print(np.__version__) in any of the python files.

Expected result:
No errors; my code passes mypy checks, it is only the 3p contents that fail.
Actual Result:
Lots of errors.
Perhaps there could be an option to skip type-checking third-party libraries, or a recommended set of options for mypy.ini?

I'd recommend setting follow_imports = silent in mypy.ini. We should probably default this in the ruleset with arguments to mypy, though.

It looks like you need both follow_imports = silent and follow_imports_for_stubs = True, we'll update our default mypy.ini but there's unfortunately now ay to fix this on the command line, so if you override mypy.ini you'll need both of these.

Awesome, this worked for me. Thank you!


mobile ui

📱

wow this is great. nice work @noahvember
I think this is almost there. Some minor feedback before we can merge and ship this:

Thoughts on making the search bar more prominent?

This is pretty neat, but I'm afraid user might miss the SQL and data tables.

For example, on this screen it's hard to know what the actual query was and what was the data (table) output by the search.

One way we could achieve it is by using a bottom sheet. But I'm open to other ideas. Overall, I am a fan of the idea that on mobile the map / chart occupies 80% of the screen. It's a really special UX

thanks, and good points!

will definitely make it wider, was also thinking about removing the clear button on mobile only. any other thoughts how? could also go taller and be more text area like

thinking the query could be shown in a closeable box above search bar after it is searched

bottom sheet would work, I was thinking it could be toggleable by an info icon button under the visual selectors?

For search bar, Perplexity does this really well on mobile. The just default to the "Go" button on the keyboard for search and "x" is subtle:

Hmm, I'm not sure about the toggle. We can have it there in case users want that optionality. But what I understand so far from talking to users is the data (table) and SQL query is equally important in seeing what the actual values are (table) and how censusGPT came up with them (SQL query). But that's just from talking to users. What does your intuition say?

That's a great search bar example
I was thinking of ways to view table and sql without the extra click: could make them appear as close able pop up boxes after a query, but this also involves mandatory close of mobile user doesn't care for it. Tricky because mobile is hard to display both visual or table/sql at the same time. Could also consider mobile users will not be same power users who want to view all data at once on a phone
Otherwise I was thinking to fly in the table and sql views above the search bar in closable boxes, user could manually close it or it can leave the page automatically after a timeout, while also leaving the icons to bring up after it's closed

Looks great @noahvember ! Thanks for adding this.
Approving. Will merge soon (likely tomorrow AM) once a prod issue is fixed.


[fontconfig] file not found by [qtbase]

I'm on ubuntu. When I build Qt with fontconfig, and run an application, I get
Fontconfig error: Cannot load default config file: No such file: (null)

To solve it, I can
export FONTCONFIG_PATH="/home/brandon/vcpkg/installed/x64-linux/etc/fonts/"

But I think this should be set during build time.

To solve it, I can
export FONTCONFIG_PATH="/home/brandon/vcpkg/installed/x64-linux/etc/fonts/"

But I think this should be set during build time.

It cannot be set like this at built time: vcpkg's binary artifacts must be relocatable. Such settings must be made by the user, library or application when resulting application is executed.

Still vcpkg needs to configure fontconfig a bit different and use /etc/fonts/, /usr/etc/fonts/ and maybe ~/etc/fonts/ as default search paths.
e.g. https://github.com/chromium/chromium/blob/main/third_party/fontconfig/BUILD.gn#L56-L58
relevant source code:
https://github.com/freedesktop/fontconfig/blob/e291fda7d42e5d64379555097a066d9c2c4efce3/src/fcinit.c#L39-L51


[WIP][dashboard scoped filter] part 3: merge filter scope settings into dashboard redux state

CATEGORY
Choose one

[ ] Bug Fix
[x] Enhancement (new features, refinement)
[ ] Refactor
[ ] Add tests
[ ] Build / Development Environment
[ ] Documentation

SUMMARY

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TEST PLAN

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

REVIEWERS

Codecov Report

Merging #8522 into convert-ids-to-tabs-v2 will decrease coverage by 0.01%.
The diff coverage is 65.12%.

@@                    Coverage Diff                    @@
##           convert-ids-to-tabs-v2   #8522      +/-   ##
=========================================================
- Coverage                   66.82%   66.8%   -0.02%
=========================================================
  Files                         468     471       +3
  Lines                       22893   22967      +74
  Branches                     2483    2487       +4
=========================================================
+ Hits                        15299   15344      +45
- Misses                       7433    7461      +28
- Partials                      161     162       +1

Impacted Files
Coverage Δ

...et/assets/src/dashboard/components/SliceHeader.jsx
24% <ø> (ø)
:arrow_up:

...s/src/dashboard/components/SliceHeaderControls.jsx
11.62% <ø> (ø)
:arrow_up:

...uperset/assets/src/dashboard/components/Header.jsx
47.74% <ø> (+4.5%)
:arrow_up:

...rset/assets/src/dashboard/components/SaveModal.jsx
43.9% <ø> (ø)
:arrow_up:

...sets/src/dashboard/containers/FilterIndicators.jsx
77.77% <ø> (-4.05%)
:arrow_down:

...src/dashboard/components/HeaderActionsDropdown.jsx
69.56% <ø> (ø)
:arrow_up:

...rset/assets/src/dashboard/containers/Dashboard.jsx
0% <ø> (ø)
:arrow_up:

...shboard/util/charts/getFormDataWithExtraFilters.js
89.47% <ø> (-1.44%)
:arrow_down:

...ard/components/filterscope/FilterScopeSelector.jsx
1.48% <0%> (-0.06%)
:arrow_down:

...t/assets/src/dashboard/reducers/getInitialState.js
0% <0%> (ø)
:arrow_up:

... and 26 more

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 03b722e...aa679e8. Read the comment docs.

A few updates in the last commits, based on users and designer's feedack:

Replace Select/deselect all filters to All filters. Replace Select/deselect all charts to All charts
Should close modal on user click Save button. Save button should do save and close modal.
Fix the bug that filter scopes settings are not saved to backend.


Will this get you banned?

Does Vanguard ban this skin changer or does it not?

It not inject but it working if you uninstall Vanguard in game in control panel this work for few minutes

ok so u cant use it without disabling vanguard?

ok so u cant use it without disabling vanguard?
No for use it Vanguard need to be uninstall in control panel but it work only for few minutes because of the Vanguard check.

ok so u cant use it without disabling vanguard?

No for use it Vanguard need to be uninstall in control panel in game but it work only for few minutes because of the Vanguard check.

but will you get banned if you try ?

ok so u cant use it without disabling vanguard?

No for use it Vanguard need to be uninstall in control panel in game but it work only for few minutes because of the Vanguard check.

but will you get banned if you try ?

No banned for uninstalling in game.

ok so u cant use it without disabling vanguard?

No for use it Vanguard need to be uninstall in control panel in game but it work only for few minutes because of the Vanguard check.

but will you get banned if you try ?
R3nzSkin with Vanguard uninstalled in game

ok so u cant use it without disabling vanguard?

No for use it Vanguard need to be uninstall in control panel in game but it work only for few minutes because of the Vanguard check.

but will you get banned if you try ?

R3nzSkin with Vanguard uninstalled in game but not a good fix because work only for few minutes.

and if you try with vanguard installed ?

ok so u cant use it without disabling vanguard?

No for use it Vanguard need to be uninstall in control panel in game but it work only for few minutes because of the Vanguard check.

but will you get banned if you try ?

R3nzSkin with Vanguard uninstalled in game but not a good fix because work only for few minutes.

and if you try with vanguard installed ?

So, can you use it or not?

So, can you use it or not?

Not.


Seperate preview server into seperate gem

This is done (https://github.com/BBC-News/alephant-preview/).

:sparkling_heart:


Feature Request: Record those redirects that are used and how often

Just thinking out loud here but following on from #8 another method to know if its safe to remove a redirect is if its actually recently be hit. If we could keep a counter of the number of times a redirect has been used then that could be a safe marker that you can delete it.
Obviously we don't want to be hitting the DB for every hit so a in memory score board would be needed that could be flushed to the DB every once in a while and then reset. All we store are the total number of hits to that page per month?
Then you could update the UI to show that number next to each entry and if zero then you can add a "safe to delete" button with an info box ("this redirect hasn't been hit for over a month, so its probably safe to delete."). Something like that.
Not saying this is going to get done but the idea popped in my head and I'd rather share it than lose it :)

Hey @PeteDuncanson
Thanks for the suggestion. But like I said in #8 i'm using the Umbraco builtin redericts for storing data. And this does not support this.
I also think the chance is slim that they will support it. But maybe it's worth raising these requests on the Umbraco repository
Dave


Use with nii files

Hi!
First of all, thank you very much for sharing your great job, congratulations!
I work with a dataset of medical images in .nii format. Could you say me if would be posible to use your image fusion code with that format?
Thank you very much in advance!

Sure I would love to! Keep me updated if there is anything I can do for you.
Good luck!

Hello again! 😅
My problem is that I don't know how to do it. Could you give some advice about how can I use your code with .nii format and/or what should I modify?
Thanks :)


DEC-785 Backport multi-facet stuff to Beehive

DEC-785 Backport multi-facet stuff to Beehive

Backported from Zucchetto
Also should resolve DEC-786 First url on Search page does not pass parameters
back to Honeycomb search query.

Basically, facets are now being stored in an array instead of a single object.
The majority of changes are related to this change by changing parameter types
and making sure to iterate through the array where appropriate.`

I would like to see some of the hound issues addressed then :+1:

:+1: