Cupy streams are not supporting concurrent GPU operation (cp.linalg.svd)

Issue
Cupy streams are not supporting concurrent GPU operation, for cp.linalg.svd.  (This is my first time using Cupy, to try and do concurrent SVDs on the GPU with a stack of matrices.)
Copying @mrocklin and @seibert as they seem to have spent a lot of time with similar issues.
Related Links
For background on this, see:

#1695: How to get concurrency from cupy Streams. (Closed with a change, to support longer operations, but that doesn't seem to apply in this case.)
Dask 4040: Issues getting dask.delayed to work concurrently
example, map_reduce : link
example, concurrency in Cupy with streams: link
Related Stackoverflow question (suggests trying gesvdjBatched, in C++)

Conditions:
CuPy Version : 7.2.0
CUDA Root : C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0
CUDA Build Version : 10010
CUDA Driver Version : 10010
CUDA Runtime Version : 10010
cuBLAS Version : 10200
cuFFT Version : 10010
cuRAND Version : 10010
cuSOLVER Version : (10, 1, 0)
cuSPARSE Version : 10010
NVRTC Version : (10, 1)
cuDNN Build Version : 7605
cuDNN Version : 7605
NCCL Build Version : None
NCCL Runtime Version : None
Code to reproduce  [edit: fixed a bug and a couple of bad comments]
import time
import cupy as cp
import numpy as np
import dask
import dask.array as da

def many_svd_np_vs_cp():
    device = cp.cuda.Device()

    N = 16      # number of desired SVDs, grouped.
    M = 1024  # size of each matrix, for SVD (MxM)
    A = np.asarray(np.random.randn(N, M, M), dtype=np.float32)

    # ----- Prime Pump, to eliminate CUDA overhead in timings. -----
    A_gpu = cp.asarray(A)
    for i in range(16):
        sg = cp.linalg.svd(A_gpu[0], compute_uv=False)
    time.sleep(0.25)  # to separate this, in nvvp

    # ----- Grouped SVDs in numpy -----
    tm = time.time()
    s_npall = np.linalg.svd(A, compute_uv=False)  # 256 x 16
    elaps = time.time() - tm
    print('%20s: elaps=%f' % ('Numpy', elaps))

    # ----- Cupy-Loop: grouped SVDs in cupy -----
    sg_all = cp.asarray([])
    tm = time.time()
    for i in range(A_gpu.shape[0]):
        sg = cp.linalg.svd(A_gpu[i], compute_uv=False)
        sg_all = cp.concatenate((sg_all, sg), axis=0) # N*16 = 4096, but that's OK
    s_cpall = cp.asnumpy(sg_all)
    elaps = time.time() - tm
    print('%20s: elaps=%f' % ('Cupy-Loop', elaps))
    time.sleep(0.20)

    # ----- Cupy-ListComp: is List Comprehension Faster? -----
    sg_all = cp.asarray([])
    tm = time.time()
    sg_all = [cp.linalg.svd(A_gpu[i], compute_uv=False) for i in range(A_gpu.shape[0])]
    s_cpall = cp.asnumpy(sg_all)
    elaps = time.time() - tm
    print('%20s: elaps=%f' % ('Cupy-ListComp', elaps))
    time.sleep(0.20)

    # ----- Cupy-Dask-Delayed: try using Dask.Delayed for parallelism/concurrency -----
    # TODO: not currently trying to retrieve the results, with this example.
    tm = time.time()
    tasks = [ dask.delayed(cp.linalg.svd)(A_gpu[i], compute_uv=False) for i in range(A_gpu.shape[0])]
    tasks_list = dask.delayed( list(tasks) )
    res = dask.compute(tasks_list)  # Does return a list of 256 x 16
    device.synchronize()
    elaps = time.time() - tm
    print('%20s: elaps=%f' % ('Cupy-Dask-Delayed', elaps))
    time.sleep(0.20)

    # ----- Cupy-Streams: try cupy streams for paralellism/concurrency -----
    # TODO: not currently trying to retrieve the results, with this example.
    device = cp.cuda.Device()
    map_streams = [cp.cuda.stream.Stream() for i in range(N)]
    tm = time.time()  # BUG: was start_time = time.time()
    for i, stream in enumerate(map_streams):
        with stream:
            sg = cp.linalg.svd(A_gpu[i], compute_uv=False)
            # This is a little worse:
            # C_gpu = cp.asarray(np.random.randn(M, M), dtype=np.float32)
            # sg = cp.linalg.svd(C_gpu, compute_uv=False)
    device.synchronize()
    elaps = time.time() - tm
    print('%20s: elaps=%f' % ('Cupy-Streams', elaps))

if __name__ == "__main__":
    many_svd_np_vs_cp()

Output:
               Numpy: elaps=2.181430
           Cupy-Loop: elaps=1.396355
  Cupy-ListComp: elaps=1.467271
   Cupy-Dask-Delayed: elaps=1.206578
        Cupy-Streams: elaps=~1.6 (was 3.104342 with bug)

NVVP:
Running in NVVP, here are two example of what the stream launches look like, for (N,M) = (64,256) and (N,M) = (16,1024), where N are the number of SVDs/streams, and the matrices are size MxM.  Each SVD is taking 23 ms (or 116 ms in the second case), which clearly is enough time to try and launch them concurrently.  Using 'C_gpu' instead of A_gpu[i] doesn't make a difference.

I was testing this yesterday but got distracted, so I have not completed my tests 😅
For now I have a few general remarks:

CuPy is providing the correct stream behavior: from nvvp you can see that there're N streams, and the work is done on different streams.
Whether or not kernels can be  run concurrently is a completely different story: It depends on the workload, the underlying hardware, the libraries in use, etc. CuPy can't (and neither could any GPU library) guarantee any concurrency even if streams are in use.
For the case of the map_reduce example, increasing the workload helps, see #2588. My feeling for your case is that your workload is perhaps too small. I saw many short-running kernels launched by cuSOLVER, but I haven't figured out why there're so many tiny kernels, and why there're tiny (4B!) data transfers in-between. (@anaruse, a little help for this would be very appreciated! 🙏)
Any CuPy internal kernels are prefixed with either cupy_ or cupyx_. If you don't see such names appearing in nvvp/Nsight, it's likely not CuPy's fault.

I'll continue my investigation later this week and update here.

Oh, one more thing: preferably we wanna do batched SVD for better performance, especially for your use case. But I don't know what's the current status of #2337...

Thanks for looking into this, @leofang.  I'd seen #2588 later, and then had some quirk reproducing it, but now I have done it OK.  BTW, I'm using TitanXp.
I've now tried N x svd(AMM) and N x cp.matmul(AMM, AMM), for M in [8, 32, 256, 1024, 4096].  In NVVP, I'm seeing for these cases that the matmul is always in some sort of concurrency (maybe 2x or 4x) but the SVD is never in any concurrency. Agree that the cupy stream behavior seems OK, I'm thinking it must be something at the CUDA or CUDA interface layer.
I generally get better times using list comprehension than Cupy Streams. (Dask.delayed is slightly better still, but I can't tell why.)  My numbers above showed quite a bit of difference; but, there was a bug above: start_time = time.time() should be tm = time.time().  With that change, list comprehension is still slightly faster; looking at NVVP, it seems that the cudaMemcpyAsync that each stream does for Cupy-Streams is taking much longer than it should - around 22 ms, and it is not done in parallel with the execution of the next stream.  If you want, I can document this more.
I just tried torch.svd, it's 2.5x slower.
On #2337: in my case, the 32x32 limitation of gesvdjBatched would be a showstopper.  The CUDA docs say gesvdaStridedBatched computes eigenvalues of (X.T@X) instead of singular values of (X).  This may be part of why they call it 'approximate'.   For my application, condition numbers within a matrix (and across a batch of matrices) probably aren't too bad, so the approximate approach...might be OK.  I don't see a limitation on m and n for gesvdaStridedBatched , which is good.  I may try that next.

The reason why you don't see any kernel concurrent execution in this case is probably that kernel launch by CPU is longer than kernel execution on GPU.
In cuSolver, more specifically cusolverDn<t>gesvd, lots of kernels are to be launched and executed to compute the SVD. When a matrix size is not large, most kernels in cusolverDn<t>gesvd can finish its execution in less than 10 usec on modern GPUs, which may be shorter than the launch time by CPU..
A possible solution for now is to use the batched API in cuSolver as described above. If cusolverDngetsvdaStridedBatched is fine for you, I will work on making it available in CuPy.
For reference, presentation slides on SVD solvers in cuSolver: https://developer.download.nvidia.com/video/gputechconf/gtc/2019/presentation/s9226-fast-singular-value-decomposition-on-gpus-v2.pdf

OK, thanks.  But, see the image above; do you think the kernel launch by the CPU is more than 116 ms (in the 16 x 1024x1024 case)?  I was starting to think that the problem might be way too many threads being launched, based on the answer here, as well as the large amount of stuff in the nvvp trace
A 128x128 FFT to a first order approximation will spin up ~15,000 threads, so if my thread blocks are ~500 threads each, that would be 30 threadblocks, which will keep a GPU fairly occupied, leaving not much "room" for additional kernels
I just benchmarked cusolverDnSgesvdaStridedBatched in C++, based on a lightly modified version of what's in the cuSOLVER documentation example, on matrices with random entries, N(0,1). The accuracy seems fine for now, but the processing time was a little bit of a shock.  Here are the results, varying #in stack and matrix size (Nr x Nc)
Batch-GeSVD(#=  64, Nr= 256, Nc= 256): time =  1.223s   #gflops ~    2.147   gflops/s ~   1.755
Batch-GeSVD(#=  64, Nr=1024, Nc= 256): time =  1.085s   #gflops ~   21.475   gflops/s ~  19.797
Batch-GeSVD(#=  64, Nr=4096, Nc= 256): time =  1.221s   #gflops ~   17.180   gflops/s ~  14.067
Batch-GeSVD(#=1000, Nr= 256, Nc=  32): time =  0.144s   #gflops ~    2.359   gflops/s ~  16.332
Batch-GeSVD(#=1000, Nr=1024, Nc=  32): time =  0.172s   #gflops ~   34.603   gflops/s ~ 201.018
Batch-GeSVD(#=1000, Nr=4096, Nc=  32): time =  0.198s   #gflops ~  541.065   gflops/s ~ 2738.091
Batch-GeSVD(#=1000, Nr= 256, Nc= 256): time = 15.892s   #gflops ~   33.554   gflops/s ~   2.111
Batch-GeSVD(#=1000, Nr=1024, Nc= 256): time = 15.161s   #gflops ~  335.544   gflops/s ~  22.133

This is in the ballpark of what NVIDIA gets, from what you sent me, on page 12; they get ~0.08 ms for 1000 x 32, I get 0.172 ms, but they are probably on a faster GPU.
Notice that the throughput is terrible for square matrices;  64 x 256 x 256 is ~1.2 seconds, or only an effective ~2 GFLOPs/s (just based on a nominal O(2 * Nstack *(MN2+M2N))!  By comparison, a cupy stream approach for this case is only 0.28 sec.
For my application, I have both square-ish and tall-skinny matrices.  For tall-skinny, I would do the eig(X.T @ X) trick anyway, so it'd be even faster than this, I suppose.
Not sure what I'm going to do yet, but in general, I think having this stacked SVD using cusolverDnSgesvdaStridedBatched on the GPU as an option would be good for cupy.

Thank you for benchmarking cusolverDnSgesvdaStridedBatched so quickly, though the result of the 64 x 256x256 case is bit disappointing...  Anyway, I will work on it later.

OK, thanks. But, see the image above; do you think the kernel launch by the CPU is more than 116 ms (in the 16 x 1024x1024 case)?

I run your repro on Quadro GV100 and CUDA 10.2.  It took about 1.04 sec to compute the 16 x 1024x1024 case and number of kernels launched for this compute was neally 200K. Given each kernel needs 4 usec to launch, total kernel launch time becomes around 0.8 sec. It looks to me that kernel launch by CPU is performance limiter in this case..
        Cupy-Streams: elaps=1.042194

      API calls:   45.07%  840.33ms    196720  4.2710us  3.7370us  377.44us  cudaLaunchKernel

Thanks Akira for the insights and @drcdr for quick testing! As I mentioned earlier I also saw many tiny kernels launched in the nvvp timeline, but I didn't realize it took so much CPU time! Shouldn't this be considered as a critical deficiency, if not a bug, of the cuSOLVER library?

@anaruse: OK, I see now, thanks for explaining.  I just didn't realize how much of an impact these kernel launches were!
@leofang: I agree, thanks, it seems like a very difficult limitation, especially for this use case.
Here are some more results on cusolverDnSgesvdaStridedBatched, and other svd approaches in MKL, and Python:

The table shows timings for several different approaches and cases, for batched SVDs:
C++:
(A) MKL using gebrd and bdsqr;
(B) MKL using geqrf, gebrd, and bdsqr (recommended by Intel for SVD of tall/skinny);
(C) CUDA, using gesvdaStridedBatched (gesvda), the 'approximate algorithm'
Python:
(D) numpy np.linalg.svd (I have numpy MKL installed)
(E) cupy list comprehension [cp.linalg.svd(A_gpi[i]) ...]
(F) cupy streams
An obvious missing approach is eig(A.T@A) for tall/skinny, but then accuracy, etc. would have to be considered.
Comments:

Excel-style conditional-formatting is done row-wise, to highlight best option per row.
Two different initializations are considered: Identity (e.g. np.eye(Nr,Nc)), and Random (gaussian(0,1) entries).  The former might be considered a good case for (C); the latter might be considered a poor case for (C).  At the very bottom, see the mean and stdev of (time-Identity / time-Random).
I've implemented a few C++ unit tests.  First, for Hilbert matrices, the relative error on the largest eigenvalue is ~1e-7; the smallest, ~1e-3.  Second, singular values of Identity match are 1 for MKL and CUDA. Third, eigenvalues match for random matrices, across the C++ approaches.
No multiple runs with confidence intervals here!  Eyeballing it, it looks like +/- 1 to 10% variation across runs.

Some Timing Takeaways (CPU=4790K, GPU=TitanXP):

Identity, Column (C): CUgesvda shines when it doesn't have to do too many iterations.
Random, Column (C): CUgesvda shines only when Nr/Nc is huge.
Random, Column (C) vs (E,F): CUgesvda is sometimes better, sometimes worse than current cupy.
Column (B) vs (D): maybe numpy should consider a tall/skinny routine?  IDK, I'm sure there are other considerations here (stability, accuracy, etc.)
Column (E) vs (F): since no parallelism for cupy SVD, list comprehensions is better than streams.
Mean,Std(Iden./Rand.): python has lower variance, mean closer to 1.

There's a lot to digest here.  I know what I have to do for my application now, but let me know if you have any other questions. As far as the initial issue is concerned - maybe cusolverDnSgesvdaStridedBatched could be considered in cupy for tall/skinny cases.


Remove empty action from grammar

Per #567

@rultor merge

@rultor merge

@yegor256 OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@yegor256 Done! FYI, the full log is here (took me 9min)

@andreoss thanks!


cmd/compile/internal/ssa: regalloc handles arguments poorly

compiling this function with SSA
func bcopy(dst []byte, src []byte) {
	for i := 0; i < len(src); i++ {
		dst[i] = src[i]
	}
}

produces this output after regalloc
bcopy <nil>
  b1:
    v1 = InitMem <mem>
    v19 = Arg <*uint8> {dst} [0] : dst[*uint8]
    v32 = Arg <int> {dst} [8] : dst+8[int]
    v39 = Arg <*uint8> {src} [0] : src[*uint8]
    v34 = Arg <int> {src} [8] : src+8[int]
    v37 = MOVQconst <int> [0] : AX
    Plain -> b2
  b2: <- b1 b4
    v33 = Phi <mem> v1 v28
    v9 = Phi <int> v37 v31 : AX
    v36 = LoadReg <int> v34 : CX
    v5 = CMPQ <flags> v9 v36
    LT v5 -> b3 b5 (likely)
  b3: <- b2
    ULT v5 -> b6 b8 (likely)
  b6: <- b3
    v24 = LoadReg <*uint8> v39 : DX
    v20 = MOVBloadidx1 <byte> [0] v24 v9 v33 : BX
    v26 = LoadReg <int> v32 : BP
    v12 = CMPQ <flags> v9 v26
    ULT v12 -> b4 b9 (likely)
  b4: <- b6
    v25 = LoadReg <*uint8> v19 : SI
    v28 = MOVBstoreidx1 <mem> [0] v25 v9 v20 v33
    v31 = ADDQconst <int> [1] v9 : AX
    Plain -> b2
  b9: <- b6
    Plain -> b7
  b7: <- b8 b9
    v16 = CALLstatic <mem> {runtime.panicindex} [0] v33
    Exit v16
  b8: <- b3
    Plain -> b7
  b5: <- b2
    Ret v33

v34(len(src)) and v39(ptr(src)) both get loaded inside the loop body, even though their assigned registers are free for the entire function. I suspect it's because Arg values are handled as pre-spilled.

cc @randall77 @dr2chase

I'm working on this one.

It's more general than just args, any read-only use of a value within a loop has this problem at the moment.

Weird. I just tried
var blah = 1

func bcopy(dst []byte, src []byte) {
	y := blah
	for i := 0; i < len(src); i++ {
		dst[i] = byte(y)*src[i]
	}
}

and that produces a load into y which is registerized across the entire function. If you make blah an argument, then it doesn't registerize well because y becomes a copy of an Arg value.

Right.  Reading a global forces the load to happen before the loop starts.

This is fixed, probably by https://go-review.googlesource.com/c/20151/


fix(pure_pursuit): fix build error for Humble

Description
pure_pursuitのhumbleでのビルドエラーを修正

https://tier4.atlassian.net/browse/AEAP-488
Tests performed

ビルドが成功すること
Effects on system behavior

Not applicable.
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[ ] I've confirmed the contribution guidelines.
[ ] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

Codecov Report

:exclamation: No coverage uploaded for pull request base (beta/v0.3.16@e5ea254). Click here to learn what that means.
Patch has no changes to coverable lines.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@              Coverage Diff               @@
##             beta/v0.3.16    #434   +/-   ##
==============================================
  Coverage                ?   0.00%
==============================================
  Files                   ?       9
  Lines                   ?     397
  Branches                ?       0
==============================================
  Hits                    ?       0
  Misses                  ?     397
  Partials                ?       0

Flag
Coverage Δ

differential
0.00% <0.00%> (?)

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


[Bug] emoji picker not showing

Initial checklist

[X] I agree to follow the code of conduct
[X] I searched issues and discussions and couldn’t find anything (or linked relevant results below)

Affected packages and versions
v7
Link to runnable example
See the playground
Steps to reproduce
See the playground
Expected behavior
Should open emoji picker after typing :...
Actual behavior
Nothing happens.
Runtime
No response
OS
No response
Build and bundle tools
No response

We don't provide emoji picker now. You can use slash plugin to build one yourself.


train speed

hello, NAML , The speed of model training is very slow  on GPU. Is this normal? How fast did you train ?

hello, NAML , The speed of model training is very slow on GPU. Is this normal? How fast did you train ?

I can't remember my training speed, but it shouldn't be very slow. It should only take several minutes if you use MIND-small for training with 4 GPUs. Maybe you need to check whether both the data and the model are on the GPU.


fix: server-create-params network boding config

这个 PR 实现什么功能/修复什么问题:
修复: server-create-params 中的 netowrk 没有考虑 bonding 的配置
是否需要 backport 到之前的 release 分支:

release/2.8.0
/cc @swordqiu

/cherrypick release/2.8.0

Codecov Report

Merging #507 into master will increase coverage by 0.02%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master    #507      +/-   ##
=========================================
+ Coverage    7.37%    7.4%   +0.02%
=========================================
  Files         345     345
  Lines       54221   54230       +9
=========================================
+ Hits         4001    4015      +14
+ Misses      49844   49841       -3
+ Partials      376     374       -2

Flag
Coverage Δ

#aFlag
7.4% <0%> (+0.02%)
:arrow_up:

Impacted Files
Coverage Δ

pkg/compute/models/guests.go
0.67% <0%> (-0.01%)
:arrow_down:

pkg/util/rbacutils/rabc.go
73.86% <0%> (+5.3%)
: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 d988e7d...27ffbf8. Read the comment docs.

/lgtm
/approve


Strengths and other quantities in twiss table miss _end_point

In [181]: tw4 = line.twiss(strengths=True)

In [182]: len(tw4.s)
Out[182]: 4789

In [183]: len(tw4.length)
Out[183]: 4788

In [184]: len(tw4.k0sl)
Out[184]: 4788

There was an inconsistency in the line used for the test


Add a function to the Incept translator to get the number of cards (ie. ![cardcount])

(Added based on suggestion from virtualflesh)

Added. This will be in a future build.

nice!


[FirebaseMessaging] FirebaseApp.configure() triggers "APNS device token not set before retrieving FCM Token"

Description
I noticed that everytime an app executes the method FirebaseApp.configure(), the SDK throws the following output in the console:
APNS device token not set before retrieving FCM Token for Sender ID '804880211453'.Be sure to re-retrieve the FCM token once the APNS device token is set.

is this a valid warning message? I mean, how can we event setup the APNS device token before the whole SDK initialization?

I noticed this behavior is also happening in older SDK version like 9.4.0

Additionally I noticed that automatically the SDK is making an API call to https://fcmtoken.googleapis.com/register without the apns token. The exact same call that was sending a 400 when this behavior happened last week before the rollback here: https://github.com/firebase/firebase-ios-sdk/issues/10679#issuecomment-1396293848

how can we avoid that /register api call at the very beginning of the SDK initialization?

Reproducing the issue

Download and configure the official quick-start ios project: https://github.com/firebase/quickstart-ios
Run the app "MessagingExampleSwift" on a real iPhone
You will see this error in console right after FirebaseApp.configure() is executed:

APNS device token not set before retrieving FCM Token for Sender ID '676015592495'. Notifications to this FCM Token will not be delivered over APNS.Be sure to re-retrieve the FCM token once the APNS device token is set.

Firebase SDK Version
10.4.0
Xcode Version
13.4
Installation Method
Swift Package Manager
Firebase Product(s)
Messaging
Targeted Platforms
iOS
Relevant Log Output
2023-01-26 18:22:15.695691-0600 MessagingExampleSwift[1179:196158] [SceneConfiguration] Info.plist contained no UIScene configuration dictionary (looking for configuration named "(no name)")
2023-01-26 18:22:15.713204-0600 MessagingExampleSwift[1179:196158] [Assert] UINavigationBar decoded as unlocked for UINavigationController, or navigationBar delegate set up incorrectly. Inconsistent configuration may cause problems. navigationController=<UINavigationController: 0x10200ea00>, navigationBar=<UINavigationBar: 0x100c07830; frame = (0 0; 0 50); opaque = NO; autoresize = W; gestureRecognizers = <NSArray: 0x283c52400>; layer = <CALayer: 0x28324aa60>> delegate=0x10200ea00
2023-01-26 18:22:15.865301-0600 MessagingExampleSwift[1179:196687] 10.4.0 - [FirebaseAnalytics][I-ACS023007] Analytics v.10.4.0 started
2023-01-26 18:22:15.865503-0600 MessagingExampleSwift[1179:196687] 10.4.0 - [FirebaseAnalytics][I-ACS023008] To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled (see http://goo.gl/RfcP7r)
2023-01-26 18:22:15.877790-0600 MessagingExampleSwift[1179:196762] 10.4.0 - [FirebaseMessaging][I-FCM001000] FIRMessaging Remote Notifications proxy enabled, will swizzle remote notification receiver handlers. If you'd prefer to manually integrate Firebase Messaging, add "FirebaseAppDelegateProxyEnabled" to your Info.plist, and set it to NO. Follow the instructions at:
https://firebase.google.com/docs/cloud-messaging/ios/client#method_swizzling_in_firebase_messaging
to ensure proper integration.
2023-01-26 18:22:15.895393-0600 MessagingExampleSwift[1179:196158] [LayoutConstraints] Unable to simultaneously satisfy constraints.
	Probably at least one of the constraints in the following list is one you don't want.
	Try this:
		(1) look at each constraint and try to figure out which you don't expect;
		(2) find the code that added the unwanted constraint or constraints and fix it.
(
    "<_UILayoutSupportConstraint:0x281154320 _UILayoutGuide:0x100a2ae60.height == 20   (active)>",
    "<_UILayoutSupportConstraint:0x2811542d0 _UILayoutGuide:0x100a2ae60.bottom == UIView:0x100a288a0.bottom   (active)>",
    "<NSLayoutConstraint:0x28117bd90 UIButton:0x100a28e20'Log Token'.height == 44   (active)>",
    "<NSLayoutConstraint:0x281154050 UIButton:0x100a28e20'Log Token'.centerY == UIView:0x100a288a0.centerY   (active)>",
    "<NSLayoutConstraint:0x2811540f0 V:[UIButton:0x100a28e20'Log Token']-(103.5)-[UILabel:0x100a07df0]   (active)>",
    "<NSLayoutConstraint:0x281154190 V:[UILabel:0x100a07df0]-(194)-[_UILayoutGuide:0x100a2ae60]   (active)>",
    "<NSLayoutConstraint:0x281154730 'UIView-Encapsulated-Layout-Height' UIView:0x100a288a0.height == 615   (active)>"
)

Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x28117bd90 UIButton:0x100a28e20'Log Token'.height == 44   (active)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2023-01-26 18:22:15.895684-0600 MessagingExampleSwift[1179:196158] [LayoutConstraints] Unable to simultaneously satisfy constraints.
	Probably at least one of the constraints in the following list is one you don't want.
	Try this:
		(1) look at each constraint and try to figure out which you don't expect;
		(2) find the code that added the unwanted constraint or constraints and fix it.
(
    "<_UILayoutSupportConstraint:0x281154320 _UILayoutGuide:0x100a2ae60.height == 20   (active)>",
    "<_UILayoutSupportConstraint:0x2811542d0 _UILayoutGuide:0x100a2ae60.bottom == UIView:0x100a288a0.bottom   (active)>",
    "<NSLayoutConstraint:0x281154050 UIButton:0x100a28e20'Log Token'.centerY == UIView:0x100a288a0.centerY   (active)>",
    "<NSLayoutConstraint:0x2811540f0 V:[UIButton:0x100a28e20'Log Token']-(103.5)-[UILabel:0x100a07df0]   (active)>",
    "<NSLayoutConstraint:0x281154190 V:[UILabel:0x100a07df0]-(194)-[_UILayoutGuide:0x100a2ae60]   (active)>",
    "<NSLayoutConstraint:0x281154730 'UIView-Encapsulated-Layout-Height' UIView:0x100a288a0.height == 615   (active)>"
)

Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x281154190 V:[UILabel:0x100a07df0]-(194)-[_UILayoutGuide:0x100a2ae60]   (active)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
2023-01-26 18:22:17.915505-0600 MessagingExampleSwift[1179:196681] Metal API Validation Enabled
2023-01-26 18:22:18.404600-0600 MessagingExampleSwift[1179:196682] 10.4.0 - [FirebaseAnalytics][I-ACS800023] No pending snapshot to activate. SDK name: app_measurement
2023-01-26 18:22:18.427214-0600 MessagingExampleSwift[1179:196763] 10.4.0 - [FirebaseMessaging][I-FCM002022] APNS device token not set before retrieving FCM Token for Sender ID '804880211453'.Be sure to re-retrieve the FCM token once the APNS device token is set.
2023-01-26 18:22:18.427296-0600 MessagingExampleSwift[1179:196763] 10.4.0 - [FirebaseMessaging][I-FCM002022] Declining request for FCM Token since no APNS Token specified

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet

Replace this line with the contents of your Package.resolved.

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet

PODS:
  - FirebaseAnalytics (10.4.0):
    - FirebaseAnalytics/AdIdSupport (= 10.4.0)
    - FirebaseCore (~> 10.0)
    - FirebaseInstallations (~> 10.0)
    - GoogleUtilities/AppDelegateSwizzler (~> 7.8)
    - GoogleUtilities/MethodSwizzler (~> 7.8)
    - GoogleUtilities/Network (~> 7.8)
    - "GoogleUtilities/NSData+zlib (~> 7.8)"
    - nanopb (< 2.30910.0, >= 2.30908.0)
  - FirebaseAnalytics/AdIdSupport (10.4.0):
    - FirebaseCore (~> 10.0)
    - FirebaseInstallations (~> 10.0)
    - GoogleAppMeasurement (= 10.4.0)
    - GoogleUtilities/AppDelegateSwizzler (~> 7.8)
    - GoogleUtilities/MethodSwizzler (~> 7.8)
    - GoogleUtilities/Network (~> 7.8)
    - "GoogleUtilities/NSData+zlib (~> 7.8)"
    - nanopb (< 2.30910.0, >= 2.30908.0)
  - FirebaseCore (10.4.0):
    - FirebaseCoreInternal (~> 10.0)
    - GoogleUtilities/Environment (~> 7.8)
    - GoogleUtilities/Logger (~> 7.8)
  - FirebaseCoreInternal (10.4.0):
    - "GoogleUtilities/NSData+zlib (~> 7.8)"
  - FirebaseInstallations (10.4.0):
    - FirebaseCore (~> 10.0)
    - GoogleUtilities/Environment (~> 7.8)
    - GoogleUtilities/UserDefaults (~> 7.8)
    - PromisesObjC (~> 2.1)
  - FirebaseMessaging (10.4.0):
    - FirebaseCore (~> 10.0)
    - FirebaseInstallations (~> 10.0)
    - GoogleDataTransport (~> 9.2)
    - GoogleUtilities/AppDelegateSwizzler (~> 7.8)
    - GoogleUtilities/Environment (~> 7.8)
    - GoogleUtilities/Reachability (~> 7.8)
    - GoogleUtilities/UserDefaults (~> 7.8)
    - nanopb (< 2.30910.0, >= 2.30908.0)
  - GoogleAppMeasurement (10.4.0):
    - GoogleAppMeasurement/AdIdSupport (= 10.4.0)
    - GoogleUtilities/AppDelegateSwizzler (~> 7.8)
    - GoogleUtilities/MethodSwizzler (~> 7.8)
    - GoogleUtilities/Network (~> 7.8)
    - "GoogleUtilities/NSData+zlib (~> 7.8)"
    - nanopb (< 2.30910.0, >= 2.30908.0)
  - GoogleAppMeasurement/AdIdSupport (10.4.0):
    - GoogleAppMeasurement/WithoutAdIdSupport (= 10.4.0)
    - GoogleUtilities/AppDelegateSwizzler (~> 7.8)
    - GoogleUtilities/MethodSwizzler (~> 7.8)
    - GoogleUtilities/Network (~> 7.8)
    - "GoogleUtilities/NSData+zlib (~> 7.8)"
    - nanopb (< 2.30910.0, >= 2.30908.0)
  - GoogleAppMeasurement/WithoutAdIdSupport (10.4.0):
    - GoogleUtilities/AppDelegateSwizzler (~> 7.8)
    - GoogleUtilities/MethodSwizzler (~> 7.8)
    - GoogleUtilities/Network (~> 7.8)
    - "GoogleUtilities/NSData+zlib (~> 7.8)"
    - nanopb (< 2.30910.0, >= 2.30908.0)
  - GoogleDataTransport (9.2.1):
    - GoogleUtilities/Environment (~> 7.7)
    - nanopb (< 2.30910.0, >= 2.30908.0)
    - PromisesObjC (< 3.0, >= 1.2)
  - GoogleUtilities/AppDelegateSwizzler (7.11.0):
    - GoogleUtilities/Environment
    - GoogleUtilities/Logger
    - GoogleUtilities/Network
  - GoogleUtilities/Environment (7.11.0):
    - PromisesObjC (< 3.0, >= 1.2)
  - GoogleUtilities/Logger (7.11.0):
    - GoogleUtilities/Environment
  - GoogleUtilities/MethodSwizzler (7.11.0):
    - GoogleUtilities/Logger
  - GoogleUtilities/Network (7.11.0):
    - GoogleUtilities/Logger
    - "GoogleUtilities/NSData+zlib"
    - GoogleUtilities/Reachability
  - "GoogleUtilities/NSData+zlib (7.11.0)"
  - GoogleUtilities/Reachability (7.11.0):
    - GoogleUtilities/Logger
  - GoogleUtilities/UserDefaults (7.11.0):
    - GoogleUtilities/Logger
  - nanopb (2.30909.0):
    - nanopb/decode (= 2.30909.0)
    - nanopb/encode (= 2.30909.0)
  - nanopb/decode (2.30909.0)
  - nanopb/encode (2.30909.0)
  - PromisesObjC (2.1.1)

DEPENDENCIES:
  - FirebaseAnalytics
  - FirebaseMessaging (~> 10.4.0)

SPEC REPOS:
  trunk:
    - FirebaseAnalytics
    - FirebaseCore
    - FirebaseCoreInternal
    - FirebaseInstallations
    - FirebaseMessaging
    - GoogleAppMeasurement
    - GoogleDataTransport
    - GoogleUtilities
    - nanopb
    - PromisesObjC

SPEC CHECKSUMS:
  FirebaseAnalytics: 0be84b933ca3222bca03e8cccf020ad9b1c3c6ff
  FirebaseCore: b8697a177690b69b0dbce9d612b69b893be70469
  FirebaseCoreInternal: e301297f4c15a17489e48ed722d733b1578e0c02
  FirebaseInstallations: 36b38c733fd37e50857e5e8d74138648f466f18c
  FirebaseMessaging: e7304d6ce5f83d9139f0a61383a2302beb99b111
  GoogleAppMeasurement: 173fa22ce7d62c29332568e853b39b2525a0e584
  GoogleDataTransport: ea169759df570f4e37bdee1623ec32a7e64e67c4
  GoogleUtilities: c2bdc4cf2ce786c4d2e6b3bcfd599a25ca78f06f
  nanopb: b552cce312b6c8484180ef47159bc0f65a1f0431
  PromisesObjC: ab77feca74fa2823e7af4249b8326368e61014cb

PODFILE CHECKSUM: 5034a851dd30eae26a4f25ae4a6dcccc1274f47f

COCOAPODS: 1.11.3

This innocuous error is discussed as #1 in  https://github.com/firebase/firebase-ios-sdk/issues/10679#issuecomment-1402776795. It's being investigated.

I am having the same issue @DanielReyesDev thank you for bringing this up, couldn't figure out what the issue was.


Page.navigate + trigger on Page.frameStoppedLoading event is not reliable

Reason is that the frameId changes between the ack and relevant event. This is not how I interpreted the devtools protocol docs https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate
Have filed a bug with Chromium to confirm this:
https://bugs.chromium.org/p/chromium/issues/detail?id=747224

Extended the low-level driver in 7a10b2c to allow for an input event to be the id source for the trigger event, and now the go method uses the Page.frameNavigated event as the id source. Manually tested this to work.
This approach isn't as robust as relying on the command ack payload (if it contained the correct frameId) but given that each tab has it's own context, and it is unlikely to send concurrent go commands to the tab, waiting for the first Page.frameNavigated event works as intended.


conv2d schedule for cuda works wrong for some filter sizes

With flag values in [512,768] computations are not spited and generated kernel have too big threadgroup shared input. Reproduced on convolution with input (1, 256, 13, 13) and kernel (512, 256, 3, 3)

@Laurawly can you look into this?

@notorca I've tried running verify_conv2d_nchw(1, 256, 13, 512, 3, 1, 1)
verify_conv2d_nchw(1, 256, 13, 512, 3, 1, 0) in https://github.com/dmlc/tvm/blob/master/topi/tests/python/test_topi_conv2d_nchw.py and both cases work fine on K80 GPU. Could you provide the cases which don't work for you? Thanks!

My bad, I described the problem in wrong way. Problem is not in incorrect calculations. I'm running code produced by tvm with 'metal' target on iOS. And for some input kernel sizes it fails in runtime, because metal can't allocate enough shared memory. And looks like it is related to the gap in conditions here https://github.com/dmlc/tvm/blob/master/topi/python/topi/cuda/conv2d_nchw.py#L437 for flag values in [512,768]. In my tests
verify_conv2d_nchw(1, 256, 13, 512, 3, 1, 1) # flag=768, can't be calculated
verify_conv2d_nchw(1, 128, 13, 512, 3, 1, 1)  # flag=640, can't be calculated
verify_conv2d_nchw(1, 512, 13, 512, 3, 1, 1)  # flag=1024, can be calculated

I've added print(tvm.lower(s1, [A, W, B], simple_mode=True)) line to the test, to check generated pseudocode, add looks like problem in the first two cases is in this allocation:
  // attr [W.shared] storage_scope = "shared"
  allocate W.shared[float32 * 4672]

While in third case:
  // attr [W.shared] storage_scope = "shared"
  allocate W.shared[float32 * 1168]

log.txt
Is there any way to control amount of the cache memory allocated in the schedule to avoid such problem?

@notorca Thanks for the clarification! I see, so the problem is related to hardware. I tried to reduce the number of threads (num_thread_x) here: https://github.com/dmlc/tvm/blob/master/topi/python/topi/cuda/conv2d_nchw.py#L250
And when it's changed to 8 instead of 64 (https://github.com/dmlc/tvm/blob/master/topi/python/topi/cuda/conv2d_nchw.py#L255) or 16 (https://github.com/dmlc/tvm/blob/master/topi/python/topi/cuda/conv2d_nchw.py#L298), W.shared becomes [float32 * 584].
@tqchen Maybe we should use parameters specific to hardware just like "tvm.target.current_target(allow_none=False).max_num_threads"?

Sorry for the delayed I think we could try to set max_num_thread as optional target parameter, like with tvm.target.cuda(max_num_threads=10). PR is welcomed


Issue: Implement Logging for Model Training and Predictions

The code lacks a logging mechanism to track important events, such as when the model is trained, saved, or when a prediction is made. Logging would help in debugging and monitoring model performance.
Suggested Changes:
Add logging to track when models are saved or loaded.
Log model training details, such as RMSE or other performance metrics.
Log prediction inputs and outputs for traceability.

Sure, @vibhorjoshi, go ahead!

@yashasvini121 but I given a mentor role

@vibhorjoshi, If you're a mentor in GSSOC Extended, you can either work on this personally without it counting toward program contributions or leave the issue for others. However, when creating future issues, do mention your role in the program (if any) beforehand.


GeoTIFF in a different projection than Map View

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
I don't know if this is a feature and if it's probably a question for geotiffjs, but I want to know if it's possible to render a GeoTIFF (Ex.: EPSG:31982) in a different projection from the Map View (EPSG:3857)?
Describe the solution you'd like
If this is a real possible feature or I don't know the correct configuration to make this work

Oh my bad, there is issue about this. I'm closing. Sorry


'RegressionCatalog.RegressionTrainers' does not contain a definition for 'Ols'

Running the code example from this link gives the following exception:
'RegressionCatalog.RegressionTrainers' does not contain a definition for 'Ols' and no accessible extension method 'Ols' accepting a first argument of type 'RegressionCatalog.RegressionTrainers' could be found
Note: I'm using ML.Net 2.0

@luisquintanilla Can you take a look at this issue about the ML.NET API docs?

@luisquintanilla @gewarren Is there any update on this error?

Yup. I'll take a look.

@luisquintanilla Yes that fixed the error so I would definitely edit the example code to reflect the needed package. Is there a full list of regression trainers since some of them seem to require different libraries such as this one or the LightGBM trainer. Also why isn't the OLS trainer in its own separate package like the rest?


deprecate master branch

since gh-pages will be the main focus, it's best to get master out of the way.

Done!


[AutoPR azure-kusto/resource-manager] Added data connection check name availability operation

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/5648

Build output:

Build output:

This PR has been merged into https://github.com/Azure/azure-sdk-for-java/pull/3168


Feature : Add Save Button or Saved Status Indicator to API Key Modal

Problem Statement
The website currently provides a modal with an input field for users to paste their API key. Although the API key is saved to the local storage upon pasting, there is no clear indication or feedback for the user to know if the key has been saved successfully. This lack of confirmation can lead to confusion and uncertainty for users, potentially diminishing their experience with the platform.
Proposed Solution
I propose adding a "Save" button or a "Saved" status indicator within the API key modal to provide clear feedback to users when their API key has been saved successfully. When users paste their API key into the input field and click the "Save" button, the application should save the key to the local storage and display a "Saved" status indicator (e.g., a checkmark icon or a brief text message) to confirm that the action has been completed.

Good idea! I think a debounced saved indicator would suffice. Maybe a small text beneath the input that shows up for a bit.


fix: added check for native fee subtraction #118

https://github.com/spearbit-audits/LiFi/issues/118#issuecomment-1256404690


Some letters will never be generated

Grapheme generator needs to be tweaked to generate letters besides Os and Ps and Bs.

super rare lol!

We can return to the "art" after the hackathon when we are free to spend time tweaking the algorithm.


Fix GitHub license field

GitHub doesn't seem to understand what the license is:

I didn't recognize the license file either, but it's actually the 3-Clause BSD license.
I don't think we should change the license, but there must be a way to get GitHub to display the right thing. We probably should update the copyright year and also add "et, al." to the license as well.

This is weird, licensee seems to detect it fine:
$ licensee
License:        NOASSERTION
Matched files:  LICENSE, LICENSE-DEPENDENCIES, README.md, sqlite3.gemspec
LICENSE:
  Content hash:  9af635d4936231a9dcddc9fb82fda06054549710
  Attribution:   Copyright (c) 2004, Jamis Buck<EMAIL_ADDRESS>  Confidence:    98.72%
  Matcher:       Licensee::Matchers::Dice
  License:       BSD-3-Clause
  Closest non-matching licenses:
    BSD-3-Clause similarity:  98.72%
    BSD-4-Clause similarity:  82.44%
    BSD-2-Clause similarity:  81.75%
LICENSE-DEPENDENCIES:
  Content hash:  ff81633c53aece3489d4541bdc15ab5a5c6a8938
  License:       NOASSERTION
  Closest non-matching licenses:
    ISC similarity:         20.14%
    Zlib similarity:        19.05%
    PostgreSQL similarity:  14.43%
README.md:
  Content hash:  48a9b510f0fb871de54d6b0cb0eef7226d8bcaef
  Confidence:    90.00%
  Matcher:       Licensee::Matchers::Reference
  License:       BSD-3-Clause
  Closest non-matching licenses:
    WTFPL similarity:  5.66%
    0BSD similarity:   1.94%
    ISC similarity:    1.72%
sqlite3.gemspec:
  Confidence:  90.00%
  Matcher:     Licensee::Matchers::Gemspec
  License:     BSD-3-Clause

see #501


Multiple apps example

The sample JSON is good but I would include an example supporting multiple apps as I imagine most app publishers have more than just one. e.g.
{
"associatedApplications": [
{
"applicationId": "{YOUR-APP-ID-HERE}"
},
{
"applicationId": "{YOUR-OTHER-APP-ID-HERE}"
}
]
}

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 61edea45-b5d6-05b3-33c3-2265ef8cb309
Version Independent ID: c7d5813c-5cf1-44c3-88ff-3c194d3e44ad
Content: Configure an app's publisher domain - Microsoft identity platform
Content Source: articles/active-directory/develop/howto-configure-publisher-domain.md
Service: active-directory
Sub-service: develop
GitHub Login: @rwike77
Microsoft Alias: ryanwi

@LDS2020 Thanks for the feedback !  I have assigned this issue to content author to investigate and update the document as appropriate.

Thanks for the suggestion.  I just updated the article, changes should go live this afternoon.  #please-close


Remove shellcheck github action

Remove shellcheck github action since there are no shell scripts in the role.

@nhosoi We have already discussed this issue with @richm. And this issue should be dealt with in linux-system-roles/.github repo.
Please see: https://github.com/linux-system-roles/journald/pull/11#issuecomment-1414539362


Problem with setdir

Hi, i think this is related to https://github.com/coreos/etcd/issues/1519
Environment:
etcd version: v2.2.5
Configured 3 nodes cluster.
Running on docker 1.8.2
Im trying to use setdir to update a directory ttl without asking etcd if the directory already exists.
On the first run all goes fine:
# etcdctl --debug setdir -ttl=30 /lol
start to sync cluster using endpoints(http://<IP_ADDRESS>:4001,http://<IP_ADDRESS>:2379)
cURL Command: curl -X GET http://<IP_ADDRESS>:4001/v2/members
cURL Command: curl -X GET http://<IP_ADDRESS>:2379/v2/members
got endpoints(http://<IP_ADDRESS>:2379,http://<IP_ADDRESS>:2379,http://<IP_ADDRESS>:2379) after sync
Cluster-Endpoints: http://<IP_ADDRESS>:2379, http://<IP_ADDRESS>:2379, http://<IP_ADDRESS>:2379
cURL Command: curl -X PUT http://<IP_ADDRESS>:2379/v2/keys/lol?dir=true -d "ttl=30"

But if i run it again to update the ttl when directory exists i get the following error:
# etcdctl -debug setdir -ttl=30 /lol
start to sync cluster using endpoints(http://<IP_ADDRESS>:4001,http://<IP_ADDRESS>:2379)
cURL Command: curl -X GET http://<IP_ADDRESS>:4001/v2/members
cURL Command: curl -X GET http://<IP_ADDRESS>:2379/v2/members
got endpoints(http://<IP_ADDRESS>:2379,http://<IP_ADDRESS>:2379,http://<IP_ADDRESS>:2379) after sync
Cluster-Endpoints: http://<IP_ADDRESS>:2379, http://<IP_ADDRESS>:2379, http://<IP_ADDRESS>:2379
cURL Command: curl -X PUT http://<IP_ADDRESS>:2379/v2/keys/lol?dir=true -d "ttl=30"
Error:  102: Not a file (/lol) [9899]

And the ttl isn´t updated on the folder. (expires normally after 30 seconds)

@r0j4z0 https://github.com/coreos/etcd/issues/1519#issuecomment-67053097

I can update the ttl of an existing folder with:
curl -XPUT -d ttl=30 -d dir=true -d prevExist=true /lol
i want to achieve the same with etcdctl.
I expect setdir use prevExist=true

@r0j4z0 Why not using updatedir?

@xiang90 Because i dont know if the directory exists or not. I want to avoid to ask to etcd for each folder i want to update the TTL.

I expect setdir use prevExist=true

Because i dont know if the directory exists or not.

This seems to be contradict with what you just said. etcd do not allow you blindly replace a dir, so what you want is not achievable. You have to check first.

My usecase is:
I have a function that receives an etcd key and value
for the key i will set the ttl to 15 seconds, for the "path" i want to set the ttl to 30 seconds, this function is called every 5 seconds so it will update the ttl's or leave it expires if no key/value was received.
As i understand, the documentation says setdir parameter can be used to create or update a directory, thats is why i thought i can use setdir without worrying to check if the directory exists or not. So if setdir can't make an update over a directory that already exists, what is the difference with mkdir?


getProcedures() does not return SPECIFIC_NAME

Driver version
12.6.0.jre11
SQL Server version
mcr.microsoft.com/mssql/server:2022-latest
Client Operating System
Maven home: /opt/homebrew/Cellar/maven/3.9.6/libexec
Java version: 21.0.2, vendor: Eclipse Adoptium, runtime: /Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home
Default locale: en_KR, platform encoding: UTF-8
OS name: "mac os x", version: "14.3", arch: "aarch64", family: "mac"

JAVA/JVM version
Maven home: /opt/homebrew/Cellar/maven/3.9.6/libexec
Java version: 21.0.2, vendor: Eclipse Adoptium, runtime: /Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home
Default locale: en_KR, platform encoding: UTF-8
OS name: "mac os x", version: "14.3", arch: "aarch64", family: "mac"

Table schema
?
Problem description
The result of DatabaseMetaData#getProcedures does not contain SPECIFIC_NAME column.
Expected behavior
The result set should contain the column of SPECIFIC_NAME
Actual behavior
The column is missing.
Error message/stack trace
Any other details that can be helpful
JDBC trace logs

This is related to #849.
I'm writing a general library depends on the specification and the workaround explained on the issue is not applicable.

getProcedureColumns also missing the column

This has been requested before in #448 and #1491.
We're hesitant to make these changes as the potential performance impact (as mentioned in #849) would be quite large. An option is to introduce this as an optional change under a connection string option, but then the driver would be in the awkward position where the more compliant option is not the default one. Not to mention the work that would go into developing this option, not just for getProcedures or getProcedureColumns, but for all DatabaseMetadata methods that specify this extra column.
For the moment this will be marked as an enhancement, just like #448 and #1491 above, but its not clear when work on a SPECIFIC_NAME column for these methods would take place.


register axel.is-cool.dev

Requirements

[x] You have completed your website.
[x] The website is reachable.
[x] The CNAME record doesn't contain https:// or /.
[x] There is sufficient information at the owner field.
[x] Your website is not hosting on the following due to SSL issues: Vercel, Netlify

Description

I want to use this domain to have a best one, because actually it isn't so cool to type it in the browser. In this website, i will continue learning coding in HTML, PHP and CSS. (im french :fr: )
Link to Website

Actual website : http://arddcn.qnza1539.odns.fr/

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 can sign the CLA by just posting a Pull Request Comment same as the below format.

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

You can retrigger this bot by commenting recheck in this Pull Request. Posted by the CLA Assistant Lite bot.


fixing issue Native libraries list #3896 by adding to integrations table

added azure and masstransit to integrations this also includes changes from pr added azure and masstransit to integrations for natively instrumented libraries #4308 fixing issue Native libraries list https://github.com/open-telemetry/opentelemetry.io/issues/3896 by adding to integrations table

I have signed the CLA let me know if I didn't do it right or need to select something different.

I have signed the CLA let me know if I didn't do it right or need to select something different.

looks good now:-)

/fix:refcache


Convert Nix package to Docker images

To allow users who want to stick with the Docker ecosystem, we should automatically build a Docker image of our Nix package when we make an update to our Nix files
https://nix.dev/tutorials/nixos/building-and-running-docker-images

We love helping new contributors!
If you have questions or need help as you work on your first Ockam contribution, please leave a comment on this discussion.
If you're looking for other issues to contribute to, checkout this discussion and labels -  https://github.com/build-trust/ockam/labels/good first issue or https://github.com/build-trust/ockam/labels/help wanted

https://github.com/build-trust/ockam/issues/5605

Hi @metaclips
this issue looks interesting to me...
would like to take it up....
(P.S. Never worked with Nix. but always wanted to :) maybe its nice issue to get lil exposure to nix)


Fix character info section not saving

The items in the Character Info section of the sheet were not defined as type="text" and did not have the attr_ for each of the attributes.

These changes are incompatible with other pull requests made to this sheet.


fix: allow parameters without .examples

Introduced in version 0.6 the field examples on Parameter is mandatory. When parsing a schema with a parameter that does not have examples you receive an error like that:
called `Result::unwrap()` on an `Err` value: Yaml(Error("paths./.get.parameters: data did not match any variant of untagged enum ObjectOrReference", line: 14, column: 9))

This PR adds a test and makes the field optional.

Fix released in v0.8.1


.media-right and .media-left positioning

I've been working on removing some deprecated items from our bootstrap instance and ran into this issue, we are currently running with v3.3.4. When changing the View more link from .pull-right to .media-right it seems it loses the float that had previously been put on the .pull-right class. From the looks of it they are missing float declarations.
It doesn't quite have the styling but you can see the alignment on the last link element when you change from pull-right to media-right
Fiddle: http://jsfiddle.net/07w13nL8/10/
Screenshot: http://imgur.com/tuSJSYU

Hi @knbcoder!
You appear to have posted a live example (http://fiddle.jshell.net/07w13nL8/9/show/light/), which is always a good first step. However, according to Bootlint, your example has some Bootstrap usage errors, which might potentially be causing your issue:

line 45, column 25: W010: Using .pull-left or .pull-right as part of the media object component is deprecated as of Bootstrap v3.3.0. Use .media-left or .media-right instead.

You'll need to fix these errors and post a revised example before we can proceed further.
Thanks!
(Please note that this is a fully automated comment.)

I've updated that fiddle. So to see the change you'll have to change it from media to pull to see the issue we're experiencing.

Simplifying your markup more (which may have fixed a bug, jsfiddle showed some red code) and removing the references to classes not included in Bootstrap shows no problem in the alignment using media classes: https://jsbin.com/xiluke/edit?html,output. Keep in mind the media alignment classes (e.g., .media-right) use table styles, not floats.


feat: add flip operator refactoring

Resolves #55071

@microsoft-github-policy-service agree

Different people may expect the flipping to work differently. Someone may expect < to be flipped as >=.
Could that be a problem?

Different people may expect the flipping to work differently. Someone may expect < to be flipped as >=. Could that be a problem?

Flipping x < y to y >= x may change the expression evaluation result, so I think 99% of developers wouldn't expect this refactoring to work that way.

Different people may expect the flipping to work differently. Someone may expect < to be flipped as >=. Could that be a problem?

Flipping x < y to y >= x may change the expression evaluation result, so I think 99% of developers wouldn't expect this refactoring to work that way.

Sorry, I didn't notice that the operands are also exchanged. XD

I want #55071 be accepted before reviewing the code. Otherwise the design might significantly change what code is needed.


Getting OIDC connector working with keycloak

I'm trying to follow the documentation provided here, I'm trying to connect to our local keycloak instance
https://www.deploykf.org/guides/platform/deploykf-authentication/#external-identity-providers
I was able to get everything working if I put everything in the value file as plain text, however, I'm having a hard time using the secrets. I apologize if this is a basic question, but I'm having a hard time here.
Documentation has the following,
## NOTE:
          ##  - the `configExistingSecretKey` key in the secret must
          ##    contain a string of YAML that is formatted the same
          ##    as the CONTENTS of the `config` map key above
          #configExistingSecret: "my-dex-connector-secret"
          #configExistingSecretKey: "google-config"

This is how I create the secret
echo -n '
config:
    issuer : "https://xxxx.rs.gsu.edu/auth/realms/xxxx"
    clientID : "kubeflow"
    clientSecret : "xxxx-xxx-xxx-xxxx"
    redirectURI : "https://xxxx.rs.gsu.edu:8443/dex/callback" ' | base64

Then I used the value created from the above step and created a key using the following definition
apiVersion: v1
kind: Secret
metadata:
  name: my-dex-connector-secret
  namespace: kubeflow
type: Opaque
data:
  SecretKey: c3BlYzoKICAgICAgICAgIXXXXXXXXXXXX

I added the following to the values.ymal file
connectors:
        - type : "oidc"
          id : "kubeflow"
          name : "GSU Credentials"
          configExistingSecret: "my-dex-connector-secret"
          configexistingSecretKey: "SecretKey"

What am I doing wrong here?

@EPNSED first, ensure you are using configExistingSecretKey NOT configexistingSecretKey (capitalization matters).
Second, the secret should contain the CONTENT of the dex config, not the "config:" part itself.
Also, you might not know this, but there is a special stringData write-only field in Secrets (which kubectl automatically translates to base64 encoded fields in data), so you could use something like this to save time:
apiVersion: v1
kind: Secret
metadata:
  name: my-dex-connector-secret
  namespace: kubeflow
type: Opaque
stringData:
  SecretKey: |
    issuer : "https://xxxx.rs.gsu.edu/auth/realms/xxxx"
    clientID : "kubeflow"
    clientSecret : "xxxx-xxx-xxx-xxxx"
    redirectURI : "https://xxxx.rs.gsu.edu:8443/dex/callback"

Thanks @thesuperzapper. It worked. Do you have an architecture diagram somewhere? Although authentication is successful, I'm still getting internal server error (500 error). I'm trying to debug this. It would be very useful to have an architecture diagram. Please feel free to close this ticket though. Authentication works now


Vulkan SDK release feature cut-off Friday March 27

LunarG is planning the next Vulkan SDK release in the week of Monday March 30.
MoltenVK PRs approved by Friday March 27 will be included, and a MoltenVK SDK release will be made Monday March 30.
@cdavis5e @HansKristian-Work @jeremyk-lunarg

MoltenVK v.1.0.41 released for this SDK.


bug(ios): getConfigValue is deprecated

Platform(s):

iOS

Current behavior:

XCode Warning:
'getConfigValue' is deprecated: use getConfig() and access config values using the methods available depending on the type.

Expected behavior:

No warning.
Steps to reproduce:

Build the plugin in XCode.

Commit from another project: https://github.com/capawesome-team/capacitor-badge/commit/f212ac022cbb11dd73b3a180101a00b16e5899c1


Fix quirk's number

Fix number of elements in the QUIRKS array in libretro and comment of last quirk

Awesome, thanks again!


Adds Runscope sponsorship banner

re: #45
I think this is an improvement because it separates sponsorship from content, and would allow forks to easily remove the banner, but I'm not sure if it's too over the top. Does anybody have any thoughts?

A new attempt, less in-your-face, tagline styling matches their homepage.

The different styling for the tagline is weird, it makes sense but it looks weird, I can't stop thinking it's weird. Reverting back to having the tagline and name styled the same.


Construct Color from predefined CSS constants

Making a static member for each one of 140 HTML/CSS colors would prevent any potential for typos and allow nice code completion when one runs out imagination.
Color struct is currently implemented as an enum which makes it impossible to write an extension that would define a new one. Instead, it would be better to re-implement it as a struct with static members. This achieves the same level of user auto-completion convenience and much more extensible.
It would be also nice to add the full list with colored background to the documentation. XCode probably won't render it but Jazzy will and it makes the cross referencing much more enjoyable.
Here's a list a full list of supported HTML/CSS color names with their hex representations:
https://www.w3schools.com/colors/colors_names.asp

Done!


Readme

What changes were proposed in this pull request?
Update readme
How was this patch tested?
N/a

Below is my suggestion for HOW TO USE SPARK section

Build OAP, mvn -DskipTests package and find oap-<version>.jar in target/
Deploy oap-<version>.jar to master machine.
Put below configurations to $SPARK_HOME/conf/spark-defaults.conf

spark.files                      file:///path/to/oap-dir/oap-<version>.jar
spark.executor.extraClassPath      ./oap-<version>.jar
spark.driver.extraClassPath        /path/to/oap-dir/oap-0.2.0.jar

Run spark by bin/spark-sql, bin/spark-shell or sbin/start-thriftserver and try our examples

NOTE: For spark standalone mode, you have to put oap-<version>.jar to both driver and executor since spark.files is not working. Also don't forget to update extraClassPath


⚠ API (search) has degraded performance

In fe7ede2, API (search) (https://api.dev.package-search.services.jetbrains.com/search-packages) experienced degraded performance:

HTTP code: 200
Response time: 7569 ms

Resolved: API (search) performance has improved in 1465f6e after 48 minutes.


[Bugfix] use float32 precision in samplers/test_logprobs.py for comparing with HF

Fixes #6408
This PR changes the precision in tests/samplers/test_logprobs.py from half to float.
This is needed because the test is comparing the actual values of the logprobs against the equivalent outputs from HF. There is precedent established for doing this in other tests (see e.g., here or here).
This change ensures that the test does not fail on an H100 GPU.

/ready

CI failure looks real - I can reproduce locally on L4 GPU
triton.runtime.autotuner.OutOfResources: out of resource: shared memory, Required: 132096, Hardware limit: 101376. Reducing block sizes or `num_stages` may help.

Haven't seen that before...

I was able to solve the error by halving the number of blocks in the prefix prefill kernel when torch.float32 is used. This should not affect normal runtime behaviour when using torch.float16, but allows us to run CI tests on L4 GPU that use prefix prefill.

@simon-mo auto-merge got disabled on this one, but now it is good.


[WIP] Investigating freeing of invalid pointer on shutdown

https://jira.mongodb.org/browse/PHPLIB-432

Closing here: all evidence points to generators being the culprit, which we have removed in #694.


alpha diversity workflow and visualization

This should compute any of the scikit-bio diversity metrics, and should create a boxplot visualization (a good target for #18).

addressed in #22


Intial connection failed with connecting to Venafi Server

I have searched for this issue related to win-acme and Venafi but no specific answers. I am trying to intergrate ACME and Venafi, I have created the ACME folder in Venafi and installed win-acme the latest version on a windows server.
I have changed the baseuri to point to the windows server. There is no firewall between the windows server and venafi servers.
I am getting the error below
A simple Windows ACMEv2 client (WACS)
Software version <IP_ADDRESS>1 (release, trimmed, standalone, 64-bit)
Connecting to https://xxxxvenafihost.com/v2/winacme/...
Initial connection failed
Scheduled task not configured yet
Please report issues at https://github.com/win-acme/win-acme
N: Create certificate (default settings)
M: Create certificate (full options)
R: Run renewals (0 currently due)
A: Manage renewals (0 total)
O: More options...
Q: Quit
"Acme": {
"DefaultBaseUri": "https://xxxxvenafihost.com/v2/winacme",
"DefaultBaseUriTest": "https://acme-staging-v02.api.letsencrypt.org/",
"DefaultBaseUriImport": "https://acme-v01.api.letsencrypt.org/",
"PostAsGet": true,
"RetryCount": 15,
"RetryInterval": 5,
"PreferredIssuer": null
Let me know what I am missing.

Try using the --verbose switch to get a more detailed error message, or check the disk log, that should provide some clues.


UserList: Use getItemLayout.

Look at the CZO thread for context on this change.

Regarding you comment on font size, that's not a large problem for this PR, since UserItems are 64px high regardless of font size. However, cfb8bf2bf252882325673705ac2eafef14c7a801 doesn't look super good with a larger font size (the bottom of the text gets clipped). I'll look into fixing that.

Converting to draft until I get a native module set up to measure text height.

This has been supplanted by #4865, but I'm going to keep it open (as a draft) for a little bit, since I expect some of the commits will remain useful, and I want them to be easy to find.


Make values temporarily readonly

Is your feature request related to a problem? Please describe.
Imagine we have pydase app which controls a airplane cockpit. If we turn on a routine called 'auto-pilot', it would be great that we can set all properties related to manual steering of the airplane to be read-only. Once 'autopilot' is disengaged, those properties should be writable again
Describe the solution you'd like
Allow the user to temporarily set certain object to be read-only (i.e. grey-out the corresponding box).
Describe alternatives you've considered
Hope that the user is clever enough not to change parameters that he is not supposed to change.

One could implement a decorator that specifies the trigger and the target properties that will be toggled (to be read-only). It could look like this:
import pydase

class MyService(pydase.DataService):
    def __init__(self) -> None:
        super().__init__()
        self._trigger_button = True

    @property
    def trigger_button(self) -> bool:
        """The trigger_button property."""
        return self._trigger_button

    @trigger_button.setter
    @trigger_readonly(event="event_name")
    def trigger_button(self, value: bool) -> None:
        self._trigger_button = value

    @property
    def toggled_property(self) -> float:
        """The toggled_property property."""
        return self._toggled_property

    @toggled_property.setter
    @trigger_readonly(on="event_name")
    def toggled_property(self, value: float) -> None:
        self._toggled_property = value

if __name__ == "__main__":
    service_instance = MyService()
    pydase.Server(service_instance).run()

This decorator could be used across all nested class instances, as well.
Implementation
The decorator needs to be put on the setter function. This makes sure that only the read-only state of properties that can be set can be toggled. The decorator would add a protected attribute to the property specifying the event (either triggering the event or being triggered by the event). The core-logic of triggering the read-only state would happen in the observer (DataServiceObserver). This would involve

a function that collects the metadata from the properties (will be called when initialising the observer -> this will be static then)
a callback that sends notifications as soon as the event was triggered. The notifications will take the cached state of the (toggled) properties and send it with a toggled read-only value.

Alternatives
One could also imagine to handle the read-only functionality directly in the browser. The main reasons for not doing this are:

Client-Side Inconsistency and Decentralized Control: Managing the read-only state in the browser creates inconsistencies across different clients, such as Python scripts or other web clients, since these states are not synchronized with the backend (no single source of truth, no separation of concerns)
Potential Security Concerns: Client-side controls are generally more vulnerable to manipulation. Users might be able to bypass the "read-only" restrictions, which could lead to unauthorized actions if not properly handled by the server.


task task903_deceptive_opinion_spam_classification bug

Introduced in #340
@meghpatel  All instance labels are true.

Can you address this soon @meghpatel ?

This can be easily fixed by randomly changing the polarity of a few (approx 40-60%) instances in the description and flipping the corresponding answers to False. I can write a script to do it if it is acceptable?? @swarooprm @danyaljj

Yes, please go ahead @pulkitverma25


Cleanup & Prevent warning on Grails startup

This change contains some cleanup.
The most relevant one is the removal of BootStrap.groovy which currently causes a warning on application startup when this plugin is used.

@ctoestreich Can you have a look at this?


[query] Add some algebraic interface for generating SQL

The query algebrizer (see #243 and follow-on work) will be producing lots of SQL and joining/intersecting/unioning it in non-trivial ways.  We'll want a statically typed representation of this SQL to constrain the space of SQL queries we produce, hopefully to the set of queries that are syntactically valid SQL.
This is similar to the Honeysql Clojure library.  We might be able to just use the Diesel query_builder crate.
This isn't a good first bug, since it's intimately tied to the query generation work and will need to grow with it, and since it's likely to want an "advanced" Rust implementation.

@rnewman just alerting you to this ticket; you might drop any thinking you've done about this here.

I did a brief survey of this when fleshing out #133, and didn't find much more than Diesel. (I linked this issue from the backlog.)
SQL is very complex, and there are so many different implementations that subtly differ, so a general-purpose SQL generator is a pain to get right.
Further, when considering intermediate representations — which we would be using in order to accumulate clauses for later use, as opposed to one-shot macro-like invocations — it's an easy place to accidentally introduce inefficiencies: allocating new structures and copying strings.
At the algebrizing stage I'm still mostly working with domain concepts, like EqualsEntity relating an aliased column to an entity ID. The next stage, planning, is where we'll run into the need to turn those things into fragments of SQL. Our generated queries are relatively simple, so it might be possible to get away without implementing this at all. Alternatively, we might end up growing a library like this as we go.

I believe most of Diesel is unsuitable for our purposes.
Its query builder:

Can't select from views.
Doesn't support recursive queries.
As far as I can tell doesn't name-qualify or alias tables, making self-joins impossible.

I suspect there would be further issues with features like EXISTS filters, and its sequence-of-joins approach is less ergonomic for our constraint-based queries.
Additionally, the Diesel query builder is pretty much entirely undocumented. It's not clear how one would do things we need to do, like maintain a reference to a particular use of a table in a query in order to project correctly. It's very much intended for use by the Diesel ORM, which is itself quite limited.
We might be able to reuse their QueryBuilder class, which is effectively an interface for an escaping/syntax-aware StringBuilder, similar to std::fmt::Formatter. But they discourage the use of that API.

@rnewman thanks for doing that digging.  Sounds like we should grow our own honeysql-like ADT for representing SQL.

This is done, albeit not general-purpose.


feat: Parallel Merge Sort Algorithm

Detailed Description
https://en.wikipedia.org/wiki/Merge_sort#Parallel_merge_sort

Context

Possible Implementation

Right now we do not have any parallel implementaion of any algorithm. It would be nice to have them too. If you like you can make a PR with Parallel merge sort implementation.

Hi I would like to contribute to this project.
can you please suggest me that where is bug  in this algorithm

Hi I would like to contribute to this project.
can you please suggest me that where is bug in this algorithm

There is no bug.
Issue is to add a Parallel version of Merge Sort Algorithm

ok I understood .Thankyou


[BEAM-2174] Update CoderRegistry to allow creating coders through CoderFactory for a wider range of types

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[x] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify.
[x] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[x] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

This removes getInstanceComponents and hard codes the inference for commonly "known" types into Create removing the additionally complexity that was brought along with it.
Also:

@DefaultCoder to become a CoderFactory
Created a ProtoCoderFactory which delegates to the ProtoCoder for all Message types
Created a SerializableCoderFactory which delegates to the SerializableCoder for all Serializable types
Created a WritableCoderFactory which delegates to the Hadoop WritableCoder for all Hadoop Writable types
Renamed getDefaultCoder to getCoder on CoderRegistry

R: @davorbonaci @kennknowles

Coverage decreased (-0.1%) to 70.363% when pulling 917cc45411c602143450e109390b6a7750fc2f06 on lukecwik:coder_registrar into 7903e59c4e07822f8def85ee6a7f8ef3ccb1ca7a on apache:master.

Feel free to curate your commits and force push. I've got enough context, and GitHub has improved in this regard.

I dropped all the big renames and most of the removal of getInstanceComponents.
Please review again and once we are happy with the contents of the code, I can apply a bunch of renames on top to get us to where this original PR + your additional comments take us.

I am happy with the implementation; let's get the API polished and the commit history clean.

Coverage decreased (-0.1%) to 70.391% when pulling 4cc3a4ada44480f00c5fc7dd20173e3425b4ef66 on lukecwik:coder_registrar into 69846f5006a509d91bb0c5b316a288711e17f716 on apache:master.

Coverage decreased (-0.1%) to 70.391% when pulling 6a5b44c6fa9994d7c7355f3b3e5b58ff2a9ee05e on lukecwik:coder_registrar into 69846f5006a509d91bb0c5b316a288711e17f716 on apache:master.

Coverage decreased (-0.1%) to 70.384% when pulling 39c762ab163693d718b3a25173424b52c3d884f7 on lukecwik:coder_registrar into 69846f5006a509d91bb0c5b316a288711e17f716 on apache:master.

Took a quick stab and fixing this, but it does turn out to have required foresight. Go ahead and squash and merge. LGTM.

Coverage decreased (-0.08%) to 70.418% when pulling 39c762ab163693d718b3a25173424b52c3d884f7 on lukecwik:coder_registrar into 69846f5006a509d91bb0c5b316a288711e17f716 on apache:master.


Added temporal-cli Feature

Hey Ayman - I was being nosey and playing with TLS to understand everything and I noticed a few things

You don't run this in Kind or Kubernetes at all, but rather just local docker - so I removed the kind/kubernetes stuff so it was simpler
The postCreateCommand could be removed as Helm is already installed and temporal-cli could be a feature.

These are all minor, sample worked fine for me.

@ross-p-smith Glad to see you here and thanks for your contribution! :smiling_face_with_three_hearts: :100: :+1:


Make CMakeLists.txt work with a system installations of libcxx.

The proper way to link using clang and a system install of libc++ is
to use the flag '-stdlib=libc++' and the library flag '-lc++abi'.
Fixes #135

Closing this, since #135 is now fixed.


Scripts for syncing an archive node from genesis.

This is a set of basic scripts for creating an archive node that is synced from genesis.  A conscious  choice was made to use separate and simple scripts for each version so that any associated changes associated with that upgrade can be included (such as switching database backends from cleveldb to goleveldb.
This process is a useful solution for #24 as we have noticed that many users that need an archive node prefer to create their instance directly and not rely on snapshots created by others for integrity and security reasons.

This PR is in draft/progress as it is currently being tested (in full).  When that process complete (and there are no further changes) I will move this to ready for review and merge.


Mention the Foojay Toolchain Resolver plugin in the Gradle manual

Should be done both for the 7.6.1 and the 8.0 manuals.

Content for 8.0 milestone is good, just needs a backport to 7.6.1, see linked PR.


Add valueAddedTaxIncluded to test_tender_data

This field must be clearly specified, that was bug in its absence
Also rewrite "true" -> True in initial_data.py, it also was bug

This change is

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

op_robot_tests/tests_files/singleItemTender.robot, line 99 [r1] (raw file):
Відображення ПДВ в бюджеті оголошеного тендера

Comments from the review on Reviewable.io

Review status: 1 of 2 files reviewed at latest revision, 1 unresolved discussion.

op_robot_tests/tests_files/singleItemTender.robot, line 99 [r1] (raw file):
Done.

Comments from the review on Reviewable.io

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from the review on Reviewable.io


outdated string  - English for developers - 2nd chapter, Task 39 - 2023 not 2024

Describe the Issue
In the 2nd chapter, task 39 it refers to 2023 as being the current year. And 2024 as the next year.
"Last year refers to the year before the current one. For example, if it is 2023 now, last year was 2022. This year refers to the current year, 2023 in this example.
Next year will be the year after the current one, which would be 2024 in this case. Understanding these expressions helps in placing events correctly in time."
Affected Page
https://www.freecodecamp.org/learn/a2-english-for-developers/learn-introductions-in-an-online-team-meeting/task-39
Your code

Expected behavior
This information needs to be coded so that it automatically updates each year.
For this year, please updated the whole text to:
"Last year refers to the year before the current one. For example, if it is 2024 now, last year was 2023. This year refers to the current year, 2024 in this example.
Next year will be the year after the current one, which would be 2025 in this case. Understanding these expressions helps in placing events correctly in time.
Screenshots

System
all systems, current beta
Additional context
This information about the year needs to be coded so that it automatically updates each year.

It is not referring to the current year, it's only an example.


Modernize versioning and build

Can you please also take this moment to move
from .stream import LiveStream, OfflineStream
out of the __init__ module, and into the open() method, so that just importing intake (which scans all intake_* modules) only needs to import the minimum about of code.

Thanks for the reminder. I updated the module.

Thank you!


Fix flaky

Description
Flaky tests are common occurrences in open-source projects, yielding inconsistent results—sometimes passing and sometimes failing—without code changes. I have fixed 5 flaky tests, which are listRetryTask(), deleteRetryTask() in easy-retry/easy-retry-extensions/easy-retry-mybatis-extension/src/test/java/com/alibaba/easyretry/extension/mybatis/dao/RetryTaskDAOImplTest.java and handle(), stop() and finish() in easy-retry/easy-retry-extensions/easy-retry-mybatis-extension/src/test/java/com/alibaba/easyretry/extension/mybatis/access/MybatisRetryTaskAccessTest.java.
Root cause
The root cause of these flaky tests was related to orders of execution of the tests who locate in the same class. For the RetryTaskDAOImplTest class, it need to run saveTask() firstly, if not, the listRetryTask() and deleteRetryTask() will fail.
For the MybatisRetryTaskAccessTest class, it need to run saveTask() firstly, if not, the tests handle(), stop() and finish() will fail.
Fix
This test has been resolved by extracting the patches from saveTask() that will create a task and save it firstly, and put the patches in front of the line of assert tests that fail in each order-dependent flaky tests. Then all order-dependent flaky tests pass.
How to test
Java: openjdk version "<IP_ADDRESS>"
Maven: Apache Maven 3.6.3

Compile the module
mvn install -pl easy-retry-extensions/easy-retry-mybatis-extension -am -DskipTests
Run tests for each test
mvn -pl easy-retry-extensions/easy-retry-mybatis-extension test -Dtest=com.alibaba.easyretry.extension.mybatis.dao.RetryTaskDAOImplTest#listRetryTask
mvn -pl easy-retry-extensions/easy-retry-mybatis-extension test -Dtest=com.alibaba.easyretry.extension.mybatis.dao.RetryTaskDAOImplTest#deleteRetryTask
mvn -pl easy-retry-extensions/easy-retry-mybatis-extension test -Dtest=com.alibaba.easyretry.extension.mybatis.access.MybatisRetryTaskAccessTest#stop
mvn -pl easy-retry-extensions/easy-retry-mybatis-extension test -Dtest=com.alibaba.easyretry.extension.mybatis.access.MybatisRetryTaskAccessTest#finish
mvn -pl easy-retry-extensions/easy-retry-mybatis-extension test -Dtest=com.alibaba.easyretry.extension.mybatis.access.MybatisRetryTaskAccessTest#handle
All tests should pass.

 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.


Default namespace is not being adopted when using i18next

When using @tolgee/i18next with the InContextTools plugin from @tolgee/web we noticed that whenever you update a translation with the In-context tool the namespace will be removed from the translation in Tolgee.
This happens when setting a default namespace for i18next and not setting the ns property in the t() function itself. I'm not quite sure if this is a bug or a feature which is not yet implemented but I think this should be default behavior.
Reproduction

I'll prepare a fix for that

I forgot to mention that it could be due the usage of i18next-vue indeed. Thanks for the quick help!


fix: retry in wait-block-count

why was timeout added here?

See: https://github.com/fedimint/fedimint/pull/4798#discussion_r1548428237
We currently have no retries for errors (? returning early). Should we? Normally we don't do it, but given that this command is often used for scripting, maybe we should here?

rust needs async closures, closure + async block sucks

I also gave up after 10 minutes, should have trusted you.
made open accept &self

I also gave up after 10 minutes, should have trusted you.
made open accept &self

I couldn't even make that one work ... and now I don't understand why your version works. But I accept you're just better at Rust. :D


OAK-9967 : handled case to send lease update time in case of exception

@joerghoh @mreutegg @stefan-egli could you please review and provide feedback?

I triggered a rerun of the build on Jenkins.


RunTest: Allow passing an empty traceWinList

We currently always do instrumentation as soon as the optional
traceWinList parameter is set.
But that is not nice for generic code calling us as that means it has to
branch out.
Accept an empty traceWinList string meaning the same as it being not
present.

@MichaelHuth Thx. Changec.


Avoid commit comments https://github.com/voedger/voedger/pull/965

https://github.com/voedger/voedger/pull/965
https://github.com/voedger/voedger/pull/1063

Get rid of commit extra comments in pull request

Not possible

Done.
The key is "git commit -B". It resets commits history, when the new branch is created.


MB-5927 Query Rand McNally database table for distances

Description
We have a zip3_distance table that represents distances between 2 zip3s. This PR updates the GHC planner to lookup data in that table when calculating the distance between 2 zip3s.
Reviewer Notes
Does the layout make sense
Setup
This planner isn't called anywhere, so you can just verify the tests pass
go test ./pkg/route -v

Code Review Verification Steps

[X] Code follows the guidelines for Logging
[X] The requirements listed in
Querying the Database Safely
have been satisfied.
[X] Request review from a member of a different team.
[X] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change
Jira subtask for this change
Jira subtask for this change
Jira subtask for this change
Jira subtask for this change

Messages

:book:
:link: MB-5927

  Generated by :no_entry_sign: dangerJS against efd9e9095eae47d9abb262ef184cff7a59ad3d3d


Add a PG_URL environment variable

Currently flynn gives me PGDATABASE, PGHOST, PGPASSWORD and PGUSER.
It would be convenient to get get the same info in a URL-format too.
PG_URL=postgres://myuser:mypassword@postgres.discoverd:5432/mydatabase

You can construct this environment variable in the same way as DATABASE_URL, for example:
flynn env set PG_URL=$(export $(flynn env | xargs); echo "postgres://$PGUSER:$PGPASSWORD@$PGHOST:5432/$PGDATABASE")

Yeah, I read that in the manual at flynn.io.. though that variable would not update if the others are changed.

Anyway no biggie =)


Speed up asteroid loading

Asteroid loading not very slow, but exactly fast either (+-5 seconds). Perhaps this can be improved by only selectively loading asteroids, or by parallel processing.

One fix that can definitely be done is only calculating orbital period at request, instead of all at once at load time which is what happens now.


Is there a way to control space around WebC components?

Here is a case where I don't want extra space.

<time
  :datetime="dateToAttribute(date)"
  :title="readableDate(date)"
  @text="readableDate(date)"
></time>

I'm using the <time> component in another file:

Last updated on <time<EMAIL_ADDRESS>

The compiled output is:

Last updated on
<time datetime="2024-02-07T09:15:18.399Z" title="07/02/2024, 14:45:18">07/02/2024, 14:45:18</time>
.

i.e. Last updated on 07/02/2024, 14:45:18 ., with a space before the period.
Though I use the whitespace control when using Nunjucks, I'm not expecting such a feature in WebC.
What would be a workaround for such scenarios?

Does your time.webc file have a blank line at the end of the file?

Yes, it does. My .editorconfig adds newlines to end of all files (including all webc).
My time.webc is a shorter version of tugboat/.../time-difference.webc, and that component also have similar problem when using inline.

Thanks, @rothsandro, for looking into it. But, I was looking for a more generic solution.
You know, when working with projects configured with Prettier and EditorConfig, especially when many people are contributing, it is difficult to keep a file or two without a newline at the end.
I know this a rare problem, though I have encountered a handful of times in the past, and Nunjucks's whitespace control came handy.
At this time, I'm using with Eleventy Transforms to go around this issue. Probably an over-engineered solution. 😄
// eleventy.config.js

eleventyConfig.addTransform("trim-whitespace", function (content) {
  const trimCommentsRegex =
    /\s*\s*/gim;

  return content.replaceAll(trimCommentsRegex, function (_match, countStr) {
    const count = +countStr;
    if (!isNaN(count)) {
      return " ".repeat(count);
    }
    return "";
  });
});

Then, in places where I want to trim white spaces, I can insert an HTML comment, . The transform will replace the comment together with the white spaces around it.

  Last updated on
  <time<EMAIL_ADDRESS>  .

  Last updated on
  <time<EMAIL_ADDRESS>


getTranslations is supported OOTB in i18n Ally

Hey @ixartz,
just wanted to give you a heads-up that https://github.com/lokalise/i18n-ally/pull/1048 was finally released on the VSCode marketplace. It contains the fix for getTranslations to work without having to manually configure anything:
https://github.com/ixartz/Next-js-Boilerplate/blob/642d3f395bf8602529411778d228cb45364c9917/.vscode/i18n-ally-custom-framework.yml#L7-L10
Maybe you'd like to give it a go to potentially clean up your boilerplate!

Hey @amannn,
Thank you so much for the heads-up. Last time I have tried, the PR was merged but I was surprised it was released/published.
This is a really great news.
I'll clean it today.

Yep, it unfortunately took some time due to publishing issues, but it's finally out now! 😄
Thanks again for suggesting the regex that also matches namespace:, the merged PR in i18n Ally uses your proposal!

I just open the PR and merge it: https://github.com/ixartz/Next-js-Boilerplate/pull/339/files
Now, it's much more cleaner.
Extremely happy to see my suggestion being used in the release.
Thank you so much for reporting it @amannn and thank you for next-intl


Needs to check empty parameters

if OAuth credentials are empty the authorization should not working

Solved in commit:
https://github.com/phenemann/Authentication/commit/1e36b2a


Remove the fallback value from SourceKitServer.handleRequest

It’s not entire clear why we have a fallback value if no document service can serve a request and I checked that VS Code behaves if we return empty results for jump to definition or if we return an error. To simplify the codebase, we should just throw an error here and remove the fallback parameter from handleRequest.

Tracked in Apple’s issue tracker as rdar://116703662


[DR-1303] Create reusable library

Hi @MakingSense/doppler-relay  (@nreal, @diegofox2, @mvillaseco), @MakingSense/doppler and anyone interested in Making Sense,
The idea is to create a nuget library to allow consuming Google's Safe Browsing Update API (v4) efficiently from Doppler Relay and Doppler.
I copied Newtonsoft Json.NET project structure to allow generating nuget packages compatible with different .NET versions
Sorry for the spam, I just want to make you know about this library and give you a chance to subscribe it if you are interested.
The next steps will be:

Define a common interface for different URL verification alternatives
Create a naive alternative using a list of regular expressions
Allow updating the regular expression list regularly downloading it from a public HTTP site
Implement a complete client of Google's Safe Browsing Update API (v4) with different alternatives to store required data and caches.

Could you kindly review it?

BTW I have already published this: https://preview.nuget.org/packages/MakingSense.SafeBrowsing/0.1.0-alpha1


New request success page

Description
This is the page to where a PIN is redirected after they successfully submit a request.
So far it's only styled for mobile
Release Checklist

[ ] This code has unit tests
[x] I have a plan to verify that these changes are working as expected after deploy
[x] I have a plan for how to revert, rollback, or disable these changes if things are not working as expected

Security Checklist
This PR creates, modifies, or deletes:

[ ] API routes: API routes, parameters, or user authorization
[ ] Authentication: Authentication mechanism
[ ] Credentials: Server side credentials, or secrets in configuration / source code
[ ] Cryptography: Encryption, hashing, certificates, signatures, random numbers, etc.
[ ] User data: personal information handling, logs, error messages, etc.

Additional Notes

closes https://github.com/reach4help/reach4help/issues/386

Looks awesome!!!!
Only one open question since I’m not familiar with the full web client app. Is it common to push to the browser history to change the route?

Hey @sabind ! We're using React Router 5 and in this last update they introduced some react hooks, useHistory is one of these. From here:

The useHistory gives us access to the history object which helps us programmatically navigate or change routes.

So it is one of the ways we could do this. They also have a  component but I think this way is easier and clearer. It is also used in other places in our codebase :)

Sounds good :)

closes https://github.com/reach4help/reach4help/issues/348


I first added 19 days to the liquidity pool and after the tap request I was able to exchange these dai for eth without taking them out of the pool

see the activity of my wallet fuel1rgm3uz2aejycl985g2fzgr0fcsncv6zkptqvtx4ctk0uz4nlzlzq9lxskq
I first added 19 days to the liquidity pool and after the tap request I was able to exchange these dai for eth without taking them out of the pool!!! It was not possible to do this again

I didn't understand the 19 days, as the liquidity pool on SwaySwap requests you to deposit ETHs and DAIs and return a new liquidity token.

Closing by inactivity.


SAK-41286: site-info > provide more info when displaying rosters available for selection

https://jira.sakaiproject.org/browse/SAK-41286
When selecting rosters to attach to a course site (either via Worksite Setup when creating a new course site, or Site Info > Edit Class Roster(s)), the only information displayed to the user about a given section is it's title. It can be beneficial to give the user more information here to better assist them in making a decision.
At some point in the past, someone already tried to (or thought about) adding the description to the display. We already have code in one of the velocity templates that would spit out this information, if the backing object in Java was populated accordingly. From chef_site-newSiteCourse.vm @ line 82:
<th colspan="2" title="$!courseObject.eid">
    $!courseObject.title $!courseObject.description
#if ($!courseObject.courseOfferingObjects.size() > 1)
    (cross-listed)
    #set($crosslisted=1)
#end

However the Java object is never populated with the description attribute, so it's never printed to the screen.
The linked PR proposes the following:

Implement the display of description attribute
Internationalize the hard-coded English "(cross-listed)" output string
Implement a new sakai.property (wsetup.showRosterEIDs) to additionally control the display of the roster EID in parenthesis, after the description

The new sakai.property will default to false to preserve original behaviour (do not display EIDs)

The ui look with this on seems rudimentary and would require some more styling.

@ern, in discussion with @fostersdesign on the JIRA ticket, we've come up with a better approach. The PR now reflects the latest screenshots attached on the JIRA ticket.


Expand README and provide a per-project README

See title :)

Related: #535

Closing this since all apps have READMEs and #603 updated the root README to link to them.


Ability to enhance existing Objects

One of the greatest parts about JavaScript is that we don't have to know ahead of time exactly what our objects are. We might get some JSON in from across the wire and be able to add some additional methods and data on to that objects over time.
At present however, StampIt's API is to create new objects. I would like to see it gain the ability to stamp existing objects with new capabilities. Then StampIt will be the composable-OO toolkit for JS of my dreams. :heart_eyes:

Hello there! Timely request my friend.
We do plan to have this in the following stampit release. Like:
var myAwesomeObject = ...whatever...;
if (myAwesomeObject === MyStamp(myAwesomeObject)) { // comparing by reference
  console.log('Yes, baby!'); // this should be printed.
}

Is that the feature you're looking for?

@rektide hey?

Closing as the person is not contacting back.

Hi - I'm also interested in this. Any word on when it will be available? Thanks!

@infiniteluke This is in progress as part of the official stamp specification. We're beginning to write prototype implementations now. It will be a little while before the API is officially settled.


how can i do with these messy code when i start redis-stat

how can i do with these messy code when i start redis-stat?

--style=ascii should help.


String concatenation not working

Hey, thanks a lot for the work, this helps a lot. I intend to use this with Bruin instead of the old fork, and ran into a behavior that doesn't seem to be working with concatenation:
{{ "asd" + "xyz" }}

gonja output: 0
jinja2 output: asdxyz

{%- set a = "asd" -%}
{{ a + "xyz" }}

gonja output: 0
jinja2 output: asdxyz

any ideas on how to circumvent / fix the issue?

It took me 12mins to create a fix for this from scratch without ever seeing this project at all, such an intutive codebase, not sure if it was you or the original fork but thanks!

Thanks for reporting the issue ! It's definitely a bug we want fixed.
Regarding:

It took me 12mins to create a fix for this from scratch without ever seeing this project at all, such an intutive codebase, not sure if it was you or the original fork but thanks!

It's both the original project that was well implemented feature-wise, and a lot of refactoring when I took over to make it robust, more unit-testable, and organized in a better way.

@karakanb , this has been released in v2.1.4, enjoy :)


Automated backport of #2763: Improvements to the Gateway leader election

Backport of #2763 on release-0.16.
#2763: Bump admiral and shipyard versions
For details on the backport process, see the backport requests page.

Several of the E2E tests panicked:
E1030 22:14:58.113607   10400 runtime.go:79] Observed a panic: "invalid memory address or nil pointer dereference" (runtime error: invalid memory address or nil pointer dereference)
goroutine 568 [running]:
k8s.io/apimachinery/pkg/util/runtime.logPanic({0x1854d80?, 0x29bf020})
	/go/pkg/mod/k8s.io/apimachinery@v0.27.7/pkg/util/runtime/runtime.go:75 +0x99
k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0x0?})
	/go/pkg/mod/k8s.io/apimachinery@v0.27.7/pkg/util/runtime/runtime.go:49 +0x75
panic({0x1854d80, 0x29bf020})
	/usr/lib/golang/src/runtime/panic.go:884 +0x213
k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0xc0007ab8f0?})
	/go/pkg/mod/k8s.io/apimachinery@v0.27.7/pkg/util/runtime/runtime.go:56 +0xd7
panic({0x1854d80, 0x29bf020})
	/usr/lib/golang/src/runtime/panic.go:884 +0x213
github.com/submariner-io/shipyard/test/e2e/framework.(*Framework).AwaitGatewayFullyConnected.func2({0x1a6b960?, 0x0})
	/go/pkg/mod/github.com/submariner-io/shipyard@v0.16.1-0.[2023](https://github.com/submariner-io/submariner/actions/runs/6699251982/job/18203055122?pr=2777#step:3:2039)1025063959-1e68200a75e6/test/e2e/framework/gateways.go:126 +0xb4

The Gateway resource did not yet exist. I submitted https://github.com/submariner-io/shipyard/pull/1447 to address it although I'm not sure why this is occurring now as this code has been around quite a while.


Play a specific song from a soundcloud playlist with an external link

Hi,
I would like to know if it's possible to have a external link (like in a another div than the player) for one song in a soundcloud playlist..?
I saw an exemple on the Laurel Halo's website and I try to build the same system.
http://www.laurelhalo.com/records/
Thank you for your help, best,
Pierre

Hi 5ch1ll1ng,
Yup this is totally possible. If you want a soundcloud link in a different place, you can bind to a specific index and create a player outside of the div. On her site, she has a "main" player div. Check out: https://open.521dimensions.com/amplitudejs/docs#adding-a-pause-button. Let me know if that helps!

Hi Dan,
thank you for your answer!
I finally found a solution by placing the playlist on a other page and it's working great. I added the play-pause button and everything's okay.
Your player is fantastic, it's all I needed for a project for a musician. I'll copy the link when it's completely finished.
Best,
Pierre

Thanks for the feedback! I'd love to see the site when you are done with it. Things got real busy for me, but I'm hoping to push a new update for Amplitude in June along with some new docs/site and would love to have some example sites.