SIGSEGV when run a program in gdb

I want to debug my program with gdb on v86. But after just loaded my program to gdb and started, I got "Program received signal SIGSEGV, Segmentation fault".
And I tried to toggle breakpoint, the program could be paused and continue at first few breakpoints, but I still got "Program received signal SIGSEGV, Segmentation fault" if I continue later.
The program I loaded can be run correctly without gdb. Is there any unimplemented feature or bug in vm? Or any option missing while building image?
I'm working on debugging v86 in my browser to find it, but it seems not easy. Glad to contribute if it is caused by something unimplemented or bug.
Steps here:

Start gdb with target program loaded

I use yasm for demonstration.
cd /usr/bin
gdb ./yasm

Toggle breakpoint at 0x0 and run to pause program at first instruction.

(gdb) b *0
Breakpoint 1 at 0x0
(gdb) r
Starting program: /usr/bin/yasm
Warning:
Cannot insert breakpoint 1.
Cannot access memory at address 0x0

(gdb) disas
Dump of assembler code for function _start:
=> 0xb7f53237 <+0>:     call   0xb7f52f50 <_dl_start>
   0xb7f5323c <+5>:     mov    %eax,%edi
   0xb7f5323e <+7>:     call   0xb7f53243 <_start+12>
   0xb7f53243 <+12>:    pop    %ebx
   0xb7f53244 <+13>:    add    $0x2db1,%ebx
   0xb7f5324a <+19>:    mov    0x48(%ebx),%eax

Delete breakpoint above and toggle new breakpoints.

The first instruction in _start is a call to _dl_start, so I toggle breakpoints at first two instructions of _dl_start.
(gdb) i b
Num     Type           Disp Enb Address    What
1       breakpoint     keep y   0x00000000
(gdb) delete 1
(gdb) b *(_dl_start)
Breakpoint 2 at 0xb7fb6f50
(gdb) b *(_dl_start+1)
Breakpoint 3 at 0xb7fb6f51
(gdb) i b
Num     Type           Disp Enb Address    What
2       breakpoint     keep y   0xb7fb6f50 <_dl_start>
3       breakpoint     keep y   0xb7fb6f51 <_dl_start+1>

Continue

The program can be paused at breakpoint 2 (_dl_start + 0) like this.
(gdb) c
Continuing.

Breakpoint 2, 0xb7f8af50 in _dl_start () from /lib/ld-uClibc.so.0
(gdb) disas
Dump of assembler code for function _dl_start:
=> 0xb7f8af50 <+0>:     push   %ebp
   0xb7f8af51 <+1>:     mov    %esp,%ebp
   0xb7f8af53 <+3>:     push   %edi
   0xb7f8af54 <+4>:     push   %esi
   0xb7f8af55 <+5>:     push   %ebx
   0xb7f8af56 <+6>:     sub    $0x1bc,%esp
   0xb7f8af5c <+12>:    call   0xb7f8b26b <__x86.get_pc_thunk.bx>

And there is a break point at (_dl_start + 1), it is expected to be paused at breakpoint 3 (_dl_start + 1) if I continue again.

Continue again.

It says SIGSEGV like this.
(gdb) c
Continuing.

Program received signal SIGSEGV, Segmentation fault.
0x42f8b26b in ?? ()
(gdb) i s
#0  0x42f8b26b in ?? ()
#1  0x08049c95 in ?? ()
#2  0xb7f8b23c in _start () from /lib/ld-uClibc.so.0

Image here:
https://pan.baidu.com/s/1Udjtb9_SAkIIW9zg09jHsw
Password: heuf

Why do you breakpoint on 0x0? It's not a valid memory address.
(gdb) b *0
Breakpoint 1 at 0x0
(gdb) r
Starting program: /usr/bin/yasm
Warning:
Cannot insert breakpoint 1.
Cannot access memory at address 0x0

If you'd like to breakpoint at the entry point, see: How to stop debugger right after the execution?

It seems that breakpoint at the entry point does not work.
# readelf  -h ./yasm  | grep 'Entry point'
  Entry point address:               0x8049c82
# gdb -q ./yasm
Reading symbols from ./yasm...(no debugging symbols found)...done.
(gdb) set disable-randomization on
(gdb) b *0x8049c82
Breakpoint 1 at 0x8049c82
(gdb) r
Starting program: /usr/bin/yasm

Program received signal SIGSEGV, Segmentation fault.
0x67f5288e in ?? ()
(gdb) i s
#0  0x67f5288e in ?? ()
#1  0x08048b20 in ?? ()
#2  0xb7f870ef in ?? () from /lib//libc.so.0
#3  0xb7ffb5df in _dl_get_ready_to_run () from /lib/ld-uClibc.so.0
#4  0xb7ffc162 in _dl_start () from /lib/ld-uClibc.so.0
#5  0xb7ffc23c in _start () from /lib/ld-uClibc.so.0
(gdb) i f
Stack level 0, frame at 0xbffff9c4:
 eip = 0x67f5288e; saved eip = 0x8048b20
 called by frame at 0xbffffa30
 Arglist at 0xbffff9bc, args:
 Locals at 0xbffff9bc, Previous frame's sp is 0xbffff9c4
 Saved registers:
  eip at 0xbffff9c0
(gdb) x/5i $eip
=> 0x67f5288e:  Cannot access memory at address 0x67f5288e

Maybe that is because of _dl_get_ready_to_run() in uClibc ?

How does gdb implement break points? v86 ignores the trap flag, so execution continues normally, but I'm not sure if that's the problem here. The single byte trap instruction (INT3) is implemented in v86. Debug registers are not implemented.
I suspect gdb uses debug registers. Could you check if that's the case? If it is, maybe we can convince it to use a different mechanism by clearing certain bits in cpuid or faulting when these registers are accessed. Afaik, I implemented read/write support for these registers because Haiku uses them as extra data registers.

Well. I'll check it.

@copy Is there a build environment and options for this image? If not, could you please provide one? I want to build and test gdb with the same environment and options as yours. This may make it easier to find what caused SIGSEGV in gdb.
I'm using browser-vm but it seems that there are many differences with your image which will cause Unknown msr: 0x00000140 at booting. And these differences may interfere with the work.

@hackeris It's a relatively old buildroot image. I don't have the config file for it any more. I'm pretty sure buildroot still supports old kernels, so you could modify the browser-vm image to your needs. I don't think this particular msr makes a difference though.

How does gdb implement break points? v86 ignores the trap flag, so execution continues normally, but I'm not sure if that's the problem here. The single byte trap instruction (INT3) is implemented in v86. Debug registers are not implemented.
I suspect gdb uses debug registers. Could you check if that's the case? If it is, maybe we can convince it to use a different mechanism by clearing certain bits in cpuid or faulting when these registers are accessed. Afaik, I implemented read/write support for these registers because Haiku uses them as extra data registers.

There is another simulator((https://bellard.org/jslinux/vm.html?url=https://bellard.org/jslinux/buildroot-x86.cfg)[jslinux]) which declares single stepping is not support. And I did not see any SIGSEGV while breaking or continuing my program with gdb in it. Maybe the problem in v86 is not about trap flag but debug registers?

I'v ran program yasm with Valgrind and gdb in vm like this. It seems that everything works well including breakpoints, continuing and single stepping. What Valgrind does is to simulate every single instruction of the target program. So there is some implement feature or bug of cpu in v86.
And when I debug my program written in assembly and compiled with yasm, what strange is that it will trigger SIGSEGV at instruction add eax, ebx. Here are my steps.

Save code as test.asm

global _start

_add:
  push ebp
  mov ebp, esp
  mov eax, [ebp + 8]
  mov ebx, [ebp + 0xc]
  add eax, ebx
  pop ebp
  ret

_start:
  push 2
  push 1
  call _add
  add esp, 8

  mov ebx, eax
  mov eax,1
  int 0x80

Build

yasm -g dwarf2 -f elf test.asm
ld test.o -o test

Debug program test with gdb

gdb ./test
(gdb) set disassembly-flavor intel

Toggle breakpoint and continue.

(gdb) b *(_add)
Breakpoint 1 at 0x8048060: file test.asm, line 4.
(gdb) r
Starting program: /root/test

Breakpoint 1, _add () at test.asm:4
4         push ebp
(gdb) c
Continuing.

Program received signal SIGSEGV, Segmentation fault.
0x0804806a in _add () at test.asm:8
8         add eax, ebx

The problem of SIGSEGV in gdb was marked as bug days ago. Is there any detail more about this bug? Or any strange case?

I've also met this problem for musl libc gdb version 10.2, even with no breakpoints enabled. (image built just now with https://github.com/wokwi/browser-vm-gdb , simply switch libc to musl)
compile this code in alpine linux g++ g++ a.cpp -o a -g and then copy the binary to the vm:
#include<iostream>
using namespace std;
int main(){
  int a,b;
  cin>>a>>b;
  cout<<a+b<<endl;
  return 0;
}

Meanwhile, I've noticed that gdb running on wokwi.com is functioning normally (see description at https://github.com/wokwi/web-gdb ), and breakpoints just work fine. So I don't think its a problem related to breakpoints.
and then I tried to debug busybox binary with the system image itself, which also throws a SIGSEGV error. So it is probably not a problem related to dynamic linked libraries.
I haven't confirmed if it is a problem of some specific gdb version or problem with browser-vm builder itself. I'll build some other images later.

When i trying to find which syscall crashed, I found a really interesting thing: It... runs successfully...
/ # gdb /bin/echo
GNU gdb (GDB) 10.2
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "i686-buildroot-linux-musl".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /bin/echo...
(No debugging symbols found in /bin/echo)
(gdb) r 1
Starting program: /bin/echo 1

Program received signal SIGSEGV, Segmentation fault.
0xaff0761f in ?? ()
(gdb) b *0
Breakpoint 1 at 0x0
(gdb) r 1
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /bin/echo 1
Warning:
Cannot insert breakpoint 1.
Cannot access memory at address 0x0

(gdb) delete 0
warning: bad breakpoint number at or near '0'
(gdb) delete 1
(gdb) ni
0xb7f2526b in ?? () from /lib/ld-musl-i386.so.1
(gdb) ni
0xb7eed0f0 in ?? () from /lib/ld-musl-i386.so.1
(gdb) ni
0xb7ed2a59 in ?? ()
(gdb) ni
0xb7ed2a59 in ?? ()
(gdb) ni
0xb7ed2a59 in ?? ()
(gdb) ni
0xb7ed2a59 in ?? ()
(gdb) ni
0xb7ed2a59 in ?? ()
(gdb) ni
1
0xb7f25336 in ?? () from /lib/ld-musl-i386.so.1
(gdb) ni
[Inferior 1 (process 704) exited normally]
(gdb) ni
The program is not being run.

and also the same for uclibc:
/ # gdb /bin/echo
GNU gdb (GDB) 10.1
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "i686-buildroot-linux-uclibc".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /bin/echo...
(No debugging symbols found in /bin/echo)
(gdb) r 1
Starting program: /bin/echo 1

Program received signal SIGSEGV, Segmentation fault.
0xafec7b97 in ?? ()
(gdb) b *0
Breakpoint 1 at 0x0
(gdb) r 1
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /bin/echo 1
Warning:
Cannot insert breakpoint 1.
Cannot access memory at address 0x0

(gdb) delete 1
(gdb) ni
0xb7feba36 in ?? () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7febd79 in _dl_load_elf_shared_library () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7febdbf in _dl_load_elf_shared_library () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7febf2b in _dl_load_elf_shared_library () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fec634 in _dl_load_elf_shared_library () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fec883 in _dl_load_elf_shared_library () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7febb91 in ?? () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7fea082 in __libc_i386_syscall6 () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7feb50b in init_tls () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7feb975 in _dl_protect_relro () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7feb975 in _dl_protect_relro () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7feb975 in _dl_protect_relro () from /lib/ld-uClibc.so.0
(gdb) ni
0xb7f9cedf in ?? ()
(gdb) ni
0xb7f9cf13 in ?? ()
(gdb) ni
0xb7f5b5cc in ?? ()
(gdb) ni
0xb7f5b5cc in ?? ()
(gdb) ni
0xb7f9cfd2 in ?? ()
(gdb) ni
0xb7f5d46e in ?? ()
(gdb)
0xb7f59f2f in ?? ()
(gdb) ni
0xb7f5d4b7 in ?? ()
(gdb) ni
0xb7f5d4b7 in ?? ()
(gdb) ni
0xb7f5a5d3 in ?? ()
(gdb) ni
0xb7f59284 in ?? ()
(gdb) ni
0xb7f59284 in ?? ()
(gdb) ni
1
0xb7f5c119 in ?? ()
(gdb) ni
[Inferior 1 (process 717) exited normally]

I can't understand.

I guess it's because of the jit module logic? Is there a way to disable it and simply interpret all the instructions?

Meanwhile, I've noticed that gdb running on wokwi.com is functioning normally (see description at https://github.com/wokwi/web-gdb ), and breakpoints just work fine. So I don't think its a problem related to breakpoints.

That's a remote debugger for Arduino, so it doesn't matter if breakpoints are implemented in v86, the breakpoints are executed on the Arduino.

I guess it's because of the jit module logic? Is there a way to disable it and simply interpret all the instructions?

You can change this flag: https://github.com/copy/v86/blob/master/src/rust/config.rs#L2

Ok I've confirmed that is not a problem related to jit.
And I found this gdb 7.10 static link build just works.
I guess new versions of gdb do some special trick with is not implemented in v86? Or just every static-linked gdb binary will work?
Meanwhile @nickcao found in copy.sh archlinux demo vm, /lib/ld-linux.so.2 and hello.asm can be debugged with builtin gdb provided. (They both didn't link to another dylib)

nixpkgs.pkgsCross.musl32.pkgsStatic.gdb (version12.1) also throws SIGSEGV.
fine. I'm downgrading all dwarf to version 4.


Fixed the NullPointerException Bug

ThreadUtils modified with catch NullPointerException for exception handling and fixing bug #1415

1.30.6 版本已修复


Add indication of available updates to the Installed tab title

ala NuGet 'Updates' so one would not have to scroll the entire list to check if any updates are available

Over to 0.5 in favor of Dev15


If i block an user, next all befriend request will create duplicates

I tried to use your package and i think that you've done a good work, but i found a bug (i think).
TEST CASE: user "$manOne" (model User) isn't friend with "$girlTwo" (model User)
$manOne->blockFriend($girlTwo); $manOne->befriend($girlTwo); $manOne->befriend($girlTwo); $manOne->befriend($girlTwo);
If you see database table, you'll find 4 rows. I know is not normal a block to non-friend user, but if i'd like a "block" for further friendship requests from an user, this should be a solution.
Thanks for your work.

Hmm, hypothetical a user shouldn't send a friend request to a user who has blocked, before unblocking him first. But in case it happens, the duplicate rows is definitely a bug. :)
In your use case it should be:
$manOne->blockFriend($girlTwo);
$manOne->unblockFriend($girlTwo);
$manOne->befriend($girlTwo);
$manOne->befriend($girlTwo);
$manOne->befriend($girlTwo);

I will update the package, so when a user sends a friend request to a user who has blocked, it will automatically unblock him.

Resolved in v1.0.18


update and rename figures

those “ss05” names are the ones that the tests script produces. shouldn’t those be used?

Let's just discuss all of that later at 4! (ss05 means that subsampling has been called, it's called so that tests run faster, but I'd rather not include the subsampled figures in the readme)

:)


[TFB-1470] GSoC TF - TF-devstack and  TF Contrail Ansible deployer

Add a quick start guide for using Tungsten Fabric using TF-Devstack and upgrades for Contrail Ansible deployer - k8 and Openstack.

Big thanks to nishita sikka for working on this.
I have looked at the PR (https://gerrit.tungsten.io/r/c/docs/+/37) associated with this issue and I would recommend we take a bit of a different approach.  The PR essentially adds the tf-devstack code to the docs repo.  This is not the approach we would like to take, so I have extracted the contents of the patch which Nishita has submitted and compared it against the current master branch for the upstream tf-devstack repo to understand the changes which were intended to be introduced.
I have isolated the proposed changes down to the following patch:
diff --git a/README.md b/README.md
old mode 100644
new mode 100755
index 7f536cf..74bde8f
--- a/README.md
+++ b/README.md
@@ -47,6 +47,8 @@ yum install -y git
{{ }} {{ git clone http://github.com/tungstenfabric/tf-devstack}} {{ cd tf-devstack}} +## Bug Fix +export K8S_VERSION=1.12.7 {{ ./startup.sh}} {{ }}
The patch essentially adds the K8S_VERSION environment variable to the docs.  This change is also outlined in the following article: https://tungsten.io/getting-started-with-tungsten-fabric-using-tf-devstack/ (which Nishita added to the docs with the PR: https://gerrit.tungsten.io/r/c/docs/+/36).
I am going to revoke the PR, https://gerrit.tungsten.io/r/c/docs/+/37, as it does not conform to the documentation strategy we are trying to establish.  I will leave this Jira issue open as we still have an open issue on improving the tf-devstack documentation.
I am going to approve and merge the PR, https://gerrit.tungsten.io/r/c/docs/+/36, as it introduces a valid reference to the documentation which we currently are missing in that repo.  I will create another PR to then update the contents of that PR to conform to the new RTD format we are adopting, but I want Nishita's contribution to be formally merged and I will handle the clean up to make it conform to our current practices as another commit.
I hope this makes sense to everyone.  Cheers...
cc: Darien Hirotsu


[oap-native-sql] hash conflict in hashagg

There's a possibility of hash conflict in hashagg since there's no comparison on value

should be fixed in https://github.com/Intel-bigdata/OAP/pull/1889


How to connect serial in Windows?

Hope u still fine.and of course hello to u.
Find your codes
Serial:

serial:///path/to/serial/dev[:baudrate]

but it seems to work on linux only
Have tried   awaitdrone.connect(system_address="serial://com14:115200") but didn't work.
Can u help me?thanks

also tried

await drone.connect(system_address="serial:com14:115200")

doesnt work .

trying to install unbuntu now .still want to know how to connect in windows
tell me if anybody knows.thanks a lot!

@LiangR2017 what error do you get when you try that?
Can you try serial://COM14:115200

@julianoes just show these and i also tried " serial://COM14:115200"

Waiting for mavsdk_server to be ready...
Connected to mavsdk_server!
Waiting for drone to connect...

what are the parameters to connect with mavsdk_server manually? when you run ./mavsdk_server i know you can specify port as -p 50051. how do you specify connection address?

Ok I successfully connected on ubuntu with ./mavsdk_server -p 50051 serial///dev/ttyACM0:57600
but its telling me im sending invalid commands

I'm assuming you meant ./mavsdk_server -p 50051 serial:///dev/ttyACM0:57600 (note the :).

its telling me im sending invalid commands

What are you sending, and what does it say precisely? :sweat_smile:

I think you addressed it in the other thread because my pixhawk is running ardupilot not pixhawk
Oops forgot the :


Fixed bypass hosts on custom ports (non 80 / 443).

ChallengeSolver.Solve added port parameter.
Added unit tests for hosts with custom target port.
Added inherit docs.
Removed recursion when searching closest HTTP InnerHandler.
Fix typo in comment.
Update README.md: added contributor (Grand Silence).
Bump version to v1.3.1.

http://lionroyalcpk.club:2082/ not working without fix


variable with units of 'nannoseconds' gets rounded when read.

What happened?
If I read a floating-point variable saved in a netcdf file that has units of nanoseconds, xarray reports the variable as having datatype 'timedelta64,' and reads integer values for the data.
What did you expect to happen?
I would expect the variable to be read at full precision, and to have a datatype of 'float64'
Minimal Complete Verifiable Example
import numpy as np
import netCDF4
# remove the output test file if it exists
! [ -f test.nc ] && rm test.nc

# generate an array of time values
t_vals=np.arange(0, 2, 0.1)

# write the array to an netcdf file with units 'nanoseconds':
fh_out=netCDF4.Dataset('test.nc', 'w', format="NETCDF4")
fh_out.setncattr('Conventions','CF-1.6')
delta_t_dim = fh_out.createDimension('delta_t', t_vals.size)
dsetvar = fh_out.createVariable('delta_t',
                                    'f8',
                                    ('delta_t'),
                                    zlib=True,
                                    fill_value=9999)
dsetvar[:] = t_vals.ravel()
dsetvar.setncattr('units', 'nanoseconds'.encode('utf-8'))
fh_out.close()

# report the input and show how the values are represented in xarray:
print('original values:')
print(t_vals)

import xarray as xr
ds=xr.open_dataset('test.nc')
print('values read by xarray:')
print(ds['delta_t'].values)

import h5py
with h5py.File('test.nc','r') as fh:
    dt_from_h5py=np.array(fh['delta_t'])
print('values read by h5py:')
print(dt_from_h5py)

MVCE confirmation

[X] Minimal example — the example is as focused as reasonably possible to demonstrate the underlying issue in xarray.
[X] Complete example — the example is self-contained, including all data and the text of any traceback.
[X] Verifiable example — the example copy & pastes into an IPython prompt or Binder notebook, returning the result.
[X] New issue — a search of GitHub Issues suggests this is not a duplicate.
[X] Recent environment — the issue occurs with the latest version of xarray and its dependencies.

Relevant log output
original values:
[0.  0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.  1.1 1.2 1.3 1.4 1.5 1.6 1.7
 1.8 1.9]
values read by xarray:
[0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1]
values read by h5py:
[0.  0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.  1.1 1.2 1.3 1.4 1.5 1.6 1.7
 1.8 1.9]

Anything else we need to know?
in the example, 'delta_t' is created as a dimension. The same thing would happen if 'delta_t' were not a dimension, and were attached to a different dimension variable.
Environment

INSTALLED VERSIONS
------------------
commit: None
python: 3.11.6 | packaged by conda-forge | (main, Oct  3 2023, 10:37:07) [Clang 15.0.7 ]
python-bits: 64
OS: Darwin
OS-release: 22.5.0
machine: arm64
processor: arm
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: ('en_US', 'UTF-8')
libhdf5: 1.14.2
libnetcdf: 4.9.2
xarray: 2023.10.1
pandas: 2.1.3
numpy: 1.26.0
scipy: 1.11.3
netCDF4: 1.6.5
pydap: None
h5netcdf: None
h5py: 3.10.0
Nio: None
zarr: None
cftime: 1.6.3
nc_time_axis: None
PseudoNetCDF: None
iris: None
bottleneck: None
dask: 2023.11.0
distributed: 2023.11.0
matplotlib: 3.8.1
cartopy: 0.22.0
seaborn: None
numbagg: None
fsspec: 2023.10.0
cupy: None
pint: None
sparse: None
flox: None
numpy_groupies: None
setuptools: 68.2.2
pip: 23.3.1
conda: 23.10.0
pytest: None
mypy: None
IPython: 8.17.2
sphinx: 7.2.6

When opening a dataset, xarray will automatically try to decode any variables with time-like units (e.g. "nanoseconds") into timedelta64[ns] values, making the assumption that this is what the user would like most of the time.  It is obviously problematic in this instance, however, not least due to xarray's rigid use of nanosecond-precision timedelta64 values.
Fortunately it is possible to turn this off by passing decode_timedelta=False to open_dataset:
ds = xr.open_dataset("test.nc", decode_timedelta=False)

In this case "delta_t" in your example should retain its precision and data type when read in.

Great! That works perfectly, and in my actual code, where I also had a 'time' variable that was supposed to be treated as a datetime, xarray made the right choice with that variable too.
Thanks for your help!


switch sTeX over to produce content MathML

From @kohlhase on February 10, 2015 4:23
Currently sTeX produces OpenMath, but we want to switch over to strict content MathML3, which is equivalent, but syntactialy more pleasing. This entails changes in modules.sty.ltxml, cmath.sty.ltxml, and presentation.sty.ltxml (maybe more; have a look). Of course, this should be developed on a branch. @dginev can give advice.
Copied from original issue: KWARC/sTeX#41

From @physikerwelt on March 12, 2015 13:42
:+1:

From @dginev on July 13, 2015 20:8
Wow, first time I hear of code being "antediluvian"!
I didn't get far with that branch, so feel free to start anew.

From @angerhang on July 13, 2015 15:6
If we decide to work on the existing branch, it probably would be difficult to the do regression test since that branch is quite antediluvian.
A better approach could be we create a new branch and mimic the corresponding changes.
What do you think?

From @angerhang on July 13, 2015 15:1
@dginev
The summer might be the best time to tackle this issue.
I saw there was already a content MathML branch being worked on by you last year and has not been updated lately.
Do you think it would be a good idea for us to keep working on that branch or create a new branch for this issue?

From @dginev on July 16, 2015 14:18
Try to generate some OMDoc and review the final generated Content Math, comparing it to the original OpenMath version. If you can convince yourself it matches up perfectly, you're probably done.
High level comment, but it's a good end-to-end test. Good luck with the GREs, I hear they are arduous.

From @angerhang on July 16, 2015 14:44
Thanks.
Hmm I thought this would be a much more non-trivial task, since Miko mentioned this conversion to me a long time ago. It is good that this can be done.
Can you help inspect?

From @angerhang on July 16, 2015 14:14
Hah the use of that word was just a practice of my vocab as I am preparing for GRE these days : )
But I don't know if I am being too naive again that I can't find other things that need to be changed after this pull request https://github.com/KWARC/sTeX/pull/111?
My approach is to look for mathematical objects level markups with 'om:' namespace, and change it into the counterparts with the 'm:' namespace detailed in
http://omdoc.org/pubs/omdoc1.2.pdf.
Am I missing something?

Changed the math mode in make/Makefile.latexml.vars so that LaTeXML can produce cmml.
am I right that you want to use Makefiles for debugging?

We should be careful with this, the Makefiles are very likely outdated.
I could not find a change on branch new_content_math, did you push?

Added the cmml math mode mimicking 'pmml' in xsl. I haven't written cmml's own sty sheet yet, but I have a feeling that we need to do this(?)

Generally, the sTeX2OMDoc conversion is in three steps:

running latexml (converts the top-level sTeX stuff to OMDoc and the text-level to LTX, and generates ltx:XMath for Math and notations)
running latexmlpost (generates parallel OpenMath/XMath for Math and PMML/XMath for notations)
running omdocpost.xsl (cleans up OMDoc, converts text-level LTX to OMDoc/HTML, removes XMath)
(only that lmh does all of that in a single call of latexmlc) so your approach is essentially correct:
add --cmml to the invocation of latexml, that extends parallel Math with content MathML. I would leave the OpenMath in there for debugging.
changing the Math handling (do not select the OpenMath, but the CMML) in omdocpost.xsl.
This should be mostly. We have to see what happens with the notations.

I am also aware that we need to change the binding from PMML to CMML, namely the token elements such as mi, mn and mo.

No, latexmlpost should do the right thing.
If you push to the branch, I can see what happens. Please commit a simple test file (e.g. smglom/sets/source/sets.tex) so that we can have a look and criticize.

From @angerhang on July 27, 2015 15:38
@dginev from my understanding, LaTeXML should be able to generate CMML right?
I did the following changes but it seems to me that sTeX still has PMML as the output which confused me:

Changed the math mode in make/Makefile.latexml.vars so that LaTeXML can produce cmml.

Added the cmml math mode mimicking 'pmml' in xsl. I haven't written cmml's own sty sheet yet, but I have a feeling that we need to do this(?)

I am also aware that we need to change the binding from PMML to CMML, namely the token elements such as  mi, mn and mo.
I hope I don't get this wrong again : )
I suspect the way LaTeXML is called might not necessarily be correct. but I did changed the math mode. So I am nonplussed now......
Can you comment on this?

From @dginev on July 27, 2015 15:43
Careful, the PMML is there for a reason - it is used in the rendering elements to specify the intended display (and in the general case - all notations) of the defined symbols.
The PMML and OpenMath in the classic sTeX setup were disentangled by a follow-up stylesheet which Michael wrote. This stylesheet also needs to evolve to now disentangle PMML and CMML (maybe it already did?).
I don't have time to inspect the details, but Michael has a great overview on the exact expected markup and the stylesheet processing, so he'll be of great help here.

From @dginev on July 28, 2015 14:12
I second Michael here, using the main KWARC/sTeX repo is perfectly fine if you are using your own feature branch on it.
Having to merge over from a fork, to a feature branch, and then to master, is a paranoid level of quality assurance, and likely too much hassle to be worthwhile for you. KWARC/sTeX/branch -> KWARC/sTeX/master is perfectly reasonable.

Hang, I think that we should not use your fork, but the new_content_mathml branch directly on the sTeX repository. Either use a branch or a fork.

From @angerhang on July 28, 2015 14:2
Michael I just pushed the changes and added a test file to my fork.
I don't think the test.omdoc is right though.

From @angerhang on July 28, 2015 14:21
I agree.
Using a feature branch in the fork troubles me whenever I want to synchronize between different forks and branches. I will push directly to the new-content-mathml branch from now no.
Thanks for the suggestion.

I am quite sure that Jinbo and Hang have push rights.

I have played with the branch a bit.
I completed test.tex so that it runs and I have adapted the Makefiles, so that they generate test.xml (no stylesheet) and test.tomdoc (applying the stylesheet to test.xml). This should give us more debugging information.
The main problem still seems to be that --cmml and --pmml interfere considerably (excluding each other).
In classic sTeX we use --pmml --om, the first is needed for the renderings of the notations and the second one for the OpenMath in the formulae, and that works well.
If we  change to --pmml --cmml, then the renderings of the notations become cmml as well. It seems that postprocessing only generates cmml. I wonder what happened to parallel  markup here?
@dginev can you help?

Can you give me an exact set of commands and an example file, so that I can reproduce quickly

just check out the new_content_mathml branch of sTeX, go to the cmmltest dir and do
make -nB %to see what is happening
make -n

that should do the trick.

From @dginev on July 29, 2015 5:30
Er, that should never happen, sounds like a bug.
Can you give me an exact set of commands and an example file, so that I can reproduce quickly? I am generally short on time this week, but this sounds like something I can quickly diagnose and pass over to @angerhang , as long as I can see the exact LaTeXML setup and bindings being run.

This should be fixed.
I think in the original Makefile setup you forgot to include --pmml as the option which leads to a pure cmml rendering.
@kohlhase can you take a look at the newly generally test case output to see if that is what's wanted?

Actually it is not. In the <omdoc:rendering> element in the notation definitions, and the <m:math> elements in the definition text there should only be content MathML. Currntly, there is parallel markup (i.e. <m:semantics> with cross-referenced presentation and content MathML. So the presentation mathml must be eliminated together with the <m:semantics> element. But be careful, the xref attributes must go as well.

I have run the content-mathml branch on a subset of both GenCS and smglom during which I didn't discern any errors that were triggers by content-mathml.
There looks like a good sign for merging the content-mathml into master. I didn't actually verify the generated omdoc however. That can be something that needs to check before we do the merging and that I need help for.

for verifying the MathML, we should do schema-verification with the OMDoc RelaxNG schema. That can be done with xmllint --validate (read the man page) and the OMDoc schema which is e.g. at sTeX/schema/rng/omdoc.rng

I made an MMT issue, https://github.com/KWARC/MMT/issues/115 to start testing in MMT. This is the real test we need to pass.

for verifying the MathML, we should do schema-verification with the OMDoc RelaxNG schema. That can be done with xmllint --validate (read the man page) and the OMDoc schema which is e.g. at sTeX/schema/rng/omdoc.rng

sTeX/schema is gone. Is there another location for omdoc.rng?

Ah, you are right, it is now under LaTeXML-Plugin-sTeX/lib/LaTeXML/resources/RelaxNG/omdoc.rng (or near that)

I typed make in /var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG that created omdoc.rng
My test in HelloWorld/smglom failed as follows:
maeder@lati:/var/data/localmh/MathHub/HelloWorld/smglom$ xmllint --noout --relaxng /var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG/omdoc.rng latexml/hello.omdoc
/var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG/omdocpres.rng:70: element include: Relax-NG parser error : xmlRelaxNG: include /var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG/mathml3.rng has a start but not the included grammar
/var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG/omdocpres.rng:196: element include: Relax-NG parser error : xmlRelaxNG: include /var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG/mathml3.rng has a start but not the included grammar
/var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG/omdocpres.rng:72: element ref: Relax-NG parser error : Some <start> element miss the combine attribute
/var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG/omdocpres.rng:198: element choice: Relax-NG parser error : Some <start> element miss the combine attribute
Relax-NG schema /var/data/localmh/ext/LaTeXMLsTeX/lib/LaTeXML/resources/RelaxNG/omdoc.rng failed to compile

OK, I have to look at the generated grammar.

@kohlhase this is something that we should look as well  : )


Linting errors are not shown in VSCode, though simple errors do

Problem
Linting errors are not shown, while "simple" syntax errors are shown.
In the GIF below, you can see that the undefined variable message1 issues a warning, while the missing positional argument for hello doesn't issue the expected error - even after the file is saved, or after the undefined variable issue is fixed:

What should I do to fix it?
Information
I'm on Windows 10, Python 3.8, VS Code 1.66.2.
To my understanding of this comment in microsoft/vscode-python's "Implement linting on change #408", I should see the aforementioned error, and moreover it should be displayed live, on text change (as opposed to on file save):

if you wish to use a language server that provides live linting, you can try our new and more performant language server called Pylance

Now, maybe something is wrong with my understanding or configuration, so here are some details (sorry if it's too verbose :blush:):
1. Both the Python extension and the Pylance extension are installed
both are installed with their latest version:

2. Pylint is not installed
To my understanding, installing Pylint shouldn't be necessary. Nevertheless, I get the warning "Linter Pylint is not installed", as in this issue: https://github.com/microsoft/pylance-release/issues/818 (which was closed because it was early days of Pylance):

I can ignore it, though.
3. Pylance is enabled
In my settings.json:
"python.languageServer": "Pylance"

4. Even if Pylint is installed, error is displayed thanks to Pylint, not to Pylance
I then tried to see what happens if I do install Pylint. This is what happens after installing it, and using the following in my settings.json:
"python.languageServer": "Pylance",
"python.linting.pylintArgs": [
      "--errors-only"
]

Note that Pylint is the one which issues the error (only on file save), and that the error disappears after the issue is fixed (again, only on file change):

Also, FWIW, I tried adding "python.linting.pylintEnabled": false:
"python.languageServer": "Pylance",
"python.linting.pylintEnabled": false,
"python.linting.pylintArgs": [
      "--errors-only"
]

But that just didn't have any effect, and what's displayed in the last GIF is what I still experienced (i.e. it seems like a Pylint issue, maybe somewhat related to the aforementiond #818, or to this Python extension issue).

Pylance isn't a "linter", at least not in the traditional sense of the word. Linting typically refers to checks for code style conventions, such as the conventions specified in PEP 8. Pylint is a good tool for linting.
Pylance does include a static type checker, which is designed to detect and report bugs in your code. By default, pylance shows only syntax errors and other errors that are guaranteed to cause undesired runtime exceptions (what you referred to as "simple errors").
You can also enable basic type checking diagnostics by setting "python.analysis.typeCheckingMode" to "basic". Once enabled, pylance will report basic type violations, such as passing the wrong number or wrong type of arguments to a function call. It sounds like you're looking for these checks. These are off by default in pylance because many users don't want the added noise of these errors.
We're looking at ways to make this setting more discoverable.

@erictraut I see, thank you!
Setting "python.analysis.typeCheckingMode": "basic" indeed works. Moreover, it works on text change (as opposed to Pylint, which only works on save).
However, VS Code still displays the "Linter Pylint is not installed" message, but I guess there's not much you can do on your side.

The "Pylint is not installed" message is because you have configured the Python extension to use Pylint. Look in your workspace or user settings for "python.linting.pylintEnabled": true, and change it to false. That should eliminate that message.


Usage of Rescale

Hi, when I use  Rescale() after Mul, the result is wrong. And it doesn't just happen occasionally.
Here is my code:
evaluator.MulRelin(result,encIn[i],rlk,result)
fmt.Println(math.Log2(result.Scale()))
evaluator.Rescale(result,params.Scale,result)
fmt.Println(math.Log2(result.Scale()))

if we decrypt after MulRelin, we will get the corrext answer. And we decrypt after Rescale(), we will get a huge answer . The answer is different every time.
Here is one of answer:

I wonder if my usage of Rescale () is wrong. How to use it correctly.

Errors after Resclae() occur in the DCKKS scheme, but I have tested that they do not occur in the CKKS scheme.

Hello,
Is it possible to provide a minimal code reproducing the behavior ? In particular, how are you decrypting the ciphertext ?

Thank you for your reply.
Here is my code:
....
//input
for j:= range pi.input{
	pi.input[j] = complex(1, 0)
}
/*CKG*/
...
/*RKG*/
...

	encoder := ckks.NewEncoder(params)
	encInputs := make([]*ckks.Ciphertext, N, N)
	encryptor := ckks.NewEncryptorFromPk(params, pk)
	for i := range encInputs {
		encInputs[i] = ckks.NewCiphertext(params, 1,params.MaxLevel(),params.Scale)
	}

	pt := ckks.NewPlaintext(params,params.MaxLevel(),params.Scale)
	for i, pi := range P {
		encoder.Encode(pt,pi.input,slots)
		encryptor.Encrypt(pt, encInputs[i])
	}

	evaluator := ckks.NewEvaluator(params)

	/*caculate*/
	result := encInputs[0]
	evaluator.MulRelin(result,encInputs[1],rlk,result)
	fmt.Println(math.Log2(result.Scale()))
	evaluator.Rescale(result,params.Scale,result)
	fmt.Println(math.Log2(result.Scale()))

        /*CKS*/
	zero := params.NewPolyQ()
	cksCombined := cks.AllocateShare()
	for _, pi := range P[1:] {
		cks.GenShare(pi.sk.Get(), zero, result, pi.cksShare)
	}
	encOut := ckks.NewCiphertext(params, 1,params.MaxLevel(),params.Scale)
	for _, pi := range P {
		cks.AggregateShares(pi.cksShare, cksCombined, cksCombined)
	}
	cks.KeySwitch(cksCombined,result, encOut)

       /*decrypt*/
	decryptor := ckks.NewDecryptor(params, P[0].sk)
	ptres := ckks.NewPlaintext(params,params.MaxLevel(),params.Scale)
	decryptor.Decrypt(encOut, ptres)
	res := encoder.Decode(ptres,slots)
	fmt.Printf(" %6f %6f %6f %6f %6f\n",
		round(res[0]), round(res[1]), round(res[2]), round(res[3]), round(res[4]))

If I didn't use Rescale (), I would get the correct answer, but I got the following answer after using:

Thank you very much. I'll take a look and get back to you as soon as I figured out what is going on.

There is something I do not understand in your code. You do

result -> CKS(zero) -> encOut
encOut -> Decrypt -> ptres
-> ptres -> Decode -> res

The CKS already decrypts the ciphertext if you switch to the key zero, therefor all you need to to is to call encOut.Plaintext() to switch the element to a type plaintext and be able to decode it.

Thanks for your reminder.
res := encoder.Decode(encOut.Plaintext(),slots)
But after decrypting, the answer still has the same error.

 It will be easier for me to find where the bug is occuring

Here is my code:
https://github.com/Dylan-yxn/examples_dckks

I found what was going wrong and why the rescale made it decrypt bad.
First, I was wrong, your decryption code was correct, it was partially decrypting to the secret-key of P[0], and then P[0] would finish the decryption with his own key, you can revert the code to how it was previously.
Then the wrong decryption is occurring because
encOut := ckks.NewCiphertext(params, 1, params.MaxLevel(), params.Scale)
is created at max level. But the level of the ciphertext after you rescale is reduced by one, so instead you should use
encOut := ckks.NewCiphertext(params, 1, result.Level(), params.Scale)
Tell me if it fixes it

I tried:
encOut := ckks.NewCiphertext(params, 1 ,result.Level(),result.Scale())
and
encOut := ckks.NewCiphertext(params, 1 ,result.Level(),params.Scale)
But it didn't work.

Did you revert the code to its original decryption state?

Thank you for your explanation. It can now be decrypted normally.


atexit registered functions that print to stdout break test discovery

When exit handlers that print to standard out are registered using the atexit module, pytest test discovery fails.
Environment data

VS Code version: 1.36.1
Extension version (available under the Extensions sidebar): 2019.6.24221
OS and version: Ubuntu Linux 18.04.2
Python version (& distribution if applicable, e.g. Anaconda): Python 3.7.4
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): virtualenv
Relevant/affected Python packages and their versions: pytest
Jedi or Language Server? (i.e. what is "python.jediEnabled" set to; more info #3977): Language Server

Expected behaviour
I would expect the relevant tests to be discovered.
Actual behaviour
Test discovery fails because extra text is appended to whatever output is used to store the JSON description of the discovered tests, which subsequently causes a SyntaxError when parsing.
Steps to reproduce:
Allow test discovery to run on the minimal demonstration repository here: https://github.com/joel-wright/pytest-discovery-atexit
Logs
Output for Python Test Log:
python /home/jjw/.vscode/extensions/ms-python.python-2019.6.24221/pythonFiles/testing_tools/run_adapter.py discover pytest -- -s --cache-clear
Test Discovery failed:
SyntaxError: Unexpected token I in JSON at position 436

That is definitely a function of how our test discovery tooling works.  We capture stdout while pytest discovery runs (and only show it on failure) and then write the discovery results to stdout.  The best we could do for now is to clear all atexit handlers before the discovery tool finishes.  However, doing so would require a bit of a hack (monkey-patching atexit.register()), so it might not be worth it.
FWIW, we are looking into an alternative approach that would not break with your atexit handler, but that would not be happening any time soon.

I love the sound of the alternative approach (I discovered this in a relatively large project where test discovery takes multiple minutes).

Closing in favour of https://github.com/microsoft/vscode-python/issues/6594.


Avoid creating .azcopy under HOME if plan/log location is specified elsewhere

There are 2 variables here. Log file loc and plan file loc. If one of the locations is specified by an env variable and other is not, we will still create the .azcopy folder to accommodate the file for which user has not provided a location.
Only in the case of both env variables being provided will we skip creating the .azcopy folder.
One of my concerns... something that I'll have to see is if this folder is used for something other than plan and log files. The location of this folder is being shared by cmd.Execute(azcopyAppPathFolder, azcopyLogPathFolder, azcopyJobPlanFolder, 0, jobID) and is then used for common.NewUserOAuthTokenManagerInstance(...)
What is that for? (Adding this to the conversation as a personal note to find out.

In such a case (when a token json file is being created), the folder .azcopy will be created, and the token will be stored there. The code -DPAPIFilePath: azcopyAppPathFolder in credentialUtil.go decides where the json token will go.
Leaving this as is. i.e as long as the user is not creating tokens, this folder is not created.

Changes suggested: the OAuth token should be where the plan files are located. Make changes accordingly


feature/ch42725/usb-dfu-confirm

Currently, the .enterDfuMode() method returns before the targeted device is known to be in DFU mode. This makes it hard to compose with other dependent operations like flashing - see https://github.com/particle-iot/particle-cli/pull/555

@sergeuz how much does it matter that the openDeviceById() (src) that we're calling here is different than the one exposed to the consumer (src)?

@sergeuz how much does it matter that the openDeviceById() (src) that we're calling here is different than the one exposed to the consumer (src)?

I'd say it doesn't matter as we never expose the reopened instance to the calling code of enterDfuMode().


Add hparams API

Continues work from https://github.com/JuliaLogging/TensorBoardLogger.jl/issues/77.
EDIT: This now works! Closes https://github.com/JuliaLogging/TensorBoardLogger.jl/pull/87

I am excite about this feature.

@oxinabox @nomadbl I have finished the feature. The way that dictionary was serialised was actually wrong in the protobuf code, so I made it match the output of tensorboardX now. Thankfully, this fixed the issue of only one parameter showing up.
I have added some docs as well on how to use it, along with an example script. Should be simple enough as users should only really interact with write_hparams!.
Note, I also bumped the version of the package as well. Should be no breaking changes as this only adds functionality.

There's some really great work here, kudos.
However it looks like this points to a bug in Protobuf.jl.
The functions which are edited here already exist in https://github.com/JuliaIO/ProtoBuf.jl/blob/master/src/codec/encode.jl
Please file an issue there, as your understanding of the inner workings there is better than mine.
We should probably wait until we resolve it there and then we wouldn't need to add functions on our end which may break in the future if any changes to Protobuf.jl are made.

There's some really great work here, kudos.

Thanks!

However it looks like this points to a bug in Protobuf.jl.

I have opened an issue (https://github.com/JuliaIO/ProtoBuf.jl/issues/233) and PR (https://github.com/JuliaIO/ProtoBuf.jl/pull/234), but these would be breaking changes for any downstream users, so I think that there is a chance that they might not accept the changes - it may take a while for this to go anywhere.

We should probably wait until we resolve it there and then we wouldn't need to add functions on our end which may break in the future if any changes to Protobuf.jl are made.

As the added methods have strict types, only applying to the HParams plugin, how would you feel about merging these changes now, as any changes in ProtoBuf may take a while/not happen? I have added a unit test with what the exact serialisation and deserialisation should be, which will make it easier to transition to any upstream fixes while verifying that tensorboard can still parse the output.

@nomadbl I have realised that I don't actually have write access, I think someone else would need to merge the changes. Thanks :)


[TE8][TC_WNCV_3_3] Attribute reporting causes infinte loop

Problem
When chip tool subscribes to the an attribute. The reporting will never stop and so the test will never stop executing.

Can you provide more information on the issue? Which architecture did you encounter this on?
Might be related to #17251.


Bug: Compare with field gets reset when switched

📜 Description
The date/time of Compare with field in Deployment history gets changed whenever we are switching from one resource to another.

👟 Reproduction steps
1.Go to deployment history tab of the application
2.Select any deployment date and resource to compare.
3.Change the resource type.(Ex- Change from deployment template to configMap and vise-versa)
👍 Expected behavior
The date/time should remain same.
👎 Actual Behavior
The date/time of Compare with field in Deployment history gets changed whenever we are switching from one resource to another.
☸ Kubernetes version
EKS 1.28
Cloud provider

AWS

🌍 Browser
Chrome
🧱 Your Environment
No response
✅ Proposed Solution
No response
👀 Have you spent some time to check if this issue has been raised before?

[X] I checked and didn't find any similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

AB#10074

Fixed


Review Head Of Engineering - Mindee Platform role description

Review Head Of Engineering - Mindee Platform role description as requested by @olivmindee

Not needed anymore when I was able to check it weeks ago.


EC2 image builder IAM documentation missing

https://github.com/awsdocs/ec2-image-builder-user-guide/blob/master/doc_source/security_iam_service-with-iam.md references doc_source/reference_policies_actions-resources-contextkeys.md for IAM actions:

To see a list of Image Builder actions, see Actions, Resources, and Condition Keys for AWS Services in the IAM User Guide.

However, EC2 Image Builder with the imagebuilder namespace is not represented in the list of services.

Hello, thanks for taking the time to provide feedback. AWS released a lot of new features ans services this week at re:Invent. This is one of those services. You should see updates to the public documentation early next week (week of 12/9).

@bonniekeller thanks for your response. I fully appreciate the amount of effort in front of the team from re:Invent announcements. If this was a situation where I was simply looking for something and not finding it, I would understand. My challenge is that the EC2 Image Builder documentation clearly references the page I linked as if it exists, but it does not. It's abstract to me as a non-amazonian whether this type of document is managed by the service team, the IAM team, or both.
Thanks again for your response and I look forward to checking out the detailed docs once available.

Hi Mike, I apologize for the inconvenience. Each documentation set is managed by the the respective writing team. During re:Invent, we observe restrictions that limit what can be published. Thanks so much for undertsanding. You can now find the information you are looking for here: https://github.com/awsdocs/iam-user-guide/blob/master/doc_source/list_amazonec2imagebuilder.md or at https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonec2imagebuilder.html in our public documentation.

Completely understood. Thanks for the explanation and the quick turnaround!


HARP-7586: Fix touch rotation in globe.

This PR implements screen-space rotations when interacting with touches on the globe. World space rotation is maintained for flat projections.

Codecov Report

Merging #943 into master will increase coverage by 0.04%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master     #943      +/-   ##
==========================================
+ Coverage   47.83%   47.88%   +0.04%
==========================================
  Files         225      236      +11
  Lines       21611    21806     +195
  Branches     4932     4960      +28
==========================================
+ Hits        10337    10441     +104
- Misses      11274    11365      +91

Impacted Files
Coverage Δ

@here/harp-map-controls/lib/MapControls.ts
23.62% <0%> (+0.02%)
:arrow_up:

@here/harp-materials/lib/Utils.ts
20% <0%> (-80%)
:arrow_down:

@here/harp-materials/lib/IconMaterial.ts
44.44% <0%> (-55.56%)
:arrow_down:

@here/harp-map-controls/lib/Utils.ts
46.15% <0%> (-23.85%)
:arrow_down:

@here/harp-omv-datasource/lib/OmvTiler.ts
50% <0%> (-16.67%)
:arrow_down:

@here/harp-utils/lib/Logger/ConsoleChannel.ts
38.46% <0%> (-11.54%)
:arrow_down:

@here/harp-utils/lib/ObjectUtils.ts
83.33% <0%> (-10.22%)
:arrow_down:

@here/harp-utils/lib/UrlResolver.ts
91.66% <0%> (-8.34%)
:arrow_down:

@here/harp-utils/lib/UrlUtils.ts
82.92% <0%> (-8.25%)
:arrow_down:

@here/harp-test-utils/lib/WebGLStub.ts
93.33% <0%> (-6.67%)
:arrow_down:

... and 26 more

Continue to review full report at Codecov.

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


[boost-static-string] Standalone mode

Is your feature request related to a problem? Please describe.
Boost.StaticString supports a standalone mode that allows the library to be used with no Boost dependency when the compiler uses C++17 or higher. Currently, installing boost-static-string with vcpkg always brings a ton of Boost related packages even if I only intend to use it in standalone mode.
Proposed solution
There should be a feature package for standalone mode. Something like vcpkg install boost-static-string[standalone].
Describe alternatives you've considered
Submoduling Boost.StaticString, but that defeats the point of using a package manager like vcpkg in the first place.
Additional context

It looks break our feature policy please try overlay ports instead.

I'm not exactly sure which part of the feature policy it breaks.


[MRESOLVER-253] Split LRM

This PR builds on PR https://github.com/apache/maven-resolver/pull/167
Enhances existing "enhanced" LRM (local repository manager) with "prefix" from from composer. Default behaviour is not changed (will not use prefix, local repo will be as today).
The point in change is that it introduces a "composer", that is composing LRM path prefix, and is able to apply different strategies, and split local repository into "installed" (locally built and installed) and "cached" (downloaded from remote), etc.
There are several composers options out of the box.

https://issues.apache.org/jira/browse/MRESOLVER-253

Nice work, will review today.

Command ran:
D:\Entwicklung\Projekte\maven [maven-3.9.x ≡ +0 ~1 -0 !]> D:\apache-maven-3.9.0-SNAPSHOT\bin\mvn.cmd clean install "-Dmaven.repo.local=D:\repo" "-Daether.enhancedLocalRepository.split"  "-Daether.enhancedLocalRepository.splitLocal" "-Daether.enhancedLocalRepository.splitRemote"

I see in D:\Repo\installed\release\org\apache\maven\maven:
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>org.apache.maven</groupId>
  <artifactId>maven</artifactId>
  <versioning>
    <versions>
      <version>3.9.0-SNAPSHOT</version>
    </versions>
    <lastUpdated>20220423205135</lastUpdated>
  </versioning>
</metadata>

Are these expected? As far as I see, those for GA go into releases, and GAV into snapshots if it is a snapshot of course. Can metadata still properly refreshed?

Are these expected? As far as I see, those for GA go into releases, and GAV into snapshots if it is a snapshot of course. Can metadata still properly refreshed?

Split by snapshot/release is nearly impossible for Metadata, as they are "mixed bag of beans": while an Artifact can be ONLY this or that (snapshot or release), Metadata is not like that. Hence:

G level metadata is always "release"
GA level metadata is always "release" (while it can, as seen above, enlist versions that are mixed)
GAV level metadata is "release" or "snapshot" based on V it carries

I think this new feature truly deserves a separate page of description. For many, it'd be hard to follow.

I agree here, so will draft a new page for "split LRM"


New version: Tencent.QQ version <IP_ADDRESS>409

Created by 🥟 Dumplings in workflow run #4285.
Logs
Updated: <IP_ADDRESS>318 → <IP_ADDRESS>409
Submitting WinGet manifests

Microsoft Reviewers: Open in CodeFlow

Automatic Validation ended with:

Installer Verification Analysis Context Information:
Installer https://dldir1v6.qq.com/qqfile/qq/PCQQ9.7.23/QQ<IP_ADDRESS>409_01.exe
Scan request id: 'd20e7eae-7957-4626-8a80-f605f767e2e6'
Error information: BlockingDetectionFound

4/9/2024 5:08:35 PM

Installer Validation

(Automated response - build 876.)

This might be due to a network block of data centers, to prevent automated downloads.
(Automated response - build 876.)


Remove check_opencl_version function

Removing all references to check_opencl_version as similar
get_device_cl_version() can be used instead.
Fixes #527
Signed-off-by: Ellen Norris-Thompson<EMAIL_ADDRESS>

@ellnor01 This needs rebasing.


Docker wrapper with mac M1

Hi,
TLDR: I'm looking for some advice on running qsiprep with docker on a Macbook Pro with M1 chip. I can see on dockerhub that the current docker image is built for linux/amd64 architecture so understand this isn't supported currently. I've also seen a similar issue with fmriprep and guess the advice may be similar:

Run fMRIPrep on x86_64 chips.
Set up a native installation on your M1.
Work on building an ARM-based Docker image...

I've tried a few things anyway but can't see any options that would avoid introducing breaking changes:

Running per standard instructions, which results in what looks like a python multiprocessing error (output attached).
I looked into the nvidia/cuda base images for cuda version 9.1 and there aren't any. I think the earliest version for arm64 is 11.* with ubuntu 18.04, which would I'm assuming would introduce problems (e.g. with eddy).
I tried to rebuild the container with the following:
docker buildx build --load --platform linux/arm64/v8 --tag qsiprep-arm64:test .
per these instructions. As expected, this didn't work because nvidia/cuda:9.1-runtime-ubuntu16.04 base image doesn't support arm64.
Also tried the above after changing the base image to nvidia/cuda:11.2.2-runtime-ubuntu18.04 out of interest, though this also didn't build.

Appreciate any advice!
Thanks.
log.txt

Haven't found a solution for this other than using different workstation or building new arm docker image. Closing as just a limitation of hardware for now.


[WIP] Support monitor store size on S3

What problem does this PR solve?
Issue Number: ref #6827
Problem Summary:
What is changed and how it works?
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/rebuild

/run-all-tests

/run-all-tests

/run-all-tests

/run-integration-test

/merge

/run-all-tests

/run-all-tests


load tablecache  Very slow

oracle load tablecache  Very slow

Hello @fin-illusion
Please do not ignore the issue template.
DBeaver has some extra performance options. You can find them in your "Connection Settings" -> "Oracle properties".

Thank you. This setting is all right.


[AutoDiff] Remove 'withoutDerivative(at:in:)' and 'withDerivative(_:)'.

These APIs are not included in the initial proposal. This PR moves them to DifferentiationUnittests.

Please review 67e84b6.

@swift-ci please smoke test and merge

@swift-ci please smoke test and merge

I'd just like to say that there are some Autodiff bugs that require workarounds using .withDerivative in my codebase (mostly related to SR-14218 and array differentiation) and I'm not sure I would have found workarounds without having withDerivative. It is also useful when I want to print gradients as they propagate as a 'poor man's debugger'.
There may be reasons (scope of the current proposal (?)) to remove it, and it is technically re-definable by users, but from a beginner's standpoint, I think withDerivative hugely increases usability, and it's very unlikely I would have thought to re-define it myself


github: Build and test the Go bindings

Based on #6 and requires #8 to pass.

Ok, almost ready.. tests fail until #5 is merged.


layout wrong with big default font size

I use Chrome (39) on Mac 15" Retina with 18px default font size and the layout in the demo is wrong - the text doesn't properly avoid the image countours. The problem seems to be in using em for the size of the scene--alice div, and px for the shape sizes.
The demo works perfectly if I set my default font size to 16px, and with the size of 18px when I scaled the scene--alice div's height and width to 16/18ths of the original values, it works again. Alternatively, adding "font-size=16px" to body style also fixes everything.

Thanks for the pointers, Jacek. Defaulted to using pixels on both scene and shape.


Remove debug print statement from sp_api.api.Reports

Seems like there was print statement for debug purposes. Probably not needed now.

thx!!!


DEFINE DATA/AGG with LET/D variables corrupts  grid_use_cnt

Reported by steven c hankin on 23 Jan 2014 17:34 UTC
Here is a session to illustrate the problem.
The script is attached (I hope)
yes? go err_bench_vtree.jnl
SET MODE VERIFY

! create test data files
let fv1 = 1
let fvx = x[fvz = Z[k=1:3](i=1:3]
let)
SAVE/CLOBBER/QUIET/FILE=my_file_vars.nc fv1, fvx, fvz
SAVE/CLOBBER/QUIET/FILE=other_file_vars.nc fv1
SAVE/CLOBBER/QUIET/FILE=another_file_vars.nc fv1
CAN VAR/ALL

use  my_file_vars, other_file_vars, another_file_vars
set data 1

let/d=other_file_vars   fvx = fv1 + x[fvx = 2*fv1 + x[gx=fvx[d=1](gx=fvx[d=1],i=1:3]
let/d=another_file_vars),i=1:3]

! define an aggregation involving LET/D variables
! this command leads to bounds error in tm_deallo_dyn_grid.F
define data/agg my_uvar_agg = my_file_vars, other_file_vars, another_file_vars
           *** NOTE: Exclude variable from aggregate.
             Does not appear in all member datasets: FVZ

CANCEL DATA/ALL
Fortran runtime error: Array reference out of bounds for array
 'grid_use_cnt', lower bound of dimension 1 exceeded (in file
 'tm_deallo_dyn_grid.F', at line 68)

Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/2135

Comment by ansley.b.manke on 15 Feb 2014 01:26 UTC
This is fixed. The grid for the ensemble dataset is set up the same way we set up grids for file variables.

Attachment from steven.c.hankin on 23 Jan 2014 17:36 UTC
script that demonstrates the bug
REPLACE THIS TEXT WITH UPLOADED FILE ./attachments/TRAC_2135_GIT_1407/err_bench_vtree.jnl


Roll Packages from 9b15c2e6ab30 to 08080abd9cbb (5 revisions)

https://github.com/flutter/packages/compare/9b15c2e6ab30...08080abd9cbb
2023-08-12<EMAIL_ADDRESS>[google_maps_flutter] removed old overrides (flutter/packages#4679)
2023-08-11<EMAIL_ADDRESS>[dynamic_layouts] Refactor flaky test (flutter/packages#4681)
2023-08-11<EMAIL_ADDRESS>[shared_preferences] Update iOS/macOS Pigeon (flutter/packages#4668)
2023-08-11<EMAIL_ADDRESS>[pigeon] skipGen (flutter/packages#4682)
2023-08-11<EMAIL_ADDRESS>Roll Flutter from 685141bf3b5f to 9b6945b465a1 (25 revisions) (flutter/packages#4680)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


RawReport.region_hash may fail when one region name is a prefix for another region name

The wrong region hash may be provided by RawReport.region_hash if the requested region's name matches the start of another region's name that occurs earlier in the report file.
On the line in io.py:
if xx.startswith('Region {}'.format(region_name)):
Example failure case:
RawReport.region_hash() may unexpectedly return the hash of region myregion_1 when another region myregion_123 was requested if myregion_1 occurs first in the report file (e.g. if it has a greater run time)

The bug is fixed. Regression test needs to be added. RawReport needs tests.

fix is here:
https://github.com/geopm/geopm/commit/3c8d5afe1db3273892c87224351503c0ffdf180f
@dannosliwcd does that makes sense to you?  We need some unit tests to cover this.

@cmcantalupo Yeah that looks like it should work.


Possible issue with accents

Hi Kamra!
I've been using git-standup in the last couple weeks and is awesome. I think there's an issue with the author's name when it contains accents.
When I execute git-standup -a "Aarón García Hervás" (my user.name in my gitconfig) the output is Seems like Aarón García Hervás did nothing!, that's not correct.
When When I execute git-standup -a<EMAIL_ADDRESS>(my user.email in my gitconfig) the output is correct.
Thanks!

Hi,
I have the same problem

Thanks!

Could be related to your env rather than the plugin itself, I think.
You guys need to check whether your locale env is set in a way you can use UTF-8, because the plugin is only passing what you set in -a to the git log --author option as-is.
Consider this:
$ echo $LC_CTYPE
UTF-8

My surname has also an acute accent (often called accents only).
$ cat ~/.gitconfig | grep name
	name = Mario Álvarez

Then:
$ touch test
$ git add test
$ git commit -m "Test"
[master 3456a17] Test
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 test
$ git standup -a "Mario Álvarez"
3456a17 - Test (12 seconds ago) <Mario Álvarez>

I am able to get the plugin to filter using the char Á in my surname on 2.1.8.

I edited my global .gitconfig and noticed after deleting the accents in my user name that the characters where actually not in UTF-8 because they needed two backspaces to be deleted. Sorry for opening the issue, my bad.
Now it works! Thanks!
PD: @javierugarte check if you have the same problem with the special characters.


Sharepoint document libraries support: CLI fit & finish feedback

corso backup create sharepoint

[x] Usage is incorrect and should emphasize using web urls to specify the site

corso backup create sharepoint  --site <site url> | '*' [flags]

[x] Fix examples to use URL
[ ] Remove --web-url flag - use dual site ulr or site ID similar to how this works for users
[x] --data flag should be hidden default to files until pages and/or lists are introduced
[x] Remove Pre-release warning
[ ] Progress output

For each library - * library - <name of library>. For example, * library - Documents
Queuing items entries should prefix with name of library - e.g. Queuing items   /Documents 3/3 - more consistent with OneDrive

corso backup details sharepoint

[x] Remove pre-release warning
[x] Fix examples using --site with a UTR
[x] Fix flags - model after OneDrive. Specifically fix ordering. Hide unsupported flags (e.g. pages)

Flags:
      --backup string                 ID of the backup to explore. (required)
      --site string              Select backup details by site url; accepts '*' to select all sites.
      --library string               Select backup details by Library name; defaults to '*'
      --folder                      Select backup details by folder
      --file                          Select backup details by file name or ID.
      --file-created-after string     Select backup details for files created after this datetime.
      --file-created-before string    Select backup details for files created before this datetime.
      --file-modified-after string    Select backup details for files modified after this datetime.
      --file-modified-before string   Select backup details for files modified before this datetime.
  -h, --help                          help for sharepoint

Actual display

[x] Remove WebURL - repetitive and not useful since backups are one site at a time
[x] Rename Drive => Library
[x] Parity with OneDrive (except for the Library field)

corso backup details sharepoint

[x] Remove pre-release warning
[x] Fix examples - --site usage with WebURL. Make example of names more relatable (use the ones from OneDrive)
[x] Add example with --library - use Documents
[x] Fix flags to support the same selectors as backup details
[x] Fix order to match the order for backup details
[x] Fix usage text for flags to be consistent with working from OneDrive
[x] Hide unsupported flags

Remove --web-url flag - use dual site ulr or site ID similar to how this works for users

@gmatev one hitch with the dual approach: since site IDs contain commas by nature, we can't use comma-delimited inputs there.  ie, we couldn't use --site foo.com,bar.com, and could only allow --site foo.com --site bar.com.  Unless we want to get into the game of telling users to escape the correct commas and have us split up those values within the command handler, which is a lot.  (side note: this is a topic we still need to address for any display name that allows commas, including onedrive file names)
Alternative proposal:

Rename --web-url to --site.
Rename the current --site to --site-id.
Since we don't expect end users to use site-id normally, we can probably keep --site-id hidden.

For each library - * library - . For example, * library - Documents
Queuing items entries should prefix with name of library - e.g. Queuing items   /Documents 3/3 - more consistent with OneDrive

Do we want both the library as a separate bucket, and the folder as well?  Or is putting the library in the folder sufficient?  Ex:
Backing up data:      1s done
Queuing items /Rhine/ 3/3
Queuing items /Rhine/Corso_Restore_10-Mar-2023_23-08-06 3/3
Queuing items /Documents/ 5/5
Queuing items /Documents/Applied 2/2
Queuing items /Documents/Corso_Restore_10-Mar-2023_23-08-06 5/5
Queuing items /Documents/Corso_Restore_10-Mar-2023_23-08-06/Applied 2/2

Also, thoughts on putting the count in front of the folder?  Ex:
Queuing items 2/2 /Documents/Applied
Queuing items 5/5 /Documents/Corso_Restore_10-Mar-2023_23-08-06
Queuing items 2/2 /Documents/Corso_Restore_10-Mar-2023_23-08-06/Applied

Remove --web-url flag - use dual site ulr or site ID similar to how this works for users

@gmatev one hitch with the dual approach: since site IDs contain commas by nature, we can't use comma-delimited inputs there. ie, we couldn't use --site foo.com,bar.com, and could only allow --site foo.com --site bar.com. Unless we want to get into the game of telling users to escape the correct commas and have us split up those values within the command handler, which is a lot. (side note: this is a topic we still need to address for any display name that allows commas, including onedrive file names)
Alternative proposal:

Rename --web-url to --site.
Rename the current --site to --site-id.
Since we don't expect end users to use site-id normally, we can probably keep --site-id hidden.

@ryanfkeepers in this proposal, --site-id only supports a singleId, correct?
For the original requirement, wouldn't something like \, when the comma is part of the item as in the case of and actual ID work properly or the shell will automatically remove these by the time it gets to command processing?
I can be ok with site-id if there is no other option

For each library - * library - . For example, * library - Documents
Queuing items entries should prefix with name of library - e.g. Queuing items   /Documents 3/3 - more consistent with OneDrive

Do we want both the library as a separate bucket, and the folder as well? Or is putting the library in the folder sufficient? Ex:
Backing up data:      1s done
Queuing items /Rhine/ 3/3
Queuing items /Rhine/Corso_Restore_10-Mar-2023_23-08-06 3/3
Queuing items /Documents/ 5/5
Queuing items /Documents/Applied 2/2
Queuing items /Documents/Corso_Restore_10-Mar-2023_23-08-06 5/5
Queuing items /Documents/Corso_Restore_10-Mar-2023_23-08-06/Applied 2/2

Also, thoughts on putting the count in front of the folder? Ex:
Queuing items 2/2 /Documents/Applied
Queuing items 5/5 /Documents/Corso_Restore_10-Mar-2023_23-08-06
Queuing items 2/2 /Documents/Corso_Restore_10-Mar-2023_23-08-06/Applied

I'd say the option that is most consistent with onedrive. I believe that is just including it in the path.

in this proposal, --site-id only supports a singleId, correct?

One per flag declaration.  So --site-id cat-uuid,id-uuid --site-id cat-uuid,id-uuid2 still works as a multiple-selection declaration.

For the original requirement, wouldn't something like , when the comma is part of the item as in the case of and actual ID work properly or the shell will automatically remove these by the time it gets to command processing?

It's a good question.  I tried to make this work a ways back.  Basically, our flag parsing library (cobra, pflags) doesn't make any attempt to recognize escaped characters.  The user can put in \\, if they want, but we'll just get the string \,, and nothing else will have changed.  So we, within corso, could make that split.  But the cli library won't do it for us.

I'd say the option that is most consistent with onedrive. I believe that is just including it in the path.

Onedrive doesn't report the drive name (which is, itself, OneDrive) at all.  So this is a unique condition.
I'm okay with keeping it in the path if you are.

Onedrive doesn't report the drive name (which is, itself, OneDrive) at all. So this is a unique condition.

I'm okay with keeping it in the path if you are.

I mean keep it in a format consistent with OneDrive. The library is just an organizational artifact. No need to expose it in the output here.

It's a good question. I tried to make this work a ways back. Basically, our flag parsing library (cobra, pflags) doesn't make any attempt to recognize escaped characters. The user can put in \, if they want, but we'll just get the string ,, and nothing else will have changed. So we, within corso, could make that split. But the cli library won't do it for us.

You would only escape for the commas that are part of the ID. Cobra should still split things that are not escaped. Or are you saying that the SiteID value is split internally in Corso? If so, is that necessary? As far as I know the ID is always treated at least by graph as a single string.
Eg. hostname1\,sitegrouid1\,siteid1,hostname2\,sitegrouid2\,siteid2
Anyway, i don't expect usage of ids to be common so we can use a separate flag --site-id  although it will be a bit inconsistent with other commands, but can probably live with it for now

Cobra should still split things that are not escaped.

Cobra has two flag arg parsing modes: Array and Slice.
Array makes no attempt to split the values. ie:

--arr a,b => "a,b"
--arr a,b --arr c => "a,b", "c"

Slice splits every comma, even if the input is "escaped".  ie:

--slc a,b => "a", "b"
--slc a,b --arr c => "a", "b", "c"
--slc a,b --arr c => "a", "b", "c"

I ran a quick test on this for proof, and got the resulting output.
--arr a\\,b\\,c,d\\,e\\,f --arr aa\\,bb\\,cc,dd\\,ee\\,ff --slc a\\,b\\,c,d\\,e\\,f --slc aa\\,bb\\,cc,dd\\,ee\\,ff \

-----
Array ["a\,b\,c,d\,e\,f", "aa\,bb\,cc,dd\,ee\,ff"]
Slice ["a\", "b\", "c", "d\", "e\", "f", "aa\", "bb\", "cc", "dd\", "ee\", "ff"]
-----


Graphs

Is your feature request related to a problem? Please describe.
Barometer graph useless for forecasting

Describe the solution you'd like
last 24h graph instead fixed 00-24

The graph starting from 00:00 and ending at 24:00 is useless, specially for the barometer.
Instant value for a barometric parameter is indicative but almost useless, the most important data is its trend: when pressure encreases, weather becomes better and vice-versa. The faster the pressure drops, the sooner the bad weather arrives. It is possible to predict a local thunderstorm and this is important for safety during trekking, hiking, yachting, etc.
Because of the low speed in barometric variations, the graph should represent at least the last 24h history (would be better if a config let choose the user last 24, 36, 48, 72 with a selectable resolution of 5,15,30,60 min). Just look at every barometer on the other sportwatches (Garmin, Suunto, Casio, etc.) and you will see they are working this way.
With the HUAWEI WATCH GT 2 Pro at 6:00 AM I can see only a 0:00-6:00 graph and this is totally useless for forecasting. I must wait until 24:00 for seeing the last 24h.
This apply to all graphs concepts. Please let the user choose for every graph.

I have no idea what your question has to do with liteos?

I have no idea what your question has to do with liteos?

This is a request for Huawei Wahtches, mainly for HUAWEI WATCH GT 2 Pro.


Add ferdi to chocolatey for windows

Is your feature request related to a problem? Please describe.
Simply being able to install ferdi on Windows with a package manager like chocolatey. And being able to install it with choco install ferdi just like franz.

Thank you for this request. We are already discussing this over at #637


[ISSUE-2673] Improve tests in PhysicalPlanSerializeTest

1.Extract common codes into methods like testTwoSerializeMethodAndDeserialize and serializePlan.

2.Alter tests to test "void serialize(DataOutputStream stream)" method in some plans.

I also have this problem
Main Linux / ubuntu (11) (pull_request) Failing after 39m — ubuntu (11)

if solved, please help me

I suspect it is caused by some permission issue.
As we are not using SonarCloud token directly. Instead, we are using Github secret Token.
You can omit it before I find a solution (have to ask help from Apache Infra).

I suspect it is caused by some permission issue.
As we are not using SonarCloud token directly. Instead, we are using Github secret Token.
You can omit it before I find a solution (have to ask help from Apache Infra).

Hi, @jixuan1989. I've already removed "-X" param. And just SonarCloud Report Error left.


Add find(By locator) method to Element objects

Need to allow users to chain By locators off of PageElement objects. Also need to figure out what that looks like in a Page object so that you can create By locators in Page Objects. Main use for this is clicking elements inside a Table using another element as a reference.

Done


Add minion causes NPE

Tried to add minions beyond the allowed limit
at UnityEngine.Debug.LogError (System.Object message) [0x00000] in <72b60a3dd8cd4f12a155b761a1af9144>:0
at Debug.LogError (System.Object obj) [0x00000] in <0f4b778ef79c497e89f6ee18303840cf>:0
at CharacterSelectionController.AddDeliverable (ITelepadDeliverable deliverable) [0x00000] in <2bfc01d3c011441f99eda7da2f70c2dc>:0
at MultiplayerMod.Multiplayer.Commands.Screens.Immigration.ProceedImmigration.Execute () [0x00000] in :0
at MultiplayerMod.Multiplayer.Configuration.MultiplayerCoordinator+<>c__DisplayClass12_0.b__1 () [0x00000] in :0
at MultiplayerMod.Core.Patch.PatchControl+<>c__DisplayClass1_0.b__0 () [0x00000] in :0
at MultiplayerMod.Core.Patch.PatchControl.RunWithDisabledPatches[T] (System.Func`1[TResult] action) [0x00000] in :0
at MultiplayerMod.Core.Patch.PatchControl.RunWithDisabledPatches (System.Action action) [0x00000] in :0
at MultiplayerMod.Multiplayer.Configuration.MultiplayerCoordinator.ClientOnCommandReceived (System.Object sender, MultiplayerMod.Network.Events.CommandReceivedEventArgs e) [0x00000] in :0
at MultiplayerMod.Platform.Steam.Network.SteamClient.ReceiveCommands () [0x00000] in :0
at MultiplayerMod.Platform.Steam.Network.SteamClient.Tick () [0x00000] in :0
at MultiplayerMod.Platform.Steam.Network.Components.SteamClientComponent.Update () [0x00000] in :0
Build: U47-562200-VD

What do you mean by beyond the limit?
Could you specify steps to reproduce?

What do you mean by beyond the limit?
Could you specify steps to reproduce?

I’m not 100% sure but I remember sweeping the hole base


Help wanted: Attempting to run tests only throws error

Avoid duplicates

[X] Bug is not mentioned in the FAQ
[X] Bug is specific for iOS only, for general issues / questions that apply to iOS and Android please raise them in the documentation repository
[X] Bug is not already reported in another issue

Technical details

Device name: Simulator on MacBook Air M1
iOS version: 16.2 on Xcode 14.2
App version: 3.0.0 or another, newer branch

Describe the bug
When I attempt to run tests on my machine, I only get the error
cwa-app-ios/src/xcode/ENA/HealthCertificateToolkit/Tests/HealthCertificateToolkitTests/CertificateAccess/DigitalCovidCertificateAccessTests.swift:7:18 Module 'HealthCertificateToolkit' was not compiled for testing

Steps to reproduce the issue

Download the source code of this repository
Attempt to run any test (in my case I tried to run https://github.com/corona-warn-app/cwa-app-ios/blob/release/3.2.x/src/xcode/ENA/ENA/Source/Scenes/AppClosureNoticeDetails/tests/AppClosureNoticeDetailsViewModelTests.swift)
See that Xcode only throws the above-mentioned error message

Expected behaviour
Xcode should run the tests and not throw an error message.
Possible Fix
No idea, I'm opening this issue because I hope to get some ideas on how to fix this from the community/developers (:

Internal Tracking ID: EXPOSUREAPP-14694

@Ein-Tim  Dev team members are pretty much occupied with priority issues, please expect some delay in response regarding this ticket.

@Ein-Tim is the issue still reproducable? we fixed a problem with community build recently please check again.

Can't reproduce.


Searching the blog for post rather than the internet, if the post is available.

Rather than searching the web for a post, how about searching the blogs for the available post either by tags or the title?
Something like this:-
Implemented by Astro(Cactus theme)
With Tag selection Open :-

With Tag selection Closed :-

Implemented code here 👉 here

I'm too lazy to implement this, but I'll take PR.(The interface needs to be in line with Urara / daisyUI style)
For reference, I think pagefind looks good.


Resolves #3200 by adding an integration test for persistent volumes

Note that the test is ignored currently and we will need some adjustments for mesos-local (framework auth/role registration) after the reserve/create functionality is added in order to let this test succeed.

LGTM - Thanks!


Issue #65 : Add fix height suitable for screens size for image preview

Reload the adapter when the Recycler View height resizes due to keyboard visibility

We should be using fixed heights (suitable for screens size class) for image previews, not reloading adapters.
@andela-wakinsanmi when you update this PR with the solution we'd discussed, please also update the title to reflect that.

Merged this as it was approved.


#1687 - Adding Required Fields to SMS Sender

Description

issue #1687
How Has This Been Tested?

[ ] unit tests
[ ] tested adding a sms sender requires provider_id and description
[ ] tested updating sms sender provider id and description
[ ] ensured provider display name is present in output of sms sender as provider_name
[ ] tested error messages when giving incorrect data for provider id

Checklist

[x] I have assigned myself to this PR
[x] PR has an appropriate title: #9999 - What the thing does
[ ] PR has a detailed description, including links to specific documentation
[ ] I have added the appropriate labels to the PR.
[ ] I did not remove any parts of the template, such as checkboxes even if they are not used
[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to any documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works. Testing guidelines
[ ] I have ensured the latest main is merged into my branch and all checks are green prior to review
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules
[ ] The ticket was moved into the DEV test column when I began testing this change

also, this should be a minor, not a patch :)

also, this should be a minor, not a patch :)

Yeah, I meant to make it a minor. I guess patch is just automatic at this point. It's borderline major since it actually changes the required fields of an endpoint...


Game crashes when use ctrl+right click to teleport on debug map.

No problem with the first random map after game launches. On the second random map it causes the game to crash, because AreaData.Get(areaKey) is null.
log.txt

Fixed. Arguably this is a bug in everest for not considering the SID when comparing two AreaKey values with ==.


Sorting: Implement Bucket sort in Javascript

https://en.wikipedia.org/wiki/Bucket_sort

I 'll take this one

My PR has been merged for this, this issue can be closed


chore(NpmFunTest): Remove two unused imports

These probably went unnoticed so far due to a bug in Detekt.

Thanks for fixing my left overs! :-)

I'll update the failing SpmFunTest independently.


[SPARK-39343][SQL] DescribeTableExec should redact properties

What changes were proposed in this pull request?
DescribeTableExec should redact properties
Why are the changes needed?
DescribeTableExec should redact properties
Does this PR introduce any user-facing change?
When user use DESCRIBE TABLE EXTENDED in v2 catalog, sensitive properties will be redacted.
How was this patch tested?
Added UT

ping @cloud-fan


Decide on authentication

for interactions from a user perspective. This could be the freeCodeCamp website or, for example, software like a IDE plugin that would pull current challenges in, and submit solutions on their behalf
for 3rd parties that want to build other functionality -an example being leaderboards

Related issue suggesting to : https://github.com/freeCodeCamp/freeCodeCamp/issues/16104 (limited to Collaborators, so I am unable to chip in 😞 )
I think we should consider using auth0, they provide a secure and scalable solution, and they have a unlimited free tier for open source projects. I doubt we could do a better job than auth0, and it would unblock the team to work on projects.
The library support looks great, see https://auth0.com/opensource They support social providers, passwordless, and MFA, see https://auth0.com/docs/identityprovider for an overview.
/cc @raisedadead @QuincyLarson @BerkeleyTrue

Related issue https://github.com/freeCodeCamp/freeCodeCamp/issues/15914

@ojongerius I've reached out to Auth0 to request unlimited free access to their service. I agree that we don't want to roll our own authentication. I'll let you know as soon as we hear back.

@QuincyLarson awesome, looking forward to the update.

@ojongerius Now that we've decided on Auth0 as a solution and have unlimited use of it, I'm closing this issue.


How to dynamically import componenents dynamically using import statements

I have to load a component which has the same name called "MyComponent" but located in different folders physically(and the name of the component is "MyComponent) which has different behavior in each folder) and MyComponent component has to load based on the options which user selects in his previous screens ....
Suppose MyComponent is located in following folders
OPTION ONE
..path1/path2/path3/my-component/my-component.component    and this component have to refer to my routing module import statement as shown below and path1,path2, and path2 are some dynamic values which user will select in his previous screens.
import {MyComponent } from "..path1/path2/path3/my-component/my-component.component"
NOTE: I am keeping the options which user select in his configuration screens as the same name to the folder name to ease my import statements.
OPTION TWO
..path4/path5/path6/my-component/my-component.component    and this component have to refer to my routing module import statement as shown below and path4,path5, and path6 are some dynamic values which user will select in his previous screens.
and import statement will look like below
import {MyComponent } from "..path4/path5/path5/my-component/my-component.component"
since MyComponent is referred in my declaration array of RoutinModule but if you import above two components in one short compiler will throw an error that MyComponent is already imported,  so I have to import those import statement very dynamically based on user's selections.
Hope you understand my problem statement ...
Let me summarise the issue below like, I have to generate import statement dynamically ....

Importing dynamically can be tricky -- if performance is not a concern you could import both components up front and choose one later?
import { MyComponent as MyComponentA } from "./a";
import { MyComponent as MyComponentB } from "./b";
...
const MyComponent = condition ? MyComponentA : MyComponentB;


Hide root id

Hello I wanna hide root ID
ex: https://gdindex-demo.maple3142.workers.dev/?rootId=root
Only access when user have folder id https://gdindex-demo.maple3142.workers.dev/?rootId=0ANuznjfLOB9mUk9PVA

Hide root id for security is pointless, but if you really want to do it, just set it as defaultRootId

I just want to share specific folder? how to do it

@maple3142

Easy way: Create a another account and share those files to that account, and create another instance of GDIndex using the new account.
Hard way: Read the code and edit accordingly

I dont have more unlimited storage to create another :(
Same goindex have password for specific folder
https://github.com/yanzai/goindex

You don't have to, just create another account and share access to new account should do the trick.