Biotite

Latest version: v1.0.1

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

Scan your dependencies

Page 1 of 10

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)

0.40.0

Changelog

Additions

- Refactored `struc.superimpose()` (526)
- Multiple `fixed` models are allowed
- Increased performance for multiple models
- Support for *BinaryCIF* file format (531)
- Added `'bcif'` `format` to `database.rcsb.fetch()`
- Added `structure.io.pdbx.BinaryCIFFile` to parse *BinaryCIF* files
- Added `structure.io.pdbx.CIFFile` to parse *CIF* files with analogous API to `BinaryCIFFile`
- High-level *PDBx* API (`get_structure()`, `get_assembly()`, etc.) supports these new file classes
- Added `include_bonds`parameter to `structure.io.pdbx.get_structure()` and `structure.io.pdbx.get_assembly()` to parse bond information from file
- Refactored `structure.info` subpackage (540)
- Decreased initial loading time when package is imported
- The component dataset is now stored as compressed *BinaryCIF* decreasing the *Biotite* package size
- The component dataset is updated to the current version, i.e. the latest chemical components from the *wwPDB* are included
- The project now contains the `setup_ccd.py` script, enabling the user to get an up-to-date version of the component dataset

Changes

- Removed `structure.info.bond_order()` and `structure.info.bond_dataset` (540)
- `struc.superimpose` returns now an `AffineTransformation` object instead of a *transformation tuple* (526)
- `superimpose_apply()` is deprecated in favor of `AffineTransformation.apply()`
- `structure.io.pdbx.PDBxFile` is deprecated and superseded by `CIFFile` (531)
- `structure.io.mmtf` is deprecated and superseded by `BinaryCIFFile` (531)
- This is reflected by the [RCSB announcement](https://www.rcsb.org/news/feature/65a1af31c76ca3abcc925d0c) to deprecate MMTF

Fixes

- Handle invalid `CRYST1` records in PDB files correctly (523)
- Ensure that *NumPy* `1.x` is used (537)
- Support for `2.x` will be added in the future

Page 1 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.