morphio 3.3.0__tar.gz → 3.3.3__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.
Files changed (405) hide show
  1. {MorphIO-3.3.0 → MorphIO-3.3.3}/.github/workflows/check-sdist.yml +6 -2
  2. {MorphIO-3.3.0 → MorphIO-3.3.3}/.github/workflows/clang_format_check.yaml +4 -0
  3. MorphIO-3.3.3/.github/workflows/coverage_test.yaml +31 -0
  4. MorphIO-3.3.3/.github/workflows/docstring_check.yaml +25 -0
  5. {MorphIO-3.3.0 → MorphIO-3.3.3}/.github/workflows/publish-sdist-wheels.yml +50 -22
  6. {MorphIO-3.3.0 → MorphIO-3.3.3}/.github/workflows/run-tests.yml +9 -5
  7. {MorphIO-3.3.0 → MorphIO-3.3.3}/.gitignore +1 -0
  8. {MorphIO-3.3.0 → MorphIO-3.3.3}/.gitmodules +4 -1
  9. MorphIO-3.3.3/.readthedocs.yaml +31 -0
  10. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/CMakeLists.txt +0 -6
  11. MorphIO-3.3.3/AUTHORS.txt +28 -0
  12. MorphIO-3.3.3/CHANGELOG.md +45 -0
  13. {MorphIO-3.3.0 → MorphIO-3.3.3}/CMake/CompilerFlags.cmake +12 -2
  14. {MorphIO-3.3.0 → MorphIO-3.3.3}/CMakeLists.txt +14 -0
  15. MorphIO-3.3.3/MANIFEST.in +32 -0
  16. {MorphIO-3.3.0 → MorphIO-3.3.3/MorphIO.egg-info}/PKG-INFO +9 -5
  17. {MorphIO-3.3.0 → MorphIO-3.3.3}/MorphIO.egg-info/SOURCES.txt +43 -156
  18. {MorphIO-3.3.0/MorphIO.egg-info → MorphIO-3.3.3}/PKG-INFO +9 -5
  19. {MorphIO-3.3.0 → MorphIO-3.3.3}/README.rst +4 -1
  20. MorphIO-3.3.3/binds/python/CMakeLists.txt +17 -0
  21. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_immutable.cpp +148 -16
  22. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_misc.cpp +28 -15
  23. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_mutable.cpp +69 -15
  24. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_vasculature.cpp +45 -2
  25. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bindings_utils.cpp +3 -2
  26. MorphIO-3.3.3/binds/python/pybind11/CMakeLists.txt +297 -0
  27. MorphIO-3.3.3/binds/python/pybind11/LICENSE +29 -0
  28. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/attr.h +137 -25
  29. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/buffer_info.h +44 -14
  30. MorphIO-3.3.3/binds/python/pybind11/include/pybind11/cast.h +1432 -0
  31. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/chrono.h +49 -20
  32. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/complex.h +4 -4
  33. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/detail/class.h +114 -44
  34. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/detail/common.h +284 -77
  35. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/detail/descr.h +11 -7
  36. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/detail/init.h +23 -12
  37. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/detail/internals.h +208 -90
  38. MorphIO-3.3.3/binds/python/pybind11/include/pybind11/detail/type_caster_base.h +985 -0
  39. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/detail/typeid.h +5 -5
  40. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/eigen.h +44 -45
  41. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/embed.h +117 -35
  42. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/eval.h +55 -9
  43. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/functional.h +37 -17
  44. MorphIO-3.3.3/binds/python/pybind11/include/pybind11/gil.h +193 -0
  45. MorphIO-3.3.3/binds/python/pybind11/include/pybind11/iostream.h +275 -0
  46. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/numpy.h +224 -125
  47. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/operators.h +11 -16
  48. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/options.h +2 -2
  49. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/pybind11.h +840 -501
  50. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/pytypes.h +529 -134
  51. MorphIO-3.3.3/binds/python/pybind11/include/pybind11/stl/filesystem.h +103 -0
  52. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/stl.h +42 -53
  53. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/stl_bind.h +156 -58
  54. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/tools/FindCatch.cmake +17 -4
  55. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/tools/FindEigen3.cmake +18 -13
  56. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/tools/FindPythonLibsNew.cmake +128 -73
  57. MorphIO-3.3.3/binds/python/pybind11/tools/pybind11Common.cmake +403 -0
  58. MorphIO-3.3.3/binds/python/pybind11/tools/pybind11NewTools.cmake +278 -0
  59. MorphIO-3.3.3/binds/python/pybind11/tools/pybind11Tools.cmake +219 -0
  60. MorphIO-3.3.3/include/morphio/dendritic_spine.h +34 -0
  61. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/endoplasmic_reticulum.h +11 -4
  62. MorphIO-3.3.3/include/morphio/enums.h +112 -0
  63. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/errorMessages.h +91 -31
  64. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/exceptions.h +3 -4
  65. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/glial_cell.h +5 -1
  66. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mito_section.h +11 -2
  67. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mitochondria.h +10 -6
  68. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/morphology.h +31 -48
  69. MorphIO-3.3.3/include/morphio/mut/dendritic_spine.h +25 -0
  70. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mut/endoplasmic_reticulum.h +10 -12
  71. MorphIO-3.3.3/include/morphio/mut/glial_cell.h +19 -0
  72. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mut/mito_section.h +14 -6
  73. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mut/mitochondria.h +9 -17
  74. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mut/modifiers.h +5 -3
  75. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mut/morphology.h +11 -13
  76. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mut/section.h +28 -16
  77. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mut/soma.h +17 -15
  78. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/mut/writers.h +3 -0
  79. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/properties.h +69 -24
  80. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/section.h +19 -11
  81. MorphIO-3.3.3/include/morphio/section_base.h +143 -0
  82. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/section_iterators.hpp +2 -3
  83. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/soma.h +5 -5
  84. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/types.h +9 -13
  85. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/vasc/iterators.hpp +2 -1
  86. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/vasc/properties.h +10 -7
  87. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/vasc/section.h +6 -4
  88. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/vasc/vasculature.h +30 -4
  89. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/vector_types.h +16 -10
  90. MorphIO-3.3.3/include/morphio/version.h +18 -0
  91. {MorphIO-3.3.0 → MorphIO-3.3.3}/morphio/__init__.py +14 -1
  92. MorphIO-3.3.3/morphio/mut/__init__.py +9 -0
  93. MorphIO-3.3.3/pyproject.toml +2 -0
  94. MorphIO-3.3.3/setup.py +101 -0
  95. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/CMakeLists.txt +2 -0
  96. MorphIO-3.3.3/src/dendritic_spine.cpp +21 -0
  97. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/endoplasmic_reticulum.cpp +4 -5
  98. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/errorMessages.cpp +36 -14
  99. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/glial_cell.cpp +3 -1
  100. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mito_section.cpp +4 -2
  101. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mitochondria.cpp +3 -3
  102. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/morphology.cpp +33 -34
  103. MorphIO-3.3.3/src/mut/dendritic_spine.cpp +32 -0
  104. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/endoplasmic_reticulum.cpp +18 -21
  105. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/glial_cell.cpp +2 -1
  106. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/mito_section.cpp +31 -24
  107. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/mitochondria.cpp +25 -24
  108. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/modifiers.cpp +16 -7
  109. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/morphology.cpp +70 -57
  110. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/section.cpp +54 -28
  111. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/soma.cpp +7 -14
  112. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/mut/writers.cpp +78 -25
  113. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/properties.cpp +28 -28
  114. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/lex.cpp +4 -4
  115. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/morphologyASC.cpp +18 -2
  116. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/morphologyHDF5.cpp +54 -10
  117. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/morphologyHDF5.h +1 -5
  118. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/vasculatureHDF5.cpp +7 -1
  119. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/section.cpp +18 -12
  120. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/soma.cpp +4 -4
  121. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/vasc/properties.cpp +24 -12
  122. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/vasc/section.cpp +47 -31
  123. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/vasc/vasculature.cpp +26 -7
  124. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/vector_utils.cpp +40 -29
  125. MorphIO-3.3.0/.github/workflows/coverage_test.yaml +0 -30
  126. MorphIO-3.3.0/.github/workflows/docstring_check.yaml +0 -21
  127. MorphIO-3.3.0/.readthedocs.yaml +0 -13
  128. MorphIO-3.3.0/3rdparty/pybind11/CMakeLists.txt +0 -157
  129. MorphIO-3.3.0/3rdparty/pybind11/include/pybind11/cast.h +0 -2159
  130. MorphIO-3.3.0/3rdparty/pybind11/include/pybind11/iostream.h +0 -209
  131. MorphIO-3.3.0/3rdparty/pybind11/tools/check-style.sh +0 -70
  132. MorphIO-3.3.0/3rdparty/pybind11/tools/libsize.py +0 -38
  133. MorphIO-3.3.0/3rdparty/pybind11/tools/mkdoc.py +0 -379
  134. MorphIO-3.3.0/3rdparty/pybind11/tools/pybind11Config.cmake.in +0 -104
  135. MorphIO-3.3.0/3rdparty/pybind11/tools/pybind11Tools.cmake +0 -227
  136. MorphIO-3.3.0/CHANGLOG.md +0 -3
  137. MorphIO-3.3.0/MANIFEST.in +0 -21
  138. MorphIO-3.3.0/binds/python/CMakeLists.txt +0 -18
  139. MorphIO-3.3.0/ci/check_clang_format.sh +0 -27
  140. MorphIO-3.3.0/ci/check_generated_docstrings.sh +0 -49
  141. MorphIO-3.3.0/ci/coverage_test.sh +0 -26
  142. MorphIO-3.3.0/ci/cpp_test.sh +0 -23
  143. MorphIO-3.3.0/ci/python_test.sh +0 -25
  144. MorphIO-3.3.0/doc/Makefile +0 -20
  145. MorphIO-3.3.0/doc/README.md +0 -16
  146. MorphIO-3.3.0/doc/environment.yml +0 -9
  147. MorphIO-3.3.0/doc/source/Doxyfile +0 -2537
  148. MorphIO-3.3.0/doc/source/DoxygenLayout.xml +0 -194
  149. MorphIO-3.3.0/doc/source/_templates/doxygen_page.rst_t +0 -4
  150. MorphIO-3.3.0/doc/source/conf.py +0 -193
  151. MorphIO-3.3.0/doc/source/cpp.rst +0 -8
  152. MorphIO-3.3.0/doc/source/doxygen/.gitignore +0 -0
  153. MorphIO-3.3.0/doc/source/footer.html +0 -6
  154. MorphIO-3.3.0/doc/source/glia.rst +0 -16
  155. MorphIO-3.3.0/doc/source/header.html +0 -27
  156. MorphIO-3.3.0/doc/source/images/section_segment.svg +0 -431
  157. MorphIO-3.3.0/doc/source/images/sections.svg +0 -663
  158. MorphIO-3.3.0/doc/source/images/swc/sequential.svg +0 -272
  159. MorphIO-3.3.0/doc/source/images/swc/sphere.svg +0 -313
  160. MorphIO-3.3.0/doc/source/images/swc/split.svg +0 -376
  161. MorphIO-3.3.0/doc/source/images/swc/three_pt.svg +0 -608
  162. MorphIO-3.3.0/doc/source/images/swc/two_pt.svg +0 -344
  163. MorphIO-3.3.0/doc/source/index.rst +0 -17
  164. MorphIO-3.3.0/doc/source/install.rst +0 -60
  165. MorphIO-3.3.0/doc/source/markers.rst +0 -146
  166. MorphIO-3.3.0/doc/source/mitochondria.rst +0 -68
  167. MorphIO-3.3.0/doc/source/morphology.rst +0 -192
  168. MorphIO-3.3.0/doc/source/python.rst +0 -4
  169. MorphIO-3.3.0/doc/source/reticulum.rst +0 -47
  170. MorphIO-3.3.0/doc/source/specification.rst +0 -228
  171. MorphIO-3.3.0/doc/source/specification_neurolucida.rst +0 -195
  172. MorphIO-3.3.0/doc/source/warnings.rst +0 -87
  173. MorphIO-3.3.0/examples/getting_started.ipynb +0 -711
  174. MorphIO-3.3.0/examples/getting_started_mutable.ipynb +0 -219
  175. MorphIO-3.3.0/include/morphio/enums.h +0 -114
  176. MorphIO-3.3.0/include/morphio/mut/glial_cell.h +0 -17
  177. MorphIO-3.3.0/include/morphio/section_base.h +0 -87
  178. MorphIO-3.3.0/include/morphio/section_base.tpp +0 -88
  179. MorphIO-3.3.0/include/morphio/version.h +0 -12
  180. MorphIO-3.3.0/morphio/mut/__init__.py +0 -2
  181. MorphIO-3.3.0/scripts/check-clang-format-all +0 -24
  182. MorphIO-3.3.0/setup.py +0 -129
  183. MorphIO-3.3.0/src/readers/utilsHDF5.h +0 -52
  184. MorphIO-3.3.0/tests/CMakeLists.txt +0 -44
  185. MorphIO-3.3.0/tests/contrib/catch.hpp +0 -13922
  186. MorphIO-3.3.0/tests/data/annotations.asc +0 -12
  187. MorphIO-3.3.0/tests/data/astrocyte.h5 +0 -0
  188. MorphIO-3.3.0/tests/data/circle_contour.asc +0 -214
  189. MorphIO-3.3.0/tests/data/complexe.swc +0 -31
  190. MorphIO-3.3.0/tests/data/disconnected_neurite.swc +0 -10
  191. MorphIO-3.3.0/tests/data/h5/empty.h5 +0 -0
  192. MorphIO-3.3.0/tests/data/h5/merged.h5 +0 -0
  193. MorphIO-3.3.0/tests/data/h5/non-valid.h5 +0 -0
  194. MorphIO-3.3.0/tests/data/h5/v1/Neuron-no-soma.h5 +0 -0
  195. MorphIO-3.3.0/tests/data/h5/v1/Neuron.h5 +0 -0
  196. MorphIO-3.3.0/tests/data/h5/v1/endoplasmic-reticulum.h5 +0 -0
  197. MorphIO-3.3.0/tests/data/h5/v1/glia.h5 +0 -0
  198. MorphIO-3.3.0/tests/data/h5/v1/glia_empty_perimeters.h5 +0 -0
  199. MorphIO-3.3.0/tests/data/h5/v1/glia_soma_only.h5 +0 -0
  200. MorphIO-3.3.0/tests/data/h5/v1/glia_wrong_sized_perimeters.h5 +0 -0
  201. MorphIO-3.3.0/tests/data/h5/v1/h5v1.3.h5 +0 -0
  202. MorphIO-3.3.0/tests/data/h5/v1/incorrect_point_columns.h5 +0 -0
  203. MorphIO-3.3.0/tests/data/h5/v1/incorrect_structure_columns.h5 +0 -0
  204. MorphIO-3.3.0/tests/data/h5/v1/metadata_group_only.h5 +0 -0
  205. MorphIO-3.3.0/tests/data/h5/v1/mitochondria.h5 +0 -0
  206. MorphIO-3.3.0/tests/data/h5/v1/monodim.h5 +0 -0
  207. MorphIO-3.3.0/tests/data/h5/v1/simple-broken-section-type.h5 +0 -0
  208. MorphIO-3.3.0/tests/data/h5/v1/simple-negative-section-type.h5 +0 -0
  209. MorphIO-3.3.0/tests/data/h5/v1/simple-two-point-soma.h5 +0 -0
  210. MorphIO-3.3.0/tests/data/h5/v1/simple.h5 +0 -0
  211. MorphIO-3.3.0/tests/data/h5/v1/single-neurite.h5 +0 -0
  212. MorphIO-3.3.0/tests/data/h5/v1/soma_after_dendrite.h5 +0 -0
  213. MorphIO-3.3.0/tests/data/h5/v1/soma_no_neurites.h5 +0 -0
  214. MorphIO-3.3.0/tests/data/h5/v1/three-point-soma-two-offset.h5 +0 -0
  215. MorphIO-3.3.0/tests/data/h5/v1/two_child_unmerged.h5 +0 -0
  216. MorphIO-3.3.0/tests/data/h5/v1/unknown_section_type_structure.h5 +0 -0
  217. MorphIO-3.3.0/tests/data/h5/v2/Neuron.h5 +0 -0
  218. MorphIO-3.3.0/tests/data/h5/vasculature-broken-section-type.h5 +0 -0
  219. MorphIO-3.3.0/tests/data/h5/vasculature1.h5 +0 -0
  220. MorphIO-3.3.0/tests/data/h5/vasculature2.h5 +0 -0
  221. MorphIO-3.3.0/tests/data/invalid-incomplete.asc +0 -22
  222. MorphIO-3.3.0/tests/data/iterators.asc +0 -36
  223. MorphIO-3.3.0/tests/data/marker-with-string.asc +0 -12
  224. MorphIO-3.3.0/tests/data/markers.asc +0 -42
  225. MorphIO-3.3.0/tests/data/mono-type.asc +0 -45
  226. MorphIO-3.3.0/tests/data/multiple_point_section.asc +0 -29
  227. MorphIO-3.3.0/tests/data/multiple_soma.swc +0 -11
  228. MorphIO-3.3.0/tests/data/nested_single_children.asc +0 -20
  229. MorphIO-3.3.0/tests/data/neurite_wrong_root_point.swc +0 -7
  230. MorphIO-3.3.0/tests/data/no_soma.swc +0 -3
  231. MorphIO-3.3.0/tests/data/nrn-order-already-sorted.h5 +0 -0
  232. MorphIO-3.3.0/tests/data/nrn_ordering.swc +0 -3788
  233. MorphIO-3.3.0/tests/data/pia.asc +0 -38
  234. MorphIO-3.3.0/tests/data/reversed_NRN_neurite_order.swc +0 -9
  235. MorphIO-3.3.0/tests/data/sections-block.asc +0 -38
  236. MorphIO-3.3.0/tests/data/simple-with-font.asc +0 -36
  237. MorphIO-3.3.0/tests/data/simple-with-image-coord.asc +0 -34
  238. MorphIO-3.3.0/tests/data/simple.asc +0 -44
  239. MorphIO-3.3.0/tests/data/simple.swc +0 -32
  240. MorphIO-3.3.0/tests/data/simple.unknown +0 -44
  241. MorphIO-3.3.0/tests/data/simple2.asc +0 -32
  242. MorphIO-3.3.0/tests/data/single_point_root.asc +0 -8
  243. MorphIO-3.3.0/tests/data/soma_cylinders.swc +0 -8
  244. MorphIO-3.3.0/tests/data/soma_multiple_frustums.swc +0 -6
  245. MorphIO-3.3.0/tests/data/soma_single_frustum.swc +0 -4
  246. MorphIO-3.3.0/tests/data/soma_three_points_cylinder.swc +0 -4
  247. MorphIO-3.3.0/tests/data/spine.asc +0 -29
  248. MorphIO-3.3.0/tests/data/three_point_soma.swc +0 -35
  249. MorphIO-3.3.0/tests/main.cpp +0 -3
  250. MorphIO-3.3.0/tests/requirement_tests.txt +0 -5
  251. MorphIO-3.3.0/tests/test_0_API.py +0 -49
  252. MorphIO-3.3.0/tests/test_10_vasculature.py +0 -78
  253. MorphIO-3.3.0/tests/test_1_swc.py +0 -499
  254. MorphIO-3.3.0/tests/test_2_neurolucida.py +0 -627
  255. MorphIO-3.3.0/tests/test_3_h5.py +0 -83
  256. MorphIO-3.3.0/tests/test_4_immut.py +0 -158
  257. MorphIO-3.3.0/tests/test_5_mut.py +0 -616
  258. MorphIO-3.3.0/tests/test_6_writers.py +0 -312
  259. MorphIO-3.3.0/tests/test_7_modifiers.py +0 -94
  260. MorphIO-3.3.0/tests/test_8_all_morphologies.py +0 -93
  261. MorphIO-3.3.0/tests/test_9_surfaces.py +0 -68
  262. MorphIO-3.3.0/tests/test_immutable_morphology.cpp +0 -341
  263. MorphIO-3.3.0/tests/test_morphology_readers.cpp +0 -171
  264. MorphIO-3.3.0/tests/test_mutable_morphology.cpp +0 -55
  265. MorphIO-3.3.0/tests/utils.py +0 -104
  266. {MorphIO-3.3.0 → MorphIO-3.3.3}/.clang-format +0 -0
  267. {MorphIO-3.3.0 → MorphIO-3.3.3}/.travis.yml +0 -0
  268. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/CMakeLists.txt +0 -0
  269. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/cmake/PackageConfig.cmake.in +0 -0
  270. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/gsl-lite.natvis +0 -0
  271. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/include/gsl/gsl +0 -0
  272. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/include/gsl/gsl-lite-vc6.hpp +0 -0
  273. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/include/gsl/gsl-lite.h +0 -0
  274. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/include/gsl/gsl-lite.hpp +0 -0
  275. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/include/gsl.h +0 -0
  276. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/GSL_LITE/include/gsl.hpp +0 -0
  277. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMake/HighFiveConfig.cmake.in +0 -0
  278. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMake/HighFiveTargetDeps.cmake +0 -0
  279. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMake/HighFiveTargetExport.cmake +0 -0
  280. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMake/config/CompilerFlagsHelpers.cmake +0 -0
  281. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMake/config/ReleaseDebugAutoFlags.cmake +0 -0
  282. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMake/config/TestHelpers.cmake +0 -0
  283. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMake/portability/BlueGenePortability.cmake +0 -0
  284. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMake/portability/CheckCXXStandardSupport.cmake +0 -0
  285. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/CMakeLists.txt +0 -0
  286. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/doc/CMakeLists.txt +0 -0
  287. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/doc/Doxyfile +0 -0
  288. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/doc/mainpage.md +0 -0
  289. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Attribute.hpp +0 -0
  290. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5DataSet.hpp +0 -0
  291. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5DataSpace.hpp +0 -0
  292. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5DataType.hpp +0 -0
  293. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Easy.hpp +0 -0
  294. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Exception.hpp +0 -0
  295. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5File.hpp +0 -0
  296. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5FileDriver.hpp +0 -0
  297. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Group.hpp +0 -0
  298. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Object.hpp +0 -0
  299. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5PropertyList.hpp +0 -0
  300. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Reference.hpp +0 -0
  301. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Selection.hpp +0 -0
  302. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Utility.hpp +0 -0
  303. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/H5Version.hpp.in +0 -0
  304. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Annotate_traits.hpp +0 -0
  305. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Annotate_traits_misc.hpp +0 -0
  306. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Attribute_misc.hpp +0 -0
  307. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5ConverterEigen_misc.hpp +0 -0
  308. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Converter_misc.hpp +0 -0
  309. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5DataSet_misc.hpp +0 -0
  310. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5DataType_misc.hpp +0 -0
  311. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Dataspace_misc.hpp +0 -0
  312. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Exception_misc.hpp +0 -0
  313. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5FileDriver_misc.hpp +0 -0
  314. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5File_misc.hpp +0 -0
  315. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Iterables_misc.hpp +0 -0
  316. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Node_traits.hpp +0 -0
  317. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Node_traits_misc.hpp +0 -0
  318. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Object_misc.hpp +0 -0
  319. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5PropertyList_misc.hpp +0 -0
  320. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5ReadWrite_misc.hpp +0 -0
  321. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Reference_misc.hpp +0 -0
  322. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Selection_misc.hpp +0 -0
  323. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Slice_traits.hpp +0 -0
  324. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Slice_traits_misc.hpp +0 -0
  325. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5Utils.hpp +0 -0
  326. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/bits/H5_definitions.hpp +0 -0
  327. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_Eigen.hpp +0 -0
  328. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_misc.hpp +0 -0
  329. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_opencv.hpp +0 -0
  330. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_public.hpp +0 -0
  331. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_scalar.hpp +0 -0
  332. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_vector.hpp +0 -0
  333. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/HighFive/include/highfive/h5easy_bits/H5Easy_xtensor.hpp +0 -0
  334. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/CMakeLists.txt +0 -0
  335. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/char_traits.hpp +0 -0
  336. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/debug.hpp +0 -0
  337. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/dot.hpp +0 -0
  338. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/enums.hpp +0 -0
  339. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/generate_cpp.hpp +0 -0
  340. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/generator.hpp +0 -0
  341. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/internals.hpp +0 -0
  342. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/iterator.hpp +0 -0
  343. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/licence_1_0.txt +0 -0
  344. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/lookup.hpp +0 -0
  345. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/match_results.hpp +0 -0
  346. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/memory_file.hpp +0 -0
  347. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/narrow.hpp +0 -0
  348. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/observer_ptr.hpp +0 -0
  349. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/parser.hpp +0 -0
  350. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/blocks.hpp +0 -0
  351. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/fold2.inc +0 -0
  352. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/fold4.inc +0 -0
  353. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/re_token.hpp +0 -0
  354. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/re_tokeniser.hpp +0 -0
  355. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/re_tokeniser_helper.hpp +0 -0
  356. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/re_tokeniser_state.hpp +0 -0
  357. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/scripts.hpp +0 -0
  358. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/table.inc +0 -0
  359. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tokeniser/unicode.hpp +0 -0
  360. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tree/end_node.hpp +0 -0
  361. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tree/iteration_node.hpp +0 -0
  362. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tree/leaf_node.hpp +0 -0
  363. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tree/node.hpp +0 -0
  364. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tree/selection_node.hpp +0 -0
  365. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/parser/tree/sequence_node.hpp +0 -0
  366. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/partition/charset.hpp +0 -0
  367. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/partition/equivset.hpp +0 -0
  368. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/rules.hpp +0 -0
  369. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/runtime_error.hpp +0 -0
  370. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/serialise.hpp +0 -0
  371. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/sm_to_csm.hpp +0 -0
  372. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/sm_traits.hpp +0 -0
  373. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/state_machine.hpp +0 -0
  374. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/stream_shared_iterator.hpp +0 -0
  375. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/string_token.hpp +0 -0
  376. {MorphIO-3.3.0 → MorphIO-3.3.3}/3rdparty/lexertl14/include/lexertl/utf_iterators.hpp +0 -0
  377. {MorphIO-3.3.0 → MorphIO-3.3.3}/CMake/CodeCoverage.cmake +0 -0
  378. {MorphIO-3.3.0 → MorphIO-3.3.3}/CMake/MorphIOConfig.cmake +0 -0
  379. {MorphIO-3.3.0 → MorphIO-3.3.3}/CONTRIBUTING.md +0 -0
  380. {MorphIO-3.3.0 → MorphIO-3.3.3}/COPYING +0 -0
  381. {MorphIO-3.3.0 → MorphIO-3.3.3}/COPYING.LESSER +0 -0
  382. {MorphIO-3.3.0 → MorphIO-3.3.3}/MorphIO.egg-info/dependency_links.txt +0 -0
  383. {MorphIO-3.3.0 → MorphIO-3.3.3}/MorphIO.egg-info/not-zip-safe +0 -0
  384. {MorphIO-3.3.0 → MorphIO-3.3.3}/MorphIO.egg-info/requires.txt +0 -0
  385. {MorphIO-3.3.0 → MorphIO-3.3.3}/MorphIO.egg-info/top_level.txt +0 -0
  386. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_enums.h +0 -0
  387. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_immutable.h +0 -0
  388. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_misc.h +0 -0
  389. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_mutable.h +0 -0
  390. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bind_vasculature.h +0 -0
  391. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/bindings_utils.h +0 -0
  392. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/generated/.clang-format +0 -0
  393. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/generated/docstrings.h +0 -0
  394. {MorphIO-3.3.0 → MorphIO-3.3.3}/binds/python/morphio.cpp +0 -0
  395. {MorphIO-3.3.0/3rdparty → MorphIO-3.3.3/binds/python}/pybind11/include/pybind11/common.h +0 -0
  396. {MorphIO-3.3.0 → MorphIO-3.3.3}/include/morphio/tools.h +0 -0
  397. {MorphIO-3.3.0 → MorphIO-3.3.3}/morphio/vasculature/__init__.py +0 -0
  398. {MorphIO-3.3.0 → MorphIO-3.3.3}/setup.cfg +0 -0
  399. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/enums.cpp +0 -0
  400. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/morphologyASC.h +0 -0
  401. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/morphologySWC.cpp +0 -0
  402. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/morphologySWC.h +0 -0
  403. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/readers/vasculatureHDF5.h +0 -0
  404. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/shared_utils.hpp +0 -0
  405. {MorphIO-3.3.0 → MorphIO-3.3.3}/src/version.cpp.in +0 -0
@@ -5,15 +5,19 @@ jobs:
5
5
  build_sdist:
6
6
  name: Build sdist
7
7
  runs-on: ubuntu-latest
8
+
9
+ # Run on external PRs, but not internal PRs as they'll be run by the push
10
+ if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
11
+
8
12
  steps:
9
13
  - uses: actions/checkout@v2
10
14
  with:
11
15
  submodules: 'true'
12
16
 
13
- - name: Set up Python 3.6
17
+ - name: Set up Python 3.8
14
18
  uses: actions/setup-python@v2
15
19
  with:
16
- python-version: 3.6
20
+ python-version: 3.8
17
21
 
18
22
  - name: Build a source tarball
19
23
  run:
@@ -5,6 +5,10 @@ jobs:
5
5
  build:
6
6
  name: clang-format-check
7
7
  runs-on: ubuntu-18.04
8
+
9
+ # Run on external PRs, but not internal PRs as they'll be run by the push
10
+ if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
11
+
8
12
  steps:
9
13
  - name: Fetch repository
10
14
  uses: actions/checkout@v1
@@ -0,0 +1,31 @@
1
+ name: coverage-test
2
+ on: [pull_request, push]
3
+
4
+ env:
5
+ CC: gcc-9
6
+ CXX: g++-9
7
+
8
+ jobs:
9
+ build:
10
+ name: coverage-test
11
+ runs-on: ubuntu-20.04
12
+
13
+ # Run on external PRs, but not internal PRs as they'll be run by the push
14
+ if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
15
+
16
+ steps:
17
+ - name: Checkout repository
18
+ uses: actions/checkout@v2
19
+ - name: Fetch repository
20
+ run: git fetch --prune --unshallow
21
+ - name: Get submodules
22
+ run: git submodule update --init --force --recursive
23
+ - name: Install packages
24
+ run: sudo apt-get update && sudo apt-get install build-essential libhdf5-dev lcov
25
+ - name: Build and run unittests
26
+ run: ci/coverage_test.sh
27
+ - name: Upload Coverage to Coveralls
28
+ uses: coverallsapp/github-action@master
29
+ with:
30
+ github-token: ${{ secrets.GITHUB_TOKEN }}
31
+ path-to-lcov: build/build-coverage/coverage.info.cleaned
@@ -0,0 +1,25 @@
1
+ name: docstring-check
2
+ on: [pull_request, push]
3
+
4
+ jobs:
5
+ build:
6
+ name: docstring-check
7
+ runs-on: ubuntu-18.04
8
+
9
+ # Run on external PRs, but not internal PRs as they'll be run by the push
10
+ if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
11
+
12
+ steps:
13
+ - name: Fetch repository
14
+ uses: actions/checkout@v2
15
+ with:
16
+ submodules: recursive
17
+ - name: Install packages
18
+ run: sudo apt-get update && sudo apt-get install build-essential libhdf5-dev python3-venv libclang1-9
19
+ - name: Check docstrings
20
+ run: |
21
+ export LIBCLANG_PATH=/usr/lib/x86_64-linux-gnu/libclang-9.so.1
22
+ ci/check_generated_docstrings.sh || true
23
+
24
+ export LIBCLANG_PATH=libLLVM-10.so.1
25
+ ci/check_generated_docstrings.sh || true
@@ -1,27 +1,23 @@
1
- name: Publish sdist and wheels macos-manylinux
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v[0-9]+.[0-9]+.[0-9]+'
1
+ name: Publish sdist and wheels for macos, manylinux, and windows, publish to pypi if a release
2
+ on: [pull_request, push]
7
3
 
8
4
  env:
9
- CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014
10
- MACOSX_DEPLOYMENT_TARGET: '10.13'
11
- CIBW_BUILD_VERBOSITY: 2
12
- # Only build on Python 3.x
13
- CIBW_BUILD: 'cp3?-*'
14
- CIBW_SKIP: 'cp35-* cp39-* *-manylinux_i686'
5
+ CIBW_BUILD_VERBOSITY: 3
6
+ CIBW_BUILD: 'cp*'
7
+ CIBW_SKIP: 'cp35-* cp36-* *-manylinux_i686 *-musllinux_* *-win32'
15
8
  CIBW_BEFORE_TEST: pip install -r {project}/tests/requirement_tests.txt
16
9
  CIBW_TEST_COMMAND: pytest -s -v {project}/tests
17
10
 
18
11
  jobs:
19
12
  build_wheels:
20
13
  name: Build wheels on ${{ matrix.os }}
14
+
15
+ if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
16
+
21
17
  runs-on: ${{ matrix.os }}
22
18
  strategy:
23
19
  matrix:
24
- os: [ubuntu-18.04, macos-latest]
20
+ os: [ubuntu-20.04, macos-latest, windows-latest]
25
21
 
26
22
  steps:
27
23
  - uses: actions/checkout@v2
@@ -35,66 +31,98 @@ jobs:
35
31
 
36
32
  - name: Install cibuildwheel
37
33
  run: |
38
- python -m pip install cibuildwheel==1.6.4
34
+ python -m pip install cibuildwheel
35
+
39
36
  - name: Build wheels on Linux
40
37
  if: runner.os == 'Linux'
41
38
  env:
39
+ CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014
42
40
  CIBW_BEFORE_BUILD: 'yum update -y; yum -y install hdf5-devel'
43
41
  run: |
44
42
  python -m cibuildwheel --output-dir dist
43
+
45
44
  - name: Build wheels Mac OS
46
45
  if: runner.os == 'macOS'
47
46
  env:
47
+ MACOSX_DEPLOYMENT_TARGET: '10.13'
48
48
  CIBW_BEFORE_BUILD: |
49
49
  brew update
50
50
  brew --version
51
- brew install cmake
52
51
  brew install hdf5
53
52
  run: |
54
53
  python -m cibuildwheel --output-dir dist
54
+
55
+ - name: Build wheels Windows
56
+ if: runner.os == 'Windows'
57
+ shell: cmd
58
+ # the v140 toolchain is used, so that fewer vc_redist installs are required
59
+ # some of the information is available here:
60
+ # https://docs.microsoft.com/en-us/cpp/build/building-on-the-command-line
61
+ # but tracking down the 14.0 magic number (and especially newer ones isn't always easy)
62
+ # this has a partial table:
63
+ # https://devblogs.microsoft.com/cppblog/side-by-side-minor-version-msvc-toolsets-in-visual-studio-2017/
64
+ run: |
65
+ curl -O https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-1.12.0/bin/hdf5-1.12.0-Std-win10_64-vs16.zip
66
+ C:\windows\system32\tar.exe xf hdf5-1.12.0-Std-win10_64-vs16.zip
67
+ start /wait msiexec /a "%cd%\hdf\HDF5-1.12.0-win64.msi" /qn TARGETDIR="c:\hdf5\"
68
+
69
+ call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat" -vcvars_ver=14.1
70
+
71
+ set HDF5_DIR=C:\hdf5\HDF_Group\HDF5\1.12.0\cmake
72
+
73
+ python -m cibuildwheel --output-dir dist
74
+
55
75
  - name: Store wheel as artifact
56
76
  uses: actions/upload-artifact@v2
57
77
  with:
58
78
  name: dist
59
- path: dist
79
+ path: dist/*.whl
60
80
 
61
81
  build_sdist:
62
82
  name: Build sdist
83
+ if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
84
+
63
85
  runs-on: ubuntu-latest
64
86
  steps:
65
87
  - uses: actions/checkout@v2
66
88
  with:
67
89
  submodules: 'true'
68
90
 
69
- - name: Set up Python 3.6
91
+ - name: Set up Python 3.7
70
92
  uses: actions/setup-python@v2
71
93
  with:
72
- python-version: 3.6
94
+ python-version: 3.7
95
+
73
96
  - name: Build a source tarball
74
97
  run:
75
98
  python setup.py sdist
99
+
76
100
  - name: Test tarball
77
101
  run: |
78
102
  sudo apt install -y libhdf5-dev
79
103
  pip install -r tests/requirement_tests.txt
80
104
  pip install dist/*
81
105
  pytest -s -v tests
106
+
82
107
  - name: Store sdist as artifact
83
108
  uses: actions/upload-artifact@v2
84
109
  with:
85
110
  name: dist
86
- path: dist
111
+ path: dist/*.tar.gz
112
+
113
+ upload_artifacts:
114
+ name: Upload wheels to PyPI
115
+ if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
87
116
 
88
- upload_wheels:
89
117
  runs-on: ubuntu-latest
90
118
  needs: [build_wheels, build_sdist]
91
- name: Upload wheels to PyPI
119
+
92
120
  steps:
93
121
  - name: Download artifacts produced during the build_wheels and build_sdist jobs
94
122
  uses: actions/download-artifact@v2
95
123
  with:
96
124
  name: dist
97
- path: dist
125
+ path: dist/
98
126
 
99
127
  - name: Display structure of downloaded files
100
128
  run: ls -R
@@ -3,17 +3,21 @@ on: [pull_request, push]
3
3
 
4
4
  jobs:
5
5
  build:
6
- name: Run tests on ${{ matrix.os }}
6
+ name: Run tests on ${{ matrix.os }}.${{ matrix.compiler.CC }}
7
7
  runs-on: ${{ matrix.os }}
8
8
 
9
+ # Run on external PRs, but not internal PRs as they'll be run by the push
10
+ if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
11
+
9
12
  strategy:
10
13
  matrix:
11
14
  os: [ubuntu-latest, macos-latest]
12
15
  compiler:
13
- - CC: clang
14
- CXX: clang++
15
- - CC: gcc
16
- CXX: g++
16
+ - {CC: clang, CXX: clang++}
17
+ - {CC: gcc, CXX: g++}
18
+ exclude:
19
+ - os: macos-latest
20
+ compiler: {CC: gcc, CXX: g++}
17
21
 
18
22
  steps:
19
23
  - name: Checkout repository
@@ -47,3 +47,4 @@ build/
47
47
  ci/venv*
48
48
  cmake-build*
49
49
  env*
50
+ venv-clang-format/
@@ -2,7 +2,7 @@
2
2
  path = 3rdparty/HighFive
3
3
  url = https://github.com/BlueBrain/HighFive.git
4
4
  [submodule "3rdparty/pybind11"]
5
- path = 3rdparty/pybind11
5
+ path = binds/python/pybind11
6
6
  url = https://github.com/pybind/pybind11.git
7
7
  [submodule "3rdparty/GSL_LITE"]
8
8
  path = 3rdparty/GSL_LITE
@@ -10,3 +10,6 @@
10
10
  [submodule "3rdparty/lexertl14"]
11
11
  path = 3rdparty/lexertl14
12
12
  url = https://github.com/BenHanson/lexertl14
13
+ [submodule "3rdparty/Catch2"]
14
+ path = 3rdparty/Catch2
15
+ url = https://github.com/catchorg/Catch2.git
@@ -0,0 +1,31 @@
1
+ # .readthedocs.yml
2
+ # Read the Docs configuration file
3
+ # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4
+
5
+ # Required
6
+ version: 2
7
+
8
+ submodules:
9
+ include: all
10
+ recursive: true
11
+
12
+ # it appears that the conda `cmake` finds `conda` installed packages
13
+ # fine, but if cmake is installed through `pyproject.toml`, that CMake
14
+ # doesn't find HDF5, if the hdf5 headers are available by the system, then
15
+ # it works
16
+ build:
17
+ os: "ubuntu-20.04"
18
+ apt_packages:
19
+ - libhdf5-dev
20
+ tools:
21
+ python: "3.9"
22
+
23
+ sphinx:
24
+ configuration: doc/source/conf.py
25
+
26
+ python:
27
+ install:
28
+ - method: pip
29
+ path: .
30
+ extra_requirements:
31
+ - docs
@@ -14,9 +14,3 @@ target_include_directories(gsl-lite SYSTEM INTERFACE)
14
14
 
15
15
  add_library(lexertl INTERFACE)
16
16
  target_include_directories(lexertl SYSTEM INTERFACE lexertl14/include)
17
-
18
- if(BUILD_BINDINGS)
19
- add_subdirectory(pybind11)
20
- target_include_directories(pybind11 SYSTEM INTERFACE
21
- pybind11)
22
- endif()
@@ -0,0 +1,28 @@
1
+ Adrien Devresse
2
+ Ahmet Bilgili
3
+ Aleksei Sanin
4
+ Alexander Dietz
5
+ Alexandru Săvulescu
6
+ Andrew Hale
7
+ Antonio Bellotta
8
+ Arseny V. Povolotsky
9
+ Ben Beasley
10
+ Benoît Coste
11
+ Chevtchenko Grigori
12
+ Cyrille Favreau
13
+ Daniel Nachbaur
14
+ Eleftherios Zisis
15
+ Fernando Pereira
16
+ Jafet Villafranca
17
+ Jean-Denis Courcol
18
+ Juan Hernando Vieites
19
+ Matthias Wolf
20
+ Mike Gevaert (maintainer)
21
+ Mohamed-Ghaith Kaabi
22
+ Nicolas Cornu
23
+ Pablo Toharia
24
+ Raphael Dumusc
25
+ Snigda Dagar
26
+ Stefan Eilemann
27
+ Thomas Delemontex
28
+ Tristan Carel
@@ -0,0 +1,45 @@
1
+ v3.3.3
2
+ ======
3
+
4
+ New Features:
5
+ * Vasculature section_offsets & section_connectivity (#352)
6
+ * n_points method for immutable Morphology and Vasculature (#359)
7
+ * is_heterogeneous method for checking downstream/upstream section type homogeneity (#360)
8
+
9
+ Fixes:
10
+ * Fixed documentation links (#350)
11
+ * Python version check >=3.7 (#356)
12
+ * Updated pybind11 submodule to v2.8.1 (#362)
13
+ * Added exception for attempting to write unsupported section types into ascii (#370)
14
+ * Wheels for newer python versions
15
+ * fix operator<< instances (#364)
16
+
17
+ v3.3.2
18
+ ======
19
+
20
+ Fixes:
21
+ * Fixed wheel uploading (#355)
22
+
23
+ v3.3.1
24
+ ======
25
+
26
+ New Features:
27
+ * Dendritic spine. Morphology format spec changed from 1.2 to 1.3 (#321)
28
+
29
+ Fixes:
30
+ * Imbue enums with numeric operations (#330)
31
+ * Remove unused AccessMode enum (#331)
32
+ * Don't compile c++ tests when creating python package (#332)
33
+ * Use std::make_unique (#333)
34
+ * Updated tests (#340)
35
+ * Allow lowercase neurite names
36
+ * Allow whitespace in CellBody neurite
37
+ * Excluded musslinux wheels from building (#354)
38
+
39
+ Previously:
40
+ * The first neurite point is no longer connected to the soma. It was previously
41
+ the case if the soma was a multiple points soma. This feature has been
42
+ removed as choosing to which point to connect is interpretation dependant and
43
+ should not be the responsability of an IO tool. This feature was already
44
+ discussed [here](https://github.com/BlueBrain/Brion/pull/94#issuecomment-248010437).
45
+ This will impact primarily the surface and volume computations.
@@ -1,7 +1,16 @@
1
- # Taken from https://github.com/BlueBrain/hpc-coding-conventions/blob/master/cpp/cmake/bob.cmake#L192-L255
2
1
  if (WIN32)
3
- set(FLAGS "${FLAGS} /DH5_BUILT_AS_DYNAMIC_LIB /EHsc /D_USE_MATH_DEFINES")
2
+ set(FLAGS "${FLAGS} /DH5_BUILT_AS_DYNAMIC_LIB")
3
+
4
+ # Exception handling
5
+ # s: Enables standard C++ stack unwinding.
6
+ # c: [assume] functions declared as extern "C" never throw a C++ exception.
7
+ set(FLAGS "${FLAGS} /EHsc")
8
+
9
+ # get access to M_PI constant
10
+ set(FLAGS "${FLAGS} /D_USE_MATH_DEFINES")
11
+
4
12
  elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
13
+ # Taken from https://github.com/BlueBrain/hpc-coding-conventions/blob/master/cpp/cmake/bob.cmake#L192-L255
5
14
  if(${PROJECT_NAME}_CXX_WARNINGS)
6
15
  set(FLAGS "${FLAGS} -Werror -Weverything")
7
16
  # Using std=c++11, no need for 98 compat
@@ -33,6 +42,7 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
33
42
  set(FLAGS "${FLAGS} -fcomment-block-commands=file")
34
43
  endif()
35
44
  endif()
45
+
36
46
  elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
37
47
  if(${PROJECT_NAME}_CXX_WARNINGS)
38
48
  set(FLAGS "${FLAGS} -Wall")
@@ -7,7 +7,9 @@ set(CMAKE_VERBOSE_MAKEFILE ON)
7
7
 
8
8
  option(BUILD_BINDINGS "Build the python bindings" ON)
9
9
  option(MorphIO_CXX_WARNINGS "Compile C++ with warnings" ON)
10
+ option(EXTERNAL_CATCH2 "Use Catch2 from external source" OFF)
10
11
  option(EXTERNAL_HIGHFIVE "Use HighFive from external source" OFF)
12
+ option(EXTERNAL_PYBIND11 "Use pybind11 from external source" OFF)
11
13
  option(MORPHIO_TESTS "Build tests" ON)
12
14
  option(MORPHIO_USE_DOUBLE "Use doubles instead of floats" OFF)
13
15
 
@@ -27,9 +29,15 @@ set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMake)
27
29
  include(CompilerFlags)
28
30
  set(CMAKE_CXX_FLAGS "${FLAGS}")
29
31
 
32
+ set(CMAKE_CXX_STANDARD 14)
33
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
34
+
30
35
  if (EXTERNAL_HIGHFIVE)
31
36
  find_package(HighFive REQUIRED)
32
37
  endif()
38
+ if (EXTERNAL_PYBIND11)
39
+ find_package(pybind11 REQUIRED CONFIG)
40
+ endif()
33
41
  set(MORPHIO_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/include/)
34
42
 
35
43
  add_subdirectory(3rdparty)
@@ -58,5 +66,11 @@ install(
58
66
 
59
67
  if (MORPHIO_TESTS)
60
68
  enable_testing()
69
+ if (EXTERNAL_CATCH2)
70
+ find_package(Catch2 REQUIRED)
71
+ else()
72
+ add_subdirectory(3rdparty/Catch2)
73
+ include(3rdparty/Catch2/contrib/Catch.cmake)
74
+ endif()
61
75
  add_subdirectory(tests)
62
76
  endif()
@@ -0,0 +1,32 @@
1
+ # MorphIO c++
2
+ graft src
3
+ graft include
4
+ include CMakeLists.txt
5
+
6
+ # MorphIO submodule dependencies
7
+ include 3rdparty/GSL_LITE/CMakeLists.txt 3rdparty/GSL_LITE/gsl-lite.natvis
8
+ recursive-include 3rdparty/GSL_LITE/cmake *
9
+ recursive-include 3rdparty/GSL_LITE/include *
10
+
11
+ include 3rdparty/HighFive/CMakeLists.txt
12
+ recursive-include 3rdparty/HighFive/include *
13
+ recursive-include 3rdparty/HighFive/CMake *
14
+ recursive-include 3rdparty/HighFive/doc *
15
+
16
+ include 3rdparty/lexertl14/CMakeLists.txt
17
+ recursive-include 3rdparty/lexertl14/include/lexertl *
18
+
19
+ # pybind11 for python bindings
20
+ recursive-include binds/python/pybind11/include *
21
+ recursive-include binds/python/pybind11/tools *.cmake
22
+ include binds/python/pybind11/CMakeLists.txt
23
+ include binds/python/pybind11/LICENSE
24
+
25
+ # setuptools_scm forces all SCM files to be packaged into sdist
26
+ # we need to manually exclude them to prevent their inclusion
27
+ # see https://github.com/pypa/setuptools_scm/issues/190
28
+ prune ci
29
+ prune doc
30
+ prune tests
31
+ prune scripts
32
+ prune examples
@@ -1,11 +1,14 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: MorphIO
3
- Version: 3.3.0
3
+ Version: 3.3.3
4
4
  Summary: A neuron morphology IO library
5
5
  Home-page: https://github.com/BlueBrain/MorphIO/
6
6
  Author: Blue Brain Project, EPFL
7
7
  License: LGPLv3
8
- Description: |license| |build| |docs|
8
+ Description: .. image:: doc/source/logo/BBP-MorphIO.jpg
9
+
10
+
11
+ |license| |build| |docs|
9
12
 
10
13
  MorphIO
11
14
  =======
@@ -13,7 +16,7 @@ Description: |license| |build| |docs|
13
16
  Documentation
14
17
  -------------
15
18
 
16
- MorphIO documentation is built and hosted on `readthedocs <http://morphio.readthedocs.org/>`.
19
+ MorphIO documentation is built and hosted on `readthedocs <http://morphio.readthedocs.org/>`_.
17
20
 
18
21
  * `latest snapshot <http://morphio.readthedocs.org/en/latest/>`_
19
22
  * `latest release <http://morphio.readthedocs.org/en/stable/>`_
@@ -93,8 +96,9 @@ Description: |license| |build| |docs|
93
96
  :alt: documentation status
94
97
 
95
98
 
96
- Keywords: computational neuroscience,morphology,neuronneurolucidaneuromorphology
99
+ Keywords: computational neuroscience,morphology,neuron,neurolucida,neuromorphology
97
100
  Platform: UNKNOWN
98
101
  Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
99
- Description-Content-Type: text/x-rst
102
+ Requires-Python: >=3.7
103
+ Description-Content-Type: text/markdown
100
104
  Provides-Extra: docs