Commit 50ab2622 authored by Markus Scheidgen's avatar Markus Scheidgen
Browse files

Merge branch 'v0.9.0' into 'master'

V0.9.0

See merge request !188
parents 239a3bce 4031b61e
Pipeline #83349 passed with stages
in 10 seconds
......@@ -31,3 +31,5 @@ setup.json
parser.osio.log
gui/src/metainfo.json
gui/src/searchQuantities.json
examples/workdir/
......@@ -2,9 +2,9 @@
# using an image that can do git, docker, docker-compose
image: gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-fair/ci-runner
# Uncomment the next lines, to run each pipline/job in its own docker environment.
# Uncomment the next lines, to run each pipeline/job in its own docker environment.
# Otherwise, it will use the docker of the gitlab runner host (e.g. enc-preprocessing...).
# This will give it access to a persitent layer cache, which will not be available
# This will give it access to a persistent layer cache, which will not be available
# with the docker service.
# services:
# - docker:dind
......
......@@ -144,9 +144,6 @@
[submodule "dependencies/optimade-python-tools"]
path = dependencies/optimade-python-tools
url = https://github.com/markus1978/optimade-python-tools.git
[submodule "dependencies/parsers/eels"]
path = dependencies/parsers/eels
url = https://github.com/markus1978/eels.git
[submodule "dependencies/parsers/namd"]
path = dependencies/parsers/namd
url = https://gitlab.mpcdf.mpg.de/nomad-lab/parser-namd.git
......@@ -189,3 +186,6 @@
[submodule "dependencies/nomad-dos-fingerprints"]
path = dependencies/nomad-dos-fingerprints
url = https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-dos-fingerprints.git
[submodule "dependencies/parsers/eelsdb"]
path = dependencies/parsers/eelsdb
url = https://gitlab.mpcdf.mpg.de/nomad-lab/eelsdb.git
......@@ -69,6 +69,8 @@ RUN python setup.py sdist
RUN cp dist/nomad-lab-*.tar.gz dist/nomad-lab.tar.gz
RUN python -m nomad.cli dev metainfo > gui/src/metainfo.json
RUN python -m nomad.cli dev search-quantities > gui/src/searchQuantities.json
RUN python -m nomad.cli dev toolkit-metadata > gui/src/toolkitMetadata.json
RUN python -m nomad.cli dev units > gui/src/units.js
WORKDIR /install/docs
RUN make html
RUN \
......@@ -87,6 +89,9 @@ RUN yarn
COPY gui /app
COPY --from=build /install/gui/src/metainfo.json /app/src/metainfo.json
COPY --from=build /install/gui/src/searchQuantities.json /app/src/searchQuantities.json
COPY --from=build /install/gui/src/parserMetadata.json /app/src/parserMetadata.json
COPY --from=build /install/gui/src/toolkitMetadata.json /app/src/toolkitMetadata.json
COPY --from=build /install/gui/src/units.js /app/src/units.js
RUN yarn run build
# Build the Encyclopedia GUI in the gui build image
......
recursive-include dependencies/optimade-python-tools *.txt *.g *.py *.ini
recursive-include nomad *.json *.j2 *.md *.yaml
include nomad/units/*.txt
include README.md
include LICENSE.txt
include requirements.txt
include auto_complete_install.sh
include setup.json
\ No newline at end of file
include setup.json
......@@ -32,7 +32,7 @@ pip install nomad-lab
To **use the NOMAD parsers for example**, install the `parsing` extra:
```
pip install nomad-lab[parsing]
nomad parse --show-backend <your-file-to-parse>
nomad parse --show-archive <your-file-to-parse>
```
### For NOMAD developer
......@@ -46,6 +46,17 @@ contributing, and API reference.
Omitted versions are plain bugfix releases with only minor changes and fixes.
### v0.9.0
- The encyclopedia runs on top of the new infrastructure. The GUIs are integrated via
bi-lateral navigation between entries.
- The parsers have new documentation and development instructions and can be easily developed
based on NOMAD's PyPi package nomad-lab
- We introduce workflow metadata (starting with geometry optimizations). This includes search
for workflow parameter, and 3-tiered archive storage for quick access to results for analytics.
- A new GUI to browse the Archive and Metainfo
- The Artificial Intelligence Toolkit (at least its tutorial page) is part of the GUI
- The OASIS comprises Repository, Archive, Metainfo, Encyclopedia, and Artificial Intelligence Toolkit.
### v0.8.7
- a new variant of the Metainfo browser
......
***Note:** This is a general README file for NOMAD parsers, consult the README of specific parser projects for more detailed information!*
This is a NOMAD parser for [$code-name$]($code-url$). It will read $code-name$ input and
This is a NOMAD parser for [$codeLabel$]($codeUrl$). It will read $codeLabel$ input and
output files and provide all information in NOMAD's unified Metainfo based Archive format.
## Preparing code input and output file for uploading to NOMAD
......@@ -15,10 +15,10 @@ in the same directory as files that also belong to that entry. Parsers
might also read information from these auxillary files. This way you can add more files
to an entry, even if the respective parser/code might not directly support it.
For $code-name$ please provide at least the files from this table if applicable to your
For $codeLabel$ please provide at least the files from this table if applicable to your
calculations (remember that you can provide more files if you want):
$table-of-files$
$tableOfFiles$
To create an upload with all calculations in a directory structure:
......@@ -42,7 +42,7 @@ To parse code input/output from the command line, you can use NOMAD's command li
interface (CLI) and print the processing results output to stdout:
```
nomad parse --show-backend <path-to-file>
nomad parse --show-archive <path-to-file>
```
To parse a file in Python, you can program something like this:
......@@ -51,12 +51,12 @@ import sys
from nomad.cli.parse import parse, normalize_all
# match and run the parser
backend = parse(sys.argv[1])
archive = parse(sys.argv[1])
# run all normalizers
normalize_all(backend)
normalize_all(archive)
# get the 'main section' section_run as a metainfo object
section_run = backend.resource.contents[0].section_run[0]
section_run = archive.section_run[0]
# get the same data as JSON serializable Python dict
python_dict = section_run.m_to_dict()
......@@ -73,8 +73,10 @@ pip install nomad-lab
Clone the parser project and install it in development mode:
```
git clone $parser-git-url$ $parser-dir-name$
pip install -e $parser-dir-name$
git clone $parserGitUrl$ parser-$codeName$
pip install -e parser-$codeName$
```
Running the parser now, will use the parser's Python code from the clone project.
$parserSpecific$
Subproject commit 669c75e414d128c8303291ce58b16a01d2d98633
Subproject commit bdffb455f21577435477daa9c871205e6c118efd
Subproject commit fe980c53e536f843b6e0ca85642892b8e2f75fed
Subproject commit 342f391804c7fa7de28ddea5eb80ee9402758fab
Subproject commit e7077c9a824e01b45b0e4989858ecd35f59f4cc7
Subproject commit f2cf15804d33a9f536407321ab768a8367426820
Subproject commit ed482b9956088163db9370dd5eee9b184c47870a
Subproject commit b621df7c0d64d52fba09b610f5bcc8181433b16c
Subproject commit 21f8b2d1746685e9dce966c456cab98f044dc8ec
Subproject commit 8c5326de349ba3d1dfe33327e6b045fdc70b689d
Subproject commit 10f066f30370d8b7826d7cc404da360e3b3d92f2
Subproject commit cf4d76ad7b1b51388936e227d52a868a97a5d1cc
Subproject commit f98b920976d5507c9584676e8f77071bcf041cf9
Subproject commit a3bb039a1a2ee9672474f4be508b7a63a8320d4b
Subproject commit e1a03db77aa4acb3f7f55691e11f1277a2ca6726
Subproject commit 5eb087b3ab79f2353a8412a8eecf188b31427298
Subproject commit 1cdd522775fa3ad76294bc9a58dbfcaea000f0c5
Subproject commit 10fce35ed127f3732437d595fb5cb9b28dcafecd
Subproject commit cc6c9545300cf6ea3347357fedffc6798415a299
Subproject commit 1dcadec2e970ba64888b1f6892560d4c62cb6e14
Subproject commit 5742af2804e002b49bed42a0d5f38f8a79630697
Subproject commit e85232d762379860852c6c5d7b6b127e38ec5b7b
Subproject commit 59a82b9b1218c74660ed570aaa4bdcaa4699c439
Subproject commit 3a982a6906d74bc36ba4d969786ae8e14ccf4ab4
Subproject commit a58cfed379d240e5241bb69689441d42a5fb5e0f
Subproject commit abe6657cfda6cbc881a0ab8cf5edcc00c2eb8361
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment