TrajectoryPoint.acceleration_mps2 is not really an acceleration

Checklist

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

Description
Pretty much everywhere I see acceleration_mps2 used, the value is implicitely interpreted as follow:

if acceleration_mps2 > 0 then the vehicle is accelerating.
if acceleration_mps2 < 0 then the vehicle is braking.

This is correct as long as the vehicle drives forward. If you drive backward (v < 0), then:

the vehicle should be braking when acceleration_mps2 > 0
the vehicle should be accelerating when acceleration_mps2 < 0

In practice, I observe the opposite: when using the freespace planner to go backward, the vehicle goes faster (backward) when acceleration_mps2 > 0 and slower when acceleration_mps2 < 0.
In other words, TrajectoryPoint.acceleration_mps2 is rather the "directed acceleration" (i.e. a(t) = sign(v(t)) * (v(t+dt) - v(t)) / dt) than the mathematical acceleration (i.e. a(t) = (v(t+dt) - v(t)) / dt)
I understand this design choice, as it is consistent with the way cars behave: pushing the acceleration pedal will always accelerate the vehicle, and pressing the brakes strongly while stopped will not make the vehicle go reverse. But then, I would suggest to change the name acceleration_mps2 to something more appropriate (such as directed_acceleration_mps2 or w/e is the appropriate term) to avoid confusion.
TL;DR
grep -ril acceleration_mps2 src | xargs sed -i 's/acceleration_mps2/directed_acceleration_mps2/g' ?
Expected behavior
N/A
Actual behavior
N/A
Steps to reproduce
N/A
Versions
No response
Possible causes
No response
Additional context
No response

@VRichardJP

In practice, I observe the opposite: when using the freespace planner to go backward, the vehicle goes faster (backward) when acceleration_mps2 > 0 and slower when acceleration_mps2 < 0.

Currently, we define the sign of the acceleration in the planning/control/vehicle like this.
This weird definition comes from the following issue when using the "correct" sign of the acceleration.
The vehicle layer receives the longitudinal control command and the shift separately from the control layer. When we change the shift from the DRIVE to REAR for example, and if there is synchronization mismatch between the control command and the shift, the direction of acceleration may not be correct, causing unexpected acceleration.
I feel that rather than renaming to directed_acceleration_mps2, we can put the longitudinal controller and shift decider into one node so that there is no synchronization mismatch. What do you think about this idea?

Avoiding synchronization mismatch cannot be bad, but my issue is rather that using the name "acceleration" is confusing at code level without proper documentation. "Directed acceleration" is not necessarily very clear, but at least if I read that I immediately understand it might not be the "normal" acceleration I am used to and so I will double check its definition somewhere. If renaming is too annoying, I think at least adding documentation or a few comments here and there would greatly help. For example, in the TrajectoryPoint.msg or TrajectoryPoint.idl files.

I think at least adding documentation or a few comments here

I agree with this.

I have created these two PRs adding comments and a note in a readme file trying to clarify the usage of acceleration_mps2 :

https://github.com/autowarefoundation/autoware_msgs/pull/92
https://github.com/tier4/autoware_auto_msgs/pull/47

Please let me know if any further change is needed.

@yukkysaito @mitsudome-r
Can you review the above PR?

As the above PRs are merged, we can close this issue as completed.


test: enabled doctest in test-docs.yml

Proposed changes
Enabled doctests as part of workflows by enabling it in test-docs.yml
Addresses (https://github.com/tektronix/TekHSI/issues/17)
Types of changes
What types of changes does your code introduce?
Put an x in the boxes that apply

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Functionality update (non-breaking change which updates or changes existing functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] CI/CD update (an update to the CI/CD workflows, scripts, and/or configurations)
[ ] Documentation update (an update to enhance the user experience when reading through the docs)

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 followed the guidelines in the CONTRIBUTING document
[x] I have signed the CLA
[x] I have checked to ensure there aren't other open Pull Requests for the same update/change
[x] I have created (or updated) an Issue to track the status of this update/change and updated the link in this PR description (see above in the Proposed changes section) using the wording Addresses #<issue_number>
[x] I have performed a self-review of my code
[x] My code follows the style guidelines of this project
[x] I have commented my code, particularly in hard-to-understand areas
[x] Basic linting passes locally with my changes
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I have added necessary documentation (if appropriate)
[x] I have updated the Changelog with a brief description of my changes

@u625355, you will need to rebase your branch.


Automatic zoom is not clickable when on mobile

Hi guys as the title suggests the automatic zoom is not clickable when i am on mobile screen.
I am using version 2.7.2 on vaadin 23.3.3 is this something only on my machine or do others have this issue as well

Hello, I wasn't able to reproduce the issue. I created a project with the versions you mentioned but I'm able to select different zoom options from the dropdown (inlcuding automatic one). I tested it in dev & production mode and in desktop & mobile. The only thing I noticed is that the dropdown is not visible on vertical orientation for mobile (that's already reported in #42). Can you share an example so we can do some further analysis?


Add smc-connect specific Google Maps API key

Implement https://github.com/codeforamerica/ohana-web-search/issues/582 and add smc-connect specific instructions for adding an API key if for some reason the map quota is surpassed. Probably not worth adding a key because it needs to be tied to an account (though it could be organized together with the Google Translate key), but the groundwork to just add a key and have it work should be in place.

This was done a while ago.


Do SSAMOSWAP support byte and half operation？

In Zabha extension, byte and halfword atomic memory operations are introduced as below:

For SSAMOSWAP.W/D introduced by Zicfiss extension, Do they support byte and half operation?

SSAMOSWAP does not support byte or half word operands.


Handle lower case chars when parsing "infrakit-link-create"

On Softlayer, all tags are lowercase; this will cause the parsing of the infrakit-link-create tag to fail since the RC3339 format requires upper case values.
This commit forces the string value to all upper case and adds UT to fully cover the link library.
Closes #570
Signed-off-by: Steven Kaufer<EMAIL_ADDRESS>

Please sign your commits following these rules:
https://github.com/moby/moby/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "link-create-tag" git@github.com:kaufers/infrakit.git somewhere
$ cd somewhere
$ git rebase -i HEAD~842354398768
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f

Amending updates the existing PR. You DO NOT need to open a new one.


CRD docs style guide

We need a style guide for CRD docs.

How to link to the docs
Start with a capital letter and end with a period.
Follow the style from here: https://www.manifests.io/kubernetes/1.28/io.k8s.apimachinery.pkg.apis.meta.v1.APIGroup
code style when? In our docs we have it for CRD properties/keys but not for the objects. I'd keep it like that in the CRD docs.

Maybe we can just add a brief section in our regular style guide: https://docs.stackable.tech/home/stable/contributor/style-guide
combine with this: https://github.com/stackabletech/documentation/issues/488
link the style guide in the PR template in operator-templating: https://github.com/stackabletech/operator-templating/blob/main/template/.github/pull_request_template.md

https://github.com/stackabletech/operator-templating/pull/293


[TOPI][TIR][TE][x86] Extend x86 SIMD (u)int8 coverage for dense & conv2d

This PR enhances x86 SIMD (u)int8 coverage for dense and conv2d operators.
It extends current SIMD support with avx2 & ssse3, and adds a new set of non-overflowing SIMD method.

Tracker:

[ ] PR for TIR call_{pure}_llvm_intrin pretty print.
[ ] PR for new TIR intrinsics
[ ] PR for ArrayIntImm node

This PR will hold only the TOPI part.

Changes:
[x86][TOPI]

Extends current tensorizer set, now called fast-math overflowing one, with avx2 and ssse3.
Adds a new tensorizer set, a "precision" non-overflowing one, supporting: avx512,  avx2 and ssse3.
Enable proper operator data alignment to gurantee any data (even smallest) will fit the SIMD vector width.

[TIR][LLVM]

Adds new TIR ops mapped to LLVM instrinsics: zextend, sextend, truncate for type conversions.
Adds new TIR ops mapped to LLVM instrinsics: vectorpermute, vectorshuffle for vector manipulation.
The call_llvm_pure_intrin & call_llvm_intrin now holds instruction StringImm instead of IntImm abstract.
Enables TIR op atomic_add mapped to proper LLVM intrinsic guarnteed (best-effort) to lower to single instruction.

[TE]

Introduce new ArrayIntImm expression for small immediate list of integer constants.

[Target]

Introduce a flag -key=cpu,fast-math to switch from the precise SIMD (default) to the overflowing SIMD set.

Performance
For the new avx2 & ssse3 the fast vs. precise SIMD sets:
$ python3 tests/python/contrib/test_gemm_acc32_simd.py
Task tensorized: {True } [llvm -mcpu=ivybridge                     ], running time: 3.655 ms, 587.58 Gops/s
Task tensorized: {True } [llvm -mcpu=ivybridge -keys=cpu,fast-math ], running time: 3.678 ms, 583.86 Gops/s
Task tensorized: {True } [llvm -mcpu=haswell                       ], running time: 3.708 ms, 579.09 Gops/s
Task tensorized: {True } [llvm -mcpu=haswell -keys=cpu,fast-math   ], running time: 3.668 ms, 585.52 Gops/s
Task tensorized: {False} [llvm -mcpu=ivybridge                     ], running time: 41.152 ms, 52.18 Gops/s
Task tensorized: {False} [llvm -mcpu=haswell                       ], running time: 41.194 ms, 52.13 Gops/s

Notes

Precision (non fast-math) is the default now.
x86 amx and vnni schedules remains unchanged, their specific intrinsics never overflows.
The zextend, sextend, truncate lowers on x86 into single specialized instruction e.g: punpcklwd & punpckhwd
The vectorpermute, vectorshuffle also lowers on x86 into appropriate single specialized instruction.
ArrayIntImm is for the new ops: tir.vectorpermute("int32x8", whatever_vector, [0, 1, 4, 5, 2, 3, 6, 7])
The fast-math mode will always warn the user:
Using `fast-math` may overflow, make sure ranges for either data is [0,128] or weight is [-64,+64]
TIR printer (for debug purpose) will now list the very name of the instruction, not an abstract IntImm:
{...} T.call_llvm_pure_intrin("int32x4", "llvm.x86.sse2.pmadd.wd", T.uint32(2) {....}

Samples
Lowering results for the ssse3 case.
The precise one:
@I.ir_module
class Module:
    @T.prim_func
    def tvmgen_default_fused_nn_contrib_dense_pack(
                    p0: T.Buffer((4, 4), "uint8"),
                    p1: T.Buffer((1, 1, 4, 4), "int8"),
                    compute: T.Buffer((4, 4), "int32")):
        T.func_attr({"from_legacy_te_schedule": T.bool(True), "tir.noalias": T.bool(True)})
        for i_inner in range(4):
            compute_1 = T.Buffer((16,), "int32", data=compute.data)
            compute_1[i_inner * 4:i_inner * 4 + 4] = T.Broadcast(0, 4)
            p0_1 = T.Buffer((16,), "uint8", data=p0.data)
            p1_1 = T.Buffer((16,), "int8", data=p1.data)
            compute_1[i_inner * 4:i_inner * 4 + 4] =
              T.call_llvm_pure_intrin("int32x4", "llvm.x86.ssse3.phadd.d.128", T.uint32(2),
                T.call_llvm_pure_intrin("int32x4", "llvm.x86.sse2.pmadd.wd", T.uint32(2),
                  T.vectorlow("void", T.zextend("int16x16",
                    T.reinterpret("int8x16", T.Broadcast(
                      T.reinterpret("int32", p0_1[i_inner * 4:i_inner * 4 + 4]), 4)))),
                        T.vectorlow("void", T.sextend("int16x16", p1_1[0:16]))),
                          T.call_llvm_pure_intrin("int32x4", "llvm.x86.sse2.pmadd.wd", T.uint32(2),
                            T.vectorhigh("void", T.zextend("int16x16", T.reinterpret("int8x16",
                              T.Broadcast(T.reinterpret("int32", p0_1[i_inner * 4:i_inner * 4 + 4]), 4)))),
                                T.vectorhigh("void", T.sextend("int16x16", p1_1[0:16]))))
                                  + compute_1[i_inner * 4:i_inner * 4 + 4]

000000000001e90 <tvmgen_default_fused_nn_contrib_dense_pack_compute_>:
    1e90:	c4 e2 79 18 16       	vbroadcastss (%rsi),%xmm2
    1e95:	c5 f9 ef c0          	vpxor  %xmm0,%xmm0,%xmm0
    1e99:	c5 e9 68 d8          	vpunpckhbw %xmm0,%xmm2,%xmm3
    1e9d:	c4 e2 79 20 4a 08    	vpmovsxbw 0x8(%rdx),%xmm1
    1ea3:	c4 e2 79 30 e2       	vpmovzxbw %xmm2,%xmm4
    1ea8:	c4 e2 79 20 12       	vpmovsxbw (%rdx),%xmm2
    1ead:	c5 d9 f5 e2          	vpmaddwd %xmm2,%xmm4,%xmm4
    1eb1:	c5 e1 f5 d9          	vpmaddwd %xmm1,%xmm3,%xmm3
    1eb5:	c4 e2 59 02 eb       	vphaddd %xmm3,%xmm4,%xmm5
    {...}

define internal fastcc void @tvmgen_default_fused_nn_contrib_dense_pack_compute {
entry:
  {...}
  %3 = load i32, ptr %1, align 64, !tbaa !310
  %4 = insertelement <4 x i32> undef, i32 %3, i64 0
  %5 = bitcast <4 x i32> %4 to <16 x i8>
  %6 = shufflevector <16 x i8> %5, <16 x i8> poison, <16 x i32>
           <i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3,
            i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
  %7 = zext <16 x i8> %6 to <16 x i16>
  %8 = shufflevector <16 x i16> %7, <16 x i16> poison, <8 x i32>
           <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7>
  %9 = load <16 x i8>, ptr %2, align 64, !tbaa !312
  %10 = sext <16 x i8> %9 to <16 x i16>
  %11 = shufflevector <16 x i16> %10, <16 x i16> poison, <8 x i32>
             <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7>
  %12 = tail call <4 x i32> @llvm.x86.sse2.pmadd.wd(<8 x i16> %8, <8 x i16> %11)
  %13 = shufflevector <16 x i16> %7, <16 x i16> poison, <8 x i32>
              <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15>
  %14 = shufflevector <16 x i16> %10, <16 x i16> poison, <8 x i32>
             <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15>
  %15 = tail call <4 x i32> @llvm.x86.sse2.pmadd.wd(<8 x i16> %13, <8 x i16> %14)
  %16 = tail call <4 x i32> @llvm.x86.ssse3.phadd.d.128(<4 x i32> %12, <4 x i32> %15)
  %17 = getelementptr inbounds i8, ptr %1, i64 4
  {...}

The fast-math one:
@I.ir_module
class Module:
    @T.prim_func
    def tvmgen_default_fused_nn_contrib_dense_pack(
                  p0: T.Buffer((4, 4), "uint8"),
                  p1: T.Buffer((1, 1, 4, 4), "int8"),
                  compute: T.Buffer((4, 4), "int32")):
        T.func_attr({"from_legacy_te_schedule": T.bool(True), "tir.noalias": T.bool(True)})
        for i_inner in range(4):
            compute_1 = T.Buffer((16,), "int32", data=compute.data)
            compute_1[i_inner * 4:i_inner * 4 + 4] = T.Broadcast(0, 4)
            p0_1 = T.Buffer((16,), "uint8", data=p0.data)
            p1_1 = T.Buffer((16,), "int8", data=p1.data)
            compute_1[i_inner * 4:i_inner * 4 + 4] =
              T.call_llvm_pure_intrin("int32x4", "llvm.x86.sse2.pmadd.wd", T.uint32(2),
                T.call_llvm_pure_intrin("int16x8", "llvm.x86.ssse3.pmadd.ub.sw.128", T.uint32(2),
                  T.reinterpret("int8x16", T.Broadcast(
                    T.reinterpret("int32", p0_1[i_inner * 4:i_inner * 4 + 4]), 4)), p1_1[0:16]),
                      T.Broadcast(T.int16(1), 8)) + compute_1[i_inner * 4:i_inner * 4 + 4]

0000000000001e90 <tvmgen_default_fused_nn_contrib_dense_pack_compute_>:
    1e90:	c4 e2 79 18 06       	vbroadcastss (%rsi),%xmm0
    1e95:	c5 f9 6f 12          	vmovdqa (%rdx),%xmm2
    1e99:	c5 f9 6f 4a 10       	vmovdqa 0x10(%rdx),%xmm1
    1e9e:	c4 e2 79 04 da       	vpmaddubsw %xmm2,%xmm0,%xmm3
    1ea3:	c4 e2 79 18 05 e4 11 	vbroadcastss 0x11e4(%rip),%xmm0        # 3090 <_fini+0x620>
    1eaa:	00 00
    1eac:	c5 e1 f5 d8          	vpmaddwd %xmm0,%xmm3,%xmm3

define internal fastcc void @tvmgen_default_fused_nn_contrib_dense_pack_compute_{
entry:
  {...}
  %3 = load i32, ptr %1, align 64, !tbaa !310
  %4 = insertelement <4 x i32> undef, i32 %3, i64 0
  %5 = bitcast <4 x i32> %4 to <16 x i8>
  %6 = shufflevector <16 x i8> %5, <16 x i8> poison, <16 x i32>
            <i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3,
            i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
  %7 = load <16 x i8>, ptr %2, align 64, !tbaa !312
  %8 = tail call <8 x i16> @llvm.x86.ssse3.pmadd.ub.sw.128(<16 x i8> %6, <16 x i8> %7)
  %9 = tail call <4 x i32> @llvm.x86.sse2.pmadd.wd(<8 x i16> %8, <8 x i16>
            <i16 1, i16 1, i16 1, i16 1, i16 1, i16 1, i16 1, i16 1>)
  %10 = getelementptr inbounds i8, ptr %1, i64 4
  {...}

Credits
There is a compact full x86 SIMD table guide here.
This work here follows some suggestions from intel's onednn int8 compute notes.
Next
(WiP) This work here will be extended to metaschedule auto-tensorization.
(WiP) Will try enable int4 (not native) using best possible SIMD bit manipulation.

Cc: @masahi , @anijain2305, @jianyuh, @Qianshui-Jiang, @kparzysz-quic , @junrushao , @tqchen , @elvin-n , @vvchernov , @echuraev

Very interesting PR!

Introduce new ArrayIntImm expression for small immediate list of integer constants.

Can you not use AllocateConst? It's a bit awkward to introduce a whole new TIR node to support a small set of intrinsics.

The call_llvm_pure_intrin & call_llvm_intrin now holds instruction StringImm instead of IntImm abstract.

I like this a lot, would make the TIR much easier to reason about!

Very interesting PR!

Thank you @ekalda !

Introduce new ArrayIntImm expression for small immediate list of integer constants.

Main issue is that within LLVM  some x86 (also other arches) some instructions are not exposed at all.
So, I had to look into adding zextend, sextend, truncate plus the vectorpermute, vectorshuffle instead.

The good point that these are lowered to exactly what is needed (even single insn, optim) for the target arch (x86 here).

Can you not use AllocateConst? It's a bit awkward to introduce a whole new TIR node to support a small set of intrinsics.

Hmm no, AllocateConst looked bit too complicated to me.

There are already the {Float,Int,String}Imm so why not ArrayIntImm.
See the simple usage from python: tir.vectorpermute("int32x8", whatever_vector, [0, 1, 4, 5, 2, 3, 6, 7])
See the lowered IR (llvm -mcpu=haswell) as {..} T.ArrayIntImm([0, 1, 4, 5, 2, 3, 6, 7]) {...}:

@I.ir_module
class Module:
    @T.prim_func
    def tvmgen_default_fused_nn_contrib_dense_pack(
           p0: T.Buffer((4, 8), "uint8"),
           p1: T.Buffer((1, 2, 8, 4), "int8"),
           compute: T.Buffer((4, 8), "int32")):
        T.func_attr({"from_legacy_te_schedule": T.bool(True), "tir.noalias": T.bool(True)})
        for i_inner in range(4):
          compute_1 = T.Buffer((32,), "int32", data=compute.data)
          compute_1[i_inner * 8:i_inner * 8 + 8] = T.Broadcast(0, 8)
          for k_outer in range(2):
            p0_1 = T.Buffer((32,), "uint8", data=p0.data)
            p1_1 = T.Buffer((64,), "int8", data=p1.data)
            compute_1[i_inner * 8:i_inner * 8 + 8] =
            T.vectorpermute("int32x8",
            T.call_llvm_pure_intrin("int32x8", "llvm.x86.avx2.phadd.d", T.uint32(2),
            T.call_llvm_pure_intrin("int32x8", "llvm.x86.avx2.pmadd.wd",  T.uint32(2),
            T.vectorlow("void", T.zextend("int16x32", T.reinterpret("int8x32", T.Broadcast(
            T.reinterpret("int32", p0_1[i_inner * 8 + k_outer * 4:i_inner * 8 + k_outer * 4 + 4]), 8)))),
            T.vectorlow("void", T.sextend("int16x32", p1_1[k_outer * 32:k_outer * 32 + 32]))),
            T.call_llvm_pure_intrin("int32x8", "llvm.x86.avx2.pmadd.wd", T.uint32(2),
            T.vectorhigh("void",
            T.zextend("int16x32", T.reinterpret("int8x32",  T.Broadcast(
            T.reinterpret("int32", p0_1[i_inner * 8 + k_outer * 4:i_inner * 8 + k_outer * 4 + 4]), 8)))),
            T.vectorhigh("void",
            T.sextend("int16x32", p1_1[k_outer * 32:k_outer * 32 + 32])))),
            T.ArrayIntImm([0, 1, 4, 5, 2, 3, 6, 7])) + compute_1[i_inner * 8:i_inner * 8 + 8]

The call_llvm_pure_intrin & call_llvm_intrin now holds instruction StringImm instead of IntImm abstract.

I like this a lot, would make the TIR much easier to reason about!

@ekalda
The work here (x86) is a pseudo kind of "scalable-vector" having _m128, _m256, _m512 but "hand unrolled" ones.
I also follow your RFC related to scalable vectors, I am interested in similar ideas for the riscv64 "v" extension.

idx_vec = T.allocate_const([0, 1, 4, 5, 2, 3, 6, 7], "int32")
tir.vectorpermute("int32x8", whatever_vector, idx_vec)

is not more complex in my opinion :) I appreciate the convenience of printing the index array inplace in TIR though.

Hmm ... that's really short !
I don't know why I found AllocateConst (and stayed convinced) that is something complicated for "immediate" use.
https://github.com/apache/tvm/blob/a13eadbddaa94246f2d572aed6e04b70737616c5/tests/python/unittest/test_tvmscript_ir_builder_tir.py#L386-L394
I also find attracted to pass a plain simple python list().

In general, I won't argue against this change if there is a wider consensus that this is a necessary addition. However, I think we have to think carefully about adding another mechanism into TIR for representing data arrays that is opaque to the memory planning. From what I can see, there are no restrictions to the size of the data it can hold, so it's rather susceptible to misuse.

For the misuse part, yes, also agree, but my understanding of AllocateConst is that inherits many properties of the buffers, while ArrayIntImm is more restrained kind of object treatable only as plain "constant" within TIR parts.
Well, I reconsider AllocateConst if there is no consensus.
Thanks for pointing this out with a succinct example !

idx_vec = T.allocate_const([0, 1, 4, 5, 2, 3, 6, 7], "int32")
tir.vectorpermute("int32x8", whatever_vector, idx_vec)

is not more complex in my opinion :) I appreciate the convenience of printing the index array inplace in TIR though.

Hmm ... that's really short ! I don't know why I found AllocateConst (and stayed convinced) that is something complicated for "immediate" use.

I add these few lines here showing more contrasted aspects against/pro ArrayIntImm vs.  AlocateConst.

Tried to stick with AlocateConst, by default it does not come at a cheap:    idx_vec = tvm.tir.allocate_const([0, 1, 4, 5, 2, 3, 6, 7], "int32")
              ^^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'tvm.tir' has no attribute 'allocate_const'. Did you mean: 'AllocateConst'?

https://tvm.apache.org/docs/reference/api/python/tir.html#tvm.tir.AllocateConst  idx_vec = tvm.tir.AllocateConst([0, 1, 4, 5, 2, 3, 6, 7], "int32")
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: AllocateConst.__init__() missing 3 required
 positional arguments: 'extents', 'data_or_idx', and 'body'

Can be "aliased" or something to get the simple form: tir.allocate_const([0, 1, 4, 5, 2, 3, 6, 7], "int32")
Also remembered a remark regarding "the not exposed yet status" of tir.allocate_const at this point in the codebase.

I remain with the idea to use AllocateConst if there will be no consensus on ArrayIntImm.

There's an in flight patch where @Lunderberg has done a great job in integrating the AllocateConst into microTVM implementation (it just keeps failing the CI 🙈).
Also, it seems to me that there are a few core compiler changes in this patch that are needed for the new TOPI schedules, but are in essence target independent changes that would warrant separate discussions.

See now, thanks for pointing this out !

How do you feel about breaking this patch up into smaller patches? From eyeballing the patch, e.g.

Changes to call_llvm_intrin and call_llvm_pure_intrin
ArrayIntImm node
New TIR intrinsics
TOPI schedules

That was exactly what I was thinking, so I will split this up.
I created a tracking checker-box in the first comment of this PR.

Thank you for pointing out https://github.com/apache/tvm/pull/15300.  It's been on the back-burner for quite a while, as a pre-cursor to (hopefully/finally) landing https://github.com/apache/tvm/pull/14985.  If anybody who is more familiar with tvm.contrib.ethosu implementation, any help on resolving the breakages would be appreciated.


Limitations and Performance implications?

Would it be possible to have list of limitations and possibly add some benchmarks comparing it to raw property access and to implementations of proxy?
Specifically, does this work?
proxied.js
export default new Proxy({}, {
    get: function(target, propKey) {
        if (!(propKey in target)) {
            console.log("Accessing undefined key!");
        }

        return target[propKey];
    }
});

tester.js
import proxied from './proxied';
proxy.a = 'foo';
console.log(proxy.a);
console.log(proxy.b);

e.g. does the plugin work across modules if it knows something is a proxied object?
Does it work for this?
someFunction.js
export default function someFunction(someObject) {
    console.log(someObject.a);
}

tester2.js
import proxied from './proxied';
import someFunction from './someFunction';
someFunction(proxied);
someFunction({ a: 'works?' });

The only way I can imagine that working is it if rewrites every single property access in the source code, even for vanilla objects. The performance of that would definitely be pretty sad.

All of this examples should work (i didn't test these particular cases). Plugin replaces all member accesses (dots ;) ) in your code into invocation of interceptor functions which checks (in runtime) if object is proxy.


containerlab: 0.48.1 -> 0.49.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/srl-labs/containerlab/releases.
meta.description for containerlab is: Container-based networking lab
meta.homepage for containerlab is: https://containerlab.dev/
meta.changelog for containerlab is: https://github.com/srl-labs/containerlab/releases/tag/v0.48.6
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.48.6 with grep in /nix/store/23773cippm6153dyjvqzav6ywrk7diwd-containerlab-0.48.6
found 0.48.6 in filename of file in /nix/store/23773cippm6153dyjvqzav6ywrk7diwd-containerlab-0.48.6

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

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
containerlab

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/23773cippm6153dyjvqzav6ywrk7diwd-containerlab-0.48.6 \
  --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 containerlab https://github.com/r-ryantm/nixpkgs/archive/df4805183179141c1880c2cd211e191c18ec0bcf.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/df4805183179141c1880c2cd211e191c18ec0bcf#containerlab

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/23773cippm6153dyjvqzav6ywrk7diwd-containerlab-0.48.6
ls -la /nix/store/23773cippm6153dyjvqzav6ywrk7diwd-containerlab-0.48.6/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 run on x86_64-linux 1

1 package built:

containerlab

Maintainer pings
cc @aaronjheng for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/containerlab/versions.
meta.description for containerlab is: Container-based networking lab
meta.homepage for containerlab is: https://containerlab.dev/
meta.changelog for containerlab is: https://github.com/srl-labs/containerlab/releases/tag/v0.49.0
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.49.0 with grep in /nix/store/hhpfwsw7firfcjcjrrdp2s665chfqamq-containerlab-0.49.0
found 0.49.0 in filename of file in /nix/store/hhpfwsw7firfcjcjrrdp2s665chfqamq-containerlab-0.49.0

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

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
containerlab

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/hhpfwsw7firfcjcjrrdp2s665chfqamq-containerlab-0.49.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 containerlab https://github.com/r-ryantm/nixpkgs/archive/fdc9cd958444a81860b9b72480554619d86e6fcf.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/fdc9cd958444a81860b9b72480554619d86e6fcf#containerlab

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/hhpfwsw7firfcjcjrrdp2s665chfqamq-containerlab-0.49.0
ls -la /nix/store/hhpfwsw7firfcjcjrrdp2s665chfqamq-containerlab-0.49.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 run on x86_64-linux 1

1 package built:

containerlab

Maintainer pings
cc @aaronjheng for testing.


Fix titles on HC coldbox performance plots

At present, the pdsp performance tools are copied over and the plot titles reflect this. I am cleaning up those titles.

I have modified hdcb_dataprep_tools.fcl to remove the old channel-tick plot tools ad define these three tools that each provide a plot for each of the four planes:

chtr_hdcb - Raw data
chta_hdcb - Pfrepared data at ADC scale
chtc_hdcb - Prepared data at (area) calibrated scale.

Changes are committed and my analysis package is updated.

There are still issues with the labels and it is tedious to have to change rebin on each config individually if share tick range is increased.
On the latter point I added the option for automatic setting of rebin if the value is set to zero (#10).

Update hdcb_tools.fcl to use channRangesColdbox (instead of default protodune).
Set cht plot titles to "Run %RUN% event %EVENT% %UTCTIME2% UTC (%TRIGNAME% trigger)",
i.e. drop trigger name.

The histo title has plane labels 0u, 0v, 0c, and 0z. This comes from using prototdune channel ranges. I tries switching to fcl-based channel ranges in a new tool channelRangesHdcb with range names {u, v, z1, z2} in hdcb_tools.fcl but this breaks the dataprep module. I add range apa1 to resolve that problem. Presumably this could also be fixed by adding the appropriate channel group config but we don't have a fcl-based tool for that and so I continue to use the prototdune tool for now.

The plots now look good (see attached) except for the incorrect date which should be ok once dunedataprep issue 9 is resolved.

The definitions of tool.channelRanges are now removed in duneprototypes issue 10.

The changes are pushed:

        modified:   ../Module/DataPrepByApaModule_module.cc
        modified:   ../Tool/AdcDataPlotter.h
        modified:   hdcb_dataprep_tools.fcl

Some documetation was added to the AdcDataPlotter header and an error message re missing channel group in the module was improved.


Old readme did not work

Hello i have 2 problems with replicate your great appt.
First 1. here.com
did not use APP ID and APP CODE in REST. So i must use APP ID and APP CODE from HERE SDK FOR ANDROID ???
Second 2. problem is in GPSLogger app...
whe i use HTTP send app say: cleartext communication not permitted by network security policy
https://stackoverflow.com/questions/45940861/android-8-cleartext-http-traffic-not-permitted
I think it is problem of newest android and security policy.
Sorry for my bad english.

I think there may no longer be a JS REST option on HERE.com??

Updated: https://github.com/715209/gps-logger/releases/tag/v3.0.0
Download, start fresh.


Exception - Failed to lookup symbol 'DTLS_client_method': dlsym(RTLD_DEFAULT, DTLS_client_method): symbol not found

Exception generate when attempting to connect:
    final bindAdress = InternetAddress.anyIPv4;
    final peerAddress = InternetAddress(meterIpAddress);
    const peerPort = 8081;
    const _ciphers = 'ECDHE-ECDSA-AES128-CCM8';
    const _identity = "MEC";

    const _preSharedKey = "secretPSK";

    ByteData data = await rootBundle.load('assets/certs/certificate.pem');
    List<Uint8List> cert = [data.buffer.asUint8List()];

    final context = DtlsClientContext(
      withTrustedRoots: true,
      rootCertificates: cert,
      ciphers: _ciphers,
      pskCredentialsCallback: (identityHint) {
        XeDebugPrint.success(msg: 'identityHint: $identityHint');
        return PskCredentials(
          identity: Uint8List.fromList(utf8.encode(_identity)),
          preSharedKey: Uint8List.fromList(utf8.encode(_preSharedKey)),
        );
      },
    );

    final dtlsClient = await DtlsClient.bind(bindAdress, 0);
    final DtlsConnection connection;

    try {
      connection = await dtlsClient.connect(peerAddress, peerPort, context);
    } on Exception {
      await dtlsClient.close();
      rethrow;
    }

Thank you for opening this issue! Can you provide more information on which OpenSSL version you are using and try to generate a self-contained example to reproduce the exception? Also, could you post the full stack trace?


Wizard to build feedback emails

Opportunity from Dec. 2023 internal user research.
Have a way to generate feedback emails in system with comments built-in for CAS staff to send to operators.
Also include a function to allow for additional text to be typed by the CAS staff member.

@NicoleGovvy  let's chat more about this one. I remember hearing for a similar feature as the comment/chat function in CIIP, but don't remember a feedback email feature in the system. Could use some clarity on this one :)


References not loaded for new/merged documents

I'm experiencing a little trouble with references at the moment, and I'm not sure exactly what the issue is.
I'm trying to deserialize some data in to a Schedule object which already has an associated Race document stored which is accessible by a repository method.  Unfortunately, unless I flush and refresh the Schedule, the referenceOne to the Race never resolves.
Here is a simplified version of the problem I'm having:
class Schedule
{
    /**
     * @MongoDB\ReferenceOne(targetDocument="Race", mappedBy="schedule", repositoryMethod="findResults")
     */
    private $race;

    public function getRace()
    {
        return $this->race;
    }
}

// Persisting a new document
$schedule = $serializer->deserialize($data);
$this->dm->persist($schedule);
$schedule->getRace(); // null

// Merge with an existing document
$schedule = $serializer->deserialize($data);
$schedule = $this->dm->merge($schedule);
$schedule->getRace(); // null

// Must flush and refresh in order to actually make the reference work
$schedule = $serializer->deserialize($data);
$this->dm->persist($schedule);
$this->dm->flush();
$this->dm->refresh($schedule);
$schedule->getRace(); // Race

I would expect that each time I attempt to getRace it would give me the Race document from Mongo as it is now operating on a managed document?
This is pretty problematic as I need to be able to follow those inverse relationships prior to flushing the changes to the database.  Am I doing something wrong?  Is there a way to force those relationships to be restored on an unflushed document?

The interesting part is $serializer->deserialize($data): what does it set for whatever property is returned in $schedule->getRace()? If it's null, it will override whatever else was loaded from the database, as it assumes you want to unset it: https://github.com/doctrine/mongodb-odm/blob/858d656f0f5b768c4cb295b8c22fe30f40308199/lib/Doctrine/ODM/MongoDB/UnitOfWork.php#L1889..L1890.

Thanks for the input.  I'm fairly certain it isn't setting that property at all, but I'll set about proving that to be sure.
However, that would only explain the merge operation not working - but would not explain the persist issue?  Also is something is not set then it will be null anyway - so I'm not sure how the UnitOfWork can tell the difference between a property which is null because it was never set to anything and a property which is null because it was set to null.
Perhaps I have misunderstood?

I suppose another way of doing this would be to do:
$schedule = new Schedule();
$dm->persist($schedule);
$schedule->getRace(); // returns null - would like it to return the related Race document

Whilst I can appreciate the relationship hydration process may only occur when loading from the database, rather than also on persisting, is there a way to force that hydration process to reoccur?

It can't know whether it was never set or purposefully set to null - which is why it doesn't override the original value. The other option would be to use null from the document given to merge, which might be really undesirable.
As for your follow-up, there's no way for ORM to know your schedule object matches something in the database already. persist tells the UoW "I've got a new document for you to manage", not "look, this might or might not be in the database, so do what I want in this specific case, mkay?". There will always be use-cases where the logic we implement will not always work, you'll just have to solve this. One example would be fetching the document in question and serializing the data into the managed instance, instead of deserializing into a new object and trying to get it to merge up with the data already in the database.

I completely understand, I was hoping there might be a simple way to retrigger the hydration process rather than serializing data directly in to the managed instance as whilst that works nicely for the simple example above, it is unfortunately not a great fit for our particular use-case.
Thanks for the help anyway.


How to use Oscar tool to generate captions for our own dataset

Hello! How to eval your model on own dataset?)

you may want to look at issue issue 19

you may want to look at issue issue 19


Add dsp and mve support to transpose conv int8

Adds new support functions to read and pad 2 int8s
Adds new support functions to allow addition to read and pad
Adds dsp optimizations for arm_nn_mat_mult_nt_t_s8_s32
Adds mve optimizations for arm_nn_mat_mult_nt_t_s8_s32
Adds mve requantization to arm_transpose_conv_s8
Adds new unit test

Change-Id: I0ebb09916a4a09a1299799831e6dd28cd9c650ed

Could you add arm_transpose_conv_get_buffer_sizes_s8.c to ARM.CMSIS-NN.pdsc? It was unfortunately missing even before this PR.

added the buffer size file to pdsc :)


source code about Variable Rate Compression

when do you provide the source code about this paper: Variable Rate Compression for Raw 3D Point Clouds?
Thanks a lot!

Thank you for your inquiry.  We plan on having the source code available before April 1st.


Required markdown extension?

It seems that several of the examples use the backtick_code_blocks markdown extension. Unless the user enables this, these examples will only work if using the markdown_github markdown variant.

No, backtick code blocks are enabled by default in pandoc's
markdown.
+++ dmckean [Feb 18 16 19:44 ]:

It seems that several of the examples use the backtick_code_blocks
markdown [1]extension. Unless the user enables this, these examples
will only work if using the markdown_github markdown [2]variant.
—
Reply to this email directly or [3]view it on GitHub.
References

http://pandoc.org/README.html#extension-backtick_code_blocks
http://pandoc.org/README.html#markdown-variants
https://github.com/jgm/pandocfilters/issues/35

You're right, my mistake. I was definitely writing poorly-formatted code blocks.


Skip test added TODO #trivial

Codecov Report

Merging #792 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #792      +/-   ##
==========================================
- Coverage   56.72%   56.72%   -0.01%
==========================================
  Files         277      277
  Lines       16464    16464
==========================================
- Hits         9340     9339       -1
- Misses       6361     6362       +1
  Partials      763      763

Impacted Files
Coverage Δ

lib/resolvestatus.go
90.09% <0%> (-2.98%)
:arrow_down:

lib/auto_resolver.go
91.04% <0%> (+1.49%)
:arrow_up:

Continue to review full report at Codecov.

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


Issue Direct Revert API call from client.

#2020-q2-s9

Supported by 068fe6d2ab752c98ad9a21fcd77d8ba2a41dc0a8, 14f6cd7f6f1c06927923f7890ce7c764eebaf35e, 4710a506c584ad184b08f86181df8f340c9a47e8


Fix issue with final build step

During the 0.10.1 release, it was noted that there was an issue with the final publish step in the build when running a Tagged build:
https://ci.appveyor.com/project/cakebuild/cake/build/0.10.1.build.1783#L448
This looks like an issue with missing Environment Variables on AppVeyor.

Missing Environment Variables have been added to AppVeyor.

Also, need to remove the Publish Release step that GitReleaseManager is running within the final build step.  This is no longer required, as this is what is now triggering the final build.


Export http helper functions

The http handler wrapper is great, but when compiling a custom transaction flow doesn't allow access to ProcessRequest and ProcessResponse anymore. The wrapper itself is cool, but in a lot of cases access to the actual transaction flow would be required. An example would be taking actions if an interruption occurred. e.g. producing metrics, notifying something, etc.
So in general to have an easier time writing a custom, wrapper-like flow with the nice Process helpers, would be great to have them exported again.

Thank you for contributing to Coraza WAF, your effort is greatly appreciated
Before submitting check if what you want to add to coraza list meets quality standards before sending pull request. Thanks!

Make sure that you've checked the boxes below before you submit PR:

[ ] My code includes positive and negative tests.
[ ] I have an appropriate description with correct grammar.
[ ] I have read Contribution guidelines, maintainers note and Quality standard.
[ ] My code is properly linted and passes pre-commit tests.

Thanks for your contribution :heart:

Yeah exactly, having hook functions would do the trick (see a similar
pattern in
https://github.com/openzipkin/zipkin-go/blob/master/middleware/http/server.go#L78).
We could have one to deal with the interruption, something like
func(types.Transaction, types.Interruption) so people can access the
transaction and the interruption (although you can access the interruption
from the transaction). In the future I also see ourselves writing one which
would access the request and the transaction but let's hold it until it is
the right time. The wrap method should accept a Options struct.
On Wed, 12 Apr 2023, 15:24 Ralph Kühnert, @.***> wrote:

@jcchavezs https://github.com/jcchavezs really our first use case would
have been to inject logic when an interruption was triggered. The simple
example would be to report what happened with a prometheus gauge for
example. I can adapt the PR to utilise functions as args for WrapHandler
maybe?
From my perspective the point here is, that coraza is a WAF framework,
flexible for integration no? So having hooks at points within the http
handler wrapper would make sense to inject logic, instead of replicating
the handler.
—
Reply to this email directly, view it on GitHub
https://github.com/corazawaf/coraza/pull/774#issuecomment-1505272487,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAXOYAVSHSAGQPZGUGQCU4DXA2UHZANCNFSM6AAAAAAW3MDAZ4
.
You are receiving this because you were mentioned.Message ID:
@.***>

awesome... thanks for your thoughts. I'll give it a shot @jcchavezs

Giving a second thought maybe we can accept a observer interface which would report metrics for this? Something like
type Observer interface {
  // onRequest is invoked when a request is started
  func onRequest(*http.Request, types.Transaction)
  // onInterruption is invoked when a request is interrupted
  func onInterruption(*http.Request, types.Transaction)
}

Ping @anuraaga

Those hooks seem to make sense to me - I'm a bit hesitant on exposing Transaction though as it would give a lot of surface for footgunning. Ideally the information passed to the hook is something immutable - unless we know of use cases that need mutability in hooks?

Good point @anuraaga. Maybe something like TransactionState is what we are
looking for? Or just the ID?
On Thu, 13 Apr 2023, 05:01 Anuraag Agrawal, @.***>
wrote:

Those hooks seem to make sense to me - I'm a bit hesitant on exposing
Transaction though as it would give a lot of surface for footgunning.
Ideally the information passed to the hook is something immutable - unless
we know of use cases that need mutability in hooks?
—
Reply to this email directly, view it on GitHub
https://github.com/corazawaf/coraza/pull/774#issuecomment-1506262503,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAXOYASSQNKSKBTEBADH4STXA5UBBANCNFSM6AAAAAAW3MDAZ4
.
You are receiving this because you were mentioned.Message ID:
@.***>

TransactionState is also mutable - basically we currently have Transaction as a view for use in middleware and TransactionState as a view for use in plugins. This would be more of a view for use in management or something like that - maybe having yet another view is overengineering though 🤔

Yeah, after looking at the transaction we might not need to access the
transaction at all? I was thinking that transaction ID would be useful for
logging purposes but you can achieve the same with seclang itself and when
it comes to metrics transaction ID is high cardinality so not worth I think
(feedback is welcome) so I would just skip transaction for now.
On Thu, 13 Apr 2023, 07:11 Anuraag Agrawal, @.***>
wrote:

TransactionState is also mutable - basically we currently have Transaction
as a view for use in middleware and TransactionState as a view for use in
plugins. This would be more of a view for use in management or something
like that - maybe having yet another view is overengineering though 🤔
—
Reply to this email directly, view it on GitHub
https://github.com/corazawaf/coraza/pull/774#issuecomment-1506355623,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAXOYAXQ7RPZCO353HJPHJTXA6DGTANCNFSM6AAAAAAW3MDAZ4
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hey @jcchavezs. To be honest, yes. We did quite some rewriting on the http package internally, I'll be cleaning that up to open another PR here. Hope you agree to the changes. We had to split up the Wrapper into a request and a response section because the interceptor would not work for us on response... Long story short, I'm still up for pushing sthg here :)

@jcchavezs @redradrat so... what's next here?


Future support

Its been over a year since this Flutter library for Phosphor Icons has been updated.
Are there any plans to update this soon?

It has just been updated. We have a typical update cadence of about 6-12 months for major releases, this is normal. There were no major bugs in the last year, so there were no updates while we were working on new icons.

In this case, the flutter lib lagged behind the rest because though I own this repo, I am not a regular flutter user or the normal maintainer of the package.

Great, thanks for your support.


Enable Microsoft Defender for all current SQL servers (Portal & Terraform)

Enable Microsoft Defender for SQL servers on machines
https://learn.microsoft.com/en-us/azure/defender-for-cloud/defender-for-sql-usage

@jeremy-page Closing as non-relevant since RS does not use MS SQL Server.


[ML] Bug fix for enable_no_public_ip for Compute

Description
Fixes a bug where enable_node_public_ip did not return a proper value from the Rest API.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

API change check
API changes are not detected in this pull request.


Retrieve spans for all values when parsing with Table::from_str.

I have no prior expectation regarding the content of my TOML file, but I'm still willing to screen it and analyse the various values within it.
As a consequence, I am not using the following pattern to parse the file:
#[derive(Deserialize)]
struct MyType {
    // .. because I could not decide what to write here.
}

let my_value: MyType = toml::from_str(input)?;

Instead, all I need to do is to parse the file into a plain toml::Table, and then iterate over it. But then I cannot retrieve the spans for the parsed values:
// Parse my file, without prior expectation regarding the content.
let table = Table::from_str(input)?;
// The file is valid TOML format. Good. Now start the analysis.
for (id, value) in table {
    // The values spans seem lost here: how can I raise/log/display/record information
    // regarding the values I'm analysing then?
}

Is there another way to use Table::from_str so that the values yielded still contain span information? Or is there anything like a toml::SpannedTable? Would it be something that toml-rs would be willing to feature?

At the moment, there is not a SpannedTable.  I believe it would effectively require us to duplicate all of Table and all the related types which would be quite the under taking and I would prefer not to take that on.  If people have a proposal for how to do this in a way that doesn't bloat the API or make it harder to use, I would be open to exploring it.
A lot of Tables design though is either for

Supporting a variety of use cases
Reduced compatibility guarantees
Performance

You could make your own SpannedTable that is specialized to your use case and it should be relatively trivial to write (e.g. relying on the deriving Serialize and Deserialize)

Closing in favor of people doing this on their side or #571


typo: dependending -> depending

Docs Build status updates of commit a65b759:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/building-blocks/extending-templates/conditional-deploy.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Error：(webloop:3579): Gtk-WARNING **: cannot open display:

OS Version：CentOS-7-x86_64-Minimal-1611
WebLoop has been installed successfully.
When I run my own program. I get the following error message.
(webloop:3579): Gtk-WARNING **: cannot open display:

From what I know of Gtk+, Webloop is probably only headless in the sense that it doesn't open a window. It still needs an X server.


MTL-1476 s/cray-(pre-install-toolkit)/$1/

Description

The new pre-install-toolkit ISO from node-images uses the "pre-install-toolkit" name, and now matches the same name format as the NCN image files.
Checklist Before Merging

[ ] If I added any command snippets, the steps they belong to follow the prompt conventions (see example).
[ ] If I added a new directory, I also updated .github/CODEOWNERS with the corresponding team in Cray-HPE.
[ ] My commits or Pull-Request Title contain my JIRA information, or I do not have a JIRA.

/backport main


[timeseries table] use verbose date in tooltip by default

When I updated the time series date formatting I failed to use the verbose form in the time series table tooltip.
@john-bodley

I really don't understand the branch conflict 🤔

Codecov Report

Merging #5263 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master    #5263   +/-   ##
=======================================
  Coverage   63.28%   63.28%
=======================================
  Files         259      259
  Lines       19689    19689
  Branches     1968     1968
=======================================
  Hits        12461    12461
  Misses       7219     7219
  Partials        9        9

Impacted Files
Coverage Δ

superset/assets/src/modules/dates.js
85.91% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


add a lexer for the Kotlin programming language

This patch adds support for the Kotlin programming language
http://confluence.jetbrains.net/display/Kotlin/

Sorry, but this isn't the main pygments repo. So we aren't excepting custom lexers.
The official repo is here: https://bitbucket.org/birkenfeld/pygments-main/pull-requests


compare local CID to ipfs CID

NFT collection creators can upload thousands of metadata and image files. Accidentally they may miss uploading 1 file or image which results in a poor user experience.
If we can locally generate the CID before uploading, and compare to the CID produced after uploading, this can help alert the creator to a potential mistake. CID is immutable unless pointing to IPNS which is out of scope for this issue. This can also be addressed by allowing creator to update tokenUri and later locking it.
CID is a hash produced from the file content of the folder.
Generate CID for nft.storage and pinata, compare to resulting CID

great Idea I also started to work on a metadata checker running backend, submit the base cid and it will go through all metadata and images to search everything is fine.

closed for a new repo that checks metadata and images


Add donation/sponsoring option

Hi, I used this template for my bachelor thesis and many many other things, I'd be happy to donate some money. Is there an option for that?

Currently, there is no option for sponsoring. I have to think about adding such an option because sponsoring may put pressure on me to maintain the project and implement features. Nonetheless, thank you for considering a donation!


CELO was not transfered after Withdrawing. Took longer than 3 days.

Package
Unstake
What wallet app are you using to connect?
Celo Terminal
Browser
Chrome
Describe the bug
I recently made a test Withdrawal transaction after having issues signing the tx. . After 16 days the CELO I was hoping to receive hadn't been transferred despite a successful Withdraw transaction. I hadn't connected my wallet to stCelo during those 16 days. I did today and stCelo showed me the Withdrawal was still in process, see Image 1. Five minutes later I got the transfer of CELO.  This might just be a confusing UX flow. However, I have seen reports of issues that might be happening for the same reason, see Image 2. It might be worth letting people know they have to connect their wallets again after 3 days to receive their token if this is the case or get rid of the reason why this happens.
Image 1

Image 2


Adding BanMenu UI & adding functions+data models to the window code

New BanMenu UI
This ban menu UI aims to allow the admin the ability to open a menu using the command ":banmenu" this will then open a menu with 3 tabs which are:

Server ban
Perm ban
Time ban

New functions & data models to window code
While making this I've added three things that I've used in making my ban menu, the following items I've added are:
Data Model(s):

NoDrag

Function(s):

:SetMinSize()
:SetMaxSize()

The following pictures shall now help you understand them:

Use cases for both of them are shown in the BanMenu.lua module

Ur lint failed

@Dimenpsyonal Fixed it

@Dimenpsyonal what

@Dimenpsyonal what

NO cPCALL!!!!

@Dimenpsyonal didn't even mean to add it


Checkbox: Home after Job Complete.

nt

The default value in settings should be added to the JobInfo dialog. So that the homing could be turned on and off on a per-project way without much issue.


FutureWarning: '+init=:' syntax is deprecated. ':' is the preferred initialization method. When making the change, be mindful of axis order changes: https://pyproj4.github.io/pyproj/stable/gotchas.html#axis-order-changes-in-proj-6   projstring = _prepare_from_string(" ".join((projstring, projkwargs))

Code Sample, a copy-pastable example if possible
A "Minimal, Complete and Verifiable Example" will make it much easier for maintainers to help you:
http://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports
# Your code here

Problem description
[this should explain why the current behavior is a problem and why the expected output is a better solution.]
Expected Output
Environment Information

Output from: pyproj -v

Output from: python -m pyproj -v

Output from: python -c "import pyproj; pyproj.show_versions()"

pyproj version (python -c "import pyproj; print(pyproj.__version__)")
PROJ version (python -c "import pyproj; print(pyproj.proj_version_str)")
PROJ data directory (python -c "import pyproj; print(pyproj.datadir.get_data_dir())")
Python version (python -c "import sys; print(sys.version.replace('\n', ' '))")
Operation System Information (python -c "import platform; print(platform.platform())")

Installation method

conda, pip wheel, from source, etc...

Conda environment information (if you installed with conda):

Environment (conda list):

$ conda list proj

Details about  conda and system ( conda info ):

$ conda info

Not enough information. Closing soon if clarity is not added to this issue.

After the Execution of the complete code, then the following message came in the terminal in vs code

This is the desired behavior. Please read: https://pyproj4.github.io/pyproj/stable/gotchas.html#axis-order-changes-in-proj-6 for how to update.

Essentially replace +init=epsg:4326 with EPSG:4326 and be careful of axis order changes (#538).


withConfig and config concretization do not work correctly together?

The following dont build:
$ cat test.k
module TEST
  imports INT
  imports BOOL

  syntax KItem ::= foo(Int) [withConfig, function]
  configuration <k> $PGM:K </k>
                <buzz>
                  <bar> 0 </bar>
                </buzz>

  rule [[ foo(I:Int) => true ]]
       <bar> I </bar>
  rule foo(_) => false [owise]
endmodule
$ opam config exec -- make
/home/njr/co/github.com/kframework/k5/k-distribution/bin/kompile  --backend ocaml  test.k -d .
[Error] Compiler: Expected to find sort BarCell in the children of cell with
klabel <generatedTop>
  while executing phase "concretizing configuration" on sentence at
	Source(/home/njr/co/github.com/kframework/k5/k-distribution/tests/regression-new/withConfig/./test.k)
	Location(11,8,12,22)

Changing the rule as follows fixes it:
  rule [[ foo(I:Int) => true ]]
       <buzz>
         <bar> I </bar>
       </buzz>

I have traced this problem down to a failure of SortCells to deal appropriately with #as patterns. Will hopefully have a fix out very soon.


Failed to build Thread Border Router with IAR toolchain

Thread build with IAR toolchain are failing with the following error:
Link: nanostack-border-router
Error[Lp015]: section placement failure: overcommitted content in
[0x20000000-0x20027fff]
[ERROR] Error[Lp015]: section placement failure: overcommitted content in
[0x20000000-0x20027fff]
[mbed] ERROR: "/usr/bin/python" returned error code 1.
[mbed] ERROR: Command "/usr/bin/python -u /builds/ws/rder-router_PR-108-XRRBN26HSGCL52SJFJ2ATFT3TPWRV/nanostack-border-router/mbed-os/tools/make.py -t IAR -m K64F --source . --build out/THREAD/K64F/IAR/ --app-config ./configs/Thread_Atmel_RF.json" in "/builds/ws/rder-router_PR-108-XRRBN26HSGCL52SJFJ2ATFT3TPWRV/nanostack-border-router"

Note that we can only get away with this because this app removed from mbed OS PR morph builds during 5.9 merge.

Study whether mbed-mesh-api.use-malloc-for-heap can be used to fix this.
https://os-doc-builder.test.mbed.com/docs/development/reference/configuration-mesh.html

ARM Internal Ref: IOTTHD-2590

PR https://github.com/ARMmbed/nanostack-border-router/pull/110 is using mbed-mesh-api.use-malloc-for-heap and it seems to work OK.
That PR will also change EMAC back to ETH due some stability/memory issues. It will break NUCLEO_F429ZI builds.

PR https://github.com/ARMmbed/nanostack-border-router/pull/110 merged to mbed-os-5.9.0-oob branch. Thread commissioning tested manually with these changes and mbed-os-example-mesh-minimal.
Closing issue. A new issue will be created for failing NUCLEO_F429ZI builds.


fix:448 Addition of video links

This PR is for adding video links for the template fixing #448

@balajiss2 Please remove &t=38s from the links.


Improve UX by adding more visual feedback

The user needs more visual feedback when using the app. Like when something goes wrong, or when something works. Even UI hints helps.
I had some issues with the app and I didn't even know what happened.
I'll open a PR for this :wink:

Hi @diegogurpegui , actually we have an issue opened for a drastic change on the UI https://github.com/KoalaSat/nostros/issues/69  so this looks like the right moment to propose and discuss about this topic

Saw that issue yesterday and I really liked the new proposed branding. Once it's done it'll be worth to review this usability considerations.

Hi, sorry, I completely forgot to share my progress with the design here. I leave you a public link to Figma with the design, all kind of critics and feedback are more than welcome, although I'm still working on it.
https://www.figma.com/file/vEwMCu1AAXrdqvXEbcYJ8b/Nostros-(Public)?node-id=0%3A1&t=ii4lqRLHpC1dADRG-1

Looking into it, looking great so far!
BTW, I believe this link should be in the issue #69 :stuck_out_tongue:

Hey @diegogurpegui we have the UI already implemented! did you take a look? any feedback regarding this topic?

I did see visual feedback in the buttons when sending a message :+1: . Didn't look at all cases (the error cases are less frequent to test).


Performance issu in the definition of calculate_type_to_num_incoming_edges, tf2_gnn/layers/message_passing/message_passing.py(P1))

Hello, I found a performance issue in the definition of calculate_type_to_num_incoming_edges, tf2_gnn/layers/message_passing/message_passing.py, tf.shape(node_embeddings)[0] will be calculated repeatedly during the program execution, resulting in reduced efficiency. I think it should be created before the loop.
Looking forward to your reply. Btw, I am very glad to create a PR to fix it if you are too busy.

This is not a noticable performance issue anyway, and should be taken care of by the TF2 graph compilation.


Support advanced syntax in SERP

Task/Issue URL: https://app.asana.com/0/414730916066338/1206153302008458/f
Description
This PR adds support for advanced syntax in SERP
Steps to test this PR

[ ] In the url bar type filetype:pdf, search should return different pdfs files
[ ] In the url bar type inurl:cat, search should return urls which contain the word cat
[ ] In the url bar type intitle:cat, search should return websites which title contains the word cat
[ ] None of the above should throw an Unable to open this type of link error in a toast

Current dependencies on/for this PR:

develop

PR #4009   👈

This stack of pull requests is managed by Graphite.


Incorrect cleanup instruction in macOS kubectl installation guide

In Step 6 of https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/#install-kubectl-binary-with-curl-on-macos,
The command says to delete kubectl along with kubectl.sha256 file, but kubectl is already moved in step 4.
The command needs to be
rm kubectl.sha256
instead of
rm kubectl kubectl.sha256

/retitle Incorrect cleanup instruction in macOS kubectl installation guide
/kind bug

I can help with this. Worked on this files before too.
/assign

@dipesh-rawat i submited PR https://github.com/kubernetes/website/pull/44043 pelase review when got time. Thanks!


Where is the history file?

Thank you for the useful code. Fakegato is reporting temperature to Eve and it shows up in the Eve graphing. But I can't see any evidence of the history file.
log snippet (cleaned up removing color code, date)
Fakegato-storage AddWriter : undefined
Temperature Loading...
Temperature Fakegato-storage read FS file: /history/aqua_undefined_persist.json
Temperature Fakegato-timer Subscription : undefined
Temperature Registring Events undefined

code snippet
this.loggingService = new FakeGatoHistoryService("weather", this, {storage:'fs',path:'/history'})
This is in an oznu/homebridge container with root access in the container and I tested for perms in /history. Any ideas for debugging? Is that empty normal for the AddWriter?
P.S. "Registring" is misspelled - should be "Registering"

Apparently you did not set the AccessoryName properly, hence the "undefined". I'm not sure if this will also interfere with the creation of the persist file.

You're right, a space. I should've thought of that.


All sensors are unavailable

Thanks for this project, (I've been waiting for controller integration).
Installation went smoothly, maybe there are not discovery implemented? as there were with charger (it did detect correct serial immediately). But nevertheless I inserted the serial of my controller and that's basically all I did.
But all sensors show unavailable. I have installed mosquitto mqtt which seems to work with go-e charger mqtt integration. But this one doesn't seem to be able to fetch any information. I've debugged the mosquitto (via listening traffic). Both of the go-e devices seem to transmit nicely, at least I can see values scrolling from charger and controller.
Any hints how to debug?
I am using home-assistant docker container and separate container for mqtt. go-e charger mqtt integration works well.

Don't know what was the issue, but after couple of wipes for the container, values for sensors appeared.


Backoff Retry Decider

It would be nice to pass in a retry decider callback (similar to Guzzle) that allows backoff to determine whether it should continue retrying or not.

I would definitely be useful to have a callback before every retry, because at the moment it's not possible to interrupt it and so it's not usable in a command line script.

Custom decider is now supported, see the bottom of the readme:
https://github.com/stechstudio/backoff#custom-retry-decider
You can now cause Backoff to retry as long as you want, or interrupt after any attempt.
Thanks @bubba-h57 for the addition.


Course page navigation

Description of changes

Makes the chapters collapsible for students. By default only the currently suggested chapters are extended. Once the backend calculates chapter/section/stage progress, we could put old completed chapters behind some "show completed" button. But it would require too much workaround right now.
I also fixed up the work path display a bit and  refactored the edit chapter modal to use the new dialog base, as I its behavior was a bit weird.
In doing so, I changed the chapter date logic to enforce start dates to be in order, but they can be before the previous end date.
Closes #124
How has this been tested?
Please describe the test strategy you followed.

[ ] automated unit test
[ ] automated integration test
[ ] automated acceptance test
[ ] manual, exploratory test

In case of manual test, please document the test well including a set of user instructions and prerequisites. Each including an action, it's result, and where appropriate a screenshot.
Checklist before requesting a review

[x] My code follows the coding guidelines of this project
[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[x] My code fulfilles all acceptance criteria
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I have made corresponding changes to the documentation
[ ] I have added explanation of architectural decision and rationales to wiki/adr
[ ] I have updated the changes in the ticket description

Checklist for reviewer

[ ] The code works and does not throw errors
[ ] The code is easy to understand and there are no confusing parts
[ ] The code follows the coding guidelines of this project
[ ] The code change accomplishes what it is supposed to do
[ ] I cannot think of any use case in which the code does not behave as intended
[ ] The added and existing tests reasonably cover the code change
[ ] I cannot think of any test cases, input or edge cases that should be tested in addition
[ ] Description of the change is included in the documentation

Sieht gut aus, aber was meinst du damit:

I also fixed up the work path display a bit and refactored the edit chapter modal to use the new dialog base, as I its behavior was a bit weird.
Sehe es im Code mit EditChapterButton.tsx, aber merke es nicht auf der Seite. Deswegen die Frage, merke keinen Unterschied zu davor wenn ich ein Chapter verändern will.

Visuell sollte es keinen Unterschied geben (abgesehen von den Date Constraints). Verwendet jetzt nur im Hintergrund den DialogBase Component.


Add Support for Azure VirtualWAN

Terraform Resources:
azurerm_virtual_wan
azurerm_virtual_hub
Pricing Information:
https://azure.microsoft.com/en-us/pricing/details/virtual-wan/
azurerm_virtual_hub
Terraform resource: https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/virtual_hub
Cost components:

Deployment - unit hours
Data processing - unit GB

Notes:

If type is Basic then we should treat it as a free resource

Usage file:
  azurerm_virtual_hub.my_virtual_hub:
    monthly_data_processed_gb # Monthly data processed by the Virtual WAN Hub in GB

azurerm_vpn_gateway
Cost components:

S2S scale units - unit scale units. Quantity comes from scale_units on Terraform resource.

azurerm_point_to_site_vpn_gateway
Cost components:

P2S scale units - unit scale units. Quantity comes from scale_units on Terraform resource.
P2S connections - unit connections. Hourly quantity is set to 0. Usage parameter monthly_p2s_connections_hrs overrides this.

azurerm_express_route_gateway
Cost components:

ER scale units - unit scale units. Quantity comes from scale_units on Terraform resource.

azurerm_point_to_site_vpn_gateway, azurerm_express_route_gateway
Note:

This resource has the prices from https://azure.microsoft.com/en-us/pricing/details/virtual-wan/, not https://azure.microsoft.com/en-gb/pricing/details/expressroute/. It seems the skus for the ExpressRoute Gateway resource there are handled by this resource https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/virtual_network_gateway

azurerm_vpn_gateway_connection
Cost components:

S2S connections - unit hours. Hourly quantity is set to 1.

azurerm_express_route_connection
Cost components:

ER connections - unit hours. Hourly quantity is set to 1.

Usage file:

No usage file parameters needed

Free resources

azure_virtual_wan - since all the costs are covered in the azure_virtual_hub resource.

Unsupported:

All remaining azurerm_express_route_* - This has other prices that apply as well. When we add this resource we can also add the "Connection" and "Scale unit" costs.
NVA Infrastructure Unit and Routing Infrastructure Unit - I can't find any Terraform resources that map to these.

I see as well as deployment and data processing prices, there's also prices for connections and scale units. I'm not familiar with these Azure resources, so here's a suggestion for how we could break this down. @Theragus please add any suggestions you have for how to match these to the Terraform resources.
azurerm_virtual_hub
Terraform resource: https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/virtual_hub
Cost components:

Deployment - unit hours
Data processing - unit GB

Notes:

If type is Basic then we should treat it as a free resource

Usage file:
  azurerm_virtual_hub.my_virtual_hub:
    monthly_data_processed_gb # Monthly data processed by the Virtual WAN Hub in GB

azurerm_vpn_gateway, azurerm_point_to_site_vpn_gateway
Cost components:

Scale units - unit scale units

Notes:

There's also azurerm_virtual_network_gateway but confusingly this seems to be for these prices

Usage file:

No usage file parameters needed

azurerm_vpn_gateway_connection
Cost components:

Connection (point-to-site/site-to-site) - unit hours

Notes:

Cost depends on if the vpn_gateway_id relates to a azurerm_vpn_gateway (site-to-site) or a azurerm_point_to_site_vpn_gateway (point-to-site)

Usage file:

No usage file parameters needed

Free resources

azure_virtual_wan - since all the costs are covered in the azure_virtual_hub resource.

Unsupported:

azurerm_express_route_* - This has other prices that apply as well. When we add this resource we can also add the "Connection" and "Scale unit" costs.
NVA Infrastructure Unit and Routing Infrastructure Unit - I can't find any Terraform resources that map to these.

Hi @aliscott, sorry for the late reply, I already read your comment a couple of weeks ago, but somehow it went completely over my head that feedback was requested here :/
I now managed to test this extensively and look into a deployment that I already set up months ago.
azurerm_virtual_hub
looks perfectly fine to me, I had to do a little bit of digging inside the MS docs to confirm that basic SKU incurs no charges since it's not mentioned on the pricing page or in the pricing calculator. I found the only information here https://docs.microsoft.com/en-us/azure/virtual-wan/pricing-concepts#fee
azurerm_vpn_gateway, azurerm_point_to_site_vpn_gateway, azurerm_express_route_connection
This is now where stuff starts to get REALLY tricky. Basically, Virtual WAN has 3 distinct connection types.

Site-to-Site VPN connections (azurerm_vpn_gateway, azurerm_vpn_gateway_connection, azurerm_vpn_site)

Point-to-Site VPN connections (azurerm_vpn_server_configuration, azurerm_point_to_site_vpn_gateway)

ExpressRoute connections (azurerm_express_route_connection, azurerm_express_route_gateway, azurerm_express_route_port)

I wrote the corresponding terraform resources to every connection type.
Notice that azurerm_vpn_server_configuration has nothing to do with Site-to-Site VPN, as well as azurerm_express_route_* having nothing to do with azurerm_express_route_circuit_*, same goes for azurerm_virtual_network_gateway having nothing to do with azurerm_vpn_gateway
MS is incurring charges for all 3 of these connection types. But, luckily for us, neither is the same as the other!
They all incur charges after connection units (number of S2S, P2S, and ER connections) as well as so-called scaling units, which determine the amount of bandwidth available. P2S and S2S scaling units scale in increment of 500 Mbps, while ER scales in increment of 2 Gbps.
I now tried to tie the specific resources to the incurred charges below, so I hope this helps in understanding where what is billed. (https://azure.microsoft.com/en-us/pricing/details/virtual-wan/)
azurerm_vpn_gateway = S2S scaling unit
azurerm_vpn_gateway_connection = S2S connection unit
azurerm_point_to_site_vpn_gateway = P2S scaling unit
azurerm_express_route_gateway = ER scaling unit
azurerm_express_route_connection = ER connection unit
Note: P2S has no fixed connection units since it varies based on how many users are connecting to the VPN Gateway.
There's also the Secured Virtual WAN with Firewalls pricing, but since the azurerm provider doesn't support it anyway (for now currently) it makes no sense thinking about that.
Also, this was already long enough to write so I think there's enough to grasp here...

Update for visibility - I made a start on this last weekend and planned to have it in PR around now, but work has been hectic. I'm hopeful to get some time to work on it tomorrow eve.

@hugorut heads-up that @vdmgolub is working on https://github.com/infracost/infracost/issues/909 and I think he's putting in the scaffolding for Azure resources to use the new method of adding resources as documented in the contributing guide. You might want to wait for him to send his PR to avoid conflicts 🤷

lads, @aliscott/ @alikhajeh1 I've failed miserably at making a dent in this issue. I just haven't found the time after work to give it bandwidth, so I only ever reached the scoping stages. I'm off on holiday tomorrow and won't be back in action until the 22nd. So I'm going to unassign myself and put it back on the stack in case anyone else wants to start it whilst I'm away. I can pick it up again on the 22nd If no-one else has taken a punt on it.

🙌  thanks Hugo, have a good holiday!

FYI I've updated the description of this issue based on the feedback from @Theragus.

@alikhajeh1 alrighty - back from hols and now have some bandwidth. All good if I pick this up again?

Sure - thanks! Let us know if you need test Azure creds to run TF plan etc.

@Theragus just FYI that this will be released in Infracost CLI v0.9.15 by next week.

@Theragus this has now been released in v0.9.5!


Task - batch request experience skills on experience step

Resolves #4660
Notes:

I feel like the current authorization could be improved, let me know if you have any suggestions.

@tristan-orourke @Khristophor I think I covered everything mentioned above, let me know If I missed something.


Downloading report before analyses is performed raises error and hangs the app.

The button should be disabled until there is sufficient info.

processing file: report.Rmd
  |.......                                                          |  11%
   inline R code fragments

  |..............                                                   |  22%
label: unnamed-chunk-1 (with options)
List of 4
 $ echo   : logi FALSE
 $ warning: logi FALSE
 $ error  : logi FALSE
 $ message: logi FALSE

  |......................                                           |  33%
   inline R code fragments

  |.............................                                    |  44%
label: unnamed-chunk-2 (with options)
List of 3
 $ echo   : logi FALSE
 $ warning: logi FALSE
 $ message: logi FALSE

  |....................................                             |  56%
  ordinary text without R code

  |...........................................                      |  67%
label: unnamed-chunk-3 (with options)
List of 4
 $ echo   : logi FALSE
 $ results: chr "asis"
 $ warning: logi FALSE
 $ message: logi FALSE

  |...................................................              |  78%
  ordinary text without R code

  |..........................................................       |  89%
label: unnamed-chunk-4 (with options)
List of 3
 $ echo   : logi FALSE
 $ message: logi FALSE
 $ warning: logi FALSE

  |.................................................................| 100%
   inline R code fragments

output file: report.md

Warning in file.rename(out, file) :
  cannot rename file '_analysis_report_2015-07-21.html' to '/tmp/RtmpXJMAG9/file31004bc0aff0.html', reason 'Invalid cross-device link'
Error opening file: 2
Error reading: 9

The button could be disabled with shinyJS.

You could also make sure the button doesn't appear until all the required data is there. Either via conditionalPanel on the UI side or move the call to downloadButton from the UI side to the server side and control when it appears using renderUI. That way you don't have to add yet another dependency.
You could even have a replacement button that brings up a dialogue box letting them know that they need to finish the analysis (and what they need to finish) before they can download the report. Then once there is sufficient data, replace the info button with a download button.


TestBug

asdfasdf
[--- Commented from Asana.com
#commenter Leo Winkler
---[aa]

neuer kommentar
[--- Commented from Asana.com
#commenter Leo Winkler
---[aa]

rückantwort
------ Originalnachricht ------
Von: "kjumedia"<EMAIL_ADDRESS>An: "atkjumedia/dcsync"<EMAIL_ADDRESS>Cc: "leowin"<EMAIL_ADDRESS>"Assign"<EMAIL_ADDRESS>Gesendet: 12.08.2016 10:08:26
Betreff: Re: [atkjumedia/dcsync] TestBug (#9)

neuer kommentar
[--- Commented from Asana.com
#commenter Leo Winkler
---[aa]
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub, or mute the thread.


Emulator Station Crashed!

Having issues running ES (Retropie) on a Raspberry Pi-400. I get a dialog box that says "Emulator Station Crashed" just after the ROMS finishes loading and the "done" message appears. The happens on 3 different SD cards. Weird thing is, it doesn't happen all the time. If I keep trying to reload emulationstation from the command line, it eventually works.
I can get it to successfully load several times in a row, and it crashes several times in a row. No real pattern.
I looked on the Retropi forums and see other people have had the same problem, but nothing mentions an explanation or a fix.

@johnbtz I have the same problem with Emulation Station! Sometimes it crashes and sometimes it doesn't. Have you been able to fix the problem or have any idea what could be the issue?

Sorry, I never found a solution. I had to put the arcade project on the back burner for a while, but I'll keep looking when I gt back to it. If I find a solution, I'll post it here. FWIW, a number of folks are having this issue from what I read on https://retropie.org.uk/forum/

Thank you for replying! I found a solution to my problem, it turns out it had something to do with the encoder of the controllers. I didn't expect the controllers to be an issue, but somehow they made Emulation Station crash. I'll link the video tutorial I followed to fix the problem, it might help :)
https://youtu.be/iAoOUd6rGfc
Before trying it, I recommend disconnecting your controllers from your Raspberry Pi and running Emulation Station a couple of times. If it keeps crashing, it's probably another thing that is causing the issue.

Can you resend the link, looks like it’s corrupted somehow.
Thanks!!
From: superaljos @.>
Reply-To: Aloshi/EmulationStation @.>
Date: Saturday, April 9, 2022 at 12:13 PM
To: Aloshi/EmulationStation @.>
Cc: johnbtz @.>, Mention @.***>
Subject: Re: [Aloshi/EmulationStation] Emulator Station Crashed! (Issue #862)
Thank you for replying! I found a solution to my problem, it turns out it had something to do with the encoder of the controllers. I didn't expect the controllers to be an issue, but somehow they made Emulation Station crash. I'll link the video tutorial I followed to fix the problem, it might help :)
https://youtu.be/iAoOUd6rGfc
Before trying it, I recommend disconnecting your controllers from your Raspberry Pi and running Emulation Station a couple of times. If it keeps crashing, it's probably another thing that is causing the issue.
—
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAloshi%2FEmulationStation%2Fissues%2F862%23issuecomment-1094099128&data=04|01||da457f5629a74328896108da1a549df0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637851247968806354|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=SX8Hxkjl%2FLJC5m1lTm2rGsAjWuJ01pKxIVfPfHmaAII%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FACWXW4CVN2PVWZ2NW5WC3J3VEHCDXANCNFSM5OPIAUDQ&data=04|01||da457f5629a74328896108da1a549df0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637851247968806354|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=qvqYDpGUYGXyT91GR6%2BGggxqDEpa2RAnRybnL4%2B5tg4%3D&reserved=0.
You are receiving this because you were mentioned.Message ID: @.***>

Sure thing here's the link to the YouTube video, hope it works!
https://youtu.be/iAoOUd6rGfc
El jue, 14 abr 2022 a las 13:38, johnbtz @.***>)
escribió:

Can you resend the link, looks like it’s corrupted somehow.
Thanks!!
From: superaljos @.>
Reply-To: Aloshi/EmulationStation @.>
Date: Saturday, April 9, 2022 at 12:13 PM
To: Aloshi/EmulationStation @.>
Cc: johnbtz @.>, Mention @.***>
Subject: Re: [Aloshi/EmulationStation] Emulator Station Crashed! (Issue
#862)
Thank you for replying! I found a solution to my problem, it turns out it
had something to do with the encoder of the controllers. I didn't expect
the controllers to be an issue, but somehow they made Emulation Station
crash. I'll link the video tutorial I followed to fix the problem, it might
help :)
https://youtu.be/iAoOUd6rGfc
Before trying it, I recommend disconnecting your controllers from your
Raspberry Pi and running Emulation Station a couple of times. If it keeps
crashing, it's probably another thing that is causing the issue.
—
Reply to this email directly, view it on GitHub<
https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAloshi%2FEmulationStation%2Fissues%2F862%23issuecomment-1094099128&data=04|01||da457f5629a74328896108da1a549df0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637851247968806354|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=SX8Hxkjl%2FLJC5m1lTm2rGsAjWuJ01pKxIVfPfHmaAII%3D&reserved=0>,
or unsubscribe<
https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FACWXW4CVN2PVWZ2NW5WC3J3VEHCDXANCNFSM5OPIAUDQ&data=04|01||da457f5629a74328896108da1a549df0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637851247968806354|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=qvqYDpGUYGXyT91GR6%2BGggxqDEpa2RAnRybnL4%2B5tg4%3D&reserved=0>.
You are receiving this because you were mentioned.Message ID: @.***>
—
Reply to this email directly, view it on GitHub
https://github.com/Aloshi/EmulationStation/issues/862#issuecomment-1099560238,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYN2M4KIL6TIG726ZD5SSBLVFBX3PANCNFSM5OPIAUDQ
.
You are receiving this because you commented.Message ID:
@.***>

Much appreciated. Glad to have found your site. I have subscribed.
From: superaljos @.>
Reply-To: Aloshi/EmulationStation @.>
Date: Wednesday, April 20, 2022 at 1:48 PM
To: Aloshi/EmulationStation @.>
Cc: johnbtz @.>, Mention @.***>
Subject: Re: [Aloshi/EmulationStation] Emulator Station Crashed! (Issue #862)
Sure thing here's the link to the YouTube video, hope it works!
https://youtu.be/iAoOUd6rGfc
El jue, 14 abr 2022 a las 13:38, johnbtz @.***>)
escribió:

Can you resend the link, looks like it’s corrupted somehow.
Thanks!!
From: superaljos @.>
Reply-To: Aloshi/EmulationStation @.>
Date: Saturday, April 9, 2022 at 12:13 PM
To: Aloshi/EmulationStation @.>
Cc: johnbtz @.>, Mention @.***>
Subject: Re: [Aloshi/EmulationStation] Emulator Station Crashed! (Issue
#862)
Thank you for replying! I found a solution to my problem, it turns out it
had something to do with the encoder of the controllers. I didn't expect
the controllers to be an issue, but somehow they made Emulation Station
crash. I'll link the video tutorial I followed to fix the problem, it might
help :)
https://youtu.be/iAoOUd6rGfc
Before trying it, I recommend disconnecting your controllers from your
Raspberry Pi and running Emulation Station a couple of times. If it keeps
crashing, it's probably another thing that is causing the issue.
—
Reply to this email directly, view it on GitHub<
https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAloshi%2FEmulationStation%2Fissues%2F862%23issuecomment-1094099128&data=04|01||da457f5629a74328896108da1a549df0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637851247968806354|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=SX8Hxkjl%2FLJC5m1lTm2rGsAjWuJ01pKxIVfPfHmaAII%3D&reserved=0>,
or unsubscribe<
https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FACWXW4CVN2PVWZ2NW5WC3J3VEHCDXANCNFSM5OPIAUDQ&data=04|01||da457f5629a74328896108da1a549df0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637851247968806354|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=qvqYDpGUYGXyT91GR6%2BGggxqDEpa2RAnRybnL4%2B5tg4%3D&reserved=0>.
You are receiving this because you were mentioned.Message ID: @.***>
—
Reply to this email directly, view it on GitHub
https://github.com/Aloshi/EmulationStation/issues/862#issuecomment-1099560238,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYN2M4KIL6TIG726ZD5SSBLVFBX3PANCNFSM5OPIAUDQ
.
You are receiving this because you commented.Message ID:
@.***>

—
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAloshi%2FEmulationStation%2Fissues%2F862%23issuecomment-1104394201&data=05|01||d4aa002bd2764e7b573a08da2306bab1|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637860809054612486|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=cAnMZvmiSGTrgfx%2Fbw4C2ENnhbG6yxc5s0KqpWBRIR4%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FACWXW4CELMC4PTTLTF5LHI3VGBNQNANCNFSM5OPIAUDQ&data=05|01||d4aa002bd2764e7b573a08da2306bab1|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637860809054612486|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=uV1xif0DliOy%2F%2F0kKNtJyXbjGVFz8pYvjzcavtBhhrA%3D&reserved=0.
You are receiving this because you were mentioned.Message ID: @.***>


Update quickstart-with-nextjs.md

corrected typo

Fixes #xyz

Main Issue: #xyz
Motivation

Modifications

Verifying this change

[x] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Documentation

[x] doc
[ ] doc-required
[ ] doc-not-needed
[ ] doc-complete

Matching PR in forked repository

Thanks for catching, @gkteco


Separate definitions file for T3 algorithms

@maumueller T3 algorithms will be tied to certain hardware.  Instead of putting T3 algo definitions in the default algos.yaml, would it be better to put them into a separate one?

Yes, I think that's an excellent idea and we should also use it to separate T1 and T2 implementations :-)

Thanks, closing issue.


Fix HoodieSqlUtils.formatQueryInstant timestamp variable bug

What is the purpose of the pull request
This pull request fix the wrong usage of timestamp variable bug
Brief change log

*change the compare subject from timestamp string to the length of a timestamp *

Verify this pull request
This should be a bug caused by carelessness which would cause format failure.
Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

@hudi-bot run azure

CC @danny0405

Got you


tjbot.js is looking for watson modules in the wrong location

the file node_modules/tjbot/lib/tjbot.js is trying to include Watson modules from:
import AssistantV2 from 'ibm-watson/assistant/v2.js' It appears that there is a missing directory the path (dist). I think it should be: import AssistantV2 from 'ibm-watson/dist/assistant/v2.js' This holds true for all of the watson imports (6).

on further investigation, i think this may be due to the latest version of ibm-watson.  dropping back to a prior version has the modules in the proper location.

This is the version of ibm-watson we're using, which should be latest from when tjbotlib 2.0.0 was released in November.
"ibm-watson": "^5.7.0",

Was there a newer release since then that moved the location of the imports?

This is the version of ibm-watson we're using, which should be latest from when tjbotlib 2.0.0 was released in November.
"ibm-watson": "^5.7.0",

Was there a newer release since then that moved the location of the imports?

Yes, ibm-watson @ 6.0.0 was placing the assistant code a level deeper under dist/assistant/v2.js. I see there is now a 6.0.1 it may have addressed the issue.  I need to verify.  In the mean time, 5.7.0 is working.  I have updated it to try and fix an issue that was, as it turns out, unrelated.  I will close this issue.

Yes, ibm-watson @ 6.0.0 was placing the assistant code a level deeper under dist/assistant/v2.js. I see there is now a 6.0.1 it may have addressed the issue.  I need to verify.  In the mean time, 5.7.0 is working.  I have updated it to try and fix an issue that was, as it turns out, unrelated.  I will close this issue.