Biotite

Latest version: v1.1.0

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 10

1.1.0

1.0.1

Changelog

Fixes

- Fixed `structure.AtomArray.chain_id` having the chain ID restricted to 4 characters. (643)
- Fixed corrupted category parsing in `structure.io.pdbx.CIFFile`, when a multiline value contains a quote character. (651)
- Fixed duplicate bonds written to `chem_comp_bond` category, when `include_bonds=True` is set in `structure.io.pdbx.set_structure()`. (653)
- Fixed non-deterministic *altloc* atom selection by occupancy, if two *altlocs* have the same occupancy. (649)
- Fixed the version switcher in the documentation showing the latest version twice. (646)

1.0.0

Changelog

Additions

- Support for Numpy `2.0` (529)
- `1.x` versions are still compatible.
- Trajectory file interfaces in `structure.io` do not require `mdtraj` as extra dependency anymore (627).
- Instead the much smaller `biotraj` package is now a mandatory dependency of Biotite.
- New documentation website (552).
- Improved performance of multiple auxiliary methods in `sequence.Alphabet`.

Changes

- `sequence.graphics` uses `flower` color scheme as default instead of `rainbow`. (617).
- It represents similarity of amino acids better.
- `structure.io.pdbx.get_sequence()` returns dict mapping chain IDs to sequences (611).
- Previously deprecated functionality was removed. (624)
- `read()` instance method of `File` classes: Use `read()` class method instead.
- `temp_file()` and `temp_dir()`: Use corresponding functionality from `tempfile` instead.
- `application.viennarna.RNAfoldApp.get_mfe()`: Use `application.viennarna.RNAfoldApp.get_free_energy()` instead.
- `atom_mask` parameter of `structure.connect_via_distances()` and `structure.connect_via_residue_names()`: Filter the atoms before instead.
- Support for `Alignment` objects as input to `sequence.graphics.plot_sequence_logo()`: Input a `Profile` instead.
- `sequence.io.fastq.FastqFile.get_sequence()`: Use `sequence.io.fastq.FastqFile.get_seq_string()` or `sequence.io.fastq.get_sequence()` instead.
- `structure.filter_backbone()`: Use `structure.filter_peptide_backbone()` instead.
- `structure.check_id_continuity()`: Use `structure.check_res_id_continuity()` instead.
- `structure.check_bond_continuity()`: Use `structure.check_backbone_continuity()` instead.
- `structure.renumber_atom_ids()`: Set the `atom_id` annotation with `numpy.arange()` instead.
- `structure.renumber_res_ids()`: Use `structure.create_continuous_res_ids()` instead.
- `chain_id` parameter of `structure.annotate_sse()`: Filter the `AtomArray` before instead.
- `structure.superimpose_apply()`: Use `structure.AffineTransformation.apply()` instead.
- `structure.io.read_structure_from_ctab()` and `structure.io.write_structure_to_ctab()`: Use corresponding functions from `structure.io.mol`.
- `structure.io.mol.MolFile.get_header()` and `structure.io.mol.MolFile.set_header()`: Use the `header` attribute instead.
- `structure.io.npz`: Internal `.npz` format is not used anymore.
- `structure.io.pdbx.PDBxFile`: Use `structure.io.pdbx.CIFFile` instead.
- `structure.io.mmtf`: `.mmtf` was superseded by `.bcif` accessible with `structure.io.pdbx.BinaryCIFFile`.

Fixes

- Fixed compilation warnings about deprecated NumPy API. (626)
- Fixed `structure.BondList` sometime discarding bonds after merging to bond lists (618).
- Fixed incorrect handling of quotes when reading and writing a `structure.io.pdbx.CIFFile` (619).

0.41.2

Changelog

Fixes
* Updated platform and tooling versions in CI. The previous configuration caused wheels to not be available for MacOS-ARM. (603)
* Fix `Atom` `__repr__()` (602)
* Fix artifact name for source distribution (608)
* Fix indexing with inverse slices(610)
* Fix mdtraj 1.10 incompatibility (612)

0.41.1

Changelog

Fixes

- NumPy version is now properly restricted (601)

0.41.0

Changelog

Additions

- Improved MOL/SDF file support in `biotite.structure.mol`
- CTAB `V3000` blocks can be read and written in addition to `V2000` in `MOLFile` (575)
- `M CHG` lines in CTAB `V2000` block can can be read and written in `MOLFile` (589)
- Added `biotite.structure.SDFile` for full support of SD files (589)
- SD files with multiple records (i.e. multiple molecules) ca be read and written
- Metadata in SD files can be read and written
- Intra-residue bonds can now be read/written to CIF/BinaryCIF files in `biotite.structure.io.pdbx` (567)
The bonds are written to the `chem_comp_bond` category, if `include_bonds=True` in `set_structure()`
- Previously Intra-residue bonds were obtained from the *Chemical Component Dictionary* which only works for residues in the PDB
- Added repair functions for `AtomArray` objects with missing or irregular annotations
- `structure.create_continuous_res_ids()` renumbers residue IDs to make them continuous for each chain (576)
- `structure.infer_elements()` guesses chemical elements from atom names in case the `element` annotation is missing (576)
- `structure.create_atom_names()` names atoms based on their element in case the `atom_name` annotation is missing (581)
- Canonical amino acids/nucleotides can be found for arbitrary residues
- `structure.info.one_letter_code()` obtains the most appropriate one-letter code (if existing) for a residue name, based on information from the *Chemical Component Dictionary* (572)
- `structure.to_sequence()` converts an `AtomArray` into a `Sequence` based on codes obtained via `structure.info.one_letter_code()` (587)
- Added new superimposition functions (587)
- `structure.superimpose_without_outliers()` allows superimposition with iterative conformational outlier removal to decrease the RMSD of the remaining atoms
- `structure.superimpose_homologs()` finds corresponding atoms via sequence alignment and optional outlier removal
- This function is quite robust for simply superimposing homologous proteins/nucleic acids without the need of atom filtering
- `structure.AffineTransform` can be converted into a *4x4* transformation matrix containing both, translation and rotation (576)
- `sequence.align.write_alignment_to_cigar()` now includes terminal gaps in the segment sequence (usually the shorter sequence) in the CIGAR string, if `include_terminal_gaps` is set to `True` (563)
- The default behavior is unchanged

Changes

- Deprecated `get_header()` and `set_header()` in `biotite.structure.io.mol.MOLFile`
- `MOLFile.header` attribute should be used instead (589)
- Deprecated `structure.renumber_atom_ids()` and `structure.renumber_res_ids()`
- `renumber_res_ids()` can be substituted with `create_continuous_res_ids()`

Fixes

- Fixed parsing multi-line values in PDBx NextGen files in `structure.io.pdbx.CIFFile` (555)
- Fixed parsing of some operation expressions in `structure.io.pdbx.get_assembly()` (555)
- `structure.io.pdb.PDBFile.set_structure()` checks if input annotations exceed the fixed number of columns, preventing writing malformed PDB files (588)
- Trying to write malformed CIF files with categories containing no rows now raises an exception (586)
- Added more descriptive error message, if `structure.residue()` cannot find the requested residue (580)
- `sequence.io.fasta.get_sequence()` converts pyrrolyine (`O`) into lysine (`K`) when creating the `Sequence` object (587)
- Fixed indexing with an `Annotation` in `sequence.AnnotatedSequence` if annotation is on the minus strand (577)
- Fixed exception in `biotite.structure.base_pairs()` and `biotite.structure.dot_bracket_from_structure()` if no base paris were found (573)

Page 1 of 10

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.