Skip to content

Commit 7064030

Browse files
committed
Merge remote-tracking branch 'upstream/master' into separated-checks
2 parents 973fc44 + 01a7c72 commit 7064030

File tree

209 files changed

+28965
-90895
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

209 files changed

+28965
-90895
lines changed

Diff for: .github/workflows/nestbuildmatrix.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -438,14 +438,14 @@ jobs:
438438
# --force-reinstall required to ensure executable is linked from bin dir in PATH
439439
python -m pip install --force-reinstall clang-format==13.0
440440
python -c "import setuptools; print('package location:', setuptools.__file__)"
441-
python -m pip install --force-reinstall --upgrade scipy numpy pytest pytest-timeout pytest-xdist mpi4py cython matplotlib terminaltables pandoc 'junitparser>=2'
441+
python -m pip install --force-reinstall --upgrade scipy 'junitparser>=2' numpy pytest pytest-timeout pytest-xdist mpi4py cython matplotlib terminaltables pandoc pandas
442442
python -c "import pytest; print('package location:', pytest.__file__)"
443443
pip list
444444
445445
- name: "Find changed files"
446446
run: |
447447
echo "CHANGED_FILES<<EOF" >> $GITHUB_ENV
448-
echo "$(git diff --name-only ${{ github.event.before }}..${{ github.event.after }})" >> $GITHUB_ENV
448+
echo "$(git diff --name-only ${{ github.event.pull_request.base.sha }}..${{ github.event.after }})" >> $GITHUB_ENV
449449
echo 'EOF' >> $GITHUB_ENV
450450
echo "GITHUB_ENV = $GITHUB_ENV"
451451
cat $GITHUB_ENV
@@ -557,7 +557,7 @@ jobs:
557557
run: |
558558
python -m pip install --upgrade pip setuptools
559559
python -c "import setuptools; print('package location:', setuptools.__file__)"
560-
python -m pip install --force-reinstall --upgrade scipy 'junitparser>=2' numpy pytest pytest-timeout pytest-xdist mpi4py cython matplotlib terminaltables pandoc
560+
python -m pip install --force-reinstall --upgrade scipy 'junitparser>=2' numpy pytest pytest-timeout pytest-xdist mpi4py cython matplotlib terminaltables pandoc pandas
561561
python -c "import pytest; print('package location:', pytest.__file__)"
562562
pip list
563563
@@ -647,7 +647,7 @@ jobs:
647647
run: |
648648
python -m pip install --upgrade pip setuptools
649649
python -c "import setuptools; print('package location:', setuptools.__file__)"
650-
python -m pip install --force-reinstall --upgrade scipy 'junitparser>=2' numpy pytest pytest-timeout pytest-xdist mpi4py cython matplotlib terminaltables pandoc
650+
python -m pip install --force-reinstall --upgrade scipy 'junitparser>=2' numpy pytest pytest-timeout pytest-xdist mpi4py cython matplotlib terminaltables pandoc pandas
651651
python -c "import pytest; print('package location:', pytest.__file__)"
652652
pip list
653653

Diff for: .gitignore

-2
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,6 @@ cmake_install.cmake
3232
CMakeDoxygenDefaults.cmake
3333

3434
# generated files
35-
doc/fulldoc.conf
36-
doc/normaldoc.conf
3735
bin/nest-config
3836
bin/nest_vars.sh
3937
libnestutil/config.h

Diff for: CMakeLists.txt

+6-16
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,10 @@ set( with-includes OFF CACHE STRING "Add additional include paths [default=OFF].
8282
set( with-defines OFF CACHE STRING "Additional defines, e.g. '-DXYZ=1' [default=OFF]. Separate multiple defines by ';'." )
8383
set( with-version-suffix "" CACHE STRING "Set a user defined version suffix [default='']." )
8484

85+
# documentation build configuration
86+
set( with-userdoc OFF CACHE STRING "Build user documentation [default=OFF]")
87+
set( with-devdoc OFF CACHE STRING "Build developer documentation [default=OFF]")
88+
8589
################################################################################
8690
################## Project Directory variables ##################
8791
################################################################################
@@ -96,13 +100,6 @@ set( CMAKE_INSTALL_DATADIR "share/${PROJECT_NAME}" CACHE STRING "Relative direct
96100
################## Find utility programs ##################
97101
################################################################################
98102

99-
# needed for pynest test suite
100-
if ( ${with-python} STREQUAL "ON" )
101-
find_program( NOSETESTS NAMES nosetests )
102-
endif ()
103-
104-
# needed for target doc and fulldoc
105-
find_package( Doxygen )
106103
find_program( SED NAMES sed gsed )
107104

108105
################################################################################
@@ -156,6 +153,8 @@ nest_process_with_mpi4py()
156153
nest_process_with_boost()
157154
nest_process_target_bits_split()
158155
nest_process_version_suffix()
156+
nest_process_userdoc()
157+
nest_process_devdoc()
159158

160159
nest_get_color_flags()
161160
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${NEST_C_COLOR_FLAGS}" )
@@ -344,11 +343,6 @@ configure_file(
344343
"${PROJECT_BINARY_DIR}/bin/nest_vars.sh" @ONLY
345344
)
346345

347-
configure_file(
348-
"${PROJECT_SOURCE_DIR}/doc/normaldoc.conf.in"
349-
"${PROJECT_BINARY_DIR}/doc/normaldoc.conf" @ONLY
350-
)
351-
352346
configure_file(
353347
"${PROJECT_SOURCE_DIR}/doc/fulldoc.conf.in"
354348
"${PROJECT_BINARY_DIR}/doc/fulldoc.conf" @ONLY
@@ -368,8 +362,4 @@ install( FILES LICENSE README.md
368362
DESTINATION ${CMAKE_INSTALL_DOCDIR}
369363
)
370364

371-
add_custom_target( install-nodoc
372-
COMMAND $(MAKE) NEST_INSTALL_NODOC=true install
373-
)
374-
375365
nest_print_config_summary()

Diff for: CONTRIBUTING.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Contribute to NEST
22

3-
The NEST simulator is a scientific tool and as such it is never finished and constantly changing to meet the needs of novel neuroscientific endeavors. Here you find the most important information on how you can contribute to NEST. This document is an excerpt from our [Contributing to NEST documentation](https://nest-simulator.readthedocs.io/en/latest/contribute/index.html), which provides more detailed information.
3+
The NEST Simulator is a scientific tool and as such it is never finished and constantly changing to meet the needs of novel neuroscientific endeavors. Here you find the most important information on how you can contribute to NEST. This document is an excerpt from our [Contributing to NEST documentation](https://nest-simulator.readthedocs.io/en/latest/contribute/index.html), which provides more detailed information.
44

55

66
* Make sure you have a [GitHub account](https://github.com/signup/free)

Diff for: SECURITY.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
# Security Policy
33

4-
The NEST simulator is research oriented software and as such is expected to
4+
The NEST Simulator is research oriented software and as such is expected to
55
run mainly in well protected environments. In case it is found that this
66
software can be used to violate security mechanisms, developers will try to
77
provide patches that mitigate the risk of this misuse.

Diff for: bin/nest-config.in

+8
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ Known values for OPTION are:
1616
--cflags print pre-processor and compiler flags
1717
--includes print includes
1818
--compiler print the compiler used to compile NEST
19+
--compiler-name Print the compiler name used to compile NEST
20+
--compiler-version Print the compiler version used to compile NEST
1921
--python-executable print full path to Python interpreter used
2022
--python-version print Python version string for interpreter
2123
--static-libraries print "ON" if configured for static libraries, "OFF" otherwise
@@ -71,6 +73,12 @@ while test $# -gt 0; do
7173
--compiler)
7274
echo "@CMAKE_CXX_COMPILER@"
7375
;;
76+
--compiler-name)
77+
echo "@CMAKE_CXX_COMPILER_ID@"
78+
;;
79+
--compiler-version)
80+
echo "@CMAKE_CXX_COMPILER_VERSION@"
81+
;;
7482
--python-executable)
7583
echo "@Python_EXECUTABLE@"
7684
;;

Diff for: build_support/check_code_style.sh

+4-37
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,11 @@ unset FILE_TO_BE_CHECKED
2828
GIT_START_SHA=master # If 'file=' is not specified all changed files in the commit range
2929
GIT_END_SHA=HEAD # '<master>..<HEAD>' are processed.
3030

31-
VERA=vera++ # The names of the static code analysis tools executables.
3231
CPPCHECK=cppcheck # CPPCHECK version 1.69 or later is required!
3332
CLANG_FORMAT=clang-format # CLANG-FORMAT version 13 is required!
3433
PEP8=pycodestyle
3534
PYCODESTYLE_IGNORES="E121,E123,E126,E226,E24,E704,W503,W504"
3635

37-
PERFORM_VERA=true # Perform VERA++ analysis.
3836
PERFORM_CPPCHECK=false # Skip CPPCHECK analysis.
3937
PERFORM_CLANG_FORMAT=true # Perform CLANG-FORMAT analysis.
4038
PERFORM_PEP8=true # Perform PEP8 analysis.
@@ -103,9 +101,6 @@ Options:
103101
--git-end=Git_SHA_value Hash value (Git SHA) at which Git ends the diff.
104102
Default: --git-start=HEAD
105103
106-
--vera++=exe The name of the VERA++ executable.
107-
Default: --vera++=vera++
108-
109104
--cppcheck=exe The name of the CPPCHECK executable.
110105
Default: --cppcheck=cppcheck
111106
Note: CPPCHECK version 1.69 or later is required.
@@ -119,9 +114,6 @@ Options:
119114
--pep8=exe The name of the PEP8 executable.
120115
Default: --pep8=pycodestyle
121116
122-
--perform-vera=on/off Turn on/off VERA++ analysis.
123-
Default: --perform-vera=on
124-
125117
--perform-cppcheck=on/off Turn on/off CPPCHECK analysis.
126118
Default: --perform-cppcheck=off
127119
@@ -164,9 +156,6 @@ while test $# -gt 0 ; do
164156
--git-end=*)
165157
GIT_END_SHA="$( echo "$1" | sed 's/^--git-end=//' )"
166158
;;
167-
--vera++=*)
168-
VERA="$( echo "$1" | sed 's/^--vera++=//' )"
169-
;;
170159
--cppcheck=*)
171160
CPPCHECK="$( echo "$1" | sed 's/^--cppcheck=//' )"
172161
;;
@@ -176,20 +165,6 @@ while test $# -gt 0 ; do
176165
--pep8=*)
177166
PEP8="$( echo "$1" | sed 's/^--pep8=//' )"
178167
;;
179-
--perform-vera=*)
180-
value="$( echo "$1" | sed 's/^--perform-vera=//' )"
181-
case "$value" in
182-
on)
183-
PERFORM_VERA=true
184-
;;
185-
off)
186-
PERFORM_VERA=false
187-
;;
188-
*)
189-
error_unknown_option "$1"
190-
;;
191-
esac
192-
;;
193168
--perform-cppcheck=*)
194169
value="$( echo "$1" | sed 's/^--perform-cppcheck=//' )"
195170
case "$value" in
@@ -239,7 +214,7 @@ while test $# -gt 0 ; do
239214
shift
240215
done
241216

242-
if ! $PERFORM_VERA && ! $PERFORM_CPPCHECK && ! $PERFORM_CLANG_FORMAT && ! $PERFORM_PEP8; then
217+
if ! $PERFORM_CPPCHECK && ! $PERFORM_CLANG_FORMAT && ! $PERFORM_PEP8; then
243218
error_no_analysis
244219
fi
245220

@@ -248,13 +223,6 @@ fi
248223
EXTENDED_REGEX_PARAM=r
249224
/bin/sh -c "echo 'hello' | sed -${EXTENDED_REGEX_PARAM} 's/[aeou]/_/g' " >/dev/null 2>&1 || EXTENDED_REGEX_PARAM=E
250225

251-
# Verify the VERA++ installation.
252-
if $PERFORM_VERA; then
253-
$VERA ./nest/main.cpp >/dev/null 2>&1 || error_exit "Failed to verify the VERA++ installation. Executable: $VERA"
254-
$VERA --profile nest ./nest/main.cpp >/dev/null 2>&1 || error_exit \
255-
"Failed to verify the VERA++ installation. The profile 'nest' could not be found. See https://nest-simulator.readthedocs.io/en/latest/contribute/coding_guidelines_cpp.html#vera-profile-nest"
256-
fi
257-
258226
# Verify the CPPCHECK installation. CPPCHECK version 1.69 or later is required.
259227
# Previous versions of CPPCHECK halted on sli/tokenutils.cc (see https://github.com/nest/nest-simulator/pull/79)
260228
if $PERFORM_CPPCHECK; then
@@ -303,15 +271,14 @@ fi
303271
RUNS_ON_CI=false
304272

305273
unset NEST_VPATH # These command line arguments are placeholders and not required here.
306-
IGNORE_MSG_VERA=false # They are needed when running the static code analysis script within
307274
IGNORE_MSG_CPPCHECK=false # the CI build environment.
308275
IGNORE_MSG_CLANG_FORMAT=false
309276
IGNORE_MSG_PYCODESTYLE=false
310277

311278
./build_support/static_code_analysis.sh "$RUNS_ON_CI" "$INCREMENTAL" "$file_names" "$NEST_VPATH" \
312-
"$VERA" "$CPPCHECK" "$CLANG_FORMAT" "$PEP8" \
313-
"$PERFORM_VERA" "$PERFORM_CPPCHECK" "$PERFORM_CLANG_FORMAT" "$PERFORM_PEP8" \
314-
"$IGNORE_MSG_VERA" "$IGNORE_MSG_CPPCHECK" "$IGNORE_MSG_CLANG_FORMAT" "$IGNORE_MSG_PYCODESTYLE" \
279+
"$CPPCHECK" "$CLANG_FORMAT" "$PEP8" \
280+
"$PERFORM_CPPCHECK" "$PERFORM_CLANG_FORMAT" "$PERFORM_PEP8" \
281+
"$IGNORE_MSG_CPPCHECK" "$IGNORE_MSG_CLANG_FORMAT" "$IGNORE_MSG_PYCODESTYLE" \
315282
"$PYCODESTYLE_IGNORES"
316283
if [ $? -gt 0 ]; then
317284
exit $?

Diff for: build_support/ci_build.sh

+5-10
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ if [ "$xNEST_BUILD_TYPE" = "STATIC_CODE_ANALYSIS" ]; then
4545
echo "+ S T A T I C C O D E A N A L Y S I S +"
4646
echo "+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"
4747

48-
echo "MSGBLD0010: Initializing VERA++ static code analysis."
48+
echo "MSGBLD0010: Initializing static code analysis."
4949
export PYTHON_EXECUTABLE="$(which python3)"
5050
export PYTHON_INCLUDE_DIR="`python3 -c "import sysconfig; print(sysconfig.get_path('include'))"`"
5151
export PYLIB_BASE="lib`basename $PYTHON_INCLUDE_DIR`"
@@ -54,9 +54,6 @@ if [ "$xNEST_BUILD_TYPE" = "STATIC_CODE_ANALYSIS" ]; then
5454
echo "--> Detected PYTHON_LIBRARY=$PYTHON_LIBRARY"
5555
echo "--> Detected PYTHON_INCLUDE_DIR=$PYTHON_INCLUDE_DIR"
5656
CONFIGURE_PYTHON="-DPYTHON_EXECUTABLE=$PYTHON_EXECUTABLE -DPYTHON_LIBRARY=$PYTHON_LIBRARY -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE_DIR"
57-
# Add the NEST profile to the VERA++ profiles.
58-
sudo cp build_support/vera++.profile /usr/lib/vera++/profiles/nest
59-
echo "MSGBLD0020: VERA++ initialization completed."
6057
if [ ! -f "$HOME/.cache/bin/cppcheck" ]; then
6158
echo "MSGBLD0030: Installing CPPCHECK version 1.69."
6259
# Build cppcheck version 1.69
@@ -92,21 +89,18 @@ if [ "$xNEST_BUILD_TYPE" = "STATIC_CODE_ANALYSIS" ]; then
9289
# Set the command line arguments for the static code analysis script and execute it.
9390
9491
# The names of the static code analysis tools executables.
95-
VERA=vera++
9692
CPPCHECK=cppcheck
9793
CLANG_FORMAT=clang-format
9894
PEP8=pycodestyle
9995
PYCODESTYLE_IGNORES="E121,E123,E126,E226,E24,E704,W503,W504"
10096
10197
# Perform or skip a certain analysis.
102-
PERFORM_VERA=true
10398
PERFORM_CPPCHECK=true
10499
PERFORM_CLANG_FORMAT=true
105100
PERFORM_PEP8=true
106101
107102
# The following command line parameters indicate whether static code analysis error messages
108103
# will cause the CI build to fail or are ignored.
109-
IGNORE_MSG_VERA=false
110104
IGNORE_MSG_CPPCHECK=true
111105
IGNORE_MSG_CLANG_FORMAT=false
112106
IGNORE_MSG_PYCODESTYLE=false
@@ -117,9 +111,9 @@ if [ "$xNEST_BUILD_TYPE" = "STATIC_CODE_ANALYSIS" ]; then
117111
118112
chmod +x build_support/static_code_analysis.sh
119113
./build_support/static_code_analysis.sh "$RUNS_ON_CI" "$INCREMENTAL" "$file_names" "$NEST_VPATH" \
120-
"$VERA" "$CPPCHECK" "$CLANG_FORMAT" "$PEP8" \
121-
"$PERFORM_VERA" "$PERFORM_CPPCHECK" "$PERFORM_CLANG_FORMAT" "$PERFORM_PEP8" \
122-
"$IGNORE_MSG_VERA" "$IGNORE_MSG_CPPCHECK" "$IGNORE_MSG_CLANG_FORMAT" "$IGNORE_MSG_PYCODESTYLE" \
114+
"$CPPCHECK" "$CLANG_FORMAT" "$PEP8" \
115+
"$PERFORM_CPPCHECK" "$PERFORM_CLANG_FORMAT" "$PERFORM_PEP8" \
116+
"$IGNORE_MSG_CPPCHECK" "$IGNORE_MSG_CLANG_FORMAT" "$IGNORE_MSG_PYCODESTYLE" \
123117
"$PYCODESTYLE_IGNORES"
124118
125119
exit $?
@@ -291,6 +285,7 @@ echo "MSGBLD0236: $(pwd)\$ cmake \
291285
-DCMAKE_CXX_FLAGS=\"$CXX_FLAGS\" \
292286
-Dwith-optimize=ON \
293287
-Dwith-warning=ON \
288+
-Dwith-userdoc=OFF \
294289
$CONFIGURE_BOOST \
295290
$CONFIGURE_OPENMP \
296291
$CONFIGURE_MPI \

0 commit comments

Comments
 (0)