...
 
Commits (200)

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

......@@ -15,9 +15,6 @@ ThirdPartyXCodeProjects/Seldon.xcodeproj/xcuserdata
# .gitignore.
.gitignore_local
# Backup file generated by mergepbx.
HappyHeart.xcodeproj/project.pbxproj.orig
# Scripts: ignore the user-only version of some scripts.
Scripts/my_create_accessors.py
......
......@@ -48,13 +48,13 @@ include(MoReFEMSettings)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/Sources /
${CMAKE_CURRENT_SOURCE_DIR}/Sources/ThirdParty/Source/Tclap/include /
${CMAKE_CURRENT_SOURCE_DIR}/Sources/ThirdParty/Source/Seldon /
${OPEN_MPI_INCL_DIR} /
${PETSC_INCL_DIR} /
${PARMETIS_INCL_DIR} /
${LUA_INCL_DIR} /
${BOOST_INCL_DIR} /
${XTENSOR_INCL_DIR} /
${TCLAP_INCL_DIR} /
${LIBMESH_INCL_DIR}
)
......
......@@ -4,6 +4,44 @@ means week 46 of year 2013. Should a second tag be given the same week, an index
Starting from v18.47, the ticket numbers in bold are those that might break compatibility in models.
# v19.45
__Warning:__ You need to update third party libraries to [v19.42](https://gitlab.inria.fr/MoReFEM/ThirdPartyCompilationFactory/-/tags/v19.42):
Xtensor dependencies are now added there, and TClap library has been put there rather than kept inside MoReFEM.
__Note:__ due to an issue on M3DIDIM server, Redmine is not available at the time these lines are written, hence the limited precision of the modified content.
## Operators
- Feature #1418: Introduce microsphere operator.
- Feature #20: In Second Piola Kirchhoff operator, introduce the possibility to check whether an element was inverted. Such a check is
commanded through an option in the input data file.
## Utilities / ThirdParty
- Feature #1494: Introduce new header files to handle pragma warnings. The idea is to avoid repeating conditions such as considering a warning
only for a compiler (or worse, a given version of that compiler).
- __Feature #1292__: Replace Seldon by Xtensor for the linear algebra of local operators.
- Bug #1485: LuaFunction: destructor was not properly written and induced a memory leak,
- __Design #1492__: Remove Tclap from the library (it now must be installed outside of it).
## CI
- Feature #177 - #1489: Add Valgrind memcheck analysis for the embedded models and one test.
- Documentation #1497: Generate through GitlabPages the Doxygen documentation of the code (wasn't possible previously for projects in
Gitlab groups).
- Feature #1490: Add Sonarqube in CI analysis; it synthetizes the results of [Cppcheck](http://cppcheck.sourceforge.net/), [RATS](https://security.web.cern.ch/security/recommendations/en/codetools/rats.shtml), [ClangStaticAnalysis](https://clang-analyzer.llvm.org/)
and the [Sonar scanner for C++ by the community](https://github.com/SonarOpenCommunity/sonar-cxx).
- Documentation #1495: Update README concerning CI
- _Standby_: Feature #1497: Add Verrou flaoting-point checks in CI. There is an issue to set it up properly for all VMs (current Docker image works
properly on only half the VMs of the project).
## Miscellaneous
- Support #1498: Various fixes that appeared while upgrading the external models to this version of MoReFEM API.
# v19.36
## Utilities
......
Vector per node
0.000000 0.000000 1.000000 0.000000 0.000000 1.000000
0.000000 0.000000 1.000000 0.000000 0.000000 1.000000
0.000000 0.000000 1.000000 0.000000 0.000000 1.000000
0.000000 0.000000 1.000000 0.000000 0.000000 1.000000
Vector per node
1.000000 0.000000 0.000000 1.000000 0.000000 0.000000
1.000000 0.000000 0.000000 1.000000 0.000000 0.000000
1.000000 0.000000 0.000000 1.000000 0.000000 0.000000
1.000000 0.000000 0.000000 1.000000 0.000000 0.000000
MeshVersionFormatted 2
Dimension
3
Vertices
8
0 0 0 11
1 0 0 12
1 1 0 13
0 1 0 14
0 0 1 15
1 0 1 16
1 1 1 17
0 1 1 18
Edges
12
1 2 201
2 3 202
3 4 203
4 1 204
5 6 211
6 7 212
7 8 213
8 5 214
8 4 231
3 7 232
5 1 233
2 6 234
Quadrilaterals
6
5 1 4 8 1
1 2 6 5 2
1 2 3 4 3
6 2 3 7 4
8 7 3 4 5
5 6 7 8 6
Hexahedra
1
1 2 3 4 5 6 7 8 30
End
......@@ -20,4 +20,4 @@ New talk from Gautier added; this quick overview was prepared for the M3DISIM S
__Update July 2019__:
The talks themselves have been moved to the project
\ No newline at end of file
The talks themselves have been moved to the project
\ No newline at end of file
- common.yml encompasses the stuff that is used in all Yaml files (template to provide compilation and check warnings jobs for macos and linux, the jobs to handle Doxygen documentation).
- generate_yaml.py is a script to generate a tailored Yaml file.
The principle is that there is a gitlab-ci.yml file which is basically a list of other Yaml files included. The rationale behind that choice is that it enables to comment out easily parts of the CI, which is really useful in the dev cycle involving new CI builds. The drawback though is that CI-lint is more difficult to use than in the case of a unique Yaml file.
A possible use is for instance to type:
_common.yml_ encompasses the stuff that is used in all Yaml files (template to provide compilation and check warnings jobs for macos and linux, the jobs to handle Doxygen documentation, etc...) and thus should be included most of the time.
python generate_configuration.py > my-gitlab-ci.yml
A verrou.yml file is currently not activated due to issues with the Docker image: on some architectures the Docker images refuse to run valfgrind, calling out an illegal instruction instead.
which will put the configuration displayed in the main of this program in the target Yaml file.
- gitlab-ci-no-macos.yml and gitlab-ci.yml are two such outputs; both provide 6 Linux cases and one of them add two macOS build on top of this.
\ No newline at end of file
_generate_yaml.py_ was a script to generate former version of full gitlab-ci.yml file; it has been changed and is now handy to generate the Linux or macos versions of build and check.
\ No newline at end of file
cppcheck:
stage: analysis
image: registry.gitlab.inria.fr/morefem/analysistools/cppcheck:latest
script:
- python Scripts/CI/CppCheck/run_cpp_check.py
dependencies: []
artifacts:
name: "artifact_${CI_PROJECT_ID}_${CI_COMMIT_REF_SLUG}_${OS}-cppcheck-xml"
expire_in: 2 days
when: always
paths:
- morefem-cppcheck.xml
only:
- develop@MoReFEM/CoreLibrary/MoReFEM
- /(sonarqube)/
- /(full_ci_analysis)/
rats:
stage: analysis
image: registry.gitlab.inria.fr/morefem/analysistools/rats:latest
script:
- python Scripts/CI/RATS/run_rats.py
dependencies: []
artifacts:
name: "artifact_${CI_PROJECT_ID}_${CI_COMMIT_REF_SLUG}_${OS}-rats-xml"
expire_in: 2 days
when: always
paths:
- morefem-rats.xml
only:
- develop@MoReFEM/CoreLibrary/MoReFEM
- /(sonarqube)/
- /(full_ci_analysis)/
clang-static-analysis:
stage: analysis
image: registry.gitlab.inria.fr/morefem/analysistools/clang-sa:latest
script:
- python Scripts/CI/ClangStaticAnalyser/run_clang_static_analyser.py
artifacts:
name: "artifact_${CI_PROJECT_ID}_${CI_COMMIT_REF_SLUG}_${OS}-clang-sa"
expire_in: 2 days
when: always
paths:
- build_4_sonarqube/analyzer_reports
only:
- develop@MoReFEM/CoreLibrary/MoReFEM
- /(sonarqube)/
- /(full_ci_analysis)/
sonarqube:
stage: generate_sonarqube
dependencies:
- rats
- clang-static-analysis
- cppcheck
image: registry.gitlab.inria.fr/morefem/analysistools/sonarqube:latest
script:
- Scripts/CI/Sonarqube/run_sonarqube.sh
artifacts:
name: "artifact_${CI_PROJECT_ID}_${CI_COMMIT_REF_SLUG}_${OS}-sonarqube"
expire_in: 1 week
when: always
paths:
- morefem-cppcheck.xml
- morefem-rats.xml
- morefem-build.log
- sonar.log
only:
- develop@MoReFEM/CoreLibrary/MoReFEM
- /(sonarqube)/
- /(full_ci_analysis)/
build_ubuntu_gcc_debug_several_shared_libraries:
extends: .build_template_linux
tags:
- ubuntu
- gcc
- debug
variables:
OS: "ubuntu"
COMPILER: "gcc"
MODE: "debug"
LIB_NATURE: "shared"
OS: "ubuntu"
IS_ONLY_ONE_LIB: "False"
check_ubuntu_gcc_debug_several_shared_libraries:
extends: .check_compilation_warning_template_docker
tags:
- ubuntu
- gcc
- debug
dependencies:
- build_ubuntu_gcc_debug_several_shared_libraries
variables:
OS: "ubuntu"
COMPILER: "gcc"
MODE: "debug"
LIB_NATURE: "shared"
OS: "ubuntu"
IS_ONLY_ONE_LIB: "False"
build_ubuntu_gcc_release_one_static_library:
extends: .build_template_linux
tags:
- ubuntu
- gcc
- release
variables:
OS: "ubuntu"
COMPILER: "gcc"
MODE: "release"
LIB_NATURE: "static"
OS: "ubuntu"
IS_ONLY_ONE_LIB: "True"
check_ubuntu_gcc_release_one_static_library:
extends: .check_compilation_warning_template_docker
tags:
- ubuntu
- gcc
- release
dependencies:
- build_ubuntu_gcc_release_one_static_library
variables:
OS: "ubuntu"
COMPILER: "gcc"
MODE: "release"
LIB_NATURE: "static"
OS: "ubuntu"
IS_ONLY_ONE_LIB: "True"
build_fedora_gcc_debug_one_shared_library:
extends: .build_template_linux
tags:
- fedora
- gcc
- debug
variables:
OS: "fedora"
COMPILER: "gcc"
MODE: "debug"
LIB_NATURE: "shared"
OS: "fedora"
IS_ONLY_ONE_LIB: "True"
check_fedora_gcc_debug_one_shared_library:
extends: .check_compilation_warning_template_docker
tags:
- fedora
- gcc
- debug
dependencies:
- build_fedora_gcc_debug_one_shared_library
variables:
OS: "fedora"
COMPILER: "gcc"
MODE: "debug"
LIB_NATURE: "shared"
OS: "fedora"
IS_ONLY_ONE_LIB: "True"
build_fedora_gcc_release_several_static_libraries:
extends: .build_template_linux
tags:
- fedora
- gcc
- release
variables:
OS: "fedora"
COMPILER: "gcc"
MODE: "release"
LIB_NATURE: "static"
OS: "fedora"
IS_ONLY_ONE_LIB: "False"
check_fedora_gcc_release_several_static_libraries:
extends: .check_compilation_warning_template_docker
tags:
- fedora
- gcc
- release