Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
135 changes: 135 additions & 0 deletions _posts/2025-03-11-release-2.9.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
---
layout: post
title: Release 2.9.0 of MDAnalysis
---

We are happy to release version 2.9.0 of MDAnalysis!

This is a minor release of the MDAnalysis library, which means that it
contains enhancements, bug fixes, deprecations, and other
backwards-compatible changes.


## Supported environments

This release supports NumPy 2.0+ and offers backwards compatibility
through to NumPy 1.23.2.

Supported Python versions: **3.10, 3.11, 3.12, 3.13**.

Supported Operating Systems:
- **Linux** (on [x86-64][])
- **Windows** (on [x86-64][])
- **MacOS** (on [x86-64][] and [ARM64][])


## Upgrading to MDAnalysis version 2.9.0

To update with `mamba` (or `conda`) from the [conda-forge channel][] run

```bash
mamba update -c conda-forge mdanalysis
```

To update from [PyPi][] with `pip` run

```bash
python -m pip install --upgrade MDAnalysis
```

For more help with installation see the [installation instructions in the User Guide][].
Make sure you are using a Python version compatible with MDAnalysis
before upgrading (Python >= 3.10).


## Notable changes

For a full list of changes, bug fixes and deprecations see the [CHANGELOG][].

#### Enhancements:

* Support for Gromacs v2024.4 and v2025 TPR files.
* A new "water" keyword for selecting water residues.
* Support for **[distopia][] 0.4.0** as an optional distance library
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hmacdope can you look over the distopia part, please?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see also PR MDAnalysis/mdanalysis#4970 for doc update

backend that now supports [many more distance
functions](https://docs.mdanalysis.org/stable/documentation_pages/lib/distances.html#id2)
for *all box types* (including general triclinic unit cells).

On supported [x86-64][] platforms, install *distopia* with
```bash
mamba install -c conda-forge distopia
```

You can then [enable *distopia* as a
backend](https://docs.mdanalysis.org/stable/documentation_pages/lib/distances.html#use-of-the-distopia-library)
to make use of the optimized *distopia* code for
compute-intensive distance calculations, such as
[`distance_array()`](https://docs.mdanalysis.org/stable/documentation_pages/lib/distances.html#MDAnalysis.lib.distances.distance_array):

```python
protein = u.select_atoms("protein and not name H*")
lipids = u.select_atoms("resname POPC CHOL and not name H*")
d = MDAnalysis.lib.distances.distance_array(protein, lipids,
box=u.dimensions,
backend="distopia")
```

If you want to see if *distopia* is available as a backend in a running
program, check that the variable `MDAnalysis.lib.distances.HAS_DISTOPIA` is
`True`.

* Parallel analysis support for `MDAnalysis.analysis.nucleicacids`, `MDAnalysis.analysis.contacts`, and `MDAnalysis.analysis.density`.
* XYZ writer can now write positions up to a user-supplied precision via the `precision` keyword argument.


#### Changes:

* `MDAnalysis.analysis.hole2`, `MDAnalysis.analysis.psa`, and
`MDAnalysis.analysis.waterdynamics`, are now only available via
optional dependencies (the mdahole2, pathsimanalysis, and
waterdynamics [MDAKits][]). By default these will not be installed, you
will need to install them separately if you wish to use them from
within `MDAnalysis.analysis`. Please
note that *in v3.0* theses modules will be *removed completely from the
MDAnalysis core library* and you will need to use the MDAKits
directly.
* `fasteners` dependency has been switched to `filelock`.
* Codebase is now formatted with black (version 24)



## Author statistics

This release was the work of 10 contributors, **3** of which are **new contributors**.

Our **new contributors** are:

* @ChiahsinChu
* @tanishy7777
* @jauy123


## Acknowledgements

MDAnalysis thanks [NumFOCUS][] for its continued support as our fiscal sponsor and
the [Chan Zuckerberg Initiative][] for supporting MDAnalysis under EOSS4 and EOSS5 awards.

— @IAlibay and @p-j-smith ([release managers][roles]) on behalf of the [MDAnalysis Team][]


----


[SPEC 0]: https://scientific-python.org/specs/spec-0000/
[x86-64]: https://en.wikipedia.org/wiki/X86-64
[ARM64]: https://en.wikipedia.org/wiki/Apple_M1
[installation instructions in the User Guide]: https://userguide.mdanalysis.org/stable/installation.html
[conda-forge channel]: https://anaconda.org/conda-forge/mdanalysis
[PyPi]: https://pypi.org/project/MDAnalysis/
[NumFOCUS]: https://www.numfocus.org
[CHANGELOG]: https://github.com/MDAnalysis/mdanalysis/blob/release-2.9.0/package/CHANGELOG
[Chan Zuckerberg Initiative]: https://chanzuckerberg.com/
[roles]: {{ site.baseurl }}/pages/team/#roles
[MDAnalysis Team]: {{ site.baseurl }}/pages/team
[MDAKits]: https://mdakits.mdanalysis.org/
[distopia]: https://github.com/MDAnalysis/distopia
Loading