Closed tmaklin closed 7 months ago
Hi, I made a fix to the dynamic-dispatch-proc-macro but forgot to publish the updated version on crates.io, now should be fixed
Also you might need to run cargo update
on the example project to see the changes
thanks, all good now!! Any plans to publish the API in crates.io at some point btw?
I noticed that including the ggcat API as a dependency in another Rust project will fail because of build issues with the following Cargo.toml file:
Adding
dynamic-dispatch-proc-macro
under the[patch.crates-io]
(see below for a working Cargo.toml file) section fixes the issue but this isn't documented in the API section or the example files, is this intended?Cargo.toml that builds successfully:
Log from failed build:
``` temaklin@xps13:~/software/ggcat-api-test$ cargo build Compiling proc-macro2 v1.0.76 Compiling unicode-ident v1.0.12 Compiling libc v0.2.152 Compiling autocfg v1.1.0 Compiling cfg-if v1.0.0 Compiling version_check v0.9.4 Compiling memchr v2.7.1 Compiling serde v1.0.195 Compiling syn v1.0.109 Compiling once_cell v1.19.0 Compiling libm v0.2.8 Compiling zerocopy v0.7.32 Compiling ahash v0.8.7 Compiling num-traits v0.2.17 Compiling allocator-api2 v0.2.16 Compiling ppv-lite86 v0.2.17 Compiling quote v1.0.35 Compiling crossbeam-utils v0.8.19 Compiling proc-macro-error-attr v1.0.4 Compiling syn v2.0.48 Compiling getrandom v0.2.12 Compiling lazy_static v1.4.0 Compiling rand_core v0.6.4 Compiling cc v1.0.83 Compiling aho-corasick v1.1.2 Compiling hashbrown v0.14.3 Compiling rand_chacha v0.3.1 Compiling rand v0.8.5 Compiling lock_api v0.4.11 Compiling proc-macro-error v1.0.4 Compiling regex-syntax v0.8.2 Compiling thiserror v1.0.56 Compiling parking_lot_core v0.9.9 Compiling scopeguard v1.2.0 Compiling smallvec v1.13.0 Compiling either v1.9.0 Compiling itoa v1.0.10 Compiling proc-macro2 v0.4.30 Compiling adler v1.0.2 Compiling backtrace v0.3.69 Compiling miniz_oxide v0.7.1 Compiling crossbeam-epoch v0.9.18 Compiling ryu v1.0.16 Compiling gimli v0.28.1 Compiling unicode-xid v0.1.0 Compiling byteorder v1.5.0 Compiling crossbeam-deque v0.8.5 Compiling parking_lot v0.12.1 Compiling object v0.32.2 Compiling syn v0.15.44 Compiling rustc-demangle v0.1.23 Compiling quote v0.6.13 Compiling lz4-sys v1.9.4 Compiling typenum v1.17.0 Compiling rayon-core v1.12.1 Compiling addr2line v0.21.0 Compiling regex-automata v0.4.3 Compiling crossbeam-queue v0.3.11 Compiling crossbeam-channel v0.5.11 Compiling bytesize v1.3.0 Compiling json v0.12.4 Compiling serde_json v1.0.111 Compiling crossbeam v0.8.4 Compiling serde_derive v1.0.195 Compiling thiserror-impl v1.0.56 Compiling tokio-macros v2.2.0 Compiling mt-debug-counters v0.1.3 Compiling desse-derive v0.2.1 Compiling nightly-quirks v0.1.4 Compiling num_cpus v1.16.0 Compiling filebuffer v0.4.0 Compiling pin-project-lite v0.2.13 Compiling crc32fast v1.3.2 Compiling bytemuck v1.14.0 Compiling tokio v1.35.1 Compiling desse v0.2.1 Compiling rayon v1.8.1 Compiling unicode-segmentation v1.10.1 Compiling replace_with v0.1.7 Compiling unicode-width v0.1.11 Compiling unchecked-index v0.2.2 Compiling textwrap v0.11.0 Compiling heck v0.3.3 Compiling atty v0.2.14 Compiling bitflags v1.3.2 Compiling strsim v0.8.0 Compiling ansi_term v0.12.1 Compiling structopt-derive v0.4.18 Compiling flate2 v1.0.28 Compiling static_assertions v1.1.0 Compiling bstr v1.9.0 Compiling regex v1.10.2 Compiling num-integer v0.1.45 Compiling radium v0.7.0 Compiling matrixmultiply v0.3.8 Compiling paste v1.0.14 Compiling equivalent v1.0.1 Compiling tap v1.0.1 Compiling indexmap v2.1.0 Compiling wyz v0.5.1 Compiling safe_arch v0.7.1 Compiling num-complex v0.4.4 Compiling num-rational v0.4.1 Compiling heck v0.4.1 Compiling semver v0.1.20 Compiling rustversion v1.0.14 Compiling funty v2.0.0 Compiling rawpointer v0.2.1 Compiling fixedbitset v0.4.2 Compiling dynamic-dispatch-proc-macro v0.4.2 Compiling rustc_version v0.1.7 Compiling petgraph v0.6.4 Compiling wide v0.7.13 Compiling bitvec v1.0.1 Compiling vec_map v0.8.2 Compiling dashmap v5.5.3 Compiling bincode v1.3.3 Compiling clap v2.34.0 Compiling dynamic-dispatch v0.5.3 Compiling approx v0.5.1 Compiling csv-core v0.1.11 Compiling traitsequence v2.0.0 Compiling feature-probe v0.1.1 Compiling retain_mut v0.1.7 Compiling bv v0.11.1 Compiling csv v1.3.0 Compiling roaring v0.10.2 Compiling simba v0.6.0 Compiling newtype_derive v0.1.6 Compiling nalgebra-macros v0.1.0 Compiling itertools v0.10.5 Compiling rand_distr v0.4.3 Compiling structopt v0.3.26 Compiling streaming-libdeflate-rs v0.1.5 Compiling atoi v2.0.0 Compiling hashbrown v0.13.2 Compiling thread_local v1.1.7 Compiling siphasher v0.3.11 Compiling anyhow v1.0.79 Compiling utf8parse v0.2.1 Compiling ref-cast v1.0.22 Compiling instrumenter-proc-macro v0.1.1 Compiling anstyle-parse v0.2.3 Compiling strum_macros v0.25.3 Compiling traitgraph v5.0.0 Compiling instrumenter v0.1.3 Compiling enum-map-derive v0.17.0 Compiling ref-cast-impl v1.0.22 Compiling derive-new v0.5.9 Compiling itertools v0.11.0 Compiling error-chain v0.12.4 Compiling anstyle-query v1.0.2 Compiling colorchoice v1.0.0 Compiling bit-vec v0.6.3 Compiling powerfmt v0.2.0 Compiling anstyle v1.0.4 Compiling time-core v0.1.2 Compiling anstream v0.6.11 Compiling time-macros v0.2.16 Compiling deranged v0.3.11 Compiling bit-set v0.5.3 Compiling enum-map v2.7.3 Compiling traitgraph-algo v8.1.0 Compiling multimap v0.9.1 Compiling bio-types v1.0.1 Compiling ndarray v0.15.6 Compiling nalgebra v0.29.0 Compiling getset v0.1.2 Compiling fxhash v0.2.1 Compiling ordered-float v3.9.2 Compiling itertools-num v0.1.3 Compiling triple_accel v0.4.0 Compiling editdistancek v1.0.2 Compiling bitvector v0.1.5 Compiling bytecount v0.6.7 Compiling log v0.4.20 Compiling custom_derive v0.1.7 Compiling strsim v0.10.0 Compiling num_threads v0.1.6 Compiling clap_lex v0.6.0 Compiling strum v0.25.0 Compiling time v0.3.31 Compiling bigraph v5.0.0 Compiling clap_builder v4.4.18 Compiling compact-genome v2.1.1 Compiling clap_derive v4.4.7 Compiling disjoint-sets v0.4.2 Compiling termcolor v1.1.3 Compiling lz4 v1.24.0 Compiling parallel-processor v0.1.13 Compiling simplelog v0.12.1 Compiling memory-stats v1.1.0 Compiling permutation v0.4.1 Compiling atomic-counter v1.0.1 Compiling ggcat_config v0.1.0 (https://github.com/algbio/ggcat#0ca7007e) Compiling ggcat_hashes v0.1.0 (https://github.com/algbio/ggcat#0ca7007e) Compiling ggcat_utils v0.1.0 (https://github.com/algbio/ggcat#0ca7007e) Compiling fs_extra v1.3.0 Compiling fdlimit v0.3.0 Compiling uuid v1.7.0 error: `TypeId::of` is not yet stable as a const fn --> /home/temaklin/.cargo/git/checkouts/ggcat-40470e373049bee8/0ca7007/crates/hashes/src/cn_nthash.rs:106:1 | 106 | #[dynamic_dispatch] | ^^^^^^^^^^^^^^^^^^^ | = help: add `#![feature(const_type_id)]` to the crate attributes to enable = note: this error originates in the attribute macro `dynamic_dispatch` (in Nightly builds, run with -Z macro-backtrace for more info) error: `TypeId::of` is not yet stable as a const fn --> /home/temaklin/.cargo/git/checkouts/ggcat-40470e373049bee8/0ca7007/crates/hashes/src/cn_nthash.rs:198:1 | 198 | #[dynamic_dispatch] | ^^^^^^^^^^^^^^^^^^^ | = help: add `#![feature(const_type_id)]` to the crate attributes to enable = note: this error originates in the attribute macro `dynamic_dispatch` (in Nightly builds, run with -Z macro-backtrace for more info) error: `TypeId::of` is not yet stable as a const fn --> /home/temaklin/.cargo/git/checkouts/ggcat-40470e373049bee8/0ca7007/crates/hashes/src/base/cn_seqhash_base.rs:105:1 | 105 | #[dynamic_dispatch] | ^^^^^^^^^^^^^^^^^^^ | = help: add `#![feature(const_type_id)]` to the crate attributes to enable = note: this error originates in the attribute macro `dynamic_dispatch` (in Nightly builds, run with -Z macro-backtrace for more info) error: `TypeId::of` is not yet stable as a const fn --> /home/temaklin/.cargo/git/checkouts/ggcat-40470e373049bee8/0ca7007/crates/hashes/src/fw_nthash.rs:92:1 | 92 | #[dynamic_dispatch] | ^^^^^^^^^^^^^^^^^^^ | = help: add `#![feature(const_type_id)]` to the crate attributes to enable = note: this error originates in the attribute macro `dynamic_dispatch` (in Nightly builds, run with -Z macro-backtrace for more info) error: `TypeId::of` is not yet stable as a const fn --> /home/temaklin/.cargo/git/checkouts/ggcat-40470e373049bee8/0ca7007/crates/hashes/src/fw_nthash.rs:188:1 | 188 | #[dynamic_dispatch] | ^^^^^^^^^^^^^^^^^^^ | = help: add `#![feature(const_type_id)]` to the crate attributes to enable = note: this error originates in the attribute macro `dynamic_dispatch` (in Nightly builds, run with -Z macro-backtrace for more info) error: `TypeId::of` is not yet stable as a const fn --> /home/temaklin/.cargo/git/checkouts/ggcat-40470e373049bee8/0ca7007/crates/hashes/src/base/fw_seqhash_base.rs:93:1 | 93 | #[dynamic_dispatch] | ^^^^^^^^^^^^^^^^^^^ | = help: add `#![feature(const_type_id)]` to the crate attributes to enable = note: this error originates in the attribute macro `dynamic_dispatch` (in Nightly builds, run with -Z macro-backtrace for more info) error: `TypeId::of` is not yet stable as a const fn --> /home/temaklin/.cargo/git/checkouts/ggcat-40470e373049bee8/0ca7007/crates/hashes/src/base/cn_rkhash_base.rs:165:1 | 165 | #[dynamic_dispatch] | ^^^^^^^^^^^^^^^^^^^ | = help: add `#![feature(const_type_id)]` to the crate attributes to enable = note: this error originates in the attribute macro `dynamic_dispatch` (in Nightly builds, run with -Z macro-backtrace for more info) error: `TypeId::of` is not yet stable as a const fn --> /home/temaklin/.cargo/git/checkouts/ggcat-40470e373049bee8/0ca7007/crates/hashes/src/base/fw_rkhash_base.rs:126:1 | 126 | #[dynamic_dispatch] | ^^^^^^^^^^^^^^^^^^^ | = help: add `#![feature(const_type_id)]` to the crate attributes to enable = note: this error originates in the attribute macro `dynamic_dispatch` (in Nightly builds, run with -Z macro-backtrace for more info) error: could not compile `ggcat_hashes` (lib) due to 18 previous errors warning: build failed, waiting for other jobs to finish... ```