[FRID-206] As an inventory engineer, so I can scan newer repos, update LicenseFinder to the latest version from Pivotal and get it working.

As an inventory engineer, so I can scan newer repos, update LicenseFinder to the latest version from Pivotal and get it working.
https://grandrounds.atlassian.net/browse/FRID-206
Mostly the merge from Pivotal, but it took a few commits to get it to scan again.

I'm merging without reviewers because (a) nobody but me has ever touched this code, (b) the reviews have been standing waiting for more than six months, and most importantly (c) this isn't production code and will not be deployed to any production system, so can be merged without review.


Expand Size struct, modify Vector3

TrueCraft.API/Size.cs:

Add operators
Implement IEquatable
Override Object.Equals, .ToString and .GetHashcode

TrueCraft.API/Vector3.cs:

Modify Object.Equals override: Using the is operator is faster than doing (x.GetType() != typeof (y))

Looks good, thanks!


Please merge revision baf00c1 into dev channel

@ricowind @whesse @kasperl
This fixes a bug in the generated code for noSuchMethod in dart2js (issue #23828). This affects a couple unittests that use mocking via mockito. @dgrove can comment more on whether we need this needs to be merged now or if it can wait until the next push to dev.
Commit to cherry-pick: baf00c19199e6739bed804e1f9c022f476c5d75a (I tried and this merged cleanly this morning)

This is not merged by itself, but it is in 1.12.0-dev.4.0 so marking this as fixed


Unicode not working for Python

(Original issue 1529 created by julienmalard on 2019-07-04T06:26:02.506969+00:00)
Pygments does not recognise variable names containing unicode characters as specified by Python’s PEP 3131 https://www.python.org/dev/peps/pep-3131/. This makes colouring of any code that is not written in English (or Malaysian, to be fair) crash.

The Python3 lexer (now default) does support Unicode names.


TypeError: 'Buffer' does not support the buffer interface

When using pypy 3.8 I get the error mentioned in the title. This doesn't seem to happen on pypy 3.9. Do you know what might be going on?
To reproduce, save the following contents as compress.py:
from io import BytesIO
from cramjam import snappy

compressed = snappy.compress_raw(b"123")
BytesIO(compressed)

And then you can use the following Dockerfile:
FROM pypy:3.8-bullseye

RUN pip install cramjam
COPY compress.py /

RUN pypy compress.py

Note: Change the dockerfile to use pypy:3.9-bullseye to see that it works in 3.9

Thanks for the reproducer!
I'll try to have a look this weekend.

Regarding this and the related issue, not ignoring.. just busy. :sweat_smile:

No worries. I completely understand. And I worked around it by just using 3.9.

Came to my attention that pypy3.8 isn't developed any longer and now w/ #144 in, it tests pypy3.9 and 3.10 so this ought to be fixed now in v2.8.2 for the supported pypy versions.


[ISSUE #547]🔧Update automerge.yml

Which Issue(s) This PR Fixes(Closes)

Fixes #547
Brief Description

How Did You Test This Change?

@coderabbitai review Please review this PR.


Distinguish between system space and user-created space during backup

Fixed the problem that the system space is backed up when the specifed space is backed up.

depend https://github.com/vesoft-inc/nebula-common/pull/447

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@monadbobo PTAL the failed test case


Contribute to Language Libraries

Hey, I saw that in en.yaml file and hi.yaml file some keywords/lines are missing.
I think we should modify it for better user experience.
One more thing, I guess Windows platform is no longer supported by Nettacker so we should remove the word 'Windows' in error_platform key.
@Ali-Razmjoo @securestep9
If you found this as a valid issue, then I would like to take up this issue for hi.yaml and en.yaml .

this issue is fixed now, thanks.


Refactoring the codebase and File folder structure for better development nad contribution under React frame work.

The codebase should be refactored and file folder structure must be maintained so that new contributors will not get any isuues while contributing.
More feature should be added :

Loading screen on web page load
Skeleton load animation for the weather card section on clicking button.

Build folder must be added to gitignore file as it should not be uplaoded on the github.

assigning it to you...


SoftReferences not cleared before OOME

Please provide a brief summary of the bug
The JVM throws an OutOfMemoryError without first cleaning reclaimable SoftReferences if it is concurrently doing computations that involve JNI critical regions (subject to multiple attempts wrt to -XX:GCLockerRetryAllocationCount). This seems to break one of the core tenants of SoftReference's JavaDoc:

All soft references to softly-reachable objects are guaranteed to have been cleared before the virtual machine throws an OutOfMemoryError

Did you test with the latest update version?

[X] Yes

Please provide steps to reproduce where possible
https://github.com/devinrsmith/GCLockerTooOftenAllocating
I've tested across the latest 8, 11, 17, and 21 OpenJDKs. Most of the GC collectors I've tried exhibit this bug. It appears that ZGC and Shenandoah do not exhibit this bug.
Expected Results
The small reproducer program should complete successfully when SoftReferences are cleared.
seed=0, totalOutputSize=96107180
seed=1, totalOutputSize=96106767
seed=3, totalOutputSize=96107220
seed=2, totalOutputSize=96107158
Completed, count=15834

(specific values may differ).
Actual Results
[1.242s][warning][gc,alloc] main: Retried waiting for GCLocker too often allocating 524290 words
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
        at java.base/java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:71)
        at java.base/java.nio.ByteBuffer.allocate(ByteBuffer.java:391)
        at io.deephaven.example.GCLockerTooOftenAllocating.main(GCLockerTooOftenAllocating.java:45)

What Java Version are you using?
openjdk 21.0.3 2024-04-16 LTS OpenJDK Runtime Environment Temurin-21.0.3+9 (build 21.0.3+9-LTS) OpenJDK 64-Bit Server VM Temurin-21.0.3+9 (build 21.0.3+9-LTS, mixed mode, sharing)
What is your operating system and platform?
Fedora 39 x86_64. Have also been able to reproduce an OS X aarch64.
How did you install Java?
Downloaded tar.gz for Adoptium LTS. Also able to reproduce using Azul builds installed via dnf/rpm.
Did it work before?
No response
Did you test with other Java versions?
No response
Relevant log output
No response

@devinrsmith Are you able to post your message to https://mail.openjdk.org/mailman/listinfo/hotspot-gc-use - I'm not sure this is the correct interpretation so would like to get the experts to comment there.

Will do shortly, thanks.

https://mail.openjdk.org/pipermail/hotspot-gc-use/2024-May/002938.html for those interested

@karianna It doesn't seem like I've gotten on the radar of anybody from hotspot-gc-use; is there another mailing list that may be more receptive, or other actions I should take to try and elevate this?

@devinrsmith Sorry for the long delay, hotspot-gc-dev is your next best bet!


Document using a lease

I'm attempting to create a lease, make sure it is refreshed and set an event if the lease expires. I don't think the below code is correct but it is what I have so far. There's no documentation on using a lease correctly (yet).

LEASE_TTL = 5

client = Client(host=args.host, port=args.port)
lease  = await client.lease(LEASE_TTL)
lease_dropped = asyncio.Event()

async def hold_lease(lease, lease_dropped_event):
    '''
    Maintain a lease for the duration of the process.
    If the lease is dropped then set the event.
    Run this function in a separate task.
    '''

    while True:
        try:
            await sleep(await lease.remaining_ttl() / 2.0)
            await lease.refresh()
            if await lease.granted_ttl() == 0:
                raise Exception('Lease dropped')
        except:
            lease_dropped.set()
            break

Can anyone provide some feedback on this so I can make sure I don't falsely refresh expired leases?

I would do it like this:

LEASE_TTL = 5

client = Client(host=args.host, port=args.port)
lease  = await client.lease(LEASE_TTL)
lease_dropped = asyncio.Event()

async def hold_lease(lease, lease_dropped_event):
    '''
    Maintain a lease for the duration of the process.
    If the lease is dropped then set the event.
    Run this function in a separate task.
    '''

    try:
        while True:
            result = await client.refresh(lease.id)
            if result.TTL == 0:  # if lease expired
                lease_dropped.set()
                raise Exception('Lease dropped')
            await asyncio.sleep(result.TTL / 2)
    except aetcd.ClientError as e:
        lease_dropped_event.set()
        raise Exception(f'Failed ETCD operation with error: {e!r}')

I think we should implement sort of LeaseRefreshResult and document its atributes, now it just a underlying protobuf response. It is documented here.

Also, maybe it make sense to raise LeaseExpiredError if refresh returned TTL equal to 0.

Also, maybe it make sense to raise LeaseExpiredError if refresh returned TTL equal to 0.

TTL is 0 for non-existent lease_id, too

LeaseExpiredError sounds great. Thanks for the feedback and documentation pointers.

You've used client.refresh_lease(). Now perhaps I didn't look hard enough but I couldn't find that in the reference guide.

We'll fix the docs, thanks for the feedback.


Curve wap-wsg-idm-ecid-wtls7 is incorrect according to WTLS specification

I've been fuzzing EC_POINT_is_on_curve() lately (see #6302) and noticed something strange with one of the WTLS curves. The WTLS specification defines several curves; in particular, in page 86, it defines curve wap-wsg-idm-ecid-wtls7 to be a mere alias of secp160r1. However, for some reason, in OpenSSL this curve is defined to be secp160r2  (link):
    {NID_wap_wsg_idm_ecid_wtls7, &_EC_SECG_PRIME_160R2.h, 0,
     "SECG/WTLS curve over a 160 bit prime field"},

I would make a pull request with the required changes since they seem trivial, but I'm concerned with the implications about interoperability (this seems to happen for at least the last 16 years). In case the problem is confirmed, what would be the best way to proceed?

16 years?  Wow.  At any rate, this is also in 1.0.2 and 1.1.0, so it is not strictly a 1.1.1 issue; removing that milestone.

If this problem has gone unnoticed for 16 years, then it perhaps means that (almost) nobody is using this curve (and perhaps other WTLS curves). Any idea of who may be using it as for 2018?

There is probably no point in fixing this after all these years. The curve should not be used anymore as it is too weak.


Added the dark side post and antonio in people

Added a new post, associated images and a new guest writer

Beautiful, beautiful :) Thank you very much, Antonio.


[WIP] chore: bump to 0.6.0

Codecov Report
Base: 89.44% // Head: 89.56% // Increases project coverage by +0.11% :tada:

Coverage data is based on head (b2be0fa) compared to base (e34996b).
Patch coverage: 96.64% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #167      +/-   ##
==========================================
+ Coverage   89.44%   89.56%   +0.11%
==========================================
  Files          67       69       +2
  Lines        5449     5202     -247
==========================================
- Hits         4874     4659     -215
+ Misses        575      543      -32

Flag
Coverage Δ

unittests
89.56% <96.64%> (+0.11%)
:arrow_up:

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

Impacted Files
Coverage Δ

...orr/skills/fractionalize_deployment_abci/rounds.py
92.14% <88.88%> (+1.14%)
:arrow_up:

...lcollectooorr/skills/elcollectooorr_abci/rounds.py
93.70% <91.60%> (+1.39%)
:arrow_up:

...oorr/tests/test_agents/test_elcollectooorr_abci.py
100.00% <100.00%> (ø)

...t_fractionalize_deployment_abci/test_behaviours.py
100.00% <100.00%> (+3.42%)
:arrow_up:

.../test_fractionalize_deployment_abci/test_rounds.py
100.00% <100.00%> (ø)

...lectooorr/skills/elcollectooorr_abci/behaviours.py
99.82% <100.00%> (-0.01%)
:arrow_down:

...ollectooorr/skills/elcollectooorr_abci/handlers.py
100.00% <100.00%> (ø)

...kills/elcollectooorr_abci/tests/test_behaviours.py
100.00% <100.00%> (+1.47%)
:arrow_up:

...rr/skills/elcollectooorr_abci/tests/test_rounds.py
100.00% <100.00%> (ø)

...skills/fractionalize_deployment_abci/behaviours.py
93.85% <100.00%> (-0.20%)
:arrow_down:

... and 4 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Document eoAPI-k8s validation & verification plan

Part of the EOEPCA building block documentation should be docs on CI / testing / Verification & Validation (V&V).
Ideally this should be maintained in a single place but feature in the EOEPCA building block docs, which should follow https://github.com/EOEPCA/document-template and can be pulled into the EOEPCA main docs site via https://github.com/EOEPCA/docroot.
Docs integration is secondary. First step would be to create the content - what tests (will) exist in eoapi-k8s and how do they run?
Acceptance criteria

[ ] Documented tests and testing procedure (in eoapi-k8s README or so first)

Where to document is not settled yet:

We do not have a template for the V&V plan.
I agree it is a good idea to include it within the main BB doc - but perhaps we need an additional Testing heading under Administration for this.

Our tests will also need to run in the system end-to-end test suite:

Note also, the expectation to contribute to the automated system end-to-end test suite - which has been started at https://github.com/EOEPCA/system-test - currently populated with some example tests for demonstration.
Associated to this there is a github action linked to the deployment - https://github.com/EOEPCA/eoepca-plus/blob/deploy-develop/.github/workflows/run-smoke-tests.yaml - which executes the system test (smoke tests only).

Moving tickets to EOEPCA repos.

https://github.com/EOEPCA/data-access/issues/41


Tensorflow r2.0 will not build successfully on skylake machines

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 18.04
TensorFlow installed from (source or binary): not installed (attempting to build from source)
TensorFlow version: attempting to build from branch r2.0
Python version: 3.7.4
Installed using virtualenv? pip? conda?: Anaconda conda virtual environment
Bazel version (if compiling from source): 0.26.0
GCC/Compiler version (if compiling from source): 7.4.0
CUDA/cuDNN version: CUDA 10, cuDNN 7.6.2
GPU model and memory: NVidia RTX 2080 Ti (MSI Sea Hawk X, 11 GB)

Describe the problem
bazel build is unsuccessful yielding error in tensorflow/lite/experimental/ruy/kernel_avx512.cc
Please see Issue 31187 for background leading to the same bug being resolved on the master branch.  I don't know how they fixed it on master.  The fix needs to be ported from master to r2.0 branch.
Please also note that you can bypass using AVX-512 and get a successful build by changing:
~/tensorflow/tensorflow/lite/experimental/ruy/platform.h
Comment out:
// TODO(b/138433137) Select AVX-512 at runtime rather than via compile options.
// #if defined(AVX512F) && defined(AVX512DQ) && defined(AVX512CD) &&
defined(AVX512BW) && defined(AVX512VL)
// #define RUY_DONOTUSEDIRECTLY_AVX512 1
// #else
#define RUY_DONOTUSEDIRECTLY_AVX512 0
// #endif
Provide the exact sequence of commands / steps that you executed before running into the problem
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
git checkout r2.0
./configure
Accept defaults initially
When asked for CUDA support, type "y"
When asked for TensorRT support, type "y"
When asked for compute capabilities, type 7.0,7.5
Accept defaults thereafter
bazel build --explain=verbose_explanations.txt --verbose_explanations --verbose_failures --subcommands=pretty_print --config=opt --config=cuda --config=v2 --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0" //tensorflow/tools/pip_package:build_pip_package
Any other info / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.
This error does not occur on machines that do not have Skylake support for AVX-512 (I know because I can build it fine on my laptop and other users report this bug is particular to Skylake).
I have attached a dump of the terminal output of the bazel build command (cleaned-capture.txt) and verbose_explanations.txt:
cleaned-capture.txt
verbose_explanations.txt
Full error message:
ERROR: /home/daniel/tensorflow/tensorflow/lite/experimental/ruy/BUILD:271:1: C++ compilation of rule '//tensorflow/lite/experimental/ruy:kernel' failed (Exit 1): crosstool_wrapper_driver_is_not_gcc failed: error executing command
(cd /home/daniel/.cache/bazel/bazel_daniel/79db702fc9f94af7d11e11c5d64854d0/execroot/org_tensorflow &&
exec env -
LD_LIBRARY_PATH=:/usr/local/cuda/extras/CUPTI/lib64:/usr/local/cuda/extras/CUPTI/lib64
PATH=/home/daniel/anaconda3/envs/tfgpu/bin:/home/daniel/anaconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/cuda/bin
PWD=/proc/self/cwd
external/local_config_cuda/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc -MD -MF bazel-out/host/bin/tensorflow/lite/experimental/ruy/objs/kernel/kernel_avx512.pic.d '-frandom-seed=bazel-out/host/bin/tensorflow/lite/experimental/ruy/objs/kernel/kernel_avx512.pic.o' -iquote . -iquote bazel-out/host/bin -iquote external/gemmlowp -iquote bazel-out/host/bin/external/gemmlowp '-std=c++11' -Wno-builtin-macro-redefined '-D__DATE="redacted"' '-D__TIMESTAMP_="redacted"' '-D__TIME__="redacted"' -fPIC -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -Wall -fno-omit-frame-pointer -no-canonical-prefixes -fno-canonical-system-headers -DNDEBUG -g0 -O2 -ffunction-sections -fdata-sections -g0 '-march=native' -g0 -c tensorflow/lite/experimental/ruy/kernel_avx512.cc -o bazel-out/host/bin/tensorflow/lite/experimental/ruy/_objs/kernel/kernel_avx512.pic.o)
Execution platform: @bazel_tools//platforms:host_platform
In file included from tensorflow/lite/experimental/ruy/kernel_avx512.cc:18:0:
./tensorflow/lite/experimental/ruy/kernel.h:613:9: warning: multi-line comment [-Wcomment]
#endif  // (RUY_PLATFORM(NEON_64) || RUY_PLATFORM(NEON_32) ||
^
In file included from external/gemmlowp/fixedpoint/fixedpoint.h:895:0,
from ./tensorflow/lite/experimental/ruy/kernel.h:22,
from tensorflow/lite/experimental/ruy/kernel_avx512.cc:18:
external/gemmlowp/fixedpoint/./fixedpoint_sse.h:43:39: warning: ignoring attributes on template argument ‘__m128i {aka __vector(2) long long int}’ [-Wignored-attributes]
struct FixedPointRawTypeTraits<__m128i> {
^
In file included from tensorflow/lite/experimental/ruy/kernel_avx512.cc:18:0:
./tensorflow/lite/experimental/ruy/kernel.h: In function ‘void ruy::MakeKernelParamsFloat(const ruy::PackedMatrix&, const ruy::PackedMatrix&, const ruy::BasicSpec<float, float>&, int, int, int, int, ruy::Matrix, ruy::KernelParamsFloat<LhsCols, RhsCols>)’:
./tensorflow/lite/experimental/ruy/kernel.h:456:53: warning: typedef ‘using Params = struct ruy::KernelParamsFloat<LhsCols, RhsCols>’ locally defined but not used [-Wunused-local-typedefs]
using Params = KernelParamsFloat<LhsCols, RhsCols>;
^
tensorflow/lite/experimental/ruy/kernel_avx512.cc: In function ‘void ruy::Kernel8bitAvx512(const ruy::KernelParams8bit<16, 16>&)’:
tensorflow/lite/experimental/ruy/kernel_avx512.cc:111:34: error: ‘_mm512_loadu_epi8’ was not declared in this scope
const __m512i lhs_data = _mm512_loadu_epi8(lhs_ptr);
^~~~~~~~~~~~~~~~~
tensorflow/lite/experimental/ruy/kernel_avx512.cc:111:34: note: suggested alternative: ‘_mm512_add_epi8’
const __m512i lhs_data = _mm512_loadu_epi8(lhs_ptr);
^~~~~~~~~~~~~~~~~
_mm512_add_epi8
tensorflow/lite/experimental/ruy/kernel_avx512.cc:161:32: error: ‘_mm512_loadu_epi32’ was not declared in this scope
_mm512_loadu_epi32(&params.lhs_sums[row]));
^~~~~~~~~~~~~~~~~~
tensorflow/lite/experimental/ruy/kernel_avx512.cc:161:32: note: suggested alternative: ‘_mm512_load_epi32’
_mm512_loadu_epi32(&params.lhs_sums[row]));
^~~~~~~~~~~~~~~~~~
_mm512_load_epi32
tensorflow/lite/experimental/ruy/kernel_avx512.cc:170:32: error: ‘_mm512_loadu_epi32’ was not declared in this scope
_mm512_loadu_epi32(&params.rhs_sums[col]));
^~~~~~~~~~~~~~~~~~
tensorflow/lite/experimental/ruy/kernel_avx512.cc:170:32: note: suggested alternative: ‘_mm512_load_epi32’
_mm512_loadu_epi32(&params.rhs_sums[col]));
^~~~~~~~~~~~~~~~~~
_mm512_load_epi32
tensorflow/lite/experimental/ruy/kernel_avx512.cc:277:13: error: ‘_mm_storeu_epi8’ was not declared in this scope
_mm_storeu_epi8(tmp_ptr, _mm512_cvtepi32_epi8(accum_data_v[j]));
^~~~~~~~~~~~~~~
tensorflow/lite/experimental/ruy/kernel_avx512.cc:277:13: note: suggested alternative: ‘_mm_store_epi64’
_mm_storeu_epi8(tmp_ptr, _mm512_cvtepi32_epi8(accum_data_v[j]));
^~~~~~~~~~~~~~~
_mm_store_epi64
tensorflow/lite/experimental/ruy/kernel_avx512.cc:293:13: error: ‘_mm_storeu_epi8’ was not declared in this scope
_mm_storeu_epi8(tmp_ptr, _mm512_cvtepi32_epi8(accum_data_v[j]));
^~~~~~~~~~~~~~~
tensorflow/lite/experimental/ruy/kernel_avx512.cc:293:13: note: suggested alternative: ‘_mm_store_epi64’
_mm_storeu_epi8(tmp_ptr, _mm512_cvtepi32_epi8(accum_data_v[j]));
^~~~~~~~~~~~~~~
_mm_store_epi64
tensorflow/lite/experimental/ruy/kernel_avx512.cc:309:13: error: ‘_mm256_storeu_epi16’ was not declared in this scope
_mm256_storeu_epi16(tmp_ptr,
^~~~~~~~~~~~~~~~~~~
tensorflow/lite/experimental/ruy/kernel_avx512.cc:309:13: note: suggested alternative: ‘_mm256_store_epi64’
_mm256_storeu_epi16(tmp_ptr,
^~~~~~~~~~~~~~~~~~~
_mm256_store_epi64
tensorflow/lite/experimental/ruy/kernel_avx512.cc:326:13: error: ‘_mm512_storeu_epi32’ was not declared in this scope
_mm512_storeu_epi32(tmp_ptr, accum_data_v[j]);
^~~~~~~~~~~~~~~~~~~
tensorflow/lite/experimental/ruy/kernel_avx512.cc:326:13: note: suggested alternative: ‘_mm512_store_epi32’
_mm512_storeu_epi32(tmp_ptr, accum_data_v[j]);
^~~~~~~~~~~~~~~~~~~
_mm512_store_epi32
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 35.925s, Critical Path: 10.04s
INFO: 282 processes: 282 local.
FAILED: Build did NOT complete successfully

This should now be fixed.


POC: Make Observable.scan behave like stdlib scanLeft

My attempt to fix #522. Currently lacks scanTask and Iterant methods, but I want to get some feedback on the approach.
With AsyncSemaphore it turned out to be pretty straightforward conversion (although I only discovered it after 2 somewhat messy attempts :). Some places might benefit from TrampolineEC, but I'm not too sure where it's safe to put it.

@alexandru
I refactored the implementation. It passes tests if both onNext and onComplete use sync... methods (i.e. it's not possible to replace syncFlatMap with flatMap in onNext). So I'm not sure if it's good or just an artifact of how test scheduler is implemented.

notice how this complicates the implementation

Yes. Original scan is 1-to-1 transformation of the original stream, just like map. Emitting additional elements is what makes it more complicated. But it's not too complex, I would say.

lets introduce a scan0 alternative that also streams the first element.

Personally, I don't like scan0 as a name. I think having it as scan (like RxScala) or scanLeft (like standard collections) would improve discoverability. For the latter route, it is possible to deprecate current scan and add an overload that is consistent with collections' and RxScala's one (def scan[U >: T](accumulator: (U, U) ⇒ U): Observable[U]). I still remember having learned Scala collections and RxScala, and then, after switching to Monix, I spent two hours debugging before I realized that initial element is never emitted.
I, too, am not fond of having code broken silently. As a partial solution, it's possible to introduce Scalafix rewrite to help users automatically migrate to another version. This also might make sense for other breaking changes (e.g. add unsafe constructor to TaskSemaphore and rewrite TaskSemaphore() to TaskSemaphore.unsafeCreate(), rewrite all deprecated fork methods, etc.). But there's no good way to avoid breaking things and get what I propose.
I'm totally fine if you decide to leave scan as it is. It's harder for my use case, however, than to just prepend the initial value if initialValue is allowed to have side effects, or for mapEval and mapTask (since initial values for those have to be evaluated once, too). For other way it's always .drop(1) and that's it. Would be nice if we could ask users directly.

@oleg-py Can we add this as a scan0?
I know you don't like it, but I fear breaking people's code silently and we can't do anything to prevent it by keeping the current name; Scalafix is cool, but it's for power users that read release announcements carefully, which I think are a minority; plus I'm pretty sure scan usage is pervasive; I abused scan a lot in my own code at least and given a lot of advice for its usage.

Plus scan0 really isn't terrible. I find it very descriptive, while being still short 🙂

@alexandru it's possible to implement scan0 in terms of existing scan and a few other operators:
Observable.evalOnce(seed).flatMap(s => s +: Observable.scan(s)(op))

Similar implementation is also possible for scanEval0 and scanTask0. If we're not going to remove existing implementations, it probably makes sense to piggy-back on them. WDYT?

👍  sounds good

Cool. I'll put up a new PR soon, then


Is there a finetuned checkpoint available?

Hello! Thank you for your work. Could you please provide the finetuned weights?

Hi @theleokul, I will upload the weights in a few days in the release section of this repo.

@theleokul please see Releases


feat(home): integrate youtube data api to fetch video meta data from a playlist

Your checklist for this pull request
🚨Please review the guidelines for contributing to this repository.

[x] Make sure you are requesting to pull a topic/feature/bugfix branch (right side). Don't request your default branch!
[x] Make sure you are making a pull request against the default branch (left side). Also you should start your branch off default branch.
[x] Check the commit's or even all commits' message styles matches our requested structure.
[x] Check your code additions will fail neither code linting checks nor unit test.
[ ] I have added necessary documentation (if appropriate)

Linked Issues
Fixes #320
Description
Please describe your pull request.
❤Thank you!
Post merge checklist

[x] Follow steps from the guidelines for contributing to this repository.
[ ] If you are a new contributor, ping in the thread and one of the maintainers will add you to all-contributors list.

@rutajdash env keys are used in server side.

@Shurtu-gal please resolve conflicts

Sure


Expose and accept mandate_reference for Transaction and Subscription

Fixes #6
I was not able to add specs because they are failing on master as mentioned in #9

Hi @dsander
During the next couple of weeks we will have an update of the library. Tests, bugs and PRs will be taken into account. Thx for your contribution.


Update virtual repo docs to show required fields

Based on the source it seems some fields are required.

I have read the CLA Document and I hereby sign the CLA

recheckcla


Error when call OVH api to add record

Dear all,
First of all, thanks for all the great work you are doing here !
I'm trying to use DNS-01 challenge with the OVH provider and I have some troubles :
» lego --dns=ovh<EMAIL_ADDRESS>--server=https://acme staging.api.letsencrypt.org/directory --domains=subdomain.domain.com run
2017/02/03 16:39:31 No key found for account<EMAIL_ADDRESS>Generating a curve P384 EC key.
2017/02/03 16:39:31 Saved key to ${CWD}/.lego/accounts/acme-staging.api.letsencrypt.org/system<EMAIL_ADDRESS>2017/02/03 16:39:32 [INFO] acme: Registering account for<EMAIL_ADDRESS>2017/02/03 16:39:32 !!!! HEADS UP !!!!
2017/02/03 16:39:32
		Your account credentials have been saved in your Let's Encrypt
		configuration directory at<EMAIL_ADDRESS>		You should make a secure backup	of this folder now. This
		configuration directory will also contain certificates and
		private keys obtained from Let's Encrypt so making regular
		backups of this folder is ideal.
2017/02/03 16:39:32 Please review the TOS at https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf
2017/02/03 16:39:32 Do you accept the TOS? Y/n
Y
2017/02/03 16:39:51 [INFO][subdomain.domain.com] acme: Obtaining bundled SAN certificate
2017/02/03 16:39:52 [INFO][subdomain.domain.com] acme: Could not find solver for: http-01
2017/02/03 16:39:52 [INFO][subdomain.domain.com] acme: Could not find solver for: tls-sni-01
2017/02/03 16:39:52 [INFO][subdomain.domain.com] acme: Trying to solve DNS-01
Error when call OVH api to add record : "invalid character '<' looking for beginning of value"
2017/02/03 16:39:52 [subdomain.domain.com] Could not obtain certificates
	Error presenting token: invalid character '<' looking for beginning of value

With those 4 variables correctly set :
OVH_ENDPOINT=https://eu.api.ovh.com
OVH_APPLICATION_KEY=
OVH_APPLICATION_SECRET=
OVH_CONSUMER_KEY=

Do you have any idea where this may comes from ?
Thanks a lot !

any news?

Hi,
OVH it's working fine for me using lego, the problem, at least in the @AlbinOS case, is that OVH_ENDPOINT should be using ovh-eu, not the full url, OVH uses that syntax in their API wrappers in different languages and Go isn't an exception.
You can see their example here: https://github.com/ovh/go-ovh#configuration

Mmm... Don't remember everything but I'm embarrassed to have missed that.
Thanks a lot for notifying me @skuda, I'll retry lego + caddy soon !


How is the score calculated?

HI Guillaume,
thanks for the interesting package! One question regarding calculation of the score of the different candidates though: is it correct that you are adding the length of the modified string to the score (https://github.com/GuillaumeLeclerc/number-parsing/blob/master/numberParsing.js#L67)? What is the rationale behind that?

Hello,
I'm not 100% sure since it was a long time ago but if my memory is correct is that I wanted to prioritize formats that match more of the input.
Example:
Let's say you have 120,234.25, you would have two formats that parse this:

One with , as thousands separator
One with , as decimal separator

Obviously in this case it's better to parse it as 120234.25 rather than 120.234.
Hope it helps


Make value of the implicit class private

Since circe has dropped support for scala 2.10, there is no reason to use public val's in AnyVal implicit classes.
This should fix potential collisions with user defined fields (key, wrappedEncodeable)
See a similar issue in cats

Codecov Report

Merging #1291 into master will decrease coverage by 0.15%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1291      +/-   ##
==========================================
- Coverage   85.91%   85.75%   -0.16%
==========================================
  Files          74       74
  Lines        2535     2535
  Branches      108      108
==========================================
- Hits         2178     2174       -4
- Misses        357      361       +4

Impacted Files
Coverage Δ

...hared/src/main/scala/io/circe/syntax/package.scala
100% <ø> (ø)
:arrow_up:

...d/src/main/scala/io/circe/NonEmptySeqDecoder.scala
91.66% <0%> (-8.34%)
:arrow_down:

modules/rs/src/main/scala/io/circe/rs/JsonF.scala
94.11% <0%> (-5.89%)
:arrow_down:

...c/main/scala/io/circe/tests/examples/package.scala
94.11% <0%> (-4.42%)
:arrow_down:

.../core/shared/src/main/scala/io/circe/Decoder.scala
85.25% <0%> (-0.27%)
:arrow_down:

...re/shared/src/main/scala/io/circe/JsonNumber.scala
93.97% <0%> (+1.2%)
:arrow_up:

...les/core/shared/src/main/scala/io/circe/Json.scala
78.78% <0%> (+1.21%)
: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 c76326b...451141c. Read the comment docs.

@implmnt Thanks for catching this! Will get it merged soon.


[UI] MUI v5 and sistent update on extension page

Notes for Reviewers
This PR fixes part of https://github.com/meshery/meshery/issues/11493 , based on this sheet , the Extensions page has been migrated to use sistent components and necessary mui v5 changes have been applied to these pages.
Signed commits

[X] Yes, I signed my commits.

Pending incorporation of feedback.

🚀 Preview for commit e5782ff409bca5fabee0c89a1febdd46158ca1e8 at: https://670690fb08fec572069abf87--meshery-docs-preview.netlify.app

@SAHU-01 i thing this pr is messed up...

merge conflicts...


Fixed the bug when Vuforia stop working when orientation changes on iOS.

Description
We just discovered that Vuforia stop working when the orientation changes.
So I just added few lines that fix that!
How Has This Been Tested?
Tested on iPod Touch.
Types of changes

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

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[x] I have read the CONTRIBUTING document.

Your previous PR #84 has introduced some instability to the code base - I will be unable to merge this until this issue has been fixed. Please see #91

Once you have addressed the commented code above and rebased, I'd be happy to consider this pull request

Hi @Stending if you rebase this off of master and reply to the comments I'll merge this in

Any movement on this?

@mattrayner Did you manage to recreate this issue? I haven't, but if you can, we can add the code in ourselves if Stending isn't around anymore

I can't say I have - I'm going to close this for now unless @Stending comes back


Regarding circular dependencies

This how I understood how to handle circular dependencies, wrap in function & return array. Reference: http://dev.apollodata.com/tools/graphql-tools/generate-schema.html
So if I do this:
// file: Author.js
const Book = require('./Book');

const Author = `
  type Author {
    name: String
    books: [Book]
  }
`;

module.exports = () => [Author, Book];

// -----------------------------------

// file: Book.js
const Author = require('./Author');

const Book = `
  type Book {
    title: String
    author: Author
  }
`;

module.exports = () => [Book, Author];

// -----------------------------------

// file: schema.js
const Author = require('./Author');

const RootQuery = `
  type RootQuery {
    author(name: String): Author
  }
`;
const SchemaDefinition = `
  schema {
    query: RootQuery
  }
`;

const schema = makeExecutableSchema({
  typeDefs: [SchemaDefinition, RootQuery, Author],
  resolvers: {}
});

It will result in the following error:
Error: typeDef array must contain only strings and functions, got object

I'm sure I misunderstood something and any help pointing me in the right direction is highly appreciated.

There is no need to import Book to where Author is, just combine them at schema.js. Since the order of graphQL file is unaffected with it.

I think the error you're getting because require('./Author') actually gives you an object, which contains more stuff than what you exported. Other than that, it all looks correct.

Thanks for the replies it turns out that all it need was some rubber ducking to realise the issue. All I needed to do is handle circular dependencies node style, export before require.
Like this:
// file: Author.js
module.exports = () => [Author, Book];

const Book = require('./Book');

const Author = `
  type Author {
    name: String
    books: [Book]
  }
`;
// -----------------------------------

// file: Book.js
module.exports = () => [Book, Author];

const Author = require('./Author');

const Book = `
  type Book {
    title: String
    author: Author
  }
`;
// -----------------------------------

// file: schema.js
const Author = require('./Author');

const RootQuery = `
  type RootQuery {
    author(name: String): Author
  }
`;
const SchemaDefinition = `
  schema {
    query: RootQuery
  }
`;

const schema = makeExecutableSchema({
  typeDefs: [SchemaDefinition, RootQuery, Author],
  resolvers: {}
});

If anyone wants to see this in a working project - https://github.com/eddyerburgh/express-graphql-boilerplate


New Developer Documentation

Would be nice to have documentation with a quick start guide. Get new developers going with the same (or close to) environment.

I'll try to make something on saturday evening.
But it's nothing difficult.
Most difficult thing as I remember was making Idea tread project as plugin (it has modified project file after checkout). As I remember going back to original project file from repo used to fix the problem.

Please let me know what would you like to see in this kind of documentation.

I guess just instructions for setting up dev environment and build instructions. The biggest problem I have so far is that some of the maven dependencies aren't found. I'm not sure why. I'll get a list though in case there is something I am missing.

I didn't built it with maven. But it worked well creating idea plugin
project. A far as I remember it needed Forms plugin installed to build. It
also needed dependencies from maven but just those which are widely
available
9 kwi 2016 14:39 "CFowers"<EMAIL_ADDRESS>napisał(a):

I guess just instructions for setting up dev environment and build
instructions. The biggest problem I have so far is that some of the maven
dependencies aren't found. I'm not sure why. I'll get a list though in case
there is something I am missing.
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/dboissier/jenkins-control-plugin/issues/118#issuecomment-207786408

look here: https://github.com/Programisci/jenkins-control-plugin/wiki/Development----Quick-Start-Guide

@christopherfowers could you verify if this is what you expected


Add unit tests

Currently waiting for https://github.com/vitejs/vite/issues/1955

Great news regarding this issue, thanks to this: https://vitest.dev/ it can actually be implemented right away. Only needs time and dedication


The fix for #90 is missing test coverage

Issue #90 has been fixed, but the fix was merged without test coverage. This issue is to provide test coverage to help prevent regressions of the problem that led to #90.

@mohamed-fadl interested in this?

I'm holding back information on how I would provide test coverage here, to give would-be contributors a chance to think about the problem. I'm happy to give advice when required. HINT: my expectation is that the code of SessionResultsFormatter would change to facilitate easier testability.

will look at it :)

There's several ways I can think of:

Scan the output of a current test case, parse the number of seconds and assert that it is >=0

Not the best, especially since the number of seconds for most tests will be 0

Add startTime as a parameter to appendSummaryOfResults and change it to package-local, then write a test just for that method

More direct, but changing the scope may not be desired

Use Powermock to force the values returned by System.currentTimeMillis() and ManagementFactory.getRuntimeMXBean().getStartTime() so you can check for a specific answer in the output

Likely a lot of setup for not much gain

Move the start and end time calls above into a utility class, which you can then mock in the test to return specific values, and check the output contains that value

I like this approach as you can re-use these elsewhere for start time of VM or current time if necessary

Interested to hear your thoughts - maybe I'm over-thinking it :grin:

I like the last option the best. When it comes to anything time or date based, I like to make sure that I can always test the effects of time passing within a unit test. That way I can check all the expected conditions in a way that's fast (no waiting for actual time to elapse, and no Thread.sleep that makes tests slow) and deterministic (doesn't matter when or how quickly it runs, it always has the same result).
I can think of two options for making the timing testable: pass in either a Guava Stopwatch with a custom Ticker, or a java.time.Clock, which can be mocked with Mockito. I think either approach would be good.
Happy to provide more info if needed.

Great, I'll take a look and send a pull request with my solution.

Hi,
Is this issue still available, looks to me like it may have been fixed in https://github.com/MutabilityDetector/MutabilityDetector/pull/101.
Thanks,
Emma

Agreed @emmahastings

You are correct @emmahastings. Sloppiness on my part. Thank you :+1:


Check the KnetScore computation

While working on the new API, I've noticed this, here:
double evidenceWeight = ( igf + luceneScore + invGraphDistance ) / 3;
These are the three terms described in the papers, but shouldn't they be multiplied?  Aren't them too apples and oranges to make an average?

I remember we tested this variant after publishing the paper to reduce the amplitude of the score while maintaining the order of the gene rank. I don't think it has an impact on the actual gene ranking (order of genes). The main factor that impacts the ranking is the number of evidences. Leave this as is for now until we find time to fully revise and enhance the scoring.


Excessive fields in SnetSDK config: org_id, service_id

sdk.SnetSDK(config) raises the key absent error, when org_id and service_id are not provided. Downloadable integration files from the marketplace do not contain these fields in config, so these fields were mistakingly introduced during refactoring. They should not be needed since, say, snet_sdk.create_service_client(org_id, service_id, group_name) also accepts org_id and service_id, and we may want to use SnetSDK with multiple services belonging to multiple organizations.

Dear @Necr0x0Der,
Thank you for reporting this issue. We appreciate your feedback and apologize for any inconvenience caused. After thorough investigation, we have resolved this issue in the v3.3.0 of our app.
create_service_client() method takes no arguments now. Please specify org_id and service_id in the config dictionary.
Please update to the most recent release, and if you encounter any further problems, feel free to reopen this issue or create a new one.
Best regards, Paul, SingularityNET


Performance degradation on textureless objects

Hello,
It's a fascinating piece of work.
However, I did have a few questions and concerns that I would like to discuss with you. I noticed in your paper that you pointed out the limitation of NeuralUDF that its performance may degrade on textureless objects. From looking at the examples in the paper, I can see that most of them are quite colorful. I was wondering how NeuralUDF performs on pure-colored objects and if this is a known issue.
Additionally, I would like to understand the reason behind this limitation. Is it due to the extra computation required by the visibility indicator function or some other differences from the SDF methods? Specifically, is it possible that the higher degrees of freedom in NeuralUDF might cause difficulties in regions where the depth changes drastically, such as in the collar region, or that NeuralUDF might assume the existence of holes in the continuous surface?
Thank you!

Thanks for your interest in our work.
For texture-less objects. You are right, it's difficult for NeuralUDF to reconstruct the pure-colored objects, since neuraludf relies on feature correspondences to recover the geometry.
For the texture-less objects, SDF-based methods also struggle to reconstruct them. Since SDF representation holds a strong assumption (inside/outside), they can still contain a smooth and continuous surface.
For UDF, it will be more flexible and lack constraints, without reliable multi-view consistency from texture, neuraludf cannot produce reliable surfaces.


nao_robot: 0.5.13-0 in 'jade/distribution.yaml' [bloom]

Increasing version of package(s) in repository nao_robot to 0.5.13-0:

upstream repository: https://github.com/ros-naoqi/nao_robot.git
release repository: https://github.com/ros-naoqi/nao_robot-release.git
distro file: jade/distribution.yaml
bloom version: 0.5.20
previous version for package: 0.5.12-0

nao_apps

No changes

nao_bringup

No changes

nao_description
* Fix bad arm values.
  This fixes #25 <https://github.com/ros-naoqi/nao_robot/issues/25>.
* Contributors: Vincent Rabaud

nao_robot

No changes

Hold until new buildfarm rollout is complete early next week.


Integrate Spinnaker with sig-events PoC

This PR includes the changes as described below;
poc.sh - Verify whether spincli is installed as part of Prerequisites
installAndConfigSpinnaker.sh - a script invoking from poc.sh to integrate spinnaker with the PoC and it does below actions;

Create hal stable deployment and update with Spinnaker service account
Deploy distributed spinnaker in K8S cluster using halyard
Update spin-echo with the cdevents API and build new image
Create a trigger to subscribe spinnaker event API
Launch spinnaker deployment and create Application/Pipeline using spin CLI
Create Ingress to access spinnaker UI from host

deploySpinnakerWithHalyard.sh - a script invoking from installAndConfigSpinnaker.sh to deploy spinnaker using halyard inside K8S cluster and it does below actions;

Install helm CLI
Configure default K8S context inside halyard pod
Install Minio Server as service in k8s cluster and configure as storage service for spinnaker
Configure kubernetes account with spinnaker
deploy spinnaker using halyard command

deploy-spinnaker-poc.json - a template used to create a pipeline in Spinnaker using slpincli
spin-echo-deploy.yaml -  to replace the spin-echo micro service to use the spinnaker consume event API from private branch as for now.
spinnakerServiceAccount.yaml - Creates spinnaker service account using ClusterRoleBinding to access spinnaker

Thank you for reviewing this PR @afrittoli,
I have made the changes as suggested, added flag (-s) to run the Spinnaker with CDEvents PoC
Now, ./poc.sh -s Runs PoC with Spinnaker installation, ./poc.sh goes with Keptn and Tekton as usual.
Sure, this demo part is discussed in the last sig-events meeting to set the date.
I am fine with any of the existing meeting or any other time that suits you.

@rjalander , could we plan for a demo of this integration to one of the upcoming SIG Events / CDEvents meetings, to provide some background info and an easier entry intro into this review? It would be preferred to have it on one of the coming SIG meetings, on July 4th, July 19th or August 1st, but it could also be on one of the upcoming CDEvents meetings (July 12th or 26th). Which would you prefer?

@e-backmark-ericsson , we can have it on today's (July 4th) SIG meeting If the time permits for demo and review the PR changes.

Sure @afrittoli , can be squashed.
Also when running this PoC a couple of weeks back with the main branch of tektoncd/experimental I see tekton was unable to emit the cloudevent and the below error comes in tekton-cloudevents-controller pod logs

{"level":"warn","ts":1649693382.4827335,"logger":"cloudevents-pipelinerun-controller","caller":"events/events.go:47","msg":"Failed to emit cloud events no cloud events client found in the context","knative.dev/controller":"github.com.tektoncd.experimental.cloudevents.pkg.reconciler.pipelinerun.Reconciler","knative.dev/kind":"tekton.dev.PipelineRun","knative.dev/traceid":"18e39654-d287-4f6f-99a8-6892a8eb7c6f","knative.dev/key":"default/build-artifact-run-sdlc5"}

I checked out the branch from this previous commit git checkout 8c1b6041bc679299750e00e551a8b137efcc5d65 github.com/tektoncd/experimental, just to unblock myself.
But, I am yet to test If this issue still exist with the master branch now.


GUVNOR-2466: No Option to copy any drl file to a specific package

Depends on:
https://github.com/uberfire/uberfire-extensions/pull/269
https://github.com/droolsjbpm/guvnor/pull/310
https://github.com/droolsjbpm/kie-wb-common/pull/346
https://github.com/droolsjbpm/drools-wb/pull/168

+1 to merge (I cannot merge uf-ext, so all PRs will have to be merged by @csadilek)


[Issue] - Health Checker computer group membership check

Provide Version Number
<IP_ADDRESS>8
Describe the issue
New Group Membership check uses $env:computername instead of $server, and suggestion for hardened ADs
Expected behavior
Get Membership of wanted server
Script Output
Membership of computer executing the script to check remote server
Additional context
Look at code starting in line 13480. I would suggest to replace $env:computername with $server.
In Addition, in our hardened Activ Directory the cmdlet Get-ADPrincipalGroupMembership dos not work. i would suggest using Get-ADComputer $server -Properties memberof | select -ExpandProperty memberof which works if global group membership search is prohibited in the Active Directory

Using $env:COMPUTERNAME should not be causing a problem.
https://github.com/microsoft/CSS-Exchange/blob/0848d672668108d3f858efc30af6e7f3e4611eaa/Diagnostics/HealthChecker/DataCollection/ExchangeInformation/Get-ExchangeInformation.ps1#L207
The reason being is because we are inside a ScriptBlock that will execute on the $Server variable. So, the $env:ComputerName is the remote server.
But if we are having issues with running that cmdlet in locked down environments, we will need to attempt to add in a catch for this as well. This would be similar to issue #2110 where the other cmdlet is also failing in some environments.

Thank you for your quick response, David.
Okay, I haven't thinked of the ScriptBlock behaviour. Sorry. Looks like it must be wrong.
I would suggest to check if it might be possible to modify it for hardened environments
try {
$ADGroupMembership = (Get-ADPrincipalGroupMembership (Get-ADComputer $env:COMPUTERNAME).DistinguishedName -ErrorAction Stop)
}
catch {
$ADGroupMembership = Get-ADComputer $env:COMPUTERNAME -Properties MemberOf | Select-Object -ExpandProperty MemberOf | Get-ADObject
}
This might fix it.
The only Group missing in $ADGroupMembership would be Domain Computers if the catch block is hit.

That is interesting that Domain Computers doesn't show up in the other cmdlet.
We are going to need to do a little more than just what you provided, as we need to be able to get the SID and should really try to make sure we get all the same properties that we would have gotten from Get-ADPrincipalGroupMembership. I will have to look at this some more when I am back in the office.

The thing with Domain Computers could be because of AD hardening.
I compared the output of the Get-ADPrincipalGroupMembership variants. The output of Get-ADcomputer has the properties GroupCategory and GroupScope missing. If replaced with Get-ADGroup the Output properties are the same.

Am seeing this when running the Health Checker (Version <IP_ADDRESS>3) against our 'Exchange 2019 CU14 Apr24HU' server installed on Core.
Exchange Server Membership | Unknown - Wasn't able to get the Computer Membership information
The command on line 13654 runs without issue.
But the command on line 13655 errors out on 'Get-ADComputer' with 'Get-ADComputer : The term 'Get-ADComputer' is not recognized as the name of a cmdlet, function, script file, or operable program.'
Please advise.

I have experimented with some workarounds for our environment and found an possible patch. Or even an starting point for an patch...
@grimson73 , @ltoddnelson feel free to test if the following solves your Problems.
Any feedback is welcome. I think @dpaulson45  may be thankfull to.

Run Health Checker and double proof you got the latest Version of Health Checker: Exchange Health Checker version <IP_ADDRESS>0
Open HealthChecker.ps1 for editing in Notepad or Visual Studio Code
Go to line number 13742
replace the if block from line 13742 to 13755 with the following code and try if it fixes the error:

     if ($getExchangeServer.IsEdgeServer -eq $false) {
         $params = @{
             ComputerName           = $Server
             ScriptBlockDescription = "Getting Exchange Server Members"
             CatchActionFunction    = ${Function:Invoke-CatchActions}
             ScriptBlock            = {
                 [PSCustomObject]@{
                     LocalGroupMember  = (Get-LocalGroupMember -SID "S-1-5-32-544" -ErrorAction Stop)
                     ADGroupMembership = @()
                 }
             }
         }
         $computerMembership = Invoke-ScriptBlockHandler @params
         $computerMembership.ADGroupMembership = (Get-ADComputer -Filter 'dnshostname -eq $Server' -Properties MemberOf | Select-Object -ExpandProperty MemberOf | Get-ADObject -Properties objectSid | select-object @{name="SID";expression={$_.objectsid}})
     }

I have experimented with some workarounds for our environment and found an possible patch. Or even an starting point for an patch...
@grimson73 , @ltoddnelson feel free to test if the following solves your Problems. Any feedback is welcome. I think @dpaulson45 may be thankfull to.

Hi, thanks for helping.
I tried in on my lab Exchange Server and several times I checked the replacement lines but this is what I get:
[PS] C:\Temp>& '.\HealthChecker - Copy.ps1'
WARNING: Unable to check for a script update as no script with the same name was found.
This can happen if the script has been renamed. Please check manually if there is a newer version of the script.
Exchange Health Checker version <IP_ADDRESS>0
Failed to Health Checker against SV-EXCH-01

My issue is that the Active Directory PowerShell module isn't installed so i think 'Get-ADComputer' doesn't work in the replacement part. But thanks again!

Feedback for @dpaulson45: With the current build of Health Checker the issue with

Exchange Server Membership: Unknown - Wasn't able to get the Computer Membership information

is not coming up again. So the new logic with group membership verification seems to work perfectly in our environment.


Generate script to patch receipt chain hashes and last VRF output

Generate a script to patch the receipt chain hashes in the zkapp_account_precondition table, and the last VRF output in the blocks table.
There are three pieces here:

An app receipt_chain_hash_to_b58, a Unix-style filter that takes an Fp string as input and prints it as Receipt.Chain_hash.t in Base58Check format

A similar app, last_vrf_output_to_b64, that takes a hex string as input, and prints it as a Base64 string

A shell script that uses (1) and (2) to generate an SQL file that updates the archive db with the Base58Check hashes and Base64 string

These were tested against a local copy of the ITN archive db. After applying it, the replayer did not encounter the failures that were seen in the ITN replayer cron job.
Important:

the script can be run as many times as needed; already-patched hashes and last VRF output are left intact
make a backup of the archive data before running the SQL!

Part of #14417.

!ci-build-me

!ci-build-me

!ci-build-me

!approved-for-mainnet


[Lite] To disable Plugin

Flag = disable_plugins
Reduced size = 440K

@heke123 @halton

@halton, It's green. Thx.


How about Debian sid?

Since this isn't something we're willing to support I'm going to close; if someone wanted to use Debian sid they can build their own Dockerfile after swapping the FROM line


[Help] How to disable handle a shortcut in PlutoGrid?

Hi,
I'm using a PlutoGrid in my flutter web project. When I try to open a browser console by using browser shortcuts(Command+Option+j or F12) it doesn't work because PlutoGrid handles a browser shortcuts by PlutoGridShortcut class.
I can dispose a PlutoGridKeyManager in order to start handle a browser shortcuts in proper way by this code:
PlutoGrid(
        onLoaded: (event) {
          _manager = event.stateManager;
          _manager!.keyManager?.dispose();
        },

but after I starts to get "Bad State" errors:
======== Exception caught by services library ======================================================
The following StateError was thrown while processing the key message handler:
Bad state: Cannot add new events after calling close

When the exception was thrown, this was the stack:
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 266:49      throw_
dart-sdk/lib/async/broadcast_stream_controller.dart 243:46                        add
packages/rxdart/src/subjects/subject.dart 142:17                                  [_add]
packages/rxdart/src/subjects/subject.dart 136:5                                   add
packages/pluto_grid/src/pluto_grid.dart 598:27                                    [_handleGridFocusOnKey]
packages/flutter/src/widgets/focus_manager.dart 1682:25                           [_handleKeyMessage]
packages/flutter/src/services/hardware_keyboard.dart 897:16                       [_dispatchKeyMessage]
packages/flutter/src/services/hardware_keyboard.dart 962:75                       handleRawKeyMessage
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 123:5                _async
packages/flutter/src/services/hardware_keyboard.dart 923:51                       handleRawKeyMessage
packages/flutter/src/services/platform_channel.dart 214:49                        <fn>
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 123:5                _async
packages/flutter/src/services/platform_channel.dart 213:58                        <fn>
packages/flutter/src/services/binding.dart 393:35                                 <fn>
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 123:5                _async
packages/flutter/src/services/binding.dart 390:98                                 <fn>
lib/_engine/engine/platform_dispatcher.dart 1199:13                               invoke2
lib/ui/channel_buffers.dart 25:12                                                 invoke
lib/ui/channel_buffers.dart 65:7                                                  push
lib/ui/channel_buffers.dart 131:16                                                push
lib/_engine/engine/platform_dispatcher.dart 378:25                                invokeOnPlatformMessage
lib/_engine/engine/raw_keyboard.dart 142:39                                       [_handleHtmlEvent]
lib/_engine/engine/raw_keyboard.dart 17:7                                         <fn>
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 367:37  _checkAndCall
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 372:39  dcall
KeyMessage: KeyMessage([KeyUpEvent#d5ddc(physicalKey: PhysicalKeyboardKey#70045(usbHidUsage: "0x00070045", debugName: "F12"), logicalKey: LogicalKeyboardKey#73722(keyId: "0x10000080c", keyLabel: "F12", debugName: "F12"), character: null, timeStamp: 0:00:23.371300)])

How can I disable a PlutoGrid shortcut handler in order use a browser shortcuts in my project?

@bosskmk Hi. Can you please check this issue? It's very critical for out project

It seems there are two ways.
First, I attached the code below.
However, the first method requires pressing F12 twice to open the developer tools.
The second way is to modify the code of my package.
You can fork and modify the code in my package to use it, or
If you still want to use my version of the repository, please request it from me.
I will try to add it in the next version.
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:pluto_grid/pluto_grid.dart';

import '../dummy_data/development.dart';

class EmptyScreen extends StatefulWidget {
  static const routeName = 'empty';

  const EmptyScreen({Key? key}) : super(key: key);

  @override
  _EmptyScreenState createState() => _EmptyScreenState();
}

class _EmptyScreenState extends State<EmptyScreen> {
  late List<PlutoColumn> columns;

  late List<PlutoRow> rows;

  late PlutoGridStateManager stateManager;

  @override
  void initState() {
    super.initState();

    columns = [
      PlutoColumn(
        title: 'column1',
        field: 'column1',
        type: PlutoColumnType.text(),
      ),
      PlutoColumn(
        title: 'column2',
        field: 'column2',
        type: PlutoColumnType.text(),
      ),
      PlutoColumn(
        title: 'column3',
        field: 'column3',
        type: PlutoColumnType.text(),
      ),
    ];

    rows = DummyData.rowsByColumns(length: 10, columns: columns);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SafeArea(
        child: Container(
          padding: const EdgeInsets.all(15),
          child: PlutoGrid(
            columns: columns,
            rows: rows,
            onChanged: (PlutoGridOnChangedEvent event) {
              print(event);
            },
            onLoaded: (PlutoGridOnLoadedEvent event) {
              stateManager = event.stateManager;
            },
            configuration: PlutoGridConfiguration(
              shortcut: PlutoGridShortcut(
                actions: {
                  ...PlutoGridShortcut.defaultActions,
                  LogicalKeySet(LogicalKeyboardKey.f12): CustomF12KeyAction(),
                },
              ),
            ),
          ),
        ),
      ),
    );
  }
}

class CustomF12KeyAction extends PlutoGridShortcutAction {
  @override
  void execute({
    required PlutoKeyManagerEvent keyEvent,
    required PlutoGridStateManager stateManager,
  }) {
    keyEvent.focusNode.unfocus();
  }
}

@bosskmk
Thank you for providing two possible ways to address the issue.
I appreciate your effort in finding solutions. Regarding the first method, where you attached the code, it seems that it requires pressing F12 twice to open the developer tools. While this may work, it could be a bit inconvenient for users.
I would be delighted if you could implement this feature in the upcoming versions of the library.

when cell is not editable the f1 keypress is not working
CallbackShortcuts(
bindings: <ShortcutActivator, VoidCallback>{
const SingleActivator(LogicalKeyboardKey.f1): () {
print('f1 pressed');
},
},
child: Focus(
child: Scaffold(
body: Container(
padding: const EdgeInsets.all(15),
child: PlutoGrid(
columns: columns,
rows: rows,
columnGroups: columnGroups,
onLoaded: (PlutoGridOnLoadedEvent event) {
stateManager = event.stateManager;
          },
          onChanged: (PlutoGridOnChangedEvent event) {
            print(event);
          },
          configuration: const PlutoGridConfiguration(

        ),
      ),
    )));


Have Chromium run in separate background process

This is half a question of feasibility and apologies if already discussed. I notice two things always brought up. With Atom, it's the slow startup time. With Electron, the weight it adds to any app you deploy with it.
Would it be possible to have Electron work in a two part manner, where the "runner" process is installed and can be set to run on startup, and then apps can be deployed without Chromium, just the JavaScript bundles, allowing them to be both much smaller and have potentially much faster startup times after first start? Does not Chrome already isolate processes as well so security would be ok? Just curious about this mostly.

A run-time approach like you are suggesting is discussed at #673.

I'm merging this to #673.


:bug: fix(BS4): Fixed BS4 depracation errors

BS4 is not throwing errors any more.

Thanks for contributing 🌵


delta merge by delete range write stall duration is more than 4s when scale tiflash

Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)

2. What did you expect to see? (Required)
3. What did you see instead (Required)
4. What is your TiFlash version? (Required)
master

In latest master we no longer see such write stalls.


Add a Titlepack filter

Would be nice to have a TitlePack filter / or gamemode .
Something more accurated when we search maps.
I'm on Maniaplanet 4 / Shootmania.
Thanks, and great plugin again :)

Titlepack filtering cannot be possible due to ManiaExchange API, but you can filter with Environments.
Sadly Shootmania has only one Environment: Storm.
I added recently TitlePack name on map info.
I, anyway, added enviro filtering.


⚠ Jenkins Plugins Artifactory has degraded performance

In 5f3988a, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1191 ms

Resolved: Jenkins Plugins Artifactory performance has improved in a341f06 after 12 minutes.


Updated the starter code to use create-solana-dapp

Summary

This is the starter code that serves as a template. The entire solution code has been updated in #5  PR
Updated the entire project using create-solana-dapp cli

@Tarunrao0 Could you fix the conflicts? we'd love to merge this.

Hey @mikemaccana so sorry for the late reply, went on a huge break
I've resolved all the conflicts


Broadcast not working

Unless I'm mistaken about the rules of the INDArray.broadcast(int...) method, it does not appear to be functioning. See the new unit tests below.
import static org.junit.Assert.*;
import static org.nd4j.linalg.indexing.NDArrayIndex.all;
import static org.nd4j.linalg.indexing.NDArrayIndex.point;

    @Test
    public void testBroadcast23_1(){

        int[] shape3 = {2,3,4};

        //[2,3] to [2,3,4]
        INDArray arr23 = Nd4j.linspace(1,6,6).reshape('c', 2,3);
        INDArray bc23 = arr23.broadcast(shape3);    //IllegalArgumentException: Incompatible broadcast from [2, 3] to [2, 3, 4]
        assertArrayEquals(shape3, bc23.shape());

        for( int i=0; i<4; i++ ){
            INDArray sub = bc23.get(all(), all(), point(i));
            assertEquals(arr23, sub);
        }

        //[2,4] to [2,3,4]
        INDArray arr24 = Nd4j.linspace(1,8,8).reshape('c', 2,4);
        INDArray bc24 = arr24.broadcast(shape3);    //IllegalArgumentException: Incompatible broadcast from [2, 4] to [2, 3, 4]
        assertArrayEquals(shape3, bc24.shape());

        for( int i=0; i<3; i++ ){
            INDArray sub = bc24.get(all(), point(i), all());
            assertEquals(arr24, sub);
        }

        //[3,4] to [2,3,4]
        INDArray arr34 = Nd4j.linspace(1,12,12).reshape('c', 3,4);
        INDArray bc34 = arr34.broadcast(shape3);
        assertArrayEquals(shape3, bc34.shape());    //Fails: shape [3,4,4]

        for( int i=0; i<2; i++ ){
            INDArray sub = bc34.get(point(i), all(), all());
            assertEquals(arr34, sub);
        }
    }

@Test
    public void testBroadcast45_1(){

        int[] shape4 = new int[]{2,3,4,5};
        int length = ArrayUtil.prod(shape4);

        INDArray fourd = Nd4j.linspace(1, length, length).reshape('c', shape4);

        int[] shape5 = new int[]{2,3,6,4,5};

        // IllegalArgumentException: Incompatible broadcast from [2, 3, 4, 5] to [2, 3, 6, 4, 5]
        // Broadcast [2,3,4,5] to [2,3,6,4,5], should be valid? 6 copies indexed along dimension 2
        INDArray fived = fourd.broadcast(shape5);
        assertArrayEquals(shape5, fived.shape());

        for( int i=0; i<6; i++ ){
            INDArray subset = fived.get(all(), all(), point(i), all(), all());
            assertArrayEquals(shape4, subset.shape());

            assertEquals(fourd, subset);
        }
    }

    @Test
    public void testBroadcast45_2(){

        int[] shape4 = new int[]{3,2,13,13};
        int length = ArrayUtil.prod(shape4);

        INDArray fourd = Nd4j.linspace(1, length, length).reshape('c', shape4);

        int[] shape5 = new int[]{3,3,2,13,13};

        INDArray fived = fourd.broadcast(shape5);
        System.out.println(Arrays.toString(fived.shape())); //Shape [3,3,13,13,13], should be [3,3,2,13,13]
        assertArrayEquals(shape5, fived.shape());

        for( int i=0; i<3; i++ ){
            INDArray subset = fived.get(all(), point(i), all(), all(), all());
            assertArrayEquals(shape4, subset.shape());

            assertEquals(fourd, subset);
        }
    }

Found some more cases in which broadcasting does not work.
import org.assertj.core.api.Assertions;
import org.junit.Test;
import org.nd4j.linalg.api.ndarray.INDArray;
import org.nd4j.linalg.factory.Nd4j;

/**
 * @author fredi
 * Created on 12/04/2018
 */
public class BroadcastingTest {

	@Test
	public void testBroadcastingOnVector() { // This works as expected.
		INDArray vector = Nd4j.create(new float[]{1, 2, 3, 4, 5});
		INDArray broadcasted = vector.broadcast(5, 5);
		INDArray expected = Nd4j.create(new float[][]{
			{1, 2, 3, 4, 5},
			{1, 2, 3, 4, 5},
			{1, 2, 3, 4, 5},
			{1, 2, 3, 4, 5},
			{1, 2, 3, 4, 5}
		});
		Assertions.assertThat(broadcasted).isEqualTo(expected);
	}

	@Test
	public void testBroadcastingOnMatrixWithSmallFirstDimension() {
		INDArray matrix = Nd4j.linspace(0, 10, 15).reshape(3,  5);
		INDArray broadcast = matrix.broadcast(2, 3, 5);
		Assertions.assertThat(broadcast.shape()).isEqualTo(new int[]{2,3,5}); // This fails.
	}

	@Test
	public void testBroadcastingOnMatrix() {
		INDArray matrix = Nd4j.create(new double[][]{
			{1, 2, 3},
			{1, 2, 3},
			{1, 2, 3}
		});
		INDArray broadcasted = matrix.broadcast(5, 3, 3); // Broadcasting to to "big" first dimension works
		Assertions.assertThat(broadcasted.shape()).isEqualTo(new int[]{5, 3, 3});
		Assertions.assertThat(broadcasted).isNotEqualTo(Nd4j.ones(5,3,3)); // This fails
	}

}

My pom.xml is:
...
<dependencies>
        <dependency>
            <groupId>org.assertj</groupId>
            <artifactId>assertj-core</artifactId>
            <!-- use version 2.1.0 or higher -->
            <version>2.1.0</version>
            <scope>test</scope>
        </dependency>

        <!-- Logging -->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.0.13</version>
        </dependency>

        <dependency>
            <groupId>org.nd4j</groupId>
            <artifactId>nd4j-native-platform</artifactId>
            <version>${nd4j.version}</version>
        </dependency>

    </dependencies>
...

Also I profiled a bit my implementation of KMeans and there I have used broadcasting (the one that works -> 1. test), and it's by far the slowest method even on small matrices.

Thanks, but this issue probably won't be fixed directly. There's already new auto-broadcast mechanic available on libnd4j level, and it'll be introduced to Java before 1.0 release.


StateCommitment abstraction

Describe the feature
Overview
This issue will be used to plan the implementation of the StateCommitment implementation. The StateCommitment will be used to provide an abstraction over the types associated with the state commitment. This will allow reth to be used with different state representations configured by the user. Initial POC implemented here.
Plan
We will implement the StateCommitment via the following units of work:

[ ] Introduce StateCommitment trait, integrate with NodeTypes and provide MPT implementation. - #11842
[ ] Introduce StateCommitment types within providers. - #11867
[ ] Introduce HashedPostStateProvider and refactor methods on HashedPostState and PrefixSetLoader to be generic over the KeyHasher -#11872 , #11874

Refactor codebase to leverage StateCommitment types for all operations:

[ ] StateRoot
[ ] StorageRoot
[ ] StateProof
[ ] StateWitness
[ ] KeyHasher
[ ] ParallelStateRoot

Additional context
https://github.com/paradigmxyz/reth/pull/11786
### Tasks
- [ ] https://github.com/paradigmxyz/reth/pull/11842
- [ ] https://github.com/paradigmxyz/reth/pull/11867
- [ ] https://github.com/paradigmxyz/reth/pull/11872
- [ ] https://github.com/paradigmxyz/reth/pull/11874

This could be added to https://github.com/paradigmxyz/reth/issues/11241. @mattsse

Just added to the tracking issue @Thegaram


Support for H7066

Please explain your feature request in a one or two sentences.

Please add support for Govee H7066.

Is your feature request related to a problem? Please describe.

N/A.

Any particular Govee devices that this relates to?

H7066. RGBIC Spotlights (4 lights)

Anything else?

[09/09/2023, 17:31:52] [Govee] [RGBIC Spotlights] is not currently supported, do create a Github issue with the following info:
{"device":"42:FA:CD:38:32:30:29:3C","deviceName":"RGBIC Spotlights","model":"H7066","httpInfo":{"groupId":0,"device":"42:FA:CD:38:32:30:29:3C","sku":"H7066","spec":"","versionHard":"3.01.01","versionSoft":"1.00.08","deviceName":"RGBIC Spotlights","deviceExt":{"deviceSettings":"{"wifiName":"prehiti-wireless","address":"CD:38:32:30:29:3C","bleName":"Govee_H7066_293C","topic":"GD/c1fdc4fe8c3006c611b21cf66daf0955","wifiMac":"60:74:F4:1E:8B:A4","pactType":1,"pactCode":1,"wifiSoftVersion":"","wifiHardVersion":"","ic":4,"secretCode":"f2vNODIwKTw=","boilWaterCompletedNotiOnOff":1,"completionNotiOnOff":1,"autoShutDownOnOff":1,"sku":"H7066","device":"42:FA:CD:38:32:30:29:3C","deviceName":"RGBIC Spotlights","versionHard":"3.01.01","versionSoft":"1.00.08","playState":false}","lastDeviceData":"{"online":false}","extResources":"{"skuUrl":"https://d1f2504ijhdyjw.cloudfront.net/sku-img/4a75d2fb962a6c9ed169313745c1a010-add_list_type_device_7066.png\",\"headOnImg\":\"https://d1f2504ijhdyjw.cloudfront.net/sku-img/b5d43d73ded3072c534e98ddbe5e7ff6-new_light_title_7066_on.png\",\"headOffImg\":\"https://d1f2504ijhdyjw.cloudfront.net/sku-img/927ca77f6a8762f0e147bdb901079bf2-new_light_title_7066_off.png\",\"ext\":\"\",\"ic\":4}"},"pactType":1,"pactCode":1,"share":0,"goodsType":171}}

Ah...  looked up the current version of the Govee SDK and it looks like this device still isn't supported. Feel free to close.

does this model support lan mode?

anyway this device should start working with the beta version of the plugin:
https://github.com/homebridge/homebridge/wiki/How-to-Install-Alternate-Plugin-Versions
If the model does support lan mode, I can set this up too with another beta

v9.4.3-beta.3 works! Excellent! Thank you so much! £ coming your way.

@prwhite thanks for your support 😀
any response with regards to my question about lan mode?

Apparently it does... LAN mode is available in the configuration pane and I see these messages in the log:
[10/09/2023, 19:53:26] [Govee] [RGBIC Spotlights] [LAN] receiving update {"source":"LAN","state":{"onOff":1,"brightness":100,"color":{"r":0,"g":0,"b":0},"colorTemInKelvin":5300}}.
[10/09/2023, 19:53:26] [Govee] [RGBIC Spotlights] current brightness [100%].
[10/09/2023, 19:53:56] [Govee] [LAN] scanning for devices over LAN...
[10/09/2023, 19:53:56] [Govee] [RGBIC Spotlights] [LAN] receiving update {"source":"LAN","state":{"onOff":1,"brightness":100,"color":{"r":0,"g":0,"b":0},"colorTemInKelvin":5300}}.
[10/09/2023, 19:53:56] [Govee] [LAN] found device [isNew=false] [{"msg":{"cmd":"scan","data":{"ip":"<IP_ADDRESS>","device":"42:FA:CD:38:32:30:29:3C","sku":"H7066","bleVersionHard":"3.01.01","bleVersionSoft":"1.00.08","wifiVersionHard":"1.02.00","wifiVersionSoft":"2.05.08"}}}] [{"address":"<IP_ADDRESS>","family":"IPv4","port":60834,"size":211}].


refactor: specializations of standard templates may lead to UB

One of the provisions of https://eel.is/c++draft/namespace.std#2 is

that (a) the added declaration depends on at least one program-defined type

A template specialization of the form
template<concept_name T> struct std::something<T>;

arguably does not depend on a program-defined type; its instantiations do.
This library has plenty of that form.
Another potential issue is the increase in compile times with the proliferation of this form of specialization. This is similar to the benefits of using hidden friends. When a specialization depends on a program-defined type, the compiler skips all concept-constrained specializations (IIUC, see https://godbolt.org/z/E5Yv3vYP4).
Note that changing the specializations to use quantity<...> rather than Quantity might affect users who derive from quantity<...>.

This library has plenty of that form.

Are there any other such specializations than std::common_type?

Not that I can remember. I exaggerated a bit. The few I know are together and for the same primary template.

When a specialization depends on a program-defined type, the compiler skips all concept-constrained specializations

I was wrong. You can see at https://godbolt.org/z/GeqhMoEo5 that checking whether a partial specialization is viable causes the instantiation of the class' body (and possibly more, depending on what the partial specialization checks).
It seems that reachable, constrained partial specializations can have unintended effects. I personally found this out when adding one for tests to cover a wide range of tests. A previous test on a trait that accepts incomplete types, for std::complex<void>, was now instantiating it and resulting in hard errors.

@JohelEGP Is this issue still valid?

Maybe not.
If it is, I might reopen.


Fix certificate verification issue during harvesting

Fixes #7821
Some explanation can be seen in the issue itself, but in short there were breaking changes between python 2.7.6 and 2.7.13 and one has to provide a ssl context object manager instead of the certfile and the keyfile args. It has to be given to both urllib2 and httplib classes.
As suggested by Valentin, I took this DBS code:
https://github.com/dmwm/DBS/blob/master/Server/Python/src/dbs/utils/dbsHTTPSAuthHandler.py
and made it a WMCore class under Services.
BTW, I replaced the logging by print in the DQMUpload because then we get the output into the condor logs that are sent back to the schedd, much easier to debug anything.
TODO:
a) make sure the latest commit works. Only the previous one were tested.
b) add a dependency in setup_dependencies
c) squash it all

@vkuznet can you please review this PR? Thanks

test this please

Finally it works. I ran more than 100 jobs in the grid (CERN and FNAL) and it seems to be working fine now. I'm merging it and backporting it to the wmagent branch.

I still accept reviews though :)


zed-editor CLI does not work on darwin

Describe the bug
I'm unable to use the zed-editor package's zededitor CLI on aarch64-darwin. If I run it with anything besides --help/--version - seemingly anything to do with launching the editor - fails; for example zeditor, zeditor ., zeditor foo/bar (all of which succeed when run with zed instead of zeditor).
I tried installing and using Zed's zed binary via the cli: install command in their command palette, which worked just fine.
Steps To Reproduce
Steps to reproduce the behavior:

Build zed-editor on aarch64-darwin.
Run commands as listed above, notice the program hangs and no editor windows are opened or changed.

Expected behavior
Should function the same as the binary from cli: install and open directories as new editor windows correctly.
Screenshots

Additional context
$ zeditor --version
Zed 0.164.2 – /nix/store/rsk8zxhv3m64dpjjgsiv3h1l5shk9pkx-zed-editor-0.164.2/Applications/Zed.app

I see the following logs in the Zed log file:
2024-12-15T19:07:34.553346-05:00 [INFO] ========== starting zed ==========
2024-12-15T19:07:34.582962-05:00 [INFO] Opening main db
2024-12-15T19:07:34.585575-05:00 [INFO] Opening main db
2024-12-15T19:07:34.618909-05:00 [INFO] Got instance handshake

I see a Zed window icon appear on my dock temporarily after invoking the command but nothing after.
Metadata

system: "aarch64-darwin"
host os: Darwin 24.1.0, macOS 15.1.1
multi-user?: yes
sandbox: no
version: nix-env (Nix) 2.24.10
nixpkgs: /nix/store/g9bw874w67bfsvg93szwnxxjxp4lphby-source

Notify maintainers

@GaetanLepage @niklaskorz

Note for maintainers: Please tag this issue in your PR.

Add a :+1: reaction to issues you find important.

Can't reproduce, the CLI works for me on both nixpkgs-24.11 (Zed 0.161.2) and nixpkgs-unstable (Zed 0.165.4).

system: "aarch64-darwin"
host os: Darwin 24.2.0, macOS 15.2
multi-user?: yes
sandbox: no
version: nix-env (Nix) 2.24.10
nixpkgs: /nix/store/45bzbkwnyb6nikgc7jkrn7vjibhy4xhk-source


Invariant Violation Maximum update depth exceeded on TextareaAutosize

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior 🤔
No error when putting a multiline <TextField> in an <ExpansionPanelDetails> with a custom font on Firefox.
Current Behavior 😯
I'm getting this error:
Invariant Violation
Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.

invariant
https://w7mxf.codesandbox.io/node_modules/react-dom/cjs/react-dom.development.js:55:15
scheduleWork
https://w7mxf.codesandbox.io/node_modules/react-dom/cjs/react-dom.development.js:19916:5
dispatchAction
https://w7mxf.codesandbox.io/node_modules/react-dom/cjs/react-dom.development.js:13599:5
TextareaAutosize/syncHeight<@https://w7mxf.codesandbox.io/node_modules/
material-ui/core/TextareaAutosize/TextareaAutosize.js:92:5
TextareaAutosize/<@https://w7mxf.codesandbox.io/node_modules/
material-ui/core/TextareaAutosize/TextareaAutosize.js:118:5
commitHookEffectList
https://w7mxf.codesandbox.io/node_modules/react-dom/cjs/react-dom.development.js:17283:26
commitLifeCycles
https://w7mxf.codesandbox.io/node_modules/react-dom/cjs/react-dom.development.js:17316:9
commitAllLifeCycles

Screenshot of stack trace
Steps to Reproduce 🕹
OS: Ubuntu 19.04
Browser: Firefox 68.0 (64-bit)
Link: https://codesandbox.io/s/create-react-app-w7mxf

Open the codesandbox link above in Firefox
Click to expand the expansion panel
See error

Context 🔦
This old issue seems similar but was fixed: https://github.com/mui-org/material-ui/issues/11132
As far as I can tell, the following conditions must hold:

The <TextField> must be multiline
The <TextField> must be inside an <ExpansionPanelDetails>
The <TextField> must be the "outlined" variant
The font can't be Roboto

Your Environment 🌎

Tech
Version

Material-UI
v4.2.1

React
v16.9.0-alpha.0

Browser
Firefox 68.0

I don't know what's wrong. We had a couple of infinite rendering issue over the last few weeks. We could apply the following diff to mitigate the negative impact when it happens
diff --git a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
index 67691d68c..772eec825 100644
--- a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
+++ b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
@@ -1,5 +1,6 @@
 import React from 'react';
 import PropTypes from 'prop-types';
+import warning from 'warning';
 import debounce from '../utils/debounce';
 import { useForkRef } from '../utils/reactHelpers';

@@ -26,6 +27,7 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)
   const { onChange, rows, rowsMax, style, value, ...other } = props;

   const { current: isControlled } = React.useRef(value != null);
+  const render = React.useRef(0);
   const inputRef = React.useRef(null);
   const handleRef = useForkRef(ref, inputRef);
   const shadowRef = React.useRef(null);
@@ -72,8 +74,10 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)
       // This prevents infinite rendering loop.
       if (
         outerHeightStyle > 0 &&
-        Math.abs((prevState.outerHeightStyle || 0) - outerHeightStyle) > 1
+        Math.abs((prevState.outerHeightStyle || 0) - outerHeightStyle) > 1 &&
+        render.current < 10
       ) {
+        render.current += 1;
         return {
           innerHeight,
           outerHeight,
@@ -81,12 +85,21 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)
         };
       }

+      warning(
+        render.current > 10,
+        [
+          'Material-UI: too many re-renders.',
+          'TextareaAutosize limits the number of renders to prevent an infinite loop.',
+        ].join('\n'),
+      );
+
       return prevState;
     });
   }, [setState, rows, rowsMax, props.placeholder]);

   React.useEffect(() => {
     const handleResize = debounce(() => {
+      render.current = 0;
       syncHeight();
     });

@@ -102,6 +115,8 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)
   });

   const handleChange = event => {
+    render.current = 0;
+
     if (!isControlled) {
       syncHeight();
     }

Or we could ignore the problem:
diff --git a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
index 67691d68c..02336cf39 100644
--- a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
+++ b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
@@ -26,12 +26,17 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)
   const { onChange, rows, rowsMax, style, value, ...other } = props;

   const { current: isControlled } = React.useRef(value != null);
+  const update = React.useRef(true);
   const inputRef = React.useRef(null);
   const handleRef = useForkRef(ref, inputRef);
   const shadowRef = React.useRef(null);
   const [state, setState] = React.useState({});

   const syncHeight = React.useCallback(() => {
+    if (!update.current) {
+      return;
+    }
+
     const input = inputRef.current;
     const computedStyle = window.getComputedStyle(input);

@@ -68,6 +73,8 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)
     const outerHeightStyle = outerHeight + (boxSizing === 'border-box' ? padding + border : 0);

     setState(prevState => {
+      update.current = false;
+
       // Need a large enough different to update the height.
       // This prevents infinite rendering loop.
       if (
@@ -99,6 +106,10 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)

   useEnhancedEffect(() => {
     syncHeight();
+
+    if (!update.current) {
+      update.current = true;
+    }
   });

   const handleChange = event => {

Of course, none of the above solve the core issue, it only mitigates it. I'm looking into the core problem.

@mcdougal As for the fix, it seems to be as simple as:
diff --git a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
index 67691d68c..02a0d208e 100644
--- a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
+++ b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
@@ -18,7 +18,8 @@ const styles = {
     position: 'absolute',
     // Ignore the scrollbar width
     overflow: 'hidden',
-    height: '0',
+    height: 0,
+    top: 0,
   },
 };

Is this something you want to work on? :)

@mcdougal As for the fix, it seems to be as simple as:
diff --git a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
index 67691d68c..02a0d208e 100644
--- a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
+++ b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
@@ -18,7 +18,8 @@ const styles = {
     position: 'absolute',
     // Ignore the scrollbar width
     overflow: 'hidden',
-    height: '0',
+    height: 0,
+    top: 0,
   },
 };

Is this something you want to work on? :)

@oliviertassinari Are you saying this diff addresses the core problem? I haven't had a chance to look at the TextareaAutosize code so I don't know yet what's actually going on in there. Either way, I could possibly make a PR to fix this issue sometime this week, but I likely won't get to it today.

Yes, it does solve the core issue. We will be happy to review your pull request!

I validated that setting top: 0 does in fact fix the issue, but I don't understand why.
I narrowed the problem down to the fact that the scrollHeight of the hidden <textarea> is changing depending on whether the height of the visible <textarea> is even or odd:

According to the MDN docs, Element.scrollHeight rounds the value to an integer:

My best guess is that Firefox is getting slightly different fractions when it calculates the scrollHeight of the hidden <textarea>, causing it to round up or down depending on the height of the parent.
This makes me think that while setting top: 0 may solve the problem in this scenario, this rounding behavior may cause problems again in the future.
@oliviertassinari Would you be open to a solution that specifically prevents the scrollHeight measurement from changing if its value only differs by 1px? Something like this:
diff --git a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
index 67691d68c..ecf4ead91 100644
--- a/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
+++ b/packages/material-ui/src/TextareaAutosize/TextareaAutosize.js
@@ -29,6 +29,7 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)
   const inputRef = React.useRef(null);
   const handleRef = useForkRef(ref, inputRef);
   const shadowRef = React.useRef(null);
+  const prevShadowHeight = React.useRef(null);
   const [state, setState] = React.useState({});

   const syncHeight = React.useCallback(() => {
@@ -46,12 +47,27 @@ const TextareaAutosize = React.forwardRef(function TextareaAutosize(props, ref)
       getStyleValue(computedStyle, 'border-bottom-width') +
       getStyleValue(computedStyle, 'border-top-width');

+    let inputShallowScrollHeight;
+
+    // Prevent the scrollHeight from being re-measured if it only changed by 1px.
+    // This prevents a rounding error in Firefox from causing an infinite loop.
+    if (
+      prevShadowHeight.current !== null &&
+      Math.abs(inputShallow.scrollHeight - prevShadowHeight.current) <= 1
+    ) {
+      inputShallowScrollHeight = prevShadowHeight.current;
+    } else {
+      inputShallowScrollHeight = inputShallow.scrollHeight;
+      prevShadowHeight.current = inputShallowScrollHeight;
+    }
+
     // The height of the inner content
-    const innerHeight = inputShallow.scrollHeight - padding;
+    const innerHeight = inputShallowScrollHeight - padding;

     // Measure height of a textarea with a single row
     inputShallow.value = 'x';
-    const singleRowHeight = inputShallow.scrollHeight - padding;
+    const singleRowHeight = inputShallowScrollHeight - padding;

     // The height of the outer content
     let outerHeight = innerHeight;

@mcdougal I think that we should be greedy, wait to see if somebody can reproduce the issue, in another configuration before complexifying the logic. The height and the scrollHeight are done on two different elements. They should be isolated, in the first place.

The height and the scrollHeight are done on two different elements. They should be isolated, in the first place.

I think when the visible input changes height it changes the height of the parent, somehow causing the scroll height of the hidden element to change despite it being absolutely positioned.

wait to see if somebody can reproduce the issue, in another configuration before complexifying the logic.

Sounds good. I'll make a PR with the top: 0 fix

I encountered the same error on InputBase, triggered by a multiline Input.
<Input fullWidth multiline value={enteredText} onChange={this.onChange} onBlur={this.onBlur} />.
Any ideas what could be going on?

@Dante-101 Do you have a reproduction?

My bad. The issue is happening in a different input which has endAdornment. Will update with reproduction.

Wrapping my component in InputAdornment solved the issue. I don't think that's desirable.
Here is the reproducible case: https://codesandbox.io/s/material-demo-u0206
In demo.tsx, if I disable InputAdornment (line 54 and 56), you will see the infinite render issue in the dev tools.

@Dante-101 I'm labeling your comment off-topics. This is not related to the multilines feature. You can't nest inputs.


[c#] ask question only once

I am linking 2 FormFlows with ContinueWith.
1st form ask only about language selection (en,fr,etc.) and when it finishes in ContinueWith I save user choice in PerUserInConversationData, set the message.Language to selected culture, call second form and it is displayed in the correct language (using the respective localized recourses)
Each iteration however is asking the user about language choice and I would like to avoid this and start with second form with real questions if user has already answered language choice in a previous session. I have this stored in PerUserInConversationData databag.
Worst case scenario if he wants to change the language he will do /deleteprofile
Will appreciate any hints how I can achieve this.

I wonder if you can start the FormDialog with an initial state that you've obtained from the PerUserInConversation data bag - so you would need one additional root dialog to obtain the initial state from the data bag and then pass it to the language selection FormDialog.  @chrimc62 ?

Thank you !
Based on your suggestion I managed to achieve what I wanted


fix continue screen

Implements: https://github.com/near/near-wallet/issues/1056#issuecomment-712358673


(TEPHRA-279) Make TransactionContext resilient to exceptions from getTransactionAwareName()

rebased on current master - waiting for one more build before committing this.

One test failure, that was present before this. Will commit this now.


Compiling HTML templates fail when using Webpack function config.

Expected behaviour
Using:

karma ^3.1.1
webpack ^3.12.0
jasmine ^ 3.3.0
A webpack config such as:

// webpack.config.js
module.exports = function(env, arg){
    return {
        devtool: 'source-map',
        module: {
            rules: [
                {
                     test: /\.js$/,
                     exclude: /node_modules/,
                     options: {
                         presets: ['es2015'],
                         plugins: ['angularjs-annotate'],
                     },
                },
                {
                     test: /\.html$/,
                     exclude: /node_modules/,
                     use: [{
                         { loader: 'html-loader' }
                     }],
                },
                {
                     test: /\.(s?)css$/,
                     exclude: /node_modules/,
                     use: [{
                         loader: 'css-loader',
                     },
                     {
                          loader: 'sass-loader'
                     }],
                },
            ],
        },
    };
};

And a karma config such as:
//karma.config.js
const webpackConfig = require('./webpack.config.js')

module.exports = function(config){
    config.set({
        basePath: './',
        files: [
            './project/static/scripts/test-context.js',
        ],
        frameworks: ['jasmine'],
        browsers: ['FirefoxHeadless', 'ChromeHeadless'],
        plugins: [
            'karma-webpack',
            'karma-chrome-launcher',
            'karma-firefox-launcher',
            'karma-jasmine',
        ]
        preprocessors: {
            './project/static/scripts/test-context.js: ['webpack'],
            './project/static/scripts/**/*.spec.js: ['webpack'],
        }
        webpack: {
            devtool: webpackConfig.devtool,
            resolve: webpackConfig.resolve,
            module: webpackConfig.module,
           plugins: webpackConfig.plugins,
            externals: webpackConfig.externals
        },
    });
};

Running karma start karma.conf.js --single-run should run test correctly.
Actual behaviour
When karma is compiling the source, I assume using webpack, this error is returned:
Module parse failed: Unexpected token (1:0)
You may need an appropriate loader to handle this file type.
|