text:
How can we improve the workflow for pipeline.toml and ambient.toml?

So far syntax like:
[[pipelines]]
type = "Models"

is hard to write.
Perhaps it's better to make an interactive CLI tool like this:
ambient assets new
What kind of pipeline do you wish to add? Select with space.
- [x] model
- [ ] audio
- [ ] images

Please input your asset URL:
(you can drag and drop to your terminal to get the URL)
(if the file not in the project/assets folder, the file will be copied there)

This may also apply to new components with CLI tools like ambient component new:
My top pain points:

[ ] when I mistype F32 to f32, the error info is not very easy to read
[ ] the error for messages is hard to understand and debug

We used to have a ui for the pipelines before, and it's quite easy to add again. Here's what needs to be done:

Add an ambient edit-pipelines command
Add ElementEditor to all the type in pipeline_types (see auto_editor example
In that mode, don't render the normal client, but instead render all the pipelines using the automatic editors

There's some nuance here too; we need to re-implement an editor for AssetUrls, (probably a file picker), and this UI would need to support showing a file list for the assets so you can create pipelines in different directories. So it's a bit of work to get it all working.

yes it's better.
the errors are some legacy issues I encountered before with ambient.toml:
For example, if we mistype the component type I32 to i32, we get:
 ~/Dev/afpsmod  ambient run                                                                                 101 ✘  at 04:22:01 PM
[2023-06-21T14:22:07Z INFO  ambient] Building project "afpsmod"
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: "Unsupported type"', crates/build/src/lib.rs:42:87
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

If the type typo is inside the messages, that will become a really prolonged and confusing one:
 ~/Dev/afpsmod  ambient run                                                                                 101 ✘  at 04:22:07 PM
[2023-06-21T14:24:33Z INFO  ambient] Building project "afpsmod"
Error: Failed to build project

Caused by:
    0: Failed to build rust "/Users/chaosprint/Dev/afpsmod/build"
    1: failed to compile, stdout: error: custom attribute panicked
         --> src/mods/player/client.rs:13:1
          |
       13 | #[main]
          | ^^^^^^^
          |
          = help: message: called `Result::unwrap()` on an `Err` value: invalid primitive type

                  Stack backtrace:
                     0: backtrace::backtrace::libunwind::trace
                               at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/libunwind.rs:93:5
                        backtrace::backtrace::trace_unsynchronized
                               at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/mod.rs:66:5
                     1: backtrace::backtrace::trace
                               at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/mod.rs:53:14
                     2: anyhow::backtrace::capture::Backtrace::create
                               at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/backtrace.rs:216:13
                     3: anyhow::backtrace::capture::Backtrace::capture
                               at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/backtrace.rs:204:17
                     4: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
                               at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/error.rs:547:25
                     5: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:2002:27
                     6: ambient_project_macro_common::message::to_token_stream::{{closure}}
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:70:26
                     7: ambient_project_macro_common::util::tree_to_token_stream
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:97:40
                     8: ambient_project_macro_common::message::to_token_stream
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:45:5
                     9: ambient_project_macro_common::message::to_token_stream::{{closure}}
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:49:19
                    10: ambient_project_macro_common::util::tree_to_token_stream::{{closure}}
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:41:30
                    11: core::iter::adapters::map::map_try_fold::{{closure}}
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/map.rs:91:28
                    12: core::iter::traits::iterator::Iterator::try_fold
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:2304:21
                    13: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::try_fold
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/map.rs:117:9
                    14: <core::iter::adapters::GenericShunt<I,R> as core::iter::traits::iterator::Iterator>::try_fold
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:195:9
                    15: core::iter::traits::iterator::Iterator::try_for_each
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:2366:9
                        <core::iter::adapters::GenericShunt<I,R> as core::iter::traits::iterator::Iterator>::next
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:178:14
                    16: alloc::vec::Vec<T,A>::extend_desugared
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/mod.rs:2812:35
                    17: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/spec_extend.rs:17:9
                    18: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/spec_from_iter_nested.rs:43:9
                    19: alloc::vec::in_place_collect::<impl alloc::vec::spec_from_iter::SpecFromIter<T,I> for alloc::vec::Vec<T>>::from_iter
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/in_place_collect.rs:167:20
                    20: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/mod.rs:2712:9
                    21: core::iter::traits::iterator::Iterator::collect
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:1896:9
                        <core::result::Result<V,E> as core::iter::traits::collect::FromIterator<core::result::Result<A,E>>>::from_iter::{{closure}}
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:1969:51
                    22: core::iter::adapters::try_process
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:164:17
                    23: <core::result::Result<V,E> as core::iter::traits::collect::FromIterator<core::result::Result<A,E>>>::from_iter
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:1969:9
                    24: core::iter::traits::iterator::Iterator::collect
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:1896:9
                    25: ambient_project_macro_common::util::tree_to_token_stream
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:39:26
                    26: ambient_project_macro_common::message::to_token_stream
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:45:5
                    27: ambient_project_macro_common::message::tree_to_token_stream
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:20:5
                    28: ambient_project_macro_common::generate_code
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/lib.rs:79:26
                    29: ambient_api_macros::main_macro::main_impl
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/guest/rust/api_core/api_macros/src/main_macro.rs:16:31
                    30: ambient_api_macros::main
                               at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/guest/rust/api_core/api_macros/src/lib.rs:33:5
                    31: core::ops::function::Fn::call
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/ops/function.rs:79:5
                    32: proc_macro::bridge::client::Client<(proc_macro::TokenStream,proc_macro::TokenStream),proc_macro::TokenStream>::expand2::{{closure}}::{{closure}}
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:450:21
                    33: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:399:30
                    34: proc_macro::bridge::scoped_cell::ScopedCell<T>::set::{{closure}}
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:79:33
                    35: proc_macro::bridge::scoped_cell::ScopedCell<T>::replace
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:74:9
                    36: proc_macro::bridge::scoped_cell::ScopedCell<T>::set
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:79:9
                    37: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:398:13
                    38: std::thread::local::LocalKey<T>::try_with
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/thread/local.rs:252:16
                    39: std::thread::local::LocalKey<T>::with
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/thread/local.rs:228:9
                    40: proc_macro::bridge::client::run_client::{{closure}}
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:397:9
                    41: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/panic/unwind_safe.rs:271:9
                    42: std::panicking::try::do_call
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:485:40
                    43: ___rust_try
                    44: std::panicking::try
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:449:19
                    45: std::panic::catch_unwind
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panic.rs:140:14
                    46: proc_macro::bridge::client::run_client
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:384:5
                    47: proc_macro::bridge::client::Client<(proc_macro::TokenStream,proc_macro::TokenStream),proc_macro::TokenStream>::expand2::{{closure}}
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:449:17
                    48: proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/selfless_reify.rs:64:17
                    49: <proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>> as proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client::<proc_macro::bridge::server::Dispatcher<proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>
                    50: proc_macro::bridge::server::run_server::<rustc_expand::proc_macro_server::Rustc, (proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>, proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>), core::option::Option<proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>>, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>>>
                    51: <proc_macro::bridge::client::Client<(proc_macro::TokenStream, proc_macro::TokenStream), proc_macro::TokenStream>>::run::<rustc_expand::proc_macro_server::Rustc, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>>>
                    52: <rustc_expand::proc_macro::AttrProcMacro as rustc_expand::base::AttrProcMacro>::expand
                    53: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
                    54: <rustc_expand::expand::MacroExpander>::expand_crate
                    55: <rustc_session::session::Session>::time::<rustc_ast::ast::Crate, rustc_interface::passes::configure_and_expand::{closure#1}>
                    56: rustc_interface::passes::resolver_for_lowering
                    57: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::execute_job_incr<rustc_query_impl::queries::resolver_for_lowering, rustc_query_impl::plumbing::QueryCtxt>::{closure#2}, (rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>::{closure#0}, (rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>
                    58: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::queries::resolver_for_lowering, rustc_query_impl::plumbing::QueryCtxt>
                    59: <rustc_query_impl::Queries as rustc_middle::ty::query::QueryEngine>::resolver_for_lowering
                    60: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_driver_impl::run_compiler::{closure#1}::{closure#2}::{closure#2}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>::{closure#0}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>::{closure#0}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>
                    61: <rustc_interface::queries::QueryResult<&rustc_middle::ty::context::GlobalCtxt>>::enter::<&rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>, rustc_driver_impl::run_compiler::{closure#1}::{closure#2}::{closure#2}>
                    62: <rustc_interface::interface::Compiler>::enter::<rustc_driver_impl::run_compiler::{closure#1}::{closure#2}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_span::ErrorGuaranteed>>
                    63: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
                    64: std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
                    65: <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
                    66: std::sys::unix::thread::Thread::new::thread_start
                    67: __pthread_joiner_wake

       error: custom attribute panicked
        --> src/client.rs:3:1
         |
       3 | #[main]
         | ^^^^^^^
         |
         = help: message: called `Result::unwrap()` on an `Err` value: invalid primitive type

                 Stack backtrace:
                    0: backtrace::backtrace::libunwind::trace
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/libunwind.rs:93:5
                       backtrace::backtrace::trace_unsynchronized
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/mod.rs:66:5
                    1: backtrace::backtrace::trace
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/mod.rs:53:14
                    2: anyhow::backtrace::capture::Backtrace::create
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/backtrace.rs:216:13
                    3: anyhow::backtrace::capture::Backtrace::capture
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/backtrace.rs:204:17
                    4: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/error.rs:547:25
                    5: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:2002:27
                    6: ambient_project_macro_common::message::to_token_stream::{{closure}}
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:70:26
                    7: ambient_project_macro_common::util::tree_to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:97:40
                    8: ambient_project_macro_common::message::to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:45:5
                    9: ambient_project_macro_common::message::to_token_stream::{{closure}}
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:49:19
                   10: ambient_project_macro_common::util::tree_to_token_stream::{{closure}}
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:41:30
                   11: core::iter::adapters::map::map_try_fold::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/map.rs:91:28
                   12: core::iter::traits::iterator::Iterator::try_fold
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:2304:21
                   13: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::try_fold
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/map.rs:117:9
                   14: <core::iter::adapters::GenericShunt<I,R> as core::iter::traits::iterator::Iterator>::try_fold
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:195:9
                   15: core::iter::traits::iterator::Iterator::try_for_each
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:2366:9
                       <core::iter::adapters::GenericShunt<I,R> as core::iter::traits::iterator::Iterator>::next
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:178:14
                   16: alloc::vec::Vec<T,A>::extend_desugared
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/mod.rs:2812:35
                   17: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/spec_extend.rs:17:9
                   18: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/spec_from_iter_nested.rs:43:9
                   19: alloc::vec::in_place_collect::<impl alloc::vec::spec_from_iter::SpecFromIter<T,I> for alloc::vec::Vec<T>>::from_iter
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/in_place_collect.rs:167:20
                   20: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/mod.rs:2712:9
                   21: core::iter::traits::iterator::Iterator::collect
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:1896:9
                       <core::result::Result<V,E> as core::iter::traits::collect::FromIterator<core::result::Result<A,E>>>::from_iter::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:1969:51
                   22: core::iter::adapters::try_process
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:164:17
                   23: <core::result::Result<V,E> as core::iter::traits::collect::FromIterator<core::result::Result<A,E>>>::from_iter
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:1969:9
                   24: core::iter::traits::iterator::Iterator::collect
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:1896:9
                   25: ambient_project_macro_common::util::tree_to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:39:26
                   26: ambient_project_macro_common::message::to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:45:5
                   27: ambient_project_macro_common::message::tree_to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:20:5
                   28: ambient_project_macro_common::generate_code
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/lib.rs:79:26
                   29: ambient_api_macros::main_macro::main_impl
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/guest/rust/api_core/api_macros/src/main_macro.rs:16:31
                   30: ambient_api_macros::main
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/guest/rust/api_core/api_macros/src/lib.rs:33:5
                   31: core::ops::function::Fn::call
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/ops/function.rs:79:5
                   32: proc_macro::bridge::client::Client<(proc_macro::TokenStream,proc_macro::TokenStream),proc_macro::TokenStream>::expand2::{{closure}}::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:450:21
                   33: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:399:30
                   34: proc_macro::bridge::scoped_cell::ScopedCell<T>::set::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:79:33
                   35: proc_macro::bridge::scoped_cell::ScopedCell<T>::replace
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:74:9
                   36: proc_macro::bridge::scoped_cell::ScopedCell<T>::set
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:79:9
                   37: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:398:13
                   38: std::thread::local::LocalKey<T>::try_with
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/thread/local.rs:252:16
                   39: std::thread::local::LocalKey<T>::with
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/thread/local.rs:228:9
                   40: proc_macro::bridge::client::run_client::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:397:9
                   41: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/panic/unwind_safe.rs:271:9
                   42: std::panicking::try::do_call
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:485:40
                   43: ___rust_try
                   44: std::panicking::try
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:449:19
                   45: std::panic::catch_unwind
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panic.rs:140:14
                   46: proc_macro::bridge::client::run_client
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:384:5
                   47: proc_macro::bridge::client::Client<(proc_macro::TokenStream,proc_macro::TokenStream),proc_macro::TokenStream>::expand2::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:449:17
                   48: proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/selfless_reify.rs:64:17
                   49: <proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>> as proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client::<proc_macro::bridge::server::Dispatcher<proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>
                   50: proc_macro::bridge::server::run_server::<rustc_expand::proc_macro_server::Rustc, (proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>, proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>), core::option::Option<proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>>, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>>>
                   51: <proc_macro::bridge::client::Client<(proc_macro::TokenStream, proc_macro::TokenStream), proc_macro::TokenStream>>::run::<rustc_expand::proc_macro_server::Rustc, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>>>
                   52: <rustc_expand::proc_macro::AttrProcMacro as rustc_expand::base::AttrProcMacro>::expand
                   53: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
                   54: <rustc_expand::expand::MacroExpander>::expand_crate
                   55: <rustc_session::session::Session>::time::<rustc_ast::ast::Crate, rustc_interface::passes::configure_and_expand::{closure#1}>
                   56: rustc_interface::passes::resolver_for_lowering
                   57: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::execute_job_incr<rustc_query_impl::queries::resolver_for_lowering, rustc_query_impl::plumbing::QueryCtxt>::{closure#2}, (rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>::{closure#0}, (rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>
                   58: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::queries::resolver_for_lowering, rustc_query_impl::plumbing::QueryCtxt>
                   59: <rustc_query_impl::Queries as rustc_middle::ty::query::QueryEngine>::resolver_for_lowering
                   60: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_driver_impl::run_compiler::{closure#1}::{closure#2}::{closure#2}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>::{closure#0}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>::{closure#0}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>
                   61: <rustc_interface::queries::QueryResult<&rustc_middle::ty::context::GlobalCtxt>>::enter::<&rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>, rustc_driver_impl::run_compiler::{closure#1}::{closure#2}::{closure#2}>
                   62: <rustc_interface::interface::Compiler>::enter::<rustc_driver_impl::run_compiler::{closure#1}::{closure#2}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_span::ErrorGuaranteed>>
                   63: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
                   64: std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
                   65: <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
                   66: std::sys::unix::thread::Thread::new::thread_start
                   67: __pthread_joiner_wake

       error: custom attribute panicked
        --> src/mods/first_person/client.rs:3:1
         |
       3 | #[main]
         | ^^^^^^^
         |
         = help: message: called `Result::unwrap()` on an `Err` value: invalid primitive type

                 Stack backtrace:
                    0: backtrace::backtrace::libunwind::trace
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/libunwind.rs:93:5
                       backtrace::backtrace::trace_unsynchronized
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/mod.rs:66:5
                    1: backtrace::backtrace::trace
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/backtrace-0.3.67/src/backtrace/mod.rs:53:14
                    2: anyhow::backtrace::capture::Backtrace::create
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/backtrace.rs:216:13
                    3: anyhow::backtrace::capture::Backtrace::capture
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/backtrace.rs:204:17
                    4: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
                              at /Users/chaosprint/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.71/src/error.rs:547:25
                    5: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:2002:27
                    6: ambient_project_macro_common::message::to_token_stream::{{closure}}
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:70:26
                    7: ambient_project_macro_common::util::tree_to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:97:40
                    8: ambient_project_macro_common::message::to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:45:5
                    9: ambient_project_macro_common::message::to_token_stream::{{closure}}
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:49:19
                   10: ambient_project_macro_common::util::tree_to_token_stream::{{closure}}
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:41:30
                   11: core::iter::adapters::map::map_try_fold::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/map.rs:91:28
                   12: core::iter::traits::iterator::Iterator::try_fold
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:2304:21
                   13: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::try_fold
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/map.rs:117:9
                   14: <core::iter::adapters::GenericShunt<I,R> as core::iter::traits::iterator::Iterator>::try_fold
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:195:9
                   15: core::iter::traits::iterator::Iterator::try_for_each
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:2366:9
                       <core::iter::adapters::GenericShunt<I,R> as core::iter::traits::iterator::Iterator>::next
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:178:14
                   16: alloc::vec::Vec<T,A>::extend_desugared
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/mod.rs:2812:35
                   17: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/spec_extend.rs:17:9
                   18: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/spec_from_iter_nested.rs:43:9
                   19: alloc::vec::in_place_collect::<impl alloc::vec::spec_from_iter::SpecFromIter<T,I> for alloc::vec::Vec<T>>::from_iter
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/in_place_collect.rs:167:20
                   20: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/vec/mod.rs:2712:9
                   21: core::iter::traits::iterator::Iterator::collect
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:1896:9
                       <core::result::Result<V,E> as core::iter::traits::collect::FromIterator<core::result::Result<A,E>>>::from_iter::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:1969:51
                   22: core::iter::adapters::try_process
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/adapters/mod.rs:164:17
                   23: <core::result::Result<V,E> as core::iter::traits::collect::FromIterator<core::result::Result<A,E>>>::from_iter
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/result.rs:1969:9
                   24: core::iter::traits::iterator::Iterator::collect
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/iter/traits/iterator.rs:1896:9
                   25: ambient_project_macro_common::util::tree_to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/util.rs:39:26
                   26: ambient_project_macro_common::message::to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:45:5
                   27: ambient_project_macro_common::message::tree_to_token_stream
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/message.rs:20:5
                   28: ambient_project_macro_common::generate_code
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/shared_crates/project_macro_common/src/lib.rs:79:26
                   29: ambient_api_macros::main_macro::main_impl
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/guest/rust/api_core/api_macros/src/main_macro.rs:16:31
                   30: ambient_api_macros::main
                              at /Users/chaosprint/.cargo/git/checkouts/ambient-e153138232031f82/f7a5730/guest/rust/api_core/api_macros/src/lib.rs:33:5
                   31: core::ops::function::Fn::call
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/ops/function.rs:79:5
                   32: proc_macro::bridge::client::Client<(proc_macro::TokenStream,proc_macro::TokenStream),proc_macro::TokenStream>::expand2::{{closure}}::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:450:21
                   33: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:399:30
                   34: proc_macro::bridge::scoped_cell::ScopedCell<T>::set::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:79:33
                   35: proc_macro::bridge::scoped_cell::ScopedCell<T>::replace
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:74:9
                   36: proc_macro::bridge::scoped_cell::ScopedCell<T>::set
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/scoped_cell.rs:79:9
                   37: proc_macro::bridge::client::run_client::{{closure}}::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:398:13
                   38: std::thread::local::LocalKey<T>::try_with
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/thread/local.rs:252:16
                   39: std::thread::local::LocalKey<T>::with
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/thread/local.rs:228:9
                   40: proc_macro::bridge::client::run_client::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:397:9
                   41: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/panic/unwind_safe.rs:271:9
                   42: std::panicking::try::do_call
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:485:40
                   43: ___rust_try
                   44: std::panicking::try
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:449:19
                   45: std::panic::catch_unwind
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panic.rs:140:14
                   46: proc_macro::bridge::client::run_client
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:384:5
                   47: proc_macro::bridge::client::Client<(proc_macro::TokenStream,proc_macro::TokenStream),proc_macro::TokenStream>::expand2::{{closure}}
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/client.rs:449:17
                   48: proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper
                              at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/proc_macro/src/bridge/selfless_reify.rs:64:17
                   49: <proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>> as proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client::<proc_macro::bridge::server::Dispatcher<proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>
                   50: proc_macro::bridge::server::run_server::<rustc_expand::proc_macro_server::Rustc, (proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>, proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>), core::option::Option<proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, proc_macro::bridge::client::TokenStream>>, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>>>
                   51: <proc_macro::bridge::client::Client<(proc_macro::TokenStream, proc_macro::TokenStream), proc_macro::TokenStream>>::run::<rustc_expand::proc_macro_server::Rustc, proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::CrossbeamMessagePipe<proc_macro::bridge::buffer::Buffer>>>
                   52: <rustc_expand::proc_macro::AttrProcMacro as rustc_expand::base::AttrProcMacro>::expand
                   53: <rustc_expand::expand::MacroExpander>::fully_expand_fragment
                   54: <rustc_expand::expand::MacroExpander>::expand_crate
                   55: <rustc_session::session::Session>::time::<rustc_ast::ast::Crate, rustc_interface::passes::configure_and_expand::{closure#1}>
                   56: rustc_interface::passes::resolver_for_lowering
                   57: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<rustc_query_system::query::plumbing::execute_job_incr<rustc_query_impl::queries::resolver_for_lowering, rustc_query_impl::plumbing::QueryCtxt>::{closure#2}, (rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>::{closure#0}, (rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex)>
                   58: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::queries::resolver_for_lowering, rustc_query_impl::plumbing::QueryCtxt>
                   59: <rustc_query_impl::Queries as rustc_middle::ty::query::QueryEngine>::resolver_for_lowering
                   60: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_driver_impl::run_compiler::{closure#1}::{closure#2}::{closure#2}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>::{closure#0}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>::{closure#0}, &rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>>
                   61: <rustc_interface::queries::QueryResult<&rustc_middle::ty::context::GlobalCtxt>>::enter::<&rustc_data_structures::steal::Steal<(rustc_middle::ty::ResolverAstLowering, alloc::rc::Rc<rustc_ast::ast::Crate>)>, rustc_driver_impl::run_compiler::{closure#1}::{closure#2}::{closure#2}>
                   62: <rustc_interface::interface::Compiler>::enter::<rustc_driver_impl::run_compiler::{closure#1}::{closure#2}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_span::ErrorGuaranteed>>
                   63: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
                   64: std::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
                   65: <<std::thread::Builder>::spawn_unchecked_<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#1}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
                   66: std::sys::unix::thread::Thread::new::thread_start
                   67: __pthread_joiner_wake

       warning: unused imports: `AnimationPlayer`, `BindId`, `BlendNode`, `PlayClipFromUrlNode`, `add_child`, `add_component`, `animation::apply_animation_player`, `camera::aspect_ratio_from_window`, `element::to_owned`, `get_bone_by_bind_id`, `make_perspective_infinite_reverse_camera`, `make_sphere`, `make_transformable`, `model::model_loaded`, `prefab::prefab_from_url`, `primitives::quad`, `transform::reset_scale`, `wait_for_component`
        --> src/mods/player/client.rs:2:17
         |
       2 |     animation::{get_bone_by_bind_id, AnimationPlayer, BindId, BlendNode, PlayClipFromUrlNode},
         |                 ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
       3 |     components::core::{
       4 |         animation::apply_animation_player, camera::aspect_ratio_from_window, model::model_loaded,
         |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
       5 |         prefab::prefab_from_url, primitives::quad, transform::reset_scale,
         |         ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
       6 |     },
       7 |     concepts::{make_perspective_infinite_reverse_camera, make_sphere, make_transformable},
         |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
       8 |     element::to_owned,
         |     ^^^^^^^^^^^^^^^^^
       9 |     entity::{add_child, add_component, wait_for_component},
         |              ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
         |
         = note: `#[warn(unused_imports)]` on by default

       error[E0601]: `main` function not found in crate `client_afpsmod`
        --> src/client.rs:4:17
         |
       4 | pub fn main() {}
         |                 ^ consider adding a `main` function to `src/client.rs`

       error[E0601]: `main` function not found in crate `mods_first_person_client`
         --> src/mods/first_person/client.rs:28:2
          |
       28 | }
          |  ^ consider adding a `main` function to `src/mods/first_person/client.rs`

       error: aborting due to 2 previous errors

       For more information about this error, try `rustc --explain E0601`.
       error: aborting due to 2 previous errors

       For more information about this error, try `rustc --explain E0601`.
       error[E0601]: `main` function not found in crate `mods_player_client`
         --> src/mods/player/client.rs:23:2
          |
       23 | }
          |  ^ consider adding a `main` function to `src/mods/player/client.rs`

       error: aborting due to 2 previous errors; 1 warning emitted

       For more information about this error, try `rustc --explain E0601`.
       , stderr:    Compiling afpsmod v0.0.1 (/Users/chaosprint/Dev/afpsmod)
       error: could not compile `afpsmod` (bin "client_afpsmod") due to 3 previous errors
       warning: build failed, waiting for other jobs to finish...
       error: could not compile `afpsmod` (bin "mods_first_person_client") due to 3 previous errors
       error: could not compile `afpsmod` (bin "mods_player_client") due to 3 previous errors; 1 warning emitted

The error situation is better in #417 (the types are resolved by the semantic system, so it can better report on errors). For manipulation of the actual embers and pipelines, I agree that it would be nice to have a more systematic approach to it.
The two proposals we've discussed internally are

CLI tooling, similar to what's described in this issue
an enhanced debugger/editor that lets you visually configure the project and pipelines

We'll see what we can do.

Before this is decided, I think it's better to add an empty pipeline.toml in the ./assets/ folder at the start template, with comments/docs inside, like this:
# -------------------------------
# Uncomment any "pipeline" that can suit your need
# This will create a pipeline for everything inside this folder FBX, GLB
# -------------------------------
# [[pipelines]]
# type = "Models"

# -------------------------------
# You can have multiple pipelines
# This is useful for processing things differently
# For example, you may want to use build-in colliders for some models only
# -------------------------------

# [[pipelines]]
# type = "Models"
# sources = ["maps/**/*"]

# [pipelines.collider]
# type = "FromModel"

# [[pipelines]]
# type = "Models"
# sources = ["animations/**/*"]

# -------------------------------
# Create another pipeline for audio
# convertion is false by default and optional
# -------------------------------

# [[pipelines]]
# type = "Audio"
# convert = true
# sources = ["sound/**/*"]

# -------------------------------
# This is for importing an material such as image
# Then in the Rust code, you can import the material like this
# You may need to use other numbers (not just 0) if you have multiple material to import
# ```rust
# .with(pbr_material_from_url(), asset::url("assets/pipeline.toml/0/mat.json").unwrap())
# ```
# -------------------------------

# [[pipelines]]
# type = "Materials"
# output_decals = false

# [pipelines.importer]
# type = "Single"
# name = "pic1"
# base_color = "pic1.jpeg"

@philpax how do you think? I think we need this "traffic sign". Otherwise, users will get confused, have to break the dev flow and try to find examples or docs.

That seems pretty reasonable - tooling would be nice, but it seems unlikely we'll be able to get that any time soon. Feel free to PR that up and I'll do clean-up and merge it in 👌

authors: FredrikNoren chaosprint philpax

repo: AmbientRun/Ambient


text:
Add Documentation/Credit

@AminoffZ if you're free would you be so kind as to:

Add a LICENSE to this repository
Add me as a collaborator on the npm page
And anything else you see fit
For the moment I'm leaving the main branch for publishing only, so either create a new branch or use the v0.0.9 branch

Sure thing, thank you for your extensive work!

Sure thing here it is, https://www.npmjs.com/~maminechniti

Invite sent ☺

I have messaged you on twitter btw, maybe come have a little chat.

source: gharchive/issue

authors: AminoffZ mAmineChniti

repo: AminoffZ/create-catonaut

license: MIT

license_type: permissive

license_source: github-api


text:
Active line highlight shows in quick panel and console in ST 4114

See screenshot

https://github.com/sublimehq/sublime_text/issues/4805

authors: jfcherng rwols


text:
DDI-420 Adding Marketo Static List Docs

Amplitude Developer Docs PR
Adds the docs for the Marketo Static List integration.
Deadline
🤷
Change type

[X] New documentation.

PR checklist:

[X] My documentation follows the style guidelines of this project.
[X] I previewed my documentation on a local server using mkdocs serve.
[X] Running mkdocs serve didn't generate any failures.
[X] I have performed a self-review of my own documentation.

@amplitude-dev-docs
@caseyamp

Could this PR be merged with this? https://github.com/Amplitude-Developer-Docs/amplitude-dev-center/pull/563

source: gharchive/pull-request

authors: ampcynthli caseyamp


text:
Use datastore other than firebase

Hi, Thank you for making this great project.
I would like to ask, is it possible to abstract datastore so one can switch from firebase to mysql easily? or could you please point to the place where the changes can be made to use mysql instead of firebase?  Thank you.

I agree
"No advertisements, no data sharing, no marketing emails" yet, you rely on a Google service, even sqlite would be fine

sqlite would also be useful to resolve these firebase API issues in the docker version ala #430

Yes, this would be great change. I don't want it to be dependent on a Cloud service. Firebase is great voor large scale resume websites. I just want to use it for a couple of personal ones.

+1 this.
I want to self-host and avoid putting my data in a Google datacenter.
MariaDB, Postgresql, sqlite; all good options.

Closing this in favor of Reactive Resume v3 release.
If you continue to face this issue, please raise a new one and I'll have a look at it as soon as I can.
In the meantime, if you are able to, please consider donating to keep supporting the project: https://www.buymeacoffee.com/AmruthPillai :)
Thank you!

authors: AmruthPillai DieterKoblenz FlynnLives ParaplegicRacehorse modem7 waqar-ahmed

repo: AmruthPillai/Reactive-Resume


text:
1.6.2

Changes:

Update to 1.6.2
Update about
Remove pip parameter not present in recent pip versions.

Reason:

Needed for py3.11 build

https://github.com/Unidata/netcdf4-python/tree/v1.6.2
https://github.com/Unidata/netcdf4-python/blob/v1.6.2/Changelog

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_31srm5vevy/clone/recipe/meta.yaml:48: has_run_test_and_commands: Test commands are not executed when run_test.sh (.bat...) is present.
WARNING: /tmp/abs_31srm5vevy/clone/recipe/meta.yaml:62: missing_doc_source_url: The recipe is missing a doc_source_url
WARNING: /tmp/abs_31srm5vevy/clone/recipe/meta.yaml:62: missing_license_url: The recipe is missing a license_url
Errors were found

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_a6ays9dr4y/clone/recipe/meta.yaml:48: has_run_test_and_commands: Test commands are not executed when run_test.sh (.bat...) is present.
WARNING: /tmp/abs_a6ays9dr4y/clone/recipe/meta.yaml:62: missing_doc_source_url: The recipe is missing a doc_source_url
WARNING: /tmp/abs_a6ays9dr4y/clone/recipe/meta.yaml:62: missing_license_url: The recipe is missing a license_url
Errors were found

authors: anaconda-pkg-build cbouss


text:
Add-header-images

Added file

Add file

repo: Anaghatv/intro-html


text:
Release App (MINOR)

Update Privacy Policy url (#456)
Disable showing opening hours (#458)
All changes in #455

I have deleted the tag v3.4 as this version was not released, thus this release will become v3.4.0


text:
The bot shouldn't tell me to post on the forum when I'm telling a user to post on the forum

https://github.com/AnalyticalGraphicsInc/cesium/issues/5742#issuecomment-322162603

Good catch!

The problem is the current regex checks for any google groups link, (even non-cesium-dev ones).  The regex needs to be updated to only look at actual message, which could be tricky because query parameters can be in any order.

Can we use queryToObject to see if msg is in the query string?

I think it's actually part of the hash, not the query string.  This should be totally doable with a modified regex either way.

authors: hpinkos mramato pjcozzi

repo: AnalyticalGraphicsInc/cesium-concierge

license_source: bigquery


text:
UrlTemplateImageryProvider minimumLevel and maximumLevel

Cesium.UrlTemplateImageryProvider:When I set both minimumLevel and maximumLevel at the same time,the thread goes into a dead cycle,and after a while, the browser crashed.I set minimumLevel to 13,and maximumLevel to 19. It also has problems when I just set minimumLevel .But when I set the rectangle to the bounds of the tile, it is ok.

Are you able to provide a Sandcastle example to recreate this?

Closing due to inactivity

authors: OmarShehata hpinkos leation

repo: AnalyticalGraphicsInc/cesium


text:
Duplicates Report Updates

Jing, please wait to address these comments after you finish your work on updating the Rct and Biospec Reports.
For the Duplicates Report,

Please take out the filter on active duplicates. All duplicates should be included in the report. Madhuri said she was just pulling the data from the participants table (with no filters applied).
In the first table, please change the percentages to be a column percent not a row percent.
Please add an additional graph that shows the time trend for participants already enrolled but reflected as a proportion of the total number of invitations at those time points. Total # of invitations=total number of active recruits at those time points.
If possible, please add a marker for both time trends on 12/8 that shows when the new login screen pathways were pushed to prod. If the marker isn't possible or easy to add, then a footnote will work instead.

Hi, Amelia,
Can I put the duplicate report in the regular weekly report in one pdf file together?
Just check.
Thanks a lot.
Best, Jing
From: Amelia Roberts @.>
Date: Thursday, January 26, 2023 at 9:46 AM
To: Analyticsphere/metricsReportsRequests @.>
Cc: Wu, Jing (NIH/NCI) [C] @.>, Assign @.>
Subject: [EXTERNAL] [Analyticsphere/metricsReportsRequests] Duplicates Report Updates (Issue #15)
Jing, please wait to address these comments after you finish your work on updating the Rct and Biospec Reports.
For the Duplicates Reporthttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fnih.app.box.com%2Ffile%2F1117109700996&data=05|01|jing.wu2%40nih.gov|123be8c92aff43bca4dd08daffac1890|14b77578977342d58507251ca2dc2b06|0|0|638103411855230341|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=OKgntuDKvhCPGnm9TsHbj5XEBbj0CDzgRY42HGAIUEw%3D&reserved=0,

Please take out the filter on active duplicates. All duplicates should be included in the report. Madhuri said she was just pulling the data from the participants table (with no filters applied).
In the first table, please change the percentages to be a column percent not a row percent.
Please add an additional graph that shows the time trend for participants already enrolled but reflected as a proportion of the total number of invitations at those time points. Total # of invitations=total number of active recruits at those time points.
If possible, please add a marker for both time trends on 12/8 that shows when the new login screen pathways were pushed to prod. If the marker isn't possible or easy to add, then a footnote will work instead.

—
Reply to this email directly, view it on GitHubhttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAnalyticsphere%2FmetricsReportsRequests%2Fissues%2F15&data=05|01|jing.wu2%40nih.gov|123be8c92aff43bca4dd08daffac1890|14b77578977342d58507251ca2dc2b06|0|0|638103411855386554|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=HD88B3ePdPDni7tbRt64o9X9uYGRhk5wcSul7Giddpg%3D&reserved=0, or unsubscribehttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAXZVEF4J32DLJCQYIVHCRQ3WUKE33ANCNFSM6AAAAAAUHSUTAI&data=05|01|jing.wu2%40nih.gov|123be8c92aff43bca4dd08daffac1890|14b77578977342d58507251ca2dc2b06|0|0|638103411855386554|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=0vfFBrH5m8fWop0975I6aLQ74g8w%2B5t9gKRmKwwa7kY%3D&reserved=0.
You are receiving this because you were assigned.Message ID: @.***>
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and are confident the content is safe.

No, they'll need to remain separate. The regular weekly recruitment report filters out active duplicates. We don't want any duplicates filtered out of the duplicate report.

@robertsamm I have just put the duplicate report in the folder. Please check it ( I used today's data)

Hi Jing, it looks like this still needs some work but the recruitment and biospecimen reports take priority. Please work on those first before turning your attention to this. You can check with @FrogGirl1123 for priorities

Got it. Thanks.
From: Amelia Roberts @.>
Date: Thursday, January 26, 2023 at 1:58 PM
To: Analyticsphere/metricsReportsRequests @.>
Cc: Wu, Jing (NIH/NCI) [C] @.>, Mention @.>
Subject: [EXTERNAL] Re: [Analyticsphere/metricsReportsRequests] Duplicates Report Updates (Issue #15)
Hi Jing, it looks like this still needs some work but the recruitment and biospecimen reports take priority. Please work on those first before turning your attention to this. You can check with @FrogGirl1123https://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FFrogGirl1123&data=05|01|jing.wu2%40nih.gov|4dc9652242774c35b49108daffcf5d55|14b77578977342d58507251ca2dc2b06|0|0|638103563328926596|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=HX5ac80umbwFh4l%2FGnK32qN7dvSNEcg0uwc3NnsItkg%3D&reserved=0 for priorities
—
Reply to this email directly, view it on GitHubhttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAnalyticsphere%2FmetricsReportsRequests%2Fissues%2F15%23issuecomment-1405460659&data=05|01|jing.wu2%40nih.gov|4dc9652242774c35b49108daffcf5d55|14b77578977342d58507251ca2dc2b06|0|0|638103563328926596|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=KQMk2I8AF2W8DQo6IOil2W9mR%2By%2BYBQJlitFP9lbIaA%3D&reserved=0, or unsubscribehttps://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAXZVEF66XVF4GTEI546NFYLWULCM3ANCNFSM6AAAAAAUHSUTAI&data=05|01|jing.wu2%40nih.gov|4dc9652242774c35b49108daffcf5d55|14b77578977342d58507251ca2dc2b06|0|0|638103563329082780|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=3htUok%2FH7qnPa7bdZNEjLpQTniVhHetaMZzZk4OcOmw%3D&reserved=0.
You are receiving this because you were mentioned.Message ID: @.***>
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and are confident the content is safe.

@robertsamm this duplicate report is updated with the request as Michelle reviewed

@robertsamm  This report will be added to the monthly automation, starting 6/1. Is this issue ok to close?

Hi @KELSEYDOWLING7 we would like to request some additional changes to the duplicates report but this issue is so old I think it best to close out and start a new issue. I'll get a new issue started!

authors: KELSEYDOWLING7 jeannewu robertsamm

repo: Analyticsphere/metricsReportsRequests


text:
Moving from absolute paths to relative paths

We are still setting absolute path as the value for the path attribute. But in future, as the app grows it will become tedious and will be more nested making it unmaintainable. So, I think that moving towards relative paths will make it better.
Please assign me this under hacktoberfest thank you.

Hi @Anandsg my PR for issue #165 has not been merged yet. And I want to resolve the above issue in the code changes that I made in PR for #165 issue. Can you please merge it. If there's a problem with it do let me know.

your PR has been merged

repo: Anandsg/Hungry-hero


text:
enhanced Navbar UI

This is not looking that much great please pick other issues instead of nav bar styling

authors: Anandsg sanathan-git


text:
[Suggestion] Sort by level

It would be nice if the pokemon list could also be sorted by level.
Looking forward to the addition of favoriting/unfavoriting of Pokemons.

@gb410 please wait for new version, may tonight it will release for Sort by Level (i think this very usefull)
for un/favorite pokemon need custom the bot.

done latest release

repo: AndikaTanpaH/NecrobotJavanHawk

license: mit


text:
home assistant does not get notified of dryer connected on 0.14.0

Describe the bug
When turning on the dryer and selecting de hOn "program" home assistant keeps reporting dryer disconnected preventing to send commands to the dryer
To Reproduce
Steps to reproduce the behavior:

Turn on tumble dryer
select hon "program"
wait until dryer connects to wifi and shows "hon" on screen
look into home assistant hon dryer and it remains disconnected

Expected behavior
Home assistant dryer device connection status should say "connected"
Environment (please complete the following information):

Home Assistant Version: 2024.3.1
hOn Integration Version  0.14.0-beta.3
pyhOn Version 0.17.1

Additional context
Before updating to new version with push api it was working ok
forcing a home assistant hon integration reload refreshes connection status and allows to device operation
Device Log
data:
  additional_data:
    dictionaryId: 203
    options: hybrid
  appliance:
    PK: user#eu-west-1:6ff1c98a-aa1e-47e7-8358-637e9c9963c1
    SK: app#xx-xx-xx-xx-xx-xx
    applianceId: xx-xx-xx-xx-xx-xx#1970-01-01T00:00:00.0Z
    applianceModelId: 1009
    applianceStatus: 1
    applianceTypeId: 8
    applianceTypeName: TD
    attributes:
      acuVersion: 0.0.0
      chipset: 1
      dictionaryId: 203
      eppParserSet: 1
      fwLabel: iotfw_epp
      idfVersion: 4.4.4
      kernelVersion: 10.4.3
      lang: it-IT
      uiVersion: 21.09.17
    brand: haier
    code: CF0674E0200
    connectivity: wifi|ble
    defaultWarrantyYears: 3
    eepromId: 41
    eepromName: no_eeprom
    enrollmentDate: 1970-01-01T00:00:00.0Z
    firstEnrollment: True
    firstEnrollmentTBC: True
    fwVersion: 5.15.0
    id: 1009
    lastUpdate: 1970-01-01T00:00:00.0Z
    macAddress: xx-xx-xx-xx-xx-xx
    modelName: HD90-A3959 INT
    nickName: Secadora
    purchaseDate: 1970-01-01T00:00:00.0Z
    sections:
      chatbot: True
      double_pairing_hidden: True
      ecoDelayStart: True
      snap_wash: True
    series: 959
    structure: heatpump
    topics:
      publish:
      subscribe:
        - $aws/events/presence/disconnected/xx-xx-xx-xx-xx-xx
        - $aws/events/presence/connected/xx-xx-xx-xx-xx-xx
        - haier/things/xx-xx-xx-xx-xx-xx/event/appliancestatus/update
        - haier/things/xx-xx-xx-xx-xx-xx/event/discovery/update
  attributes:
    active: True
    activity:
    commandHistory:
      command:
        ancillaryParameters:
          energyLabel: 4
          prPosition: 2
          programCluster: traditional
          programFamily: [dashboard|auto]
          programType: D
          remoteActionable: 1
          remoteVisible: 1
          suggestedLoadD: 4.5
          tumblingStatus: 0
        applianceOptions:
          opt1: anticrease
          opt2: dryingManager
          opt3: bestIroning
          opt4: hybrid
        applianceType: TD
        attributes:
          channel: mobileApp
          energyLabel: 0
          origin: standardProgram
        commandName: startProgram
        device:
          appVersion: 2.6.5
          deviceModel: pyhOn
          mobileId: homassistant
          mobileOs: android
          osVersion: 999
        macAddress: xx-xx-xx-xx-xx-xx
        parameters:
          airWashMode: 1
          airwashSprayTime: 0
          anionStatus: 0
          antiCreaseTime: 0
          buzzerDisabled: 1
          cloudProgId: 255
          cloudProgSrc: 2
          delayTime: 0
          delicateStatus: 0
          dryLevel: 13
          dryMode: 1
          dryTimeMM: 0
          fastDryStatus: 0
          ironRemindStatus: 1
          lockStatus: 0
          mitesRemovalStatus: 0
          onOffStatus: 1
          operationName: grDryCloudProg
          pause: 0
          prCode: 63
          programClass: 1
          sterilizationStatus: 0
          tempLevel: 3
          texture: 64
        programName: PROGRAMS.TD.HQD_SYNTHETICS
        timestamp: 1970-01-01T00:00:00.0Z
        transactionId: xx-xx-xx-xx-xx-xx_1970-01-01T00:00:00.0Z
      timestampAccepted: 1970-01-01T00:00:00.0Z
      timestampExecuted: 1970-01-01T00:00:00.0Z
    lastConnEvent:
      category: CONNECTED
      instantTime: 1970-01-01T00:00:00.0Z
      macAddress: xx-xx-xx-xx-xx-xx
      timestampEvent: 1711572986573
    parameters:
      airWashMode: 1
      airwashSprayTime: 0
      anionStatus: 0
      antiCreaseTime: 0
      buzzerDisabled: 1
      cloudProgId: 255
      cloudProgSrc: 2
      debugEnabled: 0
      delayTime: 0
      delicateStatus: 0
      doorStatus: 0
      dryLevel: 13
      dryMode: 1
      dryTimeMM: 55
      errors: 00
      fastDryStatus: 0
      forceDelete: 0
      highTransRate: 1
      ironRemindStatus: 0
      ironingStatus: 0
      lockStatus: 0
      machMode: 2
      message: 0
      mitesRemovalStatus: 0
      onOffStatus: 1
      pause: 0
      prCode: 63
      prPhase: 19
      programClass: 1
      programStats: ;a0;9;;3;;;;;;;;2;;;;;;;;;4
      remainingStandbyTime: 961
      remainingTimeMM: 35
      remoteCtrValid: 1
      statusSyncRate: 1440
      stdTransRate: 1
      sterilizationStatus: 0
      tempLevel: 3
      texture: 64
      transMode: 0
    pause: False
    programName: No Program
    resultCode: 0
  pauseProgram:
    parameters:
      pause: 1
  resumeProgram:
    parameters:
      pause: 0
  settings:
    custom:
      category: setConfig
    parameters:
      httpEndpoint: 0
      mqttEndpoint: 0
  startProgram:
    ancillaryParameters:
      energyLabel: 4
      prPosition: 2
      programCluster: traditional
      programFamily: [dashboard|auto]
      programType: D
      remoteActionable: 1
      remoteVisible: 1
      suggestedLoadD: 4.5
      tumblingStatus: 0
    custom:
      favourite: 1
      program: Sintéticos
    parameters:
      airWashMode: 1
      airwashSprayTime: 0
      anionStatus: 0
      antiCreaseTime: 0
      buzzerDisabled: 1
      cloudProgId: 255
      cloudProgSrc: 2
      delayTime: 450
      delicateStatus: 0
      dryLevel: 13
      dryMode: 1
      dryTimeMM: 0
      fastDryStatus: 0
      ironRemindStatus: 1
      lockStatus: 0
      mitesRemovalStatus: 0
      onOffStatus: 1
      operationName: grDryCloudProg
      pause: 0
      prCode: 63
      programClass: 1
      sterilizationStatus: 0
      tempLevel: 3
      texture: 64
  statistics:
    drumCleaning:
      count: 0
      percentage: 0
      remaining: 100
      tot: 100
    filterCleaning:
      count: 0
      percentage: 0
      remaining: 15
      tot: 15
    lastCheckup: None
    loadingPercentage:
    mostUsedPrograms:
      - count: 142
        prCode: 63
        prPosition: 2
        programName: PROGRAMS.TD.HQD_SYNTHETICS
        programType: D
      - count: 17
        prCode: 63
        prPosition: 2
        programName: PROGRAMS.TD.IOT_DRY_SYNTHETICS
        programType: D
      - count: 3
        prCode: 66
        prPosition: 5
        programName: PROGRAMS.TD.HQD_BED_SHEETS
        programType: D
    programsCounter: 177
    resultCode: 0
    sprayArmsCleaning: 0
    temperatureUsage:
  stopProgram:
    parameters:
      returnStandby: 1
commands:
  settings:
    category:
      - setConfig
  startProgram:
    antiCreaseTime:
      max: 360
      min: 0
      step: 360
    delayTime:
      max: 1410
      min: 0
      step: 30
    dryLevel:
      max: 14
      min: 12
      step: 1
    dryTimeMM:
      - 15
      - 20
      - 25
      - 30
      - 35
      - 40
    energyLabel:
      max: 5
      min: 1
      step: 1
    program:
      - Algodón
      - Ropa mixta
      - Sintéticos
      - Sábanas
      - hqd_baby_care
      - hqd_bath_towel
      - hqd_bed_sheets
      - hqd_bulky
      - hqd_casual
      - hqd_cold_wind_timing
      - hqd_cotton
      - hqd_curtain
      - hqd_delicate
      - hqd_duvet
      - hqd_feather
      - hqd_hot_wind_timing
      - hqd_hygienic
      - hqd_i_refresh
      - hqd_jacket
      - hqd_jeans
      - hqd_mix
      - hqd_night_dry
      - hqd_outdoor
      - hqd_precious_cure
      - hqd_quick_30
      - hqd_quick_dry
      - hqd_quilt
      - hqd_refresh
      - hqd_shirt
      - hqd_shoes
      - hqd_silk
      - hqd_sports
      - hqd_synthetics
      - hqd_timer
      - hqd_underwear
      - hqd_wool
      - hqd_working_suit
      - iot_dry_baby
      - iot_dry_backpacks
      - iot_dry_bathrobe
      - iot_dry_bed_linen
      - iot_dry_cotton
      - iot_dry_cuddly_toys
      - iot_dry_curtains
      - iot_dry_delicates
      - iot_dry_denim_jeans
      - iot_dry_down_jacket
      - iot_dry_duvet
      - iot_dry_gym_fit
      - iot_dry_lingerie
      - iot_dry_mixed
      - iot_dry_pet_accessories
      - iot_dry_pet_hair_removal
      - iot_dry_rapid_30
      - iot_dry_rapid_59
      - iot_dry_shirts
      - iot_dry_swimsuits_and_bikinis
      - iot_dry_synthetics
      - iot_dry_tablecloths
      - iot_dry_technical_fabrics
      - iot_dry_wool
    programFamily:
      - wmsync
      - guided
      - voice
      - care
      - auto
      - wmsync_guided_voice_care_auto
    sterilizationStatus:
      max: 1
      min: 0
      step: 1
    tempLevel:
      max: 4
      min: 1
      step: 1
    tumblingStatus:
      max: 1
      min: 0
      step: 1
versions:
  hon: 0.14.0-beta.3
  pyhOn: 0.17.1

Data Archive
td_1009.zip

Hi, thanks for reporting! Should be fixed in the latest beta version :slightly_smiling_face:

installed beta 6, almost same behaviour: had to manually reload integration in order to sensor entities to get updated.
Integration did not get notified of connected status, but home assistant was able to send commands to start the drying cycle.

Hi, thanks for reporting! Should be fixed in the latest beta version 🙂

same behaviour with beta 6
FYI: the dryer is connected with DHCP with a dynamic address and I have two ISPs with a gateway doing load balancing. One of the internet connections uses CG-NAT and the other does not but the IP address on the non cgnat connection may change from time to time.

Hi, thanks for reporting! Should be fixed in the latest beta version 🙂

same behaviour with beta 6
FYI: the dryer is connected with DHCP with a dynamic address and I have two ISPs with a gateway doing load balancing. One of the internet connections uses CG-NAT and the other does not but the IP address on the non cgnat connection may change from time to time.

I have same behavior with simple network and static WAN IP address.

Same bug here, I've found out that reloading the integration gets everything reconnected

Same issue here with 0.14 beta 7.
Version 0.13 works fine although due to polling is quite slow, but at least it works 🫣

authors: Andre0512 deezid drudgebg erpayo nanomad


text:
Removed dotted metadata convention from default since it breaks valid…

Removed dotted metadata convention from default since it breaks valid games with dots in their names see the previous commit for valid examples if you want this feature.

RE: issue 76

For old examples see https://github.com/AndrewDWhite/GalaxyGenericImporterPlugin/blob/01ed3c6976e6cd17e805387fd0a60a5e48918973/emulators.json


text:
Updates to vagrant-box-osx

How often do you update the vagrant box for macOS Sierra?  macOS 10.12.3 & Xcode 8.2.1 are both out now.  It would be really nice to have these as part of the base vagrant box.

Hello.
Unfortunately, right now build is manual and it takes a while, so I only update it when some major releases are out. But I'll see if I can use Travis-CI to automate this process.

Thanks. If you could automate more frequent releases that would be great.  Let me know if I can help out with anything.

Has there been an progress on a newer box for macOS Sierra?

You could just do it yourself and tune it the way you want: https://github.com/geerlingguy/macos-virtualbox-vm

High sierra and xcode 9 would be out... Any chance you'd be willing to do an image update?

Sure. I plan to update it after returning from vacation, in 2-3 weeks

authors: AndrewDryga hactar mhsjlw mikemadden42

repo: AndrewDryga/vagrant-box-osx


text:
Ignoring trailing whitespaces on join

Having this in a ruby file:
User.select(:first_name, :last_name)
    .distinct
    .joins(:posts)
    .where(
      signed_up: true,
      'posts.subject': 'test'
    )

and trying to join them, gives me this:
User.select(:first_name, :last_name)    .distinct    .joins(:posts)    .where(      signed_up: true,      'posts.subject': 'test'    )

I have added let g:splitjoin_normalize_whitespace = 1 in my vim.rc file, but still no luck. Is there anyway to ignore the initial whitespaces by default whenever doing join?

Sorry I took a while to get around to this.
I stand slightly corrected on this one:

Unfortunately, the problem is not the whitespace -- this style of joining is not supported yet.

It sort of was, for method calls with trailing dots, I just hadn't documented it :). I extended the functionality to work with leading dots as well, so this should, I think, fix your issue: https://github.com/AndrewRadev/splitjoin.vim/blob/8bcb95368ef7e0955b341e1c5d4097bdca5cf538/doc/splitjoin.txt#L381-L392
Could you try it out and let me know how it feels to you?

Hey, sorry for late response I thought I use it in real life coding for a while and then comment. It looks really nice and works for method joins. However for method parameters like this, it still doesn't work:
    create(:comb_bet_with_groups,
           group_type: :teased,
           client_id: client.id,
           event: event,
           associated_runner: runner,
           event_type: event.event_type)

Although it works fine if I keep everything in a separate like this:
create(
      :comb_bet_with_groups,
      group_type: :teased,
      client_id: client.id,
      event: event,
      associated_runner: runner,
      event_type: event.event_type
    )

Generally I don't find it a big issue though. Thank you very much for the effort. It's fantastic!

I think I've fixed your problem with the method parameters, though it depends on the example. Your particular case should immediately join into a single line, but that's because it's one argument and multiple "options". This should also join the same way:
    create(:comb_bet_with_groups, :foo, :bar
           group_type: :teased,
           client_id: client.id)

On the other hand, if the :foo and :bar are on separate lines, it'll join them one by one and only then join the options. The plugin considers "arguments" and "options" (keyword args at the end of the method call) separately. There's a flag that changes the behaviour in some cases, but it wouldn't work this time, I think.
This area is generally a bit messy. Ruby function calls are complicated, both in terms of possible syntaxes, and possible styles. But I think it should work in a useful way now, at least?

Yeah certainly at this point I call this done. Thank you very much for the effort. I close the issue :)

authors: AndrewRadev arashm


text:
Не собирается с использованием dockertex make

Описание ошибки
./dissertation.tex:52: LaTeX Error: Command \chapterformat undefined.
Воспроизведение
Описание шагов, приводящих к ошибке:

Склонировать свежий мастер
Запустить dockertex make

А должно работать потому, что есть вот это https://github.com/AndreyAkinshin/Russian-Phd-LaTeX-Dissertation-Template/blob/master/install-dockertex.sh и https://github.com/AndreyAkinshin/Russian-Phd-LaTeX-Dissertation-Template/blob/master/Readme/Installation.md#в-ubuntu-с-texlive-внутри-контейнера-dockertex ?
@N0rbert поможете тут диагностировать проблему с dockertex и, может, обновить инструкции и заготовки?

Да, делал все по этим инструкциями на Ubuntu 18.04. Сейчас сижу жду, накатываю нативно новый TexLive 2022.

Вот с TexLive 2019+ вроде работает. Хотя на последний (или TexLive 2021) уже какие-то доработки ради siunitx делали в шаблоне. Если что, pull request welcome.

Попробовал переписать скрипты здесь на использование новых образов контейнеров - raabf/texstudio-versions:texlive2019 и raabf/texstudio-versions:latest (2016 почему-то) - в обоих случаях есть ошибки сборки диссертации.
Проект dockertex выглядит заброшенным, там последний коммит от 29 июня 2021 года.
Со времени моего PR прошло 3 года, так что все эти проблемы вполне ожидаемы.
Написал автору dockertex с просьбой обновления его контейнеров.

authors: Lenchik N0rbert SweetVishnya


text:
Memory leak with on-the-fly class instances.

Describe the bug
memory leak
To Reproduce
While generating -h object on the fly from an existing h a memory leak occurs: objects are not destructed properly?

After array reimplementation as a class member the problem is gone (from: https://github.com/AngryMaciek/hypercomplex/commit/61880a6d1d8e9aaf0696996396b4a1d5f1ff2820)

repo: AngryMaciek/hypercomplex


text:
✨[Feature Request]: Improvement of About Us cards

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
Will improve the about us cards by adding a flipping cards effect
Add ScreenShots

Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

@Anishkagupta04 @varshith257
Please assign this issue to me.
Thank you.


text:
Old Twitter logo in footer in place of X logo

Description
Replaced the old twitter logo with the new X logo
Related Issues
None
Closes
Type of PR
[Bug] (✅)
Screenshots
Previous Output

Fixed Output

Checklist
[ x] I have gone through the contributing guide
[x ] I have updated my branch and synced it with project main branch before making this PR
[x ] I have performed a self-review of my code
[x ] I have tested the changes thoroughly before submitting this pull request.
[x ] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x ] I have commented my code, particularly in hard-to-understand areas.

@Vd7905 please change the icon to all html pages in website in footer section.

@Vd7905 please change the icon to all html pages in website in footer section.

ok

@Vd7905 please delete the forke and create again. or create new branch.


text:
glitch bandeau noir

Disparait progressivement quand on ajoute des points light

J'ai enqueté ca vient des points lights

C'est cet appel qui cree cette ligne noir.
@paulbaron , t'as une idee ?

Ya les normales qui sont pétées aussi avec le ateriaux red_dutch.mage

C'est un bug quand l'entité dans laquelle est la light est scale.
Comme la elle est dans l'entity du sol, elle est scale n'importe comment. Je vais essayer de régler ce probleme.

Done

Super gg !
Le ven. 4 sept. 2015 09:13, Paul Baron notifications@github.com a écrit :

Done
—
Reply to this email directly or view it on GitHub
https://github.com/Another-Game-Engine/AGE/issues/569#issuecomment-137732514
.

authors: cesarl paulbaron

repo: Another-Game-Engine/AGE


text:
Feature Request: Expose API in the global environment within the game so that it is actually can be interacted with for macros, without importing directly.

While what is mentioned seems very nice, I can't seem to find the ways of accessing the newly exposed API. Can you maybe provide examples of how to access it - because as far as I can see it from the code, it is only exported? Because if yes, maybe you can expose it within global environment within the game, so it could be used in macros, etc.
Thank you.

Just for example, something as simple as this already makes the api be exposed and allow it to be interacted with-

An oversight on my part. The API should be available at TokenAuraRing.
I have updated the documentation with an example.

authors: AnthonyEdmonds Deyzeria

repo: AnthonyEdmonds/token-aura-ring


text:
Add ape_assert utility method

Overview
Inspired from this method: https://github.com/starkware-libs/cairo-lang/blob/master/src/starkware/starkware_utils/error_handling.py#L160-L166
This is better than the normal assert statement because it is more prod-friendly.
IDK this is just something I liked and wanted to track! It would be a fun one to implement use, and share.
Specification
def ape_assert(expr: bool, fail_message: str):
    """
    Verifies that the given expression is ``True``.
    Inspired from https://github.com/starkware-libs/cairo-lang/blob/master/src/starkware/starkware_utils/error_handling.py#L16

    Raises:
        :class:`~ape.exceptions.ApeAssertionError`: When the expression evaluates to ``False``.
    """
    if not expr:
        raise ApeAssertionError(fail_message)

Dependencies
Include links to any open issues that must be resolved before this feature can be implemented.

This for testing purposes, or for use inside core/plugins?

It is for use anywhere. It is just an idea for making code cleaner, like anywhere where we are raising AssertionError right now

closing as nevermind

authors: antazoey fubuloubu unparalleled-js

repo: ApeWorX/ape


text:
Unable to read variable-length attribute

Hello,
reading the variable-length attribute is causing the following exception:  Exception: Variable-length sequence data can only be decoded as array (incompatible type: System.String).
The exception says that type System.String is incompatible even though a type string[] has been used.
The code below successfully reads the variable-length type dataset, but reading the variable-length type attribute fails.
            var dataset_NUTS_keys = nativeFile.Dataset("/NUTS_keys");

            foreach (var attribute in dataset_NUTS_keys.Attributes())
            {
                var typeClass = attribute.Type.Class; // attribute.Type.Class is VariableLength

                //This attribute has the name DIMENSION_LIST and should contain the text 'NUTS'
                string[] attributeArray = attribute.Read<string[]>(); // Exception
            }

            var typeClass_NUTS_keys = dataset_NUTS_keys.Type.Class; // Type.Class is VariableLength

            string[] NUTS_keys = dataset_NUTS_keys.Read<string[]>(); // Successful

A copy of the HDF5 file used is here
If attribute.Read<string[][]>() is used the exception is: Bitfield data can only be decoded as NativeObjectReference1 (incompatible type: System.String)
If NativeObjectReference1 is used the exception is: Unable to decode a reference type as value type.
Any help would be greatly appreciated.

Thanks for reporting the issue, I will check it now

Thanks for reporting that issue, I will check it now!

Yes it works. Thank you very much for your help.

Perfect :-)


text:
Blocker in the Reader.

Each reader has a blocker which has a message list inside. Why use a list if when publish a message push in front and when observe take the message in front?

It is a queue and not a list, What do you mean by list
https://github.com/ApolloAuto/apollo/blob/11104c3d8bead0034dbf0723bf682ae4c2c97d99/cyber/blocker/blocker.h#L107-L110

What policy is adopted in this queue?

it's a queue, without any priority.
I think there is no way to control the priority of the message for now, only the priority of the coroutine?

it's a queue, without any priority.
I think there is no way to control the priority of the message for now, only the priority of the coroutine?

it's a queue, without any priority.
I think there is no way to control the priority of the message for now, only the priority of the coroutine?

NO policy, just FIFO.

it's a queue, without any priority.
I think there is no way to control the priority of the message for now, only the priority of the coroutine?

NO policy, just FIFO.

What policy is adopted in this queue?

NO policy, just FIFO.

What policy is adopted in this queue?

NO policy, just FIFO.

Ok, but I have a question. For example in the code below,  in the function called at line 282 happens  observed_msg_queue_ = published_msg_queue_; and in the function called at the line 283
if (observed_msg_queue_.empty()) {
    return dummy_msg_;
  }
  return *observed_msg_queue_.front();

Why I take the element in front of the queue and not in the back?

https://github.com/ApolloAuto/apollo/blob/55fe6dab85b48220f9f9cc2a0266fb21fc16f64f/modules/control/control_component.cc#L279-L290

Ok, but I have a question. For example in the code below,  in the function called at line 282 happens  observed_msg_queue_ = published_msg_queue_; and in the function called at the line 283
if (observed_msg_queue_.empty()) {
    return dummy_msg_;
  }
  return *observed_msg_queue_.front();

Why I take the element in front of the queue and not in the back?

https://github.com/ApolloAuto/apollo/blob/55fe6dab85b48220f9f9cc2a0266fb21fc16f64f/modules/control/control_component.cc#L279-L290

I was wrong before, this is indeed a list.
  using MessageQueue = std::list<MessagePtr>;

I search the method, seems all the modules just used GetLatestObserved. Then only one size buffer is enough, if we don't need old messages.
Messages will put in front of the list, and when the buffer is full, it will pop at the back. So the latest message will always in the front.

I was wrong before, this is indeed a list.
  using MessageQueue = std::list<MessagePtr>;

I search the method, seems all the modules just used GetLatestObserved. Then only one size buffer is enough, if we don't need old messages.
Messages will put in front of the list, and when the buffer is full, it will pop at the back. So the latest message will always in the front.

Closed due to inactivity. If the problem persists, pls feel free to reopen it or create a new one and refer to it.

repo: ApolloAuto/apollo


text:
关于Apollo RTK几个问题请教

Apollo 开发者，您好！
几个关于定位的问题请教：
1.通过接收解算方式：rtk_solution_type: RTK_RECEIVER_SOLUTION，
rtk_to {
format: NOVATEL_BINARY
serial {
device: "/dev/ttyUSB0"
baud_rate: 115200
}
}    这里配置把rtcm差分数据发送到接收器，接收器解算后，
Apollo怎样接收解算后的精确定位数据，修改那个配置文件呢？
2.启动localization模块后，代码rtk_localization.cc中的83行：
if (AdapterManager::GetGps()->Empty()) {
成立。请问是什么原因导致AdapterManager::GetGps()->Empty()？该怎么操作使AdapterManager::GetGps()返回不为空？
谢谢。

Gps messages are published by gnss driver. Take a look data_parser.cc where both Gps and Imu messages are published.

in data_parser.cc line 135： if (type == Parser::MessageType::NONE) break;  done，what should i do ? Thanks.

apollo提供了将NMEA-0183 格式的数据解析成proto类型的代码吗？

Closed due to inactivity. If the problem persists, pls feel free to reopen it or create a new one and refer to it.


text:
Use two buffers to handle message larger than 65536 bytes.

Existing bridge cannot handle messages larger than 65536 bytes. More details see https://github.com/lgsvl/simulator/issues/941.
This MR implemented the solution suggested by Yun and Martins on GitHub. If the big message is published at high frequency, the pending buffer may accumulate more and more data. To avoid too much accumulated data, I set a max size of 1GB and discard the pending buffer if its size is larger than the max size.

 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.Guodong Rong 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.

authors: CLAassistant rongguodong


text:
holp it supports specifying observe container

https://github.com/ApoorvSaxena/lozad.js/blob/65f9744a47261960b8a3ba9b73b0f6050fc91192/src/lozad.js#L47-L49
if the document can be replaced by a specified dom, it will be greater!
Maybe like this:
observe( { container = document } ) {
     const elements = container.querySelectorAll(selector)
}

@g8up can you explain the use case once? Also, need to think whether it should be passed in observe API call, or just once at the time of initialisation of lozad library.

I used it in a common image-list component of Vue.js，and holp it only observe .lozad just in the component's root element this.$el to get high performance.

I was also thinking about observing a container containing a bunch of images instead of observing each image separately. Does this make any difference in performance?

@sattes-faction it should surely make difference when observing a container instead of individual multiple images

authors: ApoorvSaxena g8up sattes-faction