Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • lurpi/ogsPW
  • steffenbeese/ogs
  • HBShaoUFZ/ogs
  • vehling/ogs
  • kuateric/ogs
  • heinzej/ogs
  • MostafaMollaali/dynamic
  • GuanglinDu/ogs
  • katakurgyis/ogs
  • felikskiszkurno/ogs
  • aachaudhry/ogs
  • friederl/ogs
  • fparisio/ogs
  • Scinopode/ogs
  • MaxDoe/ogs
  • nagelt/ogs
  • zhangning737/ogs
  • ogs/ogs
  • bilke/ogs
  • montoyav/ogs
  • TomFischer/ogs
  • wenqing/ogs
  • renchao-lu/ogs
  • ChaofanChen/ogs
  • rinkk/ogs
  • WanlongCai/ogs
  • dominik-kern/ogs
  • Yonghui56/ogs
  • endJunction/ogs
  • VinayGK/ogs
  • AlirezaBGE/ogs
  • SebasTouristTrophyF/ogs
  • tengfeideng/ogs
  • joergbuchwald/ogs
  • KeitaYoshioka/ogs
  • hhutyou/debug-petsc-large
  • ThieJan/ogs
  • ArashPartow/ogs
  • skai95/ogs
  • yezhigangzju/ogs
  • PhilippSelzer/ogs
  • MartinBinder/ogs
  • MehranGhasabeh/ogs-mg
  • MManicaM/ogs
  • TobiasMeisel/ogs
  • norihiro-w/ogs
  • garibay-j/ogs
  • Christopher-McDermott/ogs
  • loewenzahm/ogs
  • aheinri5/ogs
  • tcajuhi/ogs
  • RichardScottOZ/ogs
  • lagraviereScience/ogs
  • jrandow/ogs
  • cbsilver/ogs
  • reza-taherdangkoo/ogs
  • joboog/ogs
  • basakz/ogs
  • ropaoleon/ogs
  • ShuangChen88/ogs
  • cguevaramorel/ogs
  • boyanmeng/ogs
  • XRuiWang/ogs
  • grubbymoon/ogs
  • yUHaOLiu-tj/ogs
  • FZill/ogs
  • michaelpitz/ogs
  • hhutyou/ogs
  • Lifan97/ogs
  • mattschy/ogs
  • Mojtaba-abdolkhani/ogs
  • kristofkessler/ogs
  • ozgurozansen/ogs
  • eike-radeisen/ogs-gitlab
  • DStafford/ogs
  • Max_Jaeschke/ogs
  • fwitte/ogs
  • LionAhrendt/ogs
  • emadnrz/ogs
  • laubry/ogs
  • HailongS/ogs
  • noorhasan/ogs
  • WenjieXuZJU/ogs
  • suresh199824/ogs
84 results
Show changes
Commits on Source (5517)
Showing
with 652 additions and 336 deletions
---
Checks: '-*,clang-diagnostic-*,clang-analyzer-*,cppcoreguidelines-pro-type-member-init, *explicit-conversions*, google-explicit-constructor, google-readability-braces-around-statements, modernize-loop-convert, modernize-use-default-member-init, modernize-use-emplace, modernize-use-using, readability-braces-around-statements, readability-else-after-return, readability-named-parameter, *readability-namespace-comments, *readability-inconsistent-*, readability-redundant-member-init, readability-simplify-boolean-expr, readability-string-compare'
Checks: >
-*
,clang-diagnostic-*,
clang-analyzer-*,
cppcoreguidelines-pro-type-member-init,
*explicit-conversions*,
google-explicit-constructor,
google-readability-braces-around-statements,
modernize-loop-convert,
modernize-use-default-member-init,
modernize-use-emplace,
modernize-use-using,
readability-braces-around-statements,
readability-else-after-return,
readability-named-parameter,
*readability-namespace-comments,
*readability-inconsistent-*,
readability-redundant-member-init,
readability-simplify-boolean-expr,
readability-string-compare
WarningsAsErrors: ''
HeaderFilterRegex: '.*'
WarningsAsErrors: ""
HeaderFilterRegex: ".*"
AnalyzeTemporaryDtors: false
FormatStyle: file
FormatStyle: file
CheckOptions:
- key: google-readability-braces-around-statements.ShortStatementLines
value: '1'
- key: hicpp-braces-around-statements.ShortStatementLines
value: '1'
- key: readability-braces-around-statements.ShortStatementLines
value: '1'
- key: google-readability-braces-around-statements.ShortStatementLines
value: "1"
- key: hicpp-braces-around-statements.ShortStatementLines
value: "1"
- key: readability-braces-around-statements.ShortStatementLines
value: "1"
......@@ -57,28 +57,6 @@ parse:
RUNTIME: 1
WRAPPER: +
meshtest:
pargs:
nargs: "*"
flags:
- NONE
spelling: MeshTest
kwargs:
EXECUTABLE: 1
PATH: 1
NAME: 1
WRAPPER: 1
RUNTIME: 1
WORKING_DIRECTORY: 1
EXECUTABLE_ARGS: +
DATA: +
DIFF_DATA:
pargs:
tags:
- cmdline
WRAPPER_ARGS: +
REQUIREMENTS: +
cpmaddpackage:
pargs:
nargs: "*"
......@@ -109,6 +87,7 @@ parse:
HTTP_PASSWORD: 1
EXCLUDE_FROM_ALL: 1
OPTIONS: +
PATCH_COMMAND: +
cpmfindpackage:
pargs:
nargs: "*"
......
version: "2"
exclude_patterns:
- "ThirdParty/"
- "Tests/"
plugins:
duplication:
......
......@@ -11,3 +11,4 @@ Malcom, M.A.M.(2018).Analysis of underground excavations in argillaceous hard
Stoffverhaltens von Salzgestein in Abh{\"a}ngigkeit von der Zeit und der
Temperatur auf der Grundlage von Laborversuchen mit begleitenden kontinuumsmechanischen
Berechnungen nach der Methode der finiten Elemente}'
- _Dupuit J. Mouvement de l’eau a travers le terrains permeables. C. R. Hebd. Seances Acad. Sci., 45:92–96, 1857._
[codespell]
skip = ./.git,./Tests/Data,./ThirdParty,*.yml,*.bib,./web/content/imprint.md,./GeoLib/IO/XmlIO/OpenGeoSysSTN.xsd
ignore-words-list = ket,nd,strat,theis,ba,sur
skip = *.bib,*.css,*.pdf,*.yaml,*.yml,*.vtu,*/.vale,./.git,./GeoLib/IO/XmlIO/OpenGeoSysSTN.xsd,./Tests/Data,./web/content/imprint.md,./web/node_modules,./web/public/imprint/index.html,./web/resources,CITATION.cff,
ignore-words-list = ba,bu,ket,nd,pris,strat,sur,theis,ot,Jupyter,testrunner
exclude-file = .codespellexclude
uri-ignore-words-list = *
{
"name": "ogs-gcc-dev",
"image": "registry.opengeosys.org/ogs/ogs/vscode:latest",
"postStartCommand": "nohup bash -c 'cd web; yarn; yarn build; hugo server &'",
"forwardPorts": [
1313
],
"mounts": [
"source=devcontainer-cpm-cache,target=/opt/cpm,type=volume",
"source=devcontainer-ccache-cache,target=/opt/ccache,type=volume",
"source=${localWorkspaceFolder}/../build,target=${containerWorkspaceFolder}/../build,type=bind"
],
"customizations": {
"vscode": {
"extensions": [
"ms-vscode.cmake-tools",
"ms-vscode.cpptools"
]
}
},
"remoteUser": "vscode",
"features": {
"common": {}
}
"name": "ogs-gcc-dev",
"image": "mcr.microsoft.com/devcontainers/cpp",
"mounts": [
"source=devcontainer-cpm-cache,target=/opt/cpm,type=volume",
"source=devcontainer-ccache-cache,target=/opt/ccache,type=volume",
"source=${localWorkspaceFolder}/../build,target=${containerWorkspaceFolder}/../build,type=bind"
],
"features": {
"common": {},
"ghcr.io/devcontainers/features/python:1": {},
"ghcr.io/devcontainers/features/common-utils:2": {
"configureZshAsDefaultShell": true
}
}
}
# .git
Tests/Data
_out/images
ThirdParty/container-maker
......@@ -15,7 +15,7 @@ jobs:
uses: actions/checkout@v2
- name: Configure CMake
run: cmake -B ${{ env.build }} -DCMAKE_BUILD_TYPE=${{ env.config }} -DOGS_BUILD_PROCESS_TH2M=OFF -DOGS_USE_PYTHON=OFF -DOGS_USE_UNITY_BUILDS=OFF -DOGS_BUILD_TESTING=OFF -DOGS_ENABLE_ELEMENT_PRISM=OFF -DOGS_ENABLE_ELEMENT_PYRAMID=OFF -DOGS_MAX_ELEMENT_DIM=2
run: cmake -B ${{ env.build }} -DCMAKE_BUILD_TYPE=${{ env.config }} -DOGS_USE_UNITY_BUILDS=OFF -DOGS_BUILD_TESTING=OFF -DOGS_ENABLE_ELEMENT_PRISM=OFF -DOGS_ENABLE_ELEMENT_PYRAMID=OFF -DOGS_MAX_ELEMENT_DIM=2
# Build is not required unless generated source files are used
# - name: Build CMake
......
......@@ -12,11 +12,6 @@ tags
# Visual Studio Code project files
.vscode
# Conan package manager
conanbuildinfo.cmake
conaninfo.txt
CMakeLists.txt.user*
*.pyc
.venv
......@@ -26,6 +21,7 @@ Tests/Data/_out
web/.netlify
CMakeUserPresets.json
scripts/cmake/vtk-*.patch
.snakemake
......@@ -38,3 +34,10 @@ CMakeUserPresets.json
nohup.out
/Documentation/.vale
# Python build
/_skbuild
*.egg-info/
/wheelhouse
.ipynb_checkpoints
/Applications/Python/_version.py
stages:
- preparation
- build
- test
- check
- release
- package
......@@ -10,44 +11,73 @@ variables:
BUILD_TYPE: Release
BUILD_TESTS: "true"
BUILD_CTEST: "true"
CTEST_ARGS: "" # If not empty supply arguments to select tests
CTEST_TIMEOUT: "" # in minutes
CPU_TARGET: ivybridge # envinf1 has oldest cpu
ARTIFACTS_PAGES_URL: https://$CI_PROJECT_ROOT_NAMESPACE.$CI_PAGES_DOMAIN/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts
PIPELINE_NAME: "Default pipeline name"
# by default skip performance tests, they can be enabled on isolated test machines
OGS_PERFORMANCE_TESTS_ALLOWED_TO_FAIL: true
workflow:
name: "$PIPELINE_NAME"
rules:
# Disable CI for non-MR user-scoped pipelines
- if: '$CI_MERGE_REQUEST_IID == null && $CI_PROJECT_PATH != "ogs/ogs"'
when: never
- if: "$CI_MERGE_REQUEST_LABELS =~ /.*(workflow::paused|ci skip).*/"
- if: "$CI_MERGE_REQUEST_LABELS =~ /.*(workflow::paused|ci::skip).*/"
when: never
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::web only.*/
variables:
PIPELINE_NAME: "web only MR pipeline: $CI_MERGE_REQUEST_SOURCE_PROJECT_PATH $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME"
BUILD_TESTS: "false"
CTEST_INCLUDE_REGEX: "nb-"
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::linux only.*/
variables:
PIPELINE_NAME: "linux only MR pipeline: $CI_MERGE_REQUEST_SOURCE_PROJECT_PATH $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME"
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::mac only.*/
variables:
PIPELINE_NAME: "mac only MR pipeline: $CI_MERGE_REQUEST_SOURCE_PROJECT_PATH $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME"
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::win only.*/
variables:
PIPELINE_NAME: "win only MR pipeline: $CI_MERGE_REQUEST_SOURCE_PROJECT_PATH $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME"
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::guix only.*/
variables:
PIPELINE_NAME: "guix only MR pipeline: $CI_MERGE_REQUEST_SOURCE_PROJECT_PATH $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME"
- if: $CI_MERGE_REQUEST_IID # merge requests
variables:
PIPELINE_NAME: "MR pipeline: $CI_MERGE_REQUEST_SOURCE_PROJECT_PATH $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME"
- if: $CI_COMMIT_TAG # tags, ogs/ogs repo only
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_PROJECT_PATH == "ogs/ogs"' # master, ogs/ogs repo only
- if: '$CI_COMMIT_BRANCH =~ /^v[0-9]\.[0-9]\.[0-9]/ && $CI_PROJECT_PATH == "ogs/ogs"' # release branches, e.g. v6.x.x
variables:
PIPELINE_NAME: "master pipeline"
include:
- local: "scripts/ci/extends/*.yml"
- local: "/scripts/ci/jobs/meta.yml"
- local: "/scripts/ci/jobs/ci_images.yml"
# jobs, can be indiviually disabled for testing
- local: "/scripts/ci/jobs/pre-commit.yml"
- local: "/scripts/ci/jobs/build-linux.yml"
- local: "/scripts/ci/jobs/build-linux-petsc.yml"
- local: "/scripts/ci/jobs/build-linux-frontend.yml"
- local: "/scripts/ci/jobs/build-docs.yml"
- local: "/scripts/ci/jobs/build-win.yml"
- local: "/scripts/ci/jobs/build-mac.yml"
- local: "/scripts/ci/jobs/build-container.yml"
- local: "/scripts/ci/jobs/jupyter.yml"
- local: "/scripts/ci/jobs/code-quality.yml"
- local: "/scripts/ci/jobs/code-coverage.yml"
- local: "/scripts/ci/jobs/build-gui-linux.yml"
- local: "/scripts/ci/jobs/build-gui-win.yml"
- local: "/scripts/ci/jobs/build-gui-mac.yml"
- local: "/scripts/ci/jobs/check-header.yml"
- local: "/scripts/ci/jobs/clang-sanitizer.yml"
- local: "/scripts/ci/jobs/clang-tidy.yml"
- local: "/scripts/ci/jobs/web.yml"
- local: "/scripts/ci/jobs/container.yml"
- local: "/scripts/ci/jobs/release.yml"
- local: "/scripts/ci/jobs/package.yml"
- local: "/scripts/ci/jobs/trigger.yml"
- local: "/scripts/ci/pipelines/regular.yml"
rules:
- if: $CI_PIPELINE_SOURCE != "schedule" && $CI_MERGE_REQUEST_LABELS !~ /.*ci::\w* only.*/
- local: "/scripts/ci/pipelines/web.yml"
rules:
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::web only?($|,)/
- local: "/scripts/ci/pipelines/web-fast.yml"
rules:
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::web only \(fast.*/
- local: "/scripts/ci/pipelines/scheduled.yml"
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule"'
- local: "/scripts/ci/pipelines/linux.yml"
rules:
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::linux only.*/
- local: "/scripts/ci/pipelines/mac.yml"
rules:
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::mac only.*/
- local: "/scripts/ci/pipelines/win.yml"
rules:
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::win only.*/
- local: "/scripts/ci/pipelines/guix.yml"
rules:
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::guix only.*/
- local: "/scripts/ci/jobs/build-wheels.yml"
rules:
- if: $CI_MERGE_REQUEST_LABELS =~ /.*ci::wheels only.*/
^[CMake]
*.cmake @bilke
CMakeLists.txt @bilke
[Documentation] @ogs/docs-team
Documentation
web/content
# Hugo pages
- source: /web/content/(.+?)/index\.md/
public: '../\1.html'
[submodule "ThirdParty/container-maker"]
path = ThirdParty/container-maker
url = https://gitlab.opengeosys.org/ogs/container-maker.git
[submodule "ThirdParty/ogs6py"]
path = ThirdParty/ogs6py
url = https://github.com/joergbuchwald/ogs6py.git
......@@ -2,11 +2,14 @@ Alireza Hassanzadegan <a.hassanzadegan@gmail.com> AlirezaBGE <a.hassanzadegan@gm
Aqeel Chaudhry <Aqeel.Chaudhry@ifgt.tu-freiberg.de> aachaudhry <aqeel318@gmail.com>
Carolin Helbig <carolin.helbig@ufz.de>
Chaofan Chen <chaofan.chen@ufz.de>
Chaofan Chen <chaofan.chen@ufz.de> <cchaofan1311@gmail.com>
Christian Silbermann <christian.silbermann@ifgt.tu-freiberg.de> cbsilver <christian.silbermann@ifgt.tu-freiberg.de>
Christoph Lehmann <christoph.lehmann@ufz.de> <chleh@users.noreply.github.com>
Dmitri Naumov <dmitri.naumov@ufz.de> <github@naumov.de>
Dmitri Naumov <dmitri.naumov@ufz.de> Dmitrij Naumov <dmitrij@naumov.de>
Dmitri Naumov <dmitri.naumov@ufz.de> Dmitry Yu. Naumov <dmitri.naumov@ufz.de>
Dmitri Naumov <dmitri-jurievic.naumov@ifgt.tu-freiberg.de> <github@naumov.de>
Dmitri Naumov <dmitri-jurievic.naumov@ifgt.tu-freiberg.de> Dmitrij Naumov <dmitrij@naumov.de>
Dmitri Naumov <dmitri-jurievic.naumov@ifgt.tu-freiberg.de> Dmitry Yu. Naumov <dmitri.naumov@ufz.de>
Dmitri Naumov <dmitri-jurievic.naumov@ifgt.tu-freiberg.de> <dmitri.naumov@ufz.de>
Dmitri Naumov <dmitri-jurievic.naumov@ifgt.tu-freiberg.de> <Dmitri-Jurievic.Naumov@ifgt.tu-freiberg.de>
Dominik Kern <dominik.kern1@ifgt.tu-freiberg.de> <dominik.kern.ifgt@gmail.com>
Eric Simo <eric.simo@bge.de> ericsimo <kuateric>
Florian Zill <florian.zill@ufz.de> Florian Krupsack <florian.krupsack@ufz.de>
......@@ -27,21 +30,25 @@ Jörg Buchwald <joerg.buchwald@ufz.de> joerg <joerg@debian>
Jörg Buchwald <joerg.buchwald@ufz.de> joergbuchwald <44933043+joergbuchwald@users.noreply.github.com>
Jörg Buchwald <joerg.buchwald@ufz.de> joergbuchwald <joerg.buchwald@ufz.de>
Karsten Rink <karsten.rink@ufz.de>
Keita Yoshioka <keita.yoshioka@ufz.de> KeitaYoshioka <32516139+KeitaYoshioka@users.noreply.github.com>
Keita Yoshioka <keita.yoshioka@ufz.de>
Keita Yoshioka <keita.yoshioka@ufz.de> <32516139+KeitaYoshioka@users.noreply.github.com>
Lars Bilke <lars.bilke@ufz.de> <bilke@users.noreply.github.com> <lars@bilke.info>
Lars Bilke <lars.bilke@ufz.de> Lars Bilke <lars@bilke.info>
Lars Bilke <lars.bilke@ufz.de> Lars Bilke <larsbilke83@googlemail.com>
Marc Walther <marc.walther@ufz.de>
Mostafa Mollaali <mostafa.mollaali@ufz.de> MostafaMollaali <m.molaali@gmail.com>
Myles English <mylesenglish@gmail.com>
Norbert Grunwald <norbert.grunwald@ufz.de> <n.g.boettcher@gmail.com> <Norbert.Grunwald@ufz.de>
Norihiro Watanabe <norihiro.watanabe@aist.go.jp> <norihiro.w@gmail.com> <norihiro.watanabe@ufz.de>
Norbert Grunwald <norbert.grunwald@ufz.de> <n.g.boettcher@gmail.com>
Norbert Grunwald <norbert.grunwald@ufz.de> <Norbert.Grunwald@ufz.de>
Norihiro Watanabe <norihiro.watanabe@ufz.de> <norihiro.watanabe@aist.go.jp>
Norihiro Watanabe <norihiro.watanabe@ufz.de> <norihiro.w@gmail.com>
OGS Bot[bot] <no-email> git@dev2 <lars.bilke@ufz.de>
OGS Bot[bot] <no-email> GitLab Runner <ci@opengeosys.org>
OGS Bot[bot] <no-email> OGS Bot <larsbilke@web.de>
OGS Bot[bot] <no-email> OGS Bot <larsbilke@web.de>
OGS Bot[bot] <no-email> ogsbot <larsbilke@web.de>
Renchao Lu <renchao.lu@ufz.de> <renchao.lu@gmail.com> <lur@modmon128.intranet.ufz.de>
Renchao Lu <renchao.lu@ufz.de> <renchao.lu@gmail.com>
Renchao Lu <renchao.lu@ufz.de> <lur@modmon128.intranet.ufz.de>
Renchao Lu <renchao.lu@ufz.de> renchao.lu <renchao.lu@ufz.de>
Reza Taher Dang Koo <reza.taherdangkoo@ifgt.tu-freiberg.de> rezataherdangkoo <reza.taherdangkoo@gmail.com>
Shuang Chen <shuang.chen@bgr.de> <gechenshuang88@gmail.com>
......@@ -49,13 +56,15 @@ Shuang Chen <shuang.chen@bgr.de> Shuang Chen <shuang.chen@ufz.de>
Tengfei Deng <Tengfei.Deng@doktorand.tu-freiberg.de> tengfeideng <54792615+tengfeideng@users.noreply.github.com>
Tengfei Deng <Tengfei.Deng@doktorand.tu-freiberg.de> tengfeideng <dengtengfei2016@hotmail.com>
Thomas Fischer <thomas.fischer@ufz.de> <123_tom_dabei@web.de> <Thomas.Fischer@ufz.de>
Thomas Fischer <thomas.fischer@ufz.de> Tom Fischer <Thomas.Fischer@ufz.de>
Thomas Fischer <thomas.fischer@ufz.de> <Thomas.Fischer@ufz.de>
Thomas Kalbacher <thomas.kalbacher@ufz.de> Thomas-TK <thomas.kalbacher@ufz.de>
Thomas Nagel <thomas.nagel@ufz.de> <nagelt@tcd.ie>
Thomas Nagel <thomas.nagel@ufz.de> nagelt <thomas.nagel@ufz.de>
Thomas Nagel <thomas.nagel@ufz.de> tnagel <thomas.nagel@ufz.de>
Thomas Nagel <thomas.nagel@ufz.de> <thomas.nagel@ifgt.tu-freiberg.de>
Tianyuan Zheng <ichbinzty@gmail.com>
Tobias Meisel <tobias.meisel@ufz.de> <tobias.meisel@web.de>
Tobias Meisel <tobias.meisel@ufz.de>
Tuanny Cajuhi <Tuanny.Cajuhi@bgr.de> tcajuhi <trmcajuhi@gmail.com>
Vanessa Montoya <vanessa.montoya@ufz.de> montoyag <vanemonto@hotmail.com>
Vanessa Montoya <vanessa.montoya@ufz.de> montoyav <vanessa.montoya@ufz.de>
......@@ -72,3 +81,21 @@ Zhang Ning <zhangning737@gmail.com> Rooney <43574869+zhangning737@users.noreply.
Zhang Ning <zhangning737@gmail.com> zhangning737 <zhangning737@gmail.com>
dependabot[bot] <no-email> dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dependabot[bot] <no-email> dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Robert Habel <Robert.Habel@student.tu-freiberg.de> Robert Habel <robert.habel@student.tu-freiberg.de>
Linda Günther <linda.guenther@student.tu-freiberg.de> Linda Günther <Linda.Guenther@student.tu-freiberg.de>
Sophia Einspänner <sophia.einspaenner@student.tu-freiberg.de> Sophia Einspänner <Sophia.Einspaenner@student.tu-freiberg.de>
Jakob Randow <jakob.randow@web.de> jrandow <jakob.randow@htwk-leipzig.de>
Jakob Randow <jakob.randow@web.de> jrandow <jakob.randow@web.de>
Olaf Kolditz <olaf.kolditz@ufz.de>
Falko Vehling <falko.vehling@ufz.de>
Julian Heinze <julian.heinze@ufz.de>
Tao You <hhutyou@126.com>
Matthes Kantzenbach <m.kantzenbach@outlook.de>
Feliks K. Kiszkurno <feliks-kuba.kiszkurno@ufz.de>
Philipp Selzer <philipp.selzer@ufz.de>
Philipp Selzer <philipp.selzer@ufz.de> <Philipp.Selzer@gmx.net>
Joy Brato Shil <joybroto6@gmail.com>
Frieder Loer <frieder.loer@ufz.de>
Eike Radeisen <eike.radeisen@bgr.de>
Maximilian Dörnbrack <maximilian.doernbrack@ufz.de> <maximlian.doernbrack@ufz.de>
Kristof Kessler <kristof.kessler@bgr.de> <mail@kristofkessler.com>
\ No newline at end of file
......@@ -4,3 +4,4 @@ line-length: false
no-inline-html: false
no-duplicate-heading: false
first-line-h1: false
no-bare-urls: false
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.2.0
rev: v4.4.0
hooks:
- id: trailing-whitespace
args: [--markdown-linebreak-ext=md, --markdown-linebreak-ext=pandoc]
exclude: "^ThirdParty/.*|^Tests/Data/.*|^web/static/images/xsd|^Documentation/.vale/.*"
# Tests/Python/res/test_docu_scripts/ contain improper white spaces on
# purpose: such whitespace errors should be tested, there.
exclude: "^Tests/Data/.*|^Tests/Python/res/test_docu_scripts/|^web/static|^Documentation/.vale/.*|.*\\.patch"
- id: check-added-large-files
args: [--maxkb 1024]
- id: check-merge-conflict
- id: check-xml
exclude: '^Tests/Data/.*\.xml'
- id: check-yaml
exclude: "^scripts/ci/.*|.cmake-format.yaml"
- id: check-toml
......@@ -18,53 +21,89 @@ repos:
- id: fix-byte-order-marker
exclude: "^Documentation/.vale/.*"
- id: mixed-line-ending
exclude: ".*\\.vtu"
exclude: ".*\\.vtu|.*@@"
- repo: https://github.com/psf/black
rev: 22.3.0
rev: 23.1.0
hooks:
- id: black
exclude: "ThirdParty|LinearMFront/generate_ref.py"
exclude: "LinearMFront/generate_ref.py"
# Run black on markdown notebooks
- repo: https://github.com/nbQA-dev/nbQA
rev: 1.7.0
hooks:
- id: nbqa-black
additional_dependencies: [jupytext, black==23.1.0]
- repo: https://github.com/codespell-project/codespell
rev: v2.1.0
rev: v2.2.2
hooks:
- id: codespell
exclude: 'ThirdParty/.*|Tests/Data/.*|.*\.ya?ml|.*\.bib|^web/content/imprint.md|^GeoLib/IO/XmlIO/OpenGeoSysSTN.xsd|^Applications/FileIO/Legacy/OGSIOVer4.cpp|^scripts/cmake/CPM.cmake|Documentation/.vale/.*'
exclude: 'Tests/Data/.*|.*\.ya?ml|.*\.bib|^web/content/imprint.md|^GeoLib/IO/XmlIO/OpenGeoSysSTN.xsd|^Applications/FileIO/Legacy/OGSIOVer4.cpp|^scripts/cmake/CPM.cmake|Documentation/.vale/.*|.*\.ipynb|.*\.svg|^GeoLib/predicates.c'
- repo: https://github.com/cheshirekow/cmake-format-precommit
rev: v0.6.13
hooks:
- id: cmake-format
additional_dependencies: ["cmakelang[YAML]"]
args: [--config=.cmake-format.yaml]
exclude: "scripts/cmake/jedbrown/.*|PackagingMacros.cmake|conan.cmake|CPM.cmake|FindFilesystem.cmake|ConanSetup.cmake|Tests.cmake"
exclude: "CPM.cmake|FindFilesystem.cmake|FindMKL.cmake|JSONParser.cmake|Tests.cmake|FindTFEL.cmake|FindMFrontGenericInterface.cmake"
- id: cmake-lint
additional_dependencies: ["cmakelang[YAML]"]
exclude: "scripts/cmake/jedbrown/.*|PackagingMacros.cmake|conan.cmake|CPM.cmake|FindFilesystem.cmake|ConanSetup.cmake|BuildExternalProject.cmake"
exclude: "CPM.cmake|FindFilesystem.cmake|FindMKL.cmake|JSONParser.cmake|BuildExternalProject.cmake|FindTFEL.cmake|FindMFrontGenericInterface.cmake"
- repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.31.1
rev: v0.42.0
hooks:
- id: markdownlint
language_version: 22.11.0
- repo: local
hooks:
- id: git-diff-check
name: Run git diff --check
entry: git diff --check --cached -- ':!*.md' ':!*.pandoc' ':!*.asc' ':!*.dat' ':!*.ts'
language: system
exclude: "ThirdParty/*|Tests/Data/*|web/static/images/xsd"
stages: [commit, manual]
exclude: "Tests/Data/.*|web/static/images/xsd"
stages: [pre-commit, manual]
- id: file-extensions
name: Check file extensions
entry: scripts/hooks/pre-commit-file-extensions.sh
language: system
files: '.*\.cpp'
stages: [commit, manual]
stages: [pre-commit, manual]
- id: git-clang-format
name: git-clang-format
entry: bash -c 'if command -v git-clang-format &> /dev/null; then git clang-format; else exit 0; fi'
language: system
pass_filenames: false
files: \.(h|cpp)$
- repo: https://github.com/errata-ai/vale
rev: v2.24.4
hooks:
- id: vale
name: Check spelling with vale
entry: bash -c 'if command -v vale &> /dev/null; then vale sync; VALE_MIN_ALERT_LEVEL=error scripts/ci/helper/run-vale; else exit 0; fi'
name: vale sync
pass_filenames: false
language: system
args: [sync]
- id: vale
args: [--output=line, --minAlertLevel=error]
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: "v0.9.9"
hooks:
- id: ruff
types_or: [python, pyi, jupyter]
args: [--output-format=full]
# A variant of the ruff hook above that automatically applies proposed fixes.
# Runs only manually.
# Run this hook (and all other manual hooks if any) with:
# pre-commit run --hook-stage manual
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: "v0.9.9"
hooks:
- id: ruff
types_or: [python, pyi, jupyter]
args: [--output-format=full, --fix, --exit-non-zero-on-fix]
stages: [manual]
# Enable on demand, run with
# pre-commit run --all-files clang-format
#
# - repo: https://github.com/pocc/pre-commit-hooks
# rev: master
# hooks:
# - id: clang-format
# args: ["-i"]
......@@ -9,10 +9,10 @@ Packages = Hugo
[*.md]
BasedOnStyles = Vale, write-good, ogs
Vale.Spelling = None
write-good.ThereIs = suggestion
write-good.Passive = suggestion
write-good.TooWordy = suggestion
write-good.Weasel = suggestion
write-good.ThereIs = None
write-good.Passive = None
write-good.TooWordy = None
write-good.Weasel = None
write-good.E-Prime = None
TokenIgnores = \
......@@ -21,7 +21,10 @@ TokenIgnores = \
; (\\ref\s\S+(\s"\S*")?), \
; (\\subpage\s\S*), \
; (\\copydoc\s\S*), \
(\$+[^\n$]+\$+), \
(\$[^\n$]+\$), \
(\\\S*|\{\S*\}), \
(\w*\set\sal)
(\w*\set\sal), \
({{<\s?(rel)?ref (.*)>}})
# https://regex101.com/r/QWLhgT/1 helped me generating this one:
BlockIgnores = (?s) *(\$\$.*?\$\$)
......@@ -7,11 +7,19 @@ ogs_add_library(ApplicationsLib ${LIB_SOURCES})
target_link_libraries(
ApplicationsLib
PUBLIC BaseLib GeoLib NumLib
$<$<TARGET_EXISTS:VTK::ParallelMPI>:VTK::ParallelMPI>
PRIVATE CMakeInfoLib MathLib MeshLib MeshGeoToolsLib
$<$<BOOL:${OGS_USE_PYTHON}>:pybind11::pybind11>
$<$<BOOL:${OGS_USE_PETSC}>:petsc>
PUBLIC
BaseLib
GeoLib
NumLib
$<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:VTK::ParallelMPI>>:VTK::ParallelMPI>
$<$<AND:$<NOT:$<BOOL:${OGS_BUILD_WHEEL}>>,$<BOOL:${OGS_BUILD_CLI}>>:ogs_embedded_python>
PRIVATE CMakeInfoLib
MathLib
MeshLib
MeshGeoToolsLib
MeshToolsLib
$<$<BOOL:${OGS_USE_PETSC}>:PkgConfig::PETSC>
pybind11::module
)
if(OGS_BUILD_CLI OR OGS_BUILD_UTILS OR OGS_BUILD_TESTING)
......@@ -19,7 +27,9 @@ if(OGS_BUILD_CLI OR OGS_BUILD_UTILS OR OGS_BUILD_TESTING)
ApplicationsLib PUBLIC Processes PRIVATE ParameterLib ProcessLib
)
elseif(OGS_BUILD_GUI)
target_link_libraries(ApplicationsLib PRIVATE nlohmann_json::nlohmann_json)
target_link_libraries(
ApplicationsLib PRIVATE MeshToolsLib nlohmann_json::nlohmann_json
)
endif()
if(OGS_USE_LIS)
......@@ -28,10 +38,20 @@ endif()
target_compile_definitions(
ApplicationsLib PUBLIC $<$<BOOL:${USE_LIS}>:USE_LIS>
$<$<BOOL:${OGS_USE_PYTHON}>:OGS_USE_PYTHON>
PRIVATE $<$<BOOL:${OGS_USE_INSITU}>:OGS_USE_INSITU>
)
# ~~~
# Prevent warning:
# warning: ‘ProjectData’ declared with greater visibility than the type of its field ‘ProjectData::_py_scoped_interpreter’
# see https://pybind11.readthedocs.io/en/stable/faq.html#someclass-declared-with-greater-visibility-than-the-type-of-its-field-someclass-member-wattributes
# ~~~
if(NOT OGS_BUILD_WHEEL AND OGS_BUILD_CLI)
set_target_properties(
ApplicationsLib PROPERTIES CXX_VISIBILITY_PRESET hidden
)
endif()
# Set cpp definitions if the cmake option is enabled for the given process.
foreach(process ${_enabled_processes})
string(TOUPPER "OGS_BUILD_PROCESS_${process}" EnableProcess)
......@@ -40,3 +60,8 @@ foreach(process ${_enabled_processes})
${EnableProcess}
)
endforeach()
target_precompile_headers(
ApplicationsLib PRIVATE [["BaseLib/Error.h"]] [["BaseLib/ConfigTree.h"]]
[["BaseLib/Logging.h"]]
)
/**
* \file
* \copyright
* Copyright (c) 2012-2022, OpenGeoSys Community (http://www.opengeosys.org)
* Copyright (c) 2012-2025, OpenGeoSys Community (http://www.opengeosys.org)
* Distributed under a Modified BSD License.
* See accompanying file LICENSE.txt or
* http://www.opengeosys.org/project/license
......@@ -18,6 +19,7 @@
/// The default implementation is empty providing polymorphic behaviour when
/// using this class.
#include "BaseLib/MPI.h"
#include "NumLib/DOF/GlobalMatrixProviders.h"
#if defined(USE_PETSC)
......@@ -27,9 +29,8 @@ namespace ApplicationsLib
{
struct LinearSolverLibrarySetup final
{
LinearSolverLibrarySetup(int argc, char* argv[])
LinearSolverLibrarySetup(int argc, char* argv[]) : mpi_setup(argc, argv)
{
MPI_Init(&argc, &argv);
char help[] = "ogs6 with PETSc \n";
PetscInitialize(&argc, &argv, nullptr, help);
MPI_Comm_set_errhandler(PETSC_COMM_WORLD, MPI_ERRORS_RETURN);
......@@ -39,8 +40,9 @@ struct LinearSolverLibrarySetup final
{
NumLib::cleanupGlobalMatrixProviders();
PetscFinalize();
MPI_Finalize();
}
BaseLib::MPI::Setup mpi_setup;
};
} // ApplicationsLib
#elif defined(USE_LIS)
......@@ -66,7 +68,22 @@ namespace ApplicationsLib
{
struct LinearSolverLibrarySetup final
{
LinearSolverLibrarySetup(int /*argc*/, char* /*argv*/[]) {}
LinearSolverLibrarySetup(int /*argc*/, char* /*argv*/[])
{
#ifdef _OPENMP
const char* omp_num_threads_env = std::getenv("OMP_NUM_THREADS");
if (omp_num_threads_env)
{
INFO("OMP_NUM_THREADS is set to: {:s}", omp_num_threads_env);
}
else
{
WARN("OMP_NUM_THREADS is not set, falling back to: {:d}",
omp_get_max_threads());
}
#endif
INFO("Eigen use {:d} threads", Eigen::nbThreads());
}
~LinearSolverLibrarySetup()
{
NumLib::cleanupGlobalMatrixProviders();
......