[build] mingw-gcc14-git fails to build 32-bit dxvk 2.3 in src/d3d9/d3d9.dll.p/d3d9_mem.cpp.obj

Due to another issue with dxvk and mingw-gcc-13.2.1 (no DX apps work), I've decided to be brave, trying out a fresh mingw-gcc-git build from September 28th 2023. I saw the following build error in the 32-bit build with modest flags on my Haswell system. Maybe that's a pre-existing dxvk problem only revealed by the new compiler?! I've verified with mingw-gcc-12.3.1 that everything compiles fine with the old stable toolchain with the same dxvk version and compiler flags.
FAILED: src/d3d9/d3d9.dll.p/d3d9_mem.cpp.obj
i686-w64-mingw32-g++ -Isrc/d3d9/d3d9.dll.p -Isrc/d3d9 -I../../dxvk/src/d3d9 -I../../dxvk/include -I../../dxvk/include/vulkan/include -I../../dxvk/include/spirv/include -fdiagnostics-color=always -DNDEBUG -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=c++17 -O3 -msse -msse2 -msse3 -mfpmath=sse -Wimplicit-fallthrough -Wno-missing-field-initializers -Wno-unused-parameter -Wno-cast-function-type -Wno-unused-const-variable -Wno-missing-braces -DNOMINMAX -D_WIN32_WINNT=0xa00 -DDXVK_WSI_WIN32 -O3 -march=native -mtune=native -maes -mbmi2 -mpclmul -fno-semantic-interposition -flto=auto -fdevirtualize-at-ltrans -mharden-sls=none -MD -MQ src/d3d9/d3d9.dll.p/d3d9_mem.cpp.obj -MF src/d3d9/d3d9.dll.p/d3d9_mem.cpp.obj.d -o src/d3d9/d3d9.dll.p/d3d9_mem.cpp.obj -c ../../dxvk/src/d3d9/d3d9_mem.cpp
../../dxvk/src/d3d9/d3d9_mem.cpp: In element function »void dxvk::D3D9MemoryAllocator::FreeChunk(dxvk::D3D9MemoryChunk*)«:
../../dxvk/src/d3d9/d3d9_mem.cpp:52:25: error: »remove_if« is no element of »std«; did you mean »remove_cv«?
   52 |     m_chunks.erase(std::remove_if(m_chunks.begin(), m_chunks.end(), [&](auto& item) {
      |                         ^~~~~~~~~
      |                         remove_cv

Does it work if you add
#include <algorithm>

to d3d9_mem.cpp?
https://github.com/doitsujin/dxvk/blob/494f7fd38df9b0ec6b1d3137a6528d2f31d55452/src/d3d9/d3d9_mem.cpp#L6

Yes, that fixes that particular build error.

By the way, I still see the following build issue later on (which was also present in 13.2.1 on an earlier dxvk build):
FAILED: src/d3d11/d3d11.dll
i686-w64-mingw32-g++  -o src/d3d11/d3d11.dll src/d3d11/d3d11.dll.p/version.o src/d3d11/d3d11.dll.p/.._dxgi_dxgi_format.cpp.obj src/d3d11/d3d11.dll.p/d3d11_annotation.cpp.obj src/d3d11/d3d11.dll.p/d3d11_blend.cpp.obj src/d3d11/d3d11.dll.p/d3d11_buffer.cpp.obj src/d3d11/d3d11.dll.p/d3d11_class_linkage.cpp.obj src/d3d11/d3d11.dll.p/d3d11_cmdlist.cpp.obj src/d3d11/d3d11.dll.p/d3d11_context.cpp.obj src/d3d11/d3d11.dll.p/d3d11_context_def.cpp.obj src/d3d11/d3d11.dll.p/d3d11_context_ext.cpp.obj src/d3d11/d3d11.dll.p/d3d11_context_imm.cpp.obj src/d3d11/d3d11.dll.p/d3d11_cuda.cpp.obj src/d3d11/d3d11.dll.p/d3d11_depth_stencil.cpp.obj src/d3d11/d3d11.dll.p/d3d11_device.cpp.obj src/d3d11/d3d11.dll.p/d3d11_enums.cpp.obj src/d3d11/d3d11.dll.p/d3d11_features.cpp.obj src/d3d11/d3d11.dll.p/d3d11_fence.cpp.obj src/d3d11/d3d11.dll.p/d3d11_gdi.cpp.obj src/d3d11/d3d11.dll.p/d3d11_initializer.cpp.obj src/d3d11/d3d11.dll.p/d3d11_input_layout.cpp.obj src/d3d11/d3d11.dll.p/d3d11_interop.cpp.obj src/d3d11/d3d11.dll.p/d3d11_main.cpp.obj src/d3d11/d3d11.dll.p/d3d11_on_12.cpp.obj src/d3d11/d3d11.dll.p/d3d11_options.cpp.obj src/d3d11/d3d11.dll.p/d3d11_query.cpp.obj src/d3d11/d3d11.dll.p/d3d11_rasterizer.cpp.obj src/d3d11/d3d11.dll.p/d3d11_resource.cpp.obj src/d3d11/d3d11.dll.p/d3d11_sampler.cpp.obj src/d3d11/d3d11.dll.p/d3d11_shader.cpp.obj src/d3d11/d3d11.dll.p/d3d11_state.cpp.obj src/d3d11/d3d11.dll.p/d3d11_state_object.cpp.obj src/d3d11/d3d11.dll.p/d3d11_swapchain.cpp.obj src/d3d11/d3d11.dll.p/d3d11_texture.cpp.obj src/d3d11/d3d11.dll.p/d3d11_util.cpp.obj src/d3d11/d3d11.dll.p/d3d11_video.cpp.obj src/d3d11/d3d11.dll.p/d3d11_view_dsv.cpp.obj src/d3d11/d3d11.dll.p/d3d11_view_rtv.cpp.obj src/d3d11/d3d11.dll.p/d3d11_view_srv.cpp.obj src/d3d11/d3d11.dll.p/d3d11_view_uav.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_blend.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_buffer.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_depth_stencil.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_device.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_input_layout.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_multithread.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_query.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_rasterizer.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_sampler.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_texture.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_util.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_view_dsv.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_view_rtv.cpp.obj src/d3d11/d3d11.dll.p/.._d3d10_d3d10_view_srv.cpp.obj -Wl,--allow-shlib-undefined -Wl,-O1 -shared ../../dxvk/src/d3d11/d3d11.def -Wl,--start-group -Wl,--out-implib=src/d3d11/d3d11.dll.a -static -static-libgcc -static-libstdc++ -Wl,--file-alignment=4096 -Wl,--enable-stdcall-fixup -Wl,--kill-at -Wl,-O3,--as-needed,-Bsymbolic-functions,--sort-common,-flto=auto -Wl,--gc-sections -march=native -mtune=native -maes -mbmi2 -mpclmul src/dxbc/libdxbc.a src/dxvk/libdxvk.a src/util/libutil.a src/spirv/libspirv.a src/wsi/libwsi.a subprojects/libdisplay-info/libdisplay-info.a src/vulkan/libvkcommon.a -ldxgi -pthread -lm -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -Wl,--end-group
../../dxvk/src/d3d11/d3d11_buffer.cpp: In function 'bool dxvk::CheckViewCompatibility(const DxvkBufferViewCreateInfo&, const DxvkBufferViewCreateInfo&)':
../../dxvk/src/d3d11/d3d11_buffer.cpp:206:3: error: no register to spill
  206 |   }
      |   ^
../../dxvk/src/d3d11/d3d11_buffer.cpp:206:3: error: this is the insn:
(insn 203 219 220 17 (parallel [
            (set (reg:DI 153 [142])
                (and:DI (not:DI (reg:DI 152))
                    (reg/v:DI 151 [orig:96 features ] [96])))
            (clobber (reg:CC 17 flags))
        ]) "../../dxvk/src/d3d11/d3d11_buffer.cpp":294:40 481 {*andndi3_doubleword_bmi}
     (expr_list:REG_DEAD (reg:DI 152)
        (expr_list:REG_DEAD (reg/v:DI 151 [orig:96 features ] [96])
            (expr_list:REG_UNUSED (reg:CC 17 flags)
                (nil)))))
../../dxvk/src/d3d11/d3d11_buffer.cpp:206: confused by earlier errors, bailing out

That is an Internal Compiler Error. It's a bug in GCC and should be reported to them.

Thanks, I should add a bit more context: Your fix unblocked me getting proton-cachyos to compile with mingw-gcc14-git; however the final dxvk binary still doesn't seem to work with several tested DX11 titles that crash at startup (e.g. Battlefield 1). This was also the case with minw-gcc-13.2.1; I also use quite aggressive compiler flags.
I can get it working again by exchanging the dxvk files under /usr/share/steam/proton with dxvk binaries compiled with mingw-gcc12.3.1 which I produce with a specific dxvk-mingw PKGBUILD. This way I get the best of the old and the new toolchain and get the DX11 titles working again.
As mingw-gcc is still at 12 on Arch Linux, most people compiling from source won't see this issue until Arch upgrades its mingw toolchain.

@ms178 Are you still having issues with this?

@ms178 Are you still having issues with this?

I haven't used mingw-gcc-14-git for a while. I also saw other issues with the stable GCC-14 release and the current MinGW version that made me abandon that GCC revision alltogether as it probably needs some more work from the MinGW side. However, using a recent mingw-gcc-13 snapshot some weeks ago, I still saw problems with DXVK in general using my aggressive flags that used to work with 12.3.1 which lead to non-starting or exciting DX games. But that is a different issue from the one originally reported here and probably not worth investigating at the moment.
Due to a recent switch in hardware, I am also not on Linux at the moment to investigate further.

Fixed with https://github.com/doitsujin/dxvk/commit/38308d443e802bcc0c76923a0fdd77a74cd5dc8d


Benchmark and Weight issue for v0.9.37

There are some benchmark and weight issues as well as trait bound not satisfied:
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
...   |
138 | |
139 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `nonce_call` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/benchmarking.rs:190:27
    |
190 |         assert_eq!(Pallet::<T>::nonce_call(0), 0);
    |                                 ^^^^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `nonce_call` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
...   |
147 | |
148 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `calls` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/benchmarking.rs:191:24
    |
191 |         assert!(Pallet::<T>::calls(0, 0).is_none());
    |                              ^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `calls` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
...   |
151 | |
152 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `votes` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/benchmarking.rs:192:27
    |
192 |         assert_eq!(Pallet::<T>::votes(0, 0), 0);
    |                                 ^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `votes` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
...   |
164 | |
165 | |     #[pallet::storage]
    | |_____________________^

error[E0220]: associated type `Currency` not found for `T`
   --> src/benchmarking.rs:202:6
    |
202 |         T::Currency::make_free_balance_be(&alice, val.saturating_mul(4_000_000_000u32.into()));
    |            ^^^^^^^^ associated type `Currency` not found

error[E0599]: the function or associated item `create_supersig` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/benchmarking.rs:208:17
    |
208 |             Pallet::<T>::create_supersig(RawOrigin::Signed(alice.clone()).into(),
    |                          ^^^^^^^^^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `create_supersig` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:234:10
    |
234 |     impl<T: Config> Pallet<T> {
    |             ^^^^^^  ---------
    |             |
    |             unsatisfied trait bound introduced here

error[E0599]: no variant or associated item named `new_call_variant_leave_supersig` found for enum `frame_system::Call` in the current scope
   --> src/benchmarking.rs:17:1
    |
17  | / benchmarks! {
18  | |     create_supersig {
19  | |         let z in 0 .. T::MaxAccountsPerTransaction::get() - 1;
20  | |
...   |
217 | |     }
218 | | }
    | | ^
    | | |
    | |_variant or associated item not found in `Call<T>`
    |   help: there is an associated function with a similar name: `new_call_variant_remark`
    |
    = note: this error originates in the macro `$crate::benchmarks_iter` which comes from the expansion of the macro `benchmarks` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0599]: the function or associated item `total_members` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/benchmarking.rs:213:27
    |
213 |         assert_eq!(Pallet::<T>::total_members(0), 2);
    |                                 ^^^^^^^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `total_members` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
...   |
138 | |
139 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `members` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/benchmarking.rs:214:27
    |
214 |         assert_eq!(Pallet::<T>::members(0, alice), Role::NotMember);
    |                                 ^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `members` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
132 | |     pub type NonceSupersig<T: Config> = StorageValue<_, SupersigId, ValueQuery>;
133 | |
134 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `members` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/benchmarking.rs:215:27
    |
215 |         assert_eq!(Pallet::<T>::members(0, bob), Role::Standard);
    |                                 ^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `members` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
132 | |     pub type NonceSupersig<T: Config> = StorageValue<_, SupersigId, ValueQuery>;
133 | |
134 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `members` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/benchmarking.rs:216:27
    |
216 |         assert_eq!(Pallet::<T>::members(0, charlie), Role::Standard);
    |                                 ^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `members` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
132 | |     pub type NonceSupersig<T: Config> = StorageValue<_, SupersigId, ValueQuery>;
133 | |
134 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `iter` exists for struct `StorageDoubleMap<_GeneratedPrefixForStorageMembers<T>, Twox64Concat, u128, ..., ..., ..., ...>`, but its trait bounds were not satisfied
   --> src/rpc.rs:47:17
    |
47  |           Members::<T>::iter()
    |                         ^^^^ function or associated item cannot be called due to unsatisfied trait bounds
    |
   ::: src/lib.rs:134:15
    |
134 |       #[pallet::storage]
    |  _______________-
135 | |     #[pallet::getter(fn members)]
136 | |     pub type Members<T: Config> =
    | |_______- doesn't satisfy `_: StorageInstance`
    |
    = note: the full type name has been written to '/root/pallet_supersig/target/debug/deps/pallet_supersig-a3c730440295ca75.long-type-14024395909809660286.txt'
    = note: the following trait bounds were not satisfied:
            `_GeneratedPrefixForStorageMembers<T>: StorageInstance`
note: the trait `StorageInstance` must be implemented
   --> /root/.cargo/git/checkouts/substrate-7e08433d4c370a21/946507b/frame/support/src/traits/storage.rs:47:1
    |
47  | pub trait StorageInstance {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: the function or associated item `get_supersig_id_from_account` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/rpc.rs:61:27
    |
61  |         let supersig_id = Self::get_supersig_id_from_account(supersig_account)?;
    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `get_supersig_id_from_account` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:624:10
    |
624 |     impl<T: Config> Pallet<T> {
    |             ^^^^^^  ---------
    |             |
    |             unsatisfied trait bound introduced here

error[E0599]: the function or associated item `iter_prefix` exists for struct `StorageDoubleMap<_GeneratedPrefixForStorageMembers<T>, Twox64Concat, u128, ..., ..., ..., ...>`, but its trait bounds were not satisfied
   --> src/rpc.rs:62:20
    |
62  |           Ok(Members::<T>::iter_prefix(supersig_id).collect())
    |                            ^^^^^^^^^^^ function or associated item cannot be called due to unsatisfied trait bounds
    |
   ::: src/lib.rs:134:15
    |
134 |       #[pallet::storage]
    |  _______________-
135 | |     #[pallet::getter(fn members)]
136 | |     pub type Members<T: Config> =
    | |_______- doesn't satisfy `_: StorageInstance`
    |
    = note: the full type name has been written to '/root/pallet_supersig/target/debug/deps/pallet_supersig-a3c730440295ca75.long-type-14024395909809660286.txt'
    = note: the following trait bounds were not satisfied:
            `_GeneratedPrefixForStorageMembers<T>: StorageInstance`
note: the trait `StorageInstance` must be implemented
   --> /root/.cargo/git/checkouts/substrate-7e08433d4c370a21/946507b/frame/support/src/traits/storage.rs:47:1
    |
47  | pub trait StorageInstance {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: the function or associated item `get_supersig_id_from_account` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/rpc.rs:68:27
    |
68  |         let supersig_id = Self::get_supersig_id_from_account(supersig_account)?;
    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `get_supersig_id_from_account` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:624:10
    |
624 |     impl<T: Config> Pallet<T> {
    |             ^^^^^^  ---------
    |             |
    |             unsatisfied trait bound introduced here

error[E0599]: the function or associated item `total_members` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/rpc.rs:69:28
    |
69  |         let member_count = Self::total_members(supersig_id);
    |                                  ^^^^^^^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `total_members` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
...   |
138 | |
139 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `iter_prefix` exists for struct `StorageNMap<_GeneratedPrefixForStorageMembersVotes<T>, (Key<..., ...>, ..., ...), ..., ...>`, but its trait bounds were not satisfied
   --> src/rpc.rs:72:37
    |
72  |                   let voters = MembersVotes::<T>::iter_prefix((supersig_id, call_id))
    |                                                   ^^^^^^^^^^^ function or associated item cannot be called due to unsatisfied trait bounds
    |
   ::: src/lib.rs:170:15
    |
170 |       #[pallet::storage]
    |  _______________-
171 | |     #[pallet::getter(fn members_votes)]
172 | |     pub type MembersVotes<T: Config> = StorageNMap<
    | |_______- doesn't satisfy `_: StorageInstance`
    |
    = note: the full type name has been written to '/root/pallet_supersig/target/debug/deps/pallet_supersig-a3c730440295ca75.long-type-7983791472643439633.txt'
    = note: the following trait bounds were not satisfied:
            `_GeneratedPrefixForStorageMembersVotes<T>: StorageInstance`
note: the trait `StorageInstance` must be implemented
   --> /root/.cargo/git/checkouts/substrate-7e08433d4c370a21/946507b/frame/support/src/traits/storage.rs:47:1
    |
47  | pub trait StorageInstance {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: the function or associated item `get_supersig_id_from_account` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/rpc.rs:90:27
    |
90  |         let supersig_id = Self::get_supersig_id_from_account(supersig_account)?;
    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `get_supersig_id_from_account` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:624:10
    |
624 |     impl<T: Config> Pallet<T> {
    |             ^^^^^^  ---------
    |             |
    |             unsatisfied trait bound introduced here

error[E0599]: the function or associated item `calls` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/rpc.rs:91:20
    |
91  |         let call = Self::calls(supersig_id, call_id).ok_or(Error::<T>::CallNotFound)?;
    |                          ^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `calls` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
...   |
151 | |
152 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `total_members` exists for struct `Pallet<T>`, but its trait bounds were not satisfied
   --> src/rpc.rs:92:28
    |
92  |         let member_count = Self::total_members(supersig_id);
    |                                  ^^^^^^^^^^^^^ function or associated item cannot be called on `Pallet<T>` due to unsatisfied trait bounds
    |
   ::: src/lib.rs:128:5
    |
128 |     pub struct Pallet<T>(_);
    |     -------------------- function or associated item `total_members` not found for this struct
    |
note: trait bound `T: pallet::Config` was not satisfied
   --> src/lib.rs:128:13
    |
128 |       pub struct Pallet<T>(_);
    |  ________________^
129 | |
130 | |     #[pallet::storage]
131 | |     #[pallet::getter(fn nonce_supersig)]
...   |
138 | |
139 | |     #[pallet::storage]
    | |_____________________^

error[E0599]: the function or associated item `iter_prefix` exists for struct `StorageNMap<_GeneratedPrefixForStorageMembersVotes<T>, (Key<..., ...>, ..., ...), ..., ...>`, but its trait bounds were not satisfied
   --> src/rpc.rs:93:35
    |
93  |           let voters = MembersVotes::<T>::iter_prefix((supersig_id, call_id))
    |                                           ^^^^^^^^^^^ function or associated item cannot be called due to unsatisfied trait bounds
    |
   ::: src/lib.rs:170:15
    |
170 |       #[pallet::storage]
    |  _______________-
171 | |     #[pallet::getter(fn members_votes)]
172 | |     pub type MembersVotes<T: Config> = StorageNMap<
    | |_______- doesn't satisfy `_: StorageInstance`
    |
    = note: the full type name has been written to '/root/pallet_supersig/target/debug/deps/pallet_supersig-a3c730440295ca75.long-type-7983791472643439633.txt'
    = note: the following trait bounds were not satisfied:
            `_GeneratedPrefixForStorageMembersVotes<T>: StorageInstance`
note: the trait `StorageInstance` must be implemented
   --> /root/.cargo/git/checkouts/substrate-7e08433d4c370a21/946507b/frame/support/src/traits/storage.rs:47:1
    |
47  | pub trait StorageInstance {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0308]: mismatched types
  --> src/weights.rs:55:50
   |
55 |             .saturating_add((4_138_000u64).saturating_mul(z as Weight))
   |                                            -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
   |                                            |
   |                                            arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:56:20
   |
56 |             .saturating_add(T::DbWeight::get().reads(8u64))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:57:67
   |
57 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
   |                                                             -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
   |                                                             |
   |                                                             arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:57:20
   |
57 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:58:20
   |
58 |             .saturating_add(T::DbWeight::get().writes(8u64))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:59:68
   |
59 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
   |                                                              -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
   |                                                              |
   |                                                              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:59:20
   |
59 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:53:3
   |
52 |       fn create_supersig(z: u32, ) -> Weight {
   |                                       ------ expected `Weight` because of return type
53 | /         (104_842_000u64)
54 | |             // Standard Error: 307_000
55 | |             .saturating_add((4_138_000u64).saturating_mul(z as Weight))
56 | |             .saturating_add(T::DbWeight::get().reads(8u64))
57 | |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
58 | |             .saturating_add(T::DbWeight::get().writes(8u64))
59 | |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
   | |__________________________________________________________________________________________^ expected `Weight`, found `u64`

error[E0605]: non-primitive cast: `u32` as `Weight`
  --> src/weights.rs:55:50
   |
55 |             .saturating_add((4_138_000u64).saturating_mul(z as Weight))
   |                                                           ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0605]: non-primitive cast: `u32` as `Weight`
  --> src/weights.rs:57:67
   |
57 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
   |                                                                            ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0605]: non-primitive cast: `u32` as `Weight`
  --> src/weights.rs:59:68
   |
59 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
   |                                                                             ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0308]: mismatched types
  --> src/weights.rs:68:46
   |
68 |             .saturating_add((1_000u64).saturating_mul(z as Weight))
   |                                        -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
   |                                        |
   |                                        arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:69:20
   |
69 |             .saturating_add(T::DbWeight::get().reads(3u64))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:70:20
   |
70 |             .saturating_add(T::DbWeight::get().writes(3u64))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:66:3
   |
65 |       fn submit_call(z: u32, ) -> Weight {
   |                                   ------ expected `Weight` because of return type
66 | /         (42_824_000u64)
67 | |             // Standard Error: 0
68 | |             .saturating_add((1_000u64).saturating_mul(z as Weight))
69 | |             .saturating_add(T::DbWeight::get().reads(3u64))
70 | |             .saturating_add(T::DbWeight::get().writes(3u64))
   | |____________________________________________________________^ expected `Weight`, found `u64`

error[E0605]: non-primitive cast: `u32` as `Weight`
  --> src/weights.rs:68:46
   |
68 |             .saturating_add((1_000u64).saturating_mul(z as Weight))
   |                                                       ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0308]: mismatched types
  --> src/weights.rs:79:20
   |
79 |             .saturating_add(T::DbWeight::get().reads(5u64))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:80:20
   |
80 |             .saturating_add(T::DbWeight::get().writes(2u64))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:78:3
   |
77 |       fn approve_call() -> Weight {
   |                            ------ expected `Weight` because of return type
78 | /         (51_715_000u64)
79 | |             .saturating_add(T::DbWeight::get().reads(5u64))
80 | |             .saturating_add(T::DbWeight::get().writes(2u64))
   | |____________________________________________________________^ expected `Weight`, found `u64`

error[E0308]: mismatched types
  --> src/weights.rs:89:20
   |
89 |             .saturating_add(T::DbWeight::get().reads(3u64))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:90:20
   |
90 |             .saturating_add(T::DbWeight::get().writes(4u64))
   |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
   |              |
   |              arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
  --> src/weights.rs:88:3
   |
87 |       fn remove_call() -> Weight {
   |                           ------ expected `Weight` because of return type
88 | /         (51_279_000u64)
89 | |             .saturating_add(T::DbWeight::get().reads(3u64))
90 | |             .saturating_add(T::DbWeight::get().writes(4u64))
   | |____________________________________________________________^ expected `Weight`, found `u64`

error[E0308]: mismatched types
  --> src/weights.rs:99:50
   |
99 |             .saturating_add((7_111_000u64).saturating_mul(z as Weight))
   |                                            -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
   |                                            |
   |                                            arguments to this method are incorrect
   |
note: associated function defined here
  --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
   = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:100:20
    |
100 |             .saturating_add(T::DbWeight::get().reads(6u64))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:101:67
    |
101 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
    |                                                             -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
    |                                                             |
    |                                                             arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:101:20
    |
101 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:102:20
    |
102 |             .saturating_add(T::DbWeight::get().writes(6u64))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:103:68
    |
103 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
    |                                                              -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
    |                                                              |
    |                                                              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:103:20
    |
103 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:97:3
    |
96  |       fn add_members(z: u32, ) -> Weight {
    |                                   ------ expected `Weight` because of return type
97  | /         (57_370_000u64)
98  | |             // Standard Error: 193_000
99  | |             .saturating_add((7_111_000u64).saturating_mul(z as Weight))
100 | |             .saturating_add(T::DbWeight::get().reads(6u64))
101 | |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
102 | |             .saturating_add(T::DbWeight::get().writes(6u64))
103 | |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
    | |__________________________________________________________________________________________^ expected `Weight`, found `u64`

error[E0605]: non-primitive cast: `u32` as `Weight`
  --> src/weights.rs:99:50
   |
99 |             .saturating_add((7_111_000u64).saturating_mul(z as Weight))
   |                                                           ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0605]: non-primitive cast: `u32` as `Weight`
   --> src/weights.rs:101:67
    |
101 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
    |                                                                            ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0605]: non-primitive cast: `u32` as `Weight`
   --> src/weights.rs:103:68
    |
103 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
    |                                                                             ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0308]: mismatched types
   --> src/weights.rs:112:50
    |
112 |             .saturating_add((7_678_000u64).saturating_mul(z as Weight))
    |                                            -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
    |                                            |
    |                                            arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:113:20
    |
113 |             .saturating_add(T::DbWeight::get().reads(3u64))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:114:67
    |
114 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
    |                                                             -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
    |                                                             |
    |                                                             arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:114:20
    |
114 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:115:20
    |
115 |             .saturating_add(T::DbWeight::get().writes(3u64))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:116:68
    |
116 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
    |                                                              -------------- ^^^^^^^^^^^ expected `u64`, found `Weight`
    |                                                              |
    |                                                              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:116:20
    |
116 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:110:3
    |
109 |       fn remove_members(z: u32, ) -> Weight {
    |                                      ------ expected `Weight` because of return type
110 | /         (39_597_000u64)
111 | |             // Standard Error: 168_000
112 | |             .saturating_add((7_678_000u64).saturating_mul(z as Weight))
113 | |             .saturating_add(T::DbWeight::get().reads(3u64))
114 | |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
115 | |             .saturating_add(T::DbWeight::get().writes(3u64))
116 | |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
    | |__________________________________________________________________________________________^ expected `Weight`, found `u64`

error[E0605]: non-primitive cast: `u32` as `Weight`
   --> src/weights.rs:112:50
    |
112 |             .saturating_add((7_678_000u64).saturating_mul(z as Weight))
    |                                                           ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0605]: non-primitive cast: `u32` as `Weight`
   --> src/weights.rs:114:67
    |
114 |             .saturating_add(T::DbWeight::get().reads((1u64).saturating_mul(z as Weight)))
    |                                                                            ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0605]: non-primitive cast: `u32` as `Weight`
   --> src/weights.rs:116:68
    |
116 |             .saturating_add(T::DbWeight::get().writes((1u64).saturating_mul(z as Weight)))
    |                                                                             ^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object

error[E0308]: mismatched types
   --> src/weights.rs:126:20
    |
126 |             .saturating_add(T::DbWeight::get().reads(5u64))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:127:20
    |
127 |             .saturating_add(T::DbWeight::get().writes(8u64))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:125:3
    |
124 |       fn delete_supersig() -> Weight {
    |                               ------ expected `Weight` because of return type
125 | /         (110_730_000u64)
126 | |             .saturating_add(T::DbWeight::get().reads(5u64))
127 | |             .saturating_add(T::DbWeight::get().writes(8u64))
    | |____________________________________________________________^ expected `Weight`, found `u64`

error[E0308]: mismatched types
   --> src/weights.rs:135:20
    |
135 |             .saturating_add(T::DbWeight::get().reads(4u64))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:136:20
    |
136 |             .saturating_add(T::DbWeight::get().writes(4u64))
    |              -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `Weight`
    |              |
    |              arguments to this method are incorrect
    |
note: associated function defined here
   --> /rustc/f3126500f25114ba4e0ac3e76694dd45a22de56d/library/core/src/num/mod.rs:927:5
    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0308]: mismatched types
   --> src/weights.rs:134:3
    |
133 |       fn leave_supersig() -> Weight {
    |                              ------ expected `Weight` because of return type
134 | /         (53_207_000u64)
135 | |             .saturating_add(T::DbWeight::get().reads(4u64))
136 | |             .saturating_add(T::DbWeight::get().writes(4u64))
    | |____________________________________________________________^ expected `Weight`, found `u64`

Some errors have detailed explanations: E0220, E0308, E0576, E0599, E0605.
For more information about an error, try `rustc --explain E0220`.
error: could not compile `pallet-supersig` due to 121 previous errors

fixed by removing use frame_system:Config, and editing the weights file to have Weight::from_ref_time( as well changing e.g. 4u64 with 4 as u64. cargo check now completes


made a little change for Amazon S3 API's compatibility

Chris
We have a scenario that the file's uploading will not follow http multipart way. Amazon S3 PUT API
I made a simple adapter for above requirement, please help to review the code change
Thanks!

How about refactor it a bit? The function is getting longer and longer. It's a good time to put the logic into smaller functions with your changes.

Good suggestion, I will refactor and submit again

Will create another new merge request after refactoring work


Cellular infection phenotyping using annotated viral sensor data & label-free images

The goal of the analysis is to identify infected and uninfected cells in a FOV using either viral sensor fluorescence or label-free images with nuclear instance segmentation label to output a nuclear label identifying infected cells. The value of the nuclear label for each cell will indicate the following:
0: background
1: uninfected
2: Infected
3: unidentified (cases where the sensor has started relocalization, but the expression is not good enough to categorize as the infected state).
A manually annotated dataset with the above criteria is available here: /hpc/projects/intracellular_dashboard/viral-sensor/infection_classification/datasets/Exp_2023_09_28_DENV_A2_infMarked.zarr
The code is added to examples/infection_phenotyping folder on the branch.

The file infection_annotator.py uses napari to help annotate the nuclear label.
The file infection_classification_model.py is a work in progress on building a model for translation of instance segmentation of nuclear label into infection annotated label using the viral sensor fluorescence images or the label-free images.

@mattersoflight , @ziw-liu , presented here is a sample image of prediction logged during validation on tensorboard (this is a trial with manually input weights for cross-entropy loss calculation):

The panel in each column shows:

sensor image,
4-channel target annotation image
class 0 predicted image channel
class 1 predicted image channel
class 2 predicted image channel
class 3 predicted image channel
The dataset used for training was chosen such that it has approximately the same number of infected and uninfected cells. Thus, the same cross entropy weights were given to mock the training. It can be seen from the image that class 2 is predicted better than class 1 as the sensor is localized in the nucleus and has high expression in class 2 cells. As a result, it looks easy to segment compared to uninfected cells. Will this be resolved if the cross entropy weights are best optimized or should we provide the nuclear segmentation as a second input channel with the sensor channel?

Thanks @mattersoflight . I have added the code I was preparing to run predictions on the data:
example/infection_phenotyping/test_infection_classifier.py
Here is the path to the test dataset:
/hpc/projects/intracellular_dashboard/viral-sensor/infection_classification/datasets/Exp_2024_02_13_DENV_3infMarked_test.zarr
This is the dataset used for training is here:
/hpc/projects/intracellular_dashboard/viral-sensor/infection_classification/datasets/Exp_2024_02_13_DENV_3infMarked_trainVal.zarr
The checkpoint used for prediction:
/hpc/projects/intracellular_dashboard/viral-sensor/infection_classification/models/sensorInf_phenotyping/logs_wPhase/version_34/checkpoints/epoch=99-step=300.ckpt

Rebase of this branch to main branch was required due to an issue encountered with the dataloader. While training the model, the first uninfected well was only utilized and not the second well with infected cells. The log from such training can be found here: /hpc/projects/intracellular_dashboard/viral-sensor/infection_classification/models/sensorInf_phenotyping/logs_wPhase/version_74. To resolve this the branch was rebased since the dataloader was working with the commits in the fcmae branch, which was merged into the main branch.

@ziw-liu @edyoshikun I propose we organize the scripts that use VisCy (with other libraries) in applications/infection_screens, applications/organelle_phenotyping, and applications/ultrack. I propose this since the scope of the repo is single-cell phenotyping and it is much easier to find code on git rather than disk. Let me know what you think.

The branch is ready for merging into the main branch. Please let me know if any changes are pending.
Can anyone review the branch so that we can merge it? Thanks!


Quickscore throwing errors on smartphones

e.toLocaleLowerCase is not a function
Anyhow, I should update how I use Quickscore - update, before updating to 0.11
https://github.com/fwextensions/quick-score/issues/11

Reverted back to 0.10, fixed the issue for now.


White arrows on bright background

Is there a chance to give arrows a dark outline or a dark background?

Hi. There's already a text-shadow property on the sp-arrow elements, which creates an outline. You can set that to a darker color, to make it more visible or you could also use filter: drop-shadow(0 0 1px #000) on the same element.


Add pyproject.toml for Custom Node Registry

We are working with dr.lt.data and comfyanon to build a global registry for custom nodes (similar to PyPI). Eventually, the registry will be used as a backend for the UI-manager. All nodes go through a verification process before being published to users.
The main benefits are that authors can

publish nodes by version and users can safely update nodes knowing ahead of time if their workflows will break or not
automate testing against new commits in the comfy repo and existing workflows through our CI/CD dashboard

Action Required:

[ ] Go to the registry. Login and create a publisher id (everything after the @ sign on your registry profile).
[ ] Add the publisher id into the pyproject.toml file.
[ ] Merge the separate Github Actions PR, then merge this PR.

If you want to publish the node manually, install the cli by running pip install comfy-cli, then run comfy node publish
Check out our docs if you want to know more about the registry. Otherwise, feel free to message me on discord at haohao_81202 or join our server if you have any questions!

hey @AIFSH, wanted to send a small nudge and ask if you had any questions!

@AIFSH, wondering if there's any way we can support you on this PR!


Ch heroku deployment 156988873

What does this PR do?
This PR contains the configurations for Heroku deployment
Description of Task to be completed?
Add Heroku Deployment
this involves configuring environment variables, Database migrations, and serving static files
How should this be manually tested?
This can be tested by going to this link https://hc-rogue-one.herokuapp.com/ which opens the health checks landing page.
What are the relevant pivotal tracker stories?
#156988873
Checklist: I completed these to help reviewers

[x] My IDE is configured to follow the PEP8 Conventions
No? Unsure? -> configure your IDE, format the code and add the changes with git add . && git commit --amend

[x ] I have added configurations to settings to serve static files and connect the app to the database

[ ] All new and existing tests passed.
No? -> figure out why and add the fix to your commit. It is your responsibility to make sure your code works.

[X ] My pull request is based on the latest changes of the develop branch.
No? Unsure? -> execute command git pull --rebase origin develop

i am on it

Resolved to conflicts


Improve documentation for the native core and native core macro crates

Adds more internal comments and documentation to the native core and native core macro crates. It also renames some private functions/types to improve readability.

Awesome! Thank you!


How to build on FreeBSD

This requires the sys/epoll.h, while on FreeBSD we only have sys/poll.h. The port libepoll-shim does contain a epoll implementation for FreeBSD, but the linker does not recognize it in the object code.
How would I go about building succade on FreeBSD.

Hey dvogit, thank you for your interest in the project!
When I started writing it, I did so only for myself, so I used some non-portable stuff, like epoll. Most of it I've removed over time, but that one is obviously still left.
Unfortunately, I have no experience with FreeBSD, but I guess simply replacing epoll with select or poll should solve the problem. Fortunately, the event handling code now resides in libkita, in other words, the offending code is well isolated and it shouldn't be too hard to swap it out without major changes to succade. Another option here would be to use an event handling library, like libevent, but I wanted to reduce the amount of dependencies (and overall code in the project) as much as I can, so I'm not too fond of that idea.
In other words, I'll look into this as soon as I have enough time, but can't promise when that would be. In the meantime, if there is someone out there who has experience with event handling using epoll, poll and/or select, feel free to contribute. I've opened an issue over at libkita.

Ok. I also read through libkita, I’m thinking about forking it to make it more BSD friendly, but I am not the best at C, so I’m going to see if I can help


Fix pointer authentication for FP-based unwinding

This was missed in 872d82a740f8ceff4fce806d4cfa8daea83e5395. We need similar logic for FP unwinding as we already added there for DWARF unwinding.
See that commit message for details about what this is.

I just realized native mixed mode testing fails on arm https://github.com/parca-dev/parca-agent/actions/runs/8791927660/job/24127129336


'preview-format' not compatible with 'format', when strings are passed

Hello!
I think I've found a bug where passing in strings for both the format and preview-format props ends up in the former 'dominating' over the latter, and the latter not being applied. I have recreated this in the playground and attached a screenshot of what I mean.
To Reproduce
Steps to reproduce the behavior:

Create a VueDatePicker component in the template
Fill in both the 'format' and 'preview-format' with strings, but different ones
Observe when a date is picked that the preview-format is picking up the format prop and not being applied

Expected behavior
By passing in the preview-format, the preview of the date select should be formatted as dictated by that, not by any other prop.

Works great at 5.3.0! Thanks for the awesome lib 🚀


Add temp mount location to manage temp mounts

Take a peek at the naming and how it is initialized.  Its separate from the client right now.  I'm not sure how we want to handle that.
Fixes #2004

I'll fix lint stuff after we decide how we want to handle this.

Could WithTempMount just use DefaultTempLocation behind the scene?

+1
Naming approach and interface looks good. Is there any case where "/tmp" does not exist and mkdir should be called on it? Otherwise wondering if cleaner just to avoid calling the constructor and just initializing the type so there doesn't have to be a panic call.

Well we really don't want to be unmounting things in /tmp so we would have to go with a subdir pr place it in /var/lib/containerd/tmpmounts like I did for the daemon.  Just some ideas.  I'm not totally sure the best way to handle the constructor yet.

Updated

I don't know what window's problem is right now

Does WithTempMount need to exist on windows too? It got moved to a _unix.go file

Change looks good after windows fix

@dmcgowan it is on windows right?
https://github.com/containerd/containerd/pull/2112/files#diff-0ad58f54462be03ad73d6a069bb9d8e7R17

@crosbymichael yep, you are right, I was looking at the wrong file name. Rebuilding appveyor, will see if that works.

The failure is due to the fact that SetTempMountLocation is called in main.go and it's not implemented on windows.

Codecov Report

Merging #2112 into master will decrease coverage by 0.11%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master    #2112      +/-   ##
==========================================
- Coverage   45.53%   45.41%   -0.12%
==========================================
  Files          80       82       +2
  Lines        8726     8749      +23
==========================================
  Hits         3973     3973
- Misses       4107     4130      +23
  Partials      646      646

Flag
Coverage Δ

#linux
50.07% <0%> (-0.17%)
:arrow_down:

#windows
41.09% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

mount/mount.go
0% <ø> (ø)
:arrow_up:

mount/temp_unix.go
0% <0%> (ø)

mount/temp.go
0% <0%> (ø)

Continue to review full report at Codecov.

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

oops..rebase because of the main->command PR merge

ya ya ya rebased


Writing style: colon before list

Include a colon at the end of a phrase that directly introduces a list.

@javierruizjimenez : Thanks for your contribution! The author, @eross-msft, has been notified to review your proposed change.

@javierruizjimenez Thanks!
#sign-off


Return a 3D object alongside 1D object in apply_ufunc

Is your feature request related to a problem?
Currently, I have something similar to this, where the input_lat is transformed to new_lat (here, +0.25, but in real use case, it's indeterministic).
Since xarray_ufunc doesn't return a dataset with actual coordinates values, I had to return a second output to retain new_lat to properly update the coordinate values, but this second output is shaped time, lat, lon so I have to ds["lat"] = new_lat.isel(lon=0, time=0).values, which I think is inefficient; I simply need it to be shaped lat.
Any ideas on how I can modify this to make it more efficient?
import xarray as xr
import numpy as np

air = xr.tutorial.open_dataset("air_temperature")["air"]
input_lat = np.arange(20, 45)

def interp1d_np(data, base_lat, input_lat):
    new_lat = input_lat + 0.25
    return np.interp(new_lat, base_lat, data), new_lat

ds, new_lat = xr.apply_ufunc(
    interp1d_np,  # first the function
    air,
    air.lat,  # as above
    input_lat,  # as above
    input_core_dims=[["lat"], ["lat"], ["lat"]],  # list with one entry per arg
    output_core_dims=[["lat"], ["lat"]],  # returned data has one dimension
    exclude_dims=set(("lat",)),  # dimensions allowed to change size. Must be a set!
    vectorize=True,  # loop over non-core dims
)
new_lat = new_lat.isel(lon=0, time=0).values
ds["lat"] = new_lat

Describe the solution you'd like
Either be able to automatically assign the new_lat to the returned xarray object, or allow a 1D dataset to be returned
Describe alternatives you've considered
No response
Additional context
No response

If new_lat is really 1-dimensional, meaning it doesn't vary by lat/lon point, why can't it be calculated or defined prior to running anything through apply_ufunc, and then passed through as an input to your interp function?

It's indeterministic, or it's decided inside apply_ufunc

def _help_downsample(data, time, n_out):
    indices = MinMaxLTTBDownsampler().downsample(time, data, n_out=n_out)
    return data[indices], indices

def apply_downsample(ts_ds, n_out):
    ts_ds_downsampled, indices = xr.apply_ufunc(
        _help_downsample,
        ts_ds["data"],
        ts_ds["time"],
        kwargs=dict(n_out=n_out),
        input_core_dims=[["time"], ["time"]],
        output_core_dims=[["time"], ["indices"]],
        exclude_dims=set(("time",)),
        vectorize=True,
        dask="parallelized",
        dask_gufunc_kwargs=dict(output_sizes={"time": n_out, "indices": n_out}),
    )
    ts_ds_downsampled["time"] = ts_ds["time"].isel(time=indices.values[0])
    return ts_ds_downsampled.rename("data")

If indices is non-deterministic for every time _help_downsample is called for new data, doesn't that mean you want a unique vector of indices at all non-core input dims? You're calling apply_ufunc(..., vectorize=True) so the helper function is being called once per 1D timeseries, and selecting indices[0] would be throwing away unique index vectors in that case.

You're right. I suppose I misunderstood; I thought it was stacking all the channels to calculate the indices, e.g.
Perhaps what I really want to do is just the following without apply_ufunc
new_da = da.stack({"temp": ["time", "channel"]})
MinMaxLTTBDownsampler().downsample(new_da["temp"], new_da["data"], n_out=n_out)

I've run in to this before. There's no way to limit the broadcasting behaviour, so if there are broadcast dimensions on the input variables, those are assumed to be the broadcast dimensions on all output variables.
I believe the best solution is https://github.com/pydata/xarray/issues/1618 . In the mean time if you don't need vectorize you can specify all input and output dims as core dimensions and then there are no broadcast dimensions at all.

Is there a way to do this without a loop?
import numpy as np
t0 = [0, 1, 2]
t1 = [3, 4, 5]

ts = [t0, t1]
z = np.array([[6, 7, 8], [9, 10, 11]])

ds = xr.DataArray(z, dims=["channel", "time"]).to_dataset("channel")
for i, channel in enumerate(ds.data_vars):
    dim = f"time_{i}"
    ds[channel] = (dim, ds[channel].values)
    ds[channel] = ds[channel].assign_coords({dim: ts[i]})
ds

If the time vectors are all the same length, you can just store as a multi-dimensional coordinate:
ds = xr.DataArray(
    z,
    dims=["channel", "t_idx"],
    coords={"time": (("channel", "t_idx"), ts)}
)


UI tweaks and fixes based on testing feedback

Looks good. Curious why the tabs were replaced to encapsulate their own scroll views.


Add Oracle compilers

Resolves #80.
The Oracle JDK versions added correspond as closely as possible to (a subset of) existing OpenJDK versions in java-compiler.json -- the only mismatch is that Oracle JDK has no version 8.0.372, so 8.0.371 was added instead.
Docker images for these Oracle compilers are available from https://container-registry.oracle.com/ords/ocr/ba/java/jdk, and downloading them with docker pull requires:

Creating an Oracle account
Going to https://container-registry.oracle.com/ords/ocr/ba/java/jdk
Logging in with your account
Accepting the Oracle Standard Terms on the webpage (forgetting this step will mean that docker login appears to succeed, but docker pull will fail)
Running docker login container-registry.oracle.com and supplying your Oracle username and password
Running, e.g., docker pull container-registry.oracle.com/java/jdk:11.0.19-ol8-amd64

Building all 56 projects with these 4 new compiler versions results in 177 of the 56*4=224 builds being successful, and 47 failures:
wtwhite@wtwhite-vuw-vm:~/code/jcompile$ find jars -name '*.jar'|grep 'oraclejdk'|grep -v -- '-tests.jar'|wc -l
177
wtwhite@wtwhite-vuw-vm:~/code/jcompile$ find jars -name '*.jar.error'|grep 'oraclejdk'|wc -l
47

Building using the corresponding OpenJDK versions gives the same results:
wtwhite@wtwhite-vuw-vm:~/code/jcompile$ find jars -name '*.jar'|grep 'openjdk'|grep -v -- '-tests.jar'|wc -l
177
wtwhite@wtwhite-vuw-vm:~/code/jcompile$ find jars -name '*.jar.error'|grep 'openjdk'|wc -l
47


[docs] Normalize doc theme to match app design

[ ] Use the same tabler icons as the app
[ ] Normalize colors

Happy to have this one assigned to me.

@Zoobdude ok no problem, I let you have a look at vitepress.dev to manage the themes

Do you want all the components re-written that use icons? Or just swap the social (gh and x) icons in the corner?

Just swaping the icons is good :ok_hand:


Some README.md files as "License file" even if no # License section is defined.

I'm not 100% sure but I think this is from license-checker tool.
example: see the @raincatcher-examples/angularjs-extensions/README.md file, it has no content related with licenses/legal.
In this case we are going to keep the README.md as License file ?

I thought we had agreed not to go to README level. That we look in:

package.json
License file

And stop at that point. As we go and have to guess the language. In that case we should be flagging it as Unknown license and alerting the end user (we do this!)

Good! then we can print a warning License file not found when using the --html option and the license file is a README.md

this message : https://github.com/bucharest-gold/license-reporter/issues/190#issuecomment-338217976

output:
========= No license file found for==========
@raincatcher-examples/angularjs-extensions
@raincatcher-examples/step-accident
@raincatcher-examples/step-vehicle-inspection
@raincatcher/angularjs-auth-keycloak
@raincatcher/angularjs-auth-passport
@raincatcher/angularjs-http
@raincatcher/angularjs-workflow
@raincatcher/angularjs-workorder
@raincatcher/logger
@raincatcher/step-signature
@raincatcher/wfm
angular-animate
angular-aria
grunt-cli

HTML report:

I think this looks good but N/A in the HTML report could be misleading. This report is viewable by an end customer who might not necessarily have ran the tool to generate it. So they would miss the valuable warning and are blindly looking at the HTML report. Perhaps a 1 liner along the lines of:
"No local license could be found for the dependency" might be more appropriate.
Out of curiosity how does the MIT remote license get discovered in the above scenario you linked?

Out of curiosity how does the MIT remote license get discovered in the above scenario you linked?

This is from default-unified-list.json
https://github.com/bucharest-gold/license-reporter/blob/master/lib/resources/default-unified-list.json#L2992-L3000

this is the code that reads the json file
https://github.com/bucharest-gold/license-reporter/blob/master/lib/file-reader.js#L17-L33

Right I think I get it as I have the flow in my head right now! So it basically can discover the license in the dependency, it knows that the dependency is MIT (in the above example), it can thus find it in the unified list and record it as being the correct license. However when it comes to populating the local license it cannot get the local license file due to some weirdness with namespaces / references (the bug itself!) and hence printed N/A. Cool thanks for the clarity :)


Fix len check

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes https://github.com/run-llama/llama_index/issues/9487
Type of Change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[ ] Added new unit/integration tests
[ ] Added new notebook (that tests end-to-end)
[ ] I stared at the code and made sure it makes sense

Suggested Checklist:

[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added Google Colab support for the newly added notebooks.
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I ran make format; make lint to appease the lint gods

Note: picking only the first elements is arguable.
One may prefer random-sampling uniformy over the document/nodes.


Handle another communication events

Hi, theres somehow i can handle data transfer events?

Start transfer
Stop
Error
Completed

Dont mind about it, already found that has an emiter "file:stor" +1:


Front - Add a new button to call Kafka endpoints

Add a new button in the front-end to call Kafka endpoints.
@pascalgrimaud Can you assign me this one please?

@fdelbrayelle : no new button, only the secondary part in front. The button will be added later


Client no longer interacts with work-server

Still alot of work to be done on this
Added a comment in the client for changing the send_job functionality
Added mongo saving functions to the saver class (not sure if this makes sense in that class)
Future discussion will shape next steps

Functions that I added to the Saver class originally were in the DataStorage class in mirrcore


want to change documentation

want to give better documentation

@4darsh-Dev PLEASE ASSIGN ME THIS ISSUE

It will look something like this

good @Shreyaa173 ,
try to find icons, suitable to these dark patterns , you can search them on google.
take reference from this -> https://www.deceptive.design/

Hey @Shreyaa173 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


authoring feedback

Add your specific features or fixes

Resolves: MWPW-NUMBER
Test URLs:

Before: https://main--cc--adobecom.hlx.page/?martech=off
After: https://change-bg-marquee--cc--suhjainadobe.hlx.live/drafts/suhjain/imarquee#

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

Comparison is base (b2953fa) 100.00% compared to head (b8fa7a8) 25.26%.

Additional details and impacted files
@@             Coverage Diff              @@
##              main     #115       +/-   ##
============================================
- Coverage   100.00%   25.26%   -74.74%
============================================
  Files            1        1
  Lines           90       95        +5
============================================
- Hits            90       24       -66
- Misses           0       71       +71

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

@suhjainadobe Could you add more description to the PR and the ticket number as well?


Broadcasting Events in Direktiv Namespaces for certain Actions

The ability to broadcast events on Direktiv via namespaces. So for example if I was to upload a new variable on Direktiv. It would be great that it automatically broadcasts a cloud event so a Workflow could pick it up properly.
This could also be extended by offering a webhook that we could save per namespace to send our cloud events to. Like an example I have uploaded a workflow and it triggered a cloud event that sent its data to Github. Provides more options and allows for 3rd part to hook into out events

We could make this pretty extensive if we wanted to. I'm going to put a partial list here of places we could auto-generate events, as an example.

Workflow created.
Workflow modified.
Workflow deleted.
Workflow toggled on/off.
Instance Started.
Instance Is Being Retried.
Instance Completed Successfully.
Instance Failed.
Instance Crashed.
New Namespace Variable Created.
Namespace Variable Modified.
Namespace Variable Deleted.
New Workflow Variable Created.
Workflow Variable Modified.
Workflow Variable Deleted.

And potentially lots, lots more.
My first question is: is there any reason not to just do it? It would add load to the server, bloat the metrics, and possibly raise security concerns. I suppose we could make this list configurable per-namespace, with each type being toggled at the users' will.
The next question is whether deeper configuration is necessary. Are we happy with standardized, constant cloudevents? Or do we need to let users customize event Type and Source? Could we possibly need to direct generated cloud events to hit a different namespace?
The cool thing about going nuts with these events is how many ways users could extend Direktiv's functionality themselves using it. For example, instance failures could generate notifications. Another example: uploading a file (as a variable) could generate an event to trigger a workflow to process that file.
@jensg-st


JAVA-5505 minor refactoring

JAVA-5505
Mostly-automated refactoring to remove IDE nags. I've left unused methods like getCurrentRegistrationCount in AsynchronousTlsChannelGroup.

Test failures appear to be unrelated.


Request to add README to the repo

I just came over from your youtube video, https://www.youtube.com/watch?v=FDiapbD0Xfg, and I'm blown away. However, there are no clear instructions on how to use this. This would be incredibly helpful to jump start programming it, especially so for people who are less experienced.

+1

Not starring unless I know how to use it

+1

That would be probably very useful

+1


buildInfo isn't properly collected for jobs run within a docker container

Describe the bug
I'm trying to run an npm build, publish build info, and execute xray scan while running inside a withDockerContainer block. However, after I try publishing the build info, a command to kick off an xray scan fails.
Current behavior
The jf 'npm i' works, then jf 'rt bp' runs without error, then jf 'bs' blows up saying it can't find the build info. When I check our artifactory, there was a build pushed but the build info doesn't have any of the metadata/dependencies from the npm install. I have a feeling from inspecting the job logs that the jfrog plugin/CLI might use environment variables tmp dirs to store build info, but they don't carry across the different commands
Reproduction steps
Run a pipeline job with steps similar to this scripted pipeline syntax:
node {
    withDockerContainer(
      image: 'node:18.17.1',
      args: "-v <tools_dir>:<tools_dir>:rw,z" // this was necessary so that the container could use the globally configured jfrog-cli tool
    ) {
        withEnv(["JFROG_BINARY_PATH=${tool 'jfrog-cli'}"]) {
            stage('Build and scan') {
                // checkout some npm project here
                jf 'npm-config --repo-resolve <resolve_repo> --repo-deploy <resolve_repo>'
                jf 'npm i'
                jf 'rt bp'
                jf 'bs' // 404 returned here
            }
        }
    }
}

Expected behavior
The build info should be populated and pushed correctly, allowing an xray scan to run against that build's dependencies.
JFrog plugin version
1.4.0
JFrog CLI version
2.45.0
Operating system type and version
Amazon Linux / UBI
JFrog Artifactory version
7.49.6
JFrog Xray version
3.66.6

Hi @five-iron , I was encountering something slightly different but related.
tl;dr try setting this environment variable:
JFROG_CLI_TEMP_DIR="${WORKSPACE_TMP}/jfrog"

The default location where build info is kept track of is in /tmp, so you lose any build-info status when a build container is destroyed.  You can override the default location with the JFROG_CLI_TEMP_DIR variable. The situation I'm describing doesn't quite match the single-node example you provide, but hopefully this information will give you the ability to debug a bit further.


HD wallet support

Now that v1.1.1 of the ledger app is released, it supports getting multiple addresses from the Ledger.
Is your feature request related to a problem? Please describe.

Users with Ledger will want to use several accounts for sending and receiving transactions.
Use cases:

One address for each coin (eg: atoms, photons)
One address to transact exclusively with a specific chain
One address to transact only with another specific address
One address for receiving all delegation rewards from all the addresses
One address to delegate for each delegation to distinct validators

Describe the solution you'd like

"Generate" a new address for each new receiving transaction

Click a button to generate a new address from a new path

Display addresses from the HD wallet and select them to sign txs

Select an account on the Action modal before rendering the child transaction modal (i.e step 1: select account, step 2: fill tx form, step 3: sign)

Display transactions for all accounts "generated"

(nice-to-have) Filter transactions by addresses available on the HD wallet

Display balances for all accounts "generated"
Set withdraw rewards address to one of the generated HD addresses (see case 4)

Not sure what's the process for querying other stuff:

should we only show total delegation amount from the first generated address, the last one, sum of all ?
same with other staking, governace and distribution actions.

Describe alternatives you've considered

Iterate over the HD path index or account to generate a new address/pubkey
Store the account and index number for signing with ledger (see format below)
Restore wallet.address (?) (default address and HD path for sending txs, can be updated on preferences)

Format for session.address should be the following, :
{
address: {
    account: <int32>,
    index: <int32>
  }
}

Additional context

The HD path used has the following format:  [44, 118, account, 0, index]
Each (account, index) combination gives you a new address and pubkey.
For instance, in the example below, you get the address and pubKey from account = 5 and index = 3
hdPath = [44, 118, 5, 0, 3];
address = await app.showAddress("cosmos", path)

then you can use the path from that address to sign txs
await app.sign(hdPath, tx)

amazing summary @fedekunze and a bunch of great ideas here.


Could u tell me how to prune the model?

I want to use Torch-Pruning lib to prune the model in our mmdetection. But I dont know how to implement it. For example, if i want to use faster-rcnn_r50_fpn_1x_coco.py config, how to do? Some naive ideas are get the model then prune it. I dont know that is right. MUCH THANKS!!!

@dmndxld, did you find a way to prune the same config model you mentioned?


Low contrast on links with code-styling in dark mode

Issue type
Styling or Accessibility
Problem description
IMO the release text has too low contrast and is not easily legible.

I would prefer if release had the same colour as the rest of the highlighted link.

Context (optional)
No response
Page with the problem
https://docs.gradle.org/nightly/userguide/cross_project_publications.html#targeting-different-platforms

Thank you for providing a valid report.
The issue is in the backlog of the relevant team and is prioritized by them.


Quickfixes for release

To solve #522.
In progress.

:+1:

The travis change is simple, just fix https://github.com/OmniSharp/omnisharp-roslyn/blob/dev/.travis.yml#L40

Changed ifdef DNX451 in Nuget and Roslyn.Csharp folders to ifdef NET451.
Removed ifdef DNX451 in MSBuild folder (since it only ever builds for NET451).

Mono archive renaming now only applies on Travis. This allows users to create archives for Mono on *NIX without being restricted to Ubuntu.

Travis now pushes all archives (cross-compilation already controlled by PopulateRuntime and only triggered when desired).


Texture support for OSL shaders

Rough and non-optimized

Hmmm... so this seems to be pretty much the complete opposite of how regular textures are created no?  Meaning instead of getting the names of textures through the nodetree, the nodetree when generating parameters calls txmake.  What's the thought process here?

Ok, I was not thinking clearly earlier today and just went on a complete get it done mentality. I'm sorry for submitting such badly integrated code. I am working on a better way tonight it should be done shortly. I had a strange day yesterday so that might have been part of the problem. Sorry again.
MWY3510

Oh no worries, I appreciate all the help.  Sorry I haven't had more input, still working on the export code rewrite.

Ok, I found a way to do texture export using the existing system. I just need to pass a few more parameters to the get_textures function. Hopefully this works and I can dispose of the hack.

This should be more inline with the plugin design. I also ran some tests and it is faster than the other method too.

Great!

Basic OSL node reload is almost done probably tomorrow it will be done.


Mapnik fonts

Allow custom fonts for mapnik.
Should solve issue #69

Short of time at the moment. Will do the requested changes around mid of june. Sorry for the delay.

Closing this due to inactivity. Feel free to reopen if you address the remaining issues