Project History#
cogent3
is a descendant of PyCogent. While there is much in common with PyCogent, the amount of change has been substantial, motivating the new name [*].
Given this history, we are grateful to the multitude of individuals who have made contributions over the years. These individuals are explicitly acknowledged in all the files they contributed to and were co-authors on the original PyEvolve [1] and PyCogent [2] publications.
Compared to PyCogent version 1.9, there have been massive changes. These include:
integration of many of the new developments on algorithms and modelling published by the Huttley lab over the last decade
an experimental
cogent3.app
module that presents a functional programming style interface tocogent3
modernised our dependencies including using
plotly
for visualisation,tqdm
for progress bar display,loky
,concurrent.futures
andmpi4py.futures
for parallel process execution,nox
andpytest
for unit testingswitched to calendar based versioning
The rewrite has been a massive amount of work and unfortunately the changes to the API are only indirectly documented by virtue of having the documentation match the library state. Thus, the best way to get older PyCogent scripts working is to check the Library documentation related to your code. More explicitly, you can also search in the repository history.
cogent3
no longer includes module x
, what do I do?#
cogent.app
#The
PyCogent
module was concerned with wrapping external applications. There are multple 3rd party alternatives to this, for exampleclick
,burrito
, etc.. Thecogent3.app
module is very different being focussed on providing a functional style interface tocogent3
capabilities.cogent.db.ensembl
#This has been turned into a standalone project, EnsemblDb3.
cogent.db.eutils
#For querying NCBI via their EUtils interface. A replacement is biocommons/eutils.
cogent.struct
#For manipulating 3D structures. We know of no replacements.
cogent.motif
#A subset of k-mer analyses. No direct replacements.
cogent.seqsim
#See the sequence simulation capabilities in
cogent3.evolve
andcogent3.app.evo
.cogent.maths.unifrac
#The microbiome related functions are now in scikit-bio.
References
A Butterfield, V Vedagiri, E Lang, C Lawrence, M J Wakefield, A Isaev, and G A Huttley. PyEvolve: a toolkit for statistical modelling of molecular evolution. BMC Bioinformatics, 5:1, 2004. URL: https://www.ncbi.nlm.nih.gov/pubmed/14706121.
R Knight, P Maxwell, A Birmingham, J Carnes, J G Caporaso, B C Easton, M Eaton, M Hamady, H Lindsay, Z Liu, C Lozupone, D McDonald, M Robeson, R Sammut, S Smit, M J Wakefield, J Widmann, S Wikman, S Wilson, H Ying, and G A Huttley. PyCogent: a toolkit for making sense from sequence. Genome Biol, 8:R171, 2007. URL: https://www.ncbi.nlm.nih.gov/pubmed/17708774.