rbbt-util 5.6.16 → 5.6.17

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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rbbt/util/misc.rb +75 -72
  3. metadata +47 -61
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 24c17a9f2dd891d8f1921bfc2b0b2df3c32bffa1
4
- data.tar.gz: 2fec2a54a9f0f343efd5baf1a400ce884cb25fe2
3
+ metadata.gz: 9cd5bcdf21e90d1e62413b0c5f05c2fe92cd43cc
4
+ data.tar.gz: 0e5f75492b51edf63e76b32624d4a4dc39092a6e
5
5
  SHA512:
6
- metadata.gz: 34feb9cc1d573271d7228a53683574eb036d4cb8f2067f5e9b316ba8b76243a45d0289788b47bbd497e58e3cd2fccbe1424444a3fbfea75312a6eb1cd56aa101
7
- data.tar.gz: 2083c933319a679c82b25c00033423283d81f3bde77eff41d6162b3e8e6590c81762b31270ed390ce987e9654a356f6f9ba53d8212b61eebb70834862c93e2e2
6
+ metadata.gz: e2b471f1a98ae3ddfe81fd90675cc05a8d1cbbd24da1ce2d08955f476038681f87bebfd979d9798241c0cee531e28c1c18e4faa868a9d7f7c24dfc2831742bdf
7
+ data.tar.gz: 4db6e2a91bc5c1cf7370feba6494ffef580f80b4b0d67d7c27be5b8f83a2a9f429e73244001541a40252ca9c7a218eaae8c75a46e76352b20e0deb5f565d145f
@@ -1,7 +1,6 @@
1
1
  require 'lockfile'
2
2
  require 'net/smtp'
3
3
  require 'digest/md5'
4
- require 'narray'
5
4
  require 'cgi'
6
5
  require 'zlib'
7
6
  require 'rubygems/package'
@@ -506,80 +505,82 @@ end
506
505
  "val" => "V"
507
506
  }
508
507
 
509
- def self.fast_align(reference, sequence)
510
- init_gap = -1
511
- gap = -2
512
- diff = -2
513
- same = 2
514
-
515
- cols = sequence.length + 1
516
- rows = reference.length + 1
517
-
518
- a = NArray.int(cols, rows)
519
-
520
- for spos in 0..cols-1 do a[spos, 0] = spos * init_gap end
521
- for rpos in 0..rows-1 do a[0, rpos] = rpos * init_gap end
522
-
523
- spos = 1
524
- while spos < cols do
525
- rpos = 1
526
- while rpos < rows do
527
- match = a[spos-1,rpos-1] + (sequence[spos-1] != reference[rpos-1] ? diff : same)
528
- skip_sequence = a[spos-1,rpos] + gap
529
- skip_reference = a[spos,rpos-1] + gap
530
- a[spos,rpos] = [match, skip_sequence, skip_reference].max
531
- rpos += 1
532
- end
533
- spos += 1
534
- end
535
-
536
- start = Misc.max(a[-1,0..rows-1])
537
- start_pos = a[-1,0..rows-1].to_a.index start
538
-
539
- ref = ''
540
- seq = ''
541
- rpos = start_pos
542
- spos = cols - 1
543
-
544
- while spos > 0 and rpos > 0
545
- score = a[spos,rpos]
546
- score_match = a[spos-1,rpos-1]
547
- score_skip_reference = a[spos,rpos-1]
548
- score_skip_sequence = a[spos-1,rpos]
508
+ #def self.fast_align(reference, sequence)
509
+ #
510
+ #require 'narray'
511
+ # init_gap = -1
512
+ # gap = -2
513
+ # diff = -2
514
+ # same = 2
515
+
516
+ # cols = sequence.length + 1
517
+ # rows = reference.length + 1
518
+
519
+ # a = NArray.int(cols, rows)
520
+
521
+ # for spos in 0..cols-1 do a[spos, 0] = spos * init_gap end
522
+ # for rpos in 0..rows-1 do a[0, rpos] = rpos * init_gap end
523
+
524
+ # spos = 1
525
+ # while spos < cols do
526
+ # rpos = 1
527
+ # while rpos < rows do
528
+ # match = a[spos-1,rpos-1] + (sequence[spos-1] != reference[rpos-1] ? diff : same)
529
+ # skip_sequence = a[spos-1,rpos] + gap
530
+ # skip_reference = a[spos,rpos-1] + gap
531
+ # a[spos,rpos] = [match, skip_sequence, skip_reference].max
532
+ # rpos += 1
533
+ # end
534
+ # spos += 1
535
+ # end
549
536
 
550
- case
551
- when score == score_match + (sequence[spos-1] != reference[rpos-1] ? diff : same)
552
- ref << reference[rpos-1]
553
- seq << sequence[spos-1]
554
- spos -= 1
555
- rpos -= 1
556
- when score == score_skip_reference + gap
557
- ref << reference[rpos-1]
558
- seq << '-'
559
- rpos -= 1
560
- when score == score_skip_sequence + gap
561
- seq << sequence[spos-1]
562
- ref << '-'
563
- spos -= 1
564
- else
565
- raise "stop"
566
- end
567
- end
537
+ # start = Misc.max(a[-1,0..rows-1])
538
+ # start_pos = a[-1,0..rows-1].to_a.index start
539
+
540
+ # ref = ''
541
+ # seq = ''
542
+ # rpos = start_pos
543
+ # spos = cols - 1
544
+
545
+ # while spos > 0 and rpos > 0
546
+ # score = a[spos,rpos]
547
+ # score_match = a[spos-1,rpos-1]
548
+ # score_skip_reference = a[spos,rpos-1]
549
+ # score_skip_sequence = a[spos-1,rpos]
550
+
551
+ # case
552
+ # when score == score_match + (sequence[spos-1] != reference[rpos-1] ? diff : same)
553
+ # ref << reference[rpos-1]
554
+ # seq << sequence[spos-1]
555
+ # spos -= 1
556
+ # rpos -= 1
557
+ # when score == score_skip_reference + gap
558
+ # ref << reference[rpos-1]
559
+ # seq << '-'
560
+ # rpos -= 1
561
+ # when score == score_skip_sequence + gap
562
+ # seq << sequence[spos-1]
563
+ # ref << '-'
564
+ # spos -= 1
565
+ # else
566
+ # raise "stop"
567
+ # end
568
+ # end
568
569
 
569
- while (rpos > 0)
570
- ref << reference[rpos-1]
571
- seq = seq << '-'
572
- rpos -= 1
573
- end
570
+ # while (rpos > 0)
571
+ # ref << reference[rpos-1]
572
+ # seq = seq << '-'
573
+ # rpos -= 1
574
+ # end
574
575
 
575
- while (spos > 0)
576
- seq << sequence[spos-1]
577
- ref = ref + '-'
578
- spos -= 1
579
- end
580
-
581
- [ref.reverse + reference[start_pos..-1], seq.reverse + '-' * (rows - start_pos - 1)]
582
- end
576
+ # while (spos > 0)
577
+ # seq << sequence[spos-1]
578
+ # ref = ref + '-'
579
+ # spos -= 1
580
+ # end
581
+ #
582
+ # [ref.reverse + reference[start_pos..-1], seq.reverse + '-' * (rows - start_pos - 1)]
583
+ #end
583
584
 
584
585
  def self.IUPAC_to_base(iupac)
585
586
  IUPAC2BASE[iupac]
@@ -972,6 +973,8 @@ end
972
973
  rescue
973
974
  Log.warn("Error checking lockfile #{lockfile}: #{$!.message}. Removing. Content: #{begin Open.read(lockfile) rescue "Could not open file" end}")
974
975
  FileUtils.rm lockfile if File.exists?(lockfile)
976
+ lockfile = Lockfile.new(lock_path)
977
+ retry
975
978
  end
976
979
 
977
980
  begin
metadata CHANGED
@@ -1,113 +1,99 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.6.16
4
+ version: 5.6.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2014-03-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :runtime
21
- prerelease: false
22
15
  version_requirements: !ruby/object:Gem::Requirement
23
16
  requirements:
24
- - - ">="
17
+ - - '>='
25
18
  - !ruby/object:Gem::Version
26
19
  version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: progress-monitor
29
20
  requirement: !ruby/object:Gem::Requirement
30
21
  requirements:
31
- - - ">="
22
+ - - '>='
32
23
  - !ruby/object:Gem::Version
33
24
  version: '0'
34
- type: :runtime
35
25
  prerelease: false
26
+ type: :runtime
27
+ - !ruby/object:Gem::Dependency
28
+ name: progress-monitor
36
29
  version_requirements: !ruby/object:Gem::Requirement
37
30
  requirements:
38
- - - ">="
31
+ - - '>='
39
32
  - !ruby/object:Gem::Version
40
33
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: lockfile
43
34
  requirement: !ruby/object:Gem::Requirement
44
35
  requirements:
45
- - - ">="
36
+ - - '>='
46
37
  - !ruby/object:Gem::Version
47
38
  version: '0'
48
- type: :runtime
49
39
  prerelease: false
40
+ type: :runtime
41
+ - !ruby/object:Gem::Dependency
42
+ name: lockfile
50
43
  version_requirements: !ruby/object:Gem::Requirement
51
44
  requirements:
52
- - - ">="
45
+ - - '>='
53
46
  - !ruby/object:Gem::Version
54
47
  version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: spreadsheet
57
48
  requirement: !ruby/object:Gem::Requirement
58
49
  requirements:
59
- - - ">="
50
+ - - '>='
60
51
  - !ruby/object:Gem::Version
61
52
  version: '0'
62
- type: :runtime
63
53
  prerelease: false
54
+ type: :runtime
55
+ - !ruby/object:Gem::Dependency
56
+ name: spreadsheet
64
57
  version_requirements: !ruby/object:Gem::Requirement
65
58
  requirements:
66
- - - ">="
59
+ - - '>='
67
60
  - !ruby/object:Gem::Version
68
61
  version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: highline
71
62
  requirement: !ruby/object:Gem::Requirement
72
63
  requirements:
73
- - - ">="
64
+ - - '>='
74
65
  - !ruby/object:Gem::Version
75
66
  version: '0'
76
- type: :runtime
77
67
  prerelease: false
68
+ type: :runtime
69
+ - !ruby/object:Gem::Dependency
70
+ name: highline
78
71
  version_requirements: !ruby/object:Gem::Requirement
79
72
  requirements:
80
- - - ">="
73
+ - - '>='
81
74
  - !ruby/object:Gem::Version
82
75
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: narray
85
76
  requirement: !ruby/object:Gem::Requirement
86
77
  requirements:
87
- - - ">="
78
+ - - '>='
88
79
  - !ruby/object:Gem::Version
89
80
  version: '0'
90
- type: :runtime
91
81
  prerelease: false
82
+ type: :runtime
83
+ - !ruby/object:Gem::Dependency
84
+ name: term-ansicolor
92
85
  version_requirements: !ruby/object:Gem::Requirement
93
86
  requirements:
94
- - - ">="
87
+ - - '>='
95
88
  - !ruby/object:Gem::Version
96
89
  version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: term-ansicolor
99
90
  requirement: !ruby/object:Gem::Requirement
100
91
  requirements:
101
- - - ">="
92
+ - - '>='
102
93
  - !ruby/object:Gem::Version
103
94
  version: '0'
104
- type: :runtime
105
95
  prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
96
+ type: :runtime
111
97
  description: Utilities for handling tsv files, caches, etc
112
98
  email: miguel.vazquez@cnio.es
113
99
  executables:
@@ -288,33 +274,39 @@ homepage: http://github.com/mikisvaz/rbbt-util
288
274
  licenses:
289
275
  - MIT
290
276
  metadata: {}
291
- post_install_message:
277
+ post_install_message:
292
278
  rdoc_options: []
293
279
  require_paths:
294
280
  - lib
295
281
  required_ruby_version: !ruby/object:Gem::Requirement
296
282
  requirements:
297
- - - ">="
283
+ - - '>='
298
284
  - !ruby/object:Gem::Version
299
285
  version: '0'
300
286
  required_rubygems_version: !ruby/object:Gem::Requirement
301
287
  requirements:
302
- - - ">="
288
+ - - '>='
303
289
  - !ruby/object:Gem::Version
304
290
  version: '0'
305
291
  requirements: []
306
- rubyforge_project:
292
+ rubyforge_project:
307
293
  rubygems_version: 2.2.2
308
- signing_key:
294
+ signing_key:
309
295
  specification_version: 4
310
296
  summary: Utilities for the Ruby Bioinformatics Toolkit (rbbt)
311
297
  test_files:
298
+ - test/test_helper.rb
312
299
  - test/rbbt/test_workflow.rb
300
+ - test/rbbt/test_association.rb
301
+ - test/rbbt/test_resource.rb
302
+ - test/rbbt/test_entity.rb
303
+ - test/rbbt/test_knowledge_base.rb
304
+ - test/rbbt/test_tsv.rb
305
+ - test/rbbt/test_persist.rb
306
+ - test/rbbt/test_annotations.rb
307
+ - test/rbbt/test_fix_width_table.rb
313
308
  - test/rbbt/resource/test_path.rb
314
309
  - test/rbbt/util/test_cmd.rb
315
- - test/rbbt/util/simpleopt/test_setup.rb
316
- - test/rbbt/util/simpleopt/test_get.rb
317
- - test/rbbt/util/simpleopt/test_parse.rb
318
310
  - test/rbbt/util/test_chain_methods.rb
319
311
  - test/rbbt/util/test_simpleDSL.rb
320
312
  - test/rbbt/util/test_log.rb
@@ -327,17 +319,13 @@ test_files:
327
319
  - test/rbbt/util/test_semaphore.rb
328
320
  - test/rbbt/util/test_misc.rb
329
321
  - test/rbbt/util/test_tmpfile.rb
330
- - test/rbbt/test_association.rb
331
- - test/rbbt/test_resource.rb
332
- - test/rbbt/test_entity.rb
333
- - test/rbbt/test_knowledge_base.rb
322
+ - test/rbbt/util/simpleopt/test_setup.rb
323
+ - test/rbbt/util/simpleopt/test_get.rb
324
+ - test/rbbt/util/simpleopt/test_parse.rb
334
325
  - test/rbbt/association/test_index.rb
335
326
  - test/rbbt/association/test_item.rb
336
- - test/rbbt/test_tsv.rb
337
327
  - test/rbbt/workflow/test_task.rb
338
328
  - test/rbbt/workflow/test_step.rb
339
- - test/rbbt/test_persist.rb
340
- - test/rbbt/test_annotations.rb
341
329
  - test/rbbt/persist/test_tsv.rb
342
330
  - test/rbbt/persist/tsv/test_lmdb.rb
343
331
  - test/rbbt/persist/tsv/test_kyotocabinet.rb
@@ -352,5 +340,3 @@ test_files:
352
340
  - test/rbbt/tsv/test_filter.rb
353
341
  - test/rbbt/tsv/test_attach.rb
354
342
  - test/rbbt/tsv/test_manipulate.rb
355
- - test/rbbt/test_fix_width_table.rb
356
- - test/test_helper.rb