imas-python 0.1.dev1633__tar.gz → 0.1.dev1636__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.

Potentially problematic release.


This version of imas-python might be problematic. Click here for more details.

Files changed (222) hide show
  1. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/PKG-INFO +1 -1
  2. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/installing.rst +6 -30
  3. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/_version.py +2 -2
  4. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/IDSDef.zip +0 -0
  5. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/command/cli.py +1 -3
  6. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/dd_helpers.py +0 -1
  7. imas_python-0.1.dev1636/imas/test/test_dd_helpers.py +57 -0
  8. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas_python.egg-info/PKG-INFO +1 -1
  9. imas_python-0.1.dev1633/imas/test/test_dd_helpers.py +0 -134
  10. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/.git-blame-ignore-revs +0 -0
  11. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/.git_archival.txt +0 -0
  12. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/.gitattributes +0 -0
  13. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/.github/workflows/linting.yml +0 -0
  14. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/.github/workflows/publish.yml +0 -0
  15. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/.gitignore +0 -0
  16. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/.pylintrc +0 -0
  17. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/.readthedocs.yml +0 -0
  18. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/CODE_OF_CONDUCT.md +0 -0
  19. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/CONTRIBUTING.md +0 -0
  20. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/LICENSE.txt +0 -0
  21. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/MANIFEST.in +0 -0
  22. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/README.md +0 -0
  23. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/asv.conf.json +0 -0
  24. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/benchmarks/__init__.py +0 -0
  25. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/benchmarks/core_profiles.py +0 -0
  26. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/benchmarks/edge_profiles.py +0 -0
  27. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/benchmarks/technical.py +0 -0
  28. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/benchmarks/utils.py +0 -0
  29. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/ci/build_dd_zip.sh +0 -0
  30. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/ci/build_docs_and_dist.sh +0 -0
  31. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/ci/linting.sh +0 -0
  32. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/ci/run_benchmark.sh +0 -0
  33. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/ci/run_pytest.sh +0 -0
  34. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/conftest.py +0 -0
  35. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/.gitignore +0 -0
  36. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/Makefile +0 -0
  37. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/.gitignore +0 -0
  38. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_static/imas.css +0 -0
  39. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_static/imas_200x200.png +0 -0
  40. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_templates/autosummary/accessor.rst +0 -0
  41. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_templates/autosummary/accessor_attribute.rst +0 -0
  42. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_templates/autosummary/accessor_callable.rst +0 -0
  43. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_templates/autosummary/accessor_method.rst +0 -0
  44. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_templates/autosummary/base.rst +0 -0
  45. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_templates/custom-class-template.rst +0 -0
  46. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_templates/custom-module-template.rst +0 -0
  47. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/_templates/layout.html +0 -0
  48. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/api-hidden.rst +0 -0
  49. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/api.rst +0 -0
  50. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/benchmarking.rst +0 -0
  51. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/changelog.rst +0 -0
  52. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/ci_config.rst +0 -0
  53. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/cli.rst +0 -0
  54. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/code_style.rst +0 -0
  55. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/conf.py +0 -0
  56. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/configuring.rst +0 -0
  57. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/dd_versions.rst +0 -0
  58. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/explore.rst +0 -0
  59. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/hashing.rst +0 -0
  60. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/alternative_coordinates.py +0 -0
  61. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/autoconvert_get.py +0 -0
  62. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/autoconvert_put.py +0 -0
  63. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/calc_with_units.py +0 -0
  64. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/coordinates.py +0 -0
  65. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/dd_versions.py +0 -0
  66. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/explore_data.py +0 -0
  67. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/explore_structures.py +0 -0
  68. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/hashing.py +0 -0
  69. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/ids_convert.py +0 -0
  70. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/ids_to_xarray.py +0 -0
  71. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/imas_snippets/tensorized_ids_to_xarray.py +0 -0
  72. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/metadata.rst +0 -0
  73. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced/xarray.rst +0 -0
  74. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/advanced_user_training.rst +0 -0
  75. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/analyze.rst +0 -0
  76. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/core_profiles_ne_timeslice.png +0 -0
  77. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/core_profiles_te.png +0 -0
  78. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/create.rst +0 -0
  79. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/explore.rst +0 -0
  80. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_inspect.png +0 -0
  81. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/create_core_profiles.py +0 -0
  82. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/explore_public_ec_launchers.py +0 -0
  83. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/explore_public_pf_active.py +0 -0
  84. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/explore_training_data.py +0 -0
  85. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/find_paths.py +0 -0
  86. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/iterate_core_profiles.py +0 -0
  87. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/plot_core_profiles_ne_timeslice.py +0 -0
  88. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/plot_core_profiles_te.py +0 -0
  89. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/print_idss.py +0 -0
  90. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/read_core_profiles_ne_timeslice.py +0 -0
  91. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/read_equilibrium_time_array.py +0 -0
  92. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/read_whole_equilibrium.py +0 -0
  93. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/imas_snippets/transform_grid.py +0 -0
  94. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/interactive_tab_core_profiles_toplevel.png +0 -0
  95. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/print_tree_ids_properties.png +0 -0
  96. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/setup.rst +0 -0
  97. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic/transform.rst +0 -0
  98. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/courses/basic_user_training.rst +0 -0
  99. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/identifiers.rst +0 -0
  100. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/imas_architecture.rst +0 -0
  101. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/imas_structure.png +0 -0
  102. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/index.rst +0 -0
  103. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/intro.rst +0 -0
  104. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/lazy_loading.rst +0 -0
  105. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/mdsplus.rst +0 -0
  106. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/metadata.rst +0 -0
  107. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/multi-dd.rst +0 -0
  108. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/netcdf/conventions.rst +0 -0
  109. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/netcdf.rst +0 -0
  110. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/release_imas.rst +0 -0
  111. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/resampling.rst +0 -0
  112. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/docs/source/validation.rst +0 -0
  113. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/__init__.py +0 -0
  114. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/__main__.py +0 -0
  115. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/_util.py +0 -0
  116. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/IDSDef2MDSpreTree.xsl +0 -0
  117. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/IDS_fake_toplevel.xml +0 -0
  118. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/IDS_minimal.xml +0 -0
  119. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/IDS_minimal_2.xml +0 -0
  120. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/IDS_minimal_struct_array.xml +0 -0
  121. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/IDS_minimal_types.xml +0 -0
  122. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/ITER_134173_106_core_profiles.ids +0 -0
  123. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/ITER_134173_106_equilibrium.ids +0 -0
  124. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/README.md +0 -0
  125. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/core_profiles.ids +0 -0
  126. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/assets/equilibrium.ids +0 -0
  127. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/__init__.py +0 -0
  128. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/db_entry_impl.py +0 -0
  129. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/imas_core/__init__.py +0 -0
  130. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/imas_core/al_context.py +0 -0
  131. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/imas_core/db_entry_al.py +0 -0
  132. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/imas_core/db_entry_helpers.py +0 -0
  133. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/imas_core/imas_interface.py +0 -0
  134. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/imas_core/mdsplus_model.py +0 -0
  135. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/imas_core/uda_support.py +0 -0
  136. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/netcdf/__init__.py +0 -0
  137. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/netcdf/db_entry_nc.py +0 -0
  138. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/netcdf/ids2nc.py +0 -0
  139. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/netcdf/nc2ids.py +0 -0
  140. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/netcdf/nc_metadata.py +0 -0
  141. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/backends/netcdf/nc_validate.py +0 -0
  142. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/command/db_analysis.py +0 -0
  143. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/command/helpers.py +0 -0
  144. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/command/timer.py +0 -0
  145. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/db_entry.py +0 -0
  146. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/dd_zip.py +0 -0
  147. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/exception.py +0 -0
  148. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_base.py +0 -0
  149. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_convert.py +0 -0
  150. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_coordinates.py +0 -0
  151. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_data_type.py +0 -0
  152. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_defs.py +0 -0
  153. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_factory.py +0 -0
  154. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_identifiers.py +0 -0
  155. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_metadata.py +0 -0
  156. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_path.py +0 -0
  157. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_primitive.py +0 -0
  158. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_struct_array.py +0 -0
  159. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_structure.py +0 -0
  160. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/ids_toplevel.py +0 -0
  161. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/setup_logging.py +0 -0
  162. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_all_dd_versions.py +0 -0
  163. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_cli.py +0 -0
  164. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_dbentry.py +0 -0
  165. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_dd_zip.py +0 -0
  166. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_deepcopy.py +0 -0
  167. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_exception.py +0 -0
  168. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_get_sample.py +0 -0
  169. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_hash.py +0 -0
  170. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_helpers.py +0 -0
  171. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_identifiers.py +0 -0
  172. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids2nc.py +0 -0
  173. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_ascii_data.py +0 -0
  174. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_convert.py +0 -0
  175. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_coordinates.py +0 -0
  176. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_data_type.py +0 -0
  177. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_factory.py +0 -0
  178. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_metadata.py +0 -0
  179. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_mixin.py +0 -0
  180. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_path.py +0 -0
  181. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_primitive.py +0 -0
  182. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_struct_array.py +0 -0
  183. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_structure.py +0 -0
  184. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_toplevel.py +0 -0
  185. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_ids_validate.py +0 -0
  186. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_latest_dd_autofill.py +0 -0
  187. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_latest_dd_manual.py +0 -0
  188. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_latest_dd_resample.py +0 -0
  189. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_lazy_loading.py +0 -0
  190. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_list_occurrences.py +0 -0
  191. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_minimal.py +0 -0
  192. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_minimal_conversion.py +0 -0
  193. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_minimal_io.py +0 -0
  194. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_minimal_struct_array_io.py +0 -0
  195. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_minimal_types.py +0 -0
  196. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_minimal_types_io.py +0 -0
  197. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_minimal_types_io_automatic.py +0 -0
  198. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_nbc_change.py +0 -0
  199. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_nc_autofill.py +0 -0
  200. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_nc_entry.py +0 -0
  201. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_nc_metadata.py +0 -0
  202. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_nc_validation.py +0 -0
  203. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_snippets.py +0 -0
  204. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_static_ids.py +0 -0
  205. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_str_1d.py +0 -0
  206. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_time_slicing.py +0 -0
  207. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_uda_support.py +0 -0
  208. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/test/test_util.py +0 -0
  209. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/training.py +0 -0
  210. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas/util.py +0 -0
  211. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas_python.egg-info/SOURCES.txt +0 -0
  212. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas_python.egg-info/dependency_links.txt +0 -0
  213. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas_python.egg-info/entry_points.txt +0 -0
  214. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas_python.egg-info/not-zip-safe +0 -0
  215. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas_python.egg-info/requires.txt +0 -0
  216. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/imas_python.egg-info/top_level.txt +0 -0
  217. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/pyproject.toml +0 -0
  218. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/setup.cfg +0 -0
  219. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/setup.py +0 -0
  220. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/tools/compare_lowlevel_access_patterns.py +0 -0
  221. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/tools/extract_test_data.py +0 -0
  222. {imas_python-0.1.dev1633 → imas_python-0.1.dev1636}/tools/get_tagnames.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: imas-python
3
- Version: 0.1.dev1633
3
+ Version: 0.1.dev1636
4
4
  Summary: Pythonic wrappers for the IMAS Access Layer
5
5
  Author: imas-python developers
6
6
  Author-email: Olivier Hoenen <olivier.hoenen@iter.org>
@@ -4,33 +4,19 @@ Installing imas-python
4
4
  ======================
5
5
 
6
6
  imas-python is a pure Python package. For full functionality of the package you need
7
- an installation of `the IMAS Access Layer <https://imas.iter.org/>`_. See
7
+ an installation of `the IMAS Core library <https://imas.iter.org/>`_. See
8
8
  :ref:`imas-python 5 minute introduction` for an overview of functionality which does
9
- (not) require the IMAS Access Layer available.
9
+ (not) require the IMAS Core library available.
10
10
 
11
-
12
- imas-python modules on the ITER cluster and EuroFusion gateway
13
- --------------------------------------------------------------
14
-
15
- There is a `module` available on the ITER and Eurofusion Gateway clusters, so
16
- you can run:
11
+ To get started, you can install it from `pypi.org <https://pypi.org/project/imas-python>`_:
17
12
 
18
13
  .. code-block:: bash
19
14
 
20
- module load imas-python
21
-
22
- Additionally, if you wish to use the MDSPlus backend, you should load:
23
-
24
- .. code-block:: bash
15
+ pip install imas-python
25
16
 
26
- module load MDSplus-Java/7.96.17-GCCcore-10.2.0-Java-11
27
17
 
28
- If you're using a different cluster, please contact your system administrator to see
29
- if imas-python is available (or can be made available) on the system.
30
-
31
-
32
- Local installation
33
- ------------------
18
+ Local installation from sources
19
+ -------------------------------
34
20
 
35
21
  We recommend using a :external:py:mod:`venv`. Then, clone the imas-python repository
36
22
  and run `pip install`:
@@ -81,13 +67,3 @@ And to build the imas-python documentation, execute:
81
67
  make -C docs html
82
68
 
83
69
 
84
- Installation without ITER access
85
- --------------------------------
86
-
87
- The installation script tries to access the `ITER IMAS Core Data Dictionary
88
- repository <https://github.com/iterorganization/imas-data-dictionary>`_
89
- to fetch the latest versions. If you do not have git+ssh access there, you can
90
- try to find this repository elsewhere, and do a ``git fetch --tags``.
91
-
92
- Alternatively you could try to obtain an ``IDSDef.zip`` and place it in
93
- ``~/.config/imas/``.
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.1.dev1633'
16
- __version_tuple__ = version_tuple = (0, 1, 'dev1633')
15
+ __version__ = version = '0.1.dev1636'
16
+ __version_tuple__ = version_tuple = (0, 1, 'dev1636')
@@ -77,9 +77,7 @@ def print_version():
77
77
  grid.add_row("Available data dictionary versions:", dd_versions)
78
78
  grid.add_section()
79
79
  try:
80
- grid.add_row(
81
- "Access Layer core version:", ll_interface.get_al_version() or "N/A"
82
- )
80
+ grid.add_row("Access Layer core version:", ll_interface.get_al_version())
83
81
  except Exception:
84
82
  grid.add_row("Access Layer core version:", "N/A")
85
83
  console.Console().print(grid)
@@ -25,7 +25,6 @@ def prepare_data_dictionaries():
25
25
  3. Generate IDSDef.xml and rename to IDSDef_${version}.xml
26
26
  4. Zip all these IDSDefs together and include in wheel
27
27
  """
28
- print("prepare_data_dictionaries")
29
28
  from git import Repo
30
29
 
31
30
  repo: Repo = get_data_dictionary_repo()
@@ -0,0 +1,57 @@
1
+ from pathlib import Path
2
+ import shutil
3
+ import pytest
4
+ import os
5
+ import zipfile
6
+
7
+ from imas.dd_helpers import prepare_data_dictionaries, _idsdef_zip_relpath, _build_dir
8
+
9
+ _idsdef_unzipped_relpath = Path("idsdef_unzipped")
10
+
11
+
12
+ def test_prepare_data_dictionaries():
13
+ prepare_data_dictionaries()
14
+ assert os.path.exists(
15
+ _idsdef_zip_relpath
16
+ ), f"IDSDef.zip file does not exist at path: {_idsdef_zip_relpath}"
17
+
18
+ expected_xml_files = [
19
+ _build_dir / "3.40.0.xml",
20
+ _build_dir / "3.41.0.xml",
21
+ _build_dir / "3.42.0.xml",
22
+ _build_dir / "4.0.0.xml",
23
+ ]
24
+
25
+ for xml_file in expected_xml_files:
26
+ assert os.path.exists(xml_file), f"{xml_file} does not exist"
27
+
28
+ with zipfile.ZipFile(_idsdef_zip_relpath, "r") as zip_ref:
29
+ zip_ref.extractall(_idsdef_unzipped_relpath)
30
+
31
+ expected_ids_directories = [
32
+ _idsdef_unzipped_relpath / "data-dictionary" / "3.40.0.xml",
33
+ _idsdef_unzipped_relpath / "data-dictionary" / "3.41.0.xml",
34
+ _idsdef_unzipped_relpath / "data-dictionary" / "3.42.0.xml",
35
+ _idsdef_unzipped_relpath / "data-dictionary" / "4.0.0.xml",
36
+ _idsdef_unzipped_relpath
37
+ / "identifiers"
38
+ / "core_sources"
39
+ / "core_source_identifier.xml",
40
+ _idsdef_unzipped_relpath
41
+ / "identifiers"
42
+ / "equilibrium"
43
+ / "equilibrium_profiles_2d_identifier.xml",
44
+ ]
45
+
46
+ for file_path in expected_ids_directories:
47
+ assert os.path.exists(
48
+ file_path
49
+ ), f"Expected_ids_directories {file_path} does not exist"
50
+
51
+ if _build_dir.exists():
52
+ shutil.rmtree(_idsdef_unzipped_relpath)
53
+ print(f"Removed directory: {_idsdef_unzipped_relpath}")
54
+
55
+
56
+ if __name__ == "__main__":
57
+ pytest.main()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: imas-python
3
- Version: 0.1.dev1633
3
+ Version: 0.1.dev1636
4
4
  Summary: Pythonic wrappers for the IMAS Access Layer
5
5
  Author: imas-python developers
6
6
  Author-email: Olivier Hoenen <olivier.hoenen@iter.org>
@@ -1,134 +0,0 @@
1
- import pytest
2
-
3
- from imas.dd_helpers import find_saxon_classpath
4
-
5
- # TODO: Write tests!
6
- # def prepare_data_dictionaries():
7
- # def get_saxon():
8
- # def find_saxon_jar():
9
-
10
- # Quadruplets of (cluster, module, real path, name)
11
- saxon_binary_quadruplets = (
12
- (
13
- "SDCC",
14
- "Saxon-HE/10.3-Java-1.8",
15
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-1.8/saxon-he-10.3.jar",
16
- "saxon-he-10.3.jar",
17
- ),
18
- (
19
- "SDCC",
20
- "Saxon-HE/10.3-Java-11",
21
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-10.3.jar",
22
- "saxon-he-10.3.jar",
23
- ),
24
- (
25
- "HPC",
26
- "Saxon-HE/9.7.0.14-Java-1.6.0_45",
27
- "/work/imas/opt/EasyBuild/software/Saxon-HE/9.7.0.14-Java-1.6.0_45/saxon9he.jar",
28
- "saxon9he.jar",
29
- ),
30
- (
31
- "HPC",
32
- "Saxon-HE/9.7.0.4-Java-1.7.0_79",
33
- "/work/imas/opt/EasyBuild/software/Saxon-HE/9.7.0.4-Java-1.7.0_79/saxon9he.jar",
34
- "saxon9he.jar",
35
- ),
36
- (
37
- "HPC",
38
- "Saxon-HE/9.7.0.21-Java-1.8.0_162",
39
- "/work/imas/opt/EasyBuild/software/Saxon-HE/9.7.0.21-Java-1.8.0_162/saxon9he.jar",
40
- "saxon9he.jar",
41
- ),
42
- (
43
- "HPC",
44
- "Saxon-HE/9.9.1.7-Java-13",
45
- "/work/imas/opt/EasyBuild/software/Saxon-HE/9.9.1.7-Java-13/saxon9he.jar",
46
- "saxon9he.jar",
47
- ),
48
- (
49
- "HPC",
50
- "Saxon-HE/10.3-Java-11",
51
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-10.3.jar",
52
- "saxon-he-10.3.jar",
53
- ),
54
- )
55
-
56
- saxon_nonmatches = (
57
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-test-10.3.jar",
58
- )
59
-
60
-
61
- # find_saxon_bin tries to find saxon in the CLASSPATH env variable
62
- # It is thus per definition environment dependent
63
- def test_empty_classpath(monkeypatch):
64
- monkeypatch.setenv("CLASSPATH", "")
65
- saxon_jar_path = find_saxon_classpath()
66
- assert saxon_jar_path is None
67
-
68
-
69
- @pytest.mark.parametrize("cluster,module,path,name", saxon_binary_quadruplets)
70
- def test_classpath(monkeypatch, cluster, module, path, name):
71
- monkeypatch.setenv("CLASSPATH", path)
72
- saxon_jar_path = find_saxon_classpath()
73
- assert saxon_jar_path == path
74
-
75
-
76
- @pytest.mark.parametrize("path", saxon_nonmatches)
77
- def test_classpath_do_not_match(monkeypatch, path):
78
- monkeypatch.setenv("CLASSPATH", path)
79
- saxon_jar_path = find_saxon_classpath()
80
- assert saxon_jar_path is None
81
-
82
-
83
- # ITER SDCC login01 20210617
84
- # module load GCCcore/10.2.0
85
- # module load Python/3.8.6-GCCcore-10.2.0
86
- # module load MDSplus/7.96.17-GCCcore-10.2.0
87
- # module load HDF5/1.10.7-iimpi-2020b # todo: Intel MPI version?
88
- # module load Boost/1.74.0-GCCcore-10.2.0
89
- # module load MDSplus-Java/7.96.17-GCCcore-10.2.0-Java-11
90
- # module load Saxon-HE/10.3-Java-11
91
- def test_classpath_sdcc(monkeypatch):
92
- monkeypatch.setenv(
93
- "CLASSPATH",
94
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-xqj-10.3.jar:"
95
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-test-10.3.jar:"
96
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/jline-2.9.jar:"
97
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-10.3.jar:"
98
- "/work/imas/opt/EasyBuild/software/MDSplus-Java/7.96.17-GCCcore-10.2.0-Java-11/java/classes/*",
99
- )
100
- saxon_jar_path = find_saxon_classpath()
101
- assert (
102
- saxon_jar_path
103
- == "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-10.3.jar"
104
- )
105
-
106
-
107
- # ITER HPC login01 20210617
108
- # module load GCCcore/10.2.0
109
- # module load Python/3.8.6-GCCcore-10.2.0
110
- # module load MDSplus/7.96.17-GCCcore-10.2.0
111
- # module load HDF5/1.10.7-iimpi-2020b # todo: Intel MPI version?
112
- # module load Boost/1.74.0-GCCcore-10.2.0
113
- # module load MDSplus-Java/7.96.17-GCCcore-10.2.0-Java-11
114
- # module load Saxon-HE/10.3-Java-11
115
- def test_classpath_hpc(monkeypatch):
116
- monkeypatch.setenv(
117
- "CLASSPATH",
118
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-xqj-10.3.jar:"
119
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-test-10.3.jar:"
120
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/jline-2.9.jar:"
121
- "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-10.3.jar:"
122
- "/work/imas/opt/EasyBuild/software/MDSplus-Java/7.96.17-GCCcore-10.2.0-Java-11/java/classes/*",
123
- )
124
- saxon_jar_path = find_saxon_classpath()
125
- assert (
126
- saxon_jar_path
127
- == "/work/imas/opt/EasyBuild/software/Saxon-HE/10.3-Java-11/saxon-he-10.3.jar"
128
- )
129
-
130
-
131
- # TODO: Write tests!
132
- # def find_saxon_bin():
133
- # def get_data_dictionary_repo():
134
- # def build_data_dictionary():