Skip to content

Commit

Permalink
Merge pull request #278 from OpenBioSim/release_2024.1.0
Browse files Browse the repository at this point in the history
Release 2024.1.0
  • Loading branch information
lohedges authored Apr 15, 2024
2 parents d25426d + 589cecc commit 791bbd4
Show file tree
Hide file tree
Showing 266 changed files with 15,610 additions and 1,828 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/Sandpit_exs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:

- name: Install dependency
run: |
mamba install -c conda-forge -c openbiosim/label/main biosimspace python=3.10 ambertools gromacs "sire=2023.4" "alchemlyb>=2.1" pytest openff-interchange pint=0.21 rdkit "jaxlib>0.3.7" tqdm
mamba install -c conda-forge -c openbiosim/label/main biosimspace python=3.10 ambertools gromacs "sire=2023.5" "alchemlyb>=2.1" pytest openff-interchange pint=0.21 rdkit "jaxlib>0.3.7" tqdm
python -m pip install git+https://github.com/Exscientia/MDRestraintsGenerator.git
# For the testing of BSS.FreeEnergy.AlchemicalFreeEnergy.analysis
python -m pip install https://github.com/alchemistry/alchemtest/archive/master.zip
Expand Down
16 changes: 7 additions & 9 deletions .github/workflows/devel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,23 +13,21 @@ jobs:
max-parallel: 9
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11"]
python-version: ["3.10", "3.11", "3.12"]
platform:
- { name: "windows", os: "windows-latest", shell: "pwsh" }
- { name: "linux", os: "ubuntu-latest", shell: "bash -l {0}" }
- { name: "macos", os: "macos-latest", shell: "bash -l {0}" }
exclude:
# Exclude all but the latest Python from all but Linux
# Exclude all but the latest Python from all
# but Linux
- platform:
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
python-version: "3.9"
python-version: "3.12" # MacOS can't run 3.12 yet... We want 3.10 and 3.11
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
python-version: "3.9"
- platform:
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
python-version: "3.10"
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
python-version: "3.10"
python-version: "3.11"
environment:
name: biosimspace-build
defaults:
Expand All @@ -39,7 +37,7 @@ jobs:
SIRE_DONT_PHONEHOME: 1
SIRE_SILENT_PHONEHOME: 1
steps:
- uses: conda-incubator/setup-miniconda@v2
- uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
python-version: ${{ matrix.python-version }}
Expand All @@ -52,7 +50,7 @@ jobs:
run: git clone -b devel https://github.com/openbiosim/biosimspace
#
- name: Setup Conda
run: mamba install -y -c conda-forge boa anaconda-client packaging=21 pip-requirements-parser
run: mamba install -y -c conda-forge boa anaconda-client packaging pip-requirements-parser
#
- name: Update Conda recipe
run: python ${{ github.workspace }}/biosimspace/actions/update_recipe.py
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,15 @@ jobs:
max-parallel: 9
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11"]
python-version: ["3.10", "3.11", "3.12"]
platform:
- { name: "windows", os: "windows-latest", shell: "pwsh" }
- { name: "linux", os: "ubuntu-latest", shell: "bash -l {0}" }
- { name: "macos", os: "macos-latest", shell: "bash -l {0}" }
exclude:
- platform:
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
python-version: "3.12" # MacOS can't run 3.12 yet...
environment:
name: biosimspace-build
defaults:
Expand All @@ -30,7 +34,7 @@ jobs:
SIRE_DONT_PHONEHOME: 1
SIRE_SILENT_PHONEHOME: 1
steps:
- uses: conda-incubator/setup-miniconda@v2
- uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
python-version: ${{ matrix.python-version }}
Expand All @@ -43,7 +47,7 @@ jobs:
run: git clone -b main https://github.com/openbiosim/biosimspace
#
- name: Setup Conda
run: mamba install -y -c conda-forge boa anaconda-client packaging=21 pip-requirements-parser
run: mamba install -y -c conda-forge boa anaconda-client packaging pip-requirements-parser
#
- name: Update Conda recipe
run: python ${{ github.workspace }}/biosimspace/actions/update_recipe.py
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
max-parallel: 9
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11"]
python-version: ["3.10", "3.11", "3.12"]
platform:
- { name: "windows", os: "windows-latest", shell: "pwsh" }
- { name: "linux", os: "ubuntu-latest", shell: "bash -l {0}" }
Expand All @@ -22,14 +22,14 @@ jobs:
# but Linux
- platform:
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
python-version: "3.9"
python-version: "3.10"
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
python-version: "3.9"
python-version: "3.10"
- platform:
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
python-version: "3.10"
python-version: "3.12" # MacOS can't run 3.12 yet...
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
python-version: "3.10"
python-version: "3.11"
environment:
name: biosimspace-build
defaults:
Expand All @@ -40,7 +40,7 @@ jobs:
SIRE_SILENT_PHONEHOME: 1
REPO: "${{ github.event.pull_request.head.repo.full_name || github.repository }}"
steps:
- uses: conda-incubator/setup-miniconda@v2
- uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
python-version: ${{ matrix.python-version }}
Expand All @@ -53,7 +53,7 @@ jobs:
run: git clone -b ${{ github.head_ref }} --single-branch https://github.com/${{ env.REPO }} biosimspace
#
- name: Setup Conda
run: mamba install -y -c conda-forge boa anaconda-client packaging=21 pip-requirements-parser
run: mamba install -y -c conda-forge boa anaconda-client packaging pip-requirements-parser
#
- name: Update Conda recipe
run: python ${{ github.workspace }}/biosimspace/actions/update_recipe.py
Expand Down
18 changes: 9 additions & 9 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -63,35 +63,35 @@ Conda package
The easiest way to install BioSimSpace is using our `conda channel <https://anaconda.org/openbiosim/repo>`__.
BioSimSpace is built using dependencies from `conda-forge <https://conda-forge.org/>`__,
so please ensure that the channel takes strict priority. We recommend using
`Mambaforge <https://github.com/conda-forge/miniforge#mambaforge>`__.
`Miniforge <https://github.com/conda-forge/miniforge>`__.

To create a new environment:

.. code-block:: bash
mamba create -n openbiosim -c conda-forge -c openbiosim biosimspace
mamba activate openbiosim
conda create -n openbiosim -c conda-forge -c openbiosim biosimspace
conda activate openbiosim
To install the latest development version you can use:

.. code-block:: bash
mamba create -n openbiosim-dev -c conda-forge -c openbiosim/label/dev biosimspace
mamba activate openbiosim-dev
conda create -n openbiosim-dev -c conda-forge -c openbiosim/label/dev biosimspace
conda activate openbiosim-dev
When updating the development version it is generally advised to update `Sire <https://github.com/openbiosim/sire>`_
at the same time:

.. code-block:: bash
mamba update -c conda-forge -c openbiosim/label/dev biosimspace sire
conda update -c conda-forge -c openbiosim/label/dev biosimspace sire
Unless you add the required channels to your Conda configuration, then you'll
need to add them when updating, e.g., for the development package:

.. code-block:: bash
mamba update -c conda-forge -c openbiosim/label/dev biosimspace
conda update -c conda-forge -c openbiosim/label/dev biosimspace
Installing from source
^^^^^^^^^^^^^^^^^^^^^^
Expand Down Expand Up @@ -146,8 +146,8 @@ latest development code into that.

.. code-block:: bash
mamba create -n openbiosim-dev -c conda-forge -c openbiosim/label/dev biosimspace --only-deps
mamba activate openbiosim-dev
conda create -n openbiosim-dev -c conda-forge -c openbiosim/label/dev biosimspace --only-deps
conda activate openbiosim-dev
git clone https://github.com/openbiosim/biosimspace
cd biosimspace/python
BSS_SKIP_DEPENDENCIES=1 python setup.py develop
Expand Down
4 changes: 2 additions & 2 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ which will be released as 2023.1.X+1.

| Version | Supported |
| ------- | ------------------ |
| 2023.1.x | :white_check_mark: |
| < 2023.1.x| :x: |
| 2023.5.x | :white_check_mark: |
| < 2023.5.x| :x: |

## Reporting a Vulnerability

Expand Down
14 changes: 14 additions & 0 deletions doc/source/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,20 @@ company supporting open-source development of fostering academic/industrial coll
within the biomolecular simulation community. Our software is hosted via the `OpenBioSim`
`GitHub <https://github.com/OpenBioSim/biosimspace>`__ organisation.

`2024.1.0 <https://github.com/openbiosim/biosimspace/compare/2023.5.1...2024.1.0>`_ - Apr 15 2024
-------------------------------------------------------------------------------------------------

* Switch to using Langevin integrator for GROMACS free energy simulations (`#264 <https://github.com/OpenBioSim/biosimspace/pull/264>`__).
* Add support for clearing and disabling the IO file cache (`#266 <https://github.com/OpenBioSim/biosimspace/pull/266>`__).
* Add support for using ``openff-nagl`` to generate partial charges (`#267 <https://github.com/OpenBioSim/biosimspace/pull/267>`__).
* Fixed non-reproducible search for backbone restraint atom indices (`#270 <https://github.com/OpenBioSim/biosimspace/pull/270>`__).
* Add support for AMBER as an alchemical free-energy simulation engine (`#272 <https://github.com/OpenBioSim/biosimspace/pull/272>`__).
* Switch to using ``os.path.join`` to generate directory file names (`#276 <https://github.com/OpenBioSim/biosimspace/pull/276>`__).
* Make sure the ``fileformat`` property is preserved when creating single molecule systems (`#276 <https://github.com/OpenBioSim/biosimspace/pull/276>`__).
* Add a ``getRestraintType`` method to the base protocol that returns ``None`` (`#276 <https://github.com/OpenBioSim/biosimspace/pull/276>`__).
* Add missing ``themostat_time_constant`` kwarg to the :class:`Metadynamics <BioSimSpace.Protocol.Metdynamics>` protocol (`#276 <https://github.com/OpenBioSim/biosimspace/pull/276>`__).


`2023.5.1 <https://github.com/openbiosim/biosimspace/compare/2023.5.0...2023.5.1>`_ - Mar 20 2024
-------------------------------------------------------------------------------------------------

Expand Down
2 changes: 1 addition & 1 deletion doc/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@

# General information about the project.
project = "biosimspace"
copyright = "2017-2023"
copyright = "2017-2024"

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
Expand Down
28 changes: 3 additions & 25 deletions doc/source/contributing/packaging.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@
Development process
===================

:mod:`BioSimSpace` uses a ``main``, ``devel`` and ``future`` development process,
:mod:`BioSimSpace` uses a ``main`` and ``devel`` development process,
using feature branches for all code development.

* ``main`` - this always contains the latest official release.
* ``devel`` - this always contains the latest development release, which will become the next official release.
* ``future`` - this contains pull requests that have been accepted, but which are targetted for a future release (i.e. not the next official release)

Code should be developed on a fork or in a feature branch called ``feature_{feature}``.
When your feature is ready, please submit a pull request against ``devel``. This
Expand All @@ -27,29 +26,8 @@ tests, examples and/or tutorial instructions.
the tutorials or writing a detailed description for the website.

Assuming the CI completes successfully, then one of the release team will
conduct a code review. The outcome of the review will be one of the following;

1. This feature is ready, and should be part of the next official release. The pull request
will be accepted into ``devel``. This will trigger our CI/CD process, building the new dev
package and uploading it to `anaconda.org <https://anaconda.org/openbiosim/biosimspace>`__
for everyone to use.

2. This feature is good, but it is not yet ready to be part of the next offical release. This
could be because the feature is part of a series, and all of the series need to be finished
before release. Or because we are in a feature freeze period. Or because you want more time
for people to explore and play with the feature before it is officially released (and would
then need to be supported, and backwards compatibility maintained). If this is the case (or
it is your request) then the pull request will be redirected into the ``future`` branch.
Once it (and features that depend on it) are ready, you can then issue a pull request for
all of the features at once into ``devel``. It will be noted that each of the individual
parts have already been code reviewed, so the process to accept the combination
into ``devel`` should be more straightforward.

3. This feature is good, but more work is needed before it can be accepted. This could be
because some of the unit tests haven't passed, or the latest version of ``devel`` hasn't
been merged. Or there may be changes that are requested that would make the code easier
to maintain or to preserve backwards compatibility. If this is the case, then we
will engage in conversation with you and will work together to rectify any issues.
conduct a code review, with the code being merged into ``devel`` if it is
approved.

Bug fixes or issue fixes are developed on fix branches, called ``fix_{number}`` (again in
either the main repository or forks). If no `issue thread <https://github.com/OpenBioSim/biosimspace/issues>`__
Expand Down
2 changes: 0 additions & 2 deletions doc/source/contributing/roadmap.rst
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,6 @@ You can keep up with what we are working on in several ways;
* Keep an eye on the various ``feature_X`` branches as they appear in the repository. Feel free to initiate
a conversation on GitHub with the developer who is working on that branch if you want to learn more, or
want to make suggestions or offer a helping hand.
* Clone and build your own copy of the ``future`` branch. This is the bleeding edge, and things may change and break.
But it is the earliest way to use the future version of :mod:`BioSimSpace`.

Wishlists / suggestions
=======================
Expand Down
Loading

0 comments on commit 791bbd4

Please sign in to comment.