Introducing rDock announcements #103
Pinned
ggutierrez-sunbright
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi everyone!
Welcome to the rDock announcements
About GitHub Discussions
I was trying to figure out a way to convey updates, news, and relevant information to the rDock community, and then I realized we already have a place to do it: GitHub Discussions.
So, from now on, we will try to make announcements regularly, where we will talk about:
This is a new format for us, so it is very likely to change in the near future based on our experiences and your feedback. All input is welcome!
We're also open to contributions and collaborations.
News
Branch-off and release for rdock-legacy, v24.04.204-legacy:
Until now, the changes and improvements in rDock have been made with much regard for full, absolute and 100% guaranteed retrocompatibility. This has led to a situation where many of our initiatives were either very difficult or impossible to implement.
To address this, we have decided to branch-off a legacy version of rDock, which will maintain full retrocompatibility with the current version. This branch will continue to receive bug fixes and updates to the build system to keep it usable, but no new features or improvements will be added.
The main branch will continue to receive new features and quality of code improvements, always trying to maintain retrocompatibility as much as possible, but without the guarantee of full retrocompatibility.
We have made a release of the legacy version, so that users who do not wish (or are not able/allowed) to switch to the new version can continue to have support, and for old experiments to be reproducible. You can download it here
Stable release for rdock (non-legacy), v24.03.192:
As hinted before, we are working on a series of changes that will not be retrocompatible, so we want to make a stable release (non-legacy) before those changes are implemented. We want to have a fallback version in case we introduced any incompatibility or breaking changes (more on this later), for our peace of mind, knowing that the last release until the next feature is completed was the pure, stock, old rDock we all know and love.
the new version is available for download here
Roadmap status
Argument parsing library replacement:
One of the initiatives we're working on right now is the replacement of
libpopt
withcxxopts
(a modern, header-only library for arguments parsing, implemented in C++. Go check it here!)The idea behind this is to reduce the external compiled dependencies, making the build process easier, more stable, and less dependant on the OS libraries. As a bonus, we would move away from a quite 'unwieldy' and C oriented library to something more comfortable to work with using C++ native features, increasing code quality, readability, and maintainability.
While doing so, we will take the opportunity to refactor the main applications code to prepare it for future improvements.
As much as we would like to do this in a retrocompatible way, it is not feasible, due to the non-standard way rDock was parsing arguments (this is one of the reasons we decided to branch-off a legacy version in the first place). For the most part, the changes will be transparent to the end-user, but some of the command-line options will change or stop accepting certain ways of assigning values. There will be a dedicated announcement for this, with a detailed explanation of the changes when it is ready.
You can track the progress on this initiative here
Utilities migration to python3:
The other initiative we are putting our focus on is the migration of old python2 and perl scripts to python3 (basically all the ones that start with sd, like sdfilter, sdsplit, sdtether, etc.). The new scripts are part of a fully-fledged python package, for easier distribution.
With the collaboration of @lpardey, we've already migrated:
and pending:
6 down, 2 to go!
rbhtfinder will also be part of the rdock-utils package, but it has its own track, with the collaboration of @simonbray.
The migration is progressing at a very good pace, so we will be doing another announcement soon.
But, if you can't wait for it, you can already give a try to the alpha version!
just pip install from the repository like this:
pip install git+https://github.com/CBDD/rDock.git#subdirectory=rdock-utils
make sure you have
openbabel
shared library andswig
installed and availableYou can track the progress on this initiative here
Roadmap itself:
In order to make the project more transparent and to give you an idea of what we're working on, and what's coming next, we're working on a roadmap for the project. We will be sharing it soon, so stay tuned!
If you want to check the progress of the initiatives, you can always check the project board
Feedback
This is the first of (I hope) many community posts, so please, let us know what do you think about it. It will help shaping future announcements.
EOF
That's it for the first announcement, thanks for reading, and for using our app
See you in the next one
Happy docking!
@ggutierrez-sunbright
Beta Was this translation helpful? Give feedback.
All reactions