Panic: source slice length (16) does not match destination slice length (20)

Describe the bug
After running for a while, librespot crashes with a huge stacktrace.
To reproduce
I don't know, I think I just left it running for a few hours. Note that my internet connection is weird (see https://github.com/Spotifyd/spotifyd/issues/1211) so that might have something to do with it.
I am hopeful though that the stack trace provides enough clues as to why it crashes.
I'll provide additional information if it happens again.
Log
No full log, but here is the stack trace:
[beginning of log omitted]
[2023-07-19T17:38:51Z ERROR librespot_connect::spirc] connection ID update selected, but none received
[2023-07-19T17:38:51Z WARN  librespot] Spirc shut down unexpectedly
[2023-07-19T17:38:51Z INFO  librespot_playback::mixer::softmixer] Mixing with softvol and volume control: Log(60.0)
[2023-07-19T17:38:51Z INFO  librespot_playback::convert] Converting with ditherer: tpdf
[2023-07-19T17:38:51Z INFO  librespot_playback::audio_backend::rodio] Using Rodio sink with format S16 and cpal host: ALSA
[2023-07-19T17:38:51Z INFO  librespot_playback::audio_backend::rodio] Using audio device: default
[2023-07-19T17:38:51Z INFO  librespot_core::session] Connecting to AP "ap-gew4.spotify.com:4070"
[2023-07-19T17:38:52Z INFO  librespot_core::session] Authenticated as "0bzabjufeuoh2wmg0n912ftgw" !
[2023-07-19T17:38:52Z INFO  librespot_core::session] Country: "NL"
[2023-07-19T17:46:57Z ERROR librespot_core::session] session lost connection to server
[2023-07-19T17:46:57Z ERROR librespot_connect::spirc] user attributes mutation selected, but none received
[2023-07-19T17:46:57Z WARN  librespot] Spirc shut down unexpectedly
[2023-07-19T17:46:57Z INFO  librespot_playback::mixer::softmixer] Mixing with softvol and volume control: Log(60.0)
[2023-07-19T17:46:57Z INFO  librespot_playback::convert] Converting with ditherer: tpdf
[2023-07-19T17:46:57Z INFO  librespot_playback::audio_backend::rodio] Using Rodio sink with format S16 and cpal host: ALSA
[2023-07-19T17:46:57Z INFO  librespot_playback::audio_backend::rodio] Using audio device: default
[2023-07-19T17:46:57Z INFO  librespot_core::session] Connecting to AP "ap-gew4.spotify.com:4070"
[2023-07-19T17:46:57Z INFO  librespot_core::session] Authenticated as "0bzabjufeuoh2wmg0n912ftgw" !
[2023-07-19T17:46:57Z INFO  librespot_core::session] Country: "NL"
[2023-07-19T17:57:02Z ERROR librespot_core::session] session lost connection to server
[2023-07-19T17:57:02Z ERROR librespot_connect::spirc] user attributes update selected, but none received
[2023-07-19T17:57:02Z WARN  librespot] Spirc shut down unexpectedly
[2023-07-19T17:57:02Z INFO  librespot_playback::mixer::softmixer] Mixing with softvol and volume control: Log(60.0)
[2023-07-19T17:57:02Z INFO  librespot_playback::convert] Converting with ditherer: tpdf
[2023-07-19T17:57:02Z INFO  librespot_playback::audio_backend::rodio] Using Rodio sink with format S16 and cpal host: ALSA
[2023-07-19T17:57:02Z INFO  librespot_playback::audio_backend::rodio] Using audio device: default
[2023-07-19T17:57:02Z INFO  librespot_core::session] Connecting to AP "ap-gew4.spotify.com:4070"
[2023-07-19T17:57:03Z INFO  librespot_core::session] Authenticated as "0bzabjufeuoh2wmg0n912ftgw" !
[2023-07-19T17:57:03Z INFO  librespot_core::session] Country: "NL"
[2023-07-19T18:08:33Z INFO  librespot_core::spclient] Resolved "gew4-spclient.spotify.com:443" as spclient access point
thread '<unnamed>' panicked at 'source slice length (16) does not match destination slice length (20)thread '', core/src/file_id.rs<unnamed>' panicked at 'source slice le
ngth (16) does not match destination slice length (20):13', core/src/file_id.rs::13
13stack backtrace:
:13
thread '<unnamed>' panicked at 'source slice length (16) does not match destination slice length (20)', core/src/file_id.rs:13:13
   0:       0x5587480248 - std::backtrace_rs::backtrace::libunwind::trace::hb03bf07da3096b0a
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:       0x5587480248 - std::backtrace_rs::backtrace::trace_unsynchronized::hdb7a184e8aa369fa
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:       0x5587480248 - std::sys_common::backtrace::_print_fmt::h095e7a1ddd3e2196
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:65:5
   3:       0x5587480248 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h687989fbc4e49c23
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:44:22
   4:       0x55874a4270 - core::fmt::write::h84a4b2357213f62f
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/fmt/mod.rs:1254:17
   5:       0x558747cc60 - std::io::Write::write_fmt::h5332f707e1fe7f76
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/io/mod.rs:1698:15
   6:       0x5587480054 - std::sys_common::backtrace::_print::he25baf0f531996a8
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:47:5
   7:       0x5587480054 - std::sys_common::backtrace::print::hed8e08110966e47b
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:47:5
   8:       0x55874817bc - std::panicking::default_hook::{{closure}}::h0fc4ddd66f9c74db
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:269:22
   9:       0x5587481568 - std::panicking::default_hook::ha8a1e0111166c899
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:288:9
  10:       0x5587481cf4 - std::panicking::rust_panic_with_hook::hc1899de1550da6fc
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:691:13
  11:       0x5587481be4 - std::panicking::begin_panic_handler::{{closure}}::h3a0da81bc6915d32
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:582:13
  12:       0x5587480694 - std::sys_common::backtrace::__rust_end_short_backtrace::h9c2eb8b141eabce6
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:150:18
  13:       0x5587481968 - rust_begin_unwind
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:578:5
  14:       0x5586f40134 - core::panicking::panic_fmt::h9ed84968eba0b8ba
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/panicking.rs:67:14
  15:       0x5586f40554 - core::slice::<impl [T]>::copy_from_slice::len_mismatch_fail::hcecd6bfc62e8c6cf
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/slice/mod.rs:3341:13
  16:       0x55872610a8 - <librespot_core::file_id::FileId as core::convert::From<&librespot_protocol::metadata::VideoFile>>::from::h5457c591a8e900f4
  17:       0x5587185ce4 - <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter::h7eeab149ec0d3dbe
  18:       0x558717f2b8 - <librespot_metadata::episode::Episode as core::convert::TryFrom<&<librespot_metadata::episode::Episode as librespot_metadata::Metadata>::Messag
e>>::try_from::hfbf298eb812326d8
  19:       0x55870a9cac - librespot_metadata::Metadata::get::{{closure}}::h9cfab3405b9fed3a
  20:       0x55870a3634 - librespot_playback::player::PlayerTrackLoader::load_track::{{closure}}::hbc731375702e37e9
  21:       0x55870a2470 - tokio::runtime::park::CachedParkThread::block_on::h3fdad82036905a26
  22:       0x55870988cc - std::sys_common::backtrace::__rust_begin_short_backtrace::h5ea79fb162c6d852
  23:       0x55870cdc6c - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7caaa85fa22f9e5b
  24:       0x5587485e90 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6e1de9633f47ca0d
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/boxed.rs:1973:9
  25:       0x5587485e90 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hd0e150fd07881867
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/boxed.rs:1973:9
  26:       0x5587485e90 - std::sys::unix::thread::Thread::new::thread_start::hf43c0dcba69a1a74
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys/unix/thread.rs:108:17
  27:       0x7f9e03b648 - start_thread
                               at ./nptl/./nptl/pthread_create.c:477:8
  28:       0x7f9ded0c1c - thread_start
                               at ./misc/../sysdeps/unix/sysv/linux/aarch64/clone.S:78
  29:                0x0 - <unknown>
stack backtrace:
   0:       0x5587480248 - std::backtrace_rs::backtrace::libunwind::trace::hb03bf07da3096b0a
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:       0x5587480248 - std::backtrace_rs::backtrace::trace_unsynchronized::hdb7a184e8aa369fa
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:       0x5587480248 - std::sys_common::backtrace::_print_fmt::h095e7a1ddd3e2196
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:65:5
   3:       0x5587480248 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h687989fbc4e49c23
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:44:22
   4:       0x55874a4270 - core::fmt::write::h84a4b2357213f62f
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/fmt/mod.rs:1254:17
   5:       0x558747cc60 - std::io::Write::write_fmt::h5332f707e1fe7f76
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/io/mod.rs:1698:15
   6:       0x5587480054 - std::sys_common::backtrace::_print::he25baf0f531996a8
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:47:5
   7:       0x5587480054 - std::sys_common::backtrace::print::hed8e08110966e47b
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:34:9
   8:       0x55874817bc - std::panicking::default_hook::{{closure}}::h0fc4ddd66f9c74db
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:269:22
   9:       0x5587481568 - std::panicking::default_hook::ha8a1e0111166c899
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:288:9
  10:       0x5587481cf4 - std::panicking::rust_panic_with_hook::hc1899de1550da6fc
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:691:13
  11:       0x5587481be4 - std::panicking::begin_panic_handler::{{closure}}::h3a0da81bc6915d32
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:582:13
  12:       0x5587480694 - std::sys_common::backtrace::__rust_end_short_backtrace::h9c2eb8b141eabce6
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:150:18
  13:       0x5587481968 - rust_begin_unwind
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:578:5
  14:       0x5586f40134 - core::panicking::panic_fmt::h9ed84968eba0b8ba
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/panicking.rs:67:14
  15:       0x5586f40554 - core::slice::<impl [T]>::copy_from_slice::len_mismatch_fail::hcecd6bfc62e8c6cf
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/slice/mod.rs:3341:13
  16:       0x55872610a8 - <librespot_core::file_id::FileId as core::convert::From<&librespot_protocol::metadata::VideoFile>>::from::h5457c591a8e900f4
  17:       0x5587185ce4 - <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter::h7eeab149ec0d3dbe
  18:       0x558717f2b8 - <librespot_metadata::episode::Episode as core::convert::TryFrom<&<librespot_metadata::episode::Episode as librespot_metadata::Metadata>::Messag
e>>::try_from::hfbf298eb812326d8
  19:       0x55870a9cac - librespot_metadata::Metadata::get::{{closure}}::h9cfab3405b9fed3a
  20:       0x55870a3634 - librespot_playback::player::PlayerTrackLoader::load_track::{{closure}}::hbc731375702e37e9
  21:       0x55870a2470 - tokio::runtime::park::CachedParkThread::block_on::h3fdad82036905a26
  22:       0x55870988cc - std::sys_common::backtrace::__rust_begin_short_backtrace::h5ea79fb162c6d852
  23:       0x55870cdc6c - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7caaa85fa22f9e5b
  24:       0x5587485e90 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6e1de9633f47ca0d
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/boxed.rs:1973:9
  25:       0x5587485e90 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hd0e150fd07881867
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/boxed.rs:1973:9
  26:       0x5587485e90 - std::sys::unix::thread::Thread::new::thread_start::hf43c0dcba69a1a74
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys/unix/thread.rs:108:17
  27:       0x7f9e03b648 - start_thread
                               at ./nptl/./nptl/pthread_create.c:477:8
  28:       0x7f9ded0c1c - thread_start
                               at ./misc/../sysdeps/unix/sysv/linux/aarch64/clone.S:78
  29:                0x0 - <unknown>
stack backtrace:
   [etc etc etc for a few more thousand lines]

Host (what you are running librespot on):

OS: Linux (ARM64)
Platform: Raspberry Pi 3 Model B Rev 1.2

Additional context
Weirdly, librespot just continued running after what looks like a fatal error to me. From the log it appears that I was trying to start playing some music (which didn't last long due to https://github.com/Spotifyd/spotifyd/issues/1211).

Please provide version information.

Sorry I forgot, this was the dev branch at the time I made the issue.

It sometimes happens that the packet isn’t received fully. I thought I had made that piece of the code panic-free but I guess I missed something.

Other than that it would be nice to make it panic-free, I see at the beginning of the log that it fails to bind, that the address is already in use?

Other than that it would be nice to make it panic-free, I see at the beginning of the log that it fails to bind, that the address is already in use?

I'm not sure why that is. Maybe I was running another librespot instance at the same time, or maybe it's because I have a WireGuard network interface too that librespot doesn't seem to like very much.
(I have now switched to libespot-java because that's the only thing that will work correctly on my network, feel free to close this if there is nothing important to fix).

same bug  with this episode spotify:episode:78DE1A0rENsT7oS9qhT8o0

Other than that it would be nice to make it panic-free, I see at the beginning of the log that it fails to bind, that the address is already in use?

I'm not sure why that is. Maybe I was running another librespot instance at the same time, or maybe it's because I have a WireGuard network interface too that librespot doesn't seem to like very much.
(I have now switched to libespot-java because that's the only thing that will work correctly on my network, feel free to close this if there is nothing important to fix).

ye  it works with Java not Rust for some reason

Does still happen on latest dev? There have been a lot of improvements there since.

I don't know, I've switched to go-librespot which works reliably for me right now.

Gonna close then, if you don't expect to provide further feedback.

Gonna close then, if you don't expect to provide further feedback.

@roderickvd it still error here is how i fix it ( sory this repo has been hardly modify fron core so i can not push it to here )
https://github.com/fantasybot-red/librespot/blob/64cb3fb5d040b934ef619c8868e5d1589897181a/core/src/file_id.rs#L16

Cool, thanks! I'll remember to push a commit for it manually.

Just put in your fix @thedtvn with a small change. Since I don't have a Spotify account anymore, could someone test before I put out a 0.6.0 release?


Automatic migration from InfluxDB OSS 1.8.10 to 2.1.1 fails

Hi there,
I find it particularly difficult to follow the documentation to upgrade from 1.x to 2.x, and even after applying the required steps, I end up with fatal error or unauthorised access.
Below is a more precise description (at least I hope so) of the error and the steps to reproduce it
Minimal actions needed to reproduce the behavior.

Have a InfluxDB OSS 1.8.10 up and running on a single instance
Apply steps described to perform the upgrade
In particular use the following command to do the uprage

sudo -u influxdb influxd upgrade --config-file /etc/influxdb/influxdb.conf --v2-config-path /specific_path/influxdbv2/config.toml -e /specific_path/influxdbv2/engine -m /specific_path/influxdbv2/influxd.bolt -c /specific_path/influxdbv2/configs --log-path /specific_path/influxdbv2/upgrade.log --log-level debug

Start the influxDB instance (as a service or as influxd process)

Expected behavior:

Have documented and precise steps to follow to perform the upgrade:
End up with an up and running InfluxDB 2.1.1 service, with all data from 1.8.10 migrated in bucket and organisation

Actual behavior:
Differents errors when starting influxd :

too many files open
no org for default user
Error: failed to list users: 401 Unauthorized: unauthorized access

Environment info:

System info: Run Linux 5.13.0-1014-aws x86_64 20.04.1-Ubuntu
InfluxDB version: InfluxDB v2.1.1

too many files open sounds like a bad ulimit setting, which could definitely make the upgrade fail (and might happen more commonly as users upgrade from inmem indexing on 1.x to TSI indexing in 2.x. I think we should add a warning for that.

@PoloKltz what is your ulimit -a setting? If you increase your file descriptor ulimit (depends on system, but ulimit -n unlimited) does that fix the errors?

Possibly related: https://github.com/influxdata/influxdb/issues/23157

Just run into the Error: 401 Unauthorized: unauthorized access after the 1.8 -> 2.3 upgrade
> ulimit -a
real-time non-blocking time  (microseconds, -R) unlimited
core file size              (blocks, -c) 0
data seg size               (kbytes, -d) unlimited
scheduling priority                 (-e) 0
file size                   (blocks, -f) unlimited
pending signals                     (-i) 7801
max locked memory           (kbytes, -l) 253808
max memory size             (kbytes, -m) unlimited
open files                          (-n) 1024
pipe size                (512 bytes, -p) 8
POSIX message queues         (bytes, -q) 819200
real-time priority                  (-r) 0
stack size                  (kbytes, -s) 8192
cpu time                   (seconds, -t) unlimited
max user processes                  (-u) 7801
virtual memory              (kbytes, -v) unlimited
file locks                          (-x) unlimited

Managed to find the upgrade log
influxd upgrade
{"level":"info","ts":1656536691.8887737,"caller":"upgrade/upgrade.go:401","msg":"Starting InfluxDB 1.x upgrade"}
{"level":"info","ts":1656536691.889225,"caller":"upgrade/upgrade.go:404","msg":"Upgrading config file","file":"/etc/influxdb/influxdb.conf"}
{"level":"info","ts":1656536691.8897223,"caller":"upgrade/upgrade.go:408","msg":"Config file upgraded.","1.x config":"/etc/influxdb/influxdb.conf","2.x config":"/root/.influxdbv2/config.toml"}
{"level":"info","ts":1656536691.8898306,"caller":"upgrade/upgrade.go:418","msg":"Upgrade source paths","meta":"/var/lib/influxdb/meta","data":"/var/lib/influxdb/data"}
{"level":"info","ts":1656536691.889981,"caller":"upgrade/upgrade.go:419","msg":"Upgrade target paths","bolt":"/root/.influxdbv2/influxd.bolt","engine":"/root/.influxdbv2/engine"}
{"level":"info","ts":1656536691.8978586,"caller":"bolt/bbolt.go:83","msg":"Resources opened","service":"bolt","path":"/root/.influxdbv2/influxd.bolt"}
{"level":"info","ts":1656536691.8995106,"caller":"migration/migration.go:175","msg":"Bringing up metadata migrations","service":"migrations","migration_count":20}
> Welcome to InfluxDB 2.0!
? Please type your primary username grafana
? Please type your password *************
? Please type your password again *************
? Please type your primary organization name SwitchedOn
? Please type your primary bucket name primary
? Please type your retention period in hours, or 0 for infinite 0
? Setup with these parameters?
  Username:          grafana
  Organization:      SwitchedOn
  Bucket:            primary
  Retention Period:  infinite
 Yes
{"level":"info","ts":1656536738.6713157,"caller":"upgrade/setup.go:73","msg":"CLI config has been stored.","path":"/root/.influxdbv2/configs"}
{"level":"info","ts":1656536738.6717663,"caller":"upgrade/database.go:202","msg":"Checking available disk space"}
{"level":"info","ts":1656536738.683662,"caller":"upgrade/database.go:223","msg":"Computed disk space","free":"44 GB","required":"553 MB"}
? Proceeding will copy all V1 data to "/root/.influxdbv2"
  Space available: 44 GB
  Space required:  553 MB
 Yes
{"level":"info","ts":1656536745.3202834,"caller":"upgrade/database.go:51","msg":"Upgrading databases"}
{"level":"info","ts":1656536745.336234,"caller":"upgrade/database.go:101","msg":"Creating mapping","database":"home","retention policy":"autogen","orgID":"8404c2be38ca173b","bucketID":"73f2a66a585554cb"}
{"level":"info","ts":1656536748.8159993,"caller":"upgrade/database.go:195","msg":"Database upgrade complete","upgraded_count":1}
{"level":"info","ts":1656536748.8174427,"caller":"upgrade/security.go:45","msg":"Upgrading 1.x users"}
{"level":"warn","ts":1656536748.8176544,"caller":"upgrade/security.go:50","msg":"User is admin and will not be upgraded","username":"grafana"}
{"level":"info","ts":1656536748.8177702,"caller":"upgrade/security.go:115","msg":"User upgrade complete","upgraded_count":0}
{"level":"info","ts":1656536748.8178678,"caller":"upgrade/upgrade.go:488","msg":"Upgrade successfully completed. Start the influxd service now, then log in","login_url":"http://localhost:8086"}

@williamluke4 I think your issue is not the issue in the original ticket.

Just run into the Error: 401 Unauthorized: unauthorized access after the 1.8 -> 2.3 upgrade

Specifically, see https://docs.influxdata.com/influxdb/v2.3/upgrade/v1-to-v2/automatic-upgrade/#secure-by-default .

Before upgrading to 2.3, enable authentication in your InfluxDB 1.x instance and test your credentials to ensure your applications, agents, and visualization tools can connect to InfluxDB.

If you upgrade with auth-enabled = false, the upgrade may appear complete, but client requests to InfluxDB 2.3 may be silently ignored (you won’t see a notification the request was denied).


Process and notebook ipynb (GO_cluster/ oversampling)

Development
Description
和原本被close 的 Process ipynb 相同
Implementation

process/GO_cluster
notebook/oversampling

Required Hidden Data
NaN
Checklist

[x] Detail implementation description at the top of notebook
[x] Data input and output paths are correct
[x] Free of spurious comments
[x] Free of unnecessary notebook updates (e.g. cell executions count)

do not merge master branch into in develop branch

closing it


End Gateways in End dimensions created with multiverse don't teleport players anywhere [1.16.1]

Hello,
I created an end dimension with multiverse, slayed the dragon and when I use an enderpearl in the gateway nothing happens. This issue does not happen in the original end dimension.
Paper: git-Paper-44
Multiverse plugins :

Multiverse-Core-4.1.1-SNAPSHOT.jar
Multiverse-Inventories-4.0.0-SNAPSHOT.jar
Multiverse-NetherPortals-4.1.1-SNAPSHOT.jar

Same for me on Purpur 1.16.1

In the world_the_end (generated on 1.15.2 with worldborder), everything works fine
In another end world called resend (generated on 1.16.1, not fully), players who try to go through an end gateway to get out of the main island don't go to the outer islands. One gateway teleports them right below the end gateway where they fall to their deaths and the other doesn't teleport them at all.
If they try to return to the main island by entering the corresponding portal on the outer islands, they are teleported back as expected.

I confirm the problem. I created an END world with Multiverse 4.1.0 on 1.16.1 with paper-79. After killing the dragon, when i use an enderpearl in the gateway, sometimes nothing happens, sometimes i get teleported near the gateway, or inside, or on the main island, but i never leave the main island.

Please give this a try with the latest Spigot from BuildTools or Paper #83.

Tested on Paper-83 and it's not working. Same behavior.

I couldn't reproduce this with the latest build of Spigot from BuildTools. Can you try with Spigot?

It doesn't work on latest build of Spigot for me nor Paper#83.

>version
[17:39:36] [Server thread/INFO]: This server is running CraftBukkit version git-Spigot-c3a49df-dba91d2 (MC: 1.16.1) (Implementing API version 1.16.1-R0.1-SNAPSHOT)

I tried making a fresh end with multiverse with spigot running instead of paper but the same happens. After defeating that dragon the gateway doesn't teleport you to endcities range.

I also tried this :

reset bukkit.yml and spigot.yml
disabled all plugins but Multiverse-core
reset configs of Multiververse-core completely
made a complete fresh new world
and still can't get it to work ; what's your secret :)

Confirmed for me on a test server with just mv plugins.

Sorry, let's just clarify.
Do the gateways do nothing? or teleport you to the wrong spot?

Sorry, let's just clarify.
Do the gateways do nothing? or teleport you to the wrong spot?

They don't do anything for me. I can be standing in the gateway block and it doesn't do anything. No error messages either.

Confirmed for me too. Since Paper#83, the return portal from End to Overworld is fixed, but the End Gateways do nothing at all. Even using the trapdoor method (rather than enderpearl), and climbing inside the gateway portal, nothing happens. No errors/stacks in console.

Me too, only the default world (the one in server.properties) works. Interestingly the outer end gateways do teleport you back to the main island and work as intended, it is simply the end gateway that generates after killing the ender dragon that does not work.

I am having this issue also. End gateways from the main island do not work. But end gateways outside to main island work as they should.

I'm having the same problem. Everything works fine in the original end world file created from the first run. When I use mvcreate to make an end world, I can not go through any of the gateways.
My exact process (tried in Spigot and Paper)

Execute server jar file for first time to create base world
Stop server, drop Multiverse jars into plugin folder
Run server again, use /mv create test end
Join and use /mvtp test
Beat dragon and attempt to use gateway

Could someone please test this again with the latest Spigot build or with Paper Build 93, the report back whether it's still happening and the output of /version?

Could someone please test this again with the latest Spigot build or with Paper Build 93, then report back on whether it's still happening and with the output of /version?

Don't know exactly what build I'm on but I updated a couple hours ago and this is still a thing.

I was using paper-93 and end gateways are still broken.
/version
[19:57:08 INFO]: This server is running Paper version git-Paper-93 (MC: 1.16.1) (Implementing API version 1.16.1-R0.1-SNAPSHOT)
[19:57:08 INFO]: Previous version: git-Paper-83 (MC: 1.16.1)
[19:57:08 INFO]: You are running the latest version
Me chilling in the end gateway

Also tried on latest spigot:
/version
[20:20:04] [Server thread/INFO]: This server is running CraftBukkit version git-Spigot-05da6fa-75a2fb8 (MC: 1.16.1) (Implementing API version 1.16.1-R0.1-SNAPSHOT)
[20:20:04] [Server thread/INFO]: Checking version, please wait...
[20:20:06] [Thread-12/INFO]: You are running the latest version
Also tried this with
Multiverse-Core-4.1.1-SNAPSHOT build 777 with no luck.
In conclusion, end gateways are broken in 1.16.1 in multiverse in spigot and paper.

Just to clarify:
If i have a server created in 1.15.2 (Spigot) where an end world has been visited, if I were to update to 1.16.1 everything would work?

I was able to reproduce the bug, and have filed it here, https://hub.spigotmc.org/jira/browse/SPIGOT-6011.

It's been marked as fixed. Please update Spigot using BuildTools or use Paper Build 110 (or higher) and see if it's working for you.

It's working for me on Paper #110. Thanks!

Can double confirm. Paper #110 fixes end gateways for me too. Thanks nicegamer7!

Awesome! I'll assume it's working in Spigot then.


Remove bower.json

Addresses #303
The bower package has been broken for quite some time, and it looks like we won't be supporting it here.  Maybe we'll create a bower distribution repo in the future if it's worth it.

Can you check if there are any bower references left? I guess the gitignore will have some references to bower, for example.

Current coverage is 92.06%

Merging #330 into master will not affect coverage as of 782cf77

@@            master    #330   diff @@
======================================
  Files            9       9
  Stmts          189     189
  Branches        42      42
  Methods         94      94
======================================
  Hit            174     174
  Partial          4       4
  Missed          11      11

Review entire Coverage Diff as of 782cf77

Powered by Codecov. Updated on successful CI builds.

Haha yeah, realized that as soon as I pushed.  Updating the docs


Have an improved color blind theme

I previously tried to make the game friendlier for color blind people by having an alternate theme that makes the pieces have distinct, exotic shapes, but this was confusing. I tried drawing some replacements, but I really should try to investigate what kind of stuff is actually helpful in this case, and probably also tweak the colors away from red, green and blue when this theme is on.

I added three different alternative color schemes, and made a better and less confusing piece theme


Use production-ready Dockerfile template for Go images

Related to https://issues.redhat.com/browse/SRVCOM-3255

The Dockerfiles now accept arguments: GO_BUILDER, GO_RUNTIME, VERSION
There are default values that are used in CI. For Konflux, these arguments would be passed from the Tekton pipeline to override the versions used by the Dockerfile.
This approach works in CI where images are properly replaced:
Given this dockerfile:

# DO NOT EDIT! Generated Dockerfile for cmd/apiserver_receive_adapter.
ARG GO_BUILDER=registry.ci.openshift.org/openshift/release:rhel-8-release-golang-1.22-openshift-4.17
ARG UBI8_MINIMAL=registry.access.redhat.com/ubi8/ubi-minimal
ARG VERSION=knative-v1.15

FROM $GO_BUILDER as builder

COPY . .

ENV CGO_ENABLED=1
ENV GOEXPERIMENT=strictfipsruntime

RUN go build -tags strictfipsruntime -o /usr/bin/main ./cmd/apiserver_receive_adapter

FROM $UBI8_MINIMAL

# Install the missing zoneinfo to ubi-minimal
RUN microdnf install tzdata

USER 65532

COPY --from=builder /usr/bin/main /usr/bin/main

LABEL \
      com.redhat.component="openshift-serverless-1-eventing-apiserver-receive-adapter-rhel8-container" \
      name="openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8" \
      version="$VERSION" \
      summary="Red Hat OpenShift Serverless 1 Eventing Apiserver Receive Adapter" \
<EMAIL_ADDRESS>\
      description="Red Hat OpenShift Serverless 1 Eventing Apiserver Receive Adapter" \
      io.k8s.display-name="Red Hat OpenShift Serverless 1 Eventing Apiserver Receive Adapter"

ENTRYPOINT ["/usr/bin/main"]

The CI config would be generated in this way:
base_images:
  ocp_ubi-minimal_8:
    name: ubi-minimal
    namespace: ocp
    tag: "8"
  openshift_release_rhel-8-release-golang-1.22-openshift-4.17:
    name: release
    namespace: openshift
    tag: rhel-8-release-golang-1.22-openshift-4.17
images:
- dockerfile_path: openshift/ci-operator/knative-images/apiserver_receive_adapter/Dockerfile
  inputs:
    ocp_ubi-minimal_8:
      as:
      - $UBI8_MINIMAL
    openshift_release_rhel-8-release-golang-1.22-openshift-4.17:
      as:
      - $GO_BUILDER
  to: knative-eventing-apiserver-receive-adapter

Next steps after merging this PR would be:

Re-generate Dockerfiles through Github actions in Eventing and other repos that use automation for generating Dockerfiles
Re-generate CI configs for the repos.
Implement passing the arguments to the build from Tekton pipeline (not done yet).
Onboard other repos that don't use the automation yet (Serving, etc.)

/hold

/unhold

Rebased. Ready for review.


Issue with less dimming

Hi,
if you dimm to the smallest value (1%) via alexa APP the Brightness switches to 5.
But after few seconds the value in the APP jumps to 2%.
Is it possible that the smallest Brightness have to be more less, for example 3?

I've noticed this, too. If you set a certain brightness via voice command or the app, the brightness that the app reports is one percent higher than the one actually set. I've checked multiple times, it's likely that this is a bug in the Alexa app and nothing I can easily change. Also, it seems that 5 is a too high brightness for 1%, it should be 2-3. I'll further investigate a bit, but it's unlikely that I can find an universally working solution.


Python 3.7+ compatible

Started this project using Python 3.10 for no particular reason other than wanting to try out this version's new features.
However, this project doesn't require anything 3.10 related and can be done in 3.7, which is the currently oldest supported version.  That allows for more versatility in using this app.

Resolved in #43


getting Call to a member function toArray() on array in Plugin/FlashMessenger.php on line 306

Hi,
I'm getting this error, if I call $flashMessenger->render in my custom view helper. FlashMessages will be added in controller by $this->flashMessenger()->addErrorMessage(...) etc.
The Problem is solved, after i replaced line 306 by following code:
        if(is_array($this->messages[$namespace])) {
          return $this->messages[$namespace];
        } else {
          return $this->messages[$namespace]->toArray();
        }

I use this package in version 2.6.2  and zendframework/zendframework in version 2.5.3

While I appreciate that you found a "fix", the problem is that it masks the root cause somewhere.
When messages are added, they are pushed on to an SplQueue instance. As such, the real question is: how is an array sneaking into the $messages[$namespace] value? We need to find how that is happening.
Can you give the exact sequence of code that demonstrates the problem, please, so I can try and reproduce this in a test?

hi weierophinney,
I have added an error message to flashMessenger in one of my controllers:
$this->flashMessenger()->addErrorMessage('ERROR_MESSAGE');       $this->redirect()->toUrl('/admin/course/overview/index');       return false;
These messages will be rendered by a custom ViewHelper:
`class FlashMessageHelper extends AbstractHelper {
public function __invoke(FlashMessenger $flashMessenger) {
$flashMessenger->setMessageOpenFormat('
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
');

$flashMessenger->setMessageSeparatorString('

');

$flashMessenger->setMessageCloseString('

');

$flashMessenger->setAutoEscape(false);

echo $flashMessenger->render('error', array(
    'alert',
    'alert-dismissible',
    'alert-danger'
));
echo $flashMessenger->render('info', array(
    'alert',
    'alert-dismissible',
    'alert-info'
));
echo $flashMessenger->render('default', array(
    'alert',
    'alert-dismissible',
    'alert-warning'
));
echo $flashMessenger->render('success', array(
    'alert',
    'alert-dismissible',
    'alert-success'
));

}
}`
I have dumped the content of $this->messages. A success-message contains following:
(     [success] => Zend\Stdlib\SplQueue Object         (             [flags:SplDoublyLinkedList:private] => 4             [dllist:SplDoublyLinkedList:private] => Array                 (                     [0] => SUCCESS_MESSAGE                 )         ) )
The same call at different time generates following content:
(     [success] => Array         (             [0] => SUCCESS_MESSAGE         ) )

The same call at different time generates following content:

That's interesting — do you mean at a later time in the same request? or a later request? I ask, because flash messages are expected typically to be retrieved exactly once; any later retrieval should result in an empty set. I'd expect to see what you received on the first result, and then any later retrievals to be empty.
I hate to keep bugging for more information, but I still don't have enough to produce a reproduce case. How exactly do you get the second result?

Hi there,
I have the same problem with fm->getMessages() and fm->getCurrentMessages().
As the error not occurs with ->getMessages() as described above it uses to happen with getCurrentMessages(). I looked into Flashmessenger code and it hasnt changed since last Version so the bug might not be rooted here.
I also get that bug in the return Method of getCurrentMessages() and as i debugged it turned out ($container->{$namespace}) is not a SPLQueue but an array....
So i looked into the addMessage Method but it turns out that messages are added correctly since getMessages works and getCurrentMessages throws that error. So there might be a session problem?
Therefore it is not a SPLQueue but an array toArray return error toarray called on array... i called toarray earlier in the addMessage Method and it correctly returned empty...
Hope that information helps track down the root of this bug.

@weierophinney,
I mean a later request, but the same action, with same parameters. Maybe, the informations of DanialBetran are more helpful?

Hello ,
if you clear the current messages $flashMessenger->clearCurrentMessages(); after the last echo the issue with your custom helper is appear to be fixed

I'm getting this exact same problem when using the flash messenger in a ZF3 mvc project. It seems that after the redirect the session is being repopulated with an array rather than an arrayobject.

i commented on https://github.com/zendframework/zend-mvc-plugin-flashmessenger/issues/9 with my theory of why this is happening. Try using SessionArrayStorage with SanSessionToolbar. I am able to reproduce it.

samsonaik fixed it, and now i can't reproduce it anymore (sansessiontoolbar 1.0.5)


Improvements to DE translation

[x] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

Proposed changes

Update/add documentation for De locale
Checklist

[x] I have read the contribution guidelines
[ ] For non-bugfix PRs, I have discussed this change on the forum/slack team.
[ ] I have run grunt to verify the unit tests pass
[ ] I have added suitable unit tests to cover the new/changed functionality (not needed :-) )

How does this relate to #2806?

How does this relate to #2806?

Coverage remained the same at 69.133% when pulling a964f16b627b83be9ec0b84bbca328298234c511 on matthiasradde:update-german-documentation into 7bde7f0cfd0b02dd37974ae25f46e86aad4525c6 on node-red:master.

Coverage remained the same at 69.133% when pulling a964f16b627b83be9ec0b84bbca328298234c511 on matthiasradde:update-german-documentation into 7bde7f0cfd0b02dd37974ae25f46e86aad4525c6 on node-red:master.

Both PR are about german translation.
This #2851 is only about some typos in documentation for some nodes and add the missing translation for the "Complete"-node.
The #2806 seems to for fixing a lot more typos/translation-issues.
As I am not used to work in/contribute to large OpenSource-projects I might do things not the way I should do (because I don't know better). So please be tolerant and teach me how to do it better - Thank you :-)

Both PR are about german translation.
This #2851 is only about some typos in documentation for some nodes and add the missing translation for the "Complete"-node.
The #2806 seems to for fixing a lot more typos/translation-issues.
As I am not used to work in/contribute to large OpenSource-projects I might do things not the way I should do (because I don't know better). So please be tolerant and teach me how to do it better - Thank you :-)

Hello Matthias, nice to hear from you and your engagement to improve the german translation.
I reviewed your PR and as I saw, the changes are already covered by my PR #2806.
I just finished and pushed my translations and would really happy for each review and feedback.
Thanks and stay healthy! Heiko

@knolleary @dceejay This PR is already contained in #2806 and can be closed.
@matthiasradde Can you please review #2806 after next release?

closing as requested


Update perforce-server r15.1 sha

The test's failing; might just be that the output has changed: http://bot.brew.sh/job/Homebrew Binary Pull Requests/182/version=el_capitan/testReport/junit/brew-test-bot/el_capitan/test_homebrew_binary_perforce_server/

@dunn Thanks for the hint :+1:

Oh, do you know if the Linux source has been updated too?

What do you mean by that? I thought brew is only for OS X...

Oh, I mean the 32-bit binary: http://filehost.perforce.com/perforce/r15.1/bin.darwin90x86/p4d
The science tap supports Linuxbrew so I got confused there.

Is there a way to disable the hash check for a bottle? I guess not... and it's probably not wanted by the maintainer...
The hash I added here is already outdated. Perforce has a continues delivery setup and changes the file every other day. Do you have an idea how we can handle that with brew?

One option would be to move it to the head-only repository; it wouldn't need a checksum there.

That sounds interesting. Right now I do this ugly stuff:
    P4_SERVER_SHA=$(brew fetch --force perforce-server 2>&1 | grep ^SHA256: | cut -d ' ' -f 2)     P4_SHA=$(brew fetch --force perforce 2>&1 | grep ^SHA256: | cut -d ' ' -f 2)     sed -E -i.bak "s/sha256 \"[0-9a-f]{64}\"/sha256 \"$P4_SERVER_SHA\"/g" /usr/local/Library/Taps/homebrew/homebrew-binary/perforce-server.rb     sed -E -i.bak "s/sha256 \"[0-9a-f]{64}\"/sha256 \"$P4_SHA\"/g" /usr/local/Library/Taps/homebrew/homebrew-binary/perforce.rb     brew install git-lfs perforce-server perforce
Can you point me to a head-only binary example? I only found this:
https://github.com/Homebrew/homebrew-head-only/blob/master/opentracker.rb

@dunn ping :smile:

Oops, forgot about this, sorry!  Since October we've stopped accepting new formula to head-only, because it really isn't a good user experience.  I guess our options are to keep manually updating the checksum here or convince upstream to provide versioned downloads.

Well, both options are not really appealing. I don't want to update the checksum every other day (they ship constant minor updates) and don't have any way to change Perforce's deployment process.
Could you consider a special flag to allow head-only formulas? Something along the lines of brew install --i-know-what-i-am-doing my-formula?

Could you consider a special flag to allow head-only formulas?

Afraid not; like I said, the way Homebrew works doesn't lend itself well to head-only formulae.
There's always the option of creating your own tap with a head-only version: https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/How-to-Create-and-Maintain-a-Tap.md

See #312

Closing here. It's a known issue at this point, sadly without much of a reasonable recourse. Will happily review any PR that does something we can all agree is a useful step forwards 😅.


New analysis view

view for scheduling new analysis has been added
favicon has been finally updated
a fix for function binding in generic form has been applied

 Update WebClient favicon

 New analysis view (for scheduling)


Variable uint used for container lengths (like string or vec)

See the example code from: https://github.com/darkrenaissance/darkfi/blob/master/src/serial/src/lib.rs#L271
/// Variable-integer encoding.
/// Integer can be encoded depending on the represented value to save space.
/// Variable length integers always precede an array/vector of a type of data
/// that may vary in length. Longer numbers are encoded in little endian.
///
/// | Value         | Storage length | Format                              |
/// |---------------|----------------|-------------------------------------|
/// | <= 0xfc       | 1              | u8                                  |
/// | <= 0xffff     | 3              | `0xfd` followed by `value` as `u16` |
/// | <= 0xffffffff | 5              | `0xfe` followed by `value` as `u32` |
/// | -             | 9              | `0xff` followed by `value` as `u64` |
///
/// See also [Bitcoin variable length integers](https://en.bitcoin.it/wiki/Protocol_documentation#Variable_length_integer).
#[derive(Debug, PartialEq, Eq)]
pub struct VarInt(pub u64);

impl VarInt {
    /// Gets the length of this `VarInt` when encoded.
    /// Returns:
    /// * 1 for 0..0xFC
    /// * 3 for 0xFD..(2^16-1)
    /// * 5 for 0x10000..(2^32-1)
    /// * 9 otherwise
    #[inline]
    pub fn length(&self) -> usize {
        match self.0 {
            0..=0xFC => 1,
            0xFD..=0xFFFF => 3,
            0x10000..=0xFFFFFFFF => 5,
            _ => 9,
        }
    }
}

impl Encodable for VarInt {
    #[inline]
    fn encode<S: Write>(&self, mut s: S) -> Result<usize, Error> {
        match self.0 {
            0..=0xFC => {
                (self.0 as u8).encode(s)?;
                Ok(1)
            }

            0xFD..=0xFFFF => {
                s.write_u8(0xFD)?;
                (self.0 as u16).encode(s)?;
                Ok(3)
            }

            0x10000..=0xFFFFFFFF => {
                s.write_u8(0xFE)?;
                (self.0 as u32).encode(s)?;
                Ok(5)
            }

            _ => {
                s.write_u8(0xFF)?;
                self.0.encode(s)?;
                Ok(9)
            }
        }
    }
}

impl Decodable for VarInt {
    #[inline]
    fn decode<D: Read>(mut d: D) -> Result<Self, Error> {
        let n = ReadExt::read_u8(&mut d)?;
        match n {
            0xFF => {
                let x = ReadExt::read_u64(&mut d)?;
                if x < 0x100000000 {
                    return Err(Error::new(ErrorKind::Other, "Non-minimal VarInt"))
                }
                Ok(VarInt(x))
            }

            0xFE => {
                let x = ReadExt::read_u32(&mut d)?;
                if x < 0x10000 {
                    return Err(Error::new(ErrorKind::Other, "Non-minimal VarInt"))
                }
                Ok(VarInt(x as u64))
            }

            0xFD => {
                let x = ReadExt::read_u16(&mut d)?;
                if x < 0xFD {
                    return Err(Error::new(ErrorKind::Other, "Non-minimal VarInt"))
                }
                Ok(VarInt(x as u64))
            }

            n => Ok(VarInt(n as u64)),
        }
    }
}

Always using u32 or u64 for array lengths is wasteful since many containers only contain a byte's worth of items.

Varint encoding definitely would save some space for the binary format at least, but I'm a little concerned about the performance overhead all the additional branches would cause. I would be happy to at least consider and benchmark a PR adding this. (would also need to wait for a major release, as this would break reading of already-serialized objects)


Charts don't load on Android

Issue:
After "add a ticker" with a valid ticker it just repeats "..." indefinitely and never loads the chart.
The rest of the key commands and the tui app all appear to work fine.
Install: cargo install tickrs
System info:
$ cargo -V
cargo 1.50.0
$  uname -a
Linux localhost 4.14.113-20606106 #1 SMP PREEMPT Mon Feb 1 10:40:43 KST 2021 aarch64 Android
$ termux-info
Packages CPU architecture:
aarch64
Android version:
11
Device manufacturer:
samsung
Device model:
SM-N975F
Thanks for any support you can provide!

What is the ticker?

AMZN
GE
SPY
TLSA
Tried many...

I just noticed you're trying to run this from an Android phone... I have NO idea if the aarch64-unknown-linux-gnu binary would work there. I'm pretty sure I'd have to target aarch64-linux-android specifically to get things working 100%, but I haven't really ever looked into this.

Here's a version I built for android, test this out and let me know if it works
tickrs-v0.14.2-aarch64-linux-android.tar.gz

Thanks for all the support.
The URLs load fine. I tried curl from the (termux) shell to retrieve w/ no issues.
I had tried the aarch64-unknown-linux-gnu binary previously but it did not run on this hardware.
Thanks for the binary. It runs. However, it has the same "..." indefintely w/ no chart loading. (Same issue as noted in the original post.) The rest of the program runs properly (renders, keyboard commands, etc).
I should note originally - I did build for android via the "cargo install tickrs". It compiles &builds completely on my setup. However, it has the same results as the version you compiled.
Where to go from here? How can we extract some debug info? Is there come build outputs or hooks we could put in?
Let me know how to continue to debug and help. I am anxious to use this and help pave the way for all android termux users.

Yeah, lets get this figured out! It's got to be one of the dependencies that "compiles" properly for that target, but doesn't work. My guess would be the curl dependency I use, isahc. Let's start by researching that dependency and any sub-deps of that to make sure it all supports the aarch64-linux-android target.
As far as debugging... I have 0 debug lines or logging anywhere in the program currently. We can pepper in some, disable the raw mode I set the terminal in, and disable drawing the UI so we can just see the output of those messages. I'm 99% sure it's networking related and probably due to the isahc / static curl that is built not working properly. But some debug messages around that would definitely help.

Comment out these lines
https://github.com/tarkah/tickrs/blob/ab76c6bde42bf4799b99b112ecc6d27ebe0ed082/src/main.rs#L119
https://github.com/tarkah/tickrs/blob/ab76c6bde42bf4799b99b112ecc6d27ebe0ed082/src/main.rs#L130
https://github.com/tarkah/tickrs/blob/ab76c6bde42bf4799b99b112ecc6d27ebe0ed082/src/main.rs#L198
Add debugging on the error of the API request here
https://github.com/tarkah/tickrs/blob/ab76c6bde42bf4799b99b112ecc6d27ebe0ed082/src/task/prices.rs#L41-L44
https://github.com/tarkah/tickrs/blob/ab76c6bde42bf4799b99b112ecc6d27ebe0ed082/src/task/company.rs#L34
https://github.com/tarkah/tickrs/blob/ab76c6bde42bf4799b99b112ecc6d27ebe0ed082/src/task/current_price.rs#L33

Another thought.... you can also run cargo test --target aarch64-linux-android --workspace -- --nocapture and I have some tests in the API crate that do http requests. You can see if that succeeds or not.

You can also try removing the static curl / static openssl that gets built and see if linked one works:
Change this:
https://github.com/tarkah/tickrs/blob/ab76c6bde42bf4799b99b112ecc6d27ebe0ed082/api/Cargo.toml#L21-L22
To this:
 curl = { version = "0.4" }
 isahc = { version = "0.8", default-features = false, features = ["http2", "text-decoding"] }

So I added some debugging and I'm getting the following error:
BadClientCertificate(None) so I don't think there are ssl certs installed w/ termux so the ssl/tls requests are failing. Let me see if there's an easy fix for this.

I think we need a way to specify the openssl directory so it can find the certs shipped with termux

It works!

I disabled ssl cert validation, I didn't know how to fix it otherwise...
diff --git a/api/src/client.rs b/api/src/client.rs
index 069aeb1..ed9dbfb 100644
--- a/api/src/client.rs
+++ b/api/src/client.rs
@@ -3,7 +3,7 @@ use std::collections::HashMap;
 use anyhow::{bail, Context, Result};
 use futures::AsyncReadExt;
 use http::Uri;
-use isahc::HttpClient;
+use isahc::prelude::*;
 use serde::de::DeserializeOwned;

 use crate::model::{Chart, ChartData, Company, CompanyData, Options, OptionsHeader};
@@ -182,7 +182,17 @@ impl Client {

 impl Default for Client {
     fn default() -> Client {
-        let client = HttpClient::new().unwrap();
+        #[allow(unused_mut)]
+        let mut builder = HttpClient::builder();
+
+        #[cfg(target_os = "android")]
+        {
+            use isahc::config::SslOption;
+
+            builder = builder.ssl_options(SslOption::DANGER_ACCEPT_INVALID_CERTS);
+        }
+
+        let client = builder.build().unwrap();

         let base = String::from("https://query1.finance.yahoo.com");

Can you build from #119 and confirm it works for you? If so, I'll merge and start releasing w/ android binaries

This is so awesome... May need to use this as an alternative screen now.

Using termux styling, font Fantasque looks best with no spacing between braille characters.

Actually, terminus is the best for charting as it doesn't seem to have horizontal spacing either, its very even.

And in summary mode, scrolling up / down works with the scrolling feature there! So nice :D

~ $ cargo install --git https://github.com/tarkah/tickrs --branch android-support
Successful build and it works!
...and how beautiful of a thing on mobile, ssh session, or a terminal in dex mode. 😃 👍
Thank you so much.
Now back to losing money in the market...


Docker file for kaldo and tdep

Everything works on my end for building the docker. Let me know if there are any issues.
Thanks

LGTM!


Move cirq/ops/moment.py to cirq/circuits/moment.py

Fixes #4665
TODO: Figure out a way to deprecate the old submodule s.t. we don't directly break all code of the form cirq.ops.moment.Moment / cirq.ops.Moment / from cirq.ops import Moment.
NOTE: DO NOT MERGE!

@tanujkhattar - this should be unblocked after https://github.com/quantumlib/Cirq/pull/4920.
I will prepare a follow up on top of that PR.

@tanujkhattar - please consider adding the following branch to this PR:
git pull https://github.com/pavoljuhas/Cirq move_moment-next

New commits:
6dfd212d Replace deprecated cirq.ops.Moment in examples
8c28135e Fix leftover ops.Moment reference
3f20f1be Deprecate module cirq.ops.moment and cirq.ops.Moment
578041d7 Merge branch #4920 'fix-attributes-and-spec-after-deprecation' into move_moment
e63dbfea Merge branch 'master' into move_moment

Updated follow-up branch after #4920 got merged to master (please disregard https://github.com/quantumlib/Cirq/pull/4838#issuecomment-1026643565)
git pull https://github.com/pavoljuhas/Cirq move_moment-next-2

New commits:
fd8d2868 Replace deprecated cirq.ops.Moment in examples
f53080f3 Fix leftover ops.Moment reference
bad0e9c2 Deprecate module cirq.ops.moment and cirq.ops.Moment
40a6b2e8 Merge branch 'master' into move_moment-next-2

@pavoljuhas Thanks for taking this up. I'll close this PR and you can create a new PR with your branch and I'll be happy to review it. Thanks!

@tanujkhattar - done, please see https://github.com/quantumlib/Cirq/pull/4932


Expand usage of properties instead of direct access to data members

Summary
This is the first PR from a list in #514
Details and comments

@eliarbel Ready for another round of review


Don't auto-send STOMP content-length header if one was explicitly set

I'm not sure if a code path where this (= sending more than one content-length header) happens exists, but nothing prevents the issue from happening ATM.

I think this is ok.. besides.. I need to solve a little conflict with my other change.. so I will merge this now.
@johnament  if you still think there's something wrong we can still review this (commit-then-review).. The ideas on these PRs is just to avoid mistakes not to censor commits, we can still rollback later if there's an issue with it.

@johnament  I'm not trying to prevent any discussions here though.. please don't take me wrong.. I'm just saying I will go ahead and merge this.. don't read anything on it please :)

@clebertsuconic none taken at all.
I just know that issues like this tend to lead to buffer overflow type errors. It's technically an unrelated issue, I'll take a look at the server side.


fixing errors with bug and new ui

It's still a draft. :D Don't approve it yet

This ended up being a mixed grab bag of fixes and the commit will be fixed in the squash, here is the recap:

Fix issue when you have no followers or followings
Fix follow button for profiles with shop link - ended up doing "global" find on view after seeing how unfollow was done.
Change unfollow to only find button
Added example filter.json
Added hacky (disabled) "test" plugin for interacting with single user


tf.train.latest_checkpoint fails when paths have "//"

tf.train.latest_checkpoint returns the error
ERROR:tensorflow:Couldn't match files for checkpoint

when paths in the "checkpoint" file have "//" instead of "/". Usually, good practice of using os.path.join will help avoid this situation, but I believe TensorFlow should account for '//'s in paths as several developers do not use os.path.join
To reproduce this error

Create directory /home/user/model
Create file /home/user/model/checkpoint whose contents are

model_checkpoint_path: "/home/user/model//model_1"
all_model_checkpoint_paths: "/home/user/model//model_0"
all_model_checkpoint_paths: "/home/user/model//model_1"

Create empty files model/model_1.data-00000-of-00001, model/model_1.index, model/model_1.meta
Run tf.train.latest_checkpoint('/home/user/model').
Expected output is u'/home/user/model//model_1', but TF returns an error ERROR:tensorflow:Couldn't match files for checkpoint /home/user/model//model_1

System information

OS: Ubuntu 16.04
TF installed via pip install tensorflow-gpu
TF version: 1.4.1
Python version: 2.7
CUDA/cuDNN version: 8.0
GPU model and memory: GeForce GTX 1080, 8GB

Have I written custom code
Yes
OS Platform and Distribution
Ubuntu 16.04
TensorFlow installed from
Installed thru pip install tensorflow-gpu
TensorFlow version
1.4.1
Bazel version
N/A
Exact command to reproduce
N/A

Nagging Awaiting Response: It has been 14 days with no activityand the awaiting response label was assigned. Is this still an issue?

Nagging Awaiting Response: It has been 14 days with no activityand the awaiting response label was assigned. Is this still an issue?

Nagging Awaiting Response: It has been 14 days with no activityand the awaiting response label was assigned. Is this still an issue?

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

It has been 29 days with no activity and the awaiting response label was assigned. Is this still an issue?

It has been 119 days with no activity and the awaiting response label was assigned. Is this still an issue?

We are closing this issue for now due to lack of activity. Please comment if this is still an issue for you. Thanks!


fs/littlefs: fix file size mismatch

Summary
fs/littlefs: fix file size mismatch
/misc:
drwxrwxrwx542515384 .
drwxrwxrwx542515384 ..
-rw-rw-rw-     463 factory.prop
Signed-off-by: Jiuzhu Dong<EMAIL_ADDRESS>Impact
N/A
Testing
local test

is this necessary even after https://github.com/apache/incubator-nuttx/pull/6307? why?

is this necessary even after #6307? why?

Okay, i will pick it to local branch. thank you !


Switch to STANDALONE_WASM=1 to get rid of all the JS-ism in Wasm modules.

@jplevyak assigning this to you, since you already started some work in #211, but feel free to reassign it to me, if you prefer that I do it.

I spent whole day trying to get upstream to work with protobufs, this is far from trivial (nor urgent), so unassigning you for the time being.


fix: responsive navbar on small devices

Pipeline was failing sometimes https://app.circleci.com/pipelines/github/ipfs-shipyard/ipfs-webui/301/workflows/7d739c8e-9f97-4ad9-a870-fb889442f7d9/jobs/4074 saying that "Explore" link was not clickable.
I think it was because the window used by the CI was too small, hiding the element.
Hopefully this PR fixes it, will rekick the pipeline a couple of times to make sure 🙏

Before this PR:

After this PR:


Bug Report:  Azure Private DNS Resolver:  Error: updating Subnet: ... Original Error: Code="SubnetMissingRequiredDelegation"

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Versions

terraform:
0.15.1
azure provider:
3.29.0
module:
terraform-azurerm-caf-enterprise-scale v2.4.0
(corrected module version)
Description
Describe the bug
Summary:
Azure CAF Terraform module tries to delete any service endpoints configured on subnets in the hub VNET.
Detail:

This issue occurs when  trying to implement Azure DNS Private Resolver (https://learn.microsoft.com/en-us/azure/dns/dns-private-resolver-overview)
When subnets are configured (using an external module or process) in the Azure CAF Hub with Azure Private DNS Resolver service endpoints and links are created as described here:

https://learn.microsoft.com/en-us/azure/dns/dns-private-resolver-overview

However, when terraform is re-run to apply the azure caf enterprise module and update the hub vnet, the module wants to remove any service delegations it finds on any new subnets added to the hub vnet.

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  ~ update in-place

Terraform will perform the following actions:

  # module.subnet_privatedns_dnsinbound.azurerm_subnet.main will be updated in-place
  ~ resource "azurerm_subnet" "main" {
        id                                             = "/subscriptions/319b5c03-aac1-4f4b-a8ed-1d722d02d814/resourceGroups/hkjc-connectivity-eastasia/providers/Microsoft.Network/virtualNetworks/hkjc-hub-eastasia/subnets/inbound-dns-ea-nprd-snet-hub00-net00"
        name                                           = "inbound-dns-ea-nprd-snet-hub00-net00"
        # (9 unchanged attributes hidden)

      - delegation {
          - name = "Microsoft.Network.dnsResolvers" -> null

          - service_delegation {
              - actions = [
                  - "Microsoft.Network/virtualNetworks/subnets/join/action",
                ] -> null
              - name    = "Microsoft.Network/dnsResolvers" -> null
            }
        }
    }

Plan: 0 to add, 1 to change, 0 to destroy.

When terraform tries to apply this change, it fails as follows:

╷
│ Error: updating Subnet: (Name "inbound-dns-ea-nprd-snet-hub00-net00" / Virtual Network Name "hkjc-hub-eastasia" / Resource Group "hkjc-connectivity-eastasia"): network.SubnetsClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="SubnetMissingRequiredDelegation" Message="Subnet /subscriptions/319b5c03-aac1-4f4b-a8ed-1d722d02d814/resourceGroups/hkjc-connectivity-eastasia/providers/Microsoft.Network/virtualNetworks/hkjc-hub-eastasia/subnets/inbound-dns-ea-nprd-snet-hub00-net00 requires any of the following delegation(s) [Microsoft.Network/dnsResolvers] to reference service association link /subscriptions/319b5c03-aac1-4f4b-a8ed-1d722d02d814/resourceGroups/hkjc-connectivity-eastasia/providers/Microsoft.Network/virtualNetworks/hkjc-hub-eastasia/subnets/inbound-dns-ea-nprd-snet-hub00-net00/serviceAssociationLinks/dnsResolverLink." Details=[]
│
│   with module.subnet_privatedns_dnsinbound.azurerm_subnet.main,
│   on ../modules/azurerm-caf-subnet/main.tf line 10, in resource "azurerm_subnet" "main":
│   10: resource "azurerm_subnet" "main" {
│

NOTE: In this case, subnets are not being managed in the azure CAF module, they're being added to the caf module-managed hub vnet using an external deploy pipeline.
Steps to Reproduce

add one or more subnets to the azure caf-module-managed hub VNET via the Azure portal
Create an Azure DNS Private Resolver using the created hub subnets using the example code here: https://raw.githubusercontent.com/Azure/terraform-provider-azapi/main/examples/Microsoft.Network/dnsResolvers/main.tf
Re-apply the hub VNET terraform using the azure caf enterprise module to check if  it tries to remove service association links from the subnets ...

Screenshots
│ Error: updating Subnet: (Name "inbound-dns-ea-nprd-snet-hub00-net00" / Virtual Network Name "hkjc-hub-eastasia" / Resource Group "hkjc-connectivity-eastasia"): network.SubnetsClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="SubnetMissingRequiredDelegation" Message="Subnet /subscriptions/319b5c03-aac1-4f4b-a8ed-1d722d02d814/resourceGroups/hkjc-connectivity-eastasia/providers/Microsoft.Network/virtualNetworks/hkjc-hub-eastasia/subnets/inbound-dns-ea-nprd-snet-hub00-net00 requires any of the following delegation(s) [Microsoft.Network/dnsResolvers] to reference service association link /subscriptions/319b5c03-aac1-4f4b-a8ed-1d722d02d814/resourceGroups/hkjc-connectivity-eastasia/providers/Microsoft.Network/virtualNetworks/hkjc-hub-eastasia/subnets/inbound-dns-ea-nprd-snet-hub00-net00/serviceAssociationLinks/dnsResolverLink." Details=[]
│
│   with module.subnet_privatedns_dnsinbound.azurerm_subnet.main,
│   on ../modules/azurerm-caf-subnet/main.tf line 10, in resource "azurerm_subnet" "main":
│   10: resource "azurerm_subnet" "main" {
│

Additional context

We need to be able to implement AZure DNS Private Resolver service in the hub vnet, ideally using terraform.
Perhaps a switch could be implemented to disable the azure caf module's removal of the service association from externally managed subnets?

This is an interesting issue, so thank you for raising this @archmangler

the module wants to remove any service delegations it finds on any new subnets added to the hub vnet

In this case, this appears to not be our module (I don't know what you mean by azurecaf 2.0.0-preview-3), however I'm happy to offer some advice on this to help you.
I think this less of a "bug" and more a matter of mismatched configuration, the workaround is to add the missing delegation settings to your code following the guidance in the AzureRM docs for the subnet delegation block. If it's not possible to set this in the azurecaf 2.0.0-preview-3 module, I would suggest raising an issue with the author of that module.
I don't believe there is anything for us to do regarding this in our module as you are managing these subnets outside of the module (but presumably within the same Terraform workspace?)
As such I will close this issue but please feel free to re-open if I have misunderstood the ask or you require further assistance.

Hi @krowlandson - apologies, I have corrected the module version (I pasted the wrong module details in the ticket - it should be v2.4.0)
The subnets are being managed by a separate module, however even if we were to manage the subnets within the terraform-azurerm-caf-enterprise-scale module, there is no indication in the documentation on how to configure subnets for the case of Azure DNS Private Resolver.
To illustrate, the following configuration doesn't indicate how/where we'd add the necessary configuration:
  default = {
    settings = {
      hub_networks = [
        {
          enabled = true
          config = {
            address_space                = ["<IP_ADDRESS>/16", ]
            location                     = "eastasia"
            link_to_ddos_protection_plan = false
            dns_servers                  = []
            bgp_community                = ""
            subnets = [
              {
                name                      = "lol-ea-hub00-sbt-shared00"
                address_prefixes          = ["<IP_ADDRESS>/24"]
                network_security_group_id = null
                route_table_id            = null
              }
            ]
            virtual_network_gateway = {

Does terraform-azurerm-caf-enterprise-scale currently support Azure Private DNS Resolution as configured here:
https://learn.microsoft.com/en-us/azure/dns/dns-private-resolver-overview
Alternatively, can you perhaps provide some guidance on how to integrate Azure Prive DNS Resolution service with VNETs deployed by terraform-azurerm-caf-enterprise-scale module ?

Note:
Even for subnets managed using terraform-azurerm-caf-enterprise-scale v2.4.0 module, we encounter the same problem when configuring Azure DNS Resolver.
It seems there needs to be some development required on terraform-azurerm-caf-enterprise-scale to ensure either:
a) Co-existence with Azure DNS Private Resolver - OR -
b) Support for configuring Azure DNS Private resolver within the module itself.
References:

https://learn.microsoft.com/en-us/azure/dns/dns-private-resolver-overview
https://raw.githubusercontent.com/Azure/terraform-provider-azapi/main/examples/Microsoft.Network/dnsResolvers/main.tf

OK, I understand.
Right now this would be via the advanced input and is applicable to all subnets created by the module, regardless of how they are defined.
The general format should be as follows (I haven't tested this exact code so please let me know if any issues):
  configure_connectivity_settings = {
    # additional attributes removed for brevity
    advanced = {
      custom_settings_by_resource_type = {
        azurerm_subnet = {
          connectivity = {
            eastus = { # replace eastus with the location you are using
              subnet_name = { # replace subnet_name with the name of the subnet you want to configure
                {
                  delegation = [
                    {
                      name = "Microsoft.Network.dnsResolvers"
                      service_delegation = [
                        {
                          name    = "Microsoft.Network.dnsResolvers"
                          actions = ["Microsoft.Network/virtualNetworks/subnets/join/action"]
                        }
                      ]
                    }
                  ]
                }
              } # repeat this block for each subnet you need to configure
            }
          }
        }
      }
    }
  }

Am I correct to assume that you are providing this as feedback rather than need this feature right now? Either way, I will link this to the work we are doing to refactor the module with optional() input type support as this will be easier for us to add without causing the inputs to become unmanageable for those who don't want to configure this.

It's a feature request: Update documentation to clarify this area of subnet configuration.

This should form part of the updates I mentioned so will be covered then.
Thank you for the valuable feedback! 👍🏻

Hi @krowlandson - this works quite fine. Thanks for the help!


Background Layer - Textures and Patterns

Wire the new texture approach into the background layer for patterns.

Do we have the PR on this one?  It sounds like we're functionally done.

It's mostly already merged, just #1200 with some cleanup.

Do we think this is done?

Yeah, I think anything left can be called a bug or an optimization.

Still using the old templated program to render to the stencil buffer.

Still using the old templated program to render to the stencil buffer.

That doesn't apply to background, only fill and line.

Typed that into the wrong window.  But closed in any case.


How to access Tivo on LAN from AWS

Let's say the skill is running in AWS as a lambda, how can it contact your Tivo running on your LAN?

It can't, unless you do some port forwarding on your router and expose your TiVo to the internet, which I wouldn't recommend. Theoretically that would work but I haven't attempted it ... with my fork of the skill I run the node-js/alexa-app-server locally.

Makes sense, just wanted to make sure I wasn't missing something. Thanks!


Add pre-commit

Add pre-commit that easily run the tests.

Hi @yeger00 ,
I have added the precommit hook in #68. Can you please review the changes?


Add a Gitter chat badge to README.md

conventional-changelog/conventional-changelog-cli now has a Chat Room on Gitter
@stevemao has just created a chat room. You can visit it here: https://gitter.im/conventional-changelog/conventional-changelog-cli.
This pull-request adds this badge to your README.md:

If my aim is a little off, please let me know.
Happy chatting.
PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

Coverage remained the same at 94.03% when pulling 48de52e325dbc3482461f39193108078b6c31941 on gitter-badger:gitter-badge into 024990a6ee593e716871e61bf62a7715fa74f629 on conventional-changelog:master.


Disconnect event loop from window

So the idea here was to support running multiple windows in a webpage, but it seems like even if we do this, the EventLoop is still consumed when it's started, so we can't create new windows after it's started anyway.


Support onbuild instruction

Hi!
With this onbuild instruction support we can add behavior to the apko images when we use them as base images.

Hi! @imjasonh @kaniini, can you help me with this pr?

I'm a little curious to learn more about your use case. Do you have an example scenario in mind? I thought ONBUILD instructions in Dockerfiles were deprecated and recommended against for quite some time, but maybe I'm mistaken.

Hello @imjasonh, I did not find in the official docker documentation that the onbuild instructions had been deprecated but I will look for it.
One use case we are looking at is having a distroless image for production and another in the development stage. Seeking that the environment is not so different, we think that the development environment is the production environment + busybox + compilation.
I thought some dockerfile with this style
FROM prod_img:latest
# this can be added with melango + apko
RUN apk add busybox
ONBUILD COPY . /app
WORKDIR /app
ONBUILD CMD ["python3", "-m", "app"]

Final Dockerfile that devs can use
FROM dev_img:latest

This have no sense 😢


Wrong widgets when using a custom one

Using Wagtail 4.1.1 but also can confirm that happens to 4.0.4 also.
The issue as can see in the video below is that when I attach a custom widget to a field panel, the native DateTime field is not working as expected
https://user-images.githubusercontent.com/12672541/202036625-47cdac26-a981-4764-b163-2f186986877c.mp4
Steps to Reproduce

Import a simple Django model with a DateTime field
Use @register_snippet to use it inside Wagtail admin panel
Add to the panels a field with custom width

FieldPanel("your_field", widget=RandomWidget),
FieldPanel("your_datetime_field"),

Any other relevant information. For example, why do you consider this a bug and what did you expect to happen instead?

I have confirmed that this issue can be reproduced as described on a fresh Wagtail project: yes

Technical details

Python version: Python 3.10.8
Django version: django==4.1.2
Wagtail version: 4.1.1

Also when overriding the FieldPanel of  your_datetime_field with a widget of widget=widgets.AdminDateTimeInput it is still getting ignored

Update:
Actually it was working the issue was in the widget and a JS conflict with Jquery
@property
    def media(self):
        return forms.Media(js=("https://code.jquery.com/jquery-3.6.1.min.js",))

@konsalex Glad you got it sorted! Is #9654 the same issue?

Hey @gasman no, the other is using a native one from Django-recurrence which works if the widget is not inline, so a fair guess would be not the same issue?


FileNotFoundError: [Errno 2] No such file or directory: 'pickle_files/embeddings.p'

In dataset.py we read
embedding_path = 'pickle_files/embeddings.p'
word_to_indx_path = 'pickle_files/vocabIndxDict.p'
embedding_tensor = pickle.load(open(embedding_path,'rb'))
word_to_indx = pickle.load(open(word_to_indx_path,'rb'))
However, the two files are not in the zip-code?

Download Glove Embeddings from the stanford website and place it in
data/embeddings/glove.6B/glove.6B.300d.txt


Enable data files to reside on a host bind-mounted volume

When PipelineDB is started in a Docker container, /mnt/pipelinedb/data/ is currently volatile if the database container is rescheduled to a different compute node. In order to make data portable across compute nodes, starting the container with a host bind-mounted volume (docker run -d -v host_volume:/mnt/pipelinedb/data pipelinedb) helps tools like Flocker migrate host volume to destination compute node.
This PR adds supports for starting PipelineDB container with a bind-mounted host volume.
Ran the following test cases with the change:

Regression test: Verified container start up without -v flag.

docker@testvm:~/pipelinedb/pkg/docker$ docker run -it  testhostvolume
The files belonging to this database system will be owned by user "pipeline".
This user must also own the server process.
...
LOG:  database system was shut down at 2016-01-20 05:29:41 GMT
LOG:  MultiXact member wraparound protections are now enabled
LOG:  database system is ready to accept connections
LOG:  continuous query scheduler started
LOG:  autovacuum launcher started

Start container bind-mounting an empty host directory into /mnt/pipelinedb/data/:

docker@testvm:~/pipelinedb/pkg/docker$ ls -la /tmp/hostvolume1
ls: /tmp/hostvolume1: No such file or directory
docker@testvm:~/pipelinedb/pkg/docker$ docker run -it -v /tmp/hostvolume1:/mnt/pipelinedb/data testhostvolu
me
The files belonging to this database system will be owned by user "pipeline".
This user must also own the server process.
...
LOG:  database system was shut down at 2016-01-20 05:57:23 GMT
LOG:  MultiXact member wraparound protections are now enabled
LOG:  database system is ready to accept connections
LOG:  continuous query scheduler started
LOG:  autovacuum launcher started

docker@testvm:~/pipelinedb/pkg/docker$ ls -la /tmp/hostvolume1
total 96
drwx------   18 docker   root          4096 Jan 20 06:00 ./
drwxrwxrwt   13 root     staff         4096 Jan 20 05:57 ../
-rw-------    1 docker   1000             4 Jan 20 05:57 PG_VERSION
drwx------    5 docker   1000          4096 Jan 20 05:57 base/
drwx------    2 docker   1000          4096 Jan 20 05:57 global/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_clog/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_dynshmem/
-rw-------    1 docker   1000           842 Jan 20 05:57 pg_hba.conf
-rw-------    1 docker   1000          1636 Jan 20 05:57 pg_ident.conf
drwx------    4 docker   1000          4096 Jan 20 05:57 pg_logical/
drwx------    4 docker   1000          4096 Jan 20 05:57 pg_multixact/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_notify/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_replslot/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_serial/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_snapshots/
drwx------    2 docker   1000          4096 Jan 20 06:00 pg_stat/
drwx------    2 docker   1000          4096 Jan 20 06:00 pg_stat_tmp/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_subtrans/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_tblspc/
drwx------    2 docker   1000          4096 Jan 20 05:57 pg_twophase/
drwx------    3 docker   1000          4096 Jan 20 05:57 pg_xlog/
-rw-------    1 docker   1000            88 Jan 20 05:57 pipelinedb.auto.conf
-rw-------    1 docker   1000          3155 Jan 20 05:57 pipelinedb.conf
-rw-------    1 docker   1000            68 Jan 20 05:57 postmaster.opts
docker@testvm:~/pipelinedb/pkg/docker$

Start a container with a bind-mounted host volume that has database files:

docker@testvm:~/pipelinedb/pkg/docker$ docker run -it -v /tmp/hostvolume1:/mnt/pipelinedb/data testhostvolu
me
    ____  _            ___            ____  ____
   / __ \(_)___  ___  / (_)___  ___  / __ \/ __ )
  / /_/ / / __ \/ _ \/ / / __ \/ _ \/ / / / __  |
 / ____/ / /_/ /  __/ / / / / /  __/ /_/ / /_/ /
/_/   /_/ .___/\___/_/_/_/ /_/\___/_____/_____/
       /_/

LOG:  database system was shut down at 2016-01-20 06:00:11 GMT
LOG:  MultiXact member wraparound protections are now enabled
LOG:  database system is ready to accept connections
LOG:  continuous query scheduler started
LOG:  autovacuum launcher started

Thanks so much, @myechuri! Could you please squash this change into a single commit?

0.8.6 is ready to go out, I'll wait for this to land though so we can get it in today's release. Thanks @myechuri!

Thanks a lot, @usmanm @derekjn ! Squashed to a single commit. Apologies for not squashing before submitting PR. Would be great to have this get into 0.8.6, appreciate the effort!

@myechuri thank you very much! This will go out in today's release.


The otomi.isManaged flag shall be required

Describe the bug:
The schema does not define the otomi.isManaged flag as required one.
To Reproduce
Steps to reproduce the behavior:

Prepare values where  otomi.isManaged flag  is not provided
Perform otomi template
Observe prometheus-operator failure

Expected behavior:
The otomi validate-values shall report error.
Additional context:

  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: default
  namespace: drone-pipelines
---
# Source: raw/templates/resources.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  labels:
    app: raw
    app.kubernetes.io/instance: k8s
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/name: raw
    app.kubernetes.io/part-of: otomi
    app.kubernetes.io/version: 0.2.3
    helm.sh/chart: raw-0.2.3
  name: team-admin
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: default
  namespace: team-admin
---
# Source: raw/templates/resources.yaml
apiVersion: scheduling.k8s.io/v1
description: This priority class should be used for Otomi High priority service pods only.
globalDefault: false
kind: PriorityClass
metadata:
  labels:
    app: raw
    app.kubernetes.io/instance: k8s
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/name: raw
    app.kubernetes.io/part-of: otomi
    app.kubernetes.io/version: 0.2.3
    helm.sh/chart: raw-0.2.3
  name: otomi-critical
value: 1000000
2021-08-30T08:59:22.867Z otomi:apply:error helmfile-init.yaml: basePath=.
2021-08-30T08:59:26.018Z otomi:apply:error Listing releases matching ^gatekeeper-operator$
2021-08-30T08:59:26.139Z otomi:apply:log gatekeeper-operator    default      1           2021-08-30 08:53:47.471479941 +0000 UTC    deployed    gatekeeper-v3.2.2    v3.2.2
2021-08-30T08:59:26.796Z otomi:apply:log Comparing release=gatekeeper-operator, chart=../charts/gatekeeper-operator
2021-08-30T08:59:26.838Z otomi:apply:error Listing releases matching ^vault-operator$
2021-08-30T08:59:26.965Z otomi:apply:log vault-operator    vault        1           2021-08-30 08:56:57.249787566 +0000 UTC    deployed    vault-operator-1.11.0    1.11.0
2021-08-30T08:59:28.552Z otomi:apply:log Comparing release=jobs-artifacts, chart=../charts/raw
Comparing release=knative-init, chart=/tmp/charts/knative-init
Comparing release=loki-artifacts, chart=../charts/raw
Comparing release=vault-operator, chart=../charts/vault-operator
2021-08-30T08:59:31.632Z otomi:apply:error hook[prepare[] logs | Building constraints artifacts from policies.
hook[prepare[] logs | Copying policies temporarily to /tmp/otomi/policies
hook[prepare[] logs | Clearing disallowed refs
hook[prepare[] logs | Generating konstrait files to /tmp/otomi/constraints
hook[prepare[] logs | Dereferencing schema: /home/app/stack/values-schema.yaml
hook[prepare[] logs | Wrote file: /tmp/otomi/compiled-schema.json
hook[prepare[] logs | Decorating template/constraints files with properties.
hook[prepare[] logs | Done
hook[prepare[] logs | Building constraints SUCCESS
hook[prepare[] logs |
2021-08-30T08:59:31.633Z otomi:apply:error Listing releases matching ^istio-operator$
2021-08-30T08:59:31.710Z otomi:apply:log istio-operator    default      1           2021-08-30 08:57:13.976531064 +0000 UTC    deployed    istio-operator-1.10.1
2021-08-30T08:59:33.399Z otomi:apply:log Comparing release=gatekeeper-artifacts, chart=../charts/gatekeeper-artifacts
Comparing release=istio-operator, chart=../charts/istio-operator
Comparing release=keycloak, chart=../charts/keycloak
Comparing release=vault-operator-artifacts, chart=../charts/raw
2021-08-30T08:59:34.186Z otomi:apply:log Comparing release=istio-operator-artifacts, chart=../charts/raw
Comparing release=kubernetes-external-secrets, chart=../charts/kubernetes-external-secrets
2021-08-30T08:59:34.224Z otomi:apply:error Listing releases matching ^kured$
2021-08-30T08:59:34.272Z otomi:apply:error in helmfile.d/helmfile-08.init.yaml: failed processing release prometheus-operator: failed to render values files "../values/prometheus-operator/prometheus-operator.gotmpl": failed to render [../values/prometheus-operator/prometheus-operator.gotmpl], because of template: stringTemplate:24:9: executing "stringTemplate" at <$v.otomi.isManaged>: map has no entry for key "isManaged"
2021-08-30T08:59:34.275Z otomi:global:error Error: Listing releases matching ^gatekeeper-operator$
helmfile-03.init.yaml: basePath=.
Listing releases matching ^vault-operator$
helmfile-05.init.yaml: basePath=.
hook[prepare[] logs | Building constraints artifacts from policies.
hook[prepare[] logs | Copying policies temporarily to /tmp/otomi/policies
hook[prepare[] logs | Clearing disallowed refs
hook[prepare[] logs | Generating konstrait files to /tmp/otomi/constraints
hook[prepare[] logs | Dereferencing schema: /home/app/stack/values-schema.yaml
hook[prepare[] logs | Wrote file: /tmp/otomi/compiled-schema.json
hook[prepare[] logs | Decorating template/constraints files with properties.
hook[prepare[] logs | Done
hook[prepare[] logs | Building constraints SUCCESS
hook[prepare[] logs |
Listing releases matching ^istio-operator$
Listing releases matching ^kured$
in helmfile.d/helmfile-08.init.yaml: failed processing release prometheus-operator: failed to render values files "../values/prometheus-operator/prometheus-operator.gotmpl": failed to render [../values/prometheus-operator/prometheus-operator.gotmpl], because of template: stringTemplate:24:9: executing "stringTemplate" at <$v.otomi.isManaged>: map has no entry for key "isManaged"
    at hfCore (file:///home/app/stack/dist/common/hf.js:44:20)
    exit code: 1
    at ChildProcess.<anonymous> (file:///home/app/stack/node_modules/zx/index.mjs:68:22)
    at ChildProcess.emit (node:events:394:28)
    at maybeClose (node:internal/child_process:1067:16)
    at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5)

@j-zimnowoda check if this is still valid

closing as already put in env.gotmpl


Add CI support and fix some coverage configuration issues

Reviewers
@flopezag
Description

Add script to build component in Jenkins.
Fix coverage configuration: It should consider all source code.

Testing
Jenkins.

No merge! Some problem updating Sonar...

Now coverage is correctly calculated...

LGTM


Country/region fixes

#sign-off

@outinyman : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@ktoliver : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Verified the update.
@outinyman Thanks for your contribution.


Fixing the standalone mode

@askeys @williaster
Now accepts a url height param and actually renders

:+1: awesome, thanks.


[FLINK-22906][docs] Add build time to Flink documentation

Brief change log
Renders the documentations build time at the bottom of the home page.

Thanks a lot!


easy install on ubuntu

I'm sysadmin, I need to automate deployment process for 800 hosts for a University.
Is there a way to package raylib for Ubuntu, as deb package with a ppa, or as flatpak ?

I think there are 2 options

using cpack through cmake and distributing that
building a native deb package for Ubuntu

This might be a good starting point for a native package - ArchLinux PKGBUILD

For now, I will build on a NFS export.


feat: add nonce to eth_call

see https://github.com/kkrt-labs/kakarot/pull/997

nonce already included in eth_call parameters:
 fn eth_call(
        self: @TContractState, origin: EthAddress, tx: EthereumTransaction

with  :
enum EthereumTransaction {
    LegacyTransaction: LegacyTransaction,
    AccessListTransaction: AccessListTransaction,
    FeeMarketTransaction: FeeMarketTransaction
}

each struct variant includes the nonce
I think this issue can be closed


Kiota doesn't serialize request body with embedded dictionary object , eg { someObject: {key: value}}

What are you generating using Kiota, clients or plugins?
API Client/SDK
In what context or format are you using Kiota?
Windows executable
Client library/SDK language
TypeScript
Describe the bug
Im trying to send request data utilizing typescript Kiota client, but the client serializes request body with embedded dictionary object defaulting it to empty object = {}.
My consoled payload before sending through Kiota client:
{
  "myDictionaryObject": {
    "someValue1":  "someKey1",
    "someValue2":  "someKey2",
    },
  "description": "An example text",
}

Payload form Network tab - after Kiota serialization
See myDictionaryObject: {}
{
  "myDictionaryObject": {},
  "description": "An example text",
}

Potential problem
I think the problem could be with the way I'm describing my dictionary object, in terms of TS I expect here Record<string, string>
my swagger specification snippet which I use to build kiota client
{
  "myDictionaryObject": {
    "description": "The job input schema.",
    "type": "object",
    "additionalProperties": {
      "type": "string"
    }
  },
}

Expected behavior
send full data with embedded object key, value pairs
How to reproduce
send embedded data eg. {key1: {key2: value1, key3: value2 }}
    "@microsoft/kiota-abstractions": "1.0.0-preview.53",
    "@microsoft/kiota-http-fetchlibrary": "1.0.0-preview.52",
    "@microsoft/kiota-serialization-json": "1.0.0-preview.53",

Kiota Version
1.14.0+fc4b39c65d89f7bfc8c7f1813c197e95e206da09
Configuration

windows
react
refine.dev
mui
react-hook-form
kiota typescript client

Snippets
my swagger specification snippet which I use to build kiota client
{
  "myDictionaryObject": {
    "description": "The job input schema.",
    "type": "object",
    "additionalProperties": {
      "type": "string"
    }
  },
}

entry file refine wrapper
<Refine
   dataProvider={{
     default: dataProvider(apiUrl),
     inferenceEndpoints: {
       getList: ...,
       getOne: ...,
       update: async ({ id, variables }) => {
           try {
             console.log(variables) --> here the structure is correct
             const data = await apiClient.api.admin.endpoints // HERE apiClient is kiota-typescript generated client
               .byName(id)
               .patch(variables)

             return { data }
           } catch (error) {
             throw getParsedError(error)
           }
         }
       }
       notificationProvider={useNotificationProvider}
       routerProvider={routerBindings}
       authProvider={createAuthProvider()}
       i18nProvider={i18nProvider}
       resources={getResources(apiClient)}
       options={{
         disableTelemetry: true,
         projectId: 'some-project-id',
         syncWithLocation: true,
         useNewQueryKeys: true,
         warnWhenUnsavedChanges: true,
         }}>
         <Routes>... </Routes>
 </Refine>

My client setup
export const getAuthenticatedApiClient = (): ApiClient => {
  const requestAdapter = new FetchRequestAdapter(
    new BaseBearerTokenAuthenticationProvider({
      getAuthorizationToken() {
        const token = sessionStorage.getItem(TOKEN_KEY) as string

        return Promise.resolve(token)
      },
      getAllowedHostsValidator: () => new AllowedHostsValidator(new Set([apiUrl])),
    }),
  )
  requestAdapter.baseUrl = apiUrl
  return createApiClient(requestAdapter)
  }

  export function createApiClient(requestAdapter: RequestAdapter) {
    registerDefaultSerializer(JsonSerializationWriterFactory);
    registerDefaultDeserializer(JsonParseNodeFactory);
    if (requestAdapter.baseUrl === undefined || requestAdapter.baseUrl === "") {
        requestAdapter.baseUrl = "https://my-url.com";
    }
    const pathParameters: Record<string, unknown> = {
        "baseurl": requestAdapter.baseUrl,
    };
    return apiClientProxifier<ApiClient>(requestAdapter, pathParameters, ApiClientNavigationMetadata, undefined);
}

Hi thank you for reporting this issue can you share the interface that was generated by kiota with us please?

export interface UpdateEndpointRequest_my_object extends AdditionalDataHolder, Parsable {
    /**
     * Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.
     */
    additionalData?: Record<string, unknown>;
}

Thanks for sharing this, have you tried setting those extra properties in additional data, so something like
{
  "myDictionaryObject": {
    "additionalData": {
      "someValue1":  "someKey1",
      "someValue2":  "someKey2",
      },
    },
  "description": "An example text",
}

They are dynamic keys and values, thats why it's Record<string,string>

I'm not sure I understand the last comment?
The additional data property is a free form dictionary for properties that are not described in the schema, hence my suggestion to use it.

Hey @baywet, I'm not sure I understand.
I don't know about the names/values of dynamic dictionary, so what do you mean by this example with specific keys "someValue1, ..."?
{
  "myDictionaryObject": {
    "additionalData": {
      "someValue1":  "someKey1",
      "someValue2":  "someKey2",
      },
    },
  "description": "An example text",
}

In my case dynamic props are described like so
{
  "myDictionaryObject": {
    "description": "The job input schema.",
    "type": "object",
    "additionalProperties": {
      "type": "string"
    }
  },
}

Hey @baywet, can you please explain your proposal?

@rners01 the additionalProperties will be held in the additionalData dictionary as key value pairs. What @baywet is suggesting is setting the values in additionalData property rather than the root of the myDictionaryObject s that's where the Kiota serializer will look for additional properties not described in the reference schema.


Make check for lists in bulk translation/detection include numpy ndarray

Googletrans version:

[ x ] 3.x
[ ] 2.x

I'm submitting a ...

[ ] bug report
[ x ] feature request

Current behavior:

When inputting a numpy ndarray into the translate and detect functions, the following exception is raised:
TypeError: ord() expected a character, but string of length 149 found.
Upon digging into the code, I found that the function only checks if the given array is an instance of python's list.
Expected behavior:

The functions should accept ndarrays as they are subscriptable, iterable just like lists, and ubiquitous.
Steps to reproduce:

As an argument to translate or detect use an ndarray rather than a list.
Related code:

import numpy as np

from googletrans import Translator
translator = Translator()

example_strings = np.array(['¡Hola Mundo!', 'El significado de la vida es 42.'])
translator.translate(example_strings)

A suggestion that I have to fix it would be to

move the check over to a utility function that can be used by the translate and detect methods.
include ndarrays in the check.

Also, I know that it's easy to convert the ndarray to a list, and that the example I gave above is a little contrived. This is more of a usability nitpick than anything. I just expect ndarrays to work identically to lists in most cases.

We currently don't want to add more customized features since most of them can be fulfilled by simply adding some code along with this library.


"round" folders explanation

Hi, There are different round folders cfgs/target_dataset but I could not find any information about differences among round folders and explanations. Can you give me information about them?

Read the multi-stage self training section in our paper. Or in the MS3D++ presentation, we have a slide where we talk about Iterative Label Refinement.
The main idea is to do multiple rounds of label generation for the same dataset using the re-trained models from the previous auto-labelled training round.