OSBModelValidation 0.3.8__tar.gz → 0.3.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9/OSBModelValidation.egg-info}/PKG-INFO +1 -1
- {osbmodelvalidation-0.3.8/OSBModelValidation.egg-info → osbmodelvalidation-0.3.9}/PKG-INFO +1 -1
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/common/inout.py +8 -26
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getjnml.py +1 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuroml.py +10 -31
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlvalidate.py +5 -1
- osbmodelvalidation-0.3.9/omv/engines/utils/__init__.py +27 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/omv_util.py +1 -3
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/setup.cfg +1 -1
- osbmodelvalidation-0.3.8/omv/engines/utils/__init__.py +0 -21
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/LICENSE.lesser +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/MANIFEST.in +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/SOURCES.txt +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/dependency_links.txt +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/entry_points.txt +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/requires.txt +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/top_level.txt +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/README.md +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/__init__.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/__init__.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/activation.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/analyzer.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/dryrun.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/input_resistance.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/morphology.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/rates.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/resting.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/spikes.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/temperature.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/timeseries.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/utils/__init__.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/utils/filenode.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/analyzers/utils/timeseries.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/autogen.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/common/__init__.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/__init__.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/arbor_.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/brian1.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/brian2_.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/eden_.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/engine.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/genesis.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getarbor.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getbrian1.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getbrian2.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/geteden.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getgenesis.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getjlems.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getlibsbml.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getmoose.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getnest.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getnetpyne.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getneuroconstruct.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getnml2.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getnrn.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getoctave.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getpylems.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getpyneuroml.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getpynn.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/getxpp.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jlems.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlbrian.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlbrian2.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromleden.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlmoose.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlnetpyne.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlnetpyne_np2.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlnetpyne_np4.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlnrn.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlpynnnrn.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlvalidatev1.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/jneuromlxpp.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/moose_.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/nestsli.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/netpyne_.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/netpyne__np2.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/netpyne__np4.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/neuron_.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/octave.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pylems.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pylemsnml2.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pynest.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pyneuroconstruct.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pyneuroml_.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pyneuromlvalidatesbml.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pyneuromlxpp.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pyneuron.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pynn.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pynnbrian1.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pynnbrian2.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pynnnest.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pynnneuroml.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/pynnneuron.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/utils/genesis_utils.g +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/utils/wdir.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/engines/xpp.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/experiment.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/find_tests.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/omt_mep_parser.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/parse_omt.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/mep.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/base/observable_datafile.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/base/observable_literal.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/base/observables.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/base/test/observable_datafile.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/base/test/observable_literal.1.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/base/test/observable_literal.3.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/expected.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/experiment.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/observable.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/protocol.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/protocol_properties.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/expected.1.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/expected.2.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/expected.3.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/expected.4.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/experiment.1.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/experiment.2.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/observable.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/protocol.1.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/protocol.2.yaml +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/tally.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/test/__init__.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/test/test_rates.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/test/test_types.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/validation/__init__.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/validation/rx_validator.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/validation/utils.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/validation/validate.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/validation/validate_mep.py +0 -0
- {osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/pyproject.toml +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import yaml
|
|
2
|
-
from collections import deque
|
|
3
1
|
import os
|
|
4
|
-
import sys
|
|
5
2
|
|
|
6
3
|
# import textwrap
|
|
7
4
|
import subprocess as sp
|
|
5
|
+
from collections import deque
|
|
6
|
+
|
|
7
|
+
import yaml
|
|
8
8
|
|
|
9
9
|
LINEWIDTH = 70
|
|
10
10
|
__PROMPT__ = "[omv] "
|
|
@@ -25,10 +25,7 @@ def omvify(x):
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
def check(b):
|
|
28
|
-
if
|
|
29
|
-
tick = "\u2714" if b else "\u2718"
|
|
30
|
-
else:
|
|
31
|
-
tick = "\u2714" if b else "\u2718"
|
|
28
|
+
tick = "\u2714" if b else "\u2718"
|
|
32
29
|
return tick
|
|
33
30
|
|
|
34
31
|
|
|
@@ -57,11 +54,7 @@ def inform(
|
|
|
57
54
|
else:
|
|
58
55
|
p = pars if pars else ""
|
|
59
56
|
# print("msg is %s"%msg.__class__)
|
|
60
|
-
msgstr = (
|
|
61
|
-
msg.encode("utf-8")
|
|
62
|
-
if sys.version_info[0] == 2 and isinstance(msg, unicode)
|
|
63
|
-
else str(msg)
|
|
64
|
-
)
|
|
57
|
+
msgstr = str(msg)
|
|
65
58
|
infostr = msgstr + str(p)
|
|
66
59
|
block = deque([infostr])
|
|
67
60
|
|
|
@@ -120,29 +113,18 @@ def check_output(cmds, cwd=".", shell=False, verbosity=0, env=None):
|
|
|
120
113
|
return ret_string
|
|
121
114
|
|
|
122
115
|
except sp.CalledProcessError as err:
|
|
123
|
-
inform(
|
|
124
|
-
"CalledProcessError running commands: %s in %s (return code: %s), output:\n%s"
|
|
125
|
-
% (cmds, cwd, err.returncode, err.output),
|
|
126
|
-
indent=2,
|
|
127
|
-
verbosity=verbosity,
|
|
128
|
-
)
|
|
129
116
|
inform("Error: %s" % (err), indent=2, verbosity=verbosity)
|
|
130
117
|
raise err
|
|
131
118
|
except Exception as err:
|
|
132
|
-
inform(
|
|
133
|
-
"Error running commands: %s in (%s)!" % (cmds, cwd),
|
|
134
|
-
indent=2,
|
|
135
|
-
verbosity=verbosity,
|
|
136
|
-
)
|
|
137
119
|
inform("Error: %s" % (err), indent=2, verbosity=verbosity)
|
|
138
120
|
raise err
|
|
139
121
|
|
|
140
122
|
|
|
141
123
|
def pip_install(packages, version=None):
|
|
142
|
-
pip = "
|
|
124
|
+
pip = "pip"
|
|
143
125
|
cmds = [pip, "install"]
|
|
144
|
-
if
|
|
145
|
-
if version
|
|
126
|
+
if isinstance(packages, str):
|
|
127
|
+
if version is None:
|
|
146
128
|
cmds.append(packages)
|
|
147
129
|
else:
|
|
148
130
|
cmds.append("%s==%s" % (packages, version))
|
|
@@ -2,41 +2,23 @@ import os
|
|
|
2
2
|
import shutil
|
|
3
3
|
import subprocess as sp
|
|
4
4
|
from pathlib import Path
|
|
5
|
-
import platform
|
|
6
5
|
|
|
7
|
-
from omv.common.inout import
|
|
8
|
-
from omv.engines.engine import
|
|
6
|
+
from omv.common.inout import check_output, inform, is_verbose, trim_path
|
|
7
|
+
from omv.engines.engine import EngineExecutionError, OMVEngine
|
|
9
8
|
|
|
10
9
|
|
|
11
10
|
class JNeuroMLEngine(OMVEngine):
|
|
12
11
|
name = "jNeuroML"
|
|
12
|
+
e_name = "jnml"
|
|
13
13
|
|
|
14
14
|
@staticmethod
|
|
15
15
|
def get_environment():
|
|
16
16
|
if "JNML_HOME" in os.environ:
|
|
17
17
|
jnmlhome = os.environ["JNML_HOME"]
|
|
18
|
-
elif shutil.which(
|
|
19
|
-
jnmlhome = Path(shutil.which(
|
|
18
|
+
elif shutil.which(JNeuroMLEngine.e_name) is not None:
|
|
19
|
+
jnmlhome = Path(shutil.which(JNeuroMLEngine.e_name)).parent
|
|
20
20
|
else:
|
|
21
|
-
|
|
22
|
-
if osname == "Linux":
|
|
23
|
-
try:
|
|
24
|
-
jnmlhome = os.path.join(
|
|
25
|
-
os.environ["XDG_DATA_HOME"], "jnml/jNeuroMLJar"
|
|
26
|
-
)
|
|
27
|
-
except KeyError:
|
|
28
|
-
localsharepath = os.path.join(os.environ["HOME"], ".local/share")
|
|
29
|
-
if os.path.isdir(localsharepath):
|
|
30
|
-
jnmlhome = os.path.join(
|
|
31
|
-
os.environ["HOME"], ".local/share/jnml/jNeuroMLJar"
|
|
32
|
-
)
|
|
33
|
-
else:
|
|
34
|
-
jnmlhome = os.path.join(os.environ["HOME"], "jnml/jNeuroMLJar")
|
|
35
|
-
|
|
36
|
-
elif osname == "Darwin":
|
|
37
|
-
jnmlhome = os.path.join(os.environ["HOME"], "Library/jnml/jNeuroMLJar")
|
|
38
|
-
else:
|
|
39
|
-
jnmlhome = os.path.join(os.environ["HOME"], "jnml/jNeuroMLJar")
|
|
21
|
+
jnmlhome = ""
|
|
40
22
|
|
|
41
23
|
environment_vars = {"JNML_HOME": jnmlhome}
|
|
42
24
|
|
|
@@ -45,9 +27,7 @@ class JNeuroMLEngine(OMVEngine):
|
|
|
45
27
|
@staticmethod
|
|
46
28
|
def get_executable():
|
|
47
29
|
environment_vars = JNeuroMLEngine.get_environment()
|
|
48
|
-
jnml = os.path.join(
|
|
49
|
-
environment_vars["JNML_HOME"], "jnml" if os.name != "nt" else "jnml.bat"
|
|
50
|
-
)
|
|
30
|
+
jnml = os.path.join(environment_vars["JNML_HOME"], JNeuroMLEngine.e_name)
|
|
51
31
|
return jnml
|
|
52
32
|
|
|
53
33
|
@staticmethod
|
|
@@ -59,7 +39,6 @@ class JNeuroMLEngine(OMVEngine):
|
|
|
59
39
|
"Checking whether %s is installed..." % JNeuroMLEngine.name,
|
|
60
40
|
indent=1,
|
|
61
41
|
)
|
|
62
|
-
FNULL = open(os.devnull, "w")
|
|
63
42
|
jnml = JNeuroMLEngine.get_executable()
|
|
64
43
|
r = check_output(
|
|
65
44
|
[jnml, "-v"], verbosity=2, env=JNeuroMLEngine.get_environment()
|
|
@@ -76,10 +55,10 @@ class JNeuroMLEngine(OMVEngine):
|
|
|
76
55
|
|
|
77
56
|
@staticmethod
|
|
78
57
|
def install(version):
|
|
79
|
-
from omv.engines.
|
|
58
|
+
from omv.engines.getpyneuroml import install_pynml
|
|
80
59
|
|
|
81
|
-
inform("Will
|
|
82
|
-
|
|
60
|
+
inform("Will install PyNeuroML for jnml", indent=2)
|
|
61
|
+
install_pynml(version)
|
|
83
62
|
|
|
84
63
|
if not JNeuroMLEngine.is_installed():
|
|
85
64
|
inform("Failure to install, exiting", indent=1)
|
|
@@ -28,10 +28,14 @@ class JNeuroMLValidateEngine(JNeuroMLEngine):
|
|
|
28
28
|
path_s = resolve_paths(self.modelpath)
|
|
29
29
|
|
|
30
30
|
inform(
|
|
31
|
-
"Path [%s] expanded to: %s" % (self.modelpath, path_s),
|
|
31
|
+
"Path [%s] expanded to: \n %s" % (self.modelpath, '\n '.join(path_s)),
|
|
32
32
|
indent=1,
|
|
33
33
|
verbosity=1,
|
|
34
34
|
)
|
|
35
|
+
if len(path_s) == 0:
|
|
36
|
+
raise EngineExecutionError(
|
|
37
|
+
"Could not determine list of files for validation from string: %s" % self.modelpath
|
|
38
|
+
)
|
|
35
39
|
|
|
36
40
|
from omv.engines.jneuroml import JNeuroMLEngine
|
|
37
41
|
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
from omv.engines.engine import PATH_DELIMITER
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def resolve_paths(path_s):
|
|
5
|
+
"""
|
|
6
|
+
Make explicit list from: '*.nml myfile.xml' etc.
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
import glob
|
|
10
|
+
|
|
11
|
+
if PATH_DELIMITER in path_s:
|
|
12
|
+
all_paths = []
|
|
13
|
+
for p in path_s.split(PATH_DELIMITER):
|
|
14
|
+
for g in glob.glob(p):
|
|
15
|
+
print('Found path:', g)
|
|
16
|
+
all_paths.append(g)
|
|
17
|
+
path_s = all_paths
|
|
18
|
+
else:
|
|
19
|
+
all_paths = []
|
|
20
|
+
|
|
21
|
+
for g in glob.glob(path_s):
|
|
22
|
+
print('Found path:', g)
|
|
23
|
+
all_paths.append(g)
|
|
24
|
+
path_s = all_paths
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
return path_s
|
|
@@ -228,9 +228,7 @@ def _install_engine(eng):
|
|
|
228
228
|
if ee.is_installed():
|
|
229
229
|
already_installed = True
|
|
230
230
|
else:
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
install_jnml(engine_version)
|
|
231
|
+
ee.install(None)
|
|
234
232
|
|
|
235
233
|
elif eng.lower() == "neuroConstruct" or eng == "Py_neuroConstruct".lower():
|
|
236
234
|
from omv.engines.pyneuroconstruct import PyneuroConstructEngine as ee
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
from omv.engines.engine import PATH_DELIMITER
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
def resolve_paths(path_s):
|
|
5
|
-
"""
|
|
6
|
-
Make explicit list from: '*.nml myfile.xml' etc.
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
if "*" in path_s:
|
|
10
|
-
import glob
|
|
11
|
-
|
|
12
|
-
if PATH_DELIMITER in path_s:
|
|
13
|
-
all_paths = []
|
|
14
|
-
for p in path_s.split(PATH_DELIMITER):
|
|
15
|
-
for g in glob.glob(p):
|
|
16
|
-
all_paths.append(g)
|
|
17
|
-
path_s = all_paths
|
|
18
|
-
else:
|
|
19
|
-
path_s = glob.glob(path_s)
|
|
20
|
-
|
|
21
|
-
return path_s
|
|
File without changes
|
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/requires.txt
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/OSBModelValidation.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/base/observables.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/protocol_properties.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/expected.1.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/expected.2.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/expected.3.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/expected.4.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/experiment.1.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/experiment.2.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/observable.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/protocol.1.yaml
RENAMED
|
File without changes
|
{osbmodelvalidation-0.3.8 → osbmodelvalidation-0.3.9}/omv/schemata/types/test/protocol.2.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|