Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maint/updated jinja templates fix #3

Open
wants to merge 1,258 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1258 commits
Select commit Hold shift + click to select a range
ae3e68b
Update doc for delay differential equations
pnbabu Mar 15, 2022
7cd430a
Update test
pnbabu Mar 15, 2022
49c8ca1
remove cloning using constructor
med-ayssar Mar 15, 2022
05c201f
Update pynestml/visitors/ast_function_call_visitor.py
pnbabu Mar 15, 2022
337b551
Change log from WARNING to DEBUG
pnbabu Mar 15, 2022
23a054d
unify naming of inhibitory and excitatory spiking input ports
Mar 15, 2022
343662f
Merge pull request #743 from med-ayssar/fix_clone_func_in_astForStmt
clinssen Mar 16, 2022
ca143ce
Merge remote-tracking branch 'upstream/master' into nestml_delay_diff…
pnbabu Mar 16, 2022
5c9666d
clean up comments syntax in neuron model files
clinssen Mar 16, 2022
e2d0fee
Merge pull request #744 from clinssen/inports_rename
pnbabu Mar 17, 2022
2a780bf
update test
WillemWybo Mar 23, 2022
ce94405
set dt
WillemWybo Mar 23, 2022
9ebe9d9
add compartmentall target to frontend
Mar 24, 2022
7be5ebf
fix compartmental target
Mar 24, 2022
acd8af8
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
Mar 24, 2022
314423a
fix compartmental target
Mar 24, 2022
1a44a92
Merge branch 'cm_fix' into maint/updated-jinja-templates_fix
Mar 24, 2022
ee92d85
Refactor AST printers (#746)
clinssen Mar 28, 2022
3123c69
Merge remote-tracking branch 'upstream/master' into nestml_delay_diff…
pnbabu Mar 28, 2022
dbd97fa
Fix pycodestyle error
pnbabu Mar 28, 2022
e660e03
clean up excitatory/inhibitory input port semantics
Mar 28, 2022
50b9118
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
Mar 29, 2022
7d39ed7
clean up
Mar 29, 2022
e58289f
clean up
Mar 29, 2022
d8950de
fix JSON syntax
clinssen Mar 29, 2022
b313e27
undo overwrite of models library index in 35516b65ae1db7cfeae6c5c7ae7…
Mar 30, 2022
33d7f80
Merge pull request #752 from clinssen/doc_fix
clinssen Mar 30, 2022
569b764
Merge remote-tracking branch 'upstream/master' into exc_inh_semantics
Mar 31, 2022
0cf80d2
Remove unnecessary log messages (#745)
clinssen Apr 1, 2022
58ce048
Merge remote-tracking branch 'upstream/master' into exc_inh_semantics
Apr 1, 2022
6ad0b6a
correct documentation on synaptic input port qualifiers
Apr 4, 2022
66f9f06
Merge remote-tracking branch 'upstream/master' into nestml_delay_diff…
pnbabu Apr 4, 2022
9ff7efc
Fix documentation
pnbabu Apr 4, 2022
24ad4a0
Raise exception when the symbol for a delayed variable is not found
pnbabu Apr 4, 2022
4583abd
Update function signature
pnbabu Apr 4, 2022
e7ee0f1
Merge pull request #1 from clinssen/maint/updated-jinja-templates_fix
WillemWybo Apr 5, 2022
641eafc
merge remote
WillemWybo Apr 5, 2022
c81edac
Merge pull request #751 from clinssen/exc_inh_semantics
clinssen Apr 5, 2022
1650d5f
Change log level from WARNING to DEBUG
pnbabu Apr 6, 2022
a8aedd7
clean up
Apr 6, 2022
ea098d9
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
Apr 6, 2022
6d6d60f
clean up
Apr 6, 2022
2f16b68
use @NEURON_NAME@ escape sequence in template filenames
Apr 6, 2022
697bb43
use @NEURON_NAME@ escape sequence in template filenames
Apr 7, 2022
9653b74
remove help generator
Apr 7, 2022
dd45904
fix template
Apr 7, 2022
d7c40a1
Add new tests for delay differential equations
pnbabu Apr 7, 2022
3dfce7f
Merge remote-tracking branch 'upstream/master' into nestml_delay_diff…
pnbabu Apr 7, 2022
a9d9fe7
fix template
Apr 8, 2022
dfe358c
use @NEURON_NAME@ escape sequence in template filenames
Apr 6, 2022
ea80231
Merge pull request #756 from clinssen/templates_filenames
clinssen Apr 8, 2022
db92314
add postsynaptic response information to Izhikevich neuron documentat…
clinssen Apr 11, 2022
c21a8f5
Move custom templates code to the parent class
pnbabu Apr 12, 2022
093950d
Fix pycodestyle error
pnbabu Apr 12, 2022
d1402a0
Fix test failure
pnbabu Apr 12, 2022
19b0cc5
fix templates file name handling
Apr 13, 2022
0afb01d
fix templates file name handling
Apr 13, 2022
a4a9ce2
Fix get_state_element vectors bug
pnbabu Apr 13, 2022
82e1ee4
update Antlr version to fix CI failure (#760)
pnbabu Apr 13, 2022
9888adf
update version number after release
Apr 14, 2022
abbd18d
Merge remote-tracking branch 'upstream/master' into templates_refacto…
pnbabu Apr 16, 2022
aa2f661
Merge remote-tracking branch 'upstream/master' into vectors_bug
pnbabu Apr 16, 2022
f4d49e2
Move NEST2 template files to a new parent dir
pnbabu Apr 17, 2022
b23c570
Run multithreading test for various number of threads (#748)
clinssen Apr 21, 2022
71d9296
update antlr4-python3-runtime version
clinssen Apr 23, 2022
643ddb4
add support for model transformers
Apr 23, 2022
8a23606
Merge remote-tracking branch 'upstream/master' into transformers
Apr 23, 2022
e134ee2
add support for model transformers
Apr 24, 2022
3e8b0b4
add default transformers option
Apr 25, 2022
fc49e01
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
Apr 27, 2022
a969e40
removed wrongfully added files
Apr 27, 2022
cd4fddf
replace old code resolving model name
Apr 27, 2022
4d87856
add get_syn_idx to cm_compartmentcurrents template
WillemWybo Apr 27, 2022
3d28553
run NEST builder for compartmental models
Apr 27, 2022
36848e4
Merge remote-tracking branch 'origin/maint/updated-jinja-templates' i…
Apr 27, 2022
4a9620e
fix C++ syntax error in template
Apr 27, 2022
94d1572
fix C++ syntax error in template
Apr 27, 2022
0387ed8
add support for model transformers
Apr 27, 2022
e942528
add neuron+synapse co-generation model transformer
Apr 27, 2022
0208edb
change implicit conversion message from warning to info
Apr 29, 2022
1f42cee
fix cm_main and cm_tree templates, issues in cm_compartmentcurrents()
WillemWybo Apr 29, 2022
5899fba
Merge remote-tracking branch 'origin/maint/updated-jinja-templates' i…
Apr 30, 2022
fd7ad25
Rename calibrate() to pre_run_hook() and calibrate_variables() to rec…
pnbabu May 2, 2022
efcbd88
Retain calibrate() for NEST 2 target
pnbabu May 2, 2022
e29edda
Debug CI
pnbabu May 2, 2022
ab3ead2
Remove interactive CI debug
pnbabu May 2, 2022
32f4363
Modify symlinks for NEST2 templates
pnbabu May 3, 2022
5de87d9
Change template_root_dir path in NEST2 custom templates test
pnbabu May 3, 2022
299423e
Merge remote-tracking branch 'upstream/master' into vectors_bug
pnbabu May 3, 2022
dd345b2
Merge pull request #768 from clinssen/implicit_conversion_message
clinssen May 3, 2022
a66bea8
remove redundant template component
May 3, 2022
176d451
Merge pull request #3 from clinssen/rename_calibrate
pnbabu May 3, 2022
e79ae42
fix pycodestyle
May 3, 2022
fc4729a
Merge remote-tracking branch 'pnbabu/rename_calibrate' into maint/upd…
May 3, 2022
3ad47b9
Merge remote-tracking branch 'upstream/master' into rename_calibrate
May 3, 2022
91c2d95
Merge remote-tracking branch 'upstream/master' into templates_refacto…
pnbabu May 3, 2022
9729af7
Merge pull request #769 from pnbabu/rename_calibrate
clinssen May 3, 2022
e86c583
Merge remote-tracking branch 'upstream/master' into templates_refacto…
pnbabu May 3, 2022
14f2d43
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
May 3, 2022
4fb9bec
Merge remote-tracking branch 'upstream/master' into vectors_bug
pnbabu May 3, 2022
be2dd46
Simplify the if condition
pnbabu May 3, 2022
1d56710
fix code generation for compartmental models
May 3, 2022
b7a425d
Merge pull request #2 from clinssen/maint/updated-jinja-templates_fix
WillemWybo May 4, 2022
1c8bfd5
fix code generation for compartmental models
May 4, 2022
c5020c1
merge local_variables_reference_converter_fix and convert recordables…
WillemWybo May 4, 2022
eeb3de9
working compartmental test
WillemWybo May 4, 2022
6695762
remove cm_main prefix from model name
WillemWybo May 4, 2022
e722e5c
set synapse propagators in pre_run_hook, not in f_numstep
WillemWybo May 4, 2022
b4d00ad
change template filename in template generation script
WillemWybo May 4, 2022
32f49fc
cleanup compartmental model test
WillemWybo May 4, 2022
f34c76e
Rename variale `condition` to `with_condition`
pnbabu May 4, 2022
d5f543b
Modify the if condition
pnbabu May 4, 2022
2e3cac2
Update documentation
pnbabu May 4, 2022
7b98f8b
Fix doc
pnbabu May 4, 2022
3f6c714
Fix doc
pnbabu May 4, 2022
54e3fe8
Merge remote-tracking branch 'upstream/master' into nestml_delay_diff…
pnbabu May 4, 2022
cdefd0a
Fix doc
pnbabu May 4, 2022
39ebbd2
Merge remote-tracking branch 'upstream/master' into transformers
May 4, 2022
085d1b6
Add unit test
pnbabu May 4, 2022
fb4104f
add documentation draft
May 4, 2022
a80c1ba
update documentation
May 5, 2022
134eb58
Merge pull request #759 from pnbabu/vectors_bug
clinssen May 5, 2022
835a4c8
Add condition to check if vector size provided nest.set() matches its…
pnbabu May 5, 2022
c0e85c6
Add new line at EOF
pnbabu May 5, 2022
b4b736c
version pin antlr4 so runtime is compatible with generated lexer and …
May 9, 2022
d36dea4
Modify the if condition and add a comment
pnbabu May 10, 2022
89805da
Merge pull request #777 from clinssen/antlr4_version_pinning
clinssen May 10, 2022
1982121
Fix tests
pnbabu May 11, 2022
27fa3f0
Undo the auto-format
pnbabu May 11, 2022
1111bf9
Merge pull request #773 from pnbabu/vectors_bugs
clinssen May 11, 2022
4940f41
update version number for release
May 12, 2022
4a06e12
update version number after release
May 12, 2022
b0ff838
Modify the variable name `invalid_port_` to `invalid_port` to match N…
pnbabu May 13, 2022
ab375f4
Merge pull request #780 from pnbabu/nest_upstream_fix
jougs May 13, 2022
3df24ca
update release checklist to be compatible with semver (#779)
clinssen May 13, 2022
3389e89
Merge remote-tracking branch 'upstream/master' into transformers
May 17, 2022
2144e95
update documentation on NESTML internals
May 17, 2022
c7cde90
fix documentation links
May 17, 2022
7e039f8
fix documentation links
May 17, 2022
bfc8ccc
fix documentation links
May 17, 2022
d9db50b
Undo formatting
pnbabu May 18, 2022
9110e9e
Merge remote-tracking branch 'upstream/master' into templates_refacto…
pnbabu May 18, 2022
f6381ff
Merge pull request #757 from pnbabu/templates_refactoring
clinssen May 18, 2022
50faf92
Improve docs
pnbabu May 18, 2022
adcaffd
Merge remote-tracking branch 'upstream/master' into nestml_delay_diff…
pnbabu May 18, 2022
9cababa
remove version warning (#778)
clinssen May 18, 2022
26fae89
Merge pull request #728 from pnbabu/nestml_delay_diff_eqns
clinssen May 18, 2022
dec6041
Merge remote-tracking branch 'upstream/master' into transformers
May 19, 2022
f55df35
fix merge conflicts
May 19, 2022
eed9da3
Add ReadTheDocs update to release checklist (#783)
clinssen May 19, 2022
a6df670
code generator throws exception on failure; fix tests
May 30, 2022
b30ea01
fix typo in tutorial notebook
clinssen May 30, 2022
ee49898
fix case where variable name conflicts with predefined sympy function…
May 31, 2022
123a3c8
Merge remote-tracking branch 'upstream/master' into transformers
Jun 1, 2022
9fd12f3
merge ast_transformers.py into ast_utils.py
Jun 1, 2022
908e227
implement feedback from PR review
Jun 1, 2022
74155c0
fix circular import
Jun 1, 2022
8040c73
merge ode_transformer into ast_utils
Jun 1, 2022
e653473
move 'is None' case to top of functions
Jun 1, 2022
2733823
Merge pull request #764 from clinssen/transformers
clinssen Jun 2, 2022
b31a138
Be consistent about when ``recompute_internal_variables()`` is called…
clinssen Jun 2, 2022
fb33be8
Merge remote-tracking branch 'upstream/master' into codegen_exception
Jun 6, 2022
5fac9b8
Merge remote-tracking branch 'upstream/master' into fix_variable_name…
Jun 6, 2022
21f775b
Merge pull request #785 from clinssen/fix_variable_name_sympy_func_co…
clinssen Jun 8, 2022
d62e928
Merge pull request #784 from clinssen/codegen_exception
clinssen Jun 8, 2022
ce4ab43
Add __init__.py to the transformers module
pnbabu Jun 13, 2022
9c0d68b
Add transformers module to pynestml __init__.py
pnbabu Jun 14, 2022
160253c
Merge pull request #788 from pnbabu/transformers_init
clinssen Jun 14, 2022
59e15fe
update copyright headers
WillemWybo Jun 16, 2022
c19390e
add copyright headers second try
WillemWybo Jun 16, 2022
1815a0b
codecheck copyright header try 3
WillemWybo Jun 16, 2022
7cb3ad8
codecheck copyright headers try 4
WillemWybo Jun 16, 2022
8c59d9b
correct code style issues
WillemWybo Jun 16, 2022
fe026d9
Fix a potential variable misuse bug (#789)
LostBenjamin Jun 16, 2022
750d0da
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
Jun 23, 2022
b14be96
fix file permissions
Jun 23, 2022
d89e1e2
fix file permissions
Jun 23, 2022
40d1b5c
Change print() calls to logger calls
clinssen Jun 23, 2022
c610f59
move template files to new directory layout
Jun 23, 2022
645997c
Merge pull request #790 from nest/remove_print
clinssen Jun 24, 2022
cdd9ac5
Merge pull request #4 from clinssen/maint/updated-jinja-templates_fix
WillemWybo Jun 29, 2022
2252c27
fix code style issues with autopep8
WillemWybo Jun 29, 2022
8af8201
fix code style issues with autopep8 aggressive
WillemWybo Jun 29, 2022
734f17b
fix codestyle issues with autopep8 aggressive second round
WillemWybo Jun 29, 2022
cf3a744
final code style issue, hopefully
WillemWybo Jun 29, 2022
46bf634
fix case where function has no parameters defined (#792)
clinssen Jul 4, 2022
004b4ac
Remove considering suffix while checking for substring for neuron name
pnbabu Jul 8, 2022
2226954
fix pycodestyle
Jul 8, 2022
cef9069
Fix nest tests
pnbabu Jul 8, 2022
bec7d9f
Apply suggestions from code review
pnbabu Jul 10, 2022
522474b
Merge pull request #794 from pnbabu/bugfix-793
clinssen Jul 11, 2022
2e07f14
Update python version to 3.9
pnbabu Jul 11, 2022
822db5e
Merge branch 'master' of https://github.com/nest/nestml into maint/up…
WillemWybo Jul 12, 2022
98c8253
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
Jul 13, 2022
25e39e8
fix incorrect merge with upstream
Jul 13, 2022
c86c851
Merge branch 'maint/updated-jinja-templates_fix' into maint/updated-j…
WillemWybo Jul 13, 2022
a0acc38
print statements in compartmental_model_test.py for debugging workflo…
WillemWybo Jul 14, 2022
ae77058
print statements in compartmental_model_test.py for debugging workflo…
WillemWybo Jul 14, 2022
fc57cc0
disable debug flag
clinssen Jul 15, 2022
6820115
Merge pull request #796 from pnbabu/doc_update
clinssen Jul 17, 2022
fa5777d
add automatic NEST version detection and update CI
Jul 27, 2022
023cbd5
fix setup.py not copying compartmental model templates to install dir…
WillemWybo Aug 3, 2022
34b7c03
fix paths in compartmental model test
WillemWybo Aug 3, 2022
4f87f16
add additional template directories to setup.py
WillemWybo Aug 3, 2022
c31cbd0
minor codestyle fixes
WillemWybo Aug 3, 2022
f44eda8
fix compartmental model test style issue
WillemWybo Aug 3, 2022
277c51e
fix compartmental model test style issue
WillemWybo Aug 3, 2022
a45359c
fix compartmental model test style issue
WillemWybo Aug 3, 2022
92ec449
add NEST2 compatibility to nest_logarithmic_function_test
Aug 3, 2022
537493e
fix CI and tests after adding automatic NEST version check
Aug 5, 2022
d564fb0
remove extraneous parentheses
clinssen Aug 6, 2022
4936d33
move tests that use the NEST code generator to integration tests subd…
Aug 6, 2022
78c8fb7
move tests that use the NEST code generator to integration tests subd…
Aug 6, 2022
b28f4b3
fix NEST2/NEST3 compatibility in tests
Aug 7, 2022
9cfdaa8
add LD_LIBRARY_PATH for NEST2
Aug 7, 2022
e0f9559
fix NEST2/NEST3 compatibility in tests
Aug 7, 2022
72c3678
Merge remote-tracking branch 'clinssen/nest_versions_compat' into nes…
Aug 7, 2022
f155e86
fix NEST2/NEST3 compatibility in tests
Aug 7, 2022
68c5ce6
fix NEST2/NEST3 compatibility in tests
Aug 7, 2022
3d062f3
fix NEST2/NEST3 compatibility in tests
Aug 8, 2022
a088c1f
Refactor redundant code in NEST synapse template (#798)
clinssen Aug 8, 2022
56bcca1
fix CI and tests after adding automatic NEST version check
Aug 8, 2022
f104621
fix CI and tests after adding automatic NEST version check
Aug 8, 2022
79bfbe7
run Jupyter notebooks only on master branch
Aug 9, 2022
fab802c
add NEST 3.3 to CI
Aug 9, 2022
24c0d78
improve NEST version detection and compatibility
Aug 9, 2022
5f783aa
improve NEST version detection and compatibility
Aug 9, 2022
8e42a63
Merge remote-tracking branch 'origin/master' into nest_versions_compat
Aug 9, 2022
891e67b
do not use bare except
Aug 9, 2022
5f54d17
run NEST version detection in a separate process
Aug 10, 2022
3550eb4
fix syntax in GitHub actions workflow file
Aug 10, 2022
c00c6f6
fix syntax in GitHub actions workflow file
Aug 10, 2022
4993cf2
remove cron comment from GitHub Actions workflow file
Aug 15, 2022
0db4ef0
Merge remote-tracking branch 'clinssen/nest_versions_compat' into mai…
Aug 16, 2022
7afa759
Add automatic NEST version detection and update CI (#800)
clinssen Aug 16, 2022
1b3354c
Modify input files in tests to take absolute paths
pnbabu Aug 16, 2022
718301c
Fix pycodestyle error
pnbabu Aug 16, 2022
a155b33
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
Aug 16, 2022
33c5908
update compartmental model templates for NEST 3.3 and NEST-master com…
Aug 16, 2022
18795b9
Address review comments
pnbabu Aug 17, 2022
8eff489
Change the way python version is specified in .readthedocs.yml
pnbabu Aug 18, 2022
ff09f43
Fix version string
pnbabu Aug 18, 2022
f6363de
Add os to build option in .readthedocs.yml
pnbabu Aug 18, 2022
ac1ff72
Merge pull request #801 from pnbabu/test_input_files
clinssen Aug 19, 2022
07a2fa2
Merge pull request #803 from pnbabu/docs_python_version
clinssen Aug 19, 2022
7f2b992
Add STDP-dopamine synapse tutorial notebook (#787)
clinssen Aug 24, 2022
3a3a01d
temporarily disallow sympy 1.11 and 1.11.1 while resolving upstream i…
clinssen Sep 12, 2022
f91a168
updates for 5.1.0 release
Sep 12, 2022
f250828
update version number after 5.1.0 release
Sep 12, 2022
9d9a98d
Merge remote-tracking branch 'upstream/master' into maint/updated-jin…
Sep 14, 2022
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
  •  
  •  
  •  
25 changes: 25 additions & 0 deletions .github/workflows/ebrains-push.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Mirror to EBRAINS

on:
push:
branches: [ master ]

jobs:
sync_to_ebrains:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'nest' }}
steps:
- name: sycnmaster
uses: wei/git-sync@v3
with:
source_repo: "nest/nestml"
source_branch: "master"
destination_repo: "https://ghpusher:${{ secrets.EBRAINS_NESTML_GITLAB }}@gitlab.ebrains.eu/nest/nestml.git"
destination_branch: "main"
- name: synctags
uses: wei/git-sync@v3
with:
source_repo: "nest/nestml"
source_branch: "refs/tags/*"
destination_repo: "https://ghpusher:${{ secrets.EBRAINS_NESTML_GITLAB }}@gitlab.ebrains.eu/nest/nestml.git"
destination_branch: "refs/tags/*"
138 changes: 138 additions & 0 deletions .github/workflows/nestml-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
name: NESTML compatibility check with older NEST versions

on: [push, pull_request]

jobs:
build_and_test:
runs-on: ubuntu-latest
strategy:
matrix:
nest_branch: ["v2.20.2", "v3.3", "master"]
fail-fast: false
steps:
# Checkout the repository contents
- name: Checkout NESTML code
uses: actions/checkout@v2

# Setup Python version
- name: Setup Python 3.9
uses: actions/setup-python@v2
with:
python-version: 3.9

# Install dependencies
- name: Install apt dependencies
run: |
sudo apt-get update
sudo apt-get install libltdl7-dev libgsl0-dev libncurses5-dev libreadline6-dev pkg-config
sudo apt-get install python3-all-dev python3-matplotlib python3-numpy python3-scipy ipython3

# Install Python dependencies
- name: Python dependencies
run: |
python -m pip install --upgrade pip pytest jupyterlab matplotlib pycodestyle scipy
python -m pip install -r requirements.txt

# Static code analysis
- name: Static code style analysis
run: |
python3 extras/codeanalysis/check_copyright_headers.py && python3 -m pycodestyle $GITHUB_WORKSPACE -v --ignore=E241,E501,E714,E713,E714,E252,W503 --exclude=$GITHUB_WORKSPACE/doc,$GITHUB_WORKSPACE/.git,$GITHUB_WORKSPACE/NESTML.egg-info,$GITHUB_WORKSPACE/pynestml/generated,$GITHUB_WORKSPACE/extras,$GITHUB_WORKSPACE/build,$GITHUB_WORKSPACE/.github

# Install Java
- name: Install Java 11
uses: actions/setup-java@v1
with:
java-version: '11.0.x'
java-package: jre

# Install Antlr4
- name: Install Antlr4
run: |
wget http://www.antlr.org/download/antlr-4.10-complete.jar
echo \#\!/bin/bash > antlr4
echo java -cp \"`pwd`/antlr-4.10-complete.jar:$CLASSPATH\" org.antlr.v4.Tool \"\$@\" >> antlr4
echo >> antlr4
chmod +x antlr4
echo PATH=$PATH:`pwd` >> $GITHUB_ENV

# Install NEST simulator
- name: NEST simulator
run: |
python -m pip install cython
echo "GITHUB_WORKSPACE = $GITHUB_WORKSPACE"
cd $GITHUB_WORKSPACE/..
NEST_SIMULATOR=$(pwd)/nest-simulator
NEST_INSTALL=$(pwd)/nest_install
echo "NEST_SIMULATOR = $NEST_SIMULATOR"
echo "NEST_INSTALL = $NEST_INSTALL"

git clone --depth=1 https://github.com/nest/nest-simulator --branch ${{ matrix.nest_branch }}
mkdir nest_install
echo "NEST_INSTALL=$NEST_INSTALL" >> $GITHUB_ENV
cd nest_install
cmake -DCMAKE_INSTALL_PREFIX=$NEST_INSTALL $NEST_SIMULATOR
make && make install
cd ..

# Install NESTML (repeated)
- name: Install NESTML
run: |
cd $GITHUB_WORKSPACE
export PYTHONPATH=${{ env.PYTHONPATH }}:${{ env.NEST_INSTALL }}/lib/python3.9/site-packages
#echo PYTHONPATH=`pwd` >> $GITHUB_ENV
echo "PYTHONPATH=$PYTHONPATH" >> $GITHUB_ENV
python setup.py install

- name: Generate Lexer and Parser using Antlr4
run: |
cd $GITHUB_WORKSPACE
find pynestml/generated -not -name __init__.py -a -not -name generated -delete
cd pynestml/grammars
./generate_lexer_parser

# Unit tests
- name: Run unit tests
run: |
pytest -s -o norecursedirs='*' -o log_cli=true -o log_cli_level="DEBUG" tests || :
git ls-remote git://github.com/nest/nest-simulator.git | grep refs/heads/master | cut -f 1 > latest_nest_master_commit_hash.txt
echo "Latest NEST master commit hash:"
cat latest_nest_master_commit_hash.txt

# Integration tests: prepare (make module containing all NESTML models)
- name: Setup integration tests
run: |
cd $GITHUB_WORKSPACE
# exclude third factor plasticity models; these will only compile successfully if code generation is as a neuron+synapse pair
export ALL_MODEL_FILENAMES=`find models/neurons -name "*.nestml" | paste -sd " "`
echo $ALL_MODEL_FILENAMES
echo "NEST_INSTALL = ${{ env.NEST_INSTALL }}"
echo "NEST_VERSION = ${{ matrix.nest_branch }}"
sed -i 's|%NEST_PATH%|${{ env.NEST_INSTALL }}|' tests/nest_tests/resources/nest_codegen_opts.json
sed -i 's|%NEST_VERSION%|${{ matrix.nest_branch }}|' tests/nest_tests/resources/nest_codegen_opts.json
nestml --input_path $ALL_MODEL_FILENAMES --target_path target --suffix _nestml --logging_level INFO --module_name nestml_allmodels_module --codegen_opts tests/nest_tests/resources/nest_codegen_opts.json

# Integration tests
- name: Run integration tests
env:
LD_LIBRARY_PATH: ${{ env.NEST_INSTALL }}/lib/nest
run: |
cd $GITHUB_WORKSPACE
rc=0
for fn in $GITHUB_WORKSPACE/tests/nest_tests/*.py; do
pytest -s -o log_cli=true -o log_cli_level="DEBUG" ${fn} || rc=1
done;
exit $rc

# Run IPython/Jupyter notebooks
- name: Run Jupyter notebooks
if: ${{ matrix.nest_branch == 'master' }}
run: |
cd $GITHUB_WORKSPACE
ipynb_fns=$(find $GITHUB_WORKSPACE/doc/tutorials -name '*.ipynb')
rc=0
for fn in $ipynb_fns; do
cd `dirname ${fn}`
ipython3 ${fn} || rc=1
done;
cd $GITHUB_WORKSPACE
exit $rc
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
target/
.idea/
.mypy_cache/
.eggs/
build/
buildNest/
venv/
Expand All @@ -26,3 +27,14 @@ venv
*.gdf
*~
*.iml
/generated/
/NESTML.egg-info/
.pydevproject
linkingModel.py


/generated_aeif_cond_alpha/
/generated_goal/
/generated_snapshot/
/generated_RingBufferStar/
/generated_cout/
18 changes: 12 additions & 6 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
type: sphinx
configuration: doc/sphinx-apidoc/conf.py
version: 2

build:
os: ubuntu-20.04
tools:
python: "3.9"

sphinx:
configuration: doc/sphinx-apidoc/conf.py

python:
version: 3
requirements_file: requirements.txt
formats:
- none
install:
- requirements: doc/requirements.txt
110 changes: 0 additions & 110 deletions .travis.yml

This file was deleted.

6 changes: 6 additions & 0 deletions doc/citing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,12 @@ In general, please cite the software release that you are using. In case you wis
Software releases
-----------------

Charl A.P. Linssen, Pooja N. Babu, Jingxuan He, Jochen Martin Eppler, Bernhard Rumpe and Abigail Morrison (2022). **NESTML 5.1.0.** Zenodo. `doi:10.5281/zenodo.7071624 <https://doi.org/10.5281/zenodo.7071624>`_.

Charl A.P. Linssen, Pooja N. Babu, Ayssar Benelhedi, Robin De Schepper, Tanguy Fardet, Jochen Martin Eppler, Bernhard Rumpe and Abigail Morrison (2022). **NESTML 5.0.0.** Zenodo. `doi:10.5281/zenodo.5784175 <https://doi.org/10.5281/zenodo.5784175>`_.

Pooja Nagendra Babu, Charl Linssen, Jochen Martin Eppler, Tobias Schulte to Brinke, Abolfazl Ziaeemehr, Tanguy Fardet, Younes Bouhadjar, Renato Duarte, Bernhard Rumpe and Abigail Morrison (2021). **NESTML 4.0.** Zenodo. `doi:10.5281/zenodo.4740083 <https://doi.org/10.5281/zenodo.4740083>`_.

Charl Linssen, Bernhard Rumpe, Sebastian Berns, Tanguy Fardet, Konstantin Perun, Tobias Schulte to Brinke, Dennis Terhorst, Jochen M. Eppler and Abigail Morrison (2020). **NESTML 3.1.** Zenodo. `doi:10.5281/zenodo.3697733 <http://doi.org/10.5281/zenodo.3697733>`_.

Konstantin Perun, Philip Traeder, Jochen Martin Eppler, Dimitri Plotnikov, Tammo Ippen, Tanguy Fardet, Guido Trensch, Sanin Aleksey, Inga Blundell and Jakob Jordan (2018) **NESTML 3.0.** Zenodo. `doi:10.5281/zenodo.1412608 <http://doi.org/10.5281/zenodo.1412608>`_.
Expand Down
Loading