diff --git a/.ci/docker/Dockerfile b/.ci/docker/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..f01cb4620f0b9ef0e7f8b011bc301f7aa9a76082 --- /dev/null +++ b/.ci/docker/Dockerfile @@ -0,0 +1,7 @@ +ARG BASE +FROM dunecommunity/$BASE + +ADD . ${SUPERDIR}/${MY_MODULE}/ +RUN cd ${SUPERDIR} && \ + echo ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} all && \ + ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} all diff --git a/.codecov.yml b/.codecov.yml new file mode 100644 index 0000000000000000000000000000000000000000..b11d3bc2d592f637695e91a3bc39f36b0a376653 --- /dev/null +++ b/.codecov.yml @@ -0,0 +1,29 @@ +codecov: + notify: + require_ci_to_pass: yes + +coverage: + precision: 2 + round: down + range: "70...100" + + # https://docs.codecov.io/docs/commit-status + status: + project: no + patch: no + changes: no + +parsers: + gcov: + branch_detection: + conditional: yes + loop: yes + method: no + macro: no + +# https://docs.codecov.io/docs/pull-request-comments +# https://docs.codecov.io/docs/graphs +comment: + layout: "header, files " + behavior: once + require_changes: yes diff --git a/.gitsuper b/.gitsuper index 1f0d8dfe6e0228d80906a3a9da3debba150b0e8e..e690d56e6d3ce96ca302d2855f56e379091608dc 100644 --- a/.gitsuper +++ b/.gitsuper @@ -14,10 +14,10 @@ status = 1a3bcab04b011a5d6e44f9983cae6ff89fa695e8 bin (heads/master) 741e4f8e53bdd3e1b6e19d84eb22b6e3dc48526c dune-python (remotes/origin/releases/2.5) 26cc8cb4161a3a51002ab2a81b8c81d2c951ee79 dune-testtools (remotes/origin/p/renemilk/testname_listing_hack_no-skiptest) 0a74e7dd0b2115778a5d490dab08a2ed07fcaa1e dune-uggrid (v2.5.2) - 263e4997f873692f8aa49627ee051a5df104e5db dune-xt-common (heads/dailywork_tleibner) + +111ee6ea9334b68ae841c04ec0b597ad17751fc3 dune-xt-common (heads/dailywork_tleibner) 3e3f3bf06e21cbbf3c0a559891b44c6f5d987d0f dune-xt-data (heads/master) - +7cf444250f162604ecc42e592b71e9f8156da5f4 dune-xt-functions (heads/new-master) - +ffe1fde668438fc5a9309f9c4447f2672dd1fa5c dune-xt-grid (heads/new-master) + +17c0f151b54ab54cadb54217f53a8d3220ed9442 dune-xt-functions (heads/new-master) + +de39cd531607388f0ff3b6887d381e6a4bab2207 dune-xt-grid (heads/new-master) f6904b69f9a3ee5d45ee824d3b244e59cfed7ff4 dune-xt-la (heads/master) 09d0378f616b94d68bcdd9fc6114813181849ec0 scripts (heads/master) commit = 11b7c1b7e4cc360ec97f4f88684d02264f0e309a @@ -95,7 +95,7 @@ commit = 0a74e7dd0b2115778a5d490dab08a2ed07fcaa1e [submodule.dune-xt-common] remote = git@github.com:dune-community/dune-xt-common.git status = 2424627f0ad5de7e4aaa5e7f48bc2a02414d95a1 .vcsetup (heads/master) -commit = 263e4997f873692f8aa49627ee051a5df104e5db +commit = 111ee6ea9334b68ae841c04ec0b597ad17751fc3 [submodule.dune-xt-data] remote = git@github.com:dune-community/dune-xt-data @@ -105,12 +105,12 @@ commit = 3e3f3bf06e21cbbf3c0a559891b44c6f5d987d0f [submodule.dune-xt-functions] remote = git@github.com:dune-community/dune-xt-functions.git status = 2424627f0ad5de7e4aaa5e7f48bc2a02414d95a1 .vcsetup (heads/master) -commit = 7cf444250f162604ecc42e592b71e9f8156da5f4 +commit = 17c0f151b54ab54cadb54217f53a8d3220ed9442 [submodule.dune-xt-grid] remote = git@github.com:dune-community/dune-xt-grid.git status = 2424627f0ad5de7e4aaa5e7f48bc2a02414d95a1 .vcsetup (heads/master) -commit = ffe1fde668438fc5a9309f9c4447f2672dd1fa5c +commit = de39cd531607388f0ff3b6887d381e6a4bab2207 [submodule.dune-xt-la] remote = git@github.com:dune-community/dune-xt-la.git diff --git a/.pylicense-cpp.cfg b/.pylicense-cpp.cfg index 74789c313586aa178c821520b01fcde5737c8706..4a4bf7e1798665e00e35b00beb273f6c7c3158d8 100644 --- a/.pylicense-cpp.cfg +++ b/.pylicense-cpp.cfg @@ -3,12 +3,11 @@ # https://github.com/dune-community/dune-xt-functions # Copyright 2009-2018 dune-xt-functions developers and contributors. All rights reserved. # License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) +# or GPL-2.0+ (http://opensource.org/licenses/gpl-license) +# with "runtime exception" (http://www.dune-project.org/license.html) # Authors: # Felix Schindler (2016 - 2017) # Rene Milk (2018) -# -# or GPL-2.0+ (http://opensource.org/licenses/gpl-license) -# with "runtime exception" (http://www.dune-project.org/license.html) # ~~~ [header] @@ -16,8 +15,8 @@ name = This file is part of the dune-xt-functions project: url = https://github.com/dune-community/dune-xt-functions copyright_statement = Copyright 2009-2018 dune-xt-functions developers and contributors. All rights reserved. license = Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) - // or GPL-2.0+ (http://opensource.org/licenses/gpl-license) - // with "runtime exception" (http://www.dune-project.org/license.html) + or GPL-2.0+ (http://opensource.org/licenses/gpl-license) + with "runtime exception" (http://www.dune-project.org/license.html) prefix = // [files] diff --git a/.pylicense-other.cfg b/.pylicense-other.cfg index f582f7162ad54956283563e491860a6a4aee4eac..3a5e75f1f055d3f877dfcbd5fe005d8c4440da23 100644 --- a/.pylicense-other.cfg +++ b/.pylicense-other.cfg @@ -3,12 +3,11 @@ # https://github.com/dune-community/dune-xt-functions # Copyright 2009-2018 dune-xt-functions developers and contributors. All rights reserved. # License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) +# or GPL-2.0+ (http://opensource.org/licenses/gpl-license) +# with "runtime exception" (http://www.dune-project.org/license.html) # Authors: # Felix Schindler (2016 - 2017) # Rene Milk (2018) -# -# or GPL-2.0+ (http://opensource.org/licenses/gpl-license) -# with "runtime exception" (http://www.dune-project.org/license.html) # ~~~ [header] @@ -16,8 +15,8 @@ name = This file is part of the dune-xt-functions project: url = https://github.com/dune-community/dune-xt-functions copyright_statement = Copyright 2009-2018 dune-xt-functions developers and contributors. All rights reserved. license = Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) - # or GPL-2.0+ (http://opensource.org/licenses/gpl-license) - # with "runtime exception" (http://www.dune-project.org/license.html) + or GPL-2.0+ (http://opensource.org/licenses/gpl-license) + with "runtime exception" (http://www.dune-project.org/license.html) prefix = # lead-in = # ~~~ lead-out = # ~~~ diff --git a/.travis.make_env_file.py b/.travis.make_env_file.py index f2e925bdb01bd5d371402a58d12c2bb878745fd7..e77c120910f8c5cb251fa582f8fd6e920c7a3128 100644 --- a/.travis.make_env_file.py +++ b/.travis.make_env_file.py @@ -5,7 +5,7 @@ from os.path import expanduser from shlex import quote home = expanduser("~") -prefixes = os.environ.get('ENV_PREFIXES', 'TRAVIS CI encrypt TOKEN TESTS').split(' ') +prefixes = os.environ.get('ENV_PREFIXES', 'TRAVIS DRONE GITLAB CODECOV CI encrypt TOKEN TESTS').split(' ') blacklist = ['TRAVIS_COMMIT_MESSAGE'] env_file = os.environ.get('ENV_FILE', os.path.join(home, 'env')) with open(env_file, 'wt') as env: diff --git a/.travis.script.bash b/.travis.script.bash index 82579525536bf5dd448bde598b83e64ff588effc..a9484b0d6e7c6c474922e98cf6f50dd7311a1cbc 100755 --- a/.travis.script.bash +++ b/.travis.script.bash @@ -31,4 +31,21 @@ fi ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} bexec ${BUILD_CMD} install | grep -v "Installing" ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} bexec ${BUILD_CMD} package_source +# clang coverage currently disabled for being to mem hungry +if [[ ${CC} == *"clang"* ]] ; then + exit 0 +fi + +pushd ${DUNE_BUILD_DIR}/${MY_MODULE} +COVERAGE_INFO=${PWD}/coverage.info +lcov --directory . --output-file ${COVERAGE_INFO} -c +for d in "dune-common" "dune-pybindxi" "dune-geometry" "dune-istl" "dune-grid" "dune-alugrid" "dune-uggrid" "dune-localfunctions" ; do + lcov --directory . --output-file ${COVERAGE_INFO} -r ${COVERAGE_INFO} "${SUPERDIR}/${d}/*" +done +lcov --directory . --output-file ${COVERAGE_INFO} -r ${COVERAGE_INFO} "${SUPERDIR}/${MY_MODULE}/dune/xt/*/test/*" +cd ${SUPERDIR}/${MY_MODULE} +${OLDPWD}/dune-env pip install codecov +${OLDPWD}/dune-env codecov -v -X gcov -X coveragepy -F ctest -f ${COVERAGE_INFO} -t ${CODECOV_TOKEN} +popd + # ****** THIS FILE IS AUTOGENERATED, DO NOT EDIT ********** \ No newline at end of file diff --git a/.travis.test_python.bash b/.travis.test_python.bash index f7784feaa7abf2a68c233704702861dd6ec6bdfa..93c8e211dfd0315f7f7beda5fcfc1f2847593ffe 100755 --- a/.travis.test_python.bash +++ b/.travis.test_python.bash @@ -11,7 +11,11 @@ source ${SUPERDIR}/scripts/bash/retry_command.bash ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} configure ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} bexec ${BUILD_CMD} -${WAIT} ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} bexec ${BUILD_CMD} -v bindings -${WAIT} ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} bexec ${BUILD_CMD} -v test_python +${WAIT} ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} bexec ${BUILD_CMD} bindings +${WAIT} ${SRC_DCTRL} ${BLD} --only=${MY_MODULE} bexec ${BUILD_CMD} test_python -# ****** THIS FILE IS AUTOGENERATED, DO NOT EDIT ********** +cd ${SUPERDIR}/${MY_MODULE} +${DUNE_BUILD_DIR}/${MY_MODULE}/dune-env pip install codecov +${DUNE_BUILD_DIR}/${MY_MODULE}/dune-env codecov -X gcov -F pytest -t ${CODECOV_TOKEN} + +# ****** THIS FILE IS AUTOGENERATED, DO NOT EDIT ********** \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index f5c42e480383a891438c894df2d2fc581c39f015..b4eb200ab2234440058bffa6f59ea4762a65222e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,41 +12,43 @@ # THIS FILE IS AUTOGENERATED -- DO NOT EDIT # # Re-run .ci/templates/update.py --nd instead # -sudo: false +sudo: true dist: trusty language: generic services: docker before_script: - - export IMAGE="dunecommunity/dune-xt-functions-testing_${DOCKER_TAG}:${TRAVIS_BRANCH}" - # get image with fallback to master branch of the super repo - - docker pull ${IMAGE} || export IMAGE="dunecommunity/dune-xt-functions-testing_${DOCKER_TAG}:master" ; docker pull ${IMAGE} - - docker inspect -s ${IMAGE} - export MY_MODULE=dune-xt-functions + - export BASEIMAGE="${MY_MODULE}-testing_${DOCKER_TAG}:${TRAVIS_BRANCH/\//_}" + - export IMAGE="dunecommunity/ci_${MY_MODULE}-testing_${DOCKER_TAG}:${TRAVIS_COMMIT}" + # get image with fallback to master branch of the super repo + - docker pull dunecommunity/${BASEIMAGE} || export BASEIMAGE="${MY_MODULE}-testing_${DOCKER_TAG}:master" ; docker pull dunecommunity/${BASEIMAGE} + - docker build --build-arg BASE=${BASEIMAGE} -t ${IMAGE} -f .ci/docker/Dockerfile . + - export ENV_FILE=${HOME}/env - python3 ./.travis.make_env_file.py - - export DOCKER_RUN="docker run --env-file ${ENV_FILE} -v ${TRAVIS_BUILD_DIR}:/root/src/dune-xt-functions ${IMAGE}" + - docker inspect ${IMAGE} + - export DOCKER_RUN="docker run --env-file ${ENV_FILE} ${IMAGE}" script: - - ${DOCKER_RUN} /root/src/dune-xt-functions/.travis.script.bash + - ${DOCKER_RUN} /home/dune-ci/src/dune-xt-functions/.travis.script.bash # runs independent of 'script' failure/success after_script: - - ${DOCKER_RUN} /root/src/dune-xt-functions/.travis.after_script.bash + - ${DOCKER_RUN} /home/dune-ci/src/dune-xt-functions/.travis.after_script.bash # output for simpler replicability - docker images ${IMAGE} - echo ${DOCKER_RUN} +after_failure: + - echo $DOCKER_PW | docker login --username="$DOCKER_USER" --password-stdin + - docker push ${IMAGE} + - echo "execute\n ${DOCKER_RUN} /home/dune-ci/src/dune-xt-functions/.travis.script.bash\n to examine errors" notifications: email: on_success: change on_failure: change - webhooks: - - https://buildtimetrend.herokuapp.com/travis - -#after_success: -#- coveralls branches: except: @@ -58,6 +60,17 @@ stages: jobs: include: + - stage: test_cpp + env: DOCKER_TAG=debian-unstable_gcc_full TESTS=0 + - stage: test_cpp + env: DOCKER_TAG=debian-unstable_gcc_full TESTS=1 + - stage: test_cpp + env: DOCKER_TAG=debian-unstable_gcc_full TESTS=2 + - stage: test_cpp + env: DOCKER_TAG=debian-unstable_gcc_full TESTS=3 + - stage: test_cpp + env: DOCKER_TAG=debian-unstable_gcc_full TESTS=4 + - stage: test_cpp env: DOCKER_TAG=debian_gcc_full TESTS=0 - stage: test_cpp @@ -80,16 +93,21 @@ jobs: - stage: test_cpp env: DOCKER_TAG=debian_clang_full TESTS=4 + - stage: test_python + env: DOCKER_TAG=debian-unstable_gcc_full + script: ${DOCKER_RUN} /home/dune-ci/src/dune-xt-functions/.travis.test_python.bash + # overwrite other global/matrix settings + after_script: true - stage: test_python env: DOCKER_TAG=debian_gcc_full - script: ${DOCKER_RUN} /root/src/dune-xt-functions/.travis.test_python.bash + script: ${DOCKER_RUN} /home/dune-ci/src/dune-xt-functions/.travis.test_python.bash # overwrite other global/matrix settings after_script: true - stage: test_python env: DOCKER_TAG=debian_clang_full - script: ${DOCKER_RUN} /root/src/dune-xt-functions/.travis.test_python.bash + script: ${DOCKER_RUN} /home/dune-ci/src/dune-xt-functions/.travis.test_python.bash # overwrite other global/matrix settings after_script: true # THIS FILE IS AUTOGENERATED -- DO NOT EDIT # -# Re-run .ci/templates/update.py --nd instead # +# Re-run .ci/templates/update.py --nd instead # \ No newline at end of file diff --git a/dune.module b/dune.module index 6badb7e92ff84781dc2e1a602b0ebc9398cf9dc1..a74e5b4094954fa685d59f47e1676fb25cfda63a 100644 --- a/dune.module +++ b/dune.module @@ -14,4 +14,4 @@ Module: dune-xt-functions Version: 18.11-dev Maintainer: dune-xt-dev@listserv.uni-muenster.de -Depends: dune-common (>= 2.5) dune-testtools (>= 2.5) dune-geometry (>= 2.5) dune-grid (>= 2.5) dune-xt-common (>=2.5) dune-xt-grid (>= 2.5) dune-xt-la (>= 2.5) +Depends: dune-common (>= 2.5) dune-testtools (>= 2.5) dune-geometry (>= 2.5) dune-grid (>= 2.5) dune-xt-common (>=2.5) dune-xt-grid (>= 2.5) dune-xt-la (>= 2.5) dune-xt-data diff --git a/dune/xt/functions/expression/timedependent.hh b/dune/xt/functions/expression/timedependent.hh deleted file mode 100644 index 2941d0c271feb53702214ad472c811a49bc386c6..0000000000000000000000000000000000000000 --- a/dune/xt/functions/expression/timedependent.hh +++ /dev/null @@ -1,16 +0,0 @@ -// This file is part of the dune-xt-functions project: -// https://github.com/dune-community/dune-xt-functions -// Copyright 2009-2018 dune-xt-functions developers and contributors. All rights reserved. -// License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause) -// or GPL-2.0+ (http://opensource.org/licenses/gpl-license) -// with "runtime exception" (http://www.dune-project.org/license.html) -// Authors: -// Felix Schindler (2017) -// Rene Milk (2018) - -#ifndef DUNE_XT_FUNCTIONS_EXPRESSION_TIMEDEPENDENT_HH -#define DUNE_XT_FUNCTIONS_EXPRESSION_TIMEDEPENDENT_HH - -#warning "this header will be removed soon (2018/03/16)" - -#endif // DUNE_XT_FUNCTIONS_EXPRESSION_TIMEDEPENDENT_HH