Changelog
Below, you’ll find a list of notable changes for each version of the ViennaRNA Package.
Version 2.6.x
Unreleased
Version 2.6.4
Programs
Fix C++17 compilation issue with
kinwalker
Fix potential compilation issues with C++20 in
RNAforester
frontendRefactor and correct spelling issues in man pages for several executable programs
Library
API: Add shift move support to
vrna_move_neighbor_diff*()
functionsAPI: Fix char array initialization in
snoop.c
API: Fix potentially leaking file pointer in
vrna_file_msa_read()
API: Fix potentially leaking memory in
rnaplot_EPS()
API: Fix potential use of uninitialized variable in
vrna_rotational_symmetry_db_pos()
API: Fix soft constraints issue in external loop of
vrna_subopt*()
SWIG: Add swig class output parameter typemap for Python
SWIG: Add
__hash__()
and__eq__()
methods for wrapped_vrna_move_t
in PythonSWIG: Return
var_array<vrna_move_t>
objects in Python wrappedvrna_neighbors()
andvrna_move_neighbor_diff()
SWIG: Refactor file handle wrapping between Python 3 and C
SWIG: Fix
var_array
Python slices and associated memory leakSWIG: Fix bogus
delete/free()
calls in swig interfaceAdd requirements to build
RNAlib
with MSVC for WindowsRemove unused code in
RNApuzzler
Package
DOC: Transition reference manual from
doxygen
tosphinx
viabreathe
bridgeDOC: Merge documentation of C-API and Python API
DOC: Merge parts of tutorial into reference manual
AUTOCONF: Refactor autoconf checks for capability to build reference manual
AUTOCONF: Deactivate build of
RNAxplorer
iflapack
requirements are not met
Version 2.6.3
Library
Make JSON parser integral part of ViennaRNA library
API: Move modified energy parameters into ‘modified_base’ object in JSON file(s)
SWIG: Enable stand-alone build of Python interface (for PyPI)
Package
Add enthalpy and terminal end values for predicted stacks with dihydrouridine
TESTS: Allow for using
pytest
to test the Python 3 interface
Version 2.6.2 (Release date: 2023-06-21)
Programs
Fix preparation of input sequences for modified base support in
RNAcofold
Library
Fix energy corrections for modified base support when unmodified base is not the same as fallback base, e.g. in the case of inosine
Add soft constraints to multifold external loop decomposition
Add soft constraints preparation stage callback
SWIG: Fix
fc.sc_add_bp()
propagation of constraint valuesSWIG: Wrap energy parameter file strings
Package
TESTS: Add modified base tests on duplex data with I-C and A-Psi pairs from publications
Version 2.6.1 (Release date: 2023-06-12)
Programs
Fix double free corruption in
RNAdos
Fix compilation issues due to use of
uint
instead ofunsigned int
forRNAxplorer
Fix compilation issues for
RNAxplorer
when OpenMP is unavailable
Package
AUTOCONF: Update autoconf macros
Update Debian-based packaging rules
Version 2.6.0 (Release date: 2023-06-09)
Programs
Add modified base input support to
RNAfold
Add modified base input support to
RNAplfold
Add modified base input support to
RNALfold
Add modified base input support to
RNAcofold
Add modified base input support to
RNAsubopt
Fix missing strand separators in
RNAsubopt
when applied to multiple interacting sequencesFix sorted output in
RNAsubopt
with--gquad
optionAllow for only
-Fp
inRNAinverse
instead of always activating-Fm
Fix default value of
RNAinverse -R
option in manpageRestructure
--*help
output and man pages for most executable programsAllow for cation concentration (Na+) changes in most executable programs (default 1.021M)
Allow for at least as many threads as CPUs are configured if maximum thread number detection fails
Fix alignment input parsing in
refold.pl
Add
RNAxplorer
program to the distribution
Library
API: Extend
model_details
to allow for salt concentration changesAPI: Add functions for salt concentration change derived energy corrections in
ViennaRNA/params/salt.h
API: Add arbitrary modified base support (
vrna_sc_mod()
) via soft constraints mechanism and JSON input dataAPI: Add Pseuoduridine-A parameters via soft constraints callback
API: Add Dihydrouridine parameters via soft constraints callback
API: Add inosine-U and inosine-C parameters via soft constraints callback
API: Add m6A parameters via soft constraints callback mechanism
API: Add 7DA modification support via soft constraints
API: Add Purine (nebularine) modification support
API: Add new soft constraints multi-callback dispatcher
API: Add dynamic array data structure utilities
API: Add string data structure utilities
API: Add
vrna_strchr()
functionAPI: Fix potential problems in free_dp_matrices() of LPfold.c
API: Fix z-score initialization in
vrna_Lfoldz()
amdvrna_mfe_window_zscore_cb()
API: Fix file close issue in
vrna_file_commands_read()
API: Fix backtracking issue in Zuker subopt
API: Fix missing soft constraints callback execution in Zuker subopt
API: Fix enumeration of G-quadruplexes in
vrna_subopt()
andvrna_subopt_cb()
API: Fix constraints bug for exterior loop in boltzmann sampling
API: Allow for enforcing ‘must pair’ constraint (
|
) in dot-bracket constraints stringsAPI: Fix discrepancy between global and local folding in how hard constraints for unpaired bases and non-specific pairing are applied
API: Refactor function typdefs to make them actual function pointer typedefs
SWIG: Fix Python 3 wrapper suffix issue
SWIG: Fix Perl 5 wrapper for
vrna_ud_prob_get()
SWIG: Only accept upper triangular part of matrix input in fc.sc_bp_add()
SWIG: Use var_array instead of tuples for Python RNA.ptable()
SWIG: Add Python wrapper for
vrna_move_neighbor_diff()
SWIG: Add Python docstrings generated from doxygen documentation of C-library
Package
Update
libsvm
to version 3.31Update
dlib
to version 19.24Adapt Debian dependencies
Fix compilation issues with RNAforester
AUTOCONF: Fix requirement checks when SVM support is deactivated and swig is missing
AUTOMAKE: Add
auto
parameters for-flto
compile/link flagsAUTOCONF: Require C++17 due to dependencies to compile
DLIB
AUTOCONF: Deactivate Python 2 bindings by default
Version 2.5.x
Version 2.5.1 (Release date: 2022-06-02)
Programs
Refactor
ct2db
program to allow for pseudoknots in output structure
Library
API: Fix MEA computation for G-quadruplex predictions
API: Fix memory leak in hard constraints container
API: Fix RNApuzzler edge-case that resulted in segmentation faults
API: Fix invalid memory access in
vrna_strjoin()
API: Revisit generic soft constraints for sliding-window base pair probability computations
API: Enable to overwrite automatic unpaired probability determination in MEA computation
API: Add
#VRNA_PLIST_TYPE_UNPAIRED
and#VRNA_PLIST_TYPE_TRIPLE
identifiers forvrna_ep_t
API: Add
vrna_init_rand_seed()
to initialize RNG with seedAPI: Add
vrna_zsc_compute_raw()
to obtain mean and sd for Z-score computationAPI: Add
vrna_file_connect_read_record()
function to parse connectivity table (*.ct
) filesAPI: Add
vrna_strtrim()
functionAPI: Update sanity checks for input in
vrna_pbacktrack_sub*()
API: Allow for pseudo-knots in
vrna_db_from_ptable()
API: Do not use
min_loop_size = 0
for multi strand interaction predictionAPI: Remove unnecessary uses of
min_loop_size
at multiple locationsAPI: Deprecate cutpoint member of vrna_fold_compound_t and prepare for 5’/3’ encoding
API: Refactor sequence addition/preparation for
vrna_fold_compound_t
DOC: Update documentation
SWIG: Add simple dot-plot file wrapper
plot_dp_EPS()
SWIG: Add
sequence
,sequence_encoding
andsequence_encoding2
attributes tofold_compound
objectsSWIG: Fix RNG wrapping and initialize RNG upon module load and update associated functions
SWIG: Add more access to member variable arrays for various objects used throughout the library
SWIG: Add memory efficient wrapper for dynamically allocated arrays and matrices
SWIG: Shadow pair table data structure for efficient interactions between C and target languages
SWIG: Expose hard constraints members in
fold_compound
objectsSWIG: Add
exp_E_ext_stem()
method (vrna_exp_E_ext_stem()
) tofold_compound
objectsSWIG: Expose DP matrices within
fold_compound
objectsSWIG: Fix memory leak in wrapper for
vrna_db_from_ptable()
Package
Update dlib to version 19.23
DOC: Update doxygen.conf for version 1.9.2
AUTOCONF: Factor-out Naview layout algorithm to allow for deactivating the Naview layout algorithm at configure-time
AUTOCONF: Make LaTeX checks more portable and update LaTeX package checks
AUTOCONF: Check whether we can build the swig interface when SVM support is deactivated
AUTOCONF: Fix condition check for CLA build
Version 2.5.0 (Release date: 2021-11-08)
Programs
Add
RNAmultifold
program to compute secondary structures for multiple interacting RNAsAdd multistrand capabilities to
RNAeval
Add multistrand capabilities to
RNAsubopt
Replace
RNAcofold
with a wrapper toRNAmultifold
Fix computation of BB homodimer base pair probabilities in
RNAcofold
Library
API: Fix use of undefined values in deprecated function
PS_dot_plot()
API: Fix probability computations for unstructured domains within multibranch loops
API: Fix index error in ensemble defect computations
API: Fix hard constraints behavior on non-specific base pairing
API: Fix segmentation fault for short input sequences in
vrna_hx_from_ptable()
API: Fix memory leak in static
rna_layout()
functionAPI: Fix corner-case in covariance score computation on sequence alignments that determines which alignment columns may pair and which don’t
API: Add MFE computations for multiple interacting strands
API: Add partition function computations for multiple interacting strands
API: Add base pair probability computations for multiple interacting strands
API: Add suboptimal structure prediction for multiple interacting strands
API: Add multistrand capabilities to
vrna_eval*()
functionsAPI: Add new function
vrna_equilibrium_conc()
fir concentration dependency computations of multiple interacting strands withdlib
backendAPI: Add
vrna_equilibrium_constants()
function to obtain equilibrium constants for different complexes of multiple interacting strandsAPI: Add function
vrna_pf_add()
to add ensemble free energies of two ensemblesAPI: Add function
vrna_pf_substrands()
to get ensemble free energies for complexes up to a specific number of interacting strandsAPI: Add function
vrna_n_multichoose_k()
to obtain a list of k-combinations with repetitionAPI: Add
vrna_cstr_discard()
function to allow for discarding char streams prior to flushingAPI: Add
vrna_bp_distance_pt()
function to allow for base pair distance computation with pseudo-knotsAPI: Add functions
vrna_pbacktrack_sub*()
to allow for stochastic backtracing within arbitrary sequence intervalsAPI: Add functions
vrna_boustrophedon()
andvrna_boustrophedon_pos()
to generate lists of or obtain values from sequences of Boustrophedon distributed integer numbersAPI: Add
vrna_pscore()
andvrna_pscore_freq()
functions to obtain covariance score for particular alignment columnsAPI: Rewrite Zuker suboptimals implementation
API: Remove old cofold implementations
API: Make
type
attribute ofvrna_mx_mfe_t
andvrna_mx_pf_t
a constantAPI: Guard more functions in
utils/structure_utils.c
againstNULL
inputAPI: Rename
vrna_E_ext_loop()
tovrna_eval_ext_stem()
API: Use v3 typedefs in dot-plot function declarations
SWIG: Fix Python 3 file handle as optional argument in
eval*
functions and methodsSWIG: Add wrapper for
vrna_pf_add()
SWIG: Add wrapper for
vrna_hx_from_ptable()
SWIG: Add wrapper for
vrna_db_from_probs()
Package
Update
libsvm
to version 3.25Make Python 3.x the default Python for the scripting languange interfaces
Add Python3 capability for Mac OS X installer builds
TESTS: Create TAP driver output for all unit tests (library, executables, SWIG interfaces)
Remove compile-time switch to deactivate Boustrophedon backtracing scheme (this is the status-quo now)
Add Contributors License Agreement (CLA) to the Package in
doc/CLA/
Version 2.4.x
Version 2.4.18 (Release date: 2021-04-22)
Programs
Fix and refactor
RNApkplex
programFix occasional backtracing errors in
RNALalifold
Restrict available dangling end models in
RNALalifold
to 0 and 2Prevent segmentation faults upon bogus input data in
RNAfold
,RNAalifold
,RNAcofold
,RNAheat
, andRNAeval
Free MFE DP matrices in
RNAsubopt
Boltzmann sampling when not required anymore
Library
API: Add
vrna_abstract_shapes()
andvrna_abstract_shapes_pt()
functions to convert secondary structures into their respective abstract shape notation ala Giegerich et al. 2004API: Add functions
vrna_seq_reverse()
andvrna_DNA_complement()
to create reverse complements of a sequenceAPI: Add more soft constraint handling to comparative structure prediction
API: Add generic soft constraints for sliding window comparative MFE backtracing
API: Add
vrna_ensemble_defect_pt()
that accepts pair table input instead of dot-bracket string to allow for non-nested reference structuresAPI: Add failure/success return values to generic soft constraints application functions
API: Refactor
RNAPKplex
implementation by better using constraints framework and moving out many parts fromRNAPKplex.c
intoRNAlib
as separate re-usable functionsAPI: Fix energy contributions used in
RNAPKplex
implementationsAPI: Fix energy evaluation for cofolding with dangle model 1
API: Fix wrong arithmetic usage for PF variant of combined generic and simple soft constraints applied to external loops
API: Fix memory size in #vrna_fold_compound_t initialization
API: Fix bogus memory access for comparative prediction when preparing hard constraints
API: Fix wrong index usage in hard constraints for comparative base pair probability computations of internal loops
API: Fix G-Quadruplex contributions as part of multibranch loops in single sequence base pair probability computations
API: Fix multibranch loop MFE decomposition step for multiple strand cases
API: Fix external loop generic hard constraint index updating for partition function computations
API: Fix memory allocation for auxiliary grammar data structure
API: Fix incorporation of auxiliary grammar contrib for closing pairs in sliding-window MFE computation
API: Fix DP matrix intitialization in sliding window MFE computations (fixes occasional backtracing issues in comparative sliding-window MFE computations)
API: Make
vrna_sc_t.type
attribute a constantAPI: Remove upper-triangular hard constraint matrix in favor of full matrix
API: Always ensure sane base pair span settings after
vrna_fold_compound_prepare()
API: Return INF on predictions of
vrna_mfe_dimer()
that fail due to unsatisfiable constraintsAPI: Rename internally used hard and soft constraints API symbols
API: Fix header file inclusions to prevent #include cycles
SWIG: Add wrapper for
vrna_file_fasta_read_record()
SWIG: Fix memory leak in wrapper for
vrna_probs_window()
SWIG: Refactor and therefore fix soft constraint binding functions for use in comparative structure predictions
SWIG: Fix typo that prevented properly wrapping
vrna_params_load_RNA_Andronescu2007()
SWIG: Unify wrappers for
vrna_ptable()
andvrna_ptable_from_string()
Package
REFMAN: Refactored structure annotation documentation
REFMAN: Update Mac OS X install section
Replace
DEF
placeholders in energy parameter files with their value of -50Update
RNAlocmin
subpackage to properly compile with more stringent C++ compilersUpdate
RNAforester
subpackage to properly compile with more stringent C++ compilersUpdate autotools framework, e.g. checks for pthreads
Update universal binary build instructions for Mac OS X builds to enable ARM compilation for M1 CPUs
Version 2.4.17 (Release date: 2020-11-25)
Programs
Fix
RNAup -b
mode with shorter sequence firstAdd
--backtrack-global
option toRNALfold
(currently only available for dangles == 2 | 0)Add
--zscore-pre-filter
and--zscore-report-subsumed
options toRNALfold
Library
API: Fix multiloop backtracing with soft constraints for unpaired positions in
vrna_subopt()
andvrna_subopt_cb()
API: Fix parameter parse in
vrna_params_load_from_string()
API: Add
vrna_heat_capacity()
andvrna_head_capacity_cb()
functions to RNAlibAPI: Add backtracing function
vrna_backtrack_window()
for global MFE structure to sliding-window predictionsAPI: Add SVG support for
RNApuzzler
structure layoutsAPI: Make
vrna_md_t
argument to vrna_fold_compound() a constant pointerAPI: Remove missing symbols from header file
ViennaRNA/params/default.h
API: Refactor z-score threshold filter handling for sliding-window MFE prediction
SWIG: Fix typo in interface functions to load DNA parameters
SWIG: Add python-3.9 autoconf checks
SWIG: Add
vrna_head_capacity*()
wrappersSWIG: Add access to raw energy parameters
SWIG: Add
alias
andpair
attribute to objects of typemd
SWIG: Add out/varout typemaps for 2-dimensional int-like arrays
SWIG: Add all data fields to objects of type ‘param’ and ‘exp_param’
Package
Fix Debian and Windows installer files
Version 2.4.16 (Release date: 2020-10-09)
Programs
Fix backtracing errors in
RNALalifold
for alignments with more than32768
columnsFix backtracing errors in
RNAalifold
andRNALalifold
for rare cases when two alignment columns may pair due to covariance score threshold but still yield infinite energies due to energy modelRefactored manpages/help options for
RNAplfold
,RNAplot
,RNApvmin
,RNAsubopt
, andRNAup
Library
API: Fix undefined behavior due to short int overflows when accessing alignment lengths with alignments larger than 32768 columns. This fixes occasional backtracing errors in
RNALalifold
andvrna_mfe_window()
API: Fix adding pscore to base pairs that yield INF energy in comparative global and local MFE prediction
API: Add
vrna_convert_kcal_to_dcal()
and vice-versa function for safely converting integer to float representations of energy valuesSWIG: Add a reasonable
Python
interface for objects of typevrna_path_t
SWIG: Add a wrapper for
vrna_seq_encode()
Package
Move
units.h
include file toViennaRNA/utils/units.h
Version 2.4.15 (Release date: 2020-08-18)
Programs
Fix compilation of
Kinfold
with GCC 10Add
--en-only
flag toRNAsubopt
to allow for sorting by energy onlyPrevent
RNAcofold
to process input with more than two strandsAdd cutpoint marker to dot-plots created with
RNAcofold -a
Update
Kinfold
to version1.4
Library
API: Fix removal of strand delimiter in
vrna_plot_dp_PS_list()
API: Fix
vrna_enumerate_necklaces()
API: Fix bogus backtracing for co-folded structures in
vrna_subopt()
andvrna_subopt_cb()
API: Fix storing co-folded structures for sorted output in
vrna_subopt()
API: Fix multibranch loop component hard constraints for multi-strand cases
API: Prevent adding internal loop energy contributions to enclosed parts with
energy=INF
API: Adapt
vrna_db_pack()/vrna_db_unpack()
functions to produce comparable stringsAPI: Add sorting modes
VRNA_UNSORTED
,VRNA_SORT_BY_ENERGY_LEXICOGRAPHIC_ASC
, andVRNA_SORT_BY_ENERGY_ASC
tovrna_subopt()
API: Add
vrna_strjoin()
functionAPI: Add missing case to external loop hard constraints
API: Make hard constrains strand-aware
SWIG: Fix invalid memory access when using
MEA_from_plist()
inPerl 5
orPython
SWIG: Enable keyword argument features in
Python
interface of constructors forfold_compound
,md
,move
,param
, andexp_param
objectsSWIG: Enable autodoc feature for
Python
interface of constructors forfold_compound
,md
, andmove
objectsSWIG: Enable
toString
conversion forPython
interface for objects of typefold_compound
,md
,move
,params
,exp_params
, andsubopt_solution
SWIG: Add (read-only) attributes
type
,length
,strands
,params
, andexp_params
to objects of typefold_compound
SWIG: Make attributes of objects of type
param
andexp_param
read-onlyAdd array of strand nicks to EPS dot plot files instead of single cutpoint
Draw separator line for each strand nick in EPS dot-plots
Update
libsvm
to version 3.24
Package
Disable Link-Time-Optimization (
LTO
) for third-party programs linking againstRNAlib
usingpkg-config
TESTS: Fix results dir path for out-of-tree builds
TESTS: Set default timeout for library tests to 20s
Version 2.4.14 (Release date: 2019-08-13)
Programs
Fix
RNApvmin
pertubation vector computationAdd non-redundant sampling option to
RNApvmin
Add
RNAdos
program to compute density of statesAdd
-P DNA
convenience command line parameter to most programs to quickly load DNA parameters without any input fileMAN: Add example section to man-page of
RNAalifold
Library
API: Fix memory leak in
vrna_path_gradient()
API: Fix release of memory fir
vrna_sequence_remove_all()
API: Fix soft-constraints application in
vrna_sc_minimize_pertubation()
that prevented proper computation of the pertubation vectorAPI: Add 5’ and 3’ neighbor nucleotide encoding arrays and name string to
vrna_seq_t
API: Add new data structure for multiple sequence alignments
API: Add
vrna_sequence_order_update()
functionAPI: Add non-redundant sampling mode to
vrna_sc_minimize_pertubation()
through passing negative sample-sizesAPI: Add v3.0 API functions for maximum expected accuracy (MEA) computation
API: Include energy parameter sets into
RNAlib
and provide functions to load them at runtimeAPI: Prepare sequence data in
vrna_fold_compound_t
withvrna_sequence_add()
API: Use
vrna_pbacktrack_num()
instead ofvrna_pbacktrack()
invrna_sc_minimize_pertubation()
to speed-up sample generationReduce use of global variable
cut_point
inRNAlib
SWIG: Use
importlib
in favor ofimp
to determine Python 3 tag extensionSWIG: Update various wrapper functions
SWIG: Add wrappers for MEA computation with
vrna_MEA()
andvrna_MEA_from_plist
SWIG: Add wrappers for
vrna_pr_structure()
andvrna_pr_energy()
Package
REFMAN: Fix LaTeX code in
units.h
that prevented proper compilation withpdflatex
Add an R script to create 2D landscape plots from
RNA2Dfold
outputAdd
gengetopt
to configure-time requirements to build man-pagesAdd new energy parameter file
rna_misc_special_hairpins.par
with additional UV-melting derived parameters for Tri- and Tetra-loopsUpdate RNA Tutorial
Colorize final configure script message
REFMAN: Always use
pdflatex
to compile reference manual and tutorialEXAMPLES: Add Python script that performs computations equivalent to
RNAfold -p --MEA
Version 2.4.13 (Release date: 2019-05-30)
Programs
Fix centroid structure prediction for
RNAcofold
Fix
--noLP
option forRNALalifold
Library
API: Refactor and fix collision handling in
vrna_hash_table_t
API: Fix one access using wrong index for odd dangles in
loops/external.c
API: Add two missing
MLbase
contributions for MFE prediction inloops/multibranch.c
API: Refactor multiloop MFE backtracking for odd dangles
API: Add function
vrna_backtrack5()
to allow for MFE backtracking of sub-sequences starting at the 5’-endAPI: Reduce usage of global macro
TURN
by replacing it withmin_loop_size
field ofvrna_md_t
API: Add functions
vrna_path_direct()
andvrna_path_direct_ub()
that may also return move lists instead of dot-bracket listsAPI: Add functions
vrna_pt_pk_remove()
andvrna_db_pk_remove()
that remove pseudoknots from an input structureAPI: Fix invalid memory access for lonely pair mode (
--noLP
) in comparative sliding-window MFE predictionSWIG: Fix access to global variable
pf_smooth
andpf_smooth
attribute inmodel_details
objectSWIG: Fix Python reference counting for
Py_None
ininterfaces/findpath.i
wrapperSWIG: Refactor reference counting for all Python2 and Python3 wrappers
REFMAN: Larger updates and restructuring of reference manual
Package
Install example scripts and source code files, e.g. to $prefix/share/ViennaRNA/examples
Properly pass GSL, PTHREADS, and MPFR flags to sub-projects
Fix
RNApuzzler
header file installationSWIG: Include Python 3.7 and 3.8 in list of autoconf-probed python interpreters
SWIG: Fix wrapper building for
swig >= 4.0.0
Version 2.4.12 (Release date: 2019-04-16)
Programs
Add non-redundant stochastic backtracing option for
RNAalifold
Add
--noDP
option to suppress dot-plot output inRNAfold
andRNAalifold
Add
RNApuzzler
(4) andRNAturtle
(3) secondary structure layout algorithm options toRNAfold
andRNAplot
Update help/man page of
RNALfold
Allow for multiple input files and parallel input processing in
RNAheat
Library
API: Fix declaration of
vrna_move_apply_db()
API: Fix
vrna_path()
lexicographical ordering in gradient walksAPI: Enable non-redundant stochastic backtracing for comparative structure prediction
API: Enable stochastic backtracing for circular comparative structure prediction
API: Enable stochastic backtracing of subsequences (5’ prefixes) for comparative structure prediction
API: Add
pf_smooth
attribute tovrna_md_t
data stucture to allow for disabling Boltzmann factor energy smoothingAPI: Add functions to allow for resuming non-redundant stochastic backtracing
API: Add functions to retrieve multiple stochastically backtraced structures (list and callback variants)
API: Add
vrna_positional_entropy
to compute vector of positional entropiesAPI: Add
RNApuzzler
andRNAturtle
secondary structure layout algorithm (Wiegreffe et al. 2018)API: Add v3.0 API for secondary structure layout/coordinate algorithms
API: Add more helper/utility functions for
vrna_move_t
data structuresAPI: Add callback-based neighborhood update function for (subsequent)
vrna_move_t
applicationAPI: Add abstract heap data structure available as
<ViennaRNA/datastructures/heap.h>
API: Refactor and speed-up gradient walk implementation available as
vrna_path_gradient()
API: Substitute
vrna_file_PS_aln_sub()
alignment plot function byvrna_file_PS_aln_slice()
that actually slices out a sub-alignmentAPI: Rename
vrna_annotate_covar_struct()
tovrna_annotate_covar_db()
and add new functionvrna_annotate_covar_db_extended()
to support more bracket typesAPI: Calling
vrna_params_reset()
now implies a call tovrna_exp_params_reset()
as wellAPI: Move landscape implementations into separate directory, thus headers should be included as
<ViennaRNA/landscape/move.h>
,<ViennaRNA/landscape/neighbor.h>
, etc.Ensure proper rescaling of energy parameters upon temperature changes
Refactor soft constraints implementation in stochastic backtracing
SWIG: Wrap all non-redundant stochastic backtracing functions to scripting language interface(s)
SWIG: Refactor stochastic backtracing interface(s)
SWIG: Add proper constructor for objects of type
vrna_ep_t
SWIG: Sanitize alignment plot function interface(s)
Package
Update Ubuntu/Debian and OpenSUSE build instructions
Reduce intra-package dependency on non-v3.0 API
Version 2.4.11 (Release date: 2018-12-17)
Programs
Add
--commands
option toRNAsubopt
Add non-redundant Boltzmann sampling mode for
RNAsubopt
Library
API: Fix wrong access to base pair soft constraints in equilibrium probability computations
API: Fix behavior of
vrna_nucleotide_encode()
with lowercase characters in sequenceAPI: Fix behavior of
encode_char()
with lowercase characters in sequenceAPI: Fix forbidden
GU
pairs behavior in pscore computation for comparative foldingAPI: Fix potential errors due to uninitialized
next
pointers invrna_move_t
ofvrna_eval_move_shift_pt
API: Add
AVX 512
optimized version of MFE multibranch loop decompositionAPI: Add functions for CPU SIMD feature detection
API: Add dispatcher to automatically delegate exterior-/multibranch loop MFE decomposition to supported SIMD optimized implementation
API: Add function
vrna_dist_mountain()
to compute mountain distance between two structuresAPI: Add function
vrna_ensemble_defect()
to compute ensemble defect given a target structureAPI: Add non-redundant Boltzmann sampling
API: Change behavior of
vrna_cstr_free()
andvrna_cstr_close()
to always flush output before unregistering the streamSWIG: Add interface for
vrna_loopidx_from_ptable()
Package
Activate compilation for compile-time supported SIMD optimized implementations by default
Replace
--enable-sse
configure script option with--disable-simd
Version 2.4.10 (Release date: 2018-09-26)
Programs
Fix wrong output filename for binary opening energies in
RNAplfold
Enable G-Quadruplex support for partition function computation in
RNAalifold
Library
Fix broken SSE4.1 support for multibranch loop MFE computation that resulted in increased run times
Fix redundant output issue in subopt backtracking with unusually high delta energies (>=INF)
Restore default behavior of ‘|’ symbol in dot-bracket hard constraint strings that got lost with version 2.2.0
Add faster (cache-optimized) version of Nussinov Maximum Matching algorithm
Change default linker- and loop length computations for G-Quadruplex predictions in comparative prediction modes
Add hard constraints warning for base pairs that violate the
min_loop_size
of the modelUpdate
libsvm
to version 3.23API: Add functions to set auxiliary grammar extension rules
API: Replace upper-triangular hard constraints matrix with full matrix for cache-optimized access
API: Add G-Quadruplex prediction support for comparative partition function
API: Remove
VRNA_GQUAD_MISMATCH_PENALTY
andVRNA_GQUAD_MISMATCH_NUM_ALI
macrosSWIG: Fix invalid memory access in
subopt()
method of fold_compound object when writing to fileSWIG: Add wrapper for Nussinov Maximum Matching algorithm
Package
Add
-ftree-vectorize
compile flag by default if supported
Version 2.4.9 (Release date: 2018-07-11)
Programs
Fix interactive mode behavior for multiple sequence alignment input in
RNAalifold
,RNALalifold
Allow for Stockholm formatted multiple sequence alignment input in
RNAeval
andRNAplot
Allow for multiple input files in
RNAeval
andRNAplot
Allow for parallel processing of input batch jobs in
RNAeval
andRNAplot
Add
-g
option to activate G-Quadruplex support inRNAheat
Warn on unsatisfiable hard constraints from dot-bracket string input in
RNAfold
,RNAcofold
, andRNAalifold
Library
Fix parameter order bug in
vrna_path_findpath*
functions that resulted in too large search widthsFix wrong application of base pair soft constraints in partition function computations
Fix position ruler string in EPS alignment output files
Fix MFE backtracking errors that might appear under specific hard constrained base pair patterns
Refrain from reading anything other than
#=GC SS_cons
to retrieve structures when parsing Stockholm 1.0 formatComplete soft constraints additions to Boltzmann sampling implementation for single sequences
Allow for disabling alignment wrapping in
vrna_file_PS_aln*
functionsDo not remove G-Quadruplex annotation from WUSS formatted structure strings upon calls to
vrna_db_from_WUSS
Enable G-Quadruplex related average loop energy correction terms in verbose output of
vrna_eval_*
functionsSpeed-up backward compatibility layer for energy evaluation functions that unnecessarily slowed down third-party tools using the old API
Allow for passing dot-bracket strings with
'&'
strand-end identifier to simplevrna_eval_*
functionsRemove implicit
exit()
calls from global MFE backtracking implementation.
Version 2.4.8 (Release date: 2018-06-23)
Programs
Fix compilation of RNAforester with C++17 standard
Fix tty input detection in RNAcofold
Fix bad memory access with RNAcofold -p
Library
API: Fix incorrect unpaired probability computations in vrna_probs_window()
API: Fix potential out-of-bounds access situations (for circular RNA folding) in eval.c
API: Fix comparative exterior internal loop partition function computation for circfold
SWIG: Fix false-positive use of uninitialized value in Python3/file_py3.i
Package
TESTS: Add tests for special features in RNAalifold
TESTS: Add test case for RNAcofold -p
Version 2.4.7 (Release date: 2018-06-13)
Allow for parallel processing across multiple input files in RNAfold
Allow for arbitrary number of input files in RNAalifold
Allow for parallel processing of input data in RNAalifold
Allow for arbitrary number of input files in RNAcofold
Allow for parallel processing of input data in RNAcofold
Enable parallel processing in RNAfold, RNAcofold, RNAalifold for MS Windows build
Add centroid and MEA structure computation to RNAcofold
Add configure time check for LTO capabilities of the linker
Include ligand binding energies in centroid and MEA structure output of RNAfold
Refactor ct2db program to process multiple structures from single .ct file
API: Enable processing of comparative fold_compound with vrna_pr_*() functions
API: Refactor vrna_ostream_t to enable NULL input in vrna_ostream_provide()
API: Major refactoring in loop energy evaluations (MFE and PF)
API: Make vrna_mx_pf_aux_el_t and vrna_mx_pf_aux_ml_s opaque pointers
API: Make fold_compound field
type
a const attributeAPI: Refactor MFE post-processing for circular RNAs
API: Add motif name/id support for unstructured domains
API: Remove major part of implicit exit() calls in RNAlib
API: Add implementations of Boyer-Moore-Horspool search algorithm
API: Add implementations to determine number of rotational symmetry for strings (of objects)
API: Make vrna_cmd_t an opaque pointer
API: Move headers for constraints, datastructures, io, loop energy evaluation, energy parameters, plotting, search, and utilities into separate subdirectories (backward compatibility is maintained)
API: Add hash table data structure
API: Fix discrepancy between comparative and single sequence –noLP predictions
API: Add functions to replace ‘old API’ interface of RNAstruct.h
API: Add functions to replace ‘old API’ interface of aln_util.h
API: Add generic soft constraints support to suboptimal structure prediction sensu Wuchty et al.
SWIG: Refactor callback execution for Python 2 / 3 interface to reduce overhead
SWIG: Fix configure-time check for Python 3 interface build
SWIG: Fix Python 3 IO file stream to C FILE * conversion
Cosmetic changes in final configure notice
Major changes in source tree structure of the library
Add autoconf checks for maintainer tools
Generate C strings from static PostScript files at configure time (for structure- and dot plots)
REFMAN: Large updates in API documentation and structure of reference manual
Version 2.4.6 (Release date: 2018-04-19)
Stabilize rounding of free energy output in RNAalifold
API: Fix potential rounding errors for comparative free energies in eval.c and mfe.c
API: Fix regression in exterior loop dangling end contributions for comparative base pair probabilities and Boltzmann sampling (introduced with v2.4.4)
API: Fix regression with hard constrained base pairs for comparative structure prediction (introduced with v2.4.4)
TESTS: Add basic tests for RNAalifold executable
TESTS: Ignore ‘frequency of MFE structure’ in RNAcofold partition function checks
Version 2.4.5 (Release date: 2018-04-17)
Allow for arbitrary number of input files in RNAfold
Allow for parallel processing of input data in RNAfold (UNIX only, no Windows support yet)
Add SHAPE reactivity support through commandline options for RNAplfold
Fix unstructured domain motif detection in MFE, centroid, and MEA structures computed by RNAfold
Limit allowed set of commands in command file for RNAcofold to hard and soft constraints
API: Add functions to compute equilibrium probability of particular secondary structures
API: Add dynamic string stream data type and associated functions
API: Add priority-queue like data structure with unordered fill capability and ordered output callback execution
API: Add functions to detect unstructured domain motifs in MFE, centroid, and MEA structures
API: Fix bug in sliding-window partition function computation with SHAPE reactivity and Deigan et al. conversion method
API: Fix application of ‘<’ and ‘>’ constraint symbols in dot-bracket provided constraints (was broken since v2.4.2)
API: Fix MEA structure computation in the presence of unstructured domains
API: Stabilize order of probability entries in EPS dot-plot files
Fix compiler warnings on wrong type of printf() in naview.c
Define VRNA_VERSION macro as string literal and add macros for major, minor, and patch numbers
Stabilize parallel make of Mac OS X installer
Add energy parameter set from Langdon et al. 2018
Add autoconf checks for POSIX threads compiler/linker support
SWIG: Fix ‘next’ is a perl keyword warnings for Perl5 wrapper
SWIG: Catch errors and throw execptions whenever scripting language provided callback functions are not applicable or fail
SWIG: Add keyword arguments and autodoc feature for Python/Python3 wrappers
Version 2.4.4 (Release date: 2018-03-06)
Change verbose output for soft-constraints derived ligand binding motifs in RNAfold
Allow for lowercase letters in ct2db input
Fix bug in interior-like G-Quadruplex MFE computation for single sequences
Fix autoconf switch to enable deprecation warnings
Fix bug in eval_int_loop() that prevented propagation of energy evaluation for loops with nick in strands
Fix several bugs for SHAPE reactivity related comparative partition function computations
Fix annotation of PostScript output for soft-constraint derived ligand binding motifs in RNAfold
Fix constraint indices for multibranch loops in unpaired probability computations of LPfold.c
Fix dangling end contributions in comparative partition function for exterior loops
API: Add simplified interface for vrna_pf_dimer()
API: Move concentraton dependent implementation for co-folding to separate compile unit
API: Add new API functions for exterior loop evaluations
API: Add simplified interfaces for energy evaluation with G-Quadruplexes and circular RNAs
API: Add findpath functions that allow for specification of an upper bound for the saddle point
Add configure-time linker check for Python3 interface
Add automatic CPP suggestions for deprecated function substitutes
Major restucturing and constraints feature additions in loop type dependent energy evaluation functions
Major restructuring in MFE implementations
Major restructuring in PF implementations
Minor fixes in Boltzmann sampling implementation
SWIG: Fix wrappers for findpath() implementation
SWIG: Add tons of energy evaluation wrappers
SWIG: Fix configure-time check of Perl5 interface build capabilities
SWIG: Wrap functions from walk.c and neighbor.c
DOC: Add some missing references to manpages of executable programs
REFMAN: Heavy re-ordering of the RNAlib reference manual
Version 2.4.3 (Release date: 2017-11-14)
Fix handling of dangling end contribution at sequence boundaries for sliding window base pair probability computations
Fix handling of base pair hard constraints in sliding-window implementations
Fix sliding-window pair probability computations with multibranch-loop unpaired constraints
Fix sliding-window non-specific base pair hard constraint implementation
Fix probability computation for stochastic backtracking in RNAsubopt –stochBT_en output
Fix regression in comparative structure prediction for circular RNAs
Fix LDFLAGS for scripting language interfaces in corresponding Makefiles
Stabilize partition function scaling by always using sfact scaling factor from model details
Add –pf_scale commandling parameter to RNAplfold
Add constraint framework for single sequence circular RNA structure prediction
Add RNAfold test suite to check for working implementation of constraints for circular RNAs
Add a brief contribution guideline CONTRIBUTING.md
Prevent RNAplfold from creating inf/-inf output when solution set is empty with particular hard constraints
Include RNAforester v2.0.1
Version 2.4.2 (Release date: 2017-10-13)
Fix G-Quadruplex energy corrections in comparative structure energy evaluations
Fix discrepancy in comparative exterior loop dangling end contribution of eval vs. MFE predictions
Fix regression in RNAup unstructuredness and interaction energy computations
Fix sequence length confusions when FASTA input contains carriage returns
Fix build problems of RNAlocmin with older compilers
Fix sliding-window hard constraints where single nucleotides are prohibited from pairing
Fix dot-bracket output string length in sliding-window MFE with G-Quadruplexes
Fix unpaired probability computations for separate individual loop types in LPfold.c
Fix bad memory access in RNAsubopt with dot-bracket constraint
Add full WUSS support for –SS_cons constraint option in RNAalifold
Add commandline option to RNALalifold that enables splitting of energy contributions into separate parts
Add missing hard constraint cases to sliding-window partition function implementation
Add CSV output option to RNAcofold
Use the same model details for SCI computations in RNAalifold
Abort computations in vrna_eval_structure_v() if structure has unexpected length
Use original MSA in all output generated by RNAalifold and RNALalifold
API: Add new functions to convert dot-bracket like structure annotations
API: Add various new utility functions for alignment handling and comparative structure predictions
API: Add function vrna_strsplit() to split string into tokens
API: Do not convert sequences of input MSA to uppercase letters in vrna_file_msa_read_record()
API: Rename vrna_annotate_bp_covar() and vrna_annotate_pr_covar()
API: Add new noLP neighbor generation
SWIG: Add wrapper for functions in file_utils_msa.h
SWIG: Add wrappers for vrna_pbacktrack() and vrna_pbacktrack5()
SWIG: Add vrna_db_to_element_string() to scripting language interface
REFMAN: Fix formula to image conversion in HTML output
Version 2.4.1 (Release date: 2017-08-23)
Fix memory leak in fold_compound methods of SWIG interface
Fix memory leaks in double ** returning functions of SWIG Perl5 interface
Fix memory leak in vrna_ep_t to-string() function of SWIG interface
Regression: Fix reverting pf_scale to defaults after vrna_exp_params_rescale()
Regression: Fix homo-dimer partition function computation in RNAcofold
Add unit tests for RNAcofold executable
Add SHAPE reactivity support to RNAcofold
Add SHAPE reactivity support to RNALalifold
Version 2.4.0 (Release date: 2017-08-01)
Bump libsvm to version 3.22
Print G-Quadruplex corrections in verbose mode of RNAeval
Change behavior of RNAfold –outfile option to something more predictable
Unify max_bp_span usage among sliding window prediction algorithms: RNAplfold, RNALfold, and RNALalifold now consider any base pair (i,j) with (j - i + 1) <= max_bp_span
Add SHAPE reactivity data support to RNALfold
Add commands-file support for RNALfold, RNAplfold (hard/soft constraints)
Add RNAlocmin - Calculate local minima from structures via gradient walks
Add RNA Bioinformatics tutorial (PDF version)
Add hard constraints to sliding-window MFE implementations (RNALfold, RNALalifold)
Add hard constraints to sliding-window PF implementations (RNAplfold)
Add soft constraints to sliding-window MFE implementation for single sequences (RNALfold)
Add soft constraints to sliding-window PF implementations (RNAplfold)
Add SWIG interfaces for sliding-window MFE/PF implementations
Add proper SWIG interface for alignment and structure plotting functions
Add proper SWIG interface for duplexfold, duplex_subopt, and its comparative variants
Add SWIG wrapper for vrna_exp_params_rescale()
Add explicit destructor for SWIG generated vrna_md_t objects
Add SWIG perl5 typemap for simple nested STL vectors
Add dummy field in vrna_structured_domains_s
Add note about SSE optimized code in reference manual
Add SWIG interface for findpath implementation
Add prepare() functions for ptypes-arrays and vrna_(exp_)param_t
Add warnings for ignored commands in function vrna_commands_apply()
Add callback featured functions for sliding window MFE and PF implementations
Change default behavior of adding soft constraints to a vrna_fold_compound_t (store only)
Several fixes with respect to G-Quadruplex prediction in sliding-window MFE recursions (single sequence and comparative implementation)
Replace comparative sliding-window MFE recursions (All hits are reported to callback and can be filtered in a post-processing step)
API: Remove E_mb_loop_stack() and introduce new function vrna_E_mb_loop_stack() as a replacement
API: change data type of all constraint bit-flags from
char
tounsigned char
API: change data type of a2s array in comparative structure prediction from
unsigned short
tounsigned int
API: Change function parameter order in vrna_probs_window() to follow the style of other callback-aware functions in RNAlib
Move sliding-window MFE implementations to new file mfe_window.c
Fix building PDF Reference manual with non-standard executable paths
Fix redefinition of macro ON_SAME_STRAND() in subopt.c
Fix dangling end issues in sliding-window MFE implementations
Fix regression for –canonicalBPonly switch in RNAfold/RNAcofold/RNAsubopt
Fix building sliding-window MFE implementation without SVM support
Fix parsing of STOCKHOLM 1.0 MSA files that contain MSA spanning multiple blocks
Fix Alidot link in RNAalifold manpage
Fix wrong pre-processor flags when enabling single-precision PF computations
Fix unit testing perl5 interface by including builddir/tests in PERL5LIB path
Fix buffer overflow in hairpin loop sequence motif extraction for circular RNAs
Fix out-of-bounds memory access in neighbor.c
Restore capability to compile stand-alone findpath utility
Restore capability to use non-standard alphabets for structure prediction
Restore old-API random number functions in SWIG interface
Allow additional control characters in MAF MSA input that do not end a block
Improve reference manual
Make functions in pair_mat.h static inline
Prevent users from adding out-of-range base pair soft constraints
Inline print functions in color_output.inc
Start documenting callback features in reference manual
Re-write large portions of sliding-window PF implementation
Introduce soft-constraint state flag
Clean-up SWIG unit test framework
Remove obsolete scripts ct2b.pl and colorrna.pl from src/Utils directory
Remove old RNAfold tutorial
Version 2.3.x
Version 2.3.5 (Release date: 2017-04-14)
Fix duplication of output filename prefix in RNAfold
Add V3.0 API for sliding window partition function (a.k.a. RNAPLfold)
Add G-Quadruplex prediction to RNALalifold
Add SWIG wrappers for callback-based sliding window comparative MFE prediction
Add SSE4.1 multiloop decomposition for single sequence MFE prediction
Enable RNAfold unit tests to run in paralllel
Enable users to turn-off base pair probability computations in RNAcofold with -a option
Split move set in neighbor.c
Version 2.3.4 (Release date: 2017-03-10)
Fix G-Quadruplex probability computation for single sequences
Fix double-free when using SHAPE reactivity data in RNAalifold
Fix out-of-bounds access in strand_number array
Fix weighting of SHAPE reactivity data in consensus structure prediction when fewer data than sequences are present
Fix z-score output in RNALfold
Substitute field name ‘A0’/’B0’ in data structure vrna_dimer_conc_s by ‘Ac_start’/’Bc_start’ to avoid clashes with termios.h (Mac OSX Python wrapper bug)
Minimize usage of ‘unsafe’ sprintf() calls
Enhance auto-id feature in executable programs
Always sanitize output file names to avoid problems due to strange FASTA headers
Lift restrictions of FASTA header length in RNAfold, RNAcofold, and RNAeval
Add ViennaRNA/config.h with pre-processor definitions of configure time choices
Add test-suite for RNAfold
Add functions to procude colored EPS structure alignments
Add function to write Stockholm 1.0 formatted alignments
Add function to sanitize file names
Add callback based implementation for sliding-window MFE prediction (single sequences, comparative structure prediction)
Add fast API 3.0 implementations to generate structural neighbors and perform steepest descent / random walks (Thanks to Gregor!)
Add parameter option to RNALalifold for colored EPS structure alignment and structure plot output
Add parameter option to RNALalifold to write hits into Stockholm file
Add parameter option to RNAalifold to write Stockholm 1.0 formatted output
Add parameter option to RNAalifold to suppress stderr spam
Add auto-id feature to RNAplot, RNALfold, RNAsubopt, RNAplfold, RNAheat
Add SHAPE reactivity derived pseudo-energies as separate output in RNAalifold
Add colored output to RNA2Dfold, RNALalifold, RNALfold, RNAduplex, RNAheat, RNAinverse, RNAplfold, and RNAsubopt
Add command line parameters to RNAsubopt to allow for specification of input/output files
Version 2.3.3 (Release date: 2017-01-24)
Fix multiloop contributions for comparative partition function
Fix building python2 extension module for OSX
Version 2.3.2 (Release date: 2017-01-18)
Fix pair probability plist creation with G-Quadruplexes
Allow for specification of python2/3-config at configure time
Fix init of vrna_md_t data structure after call to set_model_details()
Fix bug in consensus partition function with hard constraints that force nucleotides to be paired
Fix compilation of functions that use ellipsis/va_list
Enable generic hard constraints by default
Fix init of partition function DP matrices for unusually short RNAs
Fix behavior of RNAplfold for unusually short RNAs
Report SCI of 0 in RNAalifold when sum of single sequence MFEs is 0
Avoid multiple includes of pair_mat.h
Add configure flag to build entirely static executables
Version 2.3.1 (Release date: 2016-11-15)
Add description for how to use unstructured domains through command files to reference manual and RNAfold manpage
Fix compilation issue for Windows platforms with MingW
Add missing newline in non-TTY-color output of vrna_message_info()
Fix regression in vrna_md_update() that resulted in incomplete init of reverse-basepair type array
Extend coverage of generic hard constraints for partition function computations
Fix scaling of secondary structure in EPS plot such that it always fits into bounding box
Several fixes and improvements for SWIG generated scripting language interface(s)
Version 2.3.0 (Release date: 2016-11-01)
Add grammar extension with structured and unstructured domains
Add default implementation for unstructured domains to allow for ligand/protein binding to unpaired structure segments (MFE and PF for single sequences)
Introduced command files that subsume constraint definition files (currently used in RNAfold and RNAcofold)
Replace explicit calls to asprintf() with portable equivalent functions in the library
Fix configure script to deal with situations where Perl module can’t be build
Fix bug in doc/Makefile.am that prevented HTML installation due to long argument list
Added utility functions that deal with conversion between different units
Bugfix in SWIG wrapped generic soft constraint feature
Add subopt() and subopt_zuker() methods to SWIG wrapped fold_compound objects
Bugfix multiloop decomposition in MFE for circular RNAs
Add separate function to compute pscore for alignments
Renamed VRNA_VC_TYPE_* macros to VRNA_FC_TYPE_*
Bugfix regression that prevented programs to fail on too long input sequences
Extend EPS dot-plot in RNAfold to include motif/binding probabilities from unstructured domains
Add variadic functions for error/warning/info message
Add ID manipulation feature to RNAeval
Extend API for soft constraint feature for more fine-grained control
Add section on SWIG wrapped functions in reference manual
Fix bug in interior loop computations when hard constraints result in non-canonical base pairs
Version 2.2.x
Version 2.2.10 (Release date: 2016-09-06)
Do not ‘forget’ subopt results when output is not written to file handle and sorting is switched off
Fix bad memory access in vrna_subopt() with sorted output
Add SWIG wrappers for vrna_subopt_cb()
Correctly show if C11 features are activated in configure status
Fix autoconf checks to allow for cross compilation again
Version 2.2.9 (Release date: 2016-09-01)
Fix bug in partition function scaling for backward compatibility of ali_pf_fold()
Stabilize v3.0 API when building RNAlib and third party program linking against it with compilers that use different C/C++ standards
Add details on how to link against RNAlib to the reference manual
Fix RNAlib2.pc
Fix bug for temperature setting in RNAplfold
Use -fflat-lto-objects for static RNAlib library to allow linking without LTO
Fix interpretation of ‘P’ hard constraint for single nucleotides in constraint definition files
Add ‘A’ command for hard constraints
Fix several hard constraint corner-cases in MFE and partition function computation when nucleotides must not be unpaired
Fix order of hard constraints when read from input file
Allow for non-canonical base pairs in MFE and partition function computations if hard constraints demand it
Fix behavior of –without-swig configure script option
Fix bug in hard constraints usage of exterior loop MFE prediction with odd dangles
Add parsers for Clustal, Stockholm, FASTA, and MAF formatted alignment files
Enable RNAalifold to use Clustal, Stockholm, FASTA, or MAF alignments as input
Lift restriction of sequence number in alignments for RNAalifold
Enable ANSI colors for TTY output in RNAfold, RNAcofold, RNAalifold, RNAsubopt, and warnings/errors issued by RNAlib
Add various new commandline options to manipulate sequence/alignment IDs in RNAfold, RNAcofold and RNAalifold
Version 2.2.8 (Release date: 2016-08-01)
Fix bad memory access in RNAalifold
Fix regression in RNAalifold to restore covariance contribution ratio determination for circular RNA alignments
Changed output of RNAsubopt in energy-band enumeration mode to print MFE and energy range in kcal/mol instead of 10cal/mol
Include latest Kinfold sources that make use of v3.0 API, therefore speeding up runtime substantially
Re-activate warnings in RNAeval when non-canonical base pairs are encountered
Fix syntactic incompatibilities that potentially prevented compilation with compilers other than gcc
dd function to compare nucleotides encoded in IUPAC format
Fix regression in energy evaluation for circular RNA sequences
Fix regression in suboptimal structure enumeration for circular RNAs
Allow for P i-j k-l commands in constraint definition files
Make free energy evaluation functions polymorphic
Add free energy evaluation functions that allow for specifying verbosity level
Secure functions in alphabet.c against NULL pointer arguments
Fix incompatibility with swig >= 3.0.9
Fix memory leak in swig-generated scripting language interface(s) for user-provided target language soft-constraint callbacks
Expose additional functions to swig-generated scripting language interface(s)
Build Python3 interface by default
Start of more comprehensive scripting language interface documentation
Fix linking of python2/python3 interfaces when libpython is in non-standard directory
Restructured viennarna.spec for RPM based distributions
Several syntactic changes in the implementation to minimize compiler warnings
Fix –with-/–without- and –enable-/–disable- configure script behavior
Version 2.2.7 (Release date: 2016-06-30)
Fix partition function scaling for long sequences in RNAfold, RNAalifold, and RNAup
Fix backtracking issue in RNAcofold when –noLP option is activated
Fix hard constraints issue for circular RNAs in generating suboptimal structures
Rebuild reference manual only when actually required
Version 2.2.6 (Release date: 2016-06-19)
Plugged memory leak in RNAcofold
Fixed partition function rescaling bug in RNAup
Fixed bug in RNALfold with window sizes larger than sequence length
Re-added SCI parameter for RNAalifold
Fixed backtracking issue for large G-quadruplexes in RNAalifold
Fixed missing FASTA id in RNAeval output
Added option to RNAalifold that allows to specify prefix for output files
Several fixes and additional functions/methods in scripting language interface(s)
Added version information for scripting language interface(s)
Some changes to allow for compilation with newer compilers, such as gcc 6.1
Version 2.2.5 (Release date: 2016-04-09)
Fixed regression in RNAcofold that prohibited output of concentration computations
Fixed behavior of RNAfold and RNAcofold when hard constraints create empty solution set (programs now abort with error message)
Added optional Python 3 interface
Added RNA::Params Perl 5 sub-package
Update RNA::Design Perl 5 sub-package
Simplified usage of v3.0 API with default options
Wrap more functions of v3.0 API in SWIG generated scripting language interfaces
Plugged some memory leaks in SWIG generated scripting language interfaces
Changed parameters of recursion status callback in vrna_fold_compound_t
Enable definition and binding of callback functions from within SWIG target language
Added optional subpackage Kinwalker
Added several configure options to ease building and packaging under MacOS X
Added new utility script RNAdesign.pl
Version 2.2.4 (Release date: 2016-02-19)
Fixed bug in RNAsubopt that occasionally produced cofolded structures twice
Removed debugging output in preparations of consensus structure prediction datastructures
Version 2.2.3 (Release date: 2016-02-13)
Added postscipt annotations for found ligand motifs in RNAfold
Added more documentation for the constraints features in RNAfold and RNAalifold
Restore backward compatibility of get_alipf_arrays()
Version 2.2.2 (Release date: 2016-02-08)
Fix regression bug that occasionally prevented backtracking with RNAcofold –noLP
Version 2.2.1 (Release date: 2016-02-06)
Fix regression bug that made RNAcofold -a unusable
Fix regression bug that prohibited RNAfold to compute the MEA structure when G-Quadruplex support was switched on
Fix bug in Kinfold to enable loading energy parameters from file
Fix potential use of uninitialized value in RNApdist
Add manpage for ct2db
Fix MEA computation when G-Quadruplex support is activated
Allow for vendor installation of the perl interface using INSTALLDIRS=vendor at configure time
Install architecture dependent and independent files of the perl and python interface to their correct file system locations
Version 2.2.0 (Release date: 2016-01-25)
RNAforester is now of version 2.0
New program RNApvmin to compute pseudo-energy pertubation vector that minimizes discrepancy between observed and predicted pairing probabilities
SHAPE reactivity support for RNAfold, RNAsubopt, and RNAalifold
Ligand binding to hairpin- and interior-loop motif support in RNAfold
New commandline option to limit maximum base pair span for RNAfold, RNAsubopt, RNAcofold, and RNAalifold
Bugfix in RNAheat to remove numerical instabilities
Bugfix in RNAplex to allow for computation of interactions without length limitation
Bugfix in RNAplot for simple layouts and hairpins of size 0
(generic) hard- and soft-constraints for MFE, partition function, base pair probabilities, stochastic backtracking, and suboptimal secondary structures of single sequences, sequence alignments, and sequence dimers
libsvm version as required for z-scoring in RNALfold is now 3.20
Stochastic backtracking for single sequences is faster due to usage of Boustrophedon scheme
First polymorphic functions vrna_mfe(), vrna_pf(), and vrna_pbacktrack().
The FLT_OR_DBL macro is now a typedef
New functions to convert between different secondary structure representations, such as helix lists, and RNAshapes abstractions
First object-oriented interface for new API functions in the scripting language interfaces
new ViennaRNA-perl submodule that augments the Perl interface to RNAlib
Ligand binding to hairpin- and interior-loop motif support in C-library and scripting language interfaces.
Libraries are generated using libtool
Linking of libraries and executables defaults to use Link Time Optimization (LTO)
Large changes in directory structure of the source code files
Version 2.1.x
Version 2.1.9
Fixed integer underflow bug in RNALfold
Added Sequence Conservation index (SCI) option to RNAalifold
Fixed bug in energy evaluation of dangling ends / terminal mismatches of exterior loops and multibranch loops
Fixed bug in alifold partition function for circular RNAs
Fixed bug in alifold that scrambled backtracing with activated G-Quadruplex support
Fixed bug in alifold backtracking for larger G-Quadruplexes
Version 2.1.8
Repaired incorporation of RNAinverse user provided alphabet
Fix missing FASTA ID in RNAeval output
prevent race condition in parallel calls of Lfold()
Fixed memory bug in Lfold() that occured using long sequences and activated G-Quad support
Added latest version of switch.pl
Version 2.1.7
Fixed bug in RNALfold -z
Python and Perl interface are compiling again under MacOSX
Fixed handling of C arrays in Python interface
Added latest version of switch.pl
Make relplot.pl work with RNAcofold output
Version 2.1.6
New commandline switches allow for elimination of non-canonical base pairs from constraint structures in RNAfold, RNAalifold and RNAsubopt
updated moveset functions
final fix for discrepancy of tri-loop evaluation between partition function and mfe
pkg-config file now includes the OpenMP linker flag if necessary
New program ct2db allows for conversion of .ct files into dot-bracket notation (incl. pseudo-knot removal)
Version 2.1.5
Fix for discrepancy between special hairpin loop evaluation in partition functions and MFE
Version 2.1.4
Fix of G-quadruplex support in subopt()
Fix for discrepancy between special hairpin loop evaluation in partition functions and MFE
Version 2.1.3
RNAfold: Bugfix for ignoring user specified energy parameter files
RNAcofold: Bugfix for crashing upon constrained folding without specifying a constraint structure
RNAsubopt: Added G-quadruplex support
RNAalifold: Added parameter option to specify base pair probability threshold in dotplot
Fix of several G-quadruplex related bugs
Added G-quadruplex support in subopt()
Version 2.1.2
RNAfold: Bugfix for randomly missing probabilities in dot-plot during batch job execution
RNAeval: Bugfix for misinterpreted G-quadruplex containing sequences where the quadruplex starts at nucleotide 1
RNAsubopt: Slight changes to the output of stochastic backtracking and zuker subopt
Fix of some memory leaks
Bugfixes in zukersubopt(), assign_plist_from_pr()
New threadsafe variants of putoutpU_prob*() for LPfold()
Provision of python2 interface support.
Version 2.1.1
Bugfix to restore backward compatibility with ViennaRNA Package 1.8.x API (this bug also affected proper usage of the the perl interface)
Version 2.1.0
G-Quadruplex support in RNAfold, RNAcofold, RNALfold, RNAalifold, RNAeval and RNAplot
LPfold got a new option to output its computations in split-mode
several G-Quadruplex related functions were introduced with this release
several functions for moves in an RNA landscape were introduced
new function in alipfold.c now enables access to the partition function matrices of alipf_fold()
different numeric approach was implement for concentration dependend co-folding to avoid instabilities which occured under certain circumstances
Version 2.0.x
Version 2.0.7
Bugfix for RNAplfold where segfault happened upon usage of -O option
Corrected misbehavior of RNAeval and RNAplot in tty mode
Version 2.0.6
Bugfix for bad type casting with gcc under MacOSX (resulted in accidental “sequence too long” errors)
Bugfix for disappearing tri-/hexaloop contributions when read in from certain parameter files
Bugfix for RNALfold that segfaulted on short strange sequences like AT+ repeats
Change of RNA2Dfold output format for stochastic backtracking
Version 2.0.5
Restored z-score computation capabilities in RNALfold
Version 2.0.4
Bugfix for RNAcofold partition function
Perl wrapper compatibility to changed RNAlib has been restored
Backward compatibility for partition function calls has been restored
Version 2.0.3
Bugfix for RNAalifold partition function and base pair probabilities in v2.0.3b
Added Boltzmann factor scaling in RNAsubopt, RNAalifold, RNAplfold and RNAcofold
Bugfix for alipfold() in v2.0.3b
Restored threadsafety of folding matrix access in LPfold.c, alipfold.c, part_func.c, part_func_co.c and part_func_up.c
Added several new functions regarding threadsafe function calls in terms of concurrently changing the model details
Added pkg-config file in the distribution to allow easy checks for certain RNAlib2 versions, compiler flags and linker flags.
Version 2.0.2
added support for Boltzmann factor scaling in RNAfold
fixed fastaheader to filename bug
plugged some memory leaks
Version 2.0.1
First official release of version 2.0
included latest bugfixes
History
2011-03-10 Ronny Lorenz mailto:ronny@tbi.univie.ac.at
new naming scheme for all shipped energy parameter files
fixed bugs that appear while compiling with gcc under MacOS X
fixed bug in RNAup –interaction-first where the longer of the first two sequences was taken as target
added full FASTA input support to RNAfold, RNAcofold, RNAheat, RNAplfold RNALfoldz, RNAsubopt and RNALfold
2010-11-24 Ronny Lorenz mailto:ronny@tbi.univie.ac.at
first full pre-release of version 2.0
2009-11-03 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Fix memory corruption in PS_color_aln()
2009-09-09 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Fix bug in RNAplfold when -u and -L parameters are equal
Fix double call to free_arrays() in RNAfold.c
Improve drawing of cofolded structures
2009-05-14 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Fix occasional segfault in RNAalifold’s print_aliout()
2009-02-24 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Add -MEA options to RNAfold and RNAalifold
change energy_of_alistruct to return float not void
2009-02-24 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
RNAfold will draw structures unless -noPS is used (no more “structure too long” messages)
Restore the “alifold.out” output from RNAalifold -p
RNAalifold -circ did not work due to wrong return type
Accessibility calculation with RNAplfold would give wrong results for u<=30
2008-12-03 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Add zuker style suboptimals to RNAsubopt (-z)
get_line() should be much faster when reading huge sequences (e.g. whole chromosomes for RNALfold)
2008-08-12 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Add Ribosum matrices for covariance scoring in RNAalifold
2008-06-27 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Change RNAalifold to used berni’s new energy evaluation w/o gaps
Add stochastic backtracking in RNAalifold
2008-07-04 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
modify output of RNAup (again). Program reading RNAup output will have to updated!
2008-07-02 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
RNAplfold now computes accessibilities for all regions up to a max length simultaneously. Slightly slower when only 1 value is needed, but much faster if all of them are wanted. This entails a new output format. Programs reading accessibility output from RNAplfold need to be updated!
2008-03-31 Stephan Bernhart mailto:berni@tbi.univie.ac.at
add cofolding to RNAsubopt
2008-01-08 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
ensure circfold works even for open chain
2007-12-13 Ulli Mueckstein mailto:ulli@tbi.univie.ac.at
upate RNAup related files RNAup can now include the intramolecular structure of both molecules and handles constraints.
2007-12-05 Ronny Lorenz mailto:ronny@tbi.univie.ac.at
add circfold variants in part_func.c alipfold.c subopt.c
2007-09-19 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
compute the controid structure of the ensemble in RNAfold -p
fix a missing factor 2 in mean_bp_dist(). CAUTION ensemble diversities returned by RNAfold -p are now twice as large as in earlier versions.
2007-09-04 Ivo Hofacker mailto:ivo@blini.tbi.univie.ac.at
fix a bug in Lfold() where base number n-max-4 would never pair
2007-08-26 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add RNAaliduplex the alignment version of RNAduplex
introduce a minimal distance between hits produced by duplex_subopt()
2007-07-03 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add a loop_energy() function to compute energy of a single loop
2007-06-23 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add aliLfold() and RNALalifold, alignment variant of Lfold()
2007-04-30 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add RNAup to distribution
2007-04-15 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
fix segfault in colorps output (thanks to Andres Varon)
2007-03-03 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
avoid unnormalized doubles in scale[], big speedup for pf_fold() on very long sequences
2007-02-03 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
RNAalifold can now produce colored structure plots and alignment plots
2007-02-01 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Fix segfault in RNAplfold because of missing prototype
2006-12-01 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
RNAduplex would segfault when no structure base pairs are possible
2006-08-22 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add computation stacking probabilities using RNAfold -p2
add -noPS option for NRAfold to supress drawing structures
2006-08-09 Stephan Bernhart mailto:berni@tbi.univie.ac.at
RNAplfold can now compute probabilites of unpaired regions (scanning version of RNAup)
2006-06-14 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
compile library with -fpic (if available) for use as shared library in the Perl module.
fix another bug when calling Lfold() repeatedly
fix switch cmdline parsing in RNAalifold (-mis implied -4)
fix bug in cofold() with dangles=0
2006-05-08 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
fix segfault in Lfold() when calling repeatedly
fix structure parsing in RNAstruct.c (thanks to Michael Pheasant for reporting both bugs)
add duplexfold() and alifold() to Perl module
distinguish window size and max pair span in LPfold
2006-04-05 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
fix performance bug in co_pf_fold()
use relative error for termination of Newton iteration
2006-03-02 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add circular folding in alifold()
2006-01-18 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
cleanup berni partition cofold code, including several bug fixes
2006-01-16 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
update RNAplfold to working version
add PS_dot_plot_turn() in PS_dot.c
2005-11-07 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add new utilities colorna and coloraln
2005-10-11 Christoph Flamm mailto:xtof@tbi.univie.ac.at
adapt PS_rna_plot() for drawing co-folded structures
2005-07-24 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
fix a few memory problems in structure comparison routines
2005-04-30 Ivo Hofacker mailto:ivo@blini.tbi.univie.ac.at
add folding of circular RNAs
2005-03-11 Ivo Hofacker mailto:ivo@blini.tbi.univie.ac.at
add -mis option to RNAalifold to give “most informative sequence” as consensus
2005-02-10 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
move alifold() into the library
2004-12-22 Stephan Bernhart mailto:berni@tbi.univie.ac.at
add partition function version of RNAcofold
2004-12-23 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add RNApaln for fast structural alignments (RNApdist improvement)
2004-08-12 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
fix constrained folding in stochastic backtracking
2004-07-21 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add RNAduplex, to compute hybrid structures without intra-molecular pairs
2004-02-09 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
fix bug in fold that caused segfaults when using Intel compiler
add computation of ensemble diversity to RNAfold
2003-09-10 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add annotation options to RNAplot
2003-08-04 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
stochastic backtracking finally works. Try e.g. RNAsubopt -p 10
2003-07-18 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add relplot.pl and rotate_ss.pl utilities for reliability annotation and rotation of rna structure plots
2003-01-29 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add RNALfold program to compute locally optimal structures with maximum pair span.
add RNAcofold for computing hybrid structure
2002-11-07 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
change Make_bp_profile() and profile_edit_distance() to use simple (float *) arrays; makes Perl access much easier. RNApdist -B now works again
2002-10-28 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Improved Perl module with pod documentation; allow to write things like (\(structure, \)energy) = RNA::fold($seq); Compatibility warning: the ptrvalue() and related functions are gone, see the pod documentation for alternatives.
2002-10-29 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
added svg structure plots in PS_dot.c and RNAplot
2002-08-15 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
Improve reading of clustal files (alifold)
add a sample alifold.cgi script
2001-09-18 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
moved suboptimal folding into the library, thus it’s now accessible from the Perl module
2001-08-31 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
added co-folding support in energy_of_struct(), and thus RNAeval
2001-04-30 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
switch from handcrafted makefiles to automake and autoconf
2001-04-05 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
added PS_rna_plot_a to produce structure plots with annotation
2001-03-03 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add alifold; predict consensus structures from alignment
2000-09-28 Ivo Hofacker mailto:ivo@tbi.univie.ac.at
add -d3 option to RNAfold for co-axial stacking