Plugin creating two instances

To re-create this issue:
git clone https://github.com/imsnif/multitask.git
cd multitask
git checkout version_39
cargo build
cp target/wasm32-wasi/debug/multitask.wasm ~/zellij-plugins

Then run
zellij action launch-or-focus-plugin file:$HOME/zellij-plugins/multitask.wasm --configuration "shell=$SHELL,cwd=`pwd`"

twice. The first time everything should work as intended. The second time and all subsequent times, two instances of the multitask file will open in two different panes, i.e., two instances of the plugin are running. This persists even if I close and re-open a new zellij session.
If I clear the ~/.cache/zellij folder, then the plugin works as intended the first time I re-run it, but again opens two instances afterward.
This is a new issue I'm only seeing with zellij 0.39.0.

@imsnif Any ideas on what may be causing this?

Does it happen if you give it an absolute path without the $HOME?

@imsnif Yeah, I'm still seeing it even with an absolute path rather than $HOME.

Hey yeah - I looked into this a little bit. I think some event ordering changed in the recent version and this plugin was relying on this ordering (my bad!) - a good way to fix this might be to make opening the multitask environment atomic. So that if we did it once, we will never do it again until the plugin is reloaded. Maybe some conditional around here: https://github.com/imsnif/multitask/blob/main/src/main.rs#L64

@imsnif I gave this a shot and also added some print statements to get some more info. I'm using a bool on the state to try and ensure we only open the plugin once. Here is the diff:
diff --git a/src/main.rs b/src/main.rs
index ed353ac..09009bd 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -25,6 +25,7 @@ struct State {
     plugin_id: Option<u32>,
     shell: String,
     cwd: Option<PathBuf>,
+    was_opened: bool,
 }

 impl ZellijPlugin for State {
@@ -45,6 +46,8 @@ impl ZellijPlugin for State {
             Some(s) => Some(PathBuf::from(s)),
             _ => None
         };
+        eprintln!{"RUNNING LOAD for ID {}", self.plugin_id.unwrap()};
+        eprintln!{"Zellij PID: {}",get_plugin_ids().zellij_pid}
         show_self(true);
     }

@@ -61,7 +64,14 @@ impl ZellijPlugin for State {
                     // we clean up our state and start over, allowing the plugin to be triggered by
                     // a keybinding
                     hide_self();
-                    self.start_multitask_env();
+                    eprintln!{"RUNNING PANE UPDATE for ID {}", self.plugin_id.unwrap()};
+                    eprintln!{"Status of was opened: {}", self.was_opened};
+                    if !self.was_opened
+                    {
+                        self.was_opened = true;
+                        eprintln!{"Status of was opened: {}", self.was_opened};
+                        self.start_multitask_env();
+                    }
                 } else if let Some(running_tasks) = &mut self.running_tasks {
                     running_tasks.update_task_status(&pane_manifest);
                     if running_tasks.all_tasks_completed_successfully() {

However, I'm still seeing the same issue.
I checked the log to see the status of my print statements:
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.773 [id: 2     ] RUNNING LOAD for ID 2
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.773 [id: 2     ] Zellij PID: 37983
ERROR  |???                      | 2023-11-11 09:02:21.773 [screen    ] [/home/leake/.cargo/registry/src/index.crates.io-6f17d22bba15001f/zellij-server-0.39.0/src/screen.rs:822]: a non-fatal error occured

Caused by:
    0: Failed to switch to active tab at position 1 for client id: 2
    1: active tab not found for client 2
INFO   |zellij_server            | 2023-11-11 09:02:21.774 [async-std/runti] [/home/leake/.cargo/registry/src/index.crates.io-6f17d22bba15001f/zellij-server-0.39.0/src/lib.rs:917]: Compiling plugins using Cranelift
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.792 [id: 2     ] RUNNING LOAD for ID 2
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.792 [id: 2     ] Zellij PID: 37983
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.795 [id: 2     ] RUNNING PANE UPDATE for ID 2
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.795 [id: 2     ] Status of was opened: false
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.795 [id: 2     ] Status of was opened: true
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.795 [id: 2     ] RUNNING PANE UPDATE for ID 2
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.795 [id: 2     ] Status of was opened: false
DEBUG  |/home/leake/.zellij_plugi| 2023-11-11 09:02:21.795 [id: 2     ] Status of was opened: true

It looks like the call to load was made twice for plugin ID 2, which ultimately means two calls are made to the pane update. I can see within the pane update that the state of was_opened is changed correctly, but when the second pane update fires the was_opened variable is still set to false. I'm guessing there is either:

Something I don't understand here about how the State works. This could definitely be an error on my part as I'm new to Rust and potentially have made some rookie mistake. Maybe using the plugin State wasn't what you had in mind and I misinterpreted your recommendation (sorry if that is the case).
There are two instances of the plugin open, each with its own version of State.

One other interesting thing to note. If I use start-or-reload-plugin rather than launch-or-focus-plugin the issue goes away. In the logs, I also only see one call to load and one call to the pane update. However, it seems like the --configuration  is not applied correctly when I re-open the plugin, e.g., if I change the shell variable on subsequent calls to start-or-reaload-plugin it still has the same value it had from the first initial call.

@imsnif I compiled zellij from GitHub using the devel instructions so I could start to dump stack traces and try to figure out why the plugin was being loaded twice. I'm very unfamiliar with the internals of zellij, so I'm doing some speculating in the paragraphs that follow: please take it all with a huge grain of salt. I also have the stack traces from the zellij log at the end if you're interested.
The load_plugin command in zellij-server/src/plugins/wasm_bridge.rs is only being called once. However, when I added a stack trace on get_store in zellij-server/src/lib.rs I saw two separate stack traces, which means that it is getting called twice. I chose get_store since I saw that the plugin looked like it was being compiled twice (I think leading to it being loaded twice and ultimately two multitask windows being loaded).
It looks like create_plugin_environment is called once during start_plugin and then again by clone_instance_for_other_clients (which I think makes sense since each client would need to start the plugin). Is it possible that zellij has itself as a client so it is creating the plugin environment twice?
Click to expand the full stack trace
INFO   |zellij_server::plugins::w| 2023-12-02 07:17:40.877 [wasm      ] [zellij-server/src/plugins/wasm_bridge.rs:123]: Backtrace from load_plugin in WASM bridge:    0: zellij_server::plugins::wasm_bridge::WasmBridge::load_plugin
             at ./zellij-server/src/plugins/wasm_bridge.rs:123:69
   1: zellij_server::plugins::plugin_thread_main
             at ./zellij-server/src/plugins/mod.rs:187:24
   2: zellij_server::init_session::{{closure}}
             at ./zellij-server/src/lib.rs:844:17
   3: std::sys_common::backtrace::__rust_begin_short_backtrace
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/sys_common/backtrace.rs:121:18
   4: std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/mod.rs:550:17
   5:  as core::ops::function::FnOnce<()>>::call_once
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/panic/unwind_safe.rs:271:9
   6: std::panicking::try::do_call
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:483:40
   7: __rust_try
   8: std::panicking::try
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:447:19
   9: std::panic::catch_unwind
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panic.rs:137:14
  10: std::thread::Builder::spawn_unchecked_::{{closure}}
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/mod.rs:549:30
  11: core::ops::function::FnOnce::call_once{{vtable.shim}}
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/ops/function.rs:507:5
  12:  as core::ops::function::FnOnce>::call_once
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/alloc/src/boxed.rs:2000:9
  13:  as core::ops::function::FnOnce>::call_once
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/alloc/src/boxed.rs:2000:9
  14: std::sys::unix::thread::Thread::new::thread_start
             at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/sys/unix/thread.rs:108:17
  15: start_thread
  16: __clone3
INFO   |zellij_server::plugins::p| 2023-12-02 07:17:43.497 [async-std/runti] [zellij-server/src/plugins/plugin_loader.rs:495]: Loaded plugin '/home/leake/.zellij_plugins/multitask.wasm' from cache folder at '/home/leake/.cache/zellij' in 1.815385558s
INFO   |zellij_server            | 2023-12-02 07:17:43.499 [async-std/runti] [zellij-server/src/lib.rs:920]: Backtrace from get_store:    0: zellij_server::get_store
at ./zellij-server/src/lib.rs:920:48
1: zellij_server::plugins::plugin_loader::PluginLoader::create_plugin_instance_env_and_subscriptions
at ./zellij-server/src/plugins/plugin_loader.rs:773:25
2: zellij_server::plugins::plugin_loader::PluginLoader::create_plugin_environment
at ./zellij-server/src/plugins/plugin_loader.rs:551:13
3: zellij_server::plugins::plugin_loader::PluginLoader::start_plugin::{{closure}}
at ./zellij-server/src/plugins/plugin_loader.rs:175:32
4: core::result::Result<T,E>::and_then
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/result.rs:1372:22
5: zellij_server::plugins::plugin_loader::PluginLoader::start_plugin
at ./zellij-server/src/plugins/plugin_loader.rs:171:9
6: zellij_server::plugins::wasm_bridge::WasmBridge::load_plugin::{{closure}}
at ./zellij-server/src/plugins/wasm_bridge.rs:195:23
7: <async_std::task::builder::SupportTaskLocals as core::future::future::Future>::poll::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-std-1.11.0/src/task/builder.rs:199:17
8: async_std::task::task_locals_wrapper::TaskLocalsWrapper::set_current::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-std-1.11.0/src/task/task_locals_wrapper.rs:60:13
9: std::thread::local::LocalKey::try_with
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/local.rs:446:16
10: std::thread::local::LocalKey::with
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/local.rs:422:9
11: async_std::task::task_locals_wrapper::TaskLocalsWrapper::set_current
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-std-1.11.0/src/task/task_locals_wrapper.rs:55:9
12: <async_std::task::builder::SupportTaskLocals as core::future::future::Future>::poll
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-std-1.11.0/src/task/builder.rs:197:13
13: async_executor::Executor::spawn::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.4.1/src/lib.rs:144:19
14: <core::pin::Pin as core::future::future::Future>::poll
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/future/future.rs:124:9
15: async_task::raw::RawTask<F,T,S>::run
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-task-4.2.0/src/raw.rs:489:20
16: async_task::runnable::Runnable::run
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-task-4.2.0/src/runnable.rs:309:18
17: async_executor::Executor::run::{{closure}}::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.4.1/src/lib.rs:235:21
18: <futures_lite::future::Or<F1,F2> as core::future::future::Future>::poll
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-lite-1.13.0/src/future.rs:529:33
19: async_executor::Executor::run::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.4.1/src/lib.rs:242:31
20: <futures_lite::future::Or<F1,F2> as core::future::future::Future>::poll
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-lite-1.13.0/src/future.rs:529:33
21: async_io::driver::block_on
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.13.0/src/driver.rs:146:33
22: async_global_executor::reactor::block_on::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/reactor.rs:3:18
23: async_global_executor::reactor::block_on
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/reactor.rs:12:5
24: async_global_executor::threading::thread_main_loop::{{closure}}::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/threading.rs:95:17
25: std::thread::local::LocalKey::try_with
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/local.rs:446:16
26: std::thread::local::LocalKey::with
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/local.rs:422:9
27: async_global_executor::threading::thread_main_loop::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/threading.rs:89:13
28: std::panicking::try::do_call
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:483:40
29: __rust_try
30: std::panicking::try
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:447:19
31: std::panic::catch_unwind
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panic.rs:137:14
32: async_global_executor::threading::thread_main_loop
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/threading.rs:88:12
33: core::ops::function::FnOnce::call_once
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/ops/function.rs:507:5
34: std::sys_common::backtrace::_rust_begin_short_backtrace
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/sys_common/backtrace.rs:121:18
35: std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/mod.rs:550:17
36: <core::panic::unwind_safe::AssertUnwindSafe as core::ops::function::FnOnce<()>>::call_once
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/panic/unwind_safe.rs:271:9
37: std::panicking::try::do_call
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:483:40
38: _rust_try
39: std::panicking::try
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:447:19
40: std::panic::catch_unwind
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panic.rs:137:14
41: std::thread::Builder::spawn_unchecked::{{closure}}
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/mod.rs:549:30
42: core::ops::function::FnOnce::call_once{{vtable.shim}}
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/ops/function.rs:507:5
43: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce>::call_once
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/alloc/src/boxed.rs:2000:9
44: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce>::call_once
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/alloc/src/boxed.rs:2000:9
45: std::sys::unix::thread::Thread::new::thread_start
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/sys/unix/thread.rs:108:17
46: start_thread
47: __clone3
INFO   |zellij_server            | 2023-12-02 07:17:43.500 [async-std/runti] [zellij-server/src/lib.rs:921]: Compiling plugins using Cranelift
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.576 [id: 1     ] Plugin load backtrace: unsupported backtrace
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.577 [id: 1     ] RUNNING LOAD for ID 1
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.578 [id: 1     ] Zellij PID: 45372
ERROR  |???                      | 2023-12-02 07:17:43.578 [screen    ] [zellij-server/src/screen.rs:825]: a non-fatal error occured
Caused by:
0: Failed to switch to active tab at position 0 for client id: 2
1: active tab not found for client 2
INFO   |zellij_server            | 2023-12-02 07:17:43.579 [async-std/runti] [zellij-server/src/lib.rs:920]: Backtrace from get_store:    0: zellij_server::get_store
at ./zellij-server/src/lib.rs:920:48
1: zellij_server::plugins::plugin_loader::PluginLoader::create_plugin_instance_env_and_subscriptions
at ./zellij-server/src/plugins/plugin_loader.rs:773:25
2: zellij_server::plugins::plugin_loader::PluginLoader::create_plugin_environment
at ./zellij-server/src/plugins/plugin_loader.rs:551:13
3: zellij_server::plugins::plugin_loader::PluginLoader::clone_instance_for_other_clients::{{closure}}
at ./zellij-server/src/plugins/plugin_loader.rs:720:40
4: core::result::Result<T,E>::and_then
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/result.rs:1372:22
5: zellij_server::plugins::plugin_loader::PluginLoader::clone_instance_for_other_clients
at ./zellij-server/src/plugins/plugin_loader.rs:718:17
6: zellij_server::plugins::plugin_loader::PluginLoader::start_plugin::{{closure}}
at ./zellij-server/src/plugins/plugin_loader.rs:186:17
7: core::result::Result<T,E>::and_then
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/result.rs:1372:22
8: zellij_server::plugins::plugin_loader::PluginLoader::start_plugin
at ./zellij-server/src/plugins/plugin_loader.rs:171:9
9: zellij_server::plugins::wasm_bridge::WasmBridge::load_plugin::{{closure}}
at ./zellij-server/src/plugins/wasm_bridge.rs:195:23
10: <async_std::task::builder::SupportTaskLocals as core::future::future::Future>::poll::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-std-1.11.0/src/task/builder.rs:199:17
11: async_std::task::task_locals_wrapper::TaskLocalsWrapper::set_current::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-std-1.11.0/src/task/task_locals_wrapper.rs:60:13
12: std::thread::local::LocalKey::try_with
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/local.rs:446:16
13: std::thread::local::LocalKey::with
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/local.rs:422:9
14: async_std::task::task_locals_wrapper::TaskLocalsWrapper::set_current
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-std-1.11.0/src/task/task_locals_wrapper.rs:55:9
15: <async_std::task::builder::SupportTaskLocals as core::future::future::Future>::poll
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-std-1.11.0/src/task/builder.rs:197:13
16: async_executor::Executor::spawn::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.4.1/src/lib.rs:144:19
17: <core::pin::Pin as core::future::future::Future>::poll
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/future/future.rs:124:9
18: async_task::raw::RawTask<F,T,S>::run
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-task-4.2.0/src/raw.rs:489:20
19: async_task::runnable::Runnable::run
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-task-4.2.0/src/runnable.rs:309:18
20: async_executor::Executor::run::{{closure}}::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.4.1/src/lib.rs:235:21
21: <futures_lite::future::Or<F1,F2> as core::future::future::Future>::poll
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-lite-1.13.0/src/future.rs:529:33
22: async_executor::Executor::run::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-executor-1.4.1/src/lib.rs:242:31
23: <futures_lite::future::Or<F1,F2> as core::future::future::Future>::poll
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-lite-1.13.0/src/future.rs:529:33
24: async_io::driver::block_on
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-io-1.13.0/src/driver.rs:146:33
25: async_global_executor::reactor::block_on::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/reactor.rs:3:18
26: async_global_executor::reactor::block_on
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/reactor.rs:12:5
27: async_global_executor::threading::thread_main_loop::{{closure}}::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/threading.rs:95:17
28: std::thread::local::LocalKey::try_with
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/local.rs:446:16
29: std::thread::local::LocalKey::with
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/local.rs:422:9
30: async_global_executor::threading::thread_main_loop::{{closure}}
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/threading.rs:89:13
31: std::panicking::try::do_call
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:483:40
32: __rust_try
33: std::panicking::try
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:447:19
34: std::panic::catch_unwind
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panic.rs:137:14
35: async_global_executor::threading::thread_main_loop
at /home/leake/.cargo/registry/src/github.com-1ecc6299db9ec823/async-global-executor-2.3.1/src/threading.rs:88:12
36: core::ops::function::FnOnce::call_once
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/ops/function.rs:507:5
37: std::sys_common::backtrace::_rust_begin_short_backtrace
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/sys_common/backtrace.rs:121:18
38: std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/mod.rs:550:17
39: <core::panic::unwind_safe::AssertUnwindSafe as core::ops::function::FnOnce<()>>::call_once
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/panic/unwind_safe.rs:271:9
40: std::panicking::try::do_call
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:483:40
41: _rust_try
42: std::panicking::try
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panicking.rs:447:19
43: std::panic::catch_unwind
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/panic.rs:137:14
44: std::thread::Builder::spawn_unchecked::{{closure}}
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/thread/mod.rs:549:30
45: core::ops::function::FnOnce::call_once{{vtable.shim}}
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/core/src/ops/function.rs:507:5
46: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce>::call_once
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/alloc/src/boxed.rs:2000:9
47: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce>::call_once
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/alloc/src/boxed.rs:2000:9
48: std::sys::unix::thread::Thread::new::thread_start
at /rustc/fc594f15669680fa70d255faec3ca3fb507c3405/library/std/src/sys/unix/thread.rs:108:17
49: start_thread
50: __clone3
INFO   |zellij_server            | 2023-12-02 07:17:43.579 [async-std/runti] [zellij-server/src/lib.rs:921]: Compiling plugins using Cranelift
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.602 [id: 1     ] Plugin load backtrace: unsupported backtrace
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.604 [id: 1     ] RUNNING LOAD for ID 1
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.604 [id: 1     ] Zellij PID: 45372
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.659 [id: 1     ] RUNNING PANE UPDATE for ID 1
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.659 [id: 1     ] Status of was opened: false
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.659 [id: 1     ] Status of was opened: true
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.659 [id: 1     ] RUNNING PANE UPDATE for ID 1
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.659 [id: 1     ] Status of was opened: false
DEBUG  |/home/leake/.zellij_plugi| 2023-12-02 07:17:43.660 [id: 1     ] Status of was opened: true

@imsnif Just sending a gentle reminder for the message above. I'm curious if this could be something in the zellij core that is causing the plugin to be loaded twice.

Hey, I'm really sorry for taking so long to get to this. As always, I'm incredibly swamped and don't have enough resources to deal with everything that needs to be dealt with in Zellij.
I hope to get to this soon. If you'd like to do some debugging with Zellij itself and find out what's happening, that would be great. I realize this is a tall order though. So if you'd rather wait for me, I can only ask you for your patience and thank you for your consistency. I have not forgotten you, I'm however only one person :/

@imsnif No sweat at all. Just wanted to send a reminder, since I know it's easy for stuff to get buried. Thanks again for all the amazing work you do with zellij!
I'm a bit swamped at work as well (so have had less time for this than I'd like). I can try to do some debugging if I get some spare time over the next few weeks, but would appreciate any help you can provide whenever you have the chance (no rush).

@imsnif Okay, I figured out what is happening, but am not sure of the correct fix. Again, no rush on this, just wanted to put this message here as a nice summary whenever you get around to it.

Whenever we call zellij from within a session e.g., zellij edit <file> or zellij action <action>, it creates a new client. This comes in the form of a new listener, which spins up a new route_thread_main with a new client ID.
When calling start-or-reload-plugin, the client_id of route_thread_main is never passed on to the WASM bridge that loads the plugin. Hence, this plugin is only loaded for the connected_clients, and is only called once.
Other actions like launch-plugin or launch-or-focus-plugin do pass the client_id from route_thread_main onward. So when they are loaded, their client_id may be 2, while the main connected session has a client_id of 1. This causes the plugin to be loaded for each of them, which is why the plugin was being loaded twice.

I'm not familiar enough with the zellij core to know which fix to pursue, but am listing some suggestions that came to mind below:

Modify the Load PluginInstruction in zellij-server/src/plugins/mod.rs to be more like Reload, where it doesn't pass the client_id on, i.e., passes a client_id of None. I tested this out locally and it works for me; the plugin load is only called once now when I run launch-or-focus-plugin. However, I'm not sure if this breaks other functionality, so I'm not sure if it is a good fix.
Modify how the zellij binary works from within a running session so that it uses that session's route_thread_main rather than creating a new one. Alternatively, allow creating a new route_thread_main but make it pass the client ID of the already existent session. Again, not sure if this is a good idea, but might be a possible fix.

@imsnif Just sending a gentle reminder so this doesn't get lost. No rush, on it as I know you are very busy. In the comment above I believe I've identified the issue and have a proposed fix to the zellij core. If you like the proposed fix let me know and I'll submit it as a PR on the zellij core.

A recent commit on the zellij core fixed this :)

This was fixed by zellij pipes in this commit.
The introduction of pipes differentiates the CLI client from the connected client.
This differentiation also includes logic to keep the plugin from loading for the CLI client (this is what was causing this issue).
Therefore, this will be fixed in the next zellij release.

I am very happy to hear this @leakec - and you have my sincerest apologies for ignoring this issue for so long. I was honestly meaning to take a deeper look at it in the next week or two.
Thanks for all your hard work and for your patience!

No sweat. I know you're super busy, and thank you for all you do for this amazing tool!


feat(icons): added calendar-cog icon

What is the purpose of this pull request?

[x] New Icon
[ ] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other:

Description

Adds a calendar with a cog in the bottom right.
Icon use case

Can be used in the following circumstances:

Settings related to a calendar
Settings related to events

Alternative icon designs

Icon Design Checklist
Concept

[x] I have provided valid use cases for each icon.
[x] I have not added any a brand or logo icon.
[x] I have not used any hate symbols.
[x] I have not included any religious or political imagery.

Author, credits & license

[ ] The icons are solely my own creation.
[ ] The icons were originally created in # by @
[x] I've based them on the following Lucide icons:

user-cog
calendar-search

[ ] I've based them on the following design:

Naming

[x] I've read and followed the naming conventions
[x] I've named icons by what they are rather than their use case.
[x] I've provided meta JSON files in icons/[iconName].json.

Design

[x] I've read and followed the icon design guidelines
[x] I've made sure that the icons look sharp on low DPI displays.
[x] I've made sure that the icons look consistent with the icon set in size, optical volume and density.
[x] I've made sure that the icons are visually centered.
[x] I've correctly optimized all icons to three points of precision.

Before Submitting

[x] I've read the Contribution Guidelines.
[x] I've checked if there was an existing PR that solves the same issue.

Cleaned up
Open lucide studio

@jguddas I've applied you changes, let me know if there's anything else I need to do.


Deprecate theme-park

Most apps have a native dark mode then now, I'm not using theme park anymore.

This pull request involves significant changes to the apps/theme-park directory, primarily focusing on simplifying the Dockerfile, removing CI configuration files, and cleaning up metadata. Below is a summary of the most important changes:
Dockerfile Simplification:

apps/theme-park/Dockerfile: Removed the entire Dockerfile, including the base image, ARGs, RUN commands for installing dependencies, and setting up the Nginx environment.

CI Configuration Removal:

apps/theme-park/ci/goss.yaml: Deleted the Goss configuration file that was used for process and port checks, as well as HTTP status checks.
apps/theme-park/ci/latest.sh: Removed the script that fetched the latest release version from the GitHub API.

Metadata Cleanup:

apps/theme-park/metadata.yaml: Deleted the metadata file that contained application details, semantic versioning, and release channels.

k


Use cypress config for resolution

fixes the below issues:
https://github.com/uktrade/cypress-image-diff/issues/65
and
https://github.com/uktrade/cypress-image-diff/issues/74

FYI @himbolion

:tada: This PR is included in version 1.17.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


bpf: lxc: fix source sec identity in hairpin trace notification

CB_SRC_LABEL is cleared just a few lines above. So to get the source's actual security identity, we need to use our local variable.
Fixes: e2829a061a53 ("bpf: lxc: support Pod->Service->Pod hairpinning with endpoint routes")
Fix the trace notification for hairpinned reply traffic, to indicate the correct security identity for the client.

/test


ONEM-22285: do not modify local json config files

Currently some local json files are modified in the plugin repository:
$ git status
modified:   ActivityMonitor/ActivityMonitor.json
modified:   ContinueWatching/ContinueWatching.json
modified:   DeviceDiagnostics/DeviceDiagnostics.json
modified:   FrameRate/FrameRate.json
modified:   StateObserver/StateObserver.json
modified:   Warehouse/Warehouse.json
This fix solves this problem, by adding generated.json suffix to
generated files.

@bramoosterhuis / @sebaszm are we expecting this ?

Do I understand correctly that the interface (the contract of how the functionality is exposed) is not stored in the contract repository but with an implementation ? So If I would build another implementation, exposing the same contract I have to find the interface at a location that implemented it for the first time?
Bottomline: They are bypassing the ThunderInterfaces repository?
Is that a correct assumption?

Correct.

@Vinodsathyaseelan / @vijs looks like the RDK plugins are not properly using the Interface repository (https://github.com/rdkcentral/ThunderInterfaces).
@vijs could you ask the developers to move the interface specifications to the proper location, so that this pull-request is obsolete and the interfaces (contracts) are in the correct location.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Michal Kucharczyk seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


typson can't handle functions?

I'd like to handle the following code using typson.
interface Foo {
foo(): void;
}
But, the typson outputs some error.
Doesn't typson support functions?

Any news on this?

This issue is still reproducible
interface Foo {

    init();

}

will cause typson to fail.


Update cookie banner component to follow convention

replace content parameter so that either text or html parameters, so
that both can be used
update template to accept text (as default) or html parameters, where
html is marked as safe
add functionality to specify html attributes that get appended to the
element
update YAML file to reflect new parameters
update table of arguments to reflect changes
update example in cookie-banner.njk file
change message container css class:
.govuk-c-cookie-banner__text is too specific, so its been updated to
.govuk-c-cookie-banner__message

:)

i get this in the macro then:
"html": "GOV.UK uses cookies to make the site simpler. <a href="https://www.gov.uk/help/cookies\">Find out more about cookies"

Can you not use single quotes for the entire string, then you can use double quotes inside the HTML?

Sorry, now you've edited your comment, I think that's fine too. Happy with escaping or single quotes.


feat: external next

Closes #153

Codecov Report

Merging #161 (8865244) into release/next (a875a5d) will not change coverage.
The diff coverage is n/a.

@@              Coverage Diff              @@
##           release/next     #161   +/-   ##
=============================================
  Coverage         78.47%   78.47%
=============================================
  Files                29       29
  Lines              1059     1059
  Branches            192      192
=============================================
  Hits                831      831
  Misses              228      228

Continue to review full report at Codecov.

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

Codecov Report

Merging #161 (56e7fe9) into release/next (a875a5d) will not change coverage.
The diff coverage is n/a.

@@              Coverage Diff              @@
##           release/next     #161   +/-   ##
=============================================
  Coverage         78.47%   78.47%
=============================================
  Files                29       29
  Lines              1059     1059
  Branches            192      192
=============================================
  Hits                831      831
  Misses              228      228

Continue to review full report at Codecov.

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


bugs of reading id3 tags

I rarely get some garbage characters.
Maybe iso or utf16-be or something...

detecting little edian in iso-8859-1


Add envfrom parameters

What this PR does / why we need it:
Allow extra environment variables from secrets or configmaps.
(my usecase: added custom userparameters, which use some passwords. This password can set from secrets with env)
Special notes for your reviewer:
I hesitated the right variable name (envFrom vs extraEnvFrom). i checked some other helm charts, and more use envFrom names.
like traefik, filebeat (with extraEnvs and extraVolumes).
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[ ] DCO signed
[ ] Chart Version bumped
[ ] Variables are documented in the README.md

Hey!
Thank you for your contribution.
But I think extraEnv can be refactored to add support for the same functionality as envFrom. This avoids confusion for users of helm charts.
What do you think? Could you make this change or can I make it?
The final solution is to change each template file:
before (example):
           {{- range $item := .Values.zabbixServer.extraEnv }}
            - name: {{ $item.name }}
              value: {{ $item.value | quote }}
            {{- end }}

after:
            {{- with .Values.zabbixServer.extraEnv }}
              {{- toYaml . | nindent 12 }}
            {{- end }}

The final values can be:
  extraEnv:
    - name: "ZBX_EXAMPLE_MY_ENV_1"
      value: "true"
    - name: "ZBX_EXAMPLE_MY_ENV_2"
      value: "false"
    - name: "ZBX_EXAMPLE_MY_ENV_3"
      value: "100"
    - name: MY_USERNAME
      valueFrom:
        secretKeyRef:
          name: my-envs
          key: user
    - name: MY_PASSWORD
      valueFrom:
        secretKeyRef:
          name: my-envs
          key: password

Did you understand the suggestion?

Hi @Elbandi!
I launched the version 4.4.1. See:

https://github.com/zabbix-community/helm-zabbix/releases/tag/zabbix-4.4.1
https://github.com/zabbix-community/helm-zabbix/pull/95

Please sync this changes in your local branch

Hello @Elbandi!
I published a new chart version to support Zabbix 7.0 and added the improvements suggested in this PR, but I keep your credits related the idea and implementation.
More details: https://github.com/zabbix-community/helm-zabbix/pull/96
I will close this PR to avoid code conflicts
Thanks for your contribution.


Add checks to ensure model has been fitted before running explain global/local

Called the check_is_fitted() function from the sklearn library to ensure that user receives a helpful error message when they try to get the local or global explanation without fitting the model

Hi @chhetri22,
Looks good. This will be in the next release. Thanks for the PR!


Add more profiles to appveyor build

NGEN'ing fsc-proto.exe seems to have reduced build time on AppVeyor.  Trialling adding more PCL libraries to the build (profile 259 is still missing)

:+1:

Looks good to me.


LexerImpl Unit Tests

Added unit tests for the LexerImpl class and did some minor renaming and minor refactoring in LexerImpl to improve clarity (no functional changes -- just adding tests at this time). Also added log4j debug level log statements in LexerImpl, PebbleEngine and LexerImpl that were useful to me when trying to follow the code. Added logback-test.xml to configure the logging level. Disabled the debug logging by default. Also removed Hamcrest Matchers and replaced references to Hamcrest in exception testing code with AssertJ.

Good job !


TB-3641: add semantics label where needed

What 🕵 🔍

What does the pull request solve?
What exactly was added or modified?

How to test 🥼 🔬

A brief description of the steps required for proper testing

Screenshots 📸 📱

Before
After

References 📝 🔗

source name

Codecov Report

Merging #100 (575447e) into main (1badb5f) will increase coverage by 0.04%.
The diff coverage is 66.66%.

@@            Coverage Diff             @@
##             main     #100      +/-   ##
==========================================
+ Coverage   46.83%   46.87%   +0.04%
==========================================
  Files          58       58
  Lines        2099     2112      +13
==========================================
+ Hits          983      990       +7
- Misses       1116     1122       +6

Impacted Files
Coverage Δ

...idget/nav_bar/widget/nav_bar_item/back_button.dart
92.85% <50.00%> (-7.15%)
:arrow_down:

...idget/nav_bar/widget/nav_bar_item/icon_button.dart
92.59% <50.00%> (-7.41%)
:arrow_down:

lib/src/widget/nav_bar/data/nav_bar_item.dart
93.33% <75.00%> (-6.67%)
:arrow_down:

lib/src/widget/button/app_ghost_button.dart
43.63% <100.00%> (+2.12%)
:arrow_up:

Continue to review full report at Codecov.

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


Client automatically starts terminated clusters without any indication it has done so

It seems that if you connect to a terminated cluster using this client and try to run something, it will take care of automatically starting the cluster for you. That's neat.
But I think there should be some indication -- an INFO message, perhaps -- that the cluster was terminated and is being started. It's a judgement call, but it seems inappropriate to modify infrastructure quietly.

Autostarting the compute is a feature of Databricks itself, not this connector.
When databricks-sql-connector runs a query, it doesn't know whether the target compute is terminated or not. And this information is not passed to the Python driver. If SQL gateway restarts a terminated compute instance, this is invisible to Python which means it's not something we can expose in the Python logs.


[PHPStanRules]  ensure no superflous / or \ in check isInDirectoryNamed()

Fixes #2662
ref https://3v4l.org/OCsD5

/cc @mfn

All checks have passed 🎉 @TomasVotruba it is ready for review.

Thank you :+1:


fix for #4049

Fix for #4049 and probably for #4032

@mghiglieri you have lint errors, probably the removed newline.

@viggo-devries I added a newline at the end.

@mghiglieri unfortunately this breaks gives a syntax error in postgres.

you would have to make this work in both postgres and mysql @mghiglieri  this was reverted.


Ability Checks are modified by negative values

Rolling a base ability check (INT, WIS, etc) subtracts the ability score from the d20 roll but I believe it should be adding it.

I think the check is correct, but the way it's presented to the user is outrageous.
 It's not an additive check, but a comparison. Check. Saves, on the other hand, are additive and are probably what you wanted, here.
That is to say, that a successful check means the final result is a 0 or less. This is not intuitive at all, as presented. It's literally the oldest chat card in the system and needs replacing. I'll prioritize this, as it's long overdue.
Does that match your understanding? It gets confusing because the PHB is ambiguous on this matter.

PHB223 describes a critical failure as rolling the minimum score on a check, and specifies that as a natural 1 on, say, a con check.
PHB152 again describes a natural 1 as a critical failure.
PHB153 provides an example (and finally specifies the formula as d20p versus Con) and calls a result of 1 a success!
PHB137 introduces a flaw which causes an ability check to fumble on a 19 or 20.
This same flaw causes the player to fumble in combat on a 1 or a 2.

The inference to me is that in a check, higher is bad (and this flaw doubles the 'threat range'), and the sidebar on PHB223 is wrong. Otherwise, how do you fail a con check?
GMG69 mentions a con check as being d20 vs. CON, which is surprisingly the first (and only) time it's ever outright states this. I am more than willing to be wrong about all of this if you can show me otherwise. I also think Hackmaster sometimes uses words like 'save' and 'check' interchangeably and leaves it up to the reader to interpret what they actually want you to do.

@n0q thank you for your thorough feedback! I've only been running Hackmaster for about a year so i'm not overly confident in all of the rulings. Last night my players were confused by the results when i had them roll a CON check (and consulted the chapter on Death and Dying).
We really appreciate all the work you've put into this module, it makes running Hackmaster so much more managable

I really appreciate that people enjoy using the system. Comments like that mean a lot to me.
As you can see, the problem is that the rules are inconsistent on what a check is. I believe in most cases it matches your definition, but other times it doesn't. I'm not entirely sure this is a problem to be fixed. The output itself is bad, of course. The player shouldn't be left to figure out that less than 1 is good. That has to get fixed. But I am beginning to think that "Save" and "Check" is a losing proposition.
Would you be less confused if the two buttons were more literal? Something like:
Roll Under Ability vs d20p + Ability?

I've re-read some of the sections and i'm still confused about the design intentions:
For example, Delray is a fighter possessing 13/22 Con- stitution. A troll bites him with such savagery as to knock him to -5 hit points. If he possessed the Resolute Talent, he would have the opportunity to roll a d20p and, should he roll 1-13 (the CON check), he would immediately revive. Upon reviving, he has d8 hit points. He rolls 7 thus tem- porarily gains 12 hit points (5 to bring him up to zero plus d8 additional hit points). At the end of 30+5d12p seconds, these extra hit points vanish leaving him again at -5 hit points.

The passage above suggests what you have explained: the player rolls a penetrating d20 for a CON check, attempting to roll between 1 and 13. I find this odd because, firstly, in the case of a penetrating dice, it is detrimental to the player (since a 'good' roll would probably put them well above their ability score). This does seem in line with hackmaster though, so maybe that's intended. Secondly, though, as you mentioned, rolling a '1' is considered an auto failure? Perhaps this isn't supposed to apply to Ability Checks.
I can only guess that GMG69 is mean to refer to an "opposed" check?  Re-reading and trying to understand, i think i'm learning that:

checks are attempting to roll between 1 and Ability Score. natural 20's are actually crit failures
opposed checks are additive, rolling for the higher value against the GM's roll
saves are meant to be additive as well (mental saving throw modifiers, for example, are all positive numbers) since there is usually a threshold to beat

I think that changing the buttons, adding another "Opposed Check" button or maybe a description along with the roll explaining why it succeeded or failed might be helpful?


llua.lua helper bug

Describe your problem here.

Are you modding a build from source or with Lua?
Source
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
no

haxelib git linc_luajit https://github.com/superpowers04/linc_luajit master

Thank you

np


Scripts

Addressing #770 and #765.

@kaiidams -- this is in response to your recent issues. If you have some time, please take a look at it.

@tarekgh, @kaiidams -- I need to bother you with a re-review. I've added limited support for additional types in TorchScript, and that code needs some checking. Specifically, it's the passing of TensorOrScalar to and from native code, as well as the processing of arguments and return values on either side.


Autocomplete Input

Hi all
This is a feature request
I just wonder, if it would be possible to create an autocomplete-text-input with the already existing functionality.
What I miss in multiple component libraries: a autocomplete input textfield that is a mix of textinput and select. The idea behind is: a free-text input element, where user can enter everything he wants, but when typing, it should automatically suggest values that are already known. But it also shall accept a new unknown value.
On the one hand we can use select with search functionality - but this doesn't accept new values...
But what if the search-dropdown of the select-input could be added to a text-input that opens up when typing? maybe many code can be reused?
I know currently one library out there that offers such a functionality: tagify.js - when disabling "enforceWhitelist" and using this example: https://yaireo.github.io/tagify/#section-mode-select
nevertheless - since I use tailwind elements for multiple things, I'd appreciate such a component...

@renky did you check the select input with data-te-select-filter: https://tw-elements.com/docs/standard/forms/select/#search ?

@renky did you check the select input with data-te-select-filter: https://tw-elements.com/docs/standard/forms/select/#search Maybe this is what you are looking for.

Hi AlxndrVgt: sure... but it doesn't fit. Autocomplete would also accept new values - it is a component mix of select and input-text ... search-option only searches in the given select-values.

@renky I think we should be adding the component on the 1.1.0 version.

I have the same problem as @renky; I need a field that allows the user to select multiple options while being able to search in a very extensive list of option data. This is not viable unless it is done via server.
Here is an example of the idea:

Just as @renky said  https://yaireo.github.io/tagify/#section-mode-select, it offers this kind of service. In my case, I use https://choices-js.github.io/Choices/, which is a similar tool. However, the components of TW-Elements are far easier and more reliable to use, especially when used together with Tailwind.

Hi @Eduardo-XavierPaula, we have something similar on our list of ideas, so it may be added in the future.


Distinguish amberctl list and amberctl query

amberctl list lists all services, and optionally the instances registered under each.
amberctl query queries all instances, and optionally shows the service to which each belongs.
Although they have different purposes, perhaps it's easy to make one command that serves both purposes with minimal fiddlement.

There's a better use of list (or ls): display the services, and optionally the rules for selecting instances attached to those services -- it's not possible to do that at the minute.

Closed by d57a17949cf474447963df56983627c2fc0913c0


Can't connect to display on Ubuntu bash shell (running as subsystem on Windows 10)

Hello there!
nemo@Skyzerks:/mnt/e/_Workspace/FEM/attempt/glvis-3.4$ ./glvis -m ../mfem-3.4/data/star.mesh

       _/_/_/  _/      _/      _/  _/
    _/        _/      _/      _/        _/_/_/
   _/  _/_/  _/      _/      _/  _/  _/_/
  _/    _/  _/        _/  _/    _/      _/_/
   _/_/_/  _/_/_/_/    _/      _/  _/_/_/

Generating coloring starting with element 19 / 20
Number of colors: 3
Can't connect to display!
Initializing the visualization failed.

Wanted to look at how it will display a mesh example as I intend to build a custom mesh to use it in my magister work. Would be great to get a solution to this as soon as possible. Thanks~

Installed xinit package sudo apt-get install xinit. But after I tried to run it I got:
At first there was a (EE) parse_vt_settings: Cannot open /dev/tty0 (No such file or directory). Tried to fix it with the instructions from here. So I run sudo apt remove xserver-xorg-legacy and
sudo apt install aptitude
sudo aptitude purge xserver-xorg-legacy

to remove it. But...a new problem was found.
nemo@Skyzerks:/mnt/e/_Workspace/FEM/attempt/glvis-3.4$ sudo xinit
[sudo] password for nemo:

X.Org X Server 1.19.6
Release Date: 2017-12-20
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.4.0-138-generic x86_64 Ubuntu
Current Operating System: Linux Skyzerks 4.4.0-17134-Microsoft #345-Microsoft Wed Sep 19 17:47:00 PST 2018 x86_64
Kernel command line: BOOT_IMAGE=/kernel init=/init ro
Build Date: 25 October 2018  04:11:27PM
xorg-server 2:1.19.6-1ubuntu4.2 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.34.0
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri Nov  2 13:41:06 2018
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(EE)
Fatal server error:
(EE) parse_vt_settings: Cannot open /dev/tty0 (Input/output error)
(EE)
(EE)
Please consult the The X.Org Foundation support
         at http://wiki.x.org
 for help.
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
(EE)
(EE) Server terminated with error (1). Closing log file.
xinit: XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
connection to X server lost      after 7 requests (7 known processed) with 0 events remaining.

So, as a result I installed Xming as a "recommended" Xserver for Windows. It did get a different result:
nemo@Skyzerks:/mnt/e/_Workspace/FEM/attempt/glvis-3.4$ export DISPLAY=:0
nemo@Skyzerks:/mnt/e/_Workspace/FEM/attempt/glvis-3.4$ ./glvis -m ../mfem-3.4/data/pipe-nurbs.mesh

       _/_/_/  _/      _/      _/  _/
    _/        _/      _/      _/        _/_/_/
   _/  _/_/  _/      _/      _/  _/  _/_/
  _/    _/  _/        _/  _/    _/      _/_/
   _/_/_/  _/_/_/_/    _/      _/  _/_/_/

Generating coloring starting with element 7 / 8
Number of colors: 2

The requested multisample mode is not available. Multisampling disabled.

WARNING: Application calling GLX 1.3 function "glXCreateWindow" when GLX 1.3 is not supported!  This is an application bug!
X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  143 (GLX)
  Minor opcode of failed request:  31 (X_GLXCreateWindow)
  Serial number of failed request:  29
  Current serial number in output stream:  32

but not the one I was expecting. Got any ideas on how to move on?

You can try building GLVis with the option GLVIS_GLX10. If you are using GNU make, add -DGLVIS_GLX10 to the definition of the makefile variable GL_OPTS here:
https://github.com/GLVis/glvis/blob/1a4bfd863bad1dba52198d7667858a8f7c8293e5/makefile#L119
If you are using CMake, add -D GLVIS_USE_GLX10=ON to the cmake configuration command line.

The config file you attached is for MFEM -- the define I was talking about is for building GLVis. Since you are not using GNU make or CMake, what you need to do is add an option to your compiler options (when building GLVis) that defines the C/C++ macro GLVIS_GLX10. For most compilers this is done by adding the compiler flag -DGLVIS_GLX10.

@v-dobrev uncommented the 120 line in the makefile for glvis-3.4
GL_OPTS = -I$(X11_DIR)/include -DGLVIS_GLX10
And the visualization now up and running. But do have a question though.
nemo@Skyzerks:/mnt/e/_Workspace/FEM/attempt/glvis-3.4$ export DISPLAY=:0
nemo@Skyzerks:/mnt/e/_Workspace/FEM/attempt/glvis-3.4$ ./glvis -m ../mfem-3.4/data/star.mesh

       _/_/_/  _/      _/      _/  _/
    _/        _/      _/      _/        _/_/_/
   _/  _/_/  _/      _/      _/  _/  _/_/
  _/    _/  _/        _/  _/    _/      _/_/
   _/_/_/  _/_/_/_/    _/      _/  _/_/_/

Generating coloring starting with element 2 / 20
Number of colors: 3

The requested multisample mode is not available. Multisampling disabled.

Subdivision factors = 16, 1
Shading type : non-conforming (with subdivision)

Is it a normal occurence that the "multisample mode is not available"?

The multisampling support depends on the X server - if it does not support it, GLVis cannot use it, so it is disabled.
You can try other multisample modes with the -ms option of GLVis, e.g. -ms 2 or -ms 8 (default is -ms 4).


Change npm -g install react-native-cli to sudo npm -g install react-native-cli

When setting up the mobile development environment, the developer documentation here mentions this:

The following command ran into a warning and several errors which can be seen in the screenshot below:

This basically occurs because npm has no write access. Changing it to sudo npm -g install react-native-cli worked perfectly fine because we ran the command as root/Administrator. Maybe the documentation should reflect this change?

Can you assign this to me please ?


[Question] regarding resourcepack

Do I really need to install the resourcepack for yuushya fabric 1.20.1?
can I just install the mods without the resourcepack? because I want the vanilla+ feels to my modpack, and by using your resourcepack I notice that every item model is changed for an example: emerald, flint and steel, and more.
or does there any resourcepack that not change the vanilla items and menu?
thank you

Basically the ressource pack complements the mod(some textures from the mod may look non-vanilla), but it's not required to make the mod work.

Some block will be black-and-purple because we had not used the correct texture lol

Thank you for the reply and clarification, then I will use the mod without the texturepack for now, I hope that someday the black and purple will be fixed :D


feat(query): add gt/gte/lt/lte to string comparators

Adds the ability to perform greater than, greater than or equal to, less than and less than or equal to operators on string data values.
In addition, fixed a typo in the number test suite for the description of lt comparators.
Discussion: https://github.com/mswjs/data/discussions/244

Released: v0.11.0 🎉
This has been released in v0.11.0!

📄 Release notes
📦 npm package

Make sure to always update to the latest version (npm i @mswjs/data@latest) to get the newest features and bug fixes.

Predictable release automation by @ossjs/release.


Split inverter data in MySQL database

Is it possible to split the inverter data to the MySQL table? Like so:

Inverter
Data
Time

111111
10kWh
10:30

222222
11kWh
10:30

333333
12kWh
10:30

111111
11kWh
10:40

222222
12kWh
10:40

333333
13kWh
10:40

Thank you

On Fri, Jul 10, 2015 at 12:31:02AM -0700, Zandor Smith wrote:

Is it possible to split the inverter data to the MySQL table? Like so:
Inverter ID     DATA      DATE
111111          10kWh    1
222222          11kWh    1
333333          12kWh    1
111111          11kWh    2
222222          12kWh    2
333333          13kWh    2

That's already being done iirc.
-Otto

But I don't want it to be splitted at PVOutput. Just in the MySQL table.

On Sun, Jul 12, 2015 at 10:40:14PM -0700, Zandor Smith wrote:

But I don't want it to be splitted at PVOutput. Just in the MySQL table.

It already does what you want in AGGREGATE mode: both individual and
aggregated values are sent to mysql.
-Otto

Is id 0 when sending aggregated values?
Van: Otto Moerbeek<EMAIL_ADDRESS>Verzonden: maandag 13 juli 2015 08:09
Aan: omoerbeek/e2pv
CC: Zandor Smith
Onderwerp: Re: [e2pv] Split inverter data in MySQL database (#8)
On Sun, Jul 12, 2015 at 10:40:14PM -0700, Zandor Smith wrote:

But I don't want it to be splitted at PVOutput. Just in the MySQL table.

It already does what you want in AGGREGATE mode: both individual and
aggregated values are sent to mysql.
-Otto
—
Reply to this email directly or view it on GitHub https://github.com/omoerbeek/e2pv/issues/8#issuecomment-120824160 .  https://github.com/notifications/beacon/AFydWb1ITm7SQtYmRIJNZ9Gq-Wow5j3Iks5oc01ugaJpZM4FV4gq.gif

yes, iirc. But check the code...
-Otto

On Mon, Jul 13, 2015 at 04:11:19AM -0700, Zandor Smith wrote:

Is id 0 when sending aggregated values?
Van: Otto Moerbeek<EMAIL_ADDRESS>Verzonden: maandag 13 juli 2015 08:09
Aan: omoerbeek/e2pv
CC: Zandor Smith
Onderwerp: Re: [e2pv] Split inverter data in MySQL database (#8)
On Sun, Jul 12, 2015 at 10:40:14PM -0700, Zandor Smith wrote:

But I don't want it to be splitted at PVOutput. Just in the MySQL table.

It already does what you want in AGGREGATE mode: both individual and
aggregated values are sent to mysql.
-Otto
???
Reply to this email directly or view it on GitHub https://github.com/omoerbeek/e2pv/issues/8#issuecomment-120824160 .  https://github.com/notifications/beacon/AFydWb1ITm7SQtYmRIJNZ9Gq-Wow5j3Iks5oc01ugaJpZM4FV4gq.gif

Reply to this email directly or view it on GitHub:
https://github.com/omoerbeek/e2pv/issues/8#issuecomment-120892383

Can I send values to the database every 10 minutes instead of every time the gateway pushes because in 24 hours I got 8000 records in my database and I need to log some 20 installations and that was just one...

Currently the script sends all incoming data to mysql if a mysql db is
defined.  This was made to allow other postprocessing than PVOutput. I
do not have plans to change that,
-Otto

On Tue, Jul 14, 2015 at 03:13:53AM -0700, Zandor Smith wrote:

Can I send values to the database every 10 minutes instead of every time the gateway pushes because in 24 hours I got 8000 records in my database and I need to log some 20 installations and that was just one...

Reply to this email directly or view it on GitHub:
https://github.com/omoerbeek/e2pv/issues/8#issuecomment-121191156


Allow manual integration tests

This PR allows manual execution of integration tests.
This will be useful for dependabot PRs where we want to manually check that integration tests complete successfully, such as for https://github.com/pyansys/grantami-bomanalytics/pull/162

Approved by @da1910


px4 fails to accept connections on 14560 when stdout is redirected

I run px4 in a Jenkins job, and if I run it like this in the script, it works fine:
./px4 -d /path-to/px4.rc &

but if I want to capture the stdout and stderr in a file, it fails to receive connections on port 14560:
./px4 -d /path-to/px4.rc >px4.log 2>&1 &

It gets to the "INFO  [simulator] Waiting for initial data on UDP port 14560. Please start the flight simulator to proceed.." line and that's it.

Thanks for raising this. My guess is that this is due to the fact that the simulator weirdly waits. I want to have a look at this at some point.


Export clickable link areas

When Figma has a prototype on-click interaction to an external url (xxx://something), that should manifest in the SVG as a link like: ... so that the object is also clickable in the SVG.
That'd be awesome!

Feel free to contribute PR! Thanks.
вт, 31 серп. 2021 о 21:21 Reto Stamm @.***> пише:

When Figma has a prototype on-click interaction to an external url
(xxx://something), that should manifest in the SVG as a link like: ... so
that the object is also clickable in the SVG.
That'd be awesome!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/okotoki/advanced-svg-export/issues/14, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAF5MRVCG3RODJRVZDOEBCTT7UMUBANCNFSM5DEWJJ4Q
.

Would you think this needs a checkbox in configurations also, or just do it always?

Let's make it default behavior, as most of the current configuration are
"svgo" settings. We'll add a checkbox if people will complain.
вт, 31 серп. 2021 о 23:55 Reto Stamm @.***> пише:

Would you think this needs a checkbox in configurations also, or just do
it always?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/okotoki/advanced-svg-export/issues/14#issuecomment-909629571,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAF5MRQLJLN3OB4FQT74KKTT7U6UPANCNFSM5DEWJJ4Q
.


How to focus a Widget from code?

I am searching for something like self.my_widget.set_focus(), but I could not find that in the documentation. Is this feature implemented?

I found several ways to do it:

using widget.node.focus()
using document.getElementById(widget.id).focus()
using global eval, get = eval("(x)=>document.getElementById(x)") and get(widget.id).focus()

However, it will not work if the app is not focused. And by default, the app is not focused when started from command line :(

using widget.node.focus()

That would be the way to focus a widget.
But indeed, as you've already found out, it is not possible to focus the (browser) window.


Remove encoding from Transaction, TpRegister, and Transaction Processors

Signed-off-by: Andrea Gunderson<EMAIL_ADDRESS>

Removed the renumbering from the protos


Datepicker - Months not updated when navigating backwards

Month in datepicker does not get updated
Detailed description
Currently, we are using the datepicker component for the SOB of SoBa (banking.baloise.ch). In the second page, the component can be accessed and whenever the user tries to navigate backwards, it the month will not get updated automatically. It will still display e.g. May for example instead of April.
However, the forward navigations do not have this issue and the month will get updated from May --> June for example.
This issue can be observed on the SoBa site: www.banking.baloise.ch
Steps to reproduce the issue

Go to second page
Navigate to datepicker field and open it via mouse click
Navigate backwards by clicking on "<"
It can be observed that description of the month in the header of this component does not get updated
Screenshot will display that the month is changed to April (30 days) but the month title is still May

moved issue


do not give argv as main arguments

Hi all!
Quick fix for installation via pip with git protocol.
Hope that helps!
--
Let argparse read sys.argv.
Use patch object for pytest to avoid modifying actual sys.argv.
Fixes #1.
Signed-off-by: Thomas Faivre<EMAIL_ADDRESS>

sorry about the delay, I just added notifications


ImageCropper creates artifacts when switching between images

[Enter feedback here]
I am using ImageCropper in an app that allows the user to crop multiple bitmaps before submitting the changes in one batch.
The user needs to switch between bitmaps.
I let her select bitmaps through a ListView. Every time the ListView has a new SelectedItem, I grab the current CroppedRegion off the ImageCropper and store it with the bitmap instance. Then I load the newly selected bitmap into ImageCropper and try to set the cropped rect. The bitmap initializes the stored Crop to 0/0/Width/Height...
When switching between bitmaps I notice that the ImageCropper produces wrong crop rectangles and sometimes even artifacts of underlying canvas pixels... Do I need to wait for the load and process to finish???
Anything I am not getting?
Maybe it would be a good idea to make two changes:

Give LoadImageFromFile() an optional parameter Rect? that identifies a desired cropped region
Raise an event every time the user changes the Crop so that the app can track changes by the user

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

ID: f01c6406-56c7-6c87-acc3-dc7b1eb91d04
Version Independent ID: 17589eb2-3ea2-bd14-3b24-78a3836d0cee
Content: ImageCropper - Windows Community Toolkit
Content Source: docs/controls/ImageCropper.md
Product: community-toolkit
GitHub Login: @HHChaos
Microsoft Alias: mhawker

Thanks @jhwheuer, this may seem like a bug, so a better place to file would be on our main code repo: https://aka.ms/windowstoolkit.
For now pinging @HHChaos if they can confirm or have suggestions.

@jhwheuer Feel free to file the issue at the main repo mentioned above. Let us know if you have any other questions.

@jhwheuer Feel free to file the issue at the main repo mentioned above. Let us know if you have any other questions.

Closing this as the issue has been opened in the main repo.


Add a 'progress bar' to the iteration

Add a 'loading bar' to the iteration so that I can see what's the progress and how many browsers still remain. (to the logger)

Progress bar added.


[Task]:

What needs to happen?
The output of this task is an architecture and platform for collecting data from the Dataflow API for analysis using BigQuery. This task is considered done when the PR contains code that:

reads from Eventarc Pub/Sub messages related to Dataflow Job state changes
converts Eventarc JSON payloads to Eventarc Job events
reads from the Dataflow API
writes to BigQuery
provisions dependent resources using Infrastructure-as-Code

Issue Priority
Priority: 2 (default / most normal work should be filed as P2)
Issue Components

[ ] Component: Python SDK
[ ] Component: Java SDK
[ ] Component: Go SDK
[ ] Component: Typescript SDK
[ ] Component: IO connector
[ ] Component: Beam examples
[ ] Component: Beam playground
[ ] Component: Beam katas
[ ] Component: Website
[ ] Component: Spark Runner
[ ] Component: Flink Runner
[ ] Component: Samza Runner
[ ] Component: Twister2 Runner
[ ] Component: Hazelcast Jet Runner
[ ] Component: Google Cloud Dataflow Runner

.take-issue


My pokemon wont evolve and I tried everything.

My krokorock is level 43 and wont evolve itried relogging and trylevelevo it it didnt work

Are you still having this issue? If so, what's your username and server? I'll hop on whenever we're both free and fix this for you

Closing, OP inactive.


Are you interested in training AI models?

Hi
I checked your GitHub profile and interested in your work.
Have you ever thought about training AI models?
Let us discuss in more detail here or at discord.
Send me friend request and I will accept you.
My discord name is :
dancarter_30880

Who's this?
On Sun, Dec 22, 2024, 6:49 PM carter212-star @.***>
wrote:

Hi
I checked your GitHub profile and interested in your work.
Have you ever thought about training AI models?
Let us discuss in more detail here or at discord.
Send me friend request and I will accept you.
My discord name is :
dancarter_30880
—
Reply to this email directly, view it on GitHub
https://github.com/laradmin-cse/laradmin/issues/1, or unsubscribe
https://github.com/notifications/unsubscribe-auth/BNXRWGWZXR76FRGG7Z62RR32G237DAVCNFSM6AAAAABUBUVCJ2VHI2DSMVQWIX3LMV43ASLTON2WKOZSG42TINRVGY2TQNI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Include plugin telemetry data into ping events

Is your feature request related to a problem? Please describe.
Currently the only way we are able to gather information about plugin usage is by downloading data from the update server. This is different from our other sources
Describe the solution you'd like
We would like instead to switch over this data to telemetry, most likely via the ping event
Documentation can be found here; https://docs.camunda.io/docs/components/modeler/desktop-modeler/telemetry/#ping-event
Describe alternatives you've considered
Keep relying on the update server data and fetch from it, but it is unreliable and generally we don't want to have tons of different sources for our data.

Solution decided:
Use existing "ping" event (PingEventHandler) to track plugin usage, by extending event structure:
  {
  "event": "ping",
+ "plugins": ['token-simulation', 'auto-save-plugin', ...]
  }

Note: since the plugin version is not available to the Modeler, we will use only the plugin names


feat: cardano-db-sync snapshot restoration

Description
Users need the ability to utilise the supplied cardano-db-sync snapshots, to expedite the PostgreSQL sync which would otherwise take many hours. As there is no snapshot of the cardano-node state, the restoration should only proceed if the instance contains some state in the expected directory, otherwise cardano-db-sync will roll back to the node’s tip, or genesis in the case of a new instance, and thus eliminate most benefits of the feature.
Proposed Solution
Introduces a build argument to download and store the provided remote snapshot
into the image, and then startup logic to restoring unless it's the first run
with no cardano-node state.
Testing
At least 3 scenarios should be tested:

Instance fully synced, observe no lengthy sync
Instance partially synced, observe a proportional sync
New instance, observe snapshot not being applied.

Tested a few scenarios on testnet
On feature branch 1807750, built with $ DOCKER_BUILDKIT=1 docker build  --build-arg BUILDKIT_INLINE_CACHE=1 --build-arg NETWORK=testnet     --build-arg SNAPSHOT_URL=https://updates-cardano-testnet.s3.amazonaws.com/cardano-db-sync/11/db-sync-snapshot-schema-11-block-3022711-x86_64.tgz --cache-from=inputoutput/cardano-rosetta:master -t inputoutput/cardano-rosetta:1.5.0-testnet  .

Running container with (almost) fully synced node results in db-sync snapshot restoration before services are started, db-sync then proceeds to catch-up with node for the final few blocks.
Running container with clean volume results in sync from genesis, with log "Skipping snapshot restoration as cardano-node will be syncing from genesis". But there's a problem. Db-sync doesn't initialise properly, logs: postgres@cexplorer FATAL:  database "cexplorer" does not exist. This causes Rosetta network query to return "An error occurred for request 2: database \"cexplorer\" does not exist"
Running container with node part-synced results in db-sync snapshot restoration, then db-sync waits for node to catchup. Meanwhile, any query to Rosetta will use tip of the snapshot (which won't begin updating until node catches up)
Stopping and Starting container doesn't re-run snapshot restoration.

Tested a few scenarios on testnet On feature branch 1807750, built with $ DOCKER_BUILDKIT=1 docker build --build-arg BUILDKIT_INLINE_CACHE=1 --build-arg NETWORK=testnet --build-arg SNAPSHOT_URL=https://updates-cardano-testnet.s3.amazonaws.com/cardano-db-sync/11/db-sync-snapshot-schema-11-block-3022711-x86_64.tgz --cache-from=inputoutput/cardano-rosetta:master -t inputoutput/cardano-rosetta:1.5.0-testnet .

Running container with (almost) fully synced node results in db-sync snapshot restoration before services are started, db-sync then proceeds to catch-up with node for the final few blocks.
Running container with clean volume results in sync from genesis, with log "Skipping snapshot restoration as cardano-node will be syncing from genesis". But there's a problem. Db-sync doesn't initialise properly, logs: postgres@cexplorer FATAL:  database "cexplorer" does not exist. This causes Rosetta network query to return "An error occurred for request 2: database \"cexplorer\" does not exist"
Running container with node part-synced results in db-sync snapshot restoration, then db-sync waits for node to catchup. Meanwhile, any query to Rosetta will use tip of the snapshot (which won't begin updating until node catches up)
Stopping and Starting container doesn't re-run snapshot restoration.

Fixed in 1529731f131bd222f72c98d5e92e2653f6a2c715

The cardano-db-sync team has confirmed we're observing the expected behavior @james-iohk. I'll update the documentation to detail the procedure for a fresh install.


Request: 'odometer', 'mileage', and-or related entities with a recommended design pattern

Use cases:

a fleet of vehicles have been used at various levels, and the primary way of tracking use has been following mileage for each vehicle, and reporting daily and weekly.
a specific vehicle travels 25 kilometers on Tuesday. The odometer has value "10000" in the morning, and the odometer has value "10025" in the evening.

CCO already has:

Measurement Unit of Length (class)
Mile Measurement unit (instance)
Kilometer Measurement unit (instance)
Recording device (class)
Instrument display panel (class)
Distance Measurement Information Content Entity

Now, I am not sure what would be the parent class exactly for 'odometer' or 'mileage'. But it seems that what I am looking for is an information bearing artifact and uses_measurement_unit 'Mile Measurement Unit' (or in the second case, 'Kilometer Measurement Unit'). But what does it measure/what is the measurement of? It seems to me that the measurement is about distance or length, not of some material object but rather some spatio(temporal) path that the vehicle has passed through.
Could we get a recommended design pattern for these cases?
In the modeling information in CCO v1.3 documentation it gives recommendations for speed, specified function ranges, etc., but I may be missing where it recommends measuring distance traveled per se.

I think this is a good point, and I think we should add odometer as an IBA. It means roughly in Greek 'the measurement of a path,' so although it works using time, the spinning of wheels, etc, it's ultimately a measurement of the distance traveled. Different odometers use different methods for calculating that distance, but the distance is the core measurement the artifact is designed to capture. I'm not sure about committing to the temporal part of spatio-temporal.
Draft definition: "An Odometer is an Information Bearing Artifact that is designed to bear some Information Content Entity that measures the distance an entity has traveled." Should we add that it measures the distance of the entity it is attached to? Should we say anything about the means by which is measures? Not sure, happy to start the conversation.
An odometer definitely bears a Measurement Artifact Function, but does the definition of Distance Measurement Artifact Function fit? "A Measurement Artifact Function that is realized during events in which an Artifact is used to measure the spatial Distance to a specified object or class of objects."
If this issue gets discussion, I would be happy to advocate this to be added to the upcoming 1.5 release with the changes to the relations.
I'll think further on current design patterns recommendations in lieu of this term.

Draft definition: "An Odometer is an Information Bearing Artifact that is designed to bear some Information Content Entity that measures the distance an entity has traveled."
Good enough, but "distance an entity has traveled" could reuse terms in the CCO lexicon, like "distance of some spatial region that was the location of some Act of Location Change"? maybe that's too clunky.

I take it a car's odometer would be paradigmatic. Would someone say that our definition includes pedometers for lack of specific differences to distinguish the two?

Should we say anything about the means by which is measures? Not sure, happy to start the conversation
I would imagine that we'd want to leave it open what measurement unit is and what was the mechanism for deriving its measure. I don't need it to be more specific. What do you have in mind?

An odometer definitely bears a Measurement Artifact Function, but does the definition of Distance Measurement Artifact Function fit? "A Measurement Artifact Function that is realized during events in which an Artifact is used to measure the spatial Distance to a specified object or class of objects."
I think so. Do you hesitate?

I'll think further on current design patterns recommendations in lieu of this term.
I am tempted to draw a diagram, but I also am somewhat unsure.

Related point: is the mileage just the ICE? Or is the mileage what the ICE measures? I am getting ambiguity in definitions online. Some say it is the calculation or it is the number, whereas others describe it as the distance or path. I would think that mileage is what is measured. If I am correct, then, an odometer measures mileage (or kilometer equivalent) traveled, and mileage is distance along a path.

Draft definition: "An Odometer is an Information Bearing Artifact that is designed to bear some Information Content Entity that measures the distance an entity has traveled."

Good enough, but "distance an entity has traveled" could reuse terms in the CCO lexicon, like "distance of some spatial region that was the location of some Act of Location Change"? maybe that's too clunky.

We could use that or something similar, that there's a path way, or 2d or 3d region that the car traveled. Do we want to restrict odometers to vehicles and not pedometers, maybe a pedometer is more specific, a subclass of odometer? We could just say odometers measure bfo:objects in the definition and call it there.

Related point: is the mileage just the ICE? Or is the mileage what the ICE measures? I am getting ambiguity in definitions online. Some say it is the calculation or it is the number, whereas others describe it as the distance or path. I would think that mileage is what is measured. If I am correct, then, an odometer measures mileage (or kilometer equivalent) traveled, and mileage is distance along a path.

Seems like mileage is the value of the measurement. We don't say 25-mileage as if mileage is a unit, but it's the thing that the measurement value is. 25 is the 1025 is the mileage which is measured by the unit 'mile'.


add liveRestart function for C3

Idea from @sunnyhaibin#0865 found in Discord
restart openpilot without rebooting (for live tuning, parameter reset, etc.)

I don't think this script is useful to check into the repo. It doesn't work in the tmux session, and there's no need to start a new tmux session to restart openpilot - just ran ./launch_openpilot.sh.


use daemonset way not sidecar way

Feature request
use daemonset way not sidecar way
Use case
May be consider  daemonset that  it will deploy agent on nodes,which it will collect data by pid, and the use pid association with pod metadata.
what do you think? @edeNFed

Sounds like a really interesting feature @withlin
Regarding implementation, I think we should consider changing the current logic of specifying the target binary via OTEL_TARGET_EXE to logic like:

Scan all processes in /proc
Detect all processes that are written in Go. we already have this code at https://github.com/keyval-dev/opentelemetry-go-instrumentation/blob/af32862e111b42be049956705d0dd27e9639fc15/pkg/process/module.go#L40
Apply instrumentation for every found Go process.

I think changing the behavior to this will allow us to both remove the OTEL_TARGET_EXE config and support daemon set deployment at the same time. Basically, when deployed as a daemon set with hostPID: true /proc will simply contain more processes and the instrumentation agent does not even aware of the fact that it is currently deployed as a daemon set.
What do you think?

Sounds like a really interesting feature @withlin Regarding implementation, I think we should consider changing the current logic of specifying the target binary via OTEL_TARGET_EXE to logic like:

Scan all processes in /proc
Detect all processes that are written in Go. we already have this code at https://github.com/keyval-dev/opentelemetry-go-instrumentation/blob/af32862e111b42be049956705d0dd27e9639fc15/pkg/process/module.go#L40
Apply instrumentation for every found Go process.

I think changing the behavior to this will allow us to both remove the OTEL_TARGET_EXE config and support daemon set deployment at the same time. Basically, when deployed as a daemon set with hostPID: true /proc will simply contain more processes and the instrumentation agent does not even aware of the fact that it is currently deployed as a daemon set. What do you think?

if you scan all processes, may be have problem. for instance: i want to collect specific process,such as only collect  voting service data.
hi @edeNFed ,   i have a idea as follow:

the agent should use k8s informer way that it will watch pod  resource, the pod should have annotations: such as  keyval.dev/go-instrumentation: true,then the current agent get current node info,which it can fliter node in pod resource mainifest. if match it will do 2 step.
the agent use docker grpc client/ containerd grpc client get pid. the command line:  docker inspect -f '{{.State.Pid}}' <container id>
to do golang instrument

That sounds really cool. I wonder if we should integrate somehow with the OpenTelemetry Operator: https://github.com/open-telemetry/opentelemetry-operator#opentelemetry-auto-instrumentation-injection
It looks like they are doing similar things, for example, annotating deployments for instrumentation.
what do you think?

@edeNFed  Yes, this project that sound good to me.opentelemetry-auto-instrumentation-injection is using mutating webhook  intercept by annotation(inject container in pod resource).
the implement as follows:
https://github.com/open-telemetry/opentelemetry-operator/blob/main/internal/webhookhandler/webhookhandler.go#L92
https://github.com/open-telemetry/opentelemetry-operator/blob/main/pkg/sidecar/podmutator.go#L57
https://github.com/open-telemetry/opentelemetry-operator/blob/main/pkg/sidecar/pod.go#L37
before you send to me for this project,i have no idea for it.  use daemonset way may reduce overhead vs sidecar,that's why I recommend implementing this way.

@withlin After reading your comments again, I think I understand what you mean much better now.
I really like this solution, sounds elegant and I can see many advantages to it (for example we could even instrument Kubernetes internal components like kubelet).
Another thing we probably need to implement as part of this is how to stop instrumenting when the annotation is deleted, It should probably delete all the attached uprobes.
I like it. Would you like to try to implement it? I can also get to it in about two weeks.

@edeNFed  i am glading to implement it. but i need some time to familiar with your source code.


I can't resolve dependencies with Gradle when I init mt project and run first

I init my flutter project, then I excute  flutter run, I got an Gradle resolve dependencies error as flow:
[ +374 ms] executing: G:\app\myflutter\android\gradlew.bat -v
[+1309 ms]
                    ------------------------------------------------------------
                    Gradle 4.10.2
                    ------------------------------------------------------------

                    Build time:   2018-09-19 18:10:15 UTC
                    Revision:     b4d8d5d170bb4ba516e88d7fe5647e2323d791dd

                    Kotlin DSL:   1.0-rc-6
                    Kotlin:       1.2.61
                    Groovy:       2.4.15
                    Ant:          Apache Ant(TM) version 1.9.11 compiled on March 23 2018
                    JVM:          1.8.0_152-release (JetBrains s.r.o 25.152-b06)
                    OS:           Windows 10 10.0 amd64
[   +9 ms] Initializing gradle... (completed)
[   +4 ms] Resolving dependencies...
[   +4 ms] executing: [G:\app\myflutter\android\] G:\app\myflutter\android\gradlew.bat app:properties
[+2675 ms]
                    FAILURE: Build failed with an exception.

                    * What went wrong:
                    A problem occurred configuring root project 'android'.
                    > Could not resolve all artifacts for configuration ':classpath'.
                       > Could not resolve com.android.tools.build:gradle:3.2.1.
                         Required by:
                             project :
                          > Could not resolve com.android.tools.build:gradle:3.2.1.
                             > Could not get resource
                             'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.2.1/gradle-3.2.1.
                             pom'.
                                > Could not HEAD
                                'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.2.1/gradle-3.2
                                .1.pom'. Received status code 405 from server: Method Not Allowed
                          > Could not resolve com.android.tools.build:gradle:3.2.1.
                             > Could not get resource
                             'https://jcenter.bintray.com/com/android/tools/build/gradle/3.2.1/gradle-3.2.1.pom'.
                                > Could not HEAD
                                'https://jcenter.bintray.com/com/android/tools/build/gradle/3.2.1/gradle-3.2.1.pom'.
                                Received status code 405 from server: Method Not Allowed

                    * Try:
                    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more
                    log output. Run with --scan to get full insights.

                    * Get more help at https://help.gradle.org

                    BUILD FAILED in 2s

flutter and other tool version info:
G:\app\myflutter>flutter doctor -v
[√] Flutter (Channel beta, v0.11.3, on Microsoft Windows [Version 10.0.16299.547], locale zh-CN)
    • Flutter version 0.11.3 at C:\dep\flutter
    • Framework revision 72bf075e8d (11 days ago), 2018-11-09 20:36:17 -0800
    • Engine revision 5646e86a6f
    • Dart version 2.1.0 (build 2.1.0-dev.9.3 9c07fb64c4)

[√] Android toolchain - develop for Android devices (Android SDK 28.0.3)
    • Android SDK at C:\Users\linla\AppData\Local\Android\sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: E:\developeSoftware\AS\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)
    • All Android licenses accepted.

[√] Android Studio (version 3.2)
    • Android Studio at E:\developeSoftware\AS
    • Flutter plugin version 29.1.1
    • Dart plugin version 181.5540.11
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)

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

• No issues found!

android/build.gradle file
buildscript {
    ext.kotlin_version = '1.2.71'
    repositories {
        google()
        maven {
            url 'https://dl.google.com/dl/android/maven2'
        }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        google()
        maven { url 'https://maven.aliyun.com/repository/google/' }
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

so I am confuse   why  I can download the dependencies form browser（I visit the url throgh browser directly）,but in the Android Studio Editor an windows CMD I got an 405 net work error，please help！

at last, I seems the Android Studio problem .I reinstall the Android Studio then everthing is ok


chore(hardware-trezor): finish trezor tx input mappers

Context
This PR finishes the implementation of mapping Cardano tx inputs to Trezor inputs.

All tests in wallet package are now passing after I refactored the new TrezorKeyAgent to extend the old one and only override the minimal surface for us to hook-in the new mappers. This way we can ensure that the new code behaves exactly like the old.


Publish to IPFS, not GH Pages

Part of fixing #56

@lgierth Can you review this?

I don't think it needs much review, actually... It only publishes to your local IPFS node, then tries to open it on the gateway.  Nothing untoward : )
see also https://github.com/ipfs/project-repos/pull/61/files#diff-b9cfc7f2cdf78a7f4b91a753d10865a2R15

Going to merge this, as without it CI keeps pushing a gh-pages branch, which my git-up keeps tripping over 😞


Add Bubble sort algorithm

Hey, can you assign it to me? And do you want code or description of bubble sort? Also, where should I add it?

Hey, can you assign it to me? And do you want code or description of bubble sort? Also, where should I add it?

refer this: https://github.com/gdsc-ipsacademy/Competitive_Programming/tree/main/algorithms/binary-search

Hey, can you assign it to me? And do you want code or description of bubble sort? Also, where should I add it?

If possible add both code and description, put them in algorithms/bubble-sort

Can I be in charge of putting the code in python?

Can I be in charge only of putting the code in python?
edit: I'm somewhat new to algorithms, I welcome any suggestions about my code (#21) :p

Your seems correct, I have merged your PR.
If possible add documentation too.

Hey @haki-user brother ,could you please assign this issue to me? I will write this algorithm in CPP.


Enable Copy and Pasting from Cookie table via keyboard shortcuts

As part of analyzing the information displayed in the Cookies table, there are scenarios where users need to copy content from the table and pasted in some other tooling they use during their analysis. Currently this is not possible and it should be enabled in a user-friendly way (e.g. via keyboard shortcuts).

Addressed and released as a part of v0.5


Add PEA to error techniques topic

Will get more information from @samantha Barron, but I'm adding some information here as a placeholder.

I think it's worth calling out PEA on this page as well, even though it's technically ZNE (especially since the description about ZNE is focused on gate folding), i.e. this sentence should say + link to PEA:
Primitives support several error mitigation techniques, including TREX, ZNE, and PEC.

I think it's worth calling out PEA on this page as well, even though it's technically ZNE (especially since the description about ZNE is focused on gate folding), i.e. this sentence should say + link to PEA:
Primitives support several error mitigation techniques, including TREX, ZNE, and PEC.

Looks like I should use this link for PEA - @jyu00 confirm?: https://docs.quantum.ibm.com/api/qiskit-ibm-runtime/qiskit_ibm_runtime.options.ZneOptions

OR - do you want to link to the new PEA section in the error techniques docs page instead?

@abbycross The new PEA section in the techniques page, to match the others.