forked from s-will/LocARNA
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
574 lines (482 loc) · 20.2 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
============================================================
=== 2016
Fix locarnate (compatibility to current locarna); add unit test
1.8.9 (2016-21-04)
improve configuration
improve ubuntu packaging
fix anchor constraint check in mlocarna fasta input
allow ribofit for mea -- e.g. for probabilistic; this used to require ribosum
1.8.8 (2016-15-04)
adapt to and require ViennaRNA >=2.2.4
fix all static linking
link binaries statically to libLocARNA by default;
otherwise use --enable-dynamic-binaries
fix & clean up code (after cppcheck static analysis)
prepare for rpm packaging
============================================================
=== 2015
1.8.7 (2015-11-12)
prepare for Ubuntu packaging
fix man pages
- update generation (add missing man pages)
- fix program names
- improve/fix help/man of binaries and locarnate
clean exploc_p (get rid of "in"-mechanism)
fix problems in tests (make check) w/o enable-debug
remove wrong MultipleAlignment format check
remove locarna.pl from distribution (functionally replaced by binary)
1.8.6 (2015-10-31)
remove unused parameter "width" from locarna_rnafold_pp
Increase API version to 1.4
Get rid of locarna.hh
In clustal(-like) alignment output, adapt formatting to long names
Improve libRNA config, in cases where pkg-config does not work:
allow compiling without libgomp, if libgomp is unavailable and
is not used by libRNA
1.8.5a
Fix behavior in case structure constraints + local folding (see 1.8.2)
1.8.5 (2015-10-10)
allow empty input sequences/alignments and fix related problems
fix score of local alignment w/ empty input sequences
1.8.4 (2015-10-6)
fix potential overwriting of parameters in classes Aligner*,
which was observed only with gcc-5.2
fix bug that crashed printing string options in verbose mode
1.8.3
improve portability for easier installation on recent MacOS X:
compile without openmp; handle VRNA w/o pkgconf file
fix c++11 warnings; fix incompatibility with libc++
fix incompatibility with clang (now used by MacOS X); fix warnings of clang
remove g++ warnings
1.8.2
change semantics w.r.t. constraints + local folding:
constraints turn off local folding
reformat change log
support generating doxygen documentation from
distribution by make doxygen-doc
penalized alignment
experimental galaxy wrapper generation
1.8.1
implement ribofit
Bugfix in OMatrix: incorrect address calculation
Bugfix: LocARNA crashed while writing the result pp file if
alignments of zero length are computed with options local file
output and alifold consensus dp (alifold workaround)
bugfixes (OMatrix, alifold len 0 bug)
implement slide rule and conflict rule for f1 and mcc calculation;
also use default minimal base pair length 3 in class
ConfusionMatrix; class interface changes slightly
============================================================
=== 2014
1.8.0
Remove absolute path dependencies in scripts. This changes the
behavior, since paths are not fixed at compile time. For
example, the Vienna RNA programs are located via PATH environment
variable.
Require linking to VRNA. Remove configure options. Disallow
renaming of Vienna RNA tools RNAfold, etc.; expect them in path.
Always compile SPARSE/ExpaRNA-P. Don't pass mlocarna script
through configure anymore.
Add option --sparse to mlocarna
Add rnafold-temperature option to mlocarna
Use rnafold temperature and parameter files for alifold
Warn if used with alifold-consensus-dp
Add unit tests for mlocarna calls (standard, prob, sparse)
Align alifold structure to alignment in mlocarna output
Add Example gcvT.fa for SPARSE
sparse: --special-gap-symbols option added (default is false)
1.7.17
max-bps/uil/bpil-length-ratio for SPARSE/ExparnaP
Second type of stacking terms: new-stacking
Add heuristic to restrict maximum number of "significant" base
pairs: max-bps-length-ratio
Add max-diff restriction at arc match ends: --max-diff-at-am
Restructure parameter passing to Aligner* classes: use "named
argument" idiom
1.7.16
ExpaRNA-P rename of tools
1.7.15
Fix bug concerning iterative alignment and alignment evaluation
Rename locarna_X to exparna_p
ExpaRNA-P code "publication ready"
1.7.14
Handle inconsistencies due to anchor constraints in conflict
with other constraints/heuristics, e.g. max-diff: 1) accept -inf
pairwise similarities for guide tree construction; 2) clear
consensus anchor strings with duplicate names
============================================================
=== 2013
Jan 2013
Fix bug. Quotes in fasta-names caused failure when
generating pps via locarna_rnafold_pp in mlocarna.
(1.7.3.1)
Resolve rnalib dependency. New configure option with-sparse
is now required to compile with ExpARNA-P and SPARSE functionality.
(1.7.5)
Mar 2013
Merge in new sparsification related code.
Added fasta input check in mlocarna.
(1.7.6)
Small bug fixes
Fix memory leaks
Prepare alignment evaluation functionality
Code cleanup/refactorizations
(1.7.6.9)
Introduce configuration header config.h
Fix man page dependency problem
May/Jun 2013
Make sure that make check and make distcheck work
Split RnaData into RnaData and RnaEnsemble
Introduce new version of pp format (2.0)
Read/write of inloop probabilities
Cleaner separation of reading/writing of alignments/probability data v.s. computation;
in particulare remove I/O from Alignment class
Cleaner handling of gaps, alignment edges, and gap symbols in I/O
New option --stopwatch (in locarna*) to turn on detailed internal timing
Change class Sequence to be a mere interface to MultipleAlignment that allows operator [] for column access
Make constraints optional part of multiple alignments; make write/readable with the alignment in clustal and pp format
Remove options anchorA, anchorB from locarna and locarna_X
Support anchor and structure annotation in MultipleAlignment
RnaEnsemble constrains the folding by structure annotation of
Multiple Alignment (if given)
(Release 1.7.7)
Jul 2013
Support precomputing in loop probabilities for SPARSE
Fixed reading of PP 2.0
(Release 1.7.8)
Sep 2013
LocARNATE: new code, improvements
Exparna-P: Suboptimal traceback and improvements
Change default behavior of mlocarna for sequence-local alignment: proceed
with only-local subalignments; options local-progressive and
global-progressive control behavior, where --global-progressive
reactivates the previous one.
(Release 1.7.9)
Oct 2013
Newick bugfix
Small modifications for library use (e.g. for carna)
(Release 1.7.10)
Nov 2013
Improve max-diff heuristic (without reference alignment): make
symmetric and always allow sufficiently large deviation
(Release 1.7.11)
Fix bug in locarna_rnafold_pp (reading clustalw from stdin)
Fix bug concerning structure constraints
Update format conversions in mlocarna to pp 2.0 format
Support for fixed structure constraints (directly in C++)
(Release 1.7.12)
Fix bug that compromised LocARNA-P w/ anchor-constraints in 1.7.12
In-loop support for fixed structure constraints
(Release 1.7.13)
Bugfix: computation of consensus anchor constraints could fail; now resolve
name clashs by selecting lexicographically smaller name.
(Release 1.7.13.1)
============================================================
=== 2012
Jan 2012
fix bugs in reliability plotting and "fitting"
(1.6.2.3)
New tool locarna-mea for computing the max. expected accuracy structure
from a dot plot
(1.6.2.4)
New features for pp2dot script
New script for generating average pp-files
In combination, generate nice colored dot plots;
used first for the output of the carna server
(1.6.3)
Mar 2012
Merge with recent Exparna-P/locarna_X code
(1.7)
New classes for infinite integers (this is used for scores,
which can be -infty, i.e. undefined). The new mechanism automatizes
normalization of infinity using the type system and avoids wrong
usage by the type system. Consequently, it is more flexible. It avoids
a bug in normalized alignment and helps to clean up the Exparna-P code.
(1.7.1)
Apr/May 2012
Add reading of score matrix in mlocarna
Fix bug in probabilistic mode, which did not allow '#' in sequence names
Fix bugs in output of score matrix
Fix drawdplin
June 2012
Fix bug in trace controller
(1.7.2)
Add locarna_n code, alpha status
Aug 2012
Fix a bug related to use of trace controller (max-diff) with free
endgaps.
Fix autodetection of input multiple alignment file format,
i.e. FASTA vs. CLUSTAL.
Change interface of scoring such that gapA (gapB) depends on only
positions in sequence A (B), resp.
(1.7.2.1)
Major improvements of the RnaData class and its interface
Some clean up
(1.7.2.5)
Some bug fixes, support for graph kernel guide tree
(1.7.2.6)
Include graph kernel guide tree support in mlocarna
(1.7.2.7)
Some cleanup, release.
Fix bug (missing initialization) in RnaData
(1.7.3)
============================================================
=== 2011
Jan 2011
Alignment in limited deviation to a reference alignment
program deviation computes deviation of alignment to reference
Deactivate max-diff-aln for --probabilistic/locarna_p
(Version 1.6)
Feb 2011
Restructure code
library libLocARNA is generated and is used as library by executables
Fix name normalization bug in mlocarna.in
(Version 1.6.1)
Mar 2011
Doxygen compiles without warning and produces useful documentation
of the library
Vienna RNA library is now required for compilation and will be linked
Locarna accepts clustal files as input and then computes base pair
probabilities via pf_fold of the Vienna RNA lib. Currently this is
limited to single sequence clustal files.
Implement reading of mfasta files (still switched off).
Apr 2011
Implement several alignment comparison measures (and use in locarna_deviation) (EXPERIMENTAL)
Make linking to Vienna librna configurable, default=off! Activate
by calling ./configure with --enable-librna.
New strategy for consensus dot plot generation: employ RNAalifold
-p. Enable via mlocarna's option --alifold-consensus-dp Note: the
default consensus dot plot computation seems to be flawed! The new
tool pp2dot allows to visualize consensus dot plots (by converting
pp to Vienna-like dot plot postscript files) and should help to
improve the default strategy (otherwise we are going to replace
it!)
mlocarna accepts via --tree-file a super-tree as guide tree and
automatically projects to the taxa in the input.
Allow quotation in newick trees (using Text::ParseWords)
and use quotations when generating newick trees
May 2011
Fix a problem with compiling on case-insensitive file systems (generate locarna.bin instead of locarna executable in src, rename at install)
add alifold-consensus-dp option for mlocarna
Aug 2011: Add code for 'locarna_X'
Sep 2011: Adding Exparna-P code for "in loop" probabilities
Oct 2011: pre-release 1.6.2
Nov 2011:
Add mlocarna options (pw-aligner and pw-aligner-p) to run
specified binaries in place of locarna and locarna_p. This can be
used to plug in compatible programs like carna
Bug fix; compilation without linking libRNA was broken.
release (1.6.2)
Dec 2011
Bug-fixes: treefile regexp, LARGE_PF name clash mit Vienna package
(1.6.2.1)
add script to translate to normalized names for mlocarna
Add options pw-aligner-options and pw-aligner-p-options, to mlocarna to pass option strings to the pairwise
aligner. This is useful in combination with specifying
non-standard pairwise alignment programs.
Support generation of pp files from dp2.ps and dp.ps files when
skipping dot plot computation with --skip-pp (keep name for
legacy). This allows the combine user-defined dotplots with
anchor constraints from the mfasta input file.
Support fixed structures (with pseudoknots) in the fasta input
of mlocarna as structure constraint string with tag #FS
All base pairs in the fix structure receive a probability of 1.
(1.6.2.2)
============================================================
=== 2010
Jan 2010
new tool Utils/reliability-profile.pl generates nice
profile plots from mlocarna --probabilistic output directories
stacking turned off, unless exp-prob option used
(locarna-1.5a)
Mar 2010
Add normalized local alignment, proof of concept
(locarna-1.5.1)
Combine normalized alignment and kbest
Introduce option better to enumerate suboptimal solution
better than given threshold
--kbest and --better can be used together
(locarna-1.5.2)
Fix build in separate build directory
May 2010
Introduce new representation of fasta data
Major restructuring/refactorization of mlocarna.in and MLocarna.pm
Move many functions of mlocarna.in to packages and
introduce several new packages to group functions thematically
(locarna-1.5.3)
Resolve a bug that made LocARNA handle Ts as unknown
characters. LocARNA now automatically transforms Ts to Us in input
sequences. The bug did not affect input sequences without Ts. For
matchs involving Ts, LocARNA wrongly used an ad-hoc score instead
of the ribosum score for matches involving 'U', as one would
expect.
Oct 2010
Add EdgeController: adds feature to constrain (max-diff-match)
alignment relative to a given alignment. Change handling of
max-diff-match in case of unequal length: instead of relaxing
constraint, change constraint to |i*(lenB/lenA)-j|<=max-diff
Add multiple alignment class to support construction of EdgeController.
Nov 2010
Change Copyright to GPL v2 and update README
rename max-diff-match to max-diff heuristic.
replace EdgeController by TraceController use the max-diff delta
( TraceController ) to restrict alignment of paired and unpaired
positions (not only ends of arcs) in Aligner. Semantics is given by
restriction of alignment cuts/matrix cells!
============================================================
=== 2009
Jan 2009 (v1.42)
iterative alignment using SCI as optimization criterion
Feb 2009 (v1.4.4alpha)
cleanup mlocarna code
cleanup mlocarna output (inclusive output modes -v, --moreverbose)
improve reliability computation
multi-threaded mlocarna, new option --cpus <n>: use n threads
more structure for mlocarna output to file system (distribute
files to subdirs)
introduce --pf-scale parameter to locarna_p and mlocarna
precompute exp base match similarity and gap cost for partition
function => significant speed up of locarna_p
change handling of max_diff: guarantee at least |lenA-lenB|
improve outside algorithm in locarna_p (reduce sizes of Mrev-matrices)
=> with prior optimization massive speedup of locarna_p
add probability filtering after cbt
further improvement of outside (cheaper computation of certain
Mprime entries)
iteration with reliable structure as constraints
(option --it-reliable-structure)
support for non-threaded perl
Mar 2009
fix some problems with the option parsing
(e.g. now -p=0.1 is correct and -p=a throws an error)
fix bug in initialization for structure locality
change semantics of constraints in the context of locality:
anchor constraints (i,j) now enforce that edge (i,j) is part
of the local alignment (for sequence and structure locality)
Apr 2009
add missing options to mlocarna, fix bug in locarnate (thanks to Wolfgang)
fix bug with sharing/threads in mlocarna (v1.4.6)
locarna_p computes probabilities for matching fragments
May 2009
clean manpage of mlocarna
Jun 2009
offer large data type "long double" for partition function
computation. this is available when configuring through option
--enable-large-pf. Use this in case of long alignments, where the
partition function exceeds the range of type "double". Although
--pf-scale sometimes provides a workaround, for multiple alignment
of large sequences it is often the only viable choice.
Jul 2009
add free endgaps via option --free-endgaps "----", for locarna
gaps at all for ends can be allowed for free independently.
For mlocarna, --free-endgaps will allow free end gaps at any end.
Sep 2009
fixed serious bugs concerning stacking: due to these bugs,
mlocarna did not profit from stacking and locarna could get wrong
results with stacking turned on.
Change base pair filtering by probability for stacking: ignore
stacking probability, filter only by base pair probability.
(locarna-1.4.9alpha)
============================================================
=== 2008
Feb 2008
remove bug in anchor constraints
Ribosum-85-60 compiled in
changed default parameters to something reasonable
Mar 2008
remove bug in rna_data.cc reading dp.ps, v 1.2.4
Jun 2008
change char * to std::string in options module
(the g++-compiler does not like it anymore :))
Jul 2008
integrate locarnate - a tool for multiple alignment
that uses locarna in combination with tcoffee
(Version 1.3)
Aug 2008
partition function version of locarna (locarna_p)
experimental support for multiple alignment using
basematch probabilities and probabilistic
consistency transformation
(Version 1.3.2)
mlocarna can write basematch probabilities for plotting
plotting of basematch probs (Utils/plot-bmprobs)
mlocarna now correctly accepts input trees in newick-format that
are terminated by ";". However, it does not enforce the ";"-termination
mlocarna now writes the result.tree in ";"-terminated newick-format
use rounding (instead of truncate) in scoring module, when
converting from double to score_t. This fixes some inconsistency
between 32/64bit and is the correct thing to do anyway
Oct 2008
improve speed up gained from using anchor constraints
Nov 2008 (v1.4)
add probabilistic scoring with consistency transformation
with structural scoring in progressive alignment steps
change options of mlocarna for probabilistic/mea-type alignment
============================================================
=== 2007
Sept 2007 (1.0alpha)
refactoring; new classes Scoring, RnaData, ...
preparations for better scoring:
reading Ribosum-Data, new class Ribosum
computing match probabilities in sequence alignment (Gotoh):
Implemented methods: pairHMM, partition function, local pf
new class MatchProbs
improve option parser: introduce sections and section hiding
integrate new scoring scheme: maximum expected accuracy
significant speed-up due to re-organization of the recursion
equations:
redefine D to already contain the score contribution of
the arcmatch. This reduces these computations by orders of
magnitude!
Nov 2007
add constraints to pairwise and multiple alignment. This means
for locarna: integrate anchor constraints
for mlocarna: read and pass structure constraints to RNAfold -p,
read and pass sequence constraints to locarna
The pp-format is redefined in order to pass constraint information from
mlocarna to locarna.
New class for representing and calculating with infinite scores
changed default sequ-local=on to off
increased min_prob in mlocarna.pl
bug fix in computation of consensus probs
rewrite noLP
add (pseudo)affine gap penalties
make mea working
change default output width to 120
ribosum scoring for classic score
change handling of options in mlocarna
mlocarna learns iterative refinement
mlocarna learns conistency based transformation
Dec 2007
true affine gap cost (implemented using additional vectors E and F)
implemented stacking (v_1_2alpha)
removed bugs in traceback
cleaned options
include version name in output (v_1_2_1a)
add man pages
add Ribosum85-60 matrix in distribution
avoid writing to global /tmp directory (v_1_2_2a)
avoid potential file name conflicts in mlocarna
accept duplicate (or not prefix unique) names in mfasta input
============================================================
=== 2006
Jan 2006: add support for aligning alignments
(used for multiple progressive alignment)
Aug 2006: lessen memory consumption of locarna.
In particular important in case of
scanning (target against genome)
Add some options/features that are useful for scanning
option --kbest
option --max-diff-am
option --ungappedA
option --local-output
handling of nucleotide-symbol N for unknown in input
Oct 2006: add support for stacking alignment, not finished
May 2006 (0.991): small changes, rename mlocarna-p to mlocarna
============================================================
=== 2005
Mai 2005: global alignment
June 2005: extension to local alignment (sequence+structure locality),
no_lonely_pairs option
Nov 2005: command line options
Dez 2005: recognize and read dot.ps files (in add to formerly used pp-files)