Releases: bredelings/BAli-Phy
Releases · bredelings/BAli-Phy
Release 4.0-beta16
- Speed: further speed up tree operations.
- Output: simplify results from ancestral sequence reconstruction.
- Input: allow defining models using multiple lines in control files.
- Models:
- Speed up and improve RNA editing model.
- Allow '--tree=~uniform_tree(taxa,gamma(0.5,2/length(taxa)))'
- Allow Yule, coalescent, and uniform_rooted tree distributions.
- MCMC:
- preliminary inference of rooted trees with alignments (NNI only, no SPR)
- Use multiple transition kernels for uniform_int distribution.
- Allow hand-written Metropolis-Hastings proposals for numbers/atomic objects.
- Bug fixes:
- Fix crashes crashes on startup (in module writing/reading).
- Tests:
- Refactor tests so that
ninja test
runs each testsuite test separately. - Add CI for
ninja test
.
- Refactor tests so that
- Haskell:
- Fix
[1.5 .. ]
and['a' ..]
work for floating point.
- Fix
Release 4.0-beta15
- Speed: reduce overhead in tree operations.
- Models: add relaxed-rs07 that allows rate to vary on different branches.
- Non-equilibrium models now work with variable alignments.
- Syntax: cmd-line functions now look like
|w: gy94(omega=w)|
- Syntax: cmd-line functions can now take two arguments like
|x y: x + y|
. - Bug fixes:
- Fix inferring the alignment on a fixed topology (rooted or unrooted).
- Invalidate compiled modules if the executable changes.
- Fix consensus-tree and branch lengths ignoring burnin when not specified as percent.
- Fix (unused) code that integrates out alignments when SPR-attaching on every branch.
Release 4.0-beta14
- Features
- Allow inferring the number of bins under the Rates.free and M3 models.
- Make startup faster by saving compiled modules.
- Attempt to codesign executables on Mac.
- Sort rates under Rates.free to make them identifiable.
- Sort omegas under M3 to make them identifiable.
- Allow specifying a discrete distribution on the command line like
{value: prob, value: prob, etc.}
- New distribution
dirichlet_mixture
to make variable-dimension mixtures easier.
- Bug fixes:
- Infer the character state for N in leaf sequences with a fixed alignment.
- bp-analyze should not fail when variables have random dimension.
Release 4.0-beta13
This release fixes a number of small bugs:
- Fix typo in bp-analyze script
- Fix crash in statreport
- Fix crash in draw-tree
- Fix crash in trees-bootstrap
- Add continuous-integration tests for post-processing.
Release 4.0-beta11
-
Features
- Improve alignment-thin --remove-gappy
-
Bug fixes:
- Fix warning in bp-analyze.
- Only write warning in Rates.gamma at -V2 or higher.
- Correctly compile with libfmt v10.
- Complain instead of crashing when we use an imodel with --fix=alignment.
-
Misc
- JSON: read/write {Infinity, NaN} instead of {1e99999, null}
- Make +> work like the R pipe operator.
Release 4.0-beta10
New features:
- Codon models can now use all known genetic codes (https://www.ncbi.nlm.nih.gov/Taxonomy/Utils/wprintgc.cgi)
- Equilibrium non-reversible models now work with variable-alignment analyses.
- Improve help: colorized, improved signatures, more readable types.
- Add commands
bali-phy print <expression>
,bali-phy run <Prog> <arg1> <arg2>
,bali-phy model <Model> <arg1> <arg2>
.
Bug fixes:
- Fix non-standard genetic codes.
- Fix specifying
Codons(DNA)
andCodons(DNA, <code> )
- Fix density for Exp-transformed distributions like log-normal.
Misc:
- Refactor Numeric classes
Log Double
andProb
- Allow testing
isInfinite x
andisNan x
in Haskell.
Release 4.0-beta9
New features:
- allow "var1 ~ dist1; var2 ~ dist2; model(var1, var2)" in the command-line language
- non-reversible substitution models for fixed alignments (and for variable-alignments in the next pre-release)
- add Mac/ARM builds.
Fixes:
- fix quotes and _ in Nexus names
- fix numeric alphabets (e.g 0/1 characters)
- fix crash with long sequences
- fix crash in meson test
Release 4.0-beta8
This release has a number of changes under the hood, but not very many user-visible changes.
- Changes:
- Write out tree with branch-lengths scaled according to weighted average of partition scales.
- Print the alignment length including fixed-alignment partitions.
- Phylogenetics
- Update likelihoods and other infrastructure to handle multifurcating trees and data on internal nodes.
- Tools
- Add benchmarking script benchmark.py
Release 4.0-beta7
This release has a number of changes under the hood and a few visible changes to fix bugs:
- Allow estimating the alignment and branch lengths on a fixed topology:
--tree=file.tre --fix topology
- Fix TSV logging when running generic models:
-l tsv -m Model.hs
Release 4.0-beta6
This release decreases memory usage. It also moves MCMC and logging commands into the model script.
- Changes:
- MAP alignment is no longer printed.
- the MPD alignment is now shorter and more condensed (it uses the "multiply" criterion).
- the initial alignment has all sequences left-aligned when estimated (for now).
-m Model.hs
now looks for a Model.main function that returns IO (Random [(Key,JSON)]).- stdout / stderr now go to the screen instead of being redirected to a file.
- Features:
- Tree-alignment models can be hand-written -- no magic return type.
- Initial implemention of sequence simulation.
- new executable mcon-tool can convert JSON logs to TSV.
- Model language:
- Allow reading / writing trees and alignment from the model script.
- Run loggers and transition kernels from the model script.
- Refactor Tree object to allow adding and removing nodes.
- Bug fixes:
- Memory: reclaim memory from running loggers + transition kernels.
- Memory: clear tokens immediately - don't wait for garbage collection.
- Memory: don't retain calculations for branches that might not exist.
- Alignment: fix alignment with likelihood rescaling.
- Likelihood: fix SEV likelihood on 2-taxon trees.
- Typechecking: don't allow e.g
(x,y) <- return (x,y,z)
- Typechecking: handle exporting types without their constructors.
- machine: don't re-execute side-effects in incremental_evaluate1( ).