Include non-temporal JIT annotations to speed up memory-bound codes filling big arrays

Hello everyone,
x86/x86-64 processors have non-temporal store instructions that can be used to avoid a cache-line allocation when memory writes are performed. They are very useful to speed up memory-bound kernels filling huge arrays that do not fit in the CPU cache. Indeed, in such a case, most x86 processors will load the entire arrays from memory to actually fill them while no load are actually needed. This is unfortunate as half of the bandwidth is consume for reading unnecessary data to be fetched. The memory bandwidth is a scarce resource (and it is getting more and more scarce over the past two decades). Non-temporal store help to avoid such a waste.
Numba do not currently generate non-temporal store one x86-like platforms for np.fill as opposed to the default Numpy implementation. This results in a significant performance gap. Here is an example:
import numpy as np
import numba as nb

@nb.njit('void(float64[::1])')
def fillArr(arr):
    assert arr.size == 128*1024*1024  # May help the JIT to generate a more efficient code (but not much in practice)
    arr.fill(0.0)

arr = np.full(128*1024*1024, 0.0, dtype=np.float64)
%timeit arr.fill(0.0)
%timeit fillArr(arr)

And here is the result on my machine (with a i5-9600KF processor and a 2-channels DDR4 RAM capable of achieving up to ~40 GiB/s):
Numpy: 32.2 ms ± 1.83 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)  => 31.1 GiB/s
Numba: 60.3 ms ± 339 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)   => 16.6 GiB/s

Numba is close to two time slower than Numpy. Note that using a loop is only slightly faster (3%) and using multiple threads with Numba clearly does not help (a bit slower in practice) since the RAM is mainly the limiting resource. Note that Numpy should be a bit faster in parallel since using 1 core is not enough to saturate the bandwidth of my RAM (but mostly).
I think np.fill can be sped up a lot by just using the memset JIT function internally.
However, while speeding up the np.fill call would be great, it would be even better to also speed up all user codes filling big buffers. However, it is probably better to expose a low-level JIT annotation to advanced users (and Numba developers) since choosing either non-temporal instructions are beneficial or not for a given user code is far from being easy for the JIT (since it often do not have the array size at compile time and often do not know if the arrays will be reused soon). Such an annotation has been added for example in OpenMP 5. I think there are plenty of application that could benefit from such a feature (like physic applications or big data analytics).
The version used for the tests is 0.53.1.

I tested this on 0.54.1 vs 0.53.1 on my i7 2019 MacbookPro:
On 0.54.1:
Numpy: 73.7 ms ± 2.31 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
Numba: 45.8 ms ± 1.21 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

On 0.53.1:
Numpy: 73 ms ± 2.36 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
Numba: 74.7 ms ± 2 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

So the issue appears to have been fixed in the more recent release.
The optimized LLVM IR looked quite different across the two version but I cannot pinpoint to what is the cause for the changes yet.

We started using LLVM 11 in 0.54.x. That probably explain the changes in the code generation.

Numba do not currently generate non-temporal store one x86-like platforms for np.fill as opposed to the default Numpy implementation.

@zephyr111, can you point us to the implementation in NumPy? I am unable to find it.

The code should be this one here. As you can see there is no specific optimization for wide data types. The compiler used to produce the binary should apparently perform the optimization (which is apparently the case on my machine). However, they actually use memset for bool/byte/ubyte types (see here). memset often generates non-temporal store for wide arrays.
I updated Numba to the version 0.54.1 but the result did not significantly changed on my machine:
31.9 ms ± 2.11 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
57.7 ms ± 662 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)

I get similar results with the uint8/ubyte type.
To be more precise, the full reported version of Numba is now 39aef3deb073a67b0bf121e099ecf5b33d799f40. The version of llvm-lite used is 0.37.0. The version of Numpy is 1.20.3.

@zephyr111, can you tell us what numpy version you have and how you installed it? I wonder if it is a numpy 1.21 specific thing or maybe a build-specific thing.

The Numpy version I had was 1.20.3 (written in the previous post). It has been installed using Python PIP. I am running on Windows.
I tried to install Numpy 1.21.4 alone and get no significant change. I kept Numpy 1.20.3 since PIP claim that Numba 0.54.1 is not compatible with the last version of Numpy.

it looks like this will still need to be triaged, I will remove the stale label.

Here are results of the same performance benchmark on Linux (with Numba 0.54.1 and Numpy 1.20.3):
54.7 ms ± 251 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)
31.1 ms ± 217 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)

Surprisingly, results are inverted!
The fact that Numpy does not use non temporal instruction can be seen using the perf command:
 13,74 │28:┌─→mov     rdx,rax                                                              ▒
 14,42 │   │  add     rax,0x1                                                              ▒
 41,05 │   │  shl     rdx,0x4                                                              ▒
 27,26 │   │  movups  XMMWORD PTR [rdi+rdx*1],xmm0                                         ▒
       │   ├──cmp     rsi,rax                                                              ▒
  3,54 │   └──jne     28

I cannot do the same with Numba yet due to #3254.
I am wondering if this could be due to compilation flags during the packaging since it would be surprising that such behavior could be dependent of the OS.


Cross-region retry alignment across SDKs

Packages impacted by this PR
@azure/cosmos
Issues associated with this PR
https://github.com/Azure/azure-sdk-for-js/issues/23475
Describe the problem that is addressed by this PR
Currently request timeouts (Status code TimeoutError) or service unavailable (Status code 503) do
not failover and retry on other regions for multi-master accounts.
The JS SDK needs to add retries for the following scenarios
Type | Read/Write
Data plane | Read
Metadata | Read
Query Plan | Read (it is always read)
What are the possible designs available to address the problem? If there are more than one possible design, why was the one in this PR chosen?
Are there test cases added in this PR? (If not, why?)
yes
Provide a list of related PRs (if any)
Command used to generate this PR:**(Applicable only to SDK release request PRs)
Checklists

[ ] Added impacted package name to the issue description
[ ] Does this PR needs any fixes in the SDK Generator?** (If so, create an Issue in the Autorest/typescript repository and link it here)
[ ] Added a changelog (if necessary)

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-cosmos


Refactor system mounts to be placed on the config

Also remove the RestrictSys bool replaced by configurable paths that the
user can specify.
Signed-off-by: Michael Crosby<EMAIL_ADDRESS>

@mrunalp moved pts back to defaults

LGTM. Let's see what others think :)

ping @LK4D4

LGTM

LGTM

LGTM


space being swallowed after ":"

I know I have raised this issue before but it doesn't seem to have been fully solved yet.
Code: tan pilihən <app><lem wit="#M">sākṣya ika kabeh</lem><rdg wit="#L">hika: sa<lb n="08-15"/>kṣya kabeḥ</rdg><rdg wit="#K">sakṣya, hika ta kabeḥ</rdg></app>.
display of edition (correct)

display of apparatus (space is swallowed in #L reading):

I deleted the rule regarding transliteration in Javanese stating that : can't be followed by a space.


Introduce enzyme

Added a reference test. This might need more work.
Initially works in playground as this is Webpack independent.
Will need to adjust the Webpack configuration when introducing enzyme in client. #25

sweet, super helpful!

is it ready to merge or should I still wait?

Removed the less line

Sure. This is ready to be merged.
Should we add enzyme into the client part?

In that case, we'll have to adapt the Webpack config file or write a specific one for the tests.
Check https://github.com/airbnb/enzyme/blob/master/docs/guides/webpack.md for further clarification

@busypeoples sounds good to me @ enzyme for the client

@busypeoples I sent you an invite to the organisation. then you should have access to all repos

Awesomeee!


Implement DSA_SIG_set0() and ECDSA_SIG_set0(), for setting signature …

…values.
SSH2 implementations which use DSA_do_verify() and ECDSA_do_verify() are given
the R and S values, and the data to be signed, by the client.  Thus in order
to validate these signatures, SSH2 implementations will digest and sign
the data -- and then pass in properly provisioned DSA_SIG and ECDSA_SIG objects.
Unfortunately, the existing OpenSSL-1.1.0 APIs do not allow for directly setting
those R and S values in these objects, which makes using OpenSSL for such
SSH2 implementations much more difficult.

+1 nice and simple and complete!

+1

+1 here too
I can't quite imagine how the setters could end up failing but I suppose it's better to account for that possibility than make them void.

Both DSA_SIG_set0 and ECDSA_SIG_set0 could be made to return 0, if either r or s are NULL?  Would it ever make sense for such signatures to lack one or the other parameter?

@Castaglia , yeah I thought of this meanwhile :) On one side, you could let application code do
ECDSA_SIG_set0(ecdsa_sig, r, NULL);
/* create signature */
ECDSA_SIG_set0(ecdsa_sig, NULL, s);

OTOH I don't really see a scenario where you truly need to set the two values separately, so why don't we just ban NULL? That has the positive side effect that r/s are never NULL (they are alloc'ed on ECDSA_SIG_new()) and the rest of the code can't crash/doesn't have to worry about NULL.

Done and done. :)

Setting the parts separately is a really bad idea.

So I think this can be merged?

Waiting for @ekasper who has been working on this issue.

@richsalz talk to @snhenson .

after some internal discussion... merged, thanks.

No worries. :) Glad I could help!


A better way to provide multi-line Snippets support

ps: I'm not  excellent in English, but I'll try to make it clear.
now, we add custom snippets use json file, for example, add a for loop snippets:
"For Loop": {
        "prefix": "for",
        "body": [
            "for (var ${1:index} = 0; ${1:index} < ${2:array}.length; ${1:index}++) {",
            "\tvar ${3:element} = ${2:array}[${1:index}];",
            "\t$0",
            "}"
        ],
        "description": "For Loop"
    }

In body, we need add useless quotes and \t for good format, I think this is not good enough.
But if we use some Notations like  CSON, we write snippets will like this:
'For Loop':
    'prefix': 'for'
    'body': """
        for (var ${1:index} = 0; ${1:index} < ${2:array}.length; ${1:index}++) {
            var ${3:element} = ${2:array}[${1:index}];
            $0
            }
"""

I think this is a better way to write snippets.
or we just use it like
#15140

It looks like this is covered by #15140. I agree it seems a little awkward.

@roblourens I don't think is duplicate with #15140 , He ask how to use multi-line in JSON, my point is use CSON for Snippets file, because CSON is much better in this case


Increase the max rate for voicing?

I see that the max rate is 2x, could this be larger? I definitely think it would be nice, but I'm not the target audience. Even so, 3x to me makes the sim much more usable. @jessegreenberg do you have any thoughts?

@jessegreenberg and I spoke, and he mentioned that this value was designed. Perhaps we can increase the max as part of https://github.com/phetsims/chipper/issues/1042


Bug: Age above 18

What happened?

If the blood donor is younger than 18,he/she cannot donate blood.
Add an alert
Add screenshots
.
What browsers are you seeing the problem on?
No response
Record

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I agree to follow this project's Code of Conduct
[X] I want to work on this issue

Go ahead @AkhilaSunesh

@Saurav-Pant Please assign me this task.

@Saurav-Pant Please assign me this task.

I am working on it

please assign me this task

@Saurav-Pant please this task to me if he is not working on it. Because it is more than a month


fcserver-rpi server runs on UDOO Quad (ARM), but doesn't see fadecandy controller when plugged in

I am trying to run the Fadecandy server and control the LEDs with Python on an SBC.  This all works locally on a Mac without issue when running the fcserver-osx, but when running on an UDOO Quad (similar to Raspberry Pi - eg - an ARM processor), the server fcserver-rpi runs and is accessible in the browser at <IP_ADDRESS>:7890, but when the Fadecandy controller is plugged in, it stills says no devices are connected.  The Quad runs a Ubuntu 14.04. I assumed the fcserver-rpi server would work under the Quad's ARM processor as well.

Oops.  Ran the server as root and it now is able to see the controller.


python r+'' is not working

VSCode Version:1.48.2
OS Version:Windows_NT ia32 10.0.17763

Steps to Reproduce:
1.create a python file
2.write code:path = r"\"
3.save and run it

Does this issue occur when all extensions are disabled?: Yes/No

What is this meant to do and what does it do instead?

It should play a role in prohibiting escaping，but not

It's not working

You're using some extension to run it, you need to report it to the extension.


Wrong error message with missing parameters: providers.oidc.issuer-url

Hi,
While deploying to kubernetes to use an oidc provider, an error was thrown with a missing parameter for oidc provider with the following message:
level=fatal msg="providers.oidc.issuer-url, providers.oidc.client-id, providers.oidc.client-secret must be set"
I'm passing the required parameters as per the documentation:
PROVIDERS_OIDC_ISSUER_URL, PROVIDERS_OIDC_CLIENT_ID, PROVIDERS_OIDC_CLIENT_SECRET
But looking at the source code I found that the code is looking for different environment variables than reported in the error:
The application is reading 3 variables without PROVIDERS_OIDC_
IssuerURL    string long:"issuer-url" env:"ISSUER_URL" description:"Issuer URL"
ClientID     string long:"client-id" env:"CLIENT_ID" description:"Client ID"
ClientSecret string `long:"client-secret" env:"CLIENT_SECRET" description:"Client Secret" json:"-"

Error thrown with misleading variable names that includes providers.oidc
if o.IssuerURL == "" || o.ClientID == "" || o.ClientSecret == "" {
		return errors.New("providers.oidc.issuer-url, providers.oidc.client-id, providers.oidc.client-secret must be set")
}

The issue is invalid as the variables were grouped under a name space so ISSUER_URL already resolved under PROVIDER_OIDC_ISSUER_URL


Update Zenoh Spec with work flow

As @PLeVasseur requested in #81, add the work flow in Zenoh Spec.

@MelamudMichael -- could you please review this so that the cpp and rust implementations are on the same page?

IMHO for traceability would be nice to keep separate, but I don't have a very strong opinion =^)

@PLeVasseur No. As you suggested here, I'm creating another PR for the changes.
It would be good if this PR could be merged first.


[Issue]: RX 6800 GPU reset when using ROCm (GPU not listed but I think it's in error)

Problem Description
note: this GPU isn't listed, but older GPUs like Radeon VII are and they are not enterprise cards so I can only assume this is in error please fix. The RX 6800 is also listed as supported to my understanding by ROCm, so I am very confused why it's not listed in the issue template. If anyone can reproduce this on a card listed in the issue template that would be great I think it's likely issue with all cards, but for now the card listed in the issue template is inaccurate since it's required
I have been having constant crashes where my system will just reboot when trying to generate a image in Stable Diffusion, my screen goes black suddenly, then resets and I usually get a MCE error after that looks like this. I also noticed audio will keep playing, then become distorted and stutter as if the CPU is having a hard time keeping up until it stops completely then resets shortly after
Feb 27 15:09:35 nixos kernel: mce: [Hardware Error]: Machine check events logged
Feb 27 15:09:35 nixos kernel: mce: [Hardware Error]: CPU 9: Machine Check: 0 Bank 5: bea0000000000108
Feb 27 15:09:35 nixos kernel: mce: [Hardware Error]: TSC 0 ADDR 1ffffc0754f4a MISC d012000100000000 SYND 4d000000 IPID 500b000000000
Feb 27 15:09:35 nixos kernel: mce: [Hardware Error]: PROCESSOR 2:870f10 TIME<PHONE_NUMBER> SOCKET 0 APIC 3 microcode 8701030
Feb 27 15:09:36 nixos kernel: MCE: In-kernel MCE decoding enabled.

My system is otherwise very stable so it seemed odd not to mention I have played full length games and had zero issues whatsoever, also I have tested the memory it is not the problem. so I decided to try to ssh into my computer from my phone when I get this error and discovered this
Feb 27 22:08:15 nixos systemd[1]: Starting Cleanup of Temporary Directories...
Feb 27 22:08:15 nixos systemd[1]: systemd-tmpfiles-clean.service: Deactivated successfully.
Feb 27 22:08:15 nixos systemd[1]: Finished Cleanup of Temporary Directories.
Feb 27 22:08:24 nixos kernel: amdgpu 0000:09:00.0: amdgpu: SMU: I'm not done with your previous command: SMN_C2PMSG_66:0x00000028 SMN_C2PMSG_82:0x00000000
Feb 27 22:08:24 nixos kernel: amdgpu 0000:09:00.0: amdgpu: Failed to enable gfxoff!
Feb 27 22:08:29 nixos kernel: amdgpu 0000:09:00.0: amdgpu: SMU: I'm not done with your previous command: SMN_C2PMSG_66:0x00000028 SMN_C2PMSG_82:0x00000000
Feb 27 22:08:29 nixos kernel: amdgpu 0000:09:00.0: amdgpu: Failed to enable gfxoff!
Feb 27 22:08:30 nixos kernel: amdgpu 0000:09:00.0: [drm] *ERROR* [CRTC:95:crtc-1] flip_done timed out
Feb 27 22:08:31 nixos kernel: [drm:amdgpu_job_timedout [amdgpu]] *ERROR* ring sdma0 timeout, signaled seq=3400, emitted seq=3401
Feb 27 22:08:31 nixos kernel: [drm:amdgpu_job_timedout [amdgpu]] *ERROR* Process information: process  pid 0 thread  pid 0
Feb 27 22:08:31 nixos kernel: amdgpu 0000:09:00.0: amdgpu: GPU reset begin!
Feb 27 22:08:31 nixos kernel: amdgpu: Failed to suspend process 0x800c

I am not a expert in drivers but this seems to be a issue with AMDGPU, but it could also be ROCm or Torch issue, since I am not sure I am reporting it here and I have reported it to the respective projects. Thanks
Operating System
NixOS VERSION 24.05 (Uakari)
CPU
AMD Ryzen 7 3700X 8-Core Processor
GPU
AMD Radeon RX 7900 XT
ROCm Version
ROCm 6.0.0, ROCm 5.5.1
ROCm Component
ROCm
Steps to Reproduce

Install mostly any Stable Diffusion WebUI e.g. ComfyUI, InvokeAI, Automatic1111, etc.
Install a SDXL model
Generate a image, crashes seem to depend on resolution used. e.g. 1024x1024 is fine, 512x512 also fine, but 832x1152 will crash
See crash

(Optional for Linux users) Output of /opt/rocm/bin/rocminfo --support
ROCk module is loaded
HSA System Attributes
Runtime Version:         1.1
System Timestamp Freq.:  1000.000000MHz
Sig. Max Wait Duration:<PHONE_NUMBER>3709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count)
Machine Model:           LARGE
System Endianness:       LITTLE
Mwaitx:                  DISABLED
DMAbuf Support:          YES
==========
HSA Agents

Agent 1

Name:                    AMD Ryzen 7 3700X 8-Core Processor
Uuid:                    CPU-XX
Marketing Name:          AMD Ryzen 7 3700X 8-Core Processor
Vendor Name:             CPU
Feature:                 None specified
Profile:                 FULL_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        0(0x0)
Queue Min Size:          0(0x0)
Queue Max Size:          0(0x0)
Queue Type:              MULTI
Node:                    0
Device Type:             CPU
Cache Info:
L1:                      32768(0x8000) KB
Chip ID:                 0(0x0)
ASIC Revision:           0(0x0)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   3600
BDFID:                   0
Internal Node ID:        0
Compute Unit:            16
SIMDs per CU:            0
Shader Engines:          0
Shader Arrs. per Eng.:   0
WatchPts on Addr. Ranges:1
Features:                None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: FINE GRAINED
Size:                    65773952(0x3eba180) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 2
Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
Size:                    65773952(0x3eba180) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
Pool 3
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    65773952(0x3eba180) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       TRUE
ISA Info:

Agent 2

Name:                    gfx1030
Uuid:                    GPU-6200dec08b9272cf
Marketing Name:          AMD Radeon RX 6800
Vendor Name:             AMD
Feature:                 KERNEL_DISPATCH
Profile:                 BASE_PROFILE
Float Round Mode:        NEAR
Max Queue Number:        128(0x80)
Queue Min Size:          64(0x40)
Queue Max Size:          131072(0x20000)
Queue Type:              MULTI
Node:                    1
Device Type:             GPU
Cache Info:
L1:                      16(0x10) KB
Chip ID:                 29631(0x73bf)
ASIC Revision:           1(0x1)
Cacheline Size:          64(0x40)
Max Clock Freq. (MHz):   2475
BDFID:                   2304
Internal Node ID:        1
Compute Unit:            60
SIMDs per CU:            2
Shader Engines:          4
Shader Arrs. per Eng.:   2
WatchPts on Addr. Ranges:4
Coherent Host Access:    FALSE
Features:                KERNEL_DISPATCH
Fast F16 Operation:      TRUE
Wavefront Size:          32(0x20)
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Max Waves Per CU:        32(0x20)
Max Work-item Per CU:    1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
Max fbarriers/Workgrp:   32
Packet Processor uCode:: 116
SDMA engine uCode::      83
IOMMU Support::          None
Pool Info:
Pool 1
Segment:                 GLOBAL; FLAGS: COARSE GRAINED
Size:                    16760832(0xffc000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 2
Segment:                 GLOBAL; FLAGS: EXTENDED FINE GRAINED
Size:                    16760832(0xffc000) KB
Allocatable:             TRUE
Alloc Granule:           4KB
Alloc Alignment:         4KB
Accessible by all:       FALSE
Pool 3
Segment:                 GROUP
Size:                    64(0x40) KB
Allocatable:             FALSE
Alloc Granule:           0KB
Alloc Alignment:         0KB
Accessible by all:       FALSE
ISA Info:
ISA 1
Name:                    amdgcn-amd-amdhsa--gfx1030
Machine Models:          HSA_MACHINE_MODEL_LARGE
Profiles:                HSA_PROFILE_BASE
Default Rounding Mode:   NEAR
Default Rounding Mode:   NEAR
Fast f16:                TRUE
Workgroup Max Size:      1024(0x400)
Workgroup Max Size per Dimension:
x                        1024(0x400)
y                        1024(0x400)
z                        1024(0x400)
Grid Max Size:<PHONE_NUMBER>(0xffffffff)
Grid Max Size per Dimension:
x<PHONE_NUMBER>(0xffffffff)
y<PHONE_NUMBER>(0xffffffff)
z<PHONE_NUMBER>(0xffffffff)
FBarrier Max Size:       32
*** Done ***
Additional Information
Issue on AMDGPU: https://gitlab.freedesktop.org/drm/amd/-/issues/3220
Issue on PyTorch: https://github.com/pytorch/pytorch/issues/120775

For more context here is a video of it happening, I was trying to use a ComfyUI workflow upscaling low resolution images. It uses SDXL to do so, but just generating a large image seems to trigger it. I'm confused as to why there is no other error reports if it's so easy to trigger, I'm slightly worried it's my card perhaps, but running LLMs on it etc. is completely stable. Unfortunately my experience has been riddled with GPU resets on Linux, I encountered another one relating to video decoding which forced me to go back to software decoding, but this is a known AMDGPU issue maybe someone can dedicate time into finally getting it fixed though and making my GPU reset free? It's just a shot in the dark, but many people seem to be encountering the same thing in this instance and it hasn't really gone anywhere

With some further testing I have found that not running a desktop like in my case Hyprland significantly reduces crashes, not sure if Hyprland is to blame. I don't think the issue is gone probably, just significantly reduced as the GPU isn't doing much else

Yep can confirm issue is still present but greatly reduced, this works as a temporary fix at least for me

dmesg --follow reveals more information
``
[  424.342955] iwlwifi 0000:04:00.0: Error sending STATISTICS_CMD: time out after 2000ms.                 [  424.342963] iwlwifi 0000:04:00.0: Current CMD queue read_ptr 40 write_ptr 41                           [  424.345115] iwlwifi 0000:04:00.0: Start IWL Error Log Dump:                                            [  424.345118] iwlwifi 0000:04:00.0: Transport status: 0x0000004A, valid: 6                               [  424.345120] iwlwifi 0000:04:00.0: Loaded firmware version: 29.198743027.0 3168-29.ucode                [  424.345123] iwlwifi 0000:04:00.0: 0x00000084 | NMI_INTERRUPT_UNKNOWN                                   [  424.345126] iwlwifi 0000:04:00.0: 0x000002F0 | trm_hw_status0                                          [  424.345128] iwlwifi 0000:04:00.0: 0x00000000 | trm_hw_status1                                          [  424.345130] iwlwifi 0000:04:00.0: 0x00043D6C | branchlink2                                             [  424.345132] iwlwifi 0000:04:00.0: 0x0004AFA2 | interruptlink1                                          [  424.345134] iwlwifi 0000:04:00.0: 0x00008986 | interruptlink2                                          [  424.345135] iwlwifi 0000:04:00.0: 0x00000000 | data1                                                   [  424.345137] iwlwifi 0000:04:00.0: 0x00000080 | data2                                                   [  424.345139] iwlwifi 0000:04:00.0: 0x07030000 | data3                                                   [  424.345141] iwlwifi 0000:04:00.0: 0xDB402E47 | beacon time                                             [  424.345143] iwlwifi 0000:04:00.0: 0x3B1331BD | tsf low                                                 [  424.345145] iwlwifi 0000:04:00.0: 0x00000178 | tsf hi                                                  [  424.345147] iwlwifi 0000:04:00.0: 0x00000000 | time gp1                                                [  424.345149] iwlwifi 0000:04:00.0: 0x18AFCDCC | time gp2                                                [  424.345151] iwlwifi 0000:04:00.0: 0x00000001 | uCode revision type                                     [  424.345153] iwlwifi 0000:04:00.0: 0x0000001D | uCode version major                                     [  424.345155] iwlwifi 0000:04:00.0: 0x0BD893F3 | uCode version minor                                     [  424.345157] iwlwifi 0000:04:00.0: 0x00000220 | hw version                                              [  424.345159] iwlwifi 0000:04:00.0: 0x00C89200 | board version                                           [  424.345161] iwlwifi 0000:04:00.0: 0x0028019C | hcmd                                                    [  424.345162] iwlwifi 0000:04:00.0: 0x00022000 | isr0                                                    [  424.345164] iwlwifi 0000:04:00.0: 0x00800000 | isr1                                                    [  424.345166] iwlwifi 0000:04:00.0: 0x0000000A | isr2                                                    [  424.345168] iwlwifi 0000:04:00.0: 0x00417CC0 | isr3                                                    [  424.345170] iwlwifi 0000:04:00.0: 0x00000000 | isr4                                                    [  424.345172] iwlwifi 0000:04:00.0: 0x0028019C | last cmd Id                                             [  424.345174] iwlwifi 0000:04:00.0: 0x00000000 | wait_event                                              [  424.345175] iwlwifi 0000:04:00.0: 0x00000000 | l2p_control                                             [  424.345177] iwlwifi 0000:04:00.0: 0x00000020 | l2p_duration                                            [  424.345179] iwlwifi 0000:04:00.0: 0x0000003F | l2p_mhvalid                                             [  424.345181] iwlwifi 0000:04:00.0: 0x000000CE | l2p_addr_match                                          [  424.345183] iwlwifi 0000:04:00.0: 0x00000005 | lmpm_pmg_sel                                            [  424.345185] iwlwifi 0000:04:00.0: 0x14100601 | timestamp                                               [  424.345187] iwlwifi 0000:04:00.0: 0x00346880 | flow_handler                                            [  424.345189] iwlwifi 0000:04:00.0: Fseq Registers: [  424.345195] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_ERROR_CODE                                         [  424.345202] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_TOP_INIT_VERSION                                   [  424.345209] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_CNVIO_INIT_VERSION                                 [  424.345215] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_OTP_VERSION                                        [  424.345221] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_TOP_CONTENT_VERSION                                [  424.345228] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_ALIVE_TOKEN                                        [  424.345234] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_CNVI_ID                                            [  424.345241] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_CNVR_ID                                            [  424.345247] iwlwifi 0000:04:00.0: 0x00000000 | CNVI_AUX_MISC_CHIP                                      [  424.345254] iwlwifi 0000:04:00.0: 0x00000000 | CNVR_AUX_MISC_CHIP                                      [  424.345260] iwlwifi 0000:04:00.0: 0x00000000 | CNVR_SCU_SD_REGS_SD_REG_DIG_DCDC_VTRIM                  [  424.345267] iwlwifi 0000:04:00.0: 0x00000000 | CNVR_SCU_SD_REGS_SD_REG_ACTIVE_VDIG_MIRROR              [  424.345273] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_PREV_CNVIO_INIT_VERSION                            [  424.345280] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_WIFI_FSEQ_VERSION                                  [  424.345286] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_BT_FSEQ_VERSION
[  424.345292] iwlwifi 0000:04:00.0: 0x00000000 | FSEQ_CLASS_TP_VERSION
[  424.345296] iwlwifi 0000:04:00.0: Collecting data: trigger 2 fired.
[  424.345299] ieee80211 phy0: Hardware restart was requested
[  424.854961] iwlwifi 0000:04:00.0: Queue 0 is active on fifo 7 and stuck for 2500 ms. SW [40, 41] HW [41, 41] FH TRB=0x0700028                               [  426.499263] amdgpu 0000:09:00.0: amdgpu: SMU: I'm not done with your previous command: SMN_C2PMSG_66:0x00000028 SMN_C2PMSG_82:0x00000000
[  426.499268] amdgpu 0000:09:00.0: amdgpu: Failed to enable gfxoff!
[  426.574524] ACPI: : failed to evaluate _DSM bf0212f2-788f-c64d-a5b3-1f738e285ade (0x1001)
[  426.574529] ACPI: : failed to evaluate _DSM bf0212f2-788f-c64d-a5b3-1f738e285ade (0x1001)
[  426.574531] ACPI: : failed to evaluate _DSM bf0212f2-788f-c64d-a5b3-1f738e285ade (0x1001)
[  426.574533] ACPI: : failed to evaluate _DSM bf0212f2-788f-c64d-a5b3-1f738e285ade (0x1001)
[  426.574534] ACPI: : failed to evaluate _DSM bf0212f2-788f-c64d-a5b3-1f738e285ade (0x1001)
[  426.574536] ACPI: : failed to evaluate _DSM bf0212f2-788f-c64d-a5b3-1f738e285ade (0x1001)             [  426.574538] ACPI: : failed to evaluate _DSM bf0212f2-788f-c64d-a5b3-1f738e285ade (0x1001)             [  426.588940] wlp4s0: HW problem - can not stop rx aggregation for f8:9b:6e:76:9c:cc tid 0               [  426.588945] wlp4s0: HW problem - can not stop rx aggregation for f8:9b:6e:76:9c:cc tid 2
[  426.588948] wlp4s0: HW problem - can not stop rx aggregation for f8:9b:6e:76:9c:cc tid 3
[  431.260885] amdgpu 0000:09:00.0: amdgpu: SMU: I'm not done with your previous command: SMN_C2PMSG_66:0x00000028 SMN_C2PMSG_82:0x00000000                    [  431.260890] amdgpu 0000:09:00.0: amdgpu: Failed to enable gfxoff!                                      [  432.086875] amdgpu 0000:09:00.0: [drm] ERROR [CRTC:91:crtc-0] flip_done timed out                    [  432.598866] amdgpu 0000:09:00.0: [drm] ERROR [CRTC:95:crtc-1] flip_done timed out                    [  432.609228] [drm:amdgpu_job_timedout [amdgpu]] ERROR ring gfx_0.0.0 timeout, signaled seq=12717, emitted seq=12719
[  432.609467] [drm:amdgpu_job_timedout [amdgpu]] ERROR Process information: process .Hyprland-wrapp pid 2619 thread Hyprland:cs0 pid 2656                   [  432.609678] amdgpu 0000:09:00.0: amdgpu: GPU reset begin!                                              [  432.609707] amdgpu: Failed to suspend process 0x800c                                                   [  434.732352] amdgpu 0000:09:00.0: [drm] REG_WAIT timeout 1us * 100000 tries - hubp2_set_blank_regs line:961
[  434.986198] amdgpu 0000:09:00.0: [drm] REG_WAIT timeout 1us * 100000 tries - hubp2_set_blank_regs line:961                                                  [  435.241231] amdgpu 0000:09:00.0: [drm] REG_WAIT timeout 1us * 100000 tries - hubp2_set_blank_regs line:961
[  435.495720] amdgpu 0000:09:00.0: [drm] REG_WAIT timeout 1us * 100000 tries - hubp2_set_blank_regs line:961                                                  [  437.965846] [drm:psp_ring_cmd_submit [amdgpu]] ERROR ring_buffer_start = 000000002ee762d6; ring_buffer_end =<PHONE_NUMBER>2a6265; write_frame = 000000006dd270f9                                                  [  437.966055] [drm:psp_ring_cmd_submit [amdgpu]] ERROR write_frame is pointing to address out of bounds

I was able to reproduce this issue with the Vulkan backend of llama cpp interestingly as well, this time with just Mistral-7B-Instruct at 8 bits. Should easily fit on my GPU since it has 16GBs of VRAM but it almost instantly crashes. Actually much faster to reproduce and constant, I also checked the VRAM usage and it never goes above 8GBs. Just like ROCm running in a TTY eliminates my crashes mostly, this issue is really odd. I guess it's neither ROCm, PyTorch, but rather AMDKFD itself. Should I close and keep the Gitlab issue open?

Try increasing your cpu DDR RAM voltage to 1.35v

I have pretty much confirmed it's not memory related, but I will try that anyway when I get the chance. Also, since making this issue I've actually upgraded my RAM so extra sure it's not that, at least according to @agd5f on Gitlab seems to be firmware related unfortunately, very similar situation that Tinycorp ran into but unrelated expect they are both possibly firmware bugs
https://gitlab.freedesktop.org/drm/amd/-/issues/3220

Exact issue with RX 6800. At the end of high resolution image generation (like 2048x2048), the screen turns black and sends to the login screen. Probably driver crashing.

I might have just got lucky then, check dmesg etc. should give you more insight, I think similar bugs still exist but they might be unrelated

Hi @nonetrix, I tried this configuration and I wasn't able to reproduce your crash. Please have a look at my configuration and steps and tell me if there's something I'm missing.
System Configuration

RX6800XT
Ubuntu 22.04
Python 3.10.12 + Torch 2.3.1 + rocm5.7 (Launcher default install)
ROCm 6.1.2, ROCm 6.0.0
Automatic1111 WebUI + VAE/Model from this ticket

Execution Steps

Install ROCm 6.X.X using amdgpu-install
Install Automatic1111 following their setup instructions on Linux
Run using python launch.py from inside the webui directory.
Generate images using the web UI with 2048 x 2048 resolution

Results
I am able to generate 512x512 up to 2048x2048 images without issue while simultaneously running the webui GUI. My GPU edge temperature does not exceed 68C during image generation.

Hi @nonetrix, do you have any update?
Note that a similar issue has been resolved recently (https://github.com/ROCm/ROCm/issues/3166) and you may find the investigation there helpful in your case. Please let me know if you're still encountering issues, or if I can close this ticket.

Likely safe to close I think

Great, thanks!


Remove auth parameter

Summary
Remove the remainders of the auth parameter in account handling and the method migrate() which was used for the migration from auth to channel.
Details and comments
The auth parameter was deprecated in #226.
Also removed the relevant tests.
Fixes #1061

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

3 of 4 (75.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.2%) to 74.819%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

qiskit_ibm_runtime/qiskit_runtime_service.py
3
4
75.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.2%

Covered Lines:
2481

Relevant Lines:
3316

💛  - Coveralls


Remove Extension on MonoidAggregator at next release.

little more context might be good, not sure what you mean here?

:) I am adding a pull request, but I want to add this issue now. :)

Ahh ok, makes more sense! :)

Fracking compiler bug won't let me enrich MonoidAggregator. Giving up.


[WIP] Prerendering

Just for the sake of it, its still working and relevant. (Original #238)

Rebased on latest dev branch

[WIP] Prerendering (#24)
How does it work
When ever a request comes in that would result in returning the content of index.html, the prerendering kicks in and replaces the app tag with the prerendered content.
In detail

Call app.UseBlazorPrerendering<TEntryComponent>("app", configure => {}); in the server project. TEntryComponent will be the component to get prerendered and inserted into the app tag.
UseBlazorPrerendering attaches the BlazorPrerenderingMiddleware to the ISpaBuilder, to intercept requests to index.html.
If a request is satisfied by index.html. The index.html is parsed with AngleSharp, and modified to contain the prerendered content. This implementation is almost 100% the same as the one in IndexHtmlFileProvider.
To Prerender the content there is a new implementation of Renderer. This implementation for the most part is identical to the one in BrowserRenderer.ts. But it only supports the initial creation, since update on the serverside does not make sense. Also when encountering a Component it goes into recursion, which is different from the Browser version.

What is in this PR
Microsoft.AspNetCore.Blazor.Server.Rendering project
Contains all things related to prerendering

PreRenderer implementation of Renderer (needs cleanup)

PrerenderingApp sample

input component
list component (foreach)
input element
2 bound input elements
FetchDataComponent using a service making a HttpRequest on the client while using the data directly when prerendering.

Current Limitations

After the page is returned to the browser, it is static until the browser catches up with bootstrapping and rerendering the page. It would be nice to actually have some kind of way to map the elements to components. Maybe a custom data tag containing the component id.
Services used for controllers and prerendering must be specified two times for DI.
Routing not yet tested. It probably doesn't work.
IUriHelper implementation PreUriHelper of method GetBaseUriPrefix harcoded to match server url.
Missing Tests If this is the way to go, i will write them.
It only works with the app tag. There should be some way to define the entry component. Also it would be nice to have different services (which also means different references) on server vs client side.
As of now i can only imaging 3 projects.

One containing the Components
One for bootstrapping in Browser
One for bootstrapping in Server

No way to supply services to prerendering. It would be nice to be able to supply different services while prerendering. This would allow to reuse server services to prerender the content without issuing http calls on the server side.

What now?
I know the issue #24 is not yet assigned to any version. And maybe this implementation is going completely haywire. I just did what i thought might be the general idea. Either way, this was major fun.
Let me know what you think!

Thanks for the proposed implementation, @LunicLynx!
It's very cool that you've been able to implement this. However it's still going to be some time before we are ready to include a feature like this in the core packages. It will introduce a lot of new concerns to people's apps (e.g., how to deal with JS interop that occurs during SSR) and we haven't yet got all the necessary designs in place.
If you want to make this usable for people in the short term, what would it take for you to be able to publish it independently as an add-on package? I see you were using [InternalsVisibleTo] on the AngleSharp package. Is that the only internal API you needed access to?
I'll close this for now because it's not something we'll be ready to take action on any time soon. But I am happy to work with you on helping you publish SSR as an independent package if you wish! Hope that's OK.

Sure its fine. Just wanted to keep this updated to dev.
I wlll have a look if it is possible to seperate this.


ImportError for JSONField

Hi there! Thanks for a great library.
Originally I installed social-app-flask-peewee. Unfortunately it doesn't work correctly for peewee >= 3.0.0 because of line 5 in storage.py:
File "/usr/local/lib/python3.7/site-packages/social_peewee/storage.py", line 5, in <module>
app_1  |     from playhouse.kv import JSONField
app_1  | ImportError: cannot import name 'JSONField' from 'playhouse.kv' (/usr/local/lib/python3.7/site-packages/playhouse/kv.py)

Starting from version 3 peewee has JSONField only for postgres and doesn't have generic one.
Do you have any idea how to fix this?
I see two choice:

limit library to work only with postgres (preferably with version >= 9.4)
write own generic JSONField (like it was in peewee < 3)

@omab @unmade
Hi there,
Experiencing the same issue
Is the pull request ready to merge?

@eternalflow I guess PR is ready, but no one has merged it yet. The fix is in this branch dmlb2000:fix-2-define-jsonfield

@eternalflow I guess PR is ready, but no one has merged it yet. The fix is in this branch dmlb2000:fix-2-define-jsonfield

this
pip install -e git://github.com/dmlb2000/social-storage-peewee.git@fix-2-define-jsonfield#egg=social-auth-storage-peewee

hotfixed the issue for me


Default state route

This PR adds an ability to route updated entity states by the first field of the state message that matches the type of the IDs of target entities.
This PR uses new API from base introduced in this PR.

@armiol, @dmdashenkov, PTAL.

@armiol, @dmdashenkov, PTAL.


Revert "Block params"

Reverts FutoRicky/ember-speech-to-text#7
Block params is not working properly.

What was wrong? What failed?


[SoftBody] Burst and Cracks Along Seams for Sphere and Box

Description
I am encountering an issue where meshes burst or deform unexpectedly upon collision with the floor. Specifically:

Sphere: A crack forms along the seam from the north pole to the south pole upon impact.
Box: Each face appears to disconnect from the others as if the seams were not glued together.

This behavior occurs as soon as the mesh collides with the floor, and the meshes appear to "burst" like a balloon. I have tried adjusting the pressure values but this has not resolved the issue.
Steps to Reproduce

Simulate a sphere or box mesh with softbody.
Set up a collision with a floor or plane.
Observe the deformation upon impact.

Expected Behavior

Sphere and box should maintain their structural integrity without cracking or disconnection at the seams upon collision.

Actual Behavior

The sphere forms a crack from the north to south pole upon collision.
The box faces disconnect as if the seams are not properly glued.

Additional Information
I have experimented with different pressure values, but none seem to have a significant effect on this issue. Any guidance or suggestions would be appreciated.

Here is the code I use to generate the soft body from an indexed mesh:
function createFromIndexedMesh(
      vertices: Float32Array,
      indices: Uint32Array,
      inBendType: SoftBodySharedSettings_EBendType = Jolt.SoftBodySharedSettings_EBendType_None,
      inVertexAttributes?: SoftBodySharedSettingsVertexAttributes
  ): SoftBodySharedSettings {
      if (vertices.length % 3 !== 0) {
          throw new Error("Vertices array length must be a multiple of 3.");
      }

      if (indices.length % 3 !== 0) {
          throw new Error("Indices array length must be a multiple of 3.");
      }

      // Create settings
      const sharedSettings: SoftBodySharedSettings = new Jolt.SoftBodySharedSettings;
      const v = new Jolt.SoftBodySharedSettingsVertex;

      // ---

      // Add vertices
      for (let i = 0; i < vertices.length; i += 3) {
          v.mPosition.x = vertices[i];
          v.mPosition.y = vertices[i + 1];
          v.mPosition.z = vertices[i + 2];
          v.mInvMass = 1.0; // Assuming a default inverse mass of 1 for all vertices, can be customized
          sharedSettings.mVertices.push_back(v);
      }
      Jolt.destroy(v);

      console.log("SOFTBODY:vertices", vertices.length )

      // ---

      // Add faces based on the indices
      const f = new Jolt.SoftBodySharedSettingsFace(0, 0, 0, 0);
      for (let i = 0; i < indices.length; i += 3) {
          f.set_mVertex(0, indices[i]);
          f.set_mVertex(1, indices[i + 1]);
          f.set_mVertex(2, indices[i + 2]);
          sharedSettings.AddFace(f);
      }
      Jolt.destroy(f);

      // ---

      // Edge constraints (assuming a simple edge compliance across connected vertices)
      const sEdge = new Jolt.SoftBodySharedSettingsEdge(0, 0, 0);
      sEdge.mCompliance = 0.00001;

      // Loop through the indices to create edges based on connections in the mesh
      const numTriangles = indices.length / 3;
      for (let i = 0; i < numTriangles; ++i) {
          const i0 = indices[i * 3];
          const i1 = indices[i * 3 + 1];
          const i2 = indices[i * 3 + 2];

          // Create edges between vertices in each triangle
          sEdge.set_mVertex(0, i0);
          sEdge.set_mVertex(1, i1);
          sharedSettings.mEdgeConstraints.push_back(sEdge);

          sEdge.set_mVertex(0, i1);
          sEdge.set_mVertex(1, i2);
          sharedSettings.mEdgeConstraints.push_back(sEdge);

          sEdge.set_mVertex(0, i2);
          sEdge.set_mVertex(1, i0);
          sharedSettings.mEdgeConstraints.push_back(sEdge);
      }
      Jolt.destroy(sEdge);

      // Calculate edge lengths and volume constraints if applicable
      sharedSettings.CalculateEdgeLengths();

      // ---

      // Create volume constraints if necessary
      // (Implementation would be based on your specific requirements, similar to the cube example)

      if (inVertexAttributes) {
          sharedSettings.CreateConstraints(inVertexAttributes, 1, inBendType);
      } else {
          const defaultAttributes = new Jolt.SoftBodySharedSettingsVertexAttributes();
          defaultAttributes.mCompliance = 1.0e-5;
          defaultAttributes.mShearCompliance = 1.0e-5;
          defaultAttributes.mBendCompliance = 1.0e-5;
          sharedSettings.CreateConstraints(defaultAttributes, 1, inBendType);
          Jolt.destroy(defaultAttributes);
      }

      // Optimize the settings
      sharedSettings.Optimize();

      return sharedSettings;
  }

Are you sure that your sphere / box mesh is actually closed? E.g. a box is usually modelled like this:

where vertex 'v' is actually 3 different vertices because you need 3 normals (in green) to get correct lighting.
For spheres it's the same thing. There's usually a seam where the UV coordinate goes from 1 back to 0 and at that point there are 2 vertices with the same position, same normal but different UV coordinates.
You need to ensure that for the simulation mesh there is only 1 vertex per position.


TinyMCE cant select image

There's not enough info here to reproduce this.

okay, sorry. i created a model which extends the displayable and added a richtextfield in order to edit it in the admin with the tinyMCE:
class construction(Displayable): text = RichTextField("Text")
then i try to add a picture to this site, uploaded it with the media tool and now i try to add it to tinymce. as you can see on the picture the table is kind of damaged. my mezzanine version is 4.1.0

Cool, but that really isn't anything out of the ordinary. You're going to have to dig into the filebrowser code to work out what's gone wrong for you.

okay, got the problem: my adblocker block the element fb_icon, maybe because of the relation to facebook. a other name may be a good idea, but for now this is fixed. weird :o

Nice find!


polyline onTap ?

does polyline support onTap?

You should check https://github.com/OwnWeb/flutter_map_tappable_polyline plugin :)

does not work as I would like
because I can only tap points of the line, but I can't tap lines between points of that line

does not work as I would like
because I can only tap points of the line, but I can't tap lines between points of that line

I have the same issue. Did you get it working? I am looking at generating new points in between the (data points) to support tapping. However, with lots of polylines to be drawn, I am concerned about the performance.. so looking for better solution.

@tomaszgruzla You be fixed now by https://github.com/OwnWeb/flutter_map_tappable_polyline/pull/8


[wip] remove empty record data fields from json

Changes in this pull request:

In the DNS Change form in the portal if there's an entry with a changeType of "DeleteRecordSet" and the record data value is undefined or an empty string we will delete the record data attributes before sending the JSON to the API.

To test this:

Choose "DeleteRecordSet" change type, enter data in the Input Name and Record Data fields.
Delete the data in the Record Data field
Submit the DNS Change

The DNS Change should not return an error related invalid record data

going to change this in a bit.

@mitruly are you sure you're in the correct branch with the latest commits when testing this locally. It shouldn't be possible to submit partially completed MX record data now. If preference is filled in then exchange is required and vice versa. Exchange field with spaces would fail the validation that requires it to be an absolute value.

@britneywright yes, I am sure and I just re-tested this again. Note the screen captures I provided where the preference is 0.
Note: Realistically, VinylDNS will be supporting more record types via batch change interface in the future and the proposed solution should make sure that the request JSON is properly formatted, regardless of the type. It would be desirable to prevent sending empty strings in our request JSON (through validation ahead of time).

Also noticed that upon error for DeleteRecordSet, the record data is being cleared which is inconsistent with Add behavior.

Also noticed that upon error for DeleteRecordSet, the record data is being cleared which is inconsistent with Add behavior.

That's what my other PR is for to add record data to the JSON protocol so the data is returned. 😄


Cannot setup Garmin Connect integration

After updating my HA Core to 2012.12.3 it's not possible to setup the Garmin Connect integration. I tried a reinstall but that doesn't changed a thing.
I see this in my log:
2021-12-20 16:00:31 ERROR (MainThread) [homeassistant.components.sensor] Error adding entities for domain sensor with platform garmin_connect
Traceback (most recent call last):
File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/homeassistant/helpers/entity_platform.py", line 382, in async_add_entities
await asyncio.gather(*tasks)
File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/homeassistant/helpers/entity_platform.py", line 613, in _async_add_entity
await entity.add_to_platform_finish()
File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 748, in add_to_platform_finish
self.async_write_ha_state()
File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 505, in async_write_ha_state
self._async_write_ha_state()
File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 538, in _async_write_ha_state
state = self._stringify_state()
File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 511, in _stringify_state
if (state := self.state) is None:
File "/mnt/dietpi_userdata/homeassistant/custom_components/garmin_connect/sensor.py", line 125, in state
return round(value, 2)
TypeError: type str doesn't define round method
I'm running HA Core on a Rpi2 with Debian BullsEye and Ptyhon 3.9.9

Release 0.1.4 should work better.


python3Packages.types-redis: fix build and add pyopenssl

Description of changes
types-redis requires pyopenssl. This is now added.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 221974 run on x86_64-linux 1

8 packages built:

python310Packages.types-pyopenssl
python310Packages.types-pyopenssl.dist
python310Packages.types-redis
python310Packages.types-redis.dist
python311Packages.types-pyopenssl
python311Packages.types-pyopenssl.dist
python311Packages.types-redis
python311Packages.types-redis.dist

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 221974 run on aarch64-linux 1

8 packages built:

python310Packages.types-pyopenssl
python310Packages.types-pyopenssl.dist
python310Packages.types-redis
python310Packages.types-redis.dist
python311Packages.types-pyopenssl
python311Packages.types-pyopenssl.dist
python311Packages.types-redis
python311Packages.types-redis.dist

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 221974 run on x86_64-linux 1

8 packages built:

python310Packages.types-pyopenssl
python310Packages.types-pyopenssl.dist
python310Packages.types-redis
python310Packages.types-redis.dist
python311Packages.types-pyopenssl
python311Packages.types-pyopenssl.dist
python311Packages.types-redis
python311Packages.types-redis.dist

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/2019

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 221974 run on x86_64-linux 1

8 packages built:

python310Packages.types-pyopenssl
python310Packages.types-pyopenssl.dist
python310Packages.types-redis
python310Packages.types-redis.dist
python311Packages.types-pyopenssl
python311Packages.types-pyopenssl.dist
python311Packages.types-redis
python311Packages.types-redis.dist

@ofborg build python310Packages.types-redis python310Packages.types-pyopenssl


Question: v1.6.2 - GCM Sender ID - Runtime argument

Currently I keep the GCM Sender ID in a configuration file which is used to compile the config.xml file (e.g. to get Bundle ID, User Agent header, package version). The values in this configuration file are also injected into a JavaScript file accessible in the web view - so that it can be passed to the PushNotification.init method.
In the latest version of the plugin (1.6.2 at the time of writing this), there is now a required runtime argument --variable SENDER_ID="XYZ", presumably to remove the need to supply the Sender ID in the JavaScript layer.
Firstly, I'm interested in why the plugin is built in this way? Is it in order to protect the security of the Sender ID - rather than to embed it in the web view code?
Secondly, can you recommend an approach for putting in the runtime argument dynamically at the point of compiling the cordova application? I'm thinking of specifying a config.xml  to hold the value, which could be used in some kind of pre-build hook, but I would like to hear your opinion!

@cjpete the sender ID needs to be added to a strings.xml file on Android to prevent a warning from the GCM sub-service and on iOS it needs to be added to a pList file. Those things can't happen unless the CLI already knows about the value at build time. In the 2.0.0 release I will remove the need to add the sender ID in the JS file.
Um, why don't you just do this:
<plugin name="phonegap-plugin-push">
    <variable name="SENDER_ID" value="XXXXXXX" />
</plugin>

https://github.com/phonegap/phonegap-plugin-push/blob/master/docs/INSTALLATION.md

@macdonst Does this plugin need the Google App ID which is in the Google Service-Info.plist?

@bluejamesbond yes, that is what the SENDER_ID is, the Google App ID.

@macdonst When I downloaded the Google Plist file, I see a GCM_SENDER_ID and a GOOGLE_APP_ID. The Google App ID is of the form "1:XXX:ios:YYY" while the GCM_SENDER_ID is just a large number. I am still confused where I need to store these values. Can you please elaborate?

Requiring this at plugin installation time is bad because it means you cannot build your app for different sender ids. This is commonly done for e.g. testing builds where you want your test server to publish messages using one sender id and not spam all of your real users.
This issue is biting me right now and I'm messing about trying to install the plugin with a bogus id of something like "99999999999999999999" and then having a build hook that does sed -ie 's/99999999999999999999/<REAL_SENDER_ID>/' running in after_prepare. Very painful. Very hacky. :-(

@macdonst Is the syntax param or variable? I've seen it flip flop. I currently am using the param syntax and am getting the following when trying to restore the plugin
Fetching plugin<EMAIL_ADDRESS>via npm
Failed to restore plugin "phonegap-plugin-push" from config.xml. You might need to try adding it again. Error: Variable(s) missing (use: --variable SENDER_ID=value).

the sender ID needs to be added to a strings.xml file on Android to prevent a warning from the GCM sub-service and on iOS it needs to be added to a pList file

this just got me curious as to what kind of warning it is and why.
after some digging around in plugin.xml history i found out the issue that is the root cause to adding sender_Id as install param:
https://github.com/phonegap/phonegap-plugin-push/issues/492
@macdonst it believe it would be really useful if the addition of sender_id & perhaps this issue would be mentioned in the changes log

@samzilverberg it will all be documented when we switch to FCM which will not include the senderID in the options to the init method.

Closing as v2.0.0/FCM require the sender ID to be in a json file Google can read.


Configurable init job for externally managed databases

Hello.
I have found that deploying zitadel in case if the database (with permissions) managed outside of zitadel is difficult. Consider case, where database's credentials for zitadel already exists and we don't want corresponding init steps by zitadel (because we don't want to give zitadel admin access to database). In that case we want zitadel to perform only init zitadel not general init.
To alleviate users to manage this case init job should run init tasks sequentially: init database, init user, init grant, init zitadel. Or probably there are only two cases make sense: run full init or run only init zitadel.

You can disable the init phase in the values.yaml
You can then initialize the ZITADEL db and user yourself. In the ZITADEL repo, you see the SQL templates, ZITADEL executes in the init phase.
Please reopen the issue, if that doesn't work for you.


Dev/piano roll layout

Hi, @zigen.
I made prototype which can render notes, but does not provide note editing.
Could you review my codes?

Hi @zigen, I've refactored piano roll as a Vue component.
If OK, please approve this PR.

how fast!!!!!
let me check it.

Thank you😊

You still have the Error on y dev?


Plug in a few missing BiomesAPI spots

Short and simple, just ran into it by coincidence trying to update all the modules, that script didn't like BiomesAPI being present without being its own Git repo.
Making PR to doc, to see if somebody wants some easy merge practice, and in case somebody else manages to spot anything else I missed.

Hooray Jenkins reported success with all tests good!


permission issue in openshift

Tried to install the plugin for argo rollouts in openshift 4.14 and got an error:
time="2024-09-10T14:10:18Z" level=fatal msg="Failed to download plugins: failed to create plugin folder for plugin (solo-io/glooplatform): (mkdir /home/argo-rollouts/plugin-bin: permission denied)

Got it working via workaround. Sufficient to add the "privileged" scc to argo rollouts and make the deployment's pod template container be "privileged". Obviously this is not the right thing to do, but it's acceptable (somewhat) for testing.  Should be fixed in the code.

Seems to be an issue with the way argo-rollouts itself handles plugins.

https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-openshift
The openshift plugin suggests that you put the binary in a location where your rollouts pods would be able to access it locally rather than specifying it as http url. That might be a good way to avoid needing higher privileges to download the plugin and write it somewhere.
the doc for rollouts has similar verbiage as well


Change releases to "alpha" and make them generate on change each night

This will allow us to set up a formal "testing" period whilst giving people the ability to keep up to date.

Move release.sh into .travis and cleanup unneeded files.

Also for reference:

Cron Jobs
Conditions - see type

Closing this. We'll instead do formal releases.


consider approach of splitting schema definition and form definition

I got some inspiration from https://github.com/Textalk/angular-schema-form
To me it seems a more sensible solution to split the strict schema from the less strict form. This allows for having multiple forms on the same data. For me that is useful, as my users have different roles acting on the shared data.

Thanks for this @ssured -- I agree entirely.  We'll push for this in the coming weeks.


Rework Invite Code Experience

Fixes https://github.com/subconsciousnetwork/subconscious/issues/715
Fixes https://github.com/subconsciousnetwork/subconscious/issues/697
Rework the invite code flow to ensure the code is actually valid. See screenshots in comments throughout.

The graphic in the issue is great.
We could consider creating a docs dir at the top level and dropping it in.

Based on feedback here and the work we're doing in https://github.com/subconsciousnetwork/subconscious-cloud/issues/6 I think we should rethink the overall flow here a little.
We can address https://github.com/subconsciousnetwork/subconscious/issues/737 and https://github.com/subconsciousnetwork/subconscious/issues/738 easily once https://github.com/subconsciousnetwork/subconscious-cloud/issues/6 lands.

Doing some modelling to explore how things would work after https://github.com/subconsciousnetwork/subconscious-cloud/issues/6 lands.
@gordonbrander let me know what you think, especially about my callout here RE: trying to redeem a code multiple times.

https://www.figma.com/file/jLgkHEJgiXICUK4y3UmcU6/Subconscious-Whiteboard?type=whiteboard&node-id=27-1056&t=KZxLhKs7zUCCntdO-4

Clarifying the current planned changes in the redemption, mostly compatible with the flow above:

Invite codes are bound to the provided sphere on redemption.
Provisioning with the same invite code/sphere pair is idempotent.
Provisioning request can fail via an internal error, or if invite code is invalid (not legit, or claimed by another sphere, we do not specify). The error "type" and its "error" message are available in JSON for non-200 responses.
The provisioning request returns gateway ID regardless of state (whether provisioned or provisioning). Status must be queried after to handle whether pending/ready.
If provisioning task fails, the provisioning request can be retried.

Clarifying the current planned changes in the redemption, mostly compatible with the flow above:

Invite codes are bound to the provided sphere on redemption.
Provisioning with the same invite code/sphere pair is idempotent.
Provisioning request can fail via an internal error, or if invite code is invalid (not legit, or claimed by another sphere, we do not specify). The error "type" and its "error" message are available in JSON for non-200 responses.
The provisioning request returns gateway ID regardless of state (whether provisioned or provisioning). Status must be queried after to handle whether pending/ready.
If provisioning task fails, the provisioning request can be retried.

Amazing! Thanks @jsantell, I had a quick read over https://github.com/subconsciousnetwork/subconscious-cloud/pull/7/files#diff-e1e65eeceb23dd47013779351844a41a2b781e987c92db2bb0d4fa60d51703b9 and updated the diagram with a few more details.


'#' comments can't appear on the same line as variable assignments

Presently, we can add comments in an .env file only if the comment is on a line by itself.  If a comment is added on the same line as a variable assignment, the comment is parsed as part of the value.
Example:
# comment on its own line is ok
FOO=bar # this comment is now included in the value FOO

It would be great if EOL comments were supported.

https://github.com/luggit/react-native-config/issues/522


Added a line to README.md

So people don't make the same mistake I did!

I signed it!

I signed it!
On Fri, May 27, 2016 at 9:05 AM, googlebot<EMAIL_ADDRESS>wrote:

Thanks for your pull request. It looks like this may be your first
contribution to a Google open source project. Before we can look at your
pull request, you'll need to sign a Contributor License Agreement (CLA).
📝 Please visit https://cla.developers.google.com/
https://cla.developers.google.com/ to sign.
Once you've signed, please reply here (e.g. I signed it!) and we'll
verify. Thanks.

If you've already signed a CLA, it's possible we don't have your
GitHub username or you're using a different email address. Check your
existing CLA data https://cla.developers.google.com/clas and verify
that your email is set on your git commits
https://help.github.com/articles/setting-your-email-in-git/.
If you signed the CLA as a corporation, please let us know the
company's name.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/firebase/angularfire/pull/725#issuecomment-222141054,
or mute the thread
https://github.com/notifications/unsubscribe/AEPIEiN942Drl2rh5yxQxjQA-nGzwDw0ks5qFuwdgaJpZM4Ioe1I
.

--
Wilson Hobbs
CEO Glasstache
(404) 719-3252
<EMAIL_ADDRESS>wilsonhobbs.com

I made one commit @googlebot.

Thanks for the PR, but the branch you forked is the one that is upgrading AngularFire to 2.0.0, so your change will be out-of-date as soon as that branch gets merged. Also, all the commits included in this PR are not ready and we are tracking this work in #717 .
It's safe to assume that if something is not in master, it shouldn't be relied upon yet.


Multiple ad sizes

I'd like to provide multiple ad sizes in the ad request, but this does not seem to be possible currently. e.g.: adSize = "300x50,300x100,300x250,320x50,320x100,320x240"
Is this something the flutter_google_ad_manager package could and wants to support?

@GeertJohan
Specifying multiple sizes in one banner is not supported.
You need to prepare multiple DFPBanner.

How would that work? I got the above adSize from my ad integration partner, this is something they say is supported in google ad manager. I think it is supposed to be given as adSize name (instead of BANNER / MEDIUM_RECTANGLE / etc).

@ko2ic: Why is it not supported? The Kotlin code clearly does support it. You even wrap the one size in an array and send it over. Should be an easy fix.


turn most deps into weakdeps

Closes https://github.com/mcabbott/AxisKeys.jl/issues/150.
I got so used to AxisKeys bringing lots of these packages as dependencies, didn't even think that with 1.9 they can be made optional :) Only noticed after seeing the recent issue opened here.
Tests (should) pass on both 1.6 and 1.9. Failures on 1.10 unrelated: there's a known Julia issue with new ambiguities https://github.com/JuliaLang/julia/issues/52386 https://github.com/JuliaLang/julia/issues/52263 https://github.com/JuliaSparse/SparseArrays.jl/issues/431.

Awesome, thanks!
Do you know whether names like StatisticsExt can or cannot cause problems by being used elsewhere? Many packages shove their own name into the ext name.


Fixes persistent context menu creation error "cannot create duplicate item" in service worker

Due to the contextMenu creation code living at the top level of the service worker, that code runs every time the service worker is invoked.
I noticed it due to my other PR causing the service worker to run every time a new tab is opened :P its a very persistent and annoying error, but it doesn't break anything.
Its a simple fix, this contextMenu creation code should be housed within the installation event callback, specifically when the event is INSTALL, so it only runs on install.

Looks good, thanks!


Correction of links

I'm working on a pr to build automatic link checking. During the testing of it I had to correct a couple of links...

/assign @johnbelamaric

/ok-to-test

/assign @liamfallon
/assign @tliron

/approve

Could we get one more approval on this before merging?

/approve


[image_picker] image is rotated after taking photos from camera

this issue is the same as 35334, 45529, 37688, i don't know why are those marked as closed while the issue is still happening in the latest version.
tested on:

Redmi Note 7 (Android 9.0)
Redmi 8A (Android 9.0)

flutter doctor -v
[√] Flutter (Channel master, 1.19.0-2.0.pre.114, on Microsoft Windows [Version 10.0.18363.836], locale en-ID)
    • Flutter version 1.19.0-2.0.pre.114 at C:\Devkit\flutter
    • Framework revision 1cfd792a38 (8 days ago), 2020-05-18 18:18:16 -0500
    • Engine revision 4b1a70e6a2
    • Dart version 2.9.0 (build 2.9.0-9.0.dev 40f7a11d89)

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Devkit\SDK
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = C:\Devkit\SDK
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    • All Android licenses accepted.

[√] Android Studio (version 3.6)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.8052
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] IntelliJ IDEA Ultimate Edition (version 2019.3)
    • IntelliJ at C:\Program Files\JetBrains\IntelliJ IDEA 2019.2.1
    • Flutter plugin version 43.0.3
    • Dart plugin version 193.6494.35

[√] VS Code (version 1.42.1)
    • VS Code at C:\Users\Bahri Rizaldi\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.8.1

[√] Connected device (1 available)
    • Android SDK built for x86 • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)

• No issues found!

Hi @brizaldi
I see there's an accepted PR addressing the similar IOS issue the case you described.
Please take a look here ,
For the shake of simplicity, please share the code snippet that you're facing the problem.
and I will reproduce it for you.
Thank you

Without additional information we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.


Disable /etc/resolv.conf for additional NICs

This prevents additional NICs from modifying /etc/resolv.conf, potentially with incorrect nameservers, when initialised from DHCP.

As 1.1.1 ?

Based on the intention of this role it's a bug fix, though technically it's a change in behaviour. 1.1.1 or 1.2.

Let's go for 1.2.0 then.


[Bugfix] Fix sliding window in cohere2 model

This one address the feature request: https://github.com/vllm-project/vllm/issues/11357

cache_config.sliding_window should be None for interleaving sliding window. fixing it in https://github.com/vllm-project/vllm/pull/11583 . thanks for reporting it!


added support for mulicategorical variables in compute_smd

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 95.77465% with 3 lines in your changes missing coverage. Please review.

Project coverage is 92.76%. Comparing base (4c3a610) to head (0f19aab).

Files
Patch %
Lines

src/skmiscpy/cbs.py
95.38%
3 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main       #2      +/-   ##
==========================================
+ Coverage   92.19%   92.76%   +0.56%
==========================================
  Files           4        4
  Lines         282      304      +22
==========================================
+ Hits          260      282      +22
  Misses         22       22

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


Spurious diffs due to unsorted arrays

The condition_keys array as returned by AWS is unsorted and prone to the order changing randomly. This doesn't have an interesting impact, so it would be a "nice to have" if we instead committed a sorted copy of this array and therefore didn't have irrelevant lines in the diff
https://github.com/iann0036/iam-dataset/commit/0141e299b14a8e6e31f42a6ab2d88d5f744ea0ee

Great idea @aidansteele!
Added as requested.


Deps-update

 Dependency-Updates und -Löschungen

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

3 of 3 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.0009%) to 85.294%

Totals

Change from base Build<PHONE_NUMBER>:
-0.0009%

Covered Lines:
27353

Relevant Lines:
32069

💛  - Coveralls

bors merge


Project cleanup

dummy model, services, repos and routes deleted
removed database migrations scripts and env configurator
DatabaseConnection class moved to utils.database

We can remove the ApiVersion enum class, this will be implemented/changed by the consumers. I think we also should remove the files DefaultRoutes and its tests, Application and its configuration file for the same reasons, and keep some tests for the validations and table extension filters, so we can test our framework in this project.


coordinate release v0.9.75

@newville unfortunately I was fully busy on the beamline this week and I did not have the time to prepare for next release. Would it be possible to postpone by one week? That is, releasing v0.9.75 on March 15th? I propose to use this issue to coordinate next release.
Here what I would like to include in next release:

[x] merge #412
[x] merge #501

I am also doing some cleaning among the open issues and tagging the milestone with the next release.

@maurov Yes to March 15.
I've been busy at our beamline too and not done very much (I think #500 is better and no longer failing, if maybe not perfect).
I will work on #411 and #496, and expect to have those done by mid-week next week.  I'm also hoping to have an example of "generate Jupyter notebook from Larix history", and maybe even a start on "Feffit to Jupyter", and maybe "Pre-edge Peak fit to Jupyter",  and "PCA / LCF to Jupyter" too.
Have a great weekend!

@newville I postponed #411 and #496, as they are not urgent. I did some cleaning in the issues, but do not hesitate to close those that you addressed. From my side, green light to release 0.9.75.

@maurov Thanks -- yes, I agree that we will continue to work on/toward those....


fix parse midi bug

midi event may be ignored in the file.need to be processed,just in
switch mType {
...
...
default:
{
//this place to deal with
}
}

Thanks for this! Lots of changes, I will need to take some time reading them. Are you using this library? What for?

Yeah, I'm using this library for learning the midi file format.I think this lib is simple and easy to understand, and also easy to do some experiments.


Prevent calling QUnit.start twice with jQuery 3.0.

Under jQuery 3.0 $.ready is always async (even if the document is already loaded). This is generally a great thing, however we were relying on the fact that it was sync (then adding our own async to ensure it was async).
This change prevents QUnit from auto-starting until our callback is completed.
Related to https://github.com/ember-cli/ember-cli/issues/6247.

Linked and confirmed.


adding copilot-instructions.md

Description
adding copilot-instructions.md

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 22.68%. Comparing base (f3d1aff) to head (7020599).
Report is 26 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #281      +/-   ##
==========================================
- Coverage   24.38%   22.68%   -1.71%
==========================================
  Files         202      212      +10
  Lines        6856     7370     +514
==========================================
  Hits         1672     1672
- Misses       5173     5687     +514
  Partials       11       11

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


💡 [FEATURE] -  Adding good Youtube Playlist for Operating System

Idea Contribution

[X] I have read all the feature request issues.
[X] I'm interested in working on this issue
[X] I'm part of GSSOC organization

Explain feature request
No response
Explain your solution
No response
Any alternative approaches/features
No response
Additional Context
No response

hello @jfmartinz  can you please assign me this issue


Update token icons in Wallet tab [Fiji]

We will have rounded icons 40x40. It's easy to generate for coins, more difficult for tokens without graphics. For those ones, use colors (Emerald, Indigo, Radical, Pumpkin, Cerulean, Azure, Mine) and up to 4 characters inside (ENS, SFPF, DEFI, DAO). Use the Tokenary app for inspiration.
If AlphaWallet wants to be the best wallet to hold tokens, we need to make it attractive. In the future, I will provide few more designs how you can manage your tokens quickly (by holding and swiping left to reveal hidden menu)
Sketch Cloud:
https://sketch.cloud/s/jDODG/v/093zrA/a/gPjRJM/r/eKjJOp
Zeplin:
https://zpl.io/bzXyMyM

We are using the same component as we used in "Settings", so we have an icon 40x40, then the same Headline, secondary line (in terms of font).
https://zpl.io/VkordBg

We'll implement this by using the token graphic if available otherwise use the symbol inside a coloured ring. I'll make an algorithm that converts the token address to a colour. Is that how you expect it? Maybe also have an address -> colour table so this can be overriden.

We'll implement this by using the token graphic if available otherwise use the symbol inside a coloured ring. I'll make an algorithm that converts the token address to a colour. Is that how you expect it? Maybe also have an address -> colour table so this can be overriden.

https://play.google.com/store/apps/details?id=com.jufy.tokenary&hl=en
@JamesSmartCell Please download and try to figure out how they made it.

in our case, those are acceptable colors for tokens without symbols: Mine, Radical, Emerald, Pumpkin, Cerulean, Indigo, Azure

I created a quite big library of tokens:
https://app.zeplin.io/styleguide/5e0b15e46049c216fb7ab4d5/components?cseid=5e0b16e4ce5cf519870b0316

I will use this repo:
https://github.com/ethereum-lists/tokens/tree/master/tokens/eth
build a simple tool that creates a mapping between token addr and icon and embed this in the app.

Along with this change, we need to update font and spacing on wallet tab:

native crypto where fiat value is available
https://app.zeplin.io/project/5d088205bff2d15de6a4397b/styleguide/components?coid=5e96e1bf41b00851c1fb454a
https://app.zeplin.io/project/5d088205bff2d15de6a4397b/styleguide/components?coid=5e96e1bea5ea847f77c9ca27

In this example, Ether market price is $226 USD

native crypto where fiat value is not available
tokens, not fiat value
https://app.zeplin.io/project/5d088205bff2d15de6a4397b/styleguide/components?coid=5e20c0a5535db07d236ab315

native crypto or tokens for testnets
https://app.zeplin.io/project/5d088205bff2d15de6a4397b/styleguide/components?coid=5efc3d791b4d9162739cd42f

@ChintanRathod The work for this is mostly complete. It is lower priority than the universal icon class (#1550 )
Summary of total change:

Don't display value for testnet.
Re-add the old testnet label at the far end if the token is testnet. Use the 'hasRealValue' in class EthereumNetworkRepository to determine if testnet token or not.


Not Capturing Credentials in Mobile Browser

I have the latest version of SF installed. Starts with no issues and captures credentials when using my desktop browser. If I go to the same page on my Android the page loads but does not capture credentials or redirect when hitting submit. Any thoughts?
"POST /login/device-based/login/async/?refsrc=https%3A%2F%2Fm.facebook.com%2F&lwv=100 HTTP/1.1" 405 -

same problem!

Im having the same problem T^T

for me it doesn't capture credentials only when i fill both the email and the password input ...

Has someone found a solution?

I habe the same Problem. I tried different mobile browsers, all have the same reaction: no redirect, no capture.

I have the latest version of SF installed. Starts with no issues and captures credentials when using my desktop browser. If I go to the same page on my Android the page loads but does not capture credentials or redirect when hitting submit. Any thoughts?
"POST /login/device-based/login/async/?refsrc=https%3A%2F%2Fm.facebook.com%2F&lwv=100 HTTP/1.1" 405 -


Make vcs zip handling more robust.

This change works with both current vendored Pip and Pip 22.2.2.
Work towards #1805

This is part 1 of 3 in breaking the final ~1k delta lines into chunks for review.


Multiple viewers on a layer: tracebacks when closing a viewer

🐛 Bug
It's unclear whether this should be an officially supported feature, but probably it should be!
Creating a layer outside of the viewer, and then adding it to two different viewers seems to work fine. The layer attributes are perfectly synchronised, and changing e.g. the colormap on one viewer changes it in both. Which is excellent!
However, when one of the viewers is closed, I start to get tracebacks. I think it's because we don't unsubscribe the events for the deleted viewer — if so, could be an easy fix! (And might tie into #1500.)
To Reproduce
from skimage import data
import napari

image = data.camera()
imlayer = napari.layers.Image(image)

with napari.gui_qt():
    v1 = napari.Viewer()
    v1.add_layer(imlayer)
    v2 = napari.Viewer()
    v2.add_layer(imlayer)

While this is not address in #1955 it could be solved in a follow-up. That PR will allow you to remove and add layers to the same viewer. Removing the layer will cause all events to get disconnected.
The next step would instead be to specifically remove every single event that we add and no more. That would be a good goal, but I think should come in a new PR. At the point, when combined with #1500 we should have this fixed


[BUG] The apply-manifests job in a previous upgrade updates the SystemServicesUpgraded condition of the current upgrade

Describe the bug

The apply-manifests job in a previous upgrade updates the SystemServicesUpgraded condition of the current upgrade.
To Reproduce
Steps to reproduce the behavior:

Upgrade from v1.2.1 to v1.2-head.
Upgrade v1.2-head to v1.3-head immediately (< 7 days).
The "upgrade system service" part is complete even though the apply_manifest job is still running. And harvester starts cordoning the first node to upgrade the node. The pre-drain job can't start because apply_manifest job still running.
If the apply_manifest is complete, the pre-drain job should start and the upgrade continues.

Expected behavior

The second upgrade's "upgrade system service" progress should not complete if apply_manifest job still running.
Additional context
Note this issue is found while testing upgrade two minor versions in a short time, for most use cases the user can't see it because two upgrades are not to be performed so close.

Verified fixed on v1.3-4372cbc4-head (24/03/01).
Result
$\color{green}{\textsf{PASS}}$ When the second upgrade apply manifest job is running, the "Upgrade System Service" progress is running. They both complete at the same time. $~~$

When the apply manifest job complete, the "Upgrade System Service" progress bar also complete

https://github.com/harvester/harvester/assets/29251855/5dfa2fb5-bd4b-40f2-8b14-7deb54baf965

$\color{green}{\textsf{PASS}}$ Can successfully upgrade to v1.3-head  $~~$

Test Information

Test Environment: Three nodes harvester on bare metal machines
Harvester version: v1.3-4372cbc4-head (24/03/01)

Verify Steps
 Check the second upgrade process

Create the v1.2.1 Harvester cluster
Upgrade to v1.2-head
After upgrade complete, prepare another upgrade to v1.3-head
Wait until the upgrade progress proceed to Upgrading System Service stage
Open K9s and check the apply manifest job logs
After the apply manifest complete, refresh the Harvester to check the upgrade progress
Ensure when the apply manifest job is running, the upgrade is also running on the stage of Upgrading System Service


Launching vscode from bash gives the following error

VSCode Version: 1.29.1
OS Version: Ubuntu 18.04

Steps to Reproduce:

Download vscode .deb package from here -> https://code.visualstudio.com/docs/setup/linux
Type code in terminal

code --verbose gives:
[main 3:45:14 PM] Error: listen EACCES /run/user/0/vscode-4369ae7e-1.29.1-main.sock
        at Object._errnoException (util.js:1024:11)
        at _exceptionWithHostPort (util.js:1046:20)
        at Server.setupListenHandle [as _listen2] (net.js:1334:19)
        at listenInCluster (net.js:1392:12)
        at Server.listen (net.js:1487:5)
        at /usr/share/code/resources/app/out/vs/code/electron-main/main.js:190:282
        at new Promise (<anonymous>)
        at Object.t.serve (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:190:215)
        at n (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:503:143)
        at Q (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:505:411)
        at t.e.invokeFunction (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:220:247)
        at /usr/share/code/resources/app/out/vs/code/electron-main/main.js:506:361
        at Object.v [as _notify] (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:101:572)
        at Object.enter (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:104:924)
        at n.Class.derive._oncancel._run (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:106:790)
        at n.Class.derive._oncancel._completed (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:106:231)
        at u (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:109:680)
        at V.then.o.(anonymous function) (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:109:894)
        at Object.v [as _notify] (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:101:572)
        at Object.enter (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:104:924)
        at n.Class.derive._oncancel._run (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:106:790)
        at n.Class.derive._oncancel._completed (/usr/share/code/resources/app/out/vs/code/electron-main/main.js:106:231)
        at /usr/share/code/resources/app/out/vs/code/electron-main/main.js:137:453
        at FSReqWrap.oncomplete (original-fs.js:153:5)
    [main 3:45:14 PM] Lifecycle#kill()

bash -x code gives:
++ id -u
+ '[' 1000 = 0 ']'
+ '[' '!' -L code ']'
++ dirname code
+ VSCODE_PATH=./..
+ ELECTRON=./../code
+ CLI=./../resources/app/out/cli.js
+ ELECTRON_RUN_AS_NODE=1
+ ./../code ./../resources/app/out/cli.js
/usr/bin/code: line 35: ./../code: No such file or directory
+ exit 127

Output of /usr/bin/code:
#!/usr/bin/env bash
#
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.

# If root, ensure that --user-data-dir or --file-write is specified
if [ "$(id -u)" = "0" ]; then
    for i in $@
    do
        if [[ $i == --user-data-dir || $i == --user-data-dir=* || $i == --file-write ]]; then
            CAN_LAUNCH_AS_ROOT=1
        fi
    done
    if [ -z $CAN_LAUNCH_AS_ROOT ]; then
        echo "You are trying to start vscode as a super user which is not recommended. If you really want to, you must specify an alternate user data directory using the --user-data-dir argument." 1>&2
        exit 1
    fi
fi

if [ ! -L $0 ]; then
    # if path is not a symlink, find relatively
    VSCODE_PATH="$(dirname $0)/.."
else
    if which readlink >/dev/null; then
        # if readlink exists, follow the symlink and find relatively
        VSCODE_PATH="$(dirname $(readlink -f $0))/.."
    else
        # else use the standard install location
        VSCODE_PATH="/usr/share/code"
    fi
fi

ELECTRON="$VSCODE_PATH/code"
CLI="$VSCODE_PATH/resources/app/out/cli.js"
ELECTRON_RUN_AS_NODE=1 "$ELECTRON" "$CLI" "$@"
exit $?

That this happen every time? Or when you launch it though the dash?

The dash works fine, as stated at the top of this post it happens when I want to execute code in bash terminal.


is it suitble to add interface to get SSL_CTX's verify_store

I used openssl 1.1.1k to implement SSL services. Multiple service programs run on my computer to provide services for external systems. Assume that these services are A and B. A0 is the client of A，and the same B0 is to B. I previously load all CA file(include A and B) on service A  to make A0 pass the certificate verification.  But there is a problem that A0 can also pass the verification use B0 certificates. Now I want A0 can only pass the verification using its own certificates.  Could I load the A0's CA files on verifty_store to acheive my goal? If I could，I will add an interface SSL_CTX_get0_verify_cert_store to ssl.h, similar to the existing interface SSL_CTX_get0_certificate, will it conflict with the OpenSSL framework design? Or are there any security issues?

@t8m Sir, May I have your advice?

If I understand your question correctly you just want separate certificate stores for servers A and B. And that should be quite easy to set up, you just do not use the default CA cert path for the client certificate verification but only A specific and B specific CA certs for each server respectively. I do not understand why you would need SSL_CTX_get0_verify_cert_store().

Marking as inactive, to be closed at the end of 3.4 dev barring further input

邮件已收到，祝您生活愉快！    --李朋璋

translation: The email has been received, I wish you a happy life!


WRQ-22937: Updated storybook to version 8

Checklist

[x] I have read and understand the contribution guide
[x] A CHANGELOG entry is included
[ ] At least one test case is included for this feature or bug fix
[x] Documentation was added or is not needed
[ ] This is an API breaking change

Issue Resolved / Feature Added
Storybook needed to be updated to the latest version
Resolution
Added rootId in SpotlightRootDecorator.js config to handle different root container id used in react apps
Updated list of storybook dependencies and their version to v7.x and v8.x based on the migration guide https://github.com/storybookjs/storybook/blob/next/MIGRATION.md
Changed configuration based on the storybook v7 and v8 requirements

main.js: core.builder information replaced by framework.name.

Addon '@enact/storybook-utils/addons/docs' replaced by '@storybook/addon-docs' because storybook addon for docs does not support customization anymore https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#dropped-addon-docs-manual-configuration

story filenames different than xxx.stories.js need an indexer https://github.com/storybookjs/storybook/pull/20700/files#diff-ea5ebe92abd71b6467c58252b92c04b8d49cc140e8a94f9cf5bb7a76bf2256a4 experimental_indexers information was added in main.js

preview.js: docs.inlineStories has been renamed docs.story.inline; docs.iframeHeight has been renamed  docs.story.iframeHeight

package.json storybook dev and build commands adapted to v8 naming.

manager.js: The state and API for the UI layout has changed https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#ui-layout-state-has-changed-shape

Additional Considerations
Note: although docs is disabled, I left the docs configuration intact in preview.js. It will be needed when we activate docs and does not affect current configuration
Links
WRQ-22937
Comments
Enact-DCO-1.0-Signed-off-by: Daniel Stoian<EMAIL_ADDRESS>

Could you please rebase your branch with the latest feature/enact_v5?

I think sandstone, agate has the same code style. Would you please update them also?

I think sandstone (enactjs/sandstone#1588) and agate (enactjs/agate#791) have the same code style. Would you please update them also?

yes, I will fix everywhere. Unfortunately, enact lint command did not detect these errors and they got into GH

I guess we don't need this explanation in the About page. Would you please fix this?

I guess we don't need this explanation in the About page. Would you please fix this?

Nice catch!
I will remove in all samplers


Improve legend items management

Related to: #12629

Focus last item created with Enter
Refresh legend by adding items created with Enter
Refresh legend by removing items created with Enter

Bonus:

Disable item editability if there is only one of them

For Acceptance:

Create a custom Legend
Create / Remove items with Enter

Working like a charm ✨

\o/


px-map raising console errors in IE11

This is using IE version 11.0.9600.18617.
When navigating to https://www.predix-ui.com/#/components/px-map/, the map isn't shown. When opening the page with the developer console on (F12), an error is raised:
PxMapBehavior is undefined.
Full snippet:
Polymer({
    is%3A 'px-map'%2C
    behaviors%3A [PxMapBehavior.LeafletRoot]
  })%3B

%2F%2F%23 sourceURL%3Dhttps%3A%2F%2Fwww.predix-ui.com%2Fpx-map%2Fpx-map%2Fpx-map.html.js
Alongside that, the console produces three errors about missing :'s:
 Expected ':'
File: px-map-behavior-element.es6.js, Line: 16, Column: 19
File: px-map-behavior-layer.es6.js, Line: 20, Column: 13
File: px-map-behavior-root.es6.js, Line: 66, Column: 12
Instantiating the map on our own app produced the same console errors when loaded in IE11, but none when loaded in Chrome.

Right now, px-map and its subcomponents are being delivered with untranspiled ES6 features. To support IE11 or other browsers without ES6 support baked in, you'll need to transpile your code so its syntax is backwards compatible.
Transpilation tools like babel combined with dependency packagers like webpack/rollup are usually used to do this.
We're still working on the best reference app/setup for our components, but in the meantime check out the great polymer-cli tool and Polymer starter kit for examples of project setups that can include transpilation in the build process.


Webhook

Let's go for it ;)
Inspired by https://tree.taiga.io/support/integrations/webhooks/

sometime the world is REALLY REALLY little, I search webhook and I found Zapier :P https://github.com/zapier/django-rest-hooks
let's give it a try

the project does not provide the grabed data to others. So that "pattern" does not match.