[workspace] members = [ "enclone_denovo", "enclone_exec", "enclone_help", "enclone_main", "enclone_paper", "enclone_tail", "enclone_tools", "enclone_version", "enclone_build", "enclone_testlist", ] resolver = "2" # ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ # dev mode profile: setting lto = true or lto = "thin" or codegen-units = 1 or even # codegen-units = 5 all speed up execution (as measured by our cycle count test), by up to # about 10%, but they all have at least some effect on compile time, and it doesn't seem worth it [profile.dev] debug = 1 opt-level = 3 split-debuginfo = "unpacked" # ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ [profile.release] debug = 1 lto = true codegen-units = 1 overflow-checks = true # ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ [profile.test] debug = 1 opt-level = 3 split-debuginfo = "unpacked" # Cautionary note. We set package versions in enclone_versions, but it's not clear that # this is a sound practice, particularly in the case where a crate outside the enclone repo # depends on a crate in the enclone repo. Such an external crate sees "*" and it's not clear # what is done with that. # ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ # We attempted to speed up loading on the Mac using zld, # https://github.com/michaeleisel/zld. First we downloaded the current release at # https://github.com/michaeleisel/zld/releases/tag/1.3.2, and then added these lines # (without the #) to .cargo/config: # [target.x86_64-apple-darwin] # rustflags = ["-C", "link-arg=-fuse-ld=/Users/david.jaffe/bin/zld"] # To get this to work, we had to install Xcode 12.4, by going to the apple developers site. # For the particular version of macOS we have, the later versions of Xcode wouldn't work. # To complete the installation, we did # sudo xcode-select -s /path/to/Xcode.app # and then cargo b worked. This seemed to speed up loading by 5-10%, but that did not seem # like enough to justify using zld. It might be worth trying again later, as it is being # improved. [workspace.dependencies] align_tools = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } amino = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } anyhow = "1" ansi_escape = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } arboard = "2" assert_cmd = "2" async-trait = "0.1" attohttpc = { version = "0.18", default-features = false, features = ["compress", "tls-rustls"] } backtrace = "0.3" base64 = "0.13" binary_vec_io = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } bio = "0.39" bio_edit = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } byteorder = "1" bytes = "1" chrono = { version = "0.4", default-features = false, features = ["std", "clock"] } clipboard = "0.5" cocoa = "0.24" core-foundation = "0.9" core-graphics = "0.22" crc = "2" debruijn = "0.3" dirs = "4" dna = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } edit-distance = "2" enclone_args = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } enclone_core = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } enclone_denovo = { path = "../enclone_denovo" } enclone_help = { path = "../enclone_help" } enclone = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } enclone_process = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } enclone_proto = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } enclone_ranger = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } enclone_server_proto = { path = "../enclone_server_proto" } enclone_stuff = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } enclone_tail = { path = "../enclone_tail" } enclone_vars = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } enclone_version = { path = "../enclone_version" } equiv = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } evalexpr = "7" expr_tools = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } fasta_tools = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } file-lock = "2" flate2 = "1" float-ord = "0.3" fontdb = "0.7" fs_extra = "1" git = "https://github.com/10xGenomics/hdf5-rust.git" graph_simple = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } hdf5 = { git = "https://github.com/10XGenomics/hdf5-rust.git", branch = "conda_nov2021", features = ["conda"], default-features = false } home = "0.5" hyperbase = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } image = { version = "0.23", features = ["jpeg", "png", "jpeg_rayon"], default-features = false } include_dir = { version = "0.6", features = ["search"] } io_utils = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } itertools = "0.10" jpeg-decoder = "0.2" kmer_lookup = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } lazy_static = "1" libc = "0.2" log = "0.4" lz4 = "1" mach = "0.3" martian-filetypes = { git = "https://github.com/martian-lang/martian-rust", branch = "master" } ndarray = "0.15" nix = { version = "0.27", features = ["signal"] } num-traits = "0.2" objc = "0.2" pager = "0.16" palette = "0.6" perf_stats = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } permutation = "0.4" petgraph = "0.6" plotters = { version = "0.3", default_features = false, features = ["svg_backend", "point_series"] } png-decoder = "0.1" procfs = { version = "0.12", default_features = false } # prost: enclone will compile without the std and prost-derive features, but other things # (such as enclone_proto) break. prost = { version = "0.9", default_features = false, features = ["std", "prost-derive"] } prost-build = "0.9" qd = { git = "https://github.com/Barandis/qd" } rand = "0.8" rand_chacha = "0.3" rayon = "1" resvg = { version = "0.19", default-features = false } regex = { version = "1", default-features = false, features = ["std", "perf"] } serde = "1" serde_derive = "1" serde_json = "1" sha2 = "0.10" stats_utils = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } statrs = "0.15" stirling_numbers = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } string_utils = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } superslice = "1" tables = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } tar = "0.4" thiserror = "1" tilde-expand = "0.1" tiny-skia = "0.6" tokio = { version = "1", default-features = false, features = ["io-util", "macros", "rt-multi-thread"] } tokio-stream = { version = "0.1", default-features = false, features = ["net"] } tonic = { version = "0.6", default-features = false, features = ["transport", "codegen", "prost"] } tonic-build = { version = "0.6", default-features = false, features = ["transport", "prost"] } triple_accel = "0.4" users = "0.11" usvg = { version = "0.19", features = ["text"] } vdj_types = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } vdj_ann = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } vdj_ann_ref = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } vector_utils = { git = "https://github.com/10XGenomics/enclone_ranger", branch = "main" } whoami = "1" yaml-rust = "0.4"