Skip to content

Releases: jjmccollum/teiphy

Fixed ancestral sequence logging in BEAST XML output

12 Mar 02:47
584c446
Compare
Choose a tag to compare

Starting from this release, teiphy now correctly uses AncestralSequenceLogger elements (from the BEAST_CLASSIC package) instead of AncestralStateLogger elements (from the BEASTLabs package) in BEAST XML outputs.

Support for works with known origin dates

08 Mar 04:49
Compare
Choose a tag to compare

Previously, works with known dates of origin (specified as a date element with a when attribute) generated BEAST XML outputs with unnecessary prior distributions on the origin of the birth-death-skyline model. This release fixes the handling of such cases.

New options and better support for tabular outputs

23 Dec 02:52
a977b25
Compare
Choose a tag to compare

In this release, teiphy's options for tabular outputs (in CSV, TSV, and Excel format) have been expanded and better organized. The type of tabular output desired can now be specified on the command line with the --table flag. Valid options are matrix (the default option, with rows for variant readings, columns for witnesses, and frequency values in cells), distance (a pairwise distance/dissimilarity matrix with rows and columns for witnesses and counts or proportions of disagreements at extant variation units in cells), nexus (with rows for witnesses, columns for variation units, and reading IDs in cells), and long (a series of rows with witness, variation unit ID, reading index, and reading text entries). Notably, --table long replaces the old --long-table command-line flag. A fix has been added to ensure that Unicode CSV and TSV files are loaded correctly in Excel. Finally, teiphy will now create directories in the output filepath if they do not already exist.

Minor improvements to BEAST and STEMMA outputs

12 Sep 06:50
Compare
Choose a tag to compare

In this release, STEMMA outputs generated by teiphy are written with the corresponding chron file specified with a relative rather than absolute path for better portability, and BEAST 2.7 XML outputs now initialize transcriptional rate parameters with bounds between 0.0 and Infinity and gamma distribution priors. Rates that are not fixed in the TEI XML file will be assigned random values (according to a gamma distribution) in the BEAST 2.7 XML output to avoid singular matrix errors in BEAST's initial computation of site/variation unit likelihoods. A --seed command-line parameter has been added to teiphy to make these assignments replicable.

BEAST 2.7 XML Output and Support for Bayesian Models

28 Apr 01:39
8c71a39
Compare
Choose a tag to compare

With this release, teiphy can now convert TEI XML collation files to BEAST 2.7 XML input files directly. The conversion process for this format can accommodate judgments of intrinsic probabilities (odds ratios describing how much more likely one variant reading is than another to be authorial, which correspond to root frequencies in BEAST) and transcriptional change classes (describing one or more potential causes for specific transitions between readings, which correspond to rate parameters that can be fixed or estimated in substitution models).

In addition, teiphy now includes tree priors and clock models (with multiple options for clock models on the command-line interface) in BEAST 2.7 XML and MrBayes NEXUS outputs. For BEAST, a birth-death skyline prior is used, which can incorporate a date range for the start of the manuscript tradition if one is specified, and strict, uncorrelated relaxed, and local relaxed clock models are supported.

Options for Constant Sites

10 Jan 07:57
Compare
Choose a tag to compare

With this release, teiphy now includes constant sites (i.e., variation units with only one substantive reading, after readings of trivial types have been merged with their parent readings) by default for all output formats (except STEMMA), and constant sites can be excluded from these outputs with the --drop-constant option. (But note that if you are using the output with likelihood-based phylogenetic software, you will probably want to use an ascertainment bias correction setting!)

Witness List Parsing

09 Jan 21:26
Compare
Choose a tag to compare

Added code to check for a listWit element containing an explicit list of witnesses (and throw an exception if none is found), as well as code to print out warnings for all base sigla that occur in the collation, but not in the listWit.

Publication release

19 Dec 00:27
Compare
Choose a tag to compare

This release incorporates the changes recommended in the JOSS reviewers' generous feedback. These changes include the following features:

  • support for date calibration blocks based on witness date ranges
  • support for PHYLIP and FASTA outputs (for software such as RAxML)
  • StatesFormat=StatesPresent is now the default setting for NEXUS output; if StatesFormat=Frequency is desired, the --frequency command-line option can be used to specify this.
  • support for "long table" formatting for tabular output (NumPy, Pandas DataFrame, CSV, TSV, Excel)

This release is also the first release to be tracked by Zenodo.

JOSS paper submission release

22 Sep 12:11
Compare
Choose a tag to compare

The version of teiphy as submitted to the Journal of Open Source Software. Changes since the initial release include support for origDate elements containing chronological data under witness elements (current only used for conversion to STEMMA format); the addition of a to_distance_matrix method that returns a NumPy matrix of distances between witnesses; system tests to ensure that outputs for IQTREE, MrBayes, and STEMMA are validated by their respective programs; and further revisions to the paper and documentation.