Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
591 commits
Select commit Hold shift + click to select a range
4366e84
Adapt test to pytest-ng
heplesser Jan 23, 2025
b4ea7a5
Fix support for tripartite
heplesser Jan 23, 2025
7ab981c
Fix test
heplesser Jan 23, 2025
0200ae0
Can now pass int values for double params
heplesser Jan 23, 2025
e644660
Fix openmp-check
heplesser Jan 23, 2025
b70dc9d
Correctly handle missing senders/targets specs in weight recorder
heplesser Jan 23, 2025
3e159e9
weight_recorder::Parameters_ elements must be initialized with empty …
heplesser Jan 23, 2025
65f66f9
Correctly read out pool size from param dict
heplesser Jan 23, 2025
8c96b19
Properly handle grid anchors
heplesser Jan 23, 2025
998a209
Removed test that is no longer sensible
heplesser Jan 23, 2025
b235bea
Adapted test to new Create() behavior
heplesser Jan 23, 2025
831522a
Fix connect_arrays
heplesser Jan 23, 2025
be2451b
Fix test
heplesser Jan 23, 2025
a08d38f
Fix further test
heplesser Jan 23, 2025
74fb20f
Adjust test to new syntax
heplesser Jan 23, 2025
6e464f3
Proper array comparison
heplesser Jan 23, 2025
f9675f6
Test for correct exception in test
heplesser Jan 23, 2025
bfffd05
Adjusted test
heplesser Jan 23, 2025
1aa2832
Skip test that does not longer work due to changes to Create() behavior
heplesser Jan 23, 2025
4193016
Fix test
heplesser Jan 23, 2025
c94f1f3
Fix parameter names
heplesser Jan 23, 2025
e753fd1
Fix test
heplesser Jan 23, 2025
57d63a1
Reverting parameter.h to 949f4...
heplesser Jan 23, 2025
eb3fd64
Fix parameter arithmetic on py level
heplesser Jan 23, 2025
6ad111f
Fix test
heplesser Jan 23, 2025
cfa559b
Fix test
heplesser Jan 23, 2025
f197f9a
Fix bug in sp_manager param setting
heplesser Jan 24, 2025
349a288
Corrected handling of sp syn_specs
heplesser Jan 24, 2025
9f75d45
Work-around for syn_spec access checks in disconnect
heplesser Jan 24, 2025
bd4a6fa
Fixed test
heplesser Jan 24, 2025
f983c0b
Support conversion of vec<long> to vec<double>
heplesser Jan 24, 2025
1eae9aa
Add some consts
heplesser Jan 25, 2025
5b9133d
Perform params access checks only if there were local neurons
heplesser Jan 25, 2025
f1f02a5
Make Disconnect() Py/C++ interface consistent with Connect()
heplesser Jan 25, 2025
2c1221f
Implemented alternative dict access checking
heplesser Jan 26, 2025
e09889b
Correctly place code for template method specialization
heplesser Jan 31, 2025
2a06c1d
Adapt NESTError
heplesser Feb 3, 2025
efac3d0
Fix Music-related exceptions and remove possible buffer-size problem
heplesser Feb 3, 2025
589fd28
Add todo-question
heplesser Feb 3, 2025
559c8d5
Switch back to requiring only C++17
heplesser Feb 3, 2025
e61dccf
Remove all remaining references to readline
heplesser Feb 3, 2025
135230c
Remove last traces of ditionary_access_flag_manager
heplesser Feb 3, 2025
674d2ce
Remove last occurences of DictionaryDatum
heplesser Feb 3, 2025
1eacaad
Remove include for no longer existing file.
heplesser Feb 3, 2025
842d18e
Add missing flag for robust openmp support
heplesser Feb 3, 2025
857d643
Correct dictionary entry handling for Sonata
heplesser Feb 3, 2025
228c100
Remove CI case without Python as it makes no sense for pynest-ng
heplesser Feb 4, 2025
32626ec
Use all-caps OPENMP_FOUND for consistency with ProcessOptions
heplesser Feb 4, 2025
12f352e
Attempting to fix pytest invocation problems
heplesser Feb 4, 2025
f1a4e43
Make sure we use c++17 without GNU extensions
heplesser Feb 6, 2025
303a74c
Fix handling of not requires_many_cores flag for mpi tests
heplesser Feb 6, 2025
2043300
Run pytests as python -m pytest again, run also serial tests via mpie…
heplesser Feb 6, 2025
ba75730
Fix seg-fault issues when initializing NEST
med-ayssar Feb 10, 2025
96291c1
Run tests without MPI context
med-ayssar Feb 10, 2025
73a762b
Provide memory_size as kernel attribute
heplesser Feb 11, 2025
da00968
Fix C++ includes
heplesser Feb 11, 2025
902c18b
Revert changes from do_tests
med-ayssar Feb 11, 2025
d17faa5
Merge pull request #30 from med-ayssar/debug-pytest-segfault
heplesser Feb 11, 2025
492e51a
Slight prettyfication
heplesser Feb 11, 2025
b05e246
Replace C-style by static_cast
heplesser Feb 11, 2025
5511c69
Remove obsolete option
heplesser Feb 11, 2025
e5d932c
Move examples back to pynest/examples
heplesser Feb 11, 2025
a844eb9
No longer need mpiexec to pytest in serial case
heplesser Feb 11, 2025
259da2e
Ensure set_status works correctly for rank siblings of devices
heplesser Feb 13, 2025
5e4efb2
Fix bug in blockvector
heplesser Feb 13, 2025
e91c63a
Install examples
heplesser Feb 13, 2025
bcd93ec
Update Sonata example detection in test
heplesser Feb 13, 2025
87d07df
Fix set_status() unread element detection with MPI
heplesser Feb 13, 2025
828a197
Fix serialize data for nest server
babsey Feb 21, 2025
5e281b2
Merge pull request #31 from babsey/fix-serialize-data
heplesser Feb 24, 2025
307fb90
Merge branch 'master' of github.com:nest/nest-simulator into pynest-n…
heplesser Apr 15, 2025
539d9e6
Adjusted merge result to pynest-ng, mainly stopwatch and eprop; compi…
heplesser Apr 15, 2025
922485b
Return long instead of enum value to pynest
heplesser Apr 15, 2025
2ff5fc3
Adjust tests to pynest-ng
heplesser Apr 15, 2025
125671c
Hike isort runner to ubuntu-22.04
heplesser Apr 15, 2025
49341f6
Make GetStatus/SetStatus available again, marked as deprecated
heplesser Jun 18, 2025
ddec262
Merge branch 'master' of github.com:nest/nest-simulator into png_merge
heplesser Jun 24, 2025
125dad1
Merge branch 'master' of github.com:nest/nest-simulator into pynest-ng
heplesser Jun 24, 2025
664f582
Adapted tests to pynest-ng and modernized
heplesser Jun 24, 2025
31d3fd4
Working on treating verbosity as normal NEST kernel parameter
heplesser Jun 25, 2025
be6475d
Merge branch 'master' of github.com:nest/nest-simulator into png-verb…
heplesser Jun 27, 2025
2b29c1e
Merge branch 'master' of github.com:nest/nest-simulator into pynest-ng
heplesser Jun 27, 2025
16a66fc
Adjust test to pynest-ng
heplesser Jun 27, 2025
8c8f7df
Support sending empty lists from Python to NEST
heplesser Jun 28, 2025
efbfe93
Increase memory footprint for memsize test
heplesser Jun 29, 2025
4f5287f
Merge branch 'pynest-ng' into png-verbosity
heplesser Jun 29, 2025
93c0474
Verbosity now plain kernel attribute; severity_t enum converted to en…
heplesser Jun 29, 2025
722e933
Adapt all examples, tests and documentation to new verbosity scheme.
heplesser Sep 23, 2025
509b684
Merge branch 'master' into merge_master
heplesser Sep 23, 2025
30a4aee
Adapt sionlib backend to new verbosity scheme
heplesser Sep 23, 2025
4bdbb8e
Remove whitespace on empty line
heplesser Sep 24, 2025
4373d2b
Fixed ERROR label.
heplesser Sep 24, 2025
9d2e6cf
Reliably test for availability of working mpi4py.
heplesser Sep 24, 2025
60b35c4
Fix glitch in test
heplesser Sep 24, 2025
4629a0d
Register pytest marker
heplesser Sep 24, 2025
a22dd1a
Properly finalize MPI on exit
heplesser Sep 24, 2025
f4478ff
Disable test for debugging
heplesser Sep 25, 2025
8cf1730
Revert "Disable test for debugging"
heplesser Sep 25, 2025
0d30d8d
Adjusted datatype to be in sync with master branch
heplesser Sep 25, 2025
4af6c7b
Detect missing phases in testsuite
heplesser Sep 25, 2025
4d52922
Proper shell tests
heplesser Sep 25, 2025
817c241
Do not expect sli2py_mpi tests if no threads
heplesser Sep 25, 2025
1b6523d
Fix sli2py_mpi counting
heplesser Sep 25, 2025
23b2765
Fix argument handling
heplesser Sep 25, 2025
3dabd3d
Improve test for GetNodes()
heplesser Sep 26, 2025
11b807d
Fix various bugs in GetNodes
heplesser Sep 26, 2025
d8bb221
Fix node filtering logic in GetNodes()
heplesser Sep 26, 2025
7ed6a85
Made test_GetNodes MPI-safe
heplesser Sep 26, 2025
0d09026
Simplify and thread-parallelize code for GetNode
heplesser Sep 26, 2025
da99c32
Make tests safe if NEST was built without threads
heplesser Sep 26, 2025
e9cfdea
Merge branch 'master' into pynest-ng
heplesser Nov 22, 2025
dd3748d
Remove SLI test phases from expectation list.
heplesser Nov 22, 2025
b094eeb
Fix merge-related error in get_nodes()
heplesser Nov 22, 2025
f28b6ad
Adapt to NESTError syntax.
heplesser Nov 22, 2025
2b01671
Correctly set individual_spike_train parameter as defaults.
heplesser Nov 22, 2025
3169510
Initialize pulsepacket_generator with double literal to avoid type co…
heplesser Nov 23, 2025
e4e80ea
Set individual_spike_trains as Default
heplesser Nov 23, 2025
ee80efb
Improved deprecation message for Set/GetStatus()
heplesser Nov 24, 2025
d8d87c2
Removed unnecessary .0 from numbers
heplesser Nov 24, 2025
845beaa
Merge branch 'master' into pynest-ng
heplesser Nov 24, 2025
c2614ec
Adjust pytest.raises() tests to PyNEST-NG semantics.
heplesser Nov 24, 2025
7fefac7
Add missing markers to conftest
heplesser Nov 24, 2025
e0cd2be
Let testsuite handle missing music gracefully
heplesser Nov 24, 2025
d711bd7
Reviewed PyNEST-NG Todos
heplesser Nov 25, 2025
561e98a
Reviewed PyNEST-NG Todos
heplesser Nov 25, 2025
4f36387
Removed redundant dict access check
heplesser Nov 25, 2025
6670c33
Modernised copy from vector to ntree
heplesser Nov 25, 2025
9b3c41e
Remove unnecessary branch
heplesser Nov 25, 2025
58efff9
Used correct marker for missing gsl
heplesser Nov 25, 2025
0e19dac
Remove deprecated np.in1d
heplesser Nov 25, 2025
51dbce8
Avoid zero to neg power in some tests
heplesser Nov 25, 2025
4cd2fff
Make conversion to NumPy Array NumPy 2.0 compatible, see https://nump…
heplesser Nov 26, 2025
fc9731c
Improve checking of parameter validity when setting node or connectio…
heplesser Nov 26, 2025
1cec956
Remove spurious warning
heplesser Nov 26, 2025
4f62385
Deactivate plotting in tests.
heplesser Nov 26, 2025
e543837
Remove comment no longer pertinent
heplesser Nov 26, 2025
bbb62a7
Remove todo note that did not seem pertinent.
heplesser Nov 26, 2025
00e5a5a
Remove done TODO
heplesser Nov 26, 2025
117cecb
Marked todo as future
heplesser Nov 26, 2025
3a6fa90
Remove done TODO
heplesser Nov 26, 2025
4fffbaa
Remove todo note that did not seem pertinent any longer
heplesser Nov 26, 2025
a9e9b55
Remove todo note that did not seem pertinent any longer
heplesser Nov 26, 2025
513d04a
Mark todos for future work
heplesser Nov 26, 2025
bbb5ce4
Add std_ prefix to std:: names imported in pyx
heplesser Nov 26, 2025
5f90fc4
Updated TODOs
heplesser Nov 26, 2025
863aa49
Remove unused code and improve type check.
heplesser Nov 26, 2025
6e145c5
Remove spurious code.
heplesser Nov 26, 2025
33bbd32
Improve test
heplesser Nov 26, 2025
0956f76
Update TODOs
heplesser Nov 26, 2025
5983477
Remove test that is no longer pertinent.
heplesser Nov 26, 2025
3702740
Allow passing arrays of long where double is expected and handle empt…
heplesser Nov 26, 2025
e7400ad
Cleaner code by introducing dictionary::get_vector()
heplesser Nov 27, 2025
08aeeed
Implement SyncProcesses
heplesser Nov 27, 2025
7ce5c36
Implement support for mask intersection, union and difference
heplesser Nov 28, 2025
f0a23ea
Add test for mask operators
heplesser Nov 28, 2025
a38bda4
Extend test to cover node selection.
heplesser Nov 28, 2025
c2dd0e3
Merge branch 'mask_op_tests_and_doc' into pynest-ng
heplesser Nov 28, 2025
666e355
Safely allow casting to integer values including negative values.
heplesser Nov 28, 2025
b0da66e
Label todo as pynest future
heplesser Nov 28, 2025
9337c21
Fixed flake8 issue and refactored
heplesser Nov 28, 2025
3f91a2d
Adapt run_examples.sh (not done)
heplesser Nov 29, 2025
8878c45
Replace requests for system bash (#!/bin/bash) with requests for bash…
heplesser Nov 29, 2025
a23d4ad
Started on "What' new" for PyNEST-NG
heplesser Nov 29, 2025
ef19f31
Include -std= flag in nest-config and remove unsupported cmake flag
heplesser Nov 29, 2025
7cbefee
Ensure user-supplied OpenMP lib info is included properly in nest-config
heplesser Nov 29, 2025
61d7121
Protect against passing non-definite values to SetDefaults
heplesser Nov 29, 2025
ad4277d
Add developer doc for update_value_param()
heplesser Nov 29, 2025
b1e4b8d
Return signed int from get_integer()
heplesser Nov 29, 2025
41a33d2
Support loading extension modules
heplesser Nov 29, 2025
807f6c8
Merge branch 'master' into pynest-ng
heplesser Nov 30, 2025
107faca
Adapt test for pynest-ng and fix dict access check for mask creation.
heplesser Nov 30, 2025
185a0a7
Add "accident preventer" and preliminary regression test for #3659
heplesser Nov 30, 2025
efe7d2a
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
459812c
Adapt test to PyNEST-NG syntax
heplesser Dec 1, 2025
adb8c98
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
9d94215
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
9ccb96d
Fix GetStatus semantics
heplesser Dec 1, 2025
b67a17b
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
183656e
Fix error detection
heplesser Dec 1, 2025
0e1fb00
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
0bfa339
Fix error detection
heplesser Dec 1, 2025
f58f052
Remove stray self.__version__
heplesser Dec 1, 2025
1f38fc6
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
86146f5
PyNEST-NG music check
heplesser Dec 1, 2025
83b3dc1
tics_per_ms must be integer
heplesser Dec 1, 2025
0cd75b1
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
a312019
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
1c48c9e
Adapt error semantics to pynest-ng
heplesser Dec 1, 2025
b0289dd
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
9723c04
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
2d8b228
Fix filename
heplesser Dec 1, 2025
a285a62
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
970f948
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
18644ac
Adapt to pynest-ng
heplesser Dec 1, 2025
e12d61f
Merge branch 'master' into pynest-ng
heplesser Dec 1, 2025
fde8f8f
Adapt to PyNEST-NG
heplesser Dec 1, 2025
f6363cd
Merge branch 'master' into pynest-ng
heplesser Dec 2, 2025
f9e9a7f
Adjust to PyNEST-NG
heplesser Dec 2, 2025
79bc95b
Remove lockptr code
heplesser Dec 2, 2025
67da6af
Rename file for consistency
heplesser Dec 2, 2025
323849d
Replace dictionary by Dictionary
heplesser Dec 2, 2025
5cb0d24
Fix copyright header
heplesser Dec 2, 2025
16dc1a6
Merge branch 'master' into pynest-ng
heplesser Dec 2, 2025
db22f01
Merge branch 'master' into pynest-ng
heplesser Dec 2, 2025
5a67b46
Working towards restoring SLI semantics for GetStatus
heplesser Dec 2, 2025
3ae5e55
Experimenting.
heplesser Dec 2, 2025
27f02ec
Handle nc.get() in a way consistent with NEST 3.9
heplesser Dec 2, 2025
524935f
Remove unused get_integer method
heplesser Dec 2, 2025
e6edde1
Merge branch 'master' into pynest-ng
heplesser Dec 2, 2025
7119cd0
Modernize test
heplesser Dec 2, 2025
d53d010
Merge branch 'master' into pynest-ng
heplesser Dec 3, 2025
ecce457
Merge branch 'master' into pynest-ng
heplesser Dec 3, 2025
64bd4c1
Adjust to PyNEST-NG semantics
heplesser Dec 3, 2025
3019d39
Merge branch 'master' into pynest-ng
heplesser Dec 3, 2025
41db091
Merge branch 'master' into pynest-ng
heplesser Dec 3, 2025
824e621
Adapt to PyNEST-NG
heplesser Dec 3, 2025
1c071a9
Merge branch 'master' into pynest-ng
heplesser Dec 3, 2025
4c4e635
remove instances of sli mentions from docs
jessica-mitchell Dec 3, 2025
240e792
Merge branch 'master' into pynest-ng
heplesser Dec 3, 2025
fa56c95
Add support for disabling dict access checking
heplesser Dec 3, 2025
1d8d200
Adapt to PyNEST-NG
heplesser Dec 3, 2025
289aa28
Merge branch 'master' into pynest-ng
heplesser Dec 3, 2025
c801063
Merge branch 'master' into pynest-ng
heplesser Dec 3, 2025
278c876
Improve comment and replace bitwise with logical xor
heplesser Dec 3, 2025
68fc839
Remove unused method.
heplesser Dec 3, 2025
b2ffc76
Remove mentions of SLI
heplesser Dec 3, 2025
076c1e6
Remove unnecessary scope specifiers
heplesser Dec 3, 2025
70866f3
A bit of tidying up in response to code review.
heplesser Dec 3, 2025
60bf6d7
Remove explicit any_cast outside Dictionary where possible and update…
heplesser Dec 4, 2025
129dc53
Fix rst syntax.
heplesser Dec 4, 2025
6c05850
Apply RST syntax fixes suggested by jessica-mitchell
heplesser Dec 4, 2025
701b3f7
Remove stray text
heplesser Dec 4, 2025
bfffc94
Merge branch 'pynest-ng' of github.com:heplesser/nest-simulator into …
heplesser Dec 4, 2025
89ea67b
Merge branch 'master' into pynest-ng
heplesser Dec 4, 2025
3884e20
Adjust data type for easier interaction with Python
heplesser Dec 4, 2025
6af4960
Re-add early check for unaccessed dict entries
heplesser Dec 4, 2025
0104f12
Fix rounding in example
heplesser Dec 4, 2025
21257dd
Merge branch 'master' into pynest-ng
heplesser Dec 4, 2025
b854765
Merge branch 'master' into pynest-ng
heplesser Dec 4, 2025
d1de5d8
Allow passing param dict as second argument instead of number of neur…
heplesser Dec 4, 2025
5dfbac5
Adapt examples to PyNEST-NG
heplesser Dec 4, 2025
72b808a
Trying to fix rst code blocks
heplesser Dec 4, 2025
81d541e
Further attempts at fixing rst
heplesser Dec 4, 2025
2127a5c
Specify Python explicitly
heplesser Dec 4, 2025
a01981b
Merge pull request #35 from jessica-mitchell/doc-changes
heplesser Dec 5, 2025
e089e47
Point to Pytest as test framework.
heplesser Dec 5, 2025
18d4a27
Added info about build_info dict and structured document a bit more
heplesser Dec 5, 2025
dc8673d
Merge branch 'master' into pynest-ng
heplesser Dec 5, 2025
e9b612f
Merge branch 'master' into pynest-ng
heplesser Dec 5, 2025
1c84eb1
Adapt test to PyNEST-NG
heplesser Dec 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 0 additions & 4 deletions .github/workflows/nestbuildmatrix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -581,8 +581,6 @@ jobs:
# available use flags (all default to "OFF"):
# openmp, mpi, python, gsl, ltdl, boost, sionlib, libneurosim, optimize, warning, userdoc, music, readline
use:
- "optimize, warning"
- "boost, optimize, warning"
- "openmp, python, gsl, ltdl, boost, optimize, warning"
- "mpi, python, gsl, ltdl, boost, optimize, warning"
- "openmp, mpi, python, gsl, ltdl, boost, hdf5, sionlib, libneurosim, optimize, warning, music, detailed-timers, threaded-timers, mpi-sync-timer"
Expand Down Expand Up @@ -778,7 +776,6 @@ jobs:
-Dwith-python=${{ contains(matrix.use, 'python') && 'ON' || 'OFF' }} \
-Dwith-gsl=${{ contains(matrix.use, 'gsl') && 'ON' || 'OFF' }} \
-Dwith-ltdl=${{ contains(matrix.use, 'ltdl') && 'ON' || 'OFF' }} \
-Dwith-readline=${{ contains(matrix.use, 'readline') && 'ON' || 'OFF' }} \
-Dwith-hdf5=${{ contains(matrix.use, 'hdf5') && 'ON' || 'OFF' }} \
-Dwith-sionlib=${{ contains(matrix.use, 'sionlib') && '$HOME/.cache/sionlib.install' || 'OFF' }} \
-Dwith-libneurosim=${{ contains(matrix.use, 'libneurosim') && '$HOME/.cache/libneurosim.install' || 'OFF' }} \
Expand Down Expand Up @@ -910,7 +907,6 @@ jobs:
-Dwith-python=${{ contains(matrix.use, 'python') && 'ON' || 'OFF' }} \
-Dwith-gsl=${{ contains(matrix.use, 'gsl') && 'ON' || 'OFF' }} \
-Dwith-ltdl=${{ contains(matrix.use, 'ltdl') && 'ON' || 'OFF' }} \
-Dwith-readline=${{ contains(matrix.use, 'readline') && 'ON' || 'OFF' }} \
-Dwith-hdf5=${{ contains(matrix.use, 'hdf5') && 'ON' || 'OFF' }} \
-Dwith-sionlib=${{ contains(matrix.use, 'sionlib') && '$HOME/.cache/sionlib.install' || 'OFF' }} \
-Dwith-libneurosim=${{ contains(matrix.use, 'libneurosim') && '$HOME/.cache/libneurosim.install' || 'OFF' }} \
Expand Down
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@ repos:
"testsuite/run_test.sh",
"testsuite/do_tests.sh",
"testsuite/junit_xml.sh",
"examples/run_examples.sh",
"examples/list_examples.sh",
"pynest/examples/run_examples.sh",
"pynest/examples/list_examples.sh",
]

- repo: https://github.com/pre-commit/mirrors-clang-format
Expand Down
2 changes: 1 addition & 1 deletion .pylintrc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
options = unneeded-not, line-too-long, unnecessary-semicolon, trailing-whitespace, missing-final-newline, bad-indentation, multiple-statements, bare-except
ignore = CVS .git conda env __pycache__ .pytest_cache .mypy_cache

disable = no-member, redefined-outer-name, invalid-name, consider-using-f-string, wrong-import-order, missing-function-docstring, missing-method-docstring, missing-class-docstring, attribute-defined-outside-init, no-else-return, cell-var-from-loop, import-error, pointless-string-statement, unused-import, redefined-builtin, superfluous-parens, unused-variable, too-many-locals, consider-using-from-import, consider-using-enumerate, no-name-in-module, too-many-arguments, too-many-instance-attributes, import-outside-toplevel, too-few-public-methods, cyclic-import, missing-module-docstring, unidiomatic-typecheck, dangerous-default-value, unused-argument, use-dict-literal, exec-used, no-self-use, too-many-statements, ungrouped-imports, consider-using-sys-exit, too-many-statements, redundant-u-string-prefix, protected-access, consider-using-dict-comprehension, no-else-raise, too-many-nested-blocks, use-a-generator, reimported, undefined-variable, too-many-branches, raise-missing-from, trailing-comma-tuple, unspecified-encoding, consider-using-with, f-string-without-interpolation, broad-except, unnecessary-pass, global-statement, too-many-lines, consider-merging-isinstance, redefined-argument-from-local, global-variable-undefined, use-implicit-booleaness-not-len, inconsistent-return-statements, consider-using-in, inconsistent-return-statements, keyword-arg-before-vararg, consider-using-dict-items, import-self, fixme, c-extension-no-member, too-many-public-methods, consider-iterating-dictionary, consider-using-max-builtin, super-with-arguments, expression-not-assigned, unnecessary-comprehension, no-self-argument, chained-comparison, undefined-loop-variable, empty-docstring, use-maxsplit-arg, pointless-statement, wrong-import-position, redundant-unittest-assert, eval-used, not-callable, invalid-unary-operand-type, consider-using-generator, R0801, unnecessary-dunder-call, logging-fstring-interpolation, consider-using-get, useless-object-inheritance, unrecognized-option, unknown-option-value, useless-option-value
disable = no-member, redefined-outer-name, invalid-name, consider-using-f-string, wrong-import-order, missing-function-docstring, missing-method-docstring, missing-class-docstring, attribute-defined-outside-init, no-else-return, cell-var-from-loop, import-error, pointless-string-statement, unused-import, redefined-builtin, superfluous-parens, unused-variable, too-many-locals, consider-using-from-import, consider-using-enumerate, no-name-in-module, too-many-arguments, too-many-instance-attributes, too-many-return-statements, import-outside-toplevel, too-few-public-methods, cyclic-import, missing-module-docstring, unidiomatic-typecheck, dangerous-default-value, unused-argument, use-dict-literal, exec-used, no-self-use, too-many-statements, ungrouped-imports, consider-using-sys-exit, too-many-statements, redundant-u-string-prefix, protected-access, consider-using-dict-comprehension, no-else-raise, too-many-nested-blocks, use-a-generator, reimported, undefined-variable, too-many-branches, raise-missing-from, trailing-comma-tuple, unspecified-encoding, consider-using-with, f-string-without-interpolation, broad-except, unnecessary-pass, global-statement, too-many-lines, consider-merging-isinstance, redefined-argument-from-local, global-variable-undefined, use-implicit-booleaness-not-len, inconsistent-return-statements, consider-using-in, inconsistent-return-statements, keyword-arg-before-vararg, consider-using-dict-items, import-self, fixme, c-extension-no-member, too-many-public-methods, consider-iterating-dictionary, consider-using-max-builtin, super-with-arguments, expression-not-assigned, unnecessary-comprehension, no-self-argument, chained-comparison, undefined-loop-variable, empty-docstring, use-maxsplit-arg, pointless-statement, wrong-import-position, redundant-unittest-assert, eval-used, not-callable, invalid-unary-operand-type, consider-using-generator, R0801, unnecessary-dunder-call, logging-fstring-interpolation, consider-using-get, useless-object-inheritance, unrecognized-option, unknown-option-value, useless-option-value

const-naming-style = snake_case
method-naming-style = PascalCase
Expand Down
26 changes: 12 additions & 14 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,11 @@ cmake_minimum_required( VERSION 3.19 )
list( APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake )

project( nest CXX C )

set( CMAKE_CXX_STANDARD 17 )
set( CMAKE_CXX_STANDARD_REQUIRED True )
set( CMAKE_CXX_EXTENSIONS OFF ) # -std=c++17 instead of gnu++17

set( NEST_USER_EMAIL "users@nest-simulator.org" )

include( ColorMessages )
Expand Down Expand Up @@ -50,15 +55,14 @@ option( cythonize-pynest "Use Cython to cythonize pynestkernel.pyx [default=ON].

# select parallelization scheme
set( with-mpi OFF CACHE STRING "Build with MPI parallelization [default=OFF]." )
set( with-openmp ON CACHE BOOL "Build with OpenMP multi-threading [default=ON]. Optionally set OMP compiler flags." )
set( with-openmp ON CACHE BOOL "Build with OpenMP multi-threading [default=ON]." )

# external libraries
set( with-libneurosim OFF CACHE STRING "Build with libneurosim [default=OFF]. Optionally give the directory where libneurosim is installed." )
set( with-music OFF CACHE STRING "Build with MUSIC [default=OFF]. Optionally give the directory where MUSIC is installed." )
set( with-sionlib OFF CACHE STRING "Build with SIONlib [default=OFF]. Optionally give the directory where sionlib is installed." )
set( with-boost ON CACHE STRING "Build with Boost [default=ON]. To set a specific Boost installation, give the install path." )
set( with-hdf5 OFF CACHE STRING "Find a HDF5 library. To set a specific HDF5 installation, set install path. [default=ON]" )
set( with-readline ON CACHE STRING "Build with GNU Readline library [default=ON]. To set a specific library, give the install path." )
set( with-ltdl ON CACHE STRING "Build with ltdl library [default=ON]. To set a specific ltdl, give the install path. NEST uses ltdl for dynamic loading of external user modules." )
set( with-gsl ON CACHE STRING "Build with the GSL library [default=ON]. To set a specific library, give the install path." )

Expand All @@ -77,7 +81,6 @@ option( static-libraries "Build static executable and libraries [default=OFF]" O
set( with-optimize ON CACHE STRING "Enable user defined optimizations [default=ON (uses '-O2')]. When OFF, no '-O' flag is passed to the compiler. Explicit compiler flags can be given; separate multiple flags by ';'." )
set( with-warning ON CACHE STRING "Enable user defined warnings [default=ON (uses '-Wall')]. Separate multiple flags by ';'." )
set( with-debug OFF CACHE STRING "Enable user defined debug flags [default=OFF]. When ON, '-g' is used. Separate multiple flags by ';'." )
set( with-cpp-std "c++17" CACHE STRING "C++ standard to use for compilation [default='c++17']." )
set( with-intel-compiler-flags OFF CACHE STRING "User defined flags for the Intel compiler [default='-fp-model strict']. Separate multiple flags by ';'." )
set( with-libraries OFF CACHE STRING "Link additional libraries [default=OFF]. Give full path. Separate multiple libraries by ';'." )
set( with-includes OFF CACHE STRING "Add additional include paths [default=OFF]. Give full path without '-I'. Separate multiple include paths by ';'." )
Expand Down Expand Up @@ -130,7 +133,6 @@ get_target_triple( NEST_TARGET_TRIPLE NEST_TARGET_ARCH NEST_TARGET_VENDOR NEST_T
nest_process_with_python()
include( GNUInstallDirs )
nest_post_process_with_python()
nest_process_with_std()
nest_process_with_intel_compiler_flags()
nest_process_with_warning()
nest_process_with_libraries()
Expand All @@ -140,7 +142,6 @@ nest_process_static_libraries()
nest_process_tics_per_ms()
nest_process_tics_per_step()
nest_process_with_libltdl()
nest_process_with_readline()
nest_process_with_gsl()
nest_process_with_openmp()
nest_process_with_mpi()
Expand Down Expand Up @@ -222,13 +223,9 @@ add_custom_target( installcheck

add_subdirectory( doc )
add_subdirectory( bin )
add_subdirectory( examples )
add_subdirectory( build_support )
add_subdirectory( lib )
add_subdirectory( libnestutil )
add_subdirectory( models )
add_subdirectory( sli )
add_subdirectory( nest )
add_subdirectory( nestkernel )
add_subdirectory( thirdparty )
add_subdirectory( testsuite )
Expand Down Expand Up @@ -275,10 +272,7 @@ endforeach ()

# libraries required to link extension modules
set( MODULE_LINK_LIBS
"-lnest"
"-lsli"
"${LTDL_LIBRARIES}"
"${READLINE_LIBRARIES}"
"${GSL_LIBRARIES}"
"${LIBNEUROSIM_LIBRARIES}"
"${MUSIC_LIBRARIES}"
Expand All @@ -302,10 +296,10 @@ set( ALL_LIBS
set( ALL_INCLUDES_tmp
"${CMAKE_INSTALL_FULL_INCLUDEDIR}/nest"
"${LTDL_INCLUDE_DIRS}"
"${READLINE_INCLUDE_DIRS}"
"${GSL_INCLUDE_DIRS}"
"${LIBNEUROSIM_INCLUDE_DIRS}"
"${MUSIC_INCLUDE_DIRS}"
"${OpenMP_CXX_INCLUDE_DIRS}"
"${MPI_CXX_INCLUDE_PATH}"
"${BOOST_INCLUDE_DIR}" )
set( ALL_INCLUDES "" )
Expand Down Expand Up @@ -357,6 +351,10 @@ configure_file(

install( FILES LICENSE README.md
DESTINATION ${CMAKE_INSTALL_DOCDIR}
)
)

install( DIRECTORY examples/
DESTINATION ${CMAKE_INSTALL_DOCDIR}/examples
)

nest_print_config_summary()
2 changes: 1 addition & 1 deletion bin/nest-config.in
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ while test $# -gt 0; do
echo "@ALL_INCLUDES@"
;;
--cflags)
echo "@ALL_CXXFLAGS@"
echo "@ALL_CXXFLAGS@ -std=c++@CMAKE_CXX_STANDARD@"
;;
--libs)
echo "-L${prefix}/@CMAKE_INSTALL_LIBDIR@/nest @MODULE_LINK_LIBS@"
Expand Down
2 changes: 1 addition & 1 deletion bin/nest-server
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash

DAEMON="${NEST_SERVER_DAEMON:-0}"
HOST="${NEST_SERVER_HOST:-127.0.0.1}"
Expand Down
2 changes: 1 addition & 1 deletion build_support/check_copyright_headers.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ def eprint(*args, **kwargs):
EXIT_NO_SOURCE = 126

try:
heuristic_folders = "nest nestkernel build_support models .git"
heuristic_folders = "pynest nestkernel build_support models .git"
if "NEST_SOURCE" not in os.environ:
if all([name in os.listdir() for name in heuristic_folders.split()]):
os.environ["NEST_SOURCE"] = "."
Expand Down
2 changes: 1 addition & 1 deletion build_support/check_forbidden_types.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
#
# check_forbidden_types.sh
#
Expand Down
16 changes: 4 additions & 12 deletions build_support/check_unused_names.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ def eprint(*args, **kwargs):
EXIT_NO_SOURCE = 126

try:
heuristic_folders = "nest nestkernel build_support models .git"
heuristic_folders = "pynest nestkernel build_support models .git"
if "NEST_SOURCE" not in os.environ:
if all([name in os.listdir() for name in heuristic_folders.split()]):
os.environ["NEST_SOURCE"] = "."
Expand Down Expand Up @@ -93,17 +93,9 @@ def get_names(fname, pattern):
names_defined = set()
for names_file in names_files:
fname = os.path.join(source_dir, names_file)

names_header = get_names(fname + ".h", r"extern\s+const\s+Name\s+(\w+)\s*;")
names_source = get_names(fname + ".cpp", r"const\s+Name\s+(\w+)\(.*")

for h, s in zip(names_header, names_source):
if h != s:
eprint(f"[NAME] {names_file}: inconsistent declaration: {h} != {s}")
print(f"... {names_file}\\n")
sys.exit(EXIT_NAME_H_CPP_MISMATCH)
else:
names_defined.add(h)
names_header = get_names(fname + ".h", r"const\s+std::string\s+(\w+)\(.*")
for h in names_header:
names_defined.add(h)


# We call to recursive grep in the shell here, because that's much
Expand Down
2 changes: 1 addition & 1 deletion build_support/install_csa-libneurosim.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
set -euo pipefail

NEUROSIM_INSTALL_PATH="${1:-${HOME}/.cache/libneurosim.install}"
Expand Down
2 changes: 1 addition & 1 deletion build_support/install_music.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
set -euo pipefail

MUSIC_INSTALL_PATH="${1:-${HOME}/.cache/music.install}"
Expand Down
2 changes: 1 addition & 1 deletion build_support/install_sionlib.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
set -euo pipefail

SIONLIBVERSION="1.7.4"
Expand Down
2 changes: 1 addition & 1 deletion build_support/version_info.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash

# version_info.sh
#
Expand Down
14 changes: 0 additions & 14 deletions cmake/ConfigureSummary.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -91,11 +91,6 @@ function( NEST_PRINT_CONFIG_SUMMARY )
message( "" )
if ( BUILD_DOCS )
message( "Documentation : Yes" )
if ( BUILD_SLI_DOCS)
message( " SLI doc build : Yes" )
else()
message( " SLI doc build : No" )
endif()
if ( BUILD_SPHINX_DOCS )
message( " Sphinx doc build : Yes (${SPHINX_EXECUTABLE})" )
else()
Expand All @@ -121,15 +116,6 @@ function( NEST_PRINT_CONFIG_SUMMARY )
message( "Use GSL : No" )
endif ()

message( "" )
if ( HAVE_READLINE )
message( "Use Readline : Yes (GNU Readline ${READLINE_VERSION})" )
message( " Includes : ${READLINE_INCLUDE_DIRS}" )
message( " Libraries : ${READLINE_LIBRARIES}" )
else ()
message( "Use Readline : No" )
endif ()

message( "" )
if ( HAVE_LIBLTDL )
message( "Use libltdl : Yes (LTDL ${LTDL_VERSION})" )
Expand Down
72 changes: 0 additions & 72 deletions cmake/FindReadline.cmake

This file was deleted.

2 changes: 0 additions & 2 deletions cmake/Platform/Fugaku_FCC.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,6 @@ set( TRIPLET_VENDOR fujitsu )
# Set Fugaku for main CMakeList.txt
#
set( Fugaku ON CACHE BOOL "Enable Fugaku." FORCE )
# no readline support on Fugaku
set( with-readline OFF CACHE BOOL "Find a readline library [default=ON]. To set a specific readline, set install path." FORCE )
set( with-ltdl OFF CACHE BOOL "Find a ltdl library [default=ON]. To set a specific ltdl, set install path." FORCE )
# we obviously want to do mpi on Fugaku
set( with-mpi ON CACHE BOOL "Request compilation with MPI; optionally give directory with MPI installation." FORCE )
Expand Down
Loading
Loading