biotite 0.41.1__tar.gz → 1.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of biotite might be problematic. Click here for more details.
- {biotite-0.41.1 → biotite-1.0.0}/.gitignore +4 -5
- {biotite-0.41.1 → biotite-1.0.0}/CONTRIB.rst +3 -1
- {biotite-0.41.1 → biotite-1.0.0}/PKG-INFO +6 -6
- {biotite-0.41.1 → biotite-1.0.0}/README.rst +2 -3
- biotite-1.0.0/pyproject.toml +121 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/__init__.py +2 -3
- biotite-1.0.0/src/biotite/application/__init__.py +69 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/application.py +22 -11
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/autodock/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/autodock/app.py +74 -79
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/blast/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/blast/alignment.py +19 -10
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/blast/webapp.py +92 -85
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/clustalo/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/clustalo/app.py +46 -61
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/dssp/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/dssp/app.py +8 -11
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/localapp.py +62 -60
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/mafft/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/mafft/app.py +16 -22
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/msaapp.py +78 -89
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/muscle/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/muscle/app3.py +50 -64
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/muscle/app5.py +23 -31
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/sra/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/sra/app.py +64 -68
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/tantan/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/tantan/app.py +22 -45
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/util.py +7 -9
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/viennarna/rnaalifold.py +34 -28
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/viennarna/rnafold.py +24 -39
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/viennarna/rnaplot.py +36 -21
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/viennarna/util.py +17 -12
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/webapp.py +13 -14
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/copyable.py +13 -13
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/entrez/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/entrez/check.py +2 -3
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/entrez/dbnames.py +7 -5
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/entrez/download.py +55 -49
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/entrez/key.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/entrez/query.py +62 -23
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/error.py +2 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/pubchem/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/pubchem/download.py +43 -45
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/pubchem/error.py +2 -2
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/pubchem/query.py +34 -31
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/pubchem/throttle.py +3 -4
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/rcsb/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/rcsb/download.py +44 -52
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/rcsb/query.py +85 -80
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/uniprot/check.py +6 -3
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/uniprot/download.py +6 -11
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/uniprot/query.py +115 -31
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/file.py +12 -31
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/__init__.py +16 -5
- biotite-1.0.0/src/biotite/sequence/align/__init__.py +203 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/alignment.py +99 -90
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/buckets.py +12 -10
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/cigar.py +43 -52
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/kmeralphabet.pyx +55 -51
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/kmertable.pyx +3 -2
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix.py +81 -82
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/multiple.pyx +35 -35
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/permutation.pyx +12 -4
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/selector.pyx +52 -54
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/statistics.py +32 -33
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/alphabet.py +112 -126
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/annotation.py +78 -77
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/codon.py +90 -79
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/alignment.py +184 -103
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/colorschemes.py +10 -12
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/dendrogram.py +79 -34
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/features.py +133 -99
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/logo.py +22 -28
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/plasmid.py +229 -178
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/fasta/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/fasta/convert.py +44 -33
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/fasta/file.py +42 -55
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/fastq/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/fastq/convert.py +11 -14
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/fastq/file.py +68 -112
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/genbank/__init__.py +2 -2
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/genbank/annotation.py +12 -20
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/genbank/file.py +74 -76
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/genbank/metadata.py +74 -62
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/genbank/sequence.py +13 -14
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/general.py +39 -30
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/gff/__init__.py +2 -2
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/gff/convert.py +10 -15
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/gff/file.py +81 -65
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/phylo/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/profile.py +57 -28
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/search.py +17 -15
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/seqtypes.py +200 -164
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/sequence.py +64 -64
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/__init__.py +3 -3
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/atoms.py +226 -240
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/basepairs.py +260 -271
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/bonds.pyx +88 -100
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/box.py +67 -71
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/chains.py +55 -39
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/compare.py +32 -32
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/density.py +13 -18
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/dotbracket.py +20 -22
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/error.py +10 -2
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/filter.py +82 -77
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/geometry.py +130 -119
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/graphics/atoms.py +60 -43
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/graphics/rna.py +81 -68
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/hbond.py +112 -93
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/__init__.py +0 -2
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/atoms.py +10 -11
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/bonds.py +41 -43
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/ccd.py +21 -7
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/groups.py +10 -15
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/masses.py +5 -10
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/misc.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/radii.py +20 -20
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/standardize.py +15 -26
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/integrity.py +18 -71
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/__init__.py +3 -4
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/dcd/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/dcd/file.py +22 -20
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/general.py +47 -61
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/gro/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/gro/file.py +73 -72
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/mol/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/mol/convert.py +8 -11
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/mol/ctab.py +37 -36
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/mol/header.py +14 -10
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/mol/mol.py +9 -53
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/mol/sdf.py +47 -50
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/netcdf/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/netcdf/file.py +24 -23
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdb/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdb/convert.py +32 -20
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdb/file.py +151 -172
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbqt/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbqt/convert.py +17 -11
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbqt/file.py +128 -80
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbx/__init__.py +1 -2
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbx/bcif.py +36 -52
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbx/cif.py +64 -62
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbx/component.py +10 -16
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbx/convert.py +235 -246
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/trajfile.py +76 -93
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/trr/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/trr/file.py +12 -15
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/xtc/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/xtc/file.py +11 -14
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/mechanics.py +9 -11
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/molecules.py +3 -4
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/pseudoknots.py +53 -67
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/rdf.py +23 -21
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/repair.py +137 -86
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/residues.py +26 -16
- biotite-0.41.1/src/biotite/structure/resutil.py → biotite-1.0.0/src/biotite/structure/segments.py +24 -23
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/sequence.py +10 -11
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/sse.py +100 -119
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/superimpose.py +39 -77
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/transform.py +97 -71
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/util.py +11 -13
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/version.py +2 -2
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/visualize.py +69 -55
- biotite-0.41.1/.gitattributes +0 -3
- biotite-0.41.1/.github/workflows/test_and_deploy.yml +0 -290
- biotite-0.41.1/pyproject.toml +0 -72
- biotite-0.41.1/src/biotite/application/__init__.py +0 -43
- biotite-0.41.1/src/biotite/sequence/align/__init__.py +0 -49
- biotite-0.41.1/src/biotite/structure/io/ctab.py +0 -72
- biotite-0.41.1/src/biotite/structure/io/mmtf/__init__.py +0 -21
- biotite-0.41.1/src/biotite/structure/io/mmtf/assembly.py +0 -214
- biotite-0.41.1/src/biotite/structure/io/mmtf/convertarray.pyx +0 -341
- biotite-0.41.1/src/biotite/structure/io/mmtf/convertfile.pyx +0 -501
- biotite-0.41.1/src/biotite/structure/io/mmtf/decode.pyx +0 -152
- biotite-0.41.1/src/biotite/structure/io/mmtf/encode.pyx +0 -183
- biotite-0.41.1/src/biotite/structure/io/mmtf/file.py +0 -233
- biotite-0.41.1/src/biotite/structure/io/npz/__init__.py +0 -20
- biotite-0.41.1/src/biotite/structure/io/npz/file.py +0 -152
- biotite-0.41.1/src/biotite/structure/io/pdbx/legacy.py +0 -267
- biotite-0.41.1/src/biotite/structure/io/tng/__init__.py +0 -13
- biotite-0.41.1/src/biotite/structure/io/tng/file.py +0 -46
- biotite-0.41.1/src/biotite/temp.py +0 -86
- {biotite-0.41.1 → biotite-1.0.0}/LICENSE.rst +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/application/viennarna/__init__.py +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/database/uniprot/__init__.py +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/banded.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/kmersimilarity.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/localgapped.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/localungapped.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM100.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM30.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM35.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM40.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM45.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM50.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM50_13p.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM50_14.3.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM50_5.0.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM55.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM60.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM62.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM62_13p.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM62_14.3.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM62_5.0.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM65.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM70.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM75.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM80.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM85.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUM90.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/BLOSUMN.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/CorBLOSUM49_5.0.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/CorBLOSUM57_13p.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/CorBLOSUM57_14.3.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/CorBLOSUM61_5.0.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/CorBLOSUM66_13p.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/CorBLOSUM67_14.3.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/DAYHOFF.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/GONNET.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/IDENTITY.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/MATCH.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/NUC.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM10.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM100.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM110.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM120.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM130.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM140.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM150.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM160.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM170.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM180.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM190.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM20.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM200.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM210.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM220.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM230.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM240.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM250.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM260.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM270.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM280.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM290.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM30.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM300.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM310.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM320.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM330.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM340.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM350.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM360.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM370.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM380.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM390.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM40.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM400.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM410.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM420.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM430.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM440.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM450.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM460.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM470.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM480.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM490.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM50.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM500.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM60.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM70.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM80.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/PAM90.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/RBLOSUM52_5.0.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/RBLOSUM59_13p.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/RBLOSUM59_14.3.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/RBLOSUM64_5.0.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/RBLOSUM69_13p.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/matrix_data/RBLOSUM69_14.3.mat +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/pairwise.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/primes.txt +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/tracetable.pxd +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/align/tracetable.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/codec.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/codon_tables.txt +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/__init__.py +1 -1
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/autumn.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/blossom.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/clustalx_dna.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/clustalx_protein.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/flower.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/jalview_buried.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/jalview_hydrophobicity.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/jalview_prop_helix.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/jalview_prop_strand.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/jalview_prop_turn.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/jalview_taylor.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/jalview_zappo.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/ocean.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/pb_flower.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/rainbow_dna.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/rainbow_protein.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/spring.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/sunset.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/graphics/color_schemes/wither.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/io/__init__.py +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/phylo/nj.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/phylo/tree.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/sequence/phylo/upgma.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/celllist.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/charges.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/graphics/__init__.py +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/atom_masses.json +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/ccd/README.rst +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/ccd/amino_acids.txt +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/ccd/carbohydrates.txt +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/ccd/components.bcif +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/info/ccd/nucleotides.txt +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdb/hybrid36.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/io/pdbx/encoding.pyx +0 -0
- {biotite-0.41.1 → biotite-1.0.0}/src/biotite/structure/sasa.pyx +0 -0
|
@@ -20,10 +20,9 @@ htmlcov
|
|
|
20
20
|
# Ignore version file created by hatch-vcs
|
|
21
21
|
/src/biotite/version.py
|
|
22
22
|
|
|
23
|
-
# Ignore autogenerated
|
|
23
|
+
# Ignore autogenerated documentation files
|
|
24
|
+
/doc/static/switcher.json
|
|
24
25
|
/doc/apidoc
|
|
25
|
-
|
|
26
|
-
# Ignore autogenerated example gallery
|
|
27
26
|
/doc/examples/gallery
|
|
28
27
|
/doc/examples/backreferences
|
|
29
28
|
/doc/sg_execution_times.rst
|
|
@@ -40,7 +39,6 @@ htmlcov
|
|
|
40
39
|
# Ignore all compiled python files (e.g. from running the unit tests)
|
|
41
40
|
*.pyc
|
|
42
41
|
*.pyo
|
|
43
|
-
*.py{}
|
|
44
42
|
*.py-e
|
|
45
43
|
|
|
46
44
|
# Ignore potential directory created during install
|
|
@@ -58,8 +56,9 @@ biotite.egg-info
|
|
|
58
56
|
*.code-workspace
|
|
59
57
|
.vscode/*
|
|
60
58
|
|
|
61
|
-
# Ignore
|
|
59
|
+
# Ignore hidden OS related files
|
|
62
60
|
*.fuse_hidden*
|
|
61
|
+
.DS_Store
|
|
63
62
|
|
|
64
63
|
# Ignore temp files created via Jupyter
|
|
65
64
|
**/.ipynb_checkpoints/
|
|
@@ -4,6 +4,7 @@ CONTRIBUTORS
|
|
|
4
4
|
- Fabrice Allain <https://github.com/f-allain>
|
|
5
5
|
- Jacob Marcel Anter <https://github.com/JacobAnter>
|
|
6
6
|
- Daniel Bauer <https://github.com/dnlbauer>
|
|
7
|
+
- Lukas Jarosch <https://github.com/ljarosch>
|
|
7
8
|
- Patrick Kunzmann <https://github.com/padix-key>
|
|
8
9
|
- Tom David Müller <https://github.com/t0mdavid-m>
|
|
9
10
|
- Thomas Nevolianis <https://github.com/thomasnevolianis>
|
|
@@ -16,4 +17,5 @@ CONTRIBUTORS
|
|
|
16
17
|
- Jincai Yang <https://github.com/0ut0fcontrol>
|
|
17
18
|
- Tom Eulenfeld <https://github.com/trichter>
|
|
18
19
|
- Benjamin E. Mayer <https://github.com/entropybit>
|
|
19
|
-
- Natasha Jaffe <https://github.com/tcjaffe>
|
|
20
|
+
- Natasha Jaffe <https://github.com/tcjaffe>
|
|
21
|
+
- Tristen J. Mier <https://github.com/tjmier>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: biotite
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 1.0.0
|
|
4
4
|
Summary: A comprehensive library for computational molecular biology
|
|
5
5
|
Project-URL: homepage, https://www.biotite-python.org
|
|
6
6
|
Project-URL: repository, https://github.com/biotite-dev/biotite
|
|
@@ -37,7 +37,7 @@ License: BSD 3-Clause License
|
|
|
37
37
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
38
38
|
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
39
39
|
License-File: LICENSE.rst
|
|
40
|
-
Classifier: Development Status ::
|
|
40
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
41
41
|
Classifier: Intended Audience :: Developers
|
|
42
42
|
Classifier: Intended Audience :: Science/Research
|
|
43
43
|
Classifier: License :: OSI Approved :: BSD License
|
|
@@ -49,9 +49,10 @@ Classifier: Programming Language :: Python :: 3
|
|
|
49
49
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
50
50
|
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
|
|
51
51
|
Requires-Python: >=3.10
|
|
52
|
+
Requires-Dist: biotraj<2.0,>=1.0
|
|
52
53
|
Requires-Dist: msgpack>=0.5.6
|
|
53
54
|
Requires-Dist: networkx>=2.0
|
|
54
|
-
Requires-Dist: numpy
|
|
55
|
+
Requires-Dist: numpy>=1.25
|
|
55
56
|
Requires-Dist: requests>=2.12
|
|
56
57
|
Provides-Extra: test
|
|
57
58
|
Requires-Dist: pytest; extra == 'test'
|
|
@@ -80,7 +81,7 @@ This package bundles popular tasks in computational molecular biology
|
|
|
80
81
|
into a uniform *Python* library.
|
|
81
82
|
It can handle a major part of the typical workflow
|
|
82
83
|
for sequence and biomolecular structure data:
|
|
83
|
-
|
|
84
|
+
|
|
84
85
|
- Searching and fetching data from biological databases
|
|
85
86
|
- Reading and writing popular sequence/structure file formats
|
|
86
87
|
- Analyzing and editing sequence/structure data
|
|
@@ -116,7 +117,6 @@ Installation
|
|
|
116
117
|
|
|
117
118
|
Some functions require some extra packages:
|
|
118
119
|
|
|
119
|
-
- **mdtraj** - Required for trajetory file I/O operations.
|
|
120
120
|
- **matplotlib** - Required for plotting purposes.
|
|
121
121
|
|
|
122
122
|
*Biotite* can be installed via *Conda*...
|
|
@@ -184,4 +184,4 @@ Contribution
|
|
|
184
184
|
Interested in improving *Biotite*?
|
|
185
185
|
Have a look at the
|
|
186
186
|
`contribution guidelines <https://www.biotite-python.org/contribute.html>`_.
|
|
187
|
-
Feel free to join
|
|
187
|
+
Feel free to join our community chat on `Discord <https://discord.gg/cUjDguF>`_.
|
|
@@ -21,7 +21,7 @@ This package bundles popular tasks in computational molecular biology
|
|
|
21
21
|
into a uniform *Python* library.
|
|
22
22
|
It can handle a major part of the typical workflow
|
|
23
23
|
for sequence and biomolecular structure data:
|
|
24
|
-
|
|
24
|
+
|
|
25
25
|
- Searching and fetching data from biological databases
|
|
26
26
|
- Reading and writing popular sequence/structure file formats
|
|
27
27
|
- Analyzing and editing sequence/structure data
|
|
@@ -57,7 +57,6 @@ Installation
|
|
|
57
57
|
|
|
58
58
|
Some functions require some extra packages:
|
|
59
59
|
|
|
60
|
-
- **mdtraj** - Required for trajetory file I/O operations.
|
|
61
60
|
- **matplotlib** - Required for plotting purposes.
|
|
62
61
|
|
|
63
62
|
*Biotite* can be installed via *Conda*...
|
|
@@ -125,4 +124,4 @@ Contribution
|
|
|
125
124
|
Interested in improving *Biotite*?
|
|
126
125
|
Have a look at the
|
|
127
126
|
`contribution guidelines <https://www.biotite-python.org/contribute.html>`_.
|
|
128
|
-
Feel free to join
|
|
127
|
+
Feel free to join our community chat on `Discord <https://discord.gg/cUjDguF>`_.
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "biotite"
|
|
3
|
+
requires-python = ">=3.10"
|
|
4
|
+
description = "A comprehensive library for computational molecular biology"
|
|
5
|
+
readme = "README.rst"
|
|
6
|
+
authors = [{name = "The Biotite contributors"}]
|
|
7
|
+
license = {"file" = "LICENSE.rst"}
|
|
8
|
+
classifiers = [
|
|
9
|
+
"Development Status :: 5 - Production/Stable",
|
|
10
|
+
"Intended Audience :: Developers",
|
|
11
|
+
"Intended Audience :: Science/Research",
|
|
12
|
+
"License :: OSI Approved :: BSD License",
|
|
13
|
+
"Natural Language :: English",
|
|
14
|
+
"Operating System :: POSIX :: Linux",
|
|
15
|
+
"Operating System :: MacOS",
|
|
16
|
+
"Operating System :: Microsoft :: Windows",
|
|
17
|
+
"Programming Language :: Python :: 3",
|
|
18
|
+
"Programming Language :: Python :: Implementation :: CPython",
|
|
19
|
+
"Topic :: Scientific/Engineering :: Bio-Informatics",
|
|
20
|
+
]
|
|
21
|
+
|
|
22
|
+
dependencies = [
|
|
23
|
+
# Wheels compiled with NumPy 2.0 are backward compatible with NumPy 1.x
|
|
24
|
+
# https://numpy.org/devdocs/dev/depending_on_numpy.html#numpy-2-0-specific-advice
|
|
25
|
+
"numpy >= 1.25",
|
|
26
|
+
"biotraj >= 1.0, < 2.0",
|
|
27
|
+
"requests >= 2.12",
|
|
28
|
+
"msgpack >= 0.5.6",
|
|
29
|
+
"networkx >= 2.0",
|
|
30
|
+
"requests >= 2.12",
|
|
31
|
+
]
|
|
32
|
+
dynamic = ["version"]
|
|
33
|
+
|
|
34
|
+
[project.optional-dependencies]
|
|
35
|
+
test = [
|
|
36
|
+
"pytest",
|
|
37
|
+
]
|
|
38
|
+
|
|
39
|
+
[project.urls]
|
|
40
|
+
homepage = "https://www.biotite-python.org"
|
|
41
|
+
repository = "https://github.com/biotite-dev/biotite"
|
|
42
|
+
documentation = "https://www.biotite-python.org"
|
|
43
|
+
|
|
44
|
+
[tool.ruff.lint]
|
|
45
|
+
# pyflakes, pycodestyle isort and varibale naming
|
|
46
|
+
select = ["F", "E", "W", "I", "TID", "N"]
|
|
47
|
+
ignore = [
|
|
48
|
+
# In docstrings long lines are often intentional
|
|
49
|
+
# Most other ocassions are caught by the ruff formatter
|
|
50
|
+
"E501",
|
|
51
|
+
# Due to constants and class placeholders defined in functions
|
|
52
|
+
"N806",
|
|
53
|
+
]
|
|
54
|
+
|
|
55
|
+
[tool.ruff.lint.per-file-ignores]
|
|
56
|
+
# Due to `* import` of BCIF encoding
|
|
57
|
+
"setup_ccd.py" = ["F405", "F403"]
|
|
58
|
+
# Due to imports after the PATH has been adjusted
|
|
59
|
+
"doc/conf.py" = ["E402"]
|
|
60
|
+
# Due to `from .module import *` imports in `__init__.py` modules
|
|
61
|
+
"__init__.py" = ["F403", "TID252"]
|
|
62
|
+
# Due to pymol scripts that are evaluated in other example scripts
|
|
63
|
+
"doc/examples/**/*_pymol.py" = ["F821"]
|
|
64
|
+
|
|
65
|
+
[tool.ruff.lint.flake8-tidy-imports]
|
|
66
|
+
ban-relative-imports = "all"
|
|
67
|
+
|
|
68
|
+
[tool.ruff.lint.isort]
|
|
69
|
+
# No separator lines between import sections
|
|
70
|
+
no-lines-before = [
|
|
71
|
+
"future",
|
|
72
|
+
"standard-library",
|
|
73
|
+
"third-party",
|
|
74
|
+
"first-party",
|
|
75
|
+
"local-folder",
|
|
76
|
+
]
|
|
77
|
+
order-by-type = true
|
|
78
|
+
known-first-party = ["biotite"]
|
|
79
|
+
|
|
80
|
+
[tool.pytest.ini_options]
|
|
81
|
+
filterwarnings = [
|
|
82
|
+
# Appears in loading NetCDF trajectory files
|
|
83
|
+
"ignore:The 'netCDF4' Python package is not installed.",
|
|
84
|
+
"ignore:Input structure has no associated 'BondList'",
|
|
85
|
+
]
|
|
86
|
+
|
|
87
|
+
[tool.hatch.build.targets.sdist]
|
|
88
|
+
exclude = [
|
|
89
|
+
"tests",
|
|
90
|
+
"doc",
|
|
91
|
+
"environment.yml",
|
|
92
|
+
"setup_ccd.py",
|
|
93
|
+
# .github, .gitignore, .gitattributes
|
|
94
|
+
".git*",
|
|
95
|
+
]
|
|
96
|
+
|
|
97
|
+
[tool.hatch.version]
|
|
98
|
+
source = "vcs"
|
|
99
|
+
|
|
100
|
+
[tool.hatch.build.hooks.vcs]
|
|
101
|
+
version-file = "src/biotite/version.py"
|
|
102
|
+
|
|
103
|
+
[tool.hatch.build.targets.wheel.hooks.cython]
|
|
104
|
+
dependencies = ["hatch-cython"]
|
|
105
|
+
|
|
106
|
+
[tool.hatch.build.targets.wheel.hooks.cython.options]
|
|
107
|
+
include_numpy = true
|
|
108
|
+
compile_py = false
|
|
109
|
+
define_macros = [
|
|
110
|
+
["NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION"],
|
|
111
|
+
]
|
|
112
|
+
|
|
113
|
+
[build-system]
|
|
114
|
+
requires = [
|
|
115
|
+
"hatchling",
|
|
116
|
+
"hatch-vcs == 0.4",
|
|
117
|
+
"hatch-cython == 0.5",
|
|
118
|
+
"numpy >= 2.0",
|
|
119
|
+
"cython >= 3.0",
|
|
120
|
+
]
|
|
121
|
+
build-backend = "hatchling.build"
|
|
@@ -12,8 +12,7 @@ modules.
|
|
|
12
12
|
__name__ = "biotite"
|
|
13
13
|
__author__ = "Patrick Kunzmann"
|
|
14
14
|
|
|
15
|
-
from .file import *
|
|
16
|
-
from .temp import *
|
|
17
15
|
from .copyable import *
|
|
16
|
+
from .file import *
|
|
17
|
+
from .version import __version__, __version_tuple__ # noqa: F401
|
|
18
18
|
from .visualize import *
|
|
19
|
-
from .version import __version__, __version_tuple__
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# This source code is part of the Biotite package and is distributed
|
|
2
|
+
# under the 3-Clause BSD License. Please see 'LICENSE.rst' for further
|
|
3
|
+
# information.
|
|
4
|
+
|
|
5
|
+
"""
|
|
6
|
+
A subpackage that provides interfaces for external software in case
|
|
7
|
+
*Biotite*’s integrated functionality is not sufficient for your tasks.
|
|
8
|
+
These interfaces range from locally installed software
|
|
9
|
+
(e.g. MSA software) to web services (e.g. BLAST).
|
|
10
|
+
The interfaces are seamless:
|
|
11
|
+
Writing input files and reading output files is handled internally.
|
|
12
|
+
The user only needs to provide objects like a :class:`Sequence`
|
|
13
|
+
and will receive objects like an :class:`Alignment`.
|
|
14
|
+
|
|
15
|
+
Note that in order to use an interface in :mod:`biotite.application`
|
|
16
|
+
the corresponding software must be installed or the web server must be
|
|
17
|
+
reachable, respectively.
|
|
18
|
+
These programs are not shipped with the *Biotite* package.
|
|
19
|
+
|
|
20
|
+
Each application is represented by its respective :class:`Application`
|
|
21
|
+
class.
|
|
22
|
+
Each :class:`Application` instance has a life cycle, starting with its
|
|
23
|
+
creation and ending with the result extraction.
|
|
24
|
+
Each state in this life cycle is described by the value of the
|
|
25
|
+
*enum* :class:`AppState`, that each :class:`Application` contains:
|
|
26
|
+
Directly after its instantiation the app is in the ``CREATED`` state.
|
|
27
|
+
In this state further parameters can be set for the application run.
|
|
28
|
+
After the user calls the :func:`Application.start()` method, the app
|
|
29
|
+
state is set to ``RUNNING`` and the app performs the calculations.
|
|
30
|
+
When the application finishes the AppState
|
|
31
|
+
changes to ``FINISHED``.
|
|
32
|
+
The user can now call the :func:`Application.join()` method, concluding
|
|
33
|
+
the application in the ``JOINED`` state and making the results of the
|
|
34
|
+
application accessible.
|
|
35
|
+
Furthermore, this may trigger cleanup actions in some applications.
|
|
36
|
+
:func:`Application.join()` can even be called in the ``RUNNING`` state:
|
|
37
|
+
This will constantly check if the application has finished and will
|
|
38
|
+
directly go into the ``JOINED`` state as soon as the application reaches
|
|
39
|
+
the ``FINISHED`` state.
|
|
40
|
+
Calling the :func:`Application.cancel()` method while the application is
|
|
41
|
+
``RUNNING`` or ``FINISHED`` leaves the application in the ``CANCELLED``
|
|
42
|
+
state.
|
|
43
|
+
This triggers cleanup, too, but there are no accessible results.
|
|
44
|
+
If a method is called in an unsuitable app state, an
|
|
45
|
+
:class:`AppStateError` is called.
|
|
46
|
+
At each state in the life cycle, :class:`Application` type specific
|
|
47
|
+
methods are called, as shown in the following diagram.
|
|
48
|
+
|
|
49
|
+
.. figure:: /static/assets/figures/app_lifecycle.png
|
|
50
|
+
:alt: Application life cycle
|
|
51
|
+
:scale: 50%
|
|
52
|
+
|
|
53
|
+
Taken from
|
|
54
|
+
`Kunzmann & Hamacher 2018 <https://doi.org/10.1186/s12859-018-2367-z>`_
|
|
55
|
+
licensed under `CC BY 4.0 <https://creativecommons.org/licenses/by/4.0/>`_.
|
|
56
|
+
|
|
57
|
+
The execution of an :class:`Application` can run in parallel:
|
|
58
|
+
The time between starting the run and collecting the results can be
|
|
59
|
+
used to run other code, similar to the *Python* :class:`Thread` or
|
|
60
|
+
:class:`Process` classes.
|
|
61
|
+
"""
|
|
62
|
+
|
|
63
|
+
__name__ = "biotite.application"
|
|
64
|
+
__author__ = "Patrick Kunzmann"
|
|
65
|
+
|
|
66
|
+
from .application import *
|
|
67
|
+
from .localapp import *
|
|
68
|
+
from .msaapp import *
|
|
69
|
+
from .webapp import *
|
|
@@ -4,19 +4,26 @@
|
|
|
4
4
|
|
|
5
5
|
__name__ = "biotite.application"
|
|
6
6
|
__author__ = "Patrick Kunzmann"
|
|
7
|
-
__all__ = [
|
|
8
|
-
|
|
7
|
+
__all__ = [
|
|
8
|
+
"Application",
|
|
9
|
+
"AppStateError",
|
|
10
|
+
"TimeoutError",
|
|
11
|
+
"VersionError",
|
|
12
|
+
"AppState",
|
|
13
|
+
"requires_state",
|
|
14
|
+
]
|
|
9
15
|
|
|
10
16
|
import abc
|
|
11
17
|
import time
|
|
12
|
-
from functools import wraps
|
|
13
18
|
from enum import Flag, auto
|
|
19
|
+
from functools import wraps
|
|
14
20
|
|
|
15
21
|
|
|
16
22
|
class AppState(Flag):
|
|
17
23
|
"""
|
|
18
24
|
This enum type represents the app states of an application.
|
|
19
25
|
"""
|
|
26
|
+
|
|
20
27
|
CREATED = auto()
|
|
21
28
|
RUNNING = auto()
|
|
22
29
|
FINISHED = auto()
|
|
@@ -45,6 +52,7 @@ def requires_state(app_state):
|
|
|
45
52
|
... def function(self):
|
|
46
53
|
... pass
|
|
47
54
|
"""
|
|
55
|
+
|
|
48
56
|
def decorator(func):
|
|
49
57
|
@wraps(func)
|
|
50
58
|
def wrapper(*args, **kwargs):
|
|
@@ -52,16 +60,16 @@ def requires_state(app_state):
|
|
|
52
60
|
try:
|
|
53
61
|
instance = args[0]
|
|
54
62
|
except IndexError:
|
|
55
|
-
raise TypeError(
|
|
56
|
-
"This method must be called from a class instance"
|
|
57
|
-
)
|
|
63
|
+
raise TypeError("This method must be called from a class instance")
|
|
58
64
|
if not instance._state & app_state:
|
|
59
65
|
raise AppStateError(
|
|
60
66
|
f"The application is in {instance.get_app_state()} state, "
|
|
61
67
|
f"but {app_state} state is required"
|
|
62
68
|
)
|
|
63
69
|
return func(*args, **kwargs)
|
|
70
|
+
|
|
64
71
|
return wrapper
|
|
72
|
+
|
|
65
73
|
return decorator
|
|
66
74
|
|
|
67
75
|
|
|
@@ -74,7 +82,8 @@ class Application(metaclass=abc.ABCMeta):
|
|
|
74
82
|
|
|
75
83
|
Every :class:`Application` runs through a different app states
|
|
76
84
|
(instances of enum :class:`AppState`) from its creation until its
|
|
77
|
-
termination
|
|
85
|
+
termination.
|
|
86
|
+
|
|
78
87
|
Directly after its instantiation the app is in the *CREATED* state.
|
|
79
88
|
In this state further parameters can be set for the application run.
|
|
80
89
|
After the user calls the :func:`start()` method, the app state is
|
|
@@ -145,11 +154,10 @@ class Application(metaclass=abc.ABCMeta):
|
|
|
145
154
|
"""
|
|
146
155
|
time.sleep(self.wait_interval())
|
|
147
156
|
while self.get_app_state() != AppState.FINISHED:
|
|
148
|
-
if timeout is not None and time.time()-self._start_time > timeout:
|
|
157
|
+
if timeout is not None and time.time() - self._start_time > timeout:
|
|
149
158
|
self.cancel()
|
|
150
159
|
raise TimeoutError(
|
|
151
|
-
f"The application expired its timeout "
|
|
152
|
-
f"({timeout:.1f} s)"
|
|
160
|
+
f"The application expired its timeout " f"({timeout:.1f} s)"
|
|
153
161
|
)
|
|
154
162
|
else:
|
|
155
163
|
time.sleep(self.wait_interval())
|
|
@@ -248,6 +256,7 @@ class AppStateError(Exception):
|
|
|
248
256
|
"""
|
|
249
257
|
Indicate that the application lifecycle was violated.
|
|
250
258
|
"""
|
|
259
|
+
|
|
251
260
|
pass
|
|
252
261
|
|
|
253
262
|
|
|
@@ -255,6 +264,7 @@ class TimeoutError(Exception):
|
|
|
255
264
|
"""
|
|
256
265
|
Indicate that the application's timeout expired.
|
|
257
266
|
"""
|
|
267
|
+
|
|
258
268
|
pass
|
|
259
269
|
|
|
260
270
|
|
|
@@ -262,4 +272,5 @@ class VersionError(Exception):
|
|
|
262
272
|
"""
|
|
263
273
|
Indicate that the application's version is invalid.
|
|
264
274
|
"""
|
|
265
|
-
|
|
275
|
+
|
|
276
|
+
pass
|