diff --git a/CHANGES.md b/CHANGES.md index b9b2262..8db6631 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -3,6 +3,7 @@ v0.1.3 + exit with error on multi-allelics (previously, only first allele was used) ( #11) + more docs on conf file (thanks @m-pauper) + fix compression error for very dense regions (#12) ++ fix error when using hts_set_threads more than once and after reading header (#12) v0.1.2 ====== diff --git a/Cargo.toml b/Cargo.toml index d841408..7b60b8e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,7 +18,7 @@ path = "src/main.rs" flate2 = { version = "1.0", features = ["zlib-ng-compat"]} -rust-htslib = { version = "*", features = ["libdeflate", "static"] } +rust-htslib = { version = "0.38.2", features = ["libdeflate", "static"] } #bitpacking = "0.8.4" stream-vbyte = {version = "0.4.0", features=["x86_ssse3", "x86_sse41"]} clap = {version = "~2.27.0", features=["suggestions"] } diff --git a/src/commands/encoder_cmd.rs b/src/commands/encoder_cmd.rs index cee280f..cd59de6 100644 --- a/src/commands/encoder_cmd.rs +++ b/src/commands/encoder_cmd.rs @@ -261,9 +261,9 @@ pub fn encoder_main(vpaths: Vec<&str>, opath: &str, jpath: &str) { Err(error) => panic!("problem opening from stdin: {:?}", error), } }; + vcf.set_threads(2).ok(); } eprintln!("[echtvar] adding VCF:{}", vpath); - vcf.set_threads(2).ok(); for r in vcf.records() { let rec = r.expect("error getting record"); @@ -377,7 +377,7 @@ pub fn encoder_main(vpaths: Vec<&str>, opath: &str, jpath: &str) { } let alleles = rec.alleles(); - if alleles.len() > 2 { + if alleles.len() != 2 { panic!( "[echtvar] variants must be decomposed before running {:?}", rec diff --git a/src/lib/echtvar.rs b/src/lib/echtvar.rs index 20f76b1..6fe92ab 100644 --- a/src/lib/echtvar.rs +++ b/src/lib/echtvar.rs @@ -339,7 +339,7 @@ impl EchtVars { } let alleles = variant.alleles(); - if alleles.len() > 2 { + if alleles.len() != 2 { panic!( "[echtvar] variants must be decomposed before running. got variant with {} alleles at {}:{}", alleles.len() - 1,