-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: fixed scipy dependency and noxfile cleanup (#47)
* fix: fixed scipy dependency and noxfile cleanup * fix: add precommit * fix: make pre-commit pass * chore: bump version to 1.0.10 * fix: wrong version
- Loading branch information
Showing
51 changed files
with
1,457 additions
and
389 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
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
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,52 @@ | ||
exclude: .github | ||
repos: | ||
- repo: local | ||
hooks: | ||
- id: black | ||
name: black | ||
entry: black | ||
language: system | ||
types: [python] | ||
require_serial: true | ||
- id: check-added-large-files | ||
name: Check for added large files | ||
entry: check-added-large-files | ||
language: system | ||
- id: check-toml | ||
name: Check Toml | ||
entry: check-toml | ||
language: system | ||
types: [toml] | ||
- id: check-yaml | ||
name: Check Yaml | ||
entry: check-yaml | ||
language: system | ||
types: [yaml] | ||
- id: end-of-file-fixer | ||
name: Fix End of Files | ||
entry: end-of-file-fixer | ||
language: system | ||
types: [text] | ||
stages: [commit, push, manual] | ||
- id: flake8 | ||
name: flake8 | ||
entry: flake8 | ||
language: system | ||
types: [python] | ||
require_serial: true | ||
- id: reorder-python-imports | ||
name: Reorder python imports | ||
entry: reorder-python-imports | ||
language: system | ||
types: [python] | ||
args: [--application-directories=src] | ||
- id: trailing-whitespace | ||
name: Trim Trailing Whitespace | ||
entry: trailing-whitespace-fixer | ||
language: system | ||
types: [text] | ||
stages: [commit, push, manual] | ||
- repo: https://github.com/pre-commit/mirrors-prettier | ||
rev: v2.3.0 | ||
hooks: | ||
- id: prettier |
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
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 |
---|---|---|
|
@@ -28,11 +28,10 @@ | |
|
||
# Introduction | ||
|
||
We developed the `kallisto` program for the efficient and robust calculation of atomic features using molecular geometries either in a ``xmol`` or a ``Turbomole`` format. | ||
Furthermore, several modelling tools are implemented, e.g., to calculate root-mean squared deviations via quaternions (including rotation matrices), sorting of molecular geometries and many more. All features of ``kallisto`` are described in detail within our [documentation](https://ehjc.gitbook.io/kallisto/) ([GitBook repository](https://github.com/f3rmion/gitbook-kallisto)). | ||
We developed the `kallisto` program for the efficient and robust calculation of atomic features using molecular geometries either in a `xmol` or a `Turbomole` format. | ||
Furthermore, several modelling tools are implemented, e.g., to calculate root-mean squared deviations via quaternions (including rotation matrices), sorting of molecular geometries and many more. All features of `kallisto` are described in detail within our [documentation](https://ehjc.gitbook.io/kallisto/) ([GitBook repository](https://github.com/f3rmion/gitbook-kallisto)). | ||
|
||
Main dependencies | ||
----------------- | ||
## Main dependencies | ||
|
||
```bash | ||
click 7.1.2 Composable command line interface toolkit | ||
|
@@ -43,101 +42,100 @@ scipy 1.6.0 SciPy: Scientific Library for Python | |
|
||
For a list of all dependencies have a look at the pyproject.toml file. | ||
|
||
Installation from PyPI | ||
---------------------- | ||
## Installation from PyPI | ||
|
||
To install `kallisto` via `pip` use our published PyPI package | ||
|
||
To install ``kallisto`` via `pip` use our published PyPI package | ||
```bash | ||
pip install kallisto | ||
``` | ||
|
||
Installation from Source | ||
------------------------ | ||
## Installation from Source | ||
|
||
Requirements to install `kallisto`from sources: | ||
|
||
Requirements to install ``kallisto``from sources: | ||
- [poetry](https://python-poetry.org/docs/#installation) | ||
- [pyenv](https://github.com/pyenv/pyenv#installation) or [conda](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html) | ||
- python >=3.7 | ||
|
||
First check that ``poetry`` is running correctly (v1.0.10 at the time of writing) | ||
First check that `poetry` is running correctly (v1.0.10 at the time of writing) | ||
|
||
```bash | ||
> poetry --version | ||
Poetry version 1.0.10 | ||
``` | ||
|
||
Create a virtual environment (via ``pyenv`` or ``conda``) and activate it. Afterwards, clone the ``kallisto`` project from GitHub and install it using ``poetry`` | ||
Create a virtual environment (via `pyenv` or `conda`) and activate it. Afterwards, clone the `kallisto` project from GitHub and install it using `poetry` | ||
|
||
```bash | ||
> git clone [email protected]:AstraZeneca/kallisto.git | ||
> cd kallisto | ||
> poetry install | ||
``` | ||
|
||
Testing suite | ||
------------- | ||
## Testing suite | ||
|
||
The ``kallisto`` project uses [nox](https://nox.thea.codes/en/stable/tutorial.html#installation) as an automated unit test suite, which is therefore an additional dependency. | ||
The `kallisto` project uses [nox](https://nox.thea.codes/en/stable/tutorial.html#installation) as an automated unit test suite, which is therefore an additional dependency. | ||
|
||
### Default nox session | ||
|
||
The default session includes: linting (lint), type checks (mypy, pytype), and unit tests (tests). | ||
The default session includes: linting (lint), type checks (mypy, pytype), and unit tests (tests). | ||
|
||
```bash | ||
> nox | ||
``` | ||
|
||
When everything runs smoothly through, you are ready to go! After one successful nox run, we can reuse the created virtual environment via the ``-r`` flag. | ||
When everything runs smoothly through, you are ready to go! After one successful nox run, we can reuse the created virtual environment via the `-r` flag. | ||
|
||
```bash | ||
> nox -r | ||
``` | ||
|
||
Different unit test sessions are implemented (check the noxfile.py). They can be called separately via the run session ``-rs`` flag. | ||
Different unit test sessions are implemented (check the noxfile.py). They can be called separately via the run session `-rs` flag. | ||
|
||
### Tests | ||
|
||
Run all unit tests that are defined in the /tests directory. | ||
|
||
```bash | ||
```bash | ||
> nox -rs tests | ||
``` | ||
|
||
### Lint | ||
|
||
``kallisto`` uses the [flake8](https://flake8.pycqa.org/en/latest/) linter (check the .flake8 config file). | ||
`kallisto` uses the [flake8](https://flake8.pycqa.org/en/latest/) linter (check the .flake8 config file). | ||
|
||
```bash | ||
> nox -rs lint | ||
``` | ||
|
||
### Black | ||
|
||
``kallisto`` uses the [black](https://github.com/psf/black) code formatter. | ||
`kallisto` uses the [black](https://github.com/psf/black) code formatter. | ||
|
||
```bash | ||
```bash | ||
> nox -rs black | ||
``` | ||
|
||
### Safety | ||
|
||
``kallisto`` checks the security of dependencies via [safety](https://pyup.io/safety/). | ||
`kallisto` checks the security of dependencies via [safety](https://pyup.io/safety/). | ||
|
||
```bash | ||
> nox -rs safety | ||
``` | ||
|
||
### Mypy | ||
|
||
``kallisto`` checks for static types via [mypy](https://github.com/python/mypy) (check the mypy.ini config file). | ||
`kallisto` checks for static types via [mypy](https://github.com/python/mypy) (check the mypy.ini config file). | ||
|
||
```bash | ||
> nox -rs mypy | ||
``` | ||
|
||
### Pytype | ||
|
||
``kallisto`` furthermore uses [pytype](https://github.com/google/pytype) for type checks. | ||
`kallisto` furthermore uses [pytype](https://github.com/google/pytype) for type checks. | ||
|
||
```bash | ||
> nox -rs pytype | ||
|
@@ -147,17 +145,15 @@ Run all unit tests that are defined in the /tests directory. | |
|
||
Unit test [coverage](https://coverage.readthedocs.io/en/coverage-5.4/) can be checked as well. | ||
|
||
|
||
```bash | ||
> nox -rs coverage | ||
``` | ||
|
||
Reference | ||
--------- | ||
## Reference | ||
|
||
Always cite: | ||
|
||
Eike Caldeweyher, J. Open Source Softw., *2021*, 6, 3050. DOI: [10.21105/joss.03050](https://doi.org/10.21105/joss.03050) | ||
Eike Caldeweyher, J. Open Source Softw., _2021_, 6, 3050. DOI: [10.21105/joss.03050](https://doi.org/10.21105/joss.03050) | ||
|
||
``` | ||
@article{Caldeweyher2021, | ||
|
Oops, something went wrong.