-
Notifications
You must be signed in to change notification settings - Fork 32
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
LillyMol 7.0 open source release (#23)
- Loading branch information
Showing
2,321 changed files
with
733,183 additions
and
519,844 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
**/Linux-gcc-6.2.0 | ||
**/Linux-gcc-7.2.1 | ||
**/Linux-gcc-8.3.0 | ||
**/Linux | ||
**/__pycache__ | ||
**/.idea | ||
*_pb.rb | ||
*.pyc | ||
lib | ||
include | ||
.gdb_history | ||
third_party | ||
.venv | ||
.vscode | ||
|
||
./src/WORKSPACE | ||
|
||
## vs code workspace | ||
./LillyMolPrivate.code-workspace | ||
*ruby-version | ||
lib64 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
FROM gcc:10.2 | ||
|
||
ENV LILLYMOL_HOME=/LillyMol \ | ||
BUILD_DIR=Linux | ||
|
||
# Install Eigen | ||
# (No need to install zlib since zlib1g and zlib1g-dev are alreday in the gcc base image) | ||
RUN apt-get update && \ | ||
apt-get upgrade -y && \ | ||
apt-get install -y libeigen3-dev && \ | ||
cd /usr/include && \ | ||
ln -sf eigen3/Eigen Eigen | ||
|
||
RUN apt-get install npm -y && \ | ||
npm install -g @bazel/bazelisk && \ | ||
apt-get install cmake -y | ||
|
||
RUN apt-get install python3-pip -y && \ | ||
pip3 install pandas && \ | ||
apt-get install libblas-dev -y && \ | ||
apt-get install liblapack-dev -y && \ | ||
pip3 install scipy | ||
|
||
COPY . ./LillyMol | ||
|
||
WORKDIR /LillyMol | ||
|
||
RUN mkdir bin && \ | ||
mkdir bin/Linux && \ | ||
cd src && \ | ||
./build_third_party.sh | ||
|
||
WORKDIR /LillyMol/src | ||
|
||
RUN cp /tmp/WORKSPACE . | ||
|
||
WORKDIR /LillyMol/src/build_deps | ||
|
||
RUN sed -i 's/\/workspaces\/LillyMolPrivate\/bin\/Linux\//\/LillyMol\/bin\/Linux\//g' install.bzl | ||
|
||
WORKDIR /LillyMol | ||
|
||
ENV LD_LIBRARY_PATH=/LillyMol/third_party/lib | ||
|
||
RUN mkdir /node && \ | ||
mkdir /node/scratch | ||
|
||
WORKDIR /LillyMol/src | ||
|
||
RUN ./build_from_src.sh | ||
|
||
WORKDIR /LillyMol | ||
|
||
RUN rm -f /usr/bin/python && ln -s /usr/bin/python3 /usr/bin/python | ||
|
||
# RUN apt-get install python3-pip -Y |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
# June 2023 | ||
|
||
This release of LillyMol contains a great many updates. | ||
|
||
Among the most notable are | ||
|
||
# Build with bazel/bazelisk. | ||
* Protocl Buffers used for substructure searching and reactions. | ||
* Many additional substructure query functions. | ||
* Many more utilities included in the release. | ||
|
||
The build is now very different. Previously LillyMol had tried hard | ||
to ensure a lack of third party dependencies. This became untenable | ||
and now there are several external dependencies. In addition, | ||
building is now done with `bazel`. This offers many advantages but | ||
also makes building more complex than before. See the README file for | ||
instructions. | ||
|
||
Switching to text format protocol buffers offers many advantages, | ||
and will be used increasingly within LillyMol. | ||
Old style query and reaction files will remain supported, but no new | ||
functionality is being added to them. In order to gain access to new | ||
functionality, you will need to use the text format protocol buffers. | ||
|
||
Smarts provides a language for specifying matched atoms. But many | ||
substructure query concepts are for groups of atoms, rings, substituents, | ||
scaffolds, linkers... There are now more substructure abstract concepts | ||
implemented, see especially the `global_id` concept which now | ||
links the abstract concepts with matched atoms. | ||
|
||
The no matched atoms between directive, `...` is now much more feature | ||
complete, and allows specification of what atoms can, or cannot, be in | ||
a region. Arbitrary element names are now more fully supported. | ||
|
||
Within the code itself, new code is being implemented with a coding | ||
style similar to what Google uses. clang-format is being used to | ||
transition parts of the code, and address sanitizer is used | ||
during testing. GoogleTest is used for C++ unit tests - much more work | ||
remains to be done there, but today there are over 25k lines of unit test. | ||
|
||
## Future | ||
As useful substructure search concepts are needed, they will be added | ||
to LillyMol. If you have needs that are not addressed, please reach out. | ||
|
||
A recent emphasis on LillyMol has been in the area of supporting and | ||
augmenting AI driven generative designs. That will continue with | ||
future work focussed on bringing precedented functional groups to | ||
the generative space, combining the strengths of cheminformatics | ||
enumeration and replacement based approaches and generative models. | ||
Several tools supporting this are in this distribution. | ||
|
Oops, something went wrong.