viral_seq 1.2.5 → 1.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -1
  3. data/bin/tcs +56 -60
  4. data/lib/viral_seq/version.rb +2 -2
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5fef5f765c741aa14885673a2f980726956ae341a39926929d10ac0c7b4a6ece
4
- data.tar.gz: d1e0cb4b691d4aff657209f5f87f02653421dc1bf9ba6dd4f87e43320ad143d5
3
+ metadata.gz: aee2536198f5579951f7c5f5f1b97ed27fb0bf5459e6dbfe79137a030951d443
4
+ data.tar.gz: 9ab9b69adf228d3429e02e5d47674ce0a0d137fa6231d940ef8d6cc9abfa1cdf
5
5
  SHA512:
6
- metadata.gz: 98b18297e15a5fb0eff8706029dcfdecdc5c39df28b6ae3ea8fe5b7611f63f91276f7ed5e459a478b1af25ec25662804290decc923b1c52f946a184d197807be
7
- data.tar.gz: 7e359a05ff783971beced635cb2d913c4a9b418391425eba5ce9344b0137b989ea007d1ed5dc07a677a1775d9c73055aad552e971a89ca2207156db5233b243f
6
+ metadata.gz: d9b5def3e29f819b6d83902676e80fa2d81531cb44132942244125f6b63110d66389e7f9c61d6e9ea3d80ece57d22d95d5c3948c3f7f71d48835b2714794ffe0
7
+ data.tar.gz: 44b996d9caf9029f2ef522d9058410cdc3b4ec253ccc7bacca5d9ecf66f487624b0b6d18c960b6c7a0af7bfcd2bc72c8c02df59d3c4c7834ab80d4a9eed2a424
data/README.md CHANGED
@@ -179,11 +179,17 @@ qc_seqhash.sdrm_hiv_pr(cut_off)
179
179
 
180
180
  ## Updates
181
181
 
182
+ ### Version 1.2.6-07122021
183
+
184
+ 1. Optimized the workflow of the `tcs` pipeline in the "end-join/QC/Trimming" section.
185
+ `tcs` version to v2.3.5.
186
+
187
+
182
188
  ### Version 1.2.5-06232021
183
189
 
184
190
  1. Add error rescue and report in the `tcs` pipeline.
185
191
  error messages are stored in the .tcs_error file. `tcs` pipeline updated to v2.3.4.
186
- 2. Use simple majority for the consensus cut-off in the default setting of the `tcs -dr` pipeline.
192
+ 2. Use simple majority for the consensus cut-off in the default setting of the `tcs -dr` pipeline.
187
193
 
188
194
  ### Version 1.2.2-05272021
189
195
 
data/bin/tcs CHANGED
@@ -137,7 +137,7 @@ begin
137
137
  end
138
138
 
139
139
  primers = params[:primer_pairs]
140
- if primers.empty?
140
+ if primers.empty? or primers.nil?
141
141
  ViralSeq::TcsCore.log_and_abort log, "No primer information. Script terminated."
142
142
  end
143
143
 
@@ -415,71 +415,65 @@ begin
415
415
  joined_sh_raw = end_join(out_dir_raw, primer[:end_join_option], primer[:overlap])
416
416
  end
417
417
 
418
- else
419
- File.open(outfile_log, "w") do |f|
420
- f.puts JSON.pretty_generate(summary_json)
421
- end
422
- next
423
- end
424
-
425
- if primer[:TCS_QC]
426
- ref_start = primer[:ref_start]
427
- ref_end = primer[:ref_end]
428
- ref_genome = primer[:ref_genome].to_sym
429
- indel = primer[:indel]
430
- if ref_start == 0
431
- ref_start = 0..(ViralSeq::RefSeq.get(ref_genome).size - 1)
432
- end
433
- if ref_end == 0
434
- ref_end = 0..(ViralSeq::RefSeq.get(ref_genome).size - 1)
435
- end
436
- if primer[:end_join_option] == 1 and primer[:overlap] == 0
437
- r1_sh = ViralSeq::SeqHash.fa(outfile_r1)
438
- r2_sh = ViralSeq::SeqHash.fa(outfile_r2)
439
- r1_sh = r1_sh.hiv_seq_qc(ref_start, (0..(ViralSeq::RefSeq.get(ref_genome).size - 1)), indel, ref_genome)
440
- r2_sh = r2_sh.hiv_seq_qc((0..(ViralSeq::RefSeq.get(ref_genome).size - 1)), ref_end, indel, ref_genome)
441
- new_r1_seq = r1_sh.dna_hash.each_with_object({}) {|(k, v), h| h[k[0..-4]] = v}
442
- new_r2_seq = r2_sh.dna_hash.each_with_object({}) {|(k, v), h| h[k[0..-4]] = v}
443
- joined_seq = {}
444
- new_r1_seq.each do |seq_name, seq|
445
- next unless seq
446
- next unless new_r2_seq[seq_name]
447
- joined_seq[seq_name] = seq + new_r2_seq[seq_name]
418
+ if primer[:TCS_QC]
419
+ ref_start = primer[:ref_start]
420
+ ref_end = primer[:ref_end]
421
+ ref_genome = primer[:ref_genome].to_sym
422
+ indel = primer[:indel]
423
+ if ref_start == 0
424
+ ref_start = 0..(ViralSeq::RefSeq.get(ref_genome).size - 1)
425
+ end
426
+ if ref_end == 0
427
+ ref_end = 0..(ViralSeq::RefSeq.get(ref_genome).size - 1)
448
428
  end
449
- joined_sh = ViralSeq::SeqHash.new(joined_seq)
450
-
451
- if export_raw
452
- r1_sh_raw = ViralSeq::SeqHash.fa(outfile_raw_r1)
453
- r2_sh_raw = ViralSeq::SeqHash.fa(outfile_raw_r2)
454
- r1_sh_raw = r1_sh_raw.hiv_seq_qc(ref_start, (0..(ViralSeq::RefSeq.get(ref_genome).size - 1)), indel, ref_genome)
455
- r2_sh_raw = r2_sh_raw.hiv_seq_qc((0..(ViralSeq::RefSeq.get(ref_genome).size - 1)), ref_end, indel, ref_genome)
456
- new_r1_seq_raw = r1_sh_raw.dna_hash.each_with_object({}) {|(k, v), h| h[k[0..-4]] = v}
457
- new_r2_seq_raw = r2_sh_raw.dna_hash.each_with_object({}) {|(k, v), h| h[k[0..-4]] = v}
458
- joined_seq_raw = {}
459
- new_r1_seq_raw.each do |seq_name, seq|
429
+ if primer[:end_join_option] == 1 and primer[:overlap] == 0
430
+ r1_sh = ViralSeq::SeqHash.fa(outfile_r1)
431
+ r2_sh = ViralSeq::SeqHash.fa(outfile_r2)
432
+ r1_sh = r1_sh.hiv_seq_qc(ref_start, (0..(ViralSeq::RefSeq.get(ref_genome).size - 1)), indel, ref_genome)
433
+ r2_sh = r2_sh.hiv_seq_qc((0..(ViralSeq::RefSeq.get(ref_genome).size - 1)), ref_end, indel, ref_genome)
434
+ new_r1_seq = r1_sh.dna_hash.each_with_object({}) {|(k, v), h| h[k[0..-4]] = v}
435
+ new_r2_seq = r2_sh.dna_hash.each_with_object({}) {|(k, v), h| h[k[0..-4]] = v}
436
+ joined_seq = {}
437
+ new_r1_seq.each do |seq_name, seq|
460
438
  next unless seq
461
- next unless new_r2_seq_raw[seq_name]
462
- joined_seq_raw[seq_name] = seq + new_r2_seq_raw[seq_name]
439
+ next unless new_r2_seq[seq_name]
440
+ joined_seq[seq_name] = seq + new_r2_seq[seq_name]
463
441
  end
464
- joined_sh_raw = ViralSeq::SeqHash.new(joined_seq_raw)
465
- end
466
- else
467
- joined_sh = joined_sh.hiv_seq_qc(ref_start, ref_end, indel, ref_genome)
442
+ joined_sh = ViralSeq::SeqHash.new(joined_seq)
443
+
444
+ if export_raw
445
+ r1_sh_raw = ViralSeq::SeqHash.fa(outfile_raw_r1)
446
+ r2_sh_raw = ViralSeq::SeqHash.fa(outfile_raw_r2)
447
+ r1_sh_raw = r1_sh_raw.hiv_seq_qc(ref_start, (0..(ViralSeq::RefSeq.get(ref_genome).size - 1)), indel, ref_genome)
448
+ r2_sh_raw = r2_sh_raw.hiv_seq_qc((0..(ViralSeq::RefSeq.get(ref_genome).size - 1)), ref_end, indel, ref_genome)
449
+ new_r1_seq_raw = r1_sh_raw.dna_hash.each_with_object({}) {|(k, v), h| h[k[0..-4]] = v}
450
+ new_r2_seq_raw = r2_sh_raw.dna_hash.each_with_object({}) {|(k, v), h| h[k[0..-4]] = v}
451
+ joined_seq_raw = {}
452
+ new_r1_seq_raw.each do |seq_name, seq|
453
+ next unless seq
454
+ next unless new_r2_seq_raw[seq_name]
455
+ joined_seq_raw[seq_name] = seq + new_r2_seq_raw[seq_name]
456
+ end
457
+ joined_sh_raw = ViralSeq::SeqHash.new(joined_seq_raw)
458
+ end
459
+ else
460
+ joined_sh = joined_sh.hiv_seq_qc(ref_start, ref_end, indel, ref_genome)
468
461
 
469
- if export_raw
470
- joined_sh_raw = joined_sh_raw.hiv_seq_qc(ref_start, ref_end, indel, ref_genome)
462
+ if export_raw
463
+ joined_sh_raw = joined_sh_raw.hiv_seq_qc(ref_start, ref_end, indel, ref_genome)
464
+ end
471
465
  end
472
- end
473
466
 
474
- log.puts Time.now.to_s + "\t" + "Paired TCS number after QC based on reference genome: " + joined_sh.size.to_s
475
- summary_json[:combined_tcs_after_qc] = joined_sh.size
476
- if primer[:trim]
477
- trim_start = primer[:trim_ref_start]
478
- trim_end = primer[:trim_ref_end]
479
- trim_ref = primer[:trim_ref].to_sym
480
- joined_sh = joined_sh.trim(trim_start, trim_end, trim_ref)
481
- if export_raw
482
- joined_sh_raw = joined_sh_raw.trim(trim_start, trim_end, trim_ref)
467
+ log.puts Time.now.to_s + "\t" + "Paired TCS number after QC based on reference genome: " + joined_sh.size.to_s
468
+ summary_json[:combined_tcs_after_qc] = joined_sh.size
469
+ if primer[:trim]
470
+ trim_start = primer[:trim_ref_start]
471
+ trim_end = primer[:trim_ref_end]
472
+ trim_ref = primer[:trim_ref].to_sym
473
+ joined_sh = joined_sh.trim(trim_start, trim_end, trim_ref)
474
+ if export_raw
475
+ joined_sh_raw = joined_sh_raw.trim(trim_start, trim_end, trim_ref)
476
+ end
483
477
  end
484
478
  end
485
479
 
@@ -487,11 +481,13 @@ begin
487
481
  if export_raw
488
482
  joined_sh_raw.write_nt_fa(File.join(out_dir_raw, "combined.raw.fasta"))
489
483
  end
484
+
490
485
  end
491
486
 
492
487
  File.open(outfile_log, "w") do |f|
493
488
  f.puts JSON.pretty_generate(summary_json)
494
489
  end
490
+
495
491
  end
496
492
 
497
493
  unless options[:keep]
@@ -2,6 +2,6 @@
2
2
  # version info and histroy
3
3
 
4
4
  module ViralSeq
5
- VERSION = "1.2.5"
6
- TCS_VERSION = "2.3.4"
5
+ VERSION = "1.2.6"
6
+ TCS_VERSION = "2.3.5"
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: viral_seq
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.5
4
+ version: 1.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shuntai Zhou
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-06-23 00:00:00.000000000 Z
12
+ date: 2021-07-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler