Skip to content
Commits on Source (14)
......@@ -24,6 +24,7 @@ pip-log.txt
# Unit test / coverage reports
.coverage
.tox
coverage.xml
nosetests.xml
tests/draw_results
......@@ -34,6 +35,8 @@ tests/draw_results
.mr.developer.cfg
.project
.pydevproject
.idea/*
.DS_Store
# vi
.*.swp
repo: 9abeda989914318a9bdd9de1f76edb42c4b84a8b
node: 2b20f3dbd996d3db969b64b744e0f0107f33876c
branch: default
tag: 2019.9.13a
......@@ -27,3 +27,4 @@ draw_results
*.tox
*.vscode
*.code-workspace
coverage.xml
4ee8471d007032a28f2d75edf63504fcdafb5eaa 3.0a1
72e162442356b3090e0e884d0461c1ddb16f6c5c remove
4ee8471d007032a28f2d75edf63504fcdafb5eaa 3.0a1
72e162442356b3090e0e884d0461c1ddb16f6c5c 3.0a1
72e162442356b3090e0e884d0461c1ddb16f6c5c 3.0a1
d8e9473a0b248c3a0875fd71053114412ab290ed 3.0a1
e2e8731e8ea3dd6b483f1d9b60268cd7762a7e48 3.0a2
e2e8731e8ea3dd6b483f1d9b60268cd7762a7e48 3.0a2
01be08e75ae196debb552110547315f751d2bd64 3.0a2
36da26dc56e4f400ac62c43bed0813af9d08e204 2019.08.06a
36da26dc56e4f400ac62c43bed0813af9d08e204 2019.08.06a
91686dc745555aa467b93d3f95e2a313e9d6e69c 2019.08.06a
91686dc745555aa467b93d3f95e2a313e9d6e69c 2019.08.06a
833f75a211c160c76267a98d094e32b571b284ec 2019.08.06a
833f75a211c160c76267a98d094e32b571b284ec 2019.08.06a
aa0e8057ad0f0a225eaf715773053481eb7f7184 2019.08.06a
aa0e8057ad0f0a225eaf715773053481eb7f7184 2019.08.06a
a79911d979e8e52b74e84922171305e1686a28f5 2019.08.06a
a79911d979e8e52b74e84922171305e1686a28f5 2019.08.06a
7828e9e27b0b79473eb34c821d68590ca2d909d6 2019.08.06a
7828e9e27b0b79473eb34c821d68590ca2d909d6 2019.08.06a
d24d24a416d58e406722903179c5788b8dfc5fbb 2019.08.06a
d24d24a416d58e406722903179c5788b8dfc5fbb 2019.08.06a
124948744635e6612d35d369cbff385a6e859781 2019.08.06a
124948744635e6612d35d369cbff385a6e859781 2019.08.06a
ddff5cd51d0b0e91dddc99cf38be5c5a5e580cca 2019.08.06a
39a382d7836bda436d9970e54b84242dca88f7a2 2019.8.20a
27890ba31bb55df37a4176dbd5fdbacbec4774cc 2019.8.23a
e24728110ae2894b52bd7f6f2b8ec02411deb0ae 2019.8.28a
e24728110ae2894b52bd7f6f2b8ec02411deb0ae 2019.8.28a
5ee7ba84b3a2c606b800313a99b5bf602679ce84 2019.8.28a
5b08dd8d5184773611bf265a13d20f427335a9ee 2019.8.30a
b36612371ebde87bff3fda1b009cba9be83dd3f8 2019.10.17a
b36612371ebde87bff3fda1b009cba9be83dd3f8 2019.10.17a
54063b67b88cdf9ab826be6340878d127ac7b7ef 2019.10.17a
54063b67b88cdf9ab826be6340878d127ac7b7ef 2019.10.17a
0000000000000000000000000000000000000000 2019.10.17a
0000000000000000000000000000000000000000 2019.10.17a
beaba5e226bc1f3a9673caf1a1ce6c8dd19c0434 2019.10.17a
05ee3a37188ca51a57cf0a8d4de68fa15162804a 2019.10.24a
aa75049787af4c6bcdf1c9d2c322e179031a27e9 2019.11.15a
aa75049787af4c6bcdf1c9d2c322e179031a27e9 2019.11.15a
7a82cae4574720a68aa05fe14fff8bc409d41612 2019.11.15a
be3ef6a5a2538ab5cc50d8bb26d25c22babe47e7 2019.12.6a
be3ef6a5a2538ab5cc50d8bb26d25c22babe47e7 2019.12.6a
5f4050c10998f6aabc2ff7febd69e8cf495ecbb2 2019.12.6a
version: 2
conda:
environment: doc/rtd-environment.yml
......@@ -3,6 +3,6 @@ Change log
The porting from PyCogent 1.9 to 3.0 has involved a massive number of changes!
Please see the `wiki pages <https://bitbucket.org/pycogent3/cogent3/wiki/Home>`_ for a summary of the API changes.
Please see the `wiki pages <https://github.com/cogent3/cogent3/wiki>`_ for a summary of the API changes.
But the best way to see them is all to use mercurial.
\ No newline at end of file
# NOTICE
[![Build Status](https://dev.azure.com/GavinHuttley/cogent3/_apis/build/status/cogent3.cogent3?branchName=master)](https://dev.azure.com/GavinHuttley/cogent3/_build/latest?definitionId=1&branchName=master)
[![codecov](https://codecov.io/gh/cogent3/cogent3/branch/master/graph/badge.svg)](https://codecov.io/gh/cogent3/cogent3)
![Using Black Formatting](https://img.shields.io/badge/code%20style-black-000000.svg)
We will be departing Bitbucket for GitHub soon due to their recent decision to drop support for mercurial. Stay tuned for details.
## `cogent3`
## PyCogent3 →Cogent3
`cogent3` is a mature python library for analysis of genomic sequence data. We endeavour to provide a first-class experience within Jupyter notebooks, but the algorithms also support parallel execution on compute systems with 1000's of processors.
This is the port of PyCogent to Python 3, it's being renamed to Cogent3 as it has been rewritten extensively and `cogent` was always been the import name (dating back to 2004!).
## Who is it for?
## What's New?
### Anyone who wants to analyse sequence divergence using robust statistical models
A massive amount!
`cogent3` is unique in providing numerous [non-stationary Markov models](http://www.ncbi.nlm.nih.gov/pubmed/25503772) for modelling sequence evolution, [including codon models](https://www.ncbi.nlm.nih.gov/pubmed/28175284). `cogent3` also includes an extensive collection of time-reversible models (again including [novel codon models](https://www.ncbi.nlm.nih.gov/pubmed/19815689)). We have done more than just invent these new methods, we have [established the most robust algorithms](https://www.ncbi.nlm.nih.gov/pubmed/19099591) for their implementation and their [suitability for real data](https://www.ncbi.nlm.nih.gov/pubmed/23935949). Additionally, there are novel signal processing methods focussed on statistical estimation of [integer period signals](https://www.ncbi.nlm.nih.gov/pubmed/21527008).
We integrated many of the new developments on modelling of non-stationary processes published by the Huttley lab over the last decade.
### Anyone who wants to undertake exploratory genomic data analysis
We have implemented a `cogent3.app` module which contains very different capabilities. Notably, a functional programming style interface for many capabilities to lower the effort for using cogent3's advanced capabilities. These are as yet documented.
Beyond our novel methods, `cogent3` provides an extensive suite of capabilities for manipulating and analysing sequence data. For instance, the ability to read standard biological data formats, manipulate sequences by their annotations, to perform multiple sequence alignment using any of our substitution models, phylogenetic reconstruction and tree manipulation, manipulation of tabular data, visualisation of phylogenies and much more.
Importantly, the app interface should be considered as alpha level code. Documentation for these new features will follow in the next few weeks.
### Anyone looking for a functional programming style approach to genomic data analysis
## What's Changed?
Our `cogent3.app` module provides a very different approach to using the library capabilities. Notably, a functional programming style interface lowers the barrier to entry for using `cogent3`'s advanced capabilities. It also supports building pipelines suitable for large-scale analysis. Individuals comfortable with R should find this interface pretty easy to use.
There are massive changes to the library since the PyCogent version 1.9 release (which is only compatible with python 2).
## Installation?
Please check the wiki for a list of the major API changes, but note that as of August 23, 2019 that Wiki is now very much out-of-date.
```bash
$ pip install cogent3
```
We will update as soon as possible.
### Installing the development version
## Documentation
```bash
$ pip install git+https://github.com/cogent3/cogent3.git@develop#egg=cogent3
```
PyCogent3 documentation is on [readthedocs](https://cogent3.readthedocs.io/en/latest/).
\ No newline at end of file
## Project Information
`cogent3` is released under the BSD-3 license, documentation for [`cogent3` is on readthedocs](https://cogent3.readthedocs.io/en/latest/), while [`cogent3` code is on GitHub](https://github.com/cogent3/cogent3). If you would like to contribute (and we hope you do!), we have created a companion [`c3dev` GitHub](https://github.com/cogent3/c3dev) repo which provides details on how to contribute and some useful tools for doing so.
## Project History
`cogent3` is a descendant of [PyCogent](https://github.com/pycogent/pycogent.github.com). While there is much in common with PyCogent, the amount of change has been substantial, motivating a new name `cogent3`. This name has been chosen because `cogent` was always the import name (dating back to [PyEvolve in 2004](https://www.ncbi.nlm.nih.gov/pubmed/14706121)) and it's Python 3 only.
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](https://www.ncbi.nlm.nih.gov/pubmed/14706121) and [PyCogent](https://www.ncbi.nlm.nih.gov/pubmed/17708774) publications.
Compared to PyCogent version 1.9, there has been a massive amount of changes. These include integration of many of the new developments on algorithms and modelling published by the [Huttley lab](https://biology.anu.edu.au/research/groups/huttley-group-bioinformatics-molecular-evolution-genomes) over the last decade. We have also modernised our dependencies. For example, we now use `plotly` for visualisation, `tqdm` for progress bar display, `concurrent.futures` and `mpi4py.futures` for parallel process execution, `tox` and `pytest` for unit testing.
trigger:
- master
variables:
CODECOV_TOKEN: 504b0637-b4c1-4991-bc79-7a29aee41b44
CIBW_BUILD: cp36-* cp37-* cp38-*
CIBW_BEFORE_BUILD: python -m pip install --upgrade pip
jobs:
- job: Linux_Test_py36
pool: {vmImage: 'ubuntu-latest'}
steps:
- task: UsePythonVersion@0
- bash: |
python -m pip install --upgrade pip
python -m pip install .[dev] codecov
- task: UsePythonVersion@0
inputs:
versionSpec: '3.6'
- bash: |
tox -e py36
codecov
- job: Linux_Test_py37
pool: {vmImage: 'ubuntu-latest'}
steps:
- task: UsePythonVersion@0
- bash: |
python -m pip install --upgrade pip
python -m pip install .[dev] codecov
- task: UsePythonVersion@0
inputs:
versionSpec: '3.7'
- bash: |
tox -e py37
codecov
- job: Linux_Test_py38
pool: {vmImage: 'ubuntu-latest'}
steps:
- task: UsePythonVersion@0
- bash: |
python -m pip install --upgrade pip
python -m pip install .[dev] codecov
- task: UsePythonVersion@0
inputs:
versionSpec: '3.8'
- bash: |
tox -e py38
codecov
- job: MacOS_Test_py36
pool: {vmImage: 'macos-latest'}
steps:
- task: UsePythonVersion@0
- bash: |
python -m pip install --upgrade pip
python -m pip install .[dev] codecov
- task: UsePythonVersion@0
inputs:
versionSpec: '3.6'
- bash: |
tox -e py36
codecov
- job: MacOS_Test_py37
pool: {vmImage: 'macos-latest'}
steps:
- task: UsePythonVersion@0
- bash: |
python -m pip install --upgrade pip
python -m pip install .[dev] codecov
- task: UsePythonVersion@0
inputs:
versionSpec: '3.7'
- bash: |
tox -e py37
codecov
- job: MacOS_Test_py38
pool: {vmImage: 'macos-latest'}
steps:
- task: UsePythonVersion@0
- bash: |
python -m pip install --upgrade pip
python -m pip install .[dev] codecov
- task: UsePythonVersion@0
inputs:
versionSpec: '3.8'
- bash: |
tox -e py38
codecov
- job: Windows_Test_py37
pool: {vmImage: 'windows-latest'}
steps:
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.7', architecture: x86}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.7', architecture: x64}}
- bash: |
python -m pip install --upgrade pip
python -m pip install .[dev] codecov
tox -e py37
codecov
- job: Linux_Build
pool: {vmImage: 'ubuntu-latest'}
steps:
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.6'}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.7'}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.8'}}
- bash: |
python -m pip install --upgrade pip
python -m pip install cibuildwheel numpy
cibuildwheel --output-dir wheelhouse .
python setup.py sdist
cp dist/*.gz wheelhouse/.
- task: PublishBuildArtifacts@1
inputs: {pathtoPublish: 'wheelhouse'}
- job: MacOS_Build
pool: {vmImage: 'macos-latest'}
steps:
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.6'}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.7'}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.8'}}
- bash: |
python -m pip install --upgrade pip
python -m pip install cibuildwheel numpy
cibuildwheel --output-dir wheelhouse .
- task: PublishBuildArtifacts@1
inputs: {pathtoPublish: 'wheelhouse'}
- job: Windows_Build
pool: {vmImage: 'windows-latest'}
steps:
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.6', architecture: x86}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.6', architecture: x64}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.7', architecture: x86}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.7', architecture: x64}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.8', architecture: x86}}
- {task: UsePythonVersion@0, inputs: {versionSpec: '3.8', architecture: x64}}
- bash: |
python -m pip install --upgrade pip
python -m pip install cibuildwheel numpy
cibuildwheel --output-dir wheelhouse .
- task: PublishBuildArtifacts@1
inputs: {pathtoPublish: 'wheelhouse'}
image: python:3.7.1
pipelines:
default:
- step:
caches:
- pip
script: # Modify the commands below to build your repository.
- pip install numpy
- pip install pandas
- pip install tqdm
- pip install plotly
- pip install scitrack
- pip install tinydb
- pip install pytest
- pip install tox
- tox -e py37
python-cogent (2019.9.13a-1) UNRELEASED; urgency=medium
python-cogent (2019.12.6a-1) UNRELEASED; urgency=medium
* New upstream version supporting Python3
Closes: #937654, #935298
* Point watch file to cogent3
* New upstream version
* debhelper-compat 12
* Standards-Version: 4.4.1
* (Build-)Depends: s/blast2/ncbi-blast+-legacy/
Closes: #948080
* Remove trailing whitespace in debian/changelog
* autopkgtest: s/ADTTMP/AUTOPKGTEST_TMP/g
* Trim trailing whitespace.
* Set upstream metadata fields: Bug-Database, Bug-Submit, Repository,
Repository-Browse.
* Fix day-of-week for changelog entry 1.5.3-1.
-- Andreas Tille <tille@debian.org> Tue, 07 Jan 2020 17:23:32 +0100
-- Andreas Tille <tille@debian.org> Tue, 07 Jan 2020 20:12:00 +0100
python-cogent (1.9-14) unstable; urgency=medium
......@@ -247,7 +254,7 @@ python-cogent (1.5.3-1) unstable; urgency=low
* Split out docs into separate package
* Added extra cleanup to dh_clean
-- Thorsten Alteholz <debian@alteholz.de> Sun, 16 May 2013 18:00:00 +0200
-- Thorsten Alteholz <debian@alteholz.de> Thu, 16 May 2013 18:00:00 +0200
python-cogent (1.5.1-3) UNRELEASED; urgency=low
......@@ -351,4 +358,3 @@ python-cogent (1.4.1-1) unstable; urgency=low
* Initial release (Closes: #587161)
-- Sri Girish Srinivasa Murthy <srigirish@evolbio.mpg.de> Sat, 24 Jul 2010 00:53:31 +0200
......@@ -12,7 +12,10 @@ Build-Depends: debhelper-compat (= 12),
python3-numpy,
python3-setuptools,
python3-sphinx,
cython,
python3-numpydoc,
python3-nbsphinx,
python3-sphinxcontrib.bibtex,
cython3,
ncbi-blast+-legacy,
bwa [any-amd64],
cd-hit,
......@@ -32,7 +35,7 @@ Build-Depends: debhelper-compat (= 12),
Standards-Version: 4.4.1
Vcs-Browser: https://salsa.debian.org/med-team/python-cogent
Vcs-Git: https://salsa.debian.org/med-team/python-cogent.git
Homepage: http://pycogent.org/
Homepage: https://github.com/cogent3/cogent3
Package: python3-cogent
Architecture: any
......
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: PyCogent
Source: https://github.com/pycogent/pycogent/releases
Source: https://github.com/cogent3/cogent3/releases
Files: *
Copyright: 2007-2012 The Cogent Project
......
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -16,6 +16,7 @@ extensions = [
"sphinx.ext.autodoc",
"sphinx.ext.autosummary",
"sphinxcontrib.bibtex",
+ "sphinx.ext.napoleon",
]
# todo_include_todos=True # to expose the TODOs, uncomment this line
......@@ -2,12 +2,12 @@
pkg=python-cogent
if [ "$ADTTMP" = "" ] ; then
ADTTMP=$(mktemp -d /tmp/${pkg}-test.XXXXXX)
trap "rm -rf $ADTTMP" 0 INT QUIT ABRT PIPE TERM
if [ "$AUTOPKGTEST_TMP" = "" ] ; then
AUTOPKGTEST_TMP=$(mktemp -d /tmp/${pkg}-test.XXXXXX)
trap "rm -rf $AUTOPKGTEST_TMP" 0 INT QUIT ABRT PIPE TERM
fi
cd $ADTTMP
cd $AUTOPKGTEST_TMP
BUILDARCH=$(dpkg-architecture -qDEB_BUILD_ARCH)
......
......@@ -6,7 +6,7 @@ Reference:
McDonald, Daniel and Robeson, Michael and Sammut, Raymond and Smit, Sandra
and Wakefield, Matthew J and Widmann, Jeremy and Wikman, Shandy and
Wilson, Stephanie and Ying, Hua and Huttley, Gavin A
Title: "PyCogent: a toolkit for making sense from sequence"
Title: 'PyCogent: a toolkit for making sense from sequence'
Journal: Genome Biology
Year: 2007
Volume: 8
......@@ -25,3 +25,7 @@ Registry:
Entry: NA
- Name: conda:bioconda
Entry: cogent
Bug-Database: https://github.com/cogent3/cogent3/issues
Bug-Submit: https://github.com/cogent3/cogent3/issues/new
Repository: https://github.com/cogent3/cogent3.git
Repository-Browse: https://github.com/cogent3/cogent3
version=4
https://bitbucket.org/pycogent3/cogent3/downloads/?tab=tags .*/cogent3/get/@ANY_VERSION@\.tar\.gz
https://github.com/cogent3/cogent3/releases .*/archive/@ANY_VERSION@@ARCHIVE_EXT@
# Project moved to Github
# https://bitbucket.org/pycogent3/cogent3/downloads/?tab=tags .*/cogent3/get/@ANY_VERSION@\.tar\.gz
# This is the old Python2 version
# https://github.com/pycogent/pycogent/releases .*/archive/(\d[\d.-]+)\.(?:tar(?:\.gz|\.bz2)?|tgz)
../ChangeLog
\ No newline at end of file
......@@ -13,6 +13,11 @@ ALLSPHINXOPTS = -d _build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
.PHONY: help clean html dirhtml pickle json htmlhelp qthelp latex changes linkcheck doctest
# define plotly rendern environment settings
html: export PLOTLY_RENDERER="notebook_connected+plotly_mimetype"
livehtml: export PLOTLY_RENDERER="notebook_connected+plotly_mimetype"
latex: export PLOTLY_RENDERER="pdf"
help:
@echo "Please use \`make <target>' where <target> is one of"
@echo " html to make standalone HTML files"
......@@ -87,6 +92,7 @@ doctest:
@echo "Testing of doctests in the sources finished, look at the " \
"results in _build/doctest/output.txt."
.PHONY: livehtml
livehtml:
sphinx-autobuild -p 5500 -b html $(ALLSPHINXOPTS) "$(SOURCEDIR)" $(BUILDDIR)/html
sphinx-autobuild -p 5500 -b html $(ALLSPHINXOPTS) _build/html
google.load("feeds", "1");
function initialize() {
var feed = new google.feeds.Feed("http://pycogent.wordpress.com/feed/");
feed.load(function(result) {
if (!result.error) {
var container = document.getElementById("feed");
for (var i = 0; i < 3; i++) {
var entry = result.feed.entries[i];
var tr =document.createElement('tr');
var td =document.createElement('td');
var link = document.createElement('a');
link.setAttribute('href', entry.link);
var str = entry.publishedDate;
var patt1 = /[0-9]{2} \w+ [0-9]{4}/i;
var pubdate=str.match(patt1).toString();
var splitdate=pubdate.split(" ");
var title=document.createTextNode(entry.title);
var subtitle = document.createElement('b');
subtitletxt=document.createTextNode(' ('+splitdate[1]+' '+splitdate[0]+', '+splitdate[2]+')');
subtitle.setAttribute('style','color:white;font-size:9px;')
subtitle.appendChild(subtitletxt);
link.appendChild(title);
link.appendChild(subtitle)
td.appendChild(link);
tr.appendChild(td);
container.appendChild(tr);
}
}
});
}
google.setOnLoadCallback(initialize);
\ No newline at end of file