michellab / Sire

Sire Molecular Simulations Framework
http://siremol.org
GNU General Public License v3.0
95 stars 26 forks source link

Feature web (a.k.a Sire 2023.0.0) #391

Closed chryswoods closed 2 years ago

chryswoods commented 2 years ago

Here is the first pull request for the modernisation of Sire. This is checked to work with feature-web in BioSimSpace, and is part of a joint pull request.

The aim of this pull request is to modernise Sire's API to prepare it for the increase in development that is expected with OpenBioSim. To this end, the install system has been modernised as we have fully committed to conda. Conda packages can now be built for Windows, Mac (M1 and X86) and Linux. Testing has moved to pytest. The API is being updated to be pythonic in style, so that it is easier to learn and use by new developers. A complete set of tutorials are being written, with the API updated where needed to make it easier to learn and to use.

The search system has been fully updated as this has proven to be a very valuable part of Sire.

The changes are not backwards compatible. To support old code, we have added in a backwards compatible option. This is activated using

import sire as sr
sr.use_old_api()

Sire can now be used as before.

The aim is that this new version of Sire will be fully released as the 2023.1.0. We plan to release 2023.0.0 as a pre-release to get the ball rolling with the changes (e.g. BioSimSpace pre-release 2023.0.0 will be built to run on top of Sire 2023.0.0). There will be number of pull requests over the next 6 months to complete this work in time.

lohedges commented 2 years ago

Okay, this is all working locally at my end. I'll merge in to devel, create a tag, then push. Hopefully the Windows upload script will work. Otherwise we can debug that in devel and move the tag.

Cheers.