brkraw 0.5.5__tar.gz → 0.5.6__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 (199) hide show
  1. {brkraw-0.5.5 → brkraw-0.5.6}/.github/workflows/release.yml +14 -7
  2. {brkraw-0.5.5 → brkraw-0.5.6}/.github/workflows/release_on_merge.yml +8 -0
  3. {brkraw-0.5.5 → brkraw-0.5.6}/CITATION.cff +1 -1
  4. {brkraw-0.5.5 → brkraw-0.5.6}/PKG-INFO +3 -3
  5. {brkraw-0.5.5 → brkraw-0.5.6}/README.md +2 -2
  6. brkraw-0.5.6/RELEASE_NOTES.md +14 -0
  7. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/__init__.py +1 -1
  8. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/types.py +2 -2
  9. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/resolver/affine.py +11 -4
  10. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/resolver/nifti.py +1 -1
  11. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/zenodo_badge.svg +2 -2
  12. {brkraw-0.5.5 → brkraw-0.5.6}/docs/dev/contributors.md +1 -1
  13. brkraw-0.5.5/RELEASE_NOTES.md +0 -17
  14. {brkraw-0.5.5 → brkraw-0.5.6}/.github/DISCUSSION_TEMPLATE/proposal.yml +0 -0
  15. {brkraw-0.5.5 → brkraw-0.5.6}/.github/DISCUSSION_TEMPLATE/question.yml +0 -0
  16. {brkraw-0.5.5 → brkraw-0.5.6}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  17. {brkraw-0.5.5 → brkraw-0.5.6}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  18. {brkraw-0.5.5 → brkraw-0.5.6}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  19. {brkraw-0.5.5 → brkraw-0.5.6}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  20. {brkraw-0.5.5 → brkraw-0.5.6}/.github/copilot-instructions.md +0 -0
  21. {brkraw-0.5.5 → brkraw-0.5.6}/.github/workflows/ci.yml +0 -0
  22. {brkraw-0.5.5 → brkraw-0.5.6}/.github/workflows/docs.yml +0 -0
  23. {brkraw-0.5.5 → brkraw-0.5.6}/.github/workflows/publish.yml +0 -0
  24. {brkraw-0.5.5 → brkraw-0.5.6}/.gitignore +0 -0
  25. {brkraw-0.5.5 → brkraw-0.5.6}/.markdownlint.yaml +0 -0
  26. {brkraw-0.5.5 → brkraw-0.5.6}/.vscode/settings.json +0 -0
  27. {brkraw-0.5.5 → brkraw-0.5.6}/.vscode/tasks.json +0 -0
  28. {brkraw-0.5.5 → brkraw-0.5.6}/AGENTS.md +0 -0
  29. {brkraw-0.5.5 → brkraw-0.5.6}/CODE_OF_CONDUCT.md +0 -0
  30. {brkraw-0.5.5 → brkraw-0.5.6}/CONTRIBUTING.md +0 -0
  31. {brkraw-0.5.5 → brkraw-0.5.6}/LICENSE +0 -0
  32. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/api/__init__.py +0 -0
  33. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/api/types.py +0 -0
  34. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/__init__.py +0 -0
  35. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/addon/__init__.py +0 -0
  36. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/addon/core.py +0 -0
  37. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/addon/dependencies.py +0 -0
  38. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/addon/installation.py +0 -0
  39. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/addon/io.py +0 -0
  40. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/hook/__init__.py +0 -0
  41. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/hook/core.py +0 -0
  42. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/__init__.py +0 -0
  43. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/core.py +0 -0
  44. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/formatter.py +0 -0
  45. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/helper.py +0 -0
  46. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/info/__init__.py +0 -0
  47. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/info/scan.py +0 -0
  48. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/info/scan.yaml +0 -0
  49. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/info/study.py +0 -0
  50. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/info/study.yaml +0 -0
  51. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/apps/loader/info/transform.py +0 -0
  52. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/__init__.py +0 -0
  53. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/__init__.py +0 -0
  54. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/addon.py +0 -0
  55. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/cache.py +0 -0
  56. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/config.py +0 -0
  57. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/convert.py +0 -0
  58. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/hook.py +0 -0
  59. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/info.py +0 -0
  60. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/init.py +0 -0
  61. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/params.py +0 -0
  62. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/prune.py +0 -0
  63. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/commands/session.py +0 -0
  64. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/hook_args.py +0 -0
  65. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/main.py +0 -0
  66. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/cli/utils.py +0 -0
  67. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/__init__.py +0 -0
  68. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/cache.py +0 -0
  69. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/config.py +0 -0
  70. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/entrypoints.py +0 -0
  71. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/formatter.py +0 -0
  72. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/fs.py +0 -0
  73. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/jcamp.py +0 -0
  74. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/layout.py +0 -0
  75. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/parameters.py +0 -0
  76. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/core/zip.py +0 -0
  77. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/dataclasses/__init__.py +0 -0
  78. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/dataclasses/node.py +0 -0
  79. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/dataclasses/reco.py +0 -0
  80. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/dataclasses/scan.py +0 -0
  81. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/dataclasses/study.py +0 -0
  82. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/default/__init__.py +0 -0
  83. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/default/pruner_specs/deid4share.yaml +0 -0
  84. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/default/rules/00_default.yaml +0 -0
  85. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/default/specs/metadata_dicom.yaml +0 -0
  86. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/default/specs/metadata_transforms.py +0 -0
  87. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/resolver/__init__.py +0 -0
  88. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/resolver/datatype.py +0 -0
  89. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/resolver/fid.py +0 -0
  90. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/resolver/helpers.py +0 -0
  91. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/resolver/image.py +0 -0
  92. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/resolver/shape.py +0 -0
  93. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/schema/__init__.py +0 -0
  94. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/schema/context_map.yaml +0 -0
  95. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/schema/meta.yaml +0 -0
  96. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/schema/niftiheader.yaml +0 -0
  97. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/schema/pruner.yaml +0 -0
  98. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/schema/remapper.yaml +0 -0
  99. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/schema/rules.yaml +0 -0
  100. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/__init__.py +0 -0
  101. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/hook/__init__.py +0 -0
  102. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/hook/logic.py +0 -0
  103. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/hook/validator.py +0 -0
  104. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/meta/__init__.py +0 -0
  105. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/meta/validator.py +0 -0
  106. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/pruner/__init__.py +0 -0
  107. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/pruner/logic.py +0 -0
  108. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/pruner/validator.py +0 -0
  109. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/remapper/__init__.py +0 -0
  110. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/remapper/logic.py +0 -0
  111. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/remapper/validator.py +0 -0
  112. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/rules/__init__.py +0 -0
  113. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/rules/logic.py +0 -0
  114. {brkraw-0.5.5 → brkraw-0.5.6}/brkraw/specs/rules/validator.py +0 -0
  115. {brkraw-0.5.5 → brkraw-0.5.6}/docs/api/addon.md +0 -0
  116. {brkraw-0.5.5 → brkraw-0.5.6}/docs/api/convert.md +0 -0
  117. {brkraw-0.5.5 → brkraw-0.5.6}/docs/api/data-access.md +0 -0
  118. {brkraw-0.5.5 → brkraw-0.5.6}/docs/api/hook.md +0 -0
  119. {brkraw-0.5.5 → brkraw-0.5.6}/docs/api/info.md +0 -0
  120. {brkraw-0.5.5 → brkraw-0.5.6}/docs/api/layout.md +0 -0
  121. {brkraw-0.5.5 → brkraw-0.5.6}/docs/api/overview.md +0 -0
  122. {brkraw-0.5.5 → brkraw-0.5.6}/docs/api/prune.md +0 -0
  123. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/brkraw-logo-dark.svg +0 -0
  124. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/brkraw-logo-light.svg +0 -0
  125. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/brkraw-logo.svg +0 -0
  126. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/favicon-16.png +0 -0
  127. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/favicon-192.png +0 -0
  128. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/favicon-32.png +0 -0
  129. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/favicon-512.png +0 -0
  130. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/favicon-dark.svg +0 -0
  131. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/favicon-light.svg +0 -0
  132. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/favicon.ico +0 -0
  133. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/favicon.svg +0 -0
  134. {brkraw-0.5.5 → brkraw-0.5.6}/docs/assets/site.webmanifest +0 -0
  135. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/addon.md +0 -0
  136. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/cache.md +0 -0
  137. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/config.md +0 -0
  138. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/convert.md +0 -0
  139. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/hook.md +0 -0
  140. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/index.md +0 -0
  141. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/info.md +0 -0
  142. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/prune.md +0 -0
  143. {brkraw-0.5.5 → brkraw-0.5.6}/docs/cli/session.md +0 -0
  144. {brkraw-0.5.5 → brkraw-0.5.6}/docs/dev/cli-extensions.md +0 -0
  145. {brkraw-0.5.5 → brkraw-0.5.6}/docs/dev/contributing.md +0 -0
  146. {brkraw-0.5.5 → brkraw-0.5.6}/docs/dev/core-vs-addon.md +0 -0
  147. {brkraw-0.5.5 → brkraw-0.5.6}/docs/dev/documentation.md +0 -0
  148. {brkraw-0.5.5 → brkraw-0.5.6}/docs/dev/hook-packages.md +0 -0
  149. {brkraw-0.5.5 → brkraw-0.5.6}/docs/dev/roadmap.md +0 -0
  150. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/api.md +0 -0
  151. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/backup.md +0 -0
  152. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/bids.md +0 -0
  153. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/cli.md +0 -0
  154. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/configuration.md +0 -0
  155. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/hooks.md +0 -0
  156. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/index.md +0 -0
  157. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/mrs.md +0 -0
  158. {brkraw-0.5.5 → brkraw-0.5.6}/docs/getting-started/viewer.md +0 -0
  159. {brkraw-0.5.5 → brkraw-0.5.6}/docs/index.md +0 -0
  160. {brkraw-0.5.5 → brkraw-0.5.6}/docs/overrides/404.html +0 -0
  161. {brkraw-0.5.5 → brkraw-0.5.6}/docs/overrides/partials/extrahead.html +0 -0
  162. {brkraw-0.5.5 → brkraw-0.5.6}/docs/reference/addons-and-plugins.md +0 -0
  163. {brkraw-0.5.5 → brkraw-0.5.6}/docs/reference/cli-extensions.md +0 -0
  164. {brkraw-0.5.5 → brkraw-0.5.6}/docs/reference/context-map.md +0 -0
  165. {brkraw-0.5.5 → brkraw-0.5.6}/docs/reference/extensibility.md +0 -0
  166. {brkraw-0.5.5 → brkraw-0.5.6}/docs/reference/hook-packages.md +0 -0
  167. {brkraw-0.5.5 → brkraw-0.5.6}/docs/reference/layout.md +0 -0
  168. {brkraw-0.5.5 → brkraw-0.5.6}/docs/reference/rules.md +0 -0
  169. {brkraw-0.5.5 → brkraw-0.5.6}/docs/reference/specs.md +0 -0
  170. {brkraw-0.5.5 → brkraw-0.5.6}/docs/stylesheets/extra.css +0 -0
  171. {brkraw-0.5.5 → brkraw-0.5.6}/mkdocs.yml +0 -0
  172. {brkraw-0.5.5 → brkraw-0.5.6}/pyproject.toml +0 -0
  173. {brkraw-0.5.5 → brkraw-0.5.6}/scripts/release_pr.py +10 -10
  174. {brkraw-0.5.5 → brkraw-0.5.6}/scripts/release_prep.py +0 -0
  175. {brkraw-0.5.5 → brkraw-0.5.6}/scripts/tag_and_push.py +0 -0
  176. {brkraw-0.5.5 → brkraw-0.5.6}/scripts/update_contributors.py +0 -0
  177. {brkraw-0.5.5 → brkraw-0.5.6}/scripts/update_readme_bibtex.py +0 -0
  178. {brkraw-0.5.5 → brkraw-0.5.6}/scripts/update_zenodo_badge.py +0 -0
  179. {brkraw-0.5.5 → brkraw-0.5.6}/tests/conftest.py +0 -0
  180. {brkraw-0.5.5 → brkraw-0.5.6}/tests/helpers.py +0 -0
  181. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/__init__.py +0 -0
  182. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/fixtures/acqp_EPI_pv5_1.jdx +0 -0
  183. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/fixtures/method_EPI_pv5_1.jdx +0 -0
  184. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/fixtures/method_FLASH_pv360_3_1.jdx +0 -0
  185. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/test_formatter.py +0 -0
  186. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/test_fs.py +0 -0
  187. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/test_jcamp.py +0 -0
  188. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/test_parameters.py +0 -0
  189. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/test_resources.py +0 -0
  190. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_01_core/test_zip.py +0 -0
  191. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_02_dataclasses/test_dir-vs-zipped.py +0 -0
  192. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_03_resolver/test_affine.py +0 -0
  193. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_04_specs/test_context_map_cases.py +0 -0
  194. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_04_specs/test_remapper.py +0 -0
  195. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_apps/test_affine_post_transform.py +0 -0
  196. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_apps/test_loader_info_missing_visu_pars.py +0 -0
  197. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_cli/test_hook_args_yaml.py +0 -0
  198. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_cli/test_hook_preset.py +0 -0
  199. {brkraw-0.5.5 → brkraw-0.5.6}/tests/test_scripts/test_update_contributors.py +0 -0
@@ -14,6 +14,8 @@ on:
14
14
  permissions:
15
15
  contents: write
16
16
  discussions: write
17
+ id-token: write
18
+ actions: write
17
19
 
18
20
  jobs:
19
21
  release:
@@ -148,21 +150,26 @@ jobs:
148
150
  echo "Zenodo badge update attempt $i/10"
149
151
  python3 scripts/update_zenodo_badge.py --up-to-date-exit-code 2
150
152
  exit_code=$?
153
+ set -e
154
+
151
155
  if [ "$exit_code" -eq 0 ]; then
152
156
  echo "Zenodo badge updated."
153
157
  exit 0
154
158
  fi
159
+
155
160
  if [ "$exit_code" -ne 2 ]; then
156
161
  exit "$exit_code"
157
162
  fi
163
+
158
164
  sleep 60
159
165
  done
166
+
160
167
  echo "Zenodo badge still up to date after 10 attempts; giving up."
161
168
 
162
- publish:
163
- if: ${{ github.repository == 'BrkRaw/brkraw' && (needs.release.outputs.prerelease == 'true' || needs.release.outputs.zenodo_success == 'true') }}
164
- needs: [release]
165
- uses: ./.github/workflows/publish.yml
166
- with:
167
- target: ${{ needs.release.outputs.prerelease == 'true' && 'testpypi' || 'pypi' }}
168
- tag: ${{ needs.release.outputs.tag }}
169
+ - name: Trigger publish workflow
170
+ env:
171
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
172
+ run: |
173
+ target="${{ steps.prerelease.outputs.value == 'true' && 'testpypi' || 'pypi' }}"
174
+ tag="${{ steps.tag.outputs.value }}"
175
+ gh workflow run publish.yml -f target="$target" -f tag="$tag"
@@ -6,6 +6,7 @@ on:
6
6
 
7
7
  permissions:
8
8
  contents: write
9
+ actions: write
9
10
 
10
11
  jobs:
11
12
  tag_release:
@@ -116,3 +117,10 @@ jobs:
116
117
  fi
117
118
  git tag "$tag" "${{ github.sha }}"
118
119
  git push origin "$tag"
120
+ - name: Trigger release workflow
121
+ if: ${{ steps.version.outputs.changed == 'true' }}
122
+ env:
123
+ GH_TOKEN: ${{ github.token }}
124
+ run: |
125
+ tag="${{ steps.version.outputs.value }}"
126
+ gh workflow run release.yml -f tag="$tag"
@@ -34,4 +34,4 @@ keywords:
34
34
  - BIDS
35
35
  - neuroimaging
36
36
 
37
- version: "0.5.5"
37
+ version: "0.5.6"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: brkraw
3
- Version: 0.5.5
3
+ Version: 0.5.6
4
4
  Summary: Toolkit for loading Bruker Paravision datasets, mapping metadata, and exporting NIfTI
5
5
  Project-URL: Homepage, https://brkraw.github.io
6
6
  Maintainer-email: SungHo Lee <shlee@unc.edu>
@@ -49,7 +49,7 @@ Description-Content-Type: text/markdown
49
49
 
50
50
  A modular toolkit for Bruker MRI raw-data handling.
51
51
 
52
- BrkRaw (v0.5.5) converts raw data into standardized, neuroimaging-ready
52
+ BrkRaw (v0.5.6) converts raw data into standardized, neuroimaging-ready
53
53
  datasets, with extensible rules/specs and plugin hooks.
54
54
 
55
55
  - Documentation: [brkraw.github.io](https://brkraw.github.io/)
@@ -70,7 +70,7 @@ If you use BrkRaw in your research, please cite it.
70
70
  @software{brkraw,
71
71
  author = {Lee, Sung-Ho and Devenyi, Gabriel A. and Ban, Woomi and Shih, Yen-Yu Ian},
72
72
  title = {BrkRaw: A modular toolkit for Bruker MRI raw-data handling},
73
- version = {0.5.5},
73
+ version = {0.5.6},
74
74
  doi = {10.5281/zenodo.3818614},
75
75
  url = {https://github.com/BrkRaw/brkraw},
76
76
  note = {Documentation: https://brkraw.github.io},
@@ -10,7 +10,7 @@
10
10
 
11
11
  A modular toolkit for Bruker MRI raw-data handling.
12
12
 
13
- BrkRaw (v0.5.5) converts raw data into standardized, neuroimaging-ready
13
+ BrkRaw (v0.5.6) converts raw data into standardized, neuroimaging-ready
14
14
  datasets, with extensible rules/specs and plugin hooks.
15
15
 
16
16
  - Documentation: [brkraw.github.io](https://brkraw.github.io/)
@@ -31,7 +31,7 @@ If you use BrkRaw in your research, please cite it.
31
31
  @software{brkraw,
32
32
  author = {Lee, Sung-Ho and Devenyi, Gabriel A. and Ban, Woomi and Shih, Yen-Yu Ian},
33
33
  title = {BrkRaw: A modular toolkit for Bruker MRI raw-data handling},
34
- version = {0.5.5},
34
+ version = {0.5.6},
35
35
  doi = {10.5281/zenodo.3818614},
36
36
  url = {https://github.com/BrkRaw/brkraw},
37
37
  note = {Documentation: https://brkraw.github.io},
@@ -0,0 +1,14 @@
1
+ # Release v0.5.6
2
+
3
+ Date: 2026-01-29
4
+ Changes since 0.5.5
5
+
6
+ - chore: prepare release v0.5.6 (3a23f42)
7
+ - docs: update contributors (b36012b)
8
+ - ci: replace the locaiton of gh command to get pr number (e522e6b)
9
+ - fix: cast NIfTI dataobj shape (f0bae05)
10
+ - fix: make type aliases explicit (ad1d065)
11
+ - ci: add actions:write permission to trigger other workflow. (2a4a71d)
12
+ - ci: fix Zenodo badge update retry logic (ff66a7d)
13
+ - Update Zenodo DOI badge (a6d453e)
14
+ - ci(release): allow OIDC by granting id-token permission (db29a36)
@@ -1,6 +1,6 @@
1
1
  from __future__ import annotations
2
2
 
3
- __version__ = '0.5.5'
3
+ __version__ = '0.5.6'
4
4
  from .apps.loader import BrukerLoader
5
5
 
6
6
 
@@ -28,10 +28,10 @@ if TYPE_CHECKING:
28
28
  from ...resolver.nifti import Nifti1HeaderContents, XYZUNIT, TUNIT
29
29
 
30
30
 
31
- InfoScope = Literal['full', 'study', 'scan']
31
+ InfoScope: TypeAlias = Literal['full', 'study', 'scan']
32
32
  Dataobjs = Optional[Union[NDArray, Tuple[NDArray, ...]]]
33
33
  Affines = Optional[Union[NDArray, Tuple[NDArray, ...]]]
34
- AffineSpace = Literal["raw", "scanner", "subject_ras"]
34
+ AffineSpace: TypeAlias = Literal["raw", "scanner", "subject_ras"]
35
35
  ConvertedObj = Optional[Union["ToFilename", Tuple["ToFilename", ...]]]
36
36
  Metadata = Optional[Union[Dict, Tuple[Optional[Dict], ...]]]
37
37
  HookArgs = Optional[Mapping[str, Mapping[str, Any]]]
@@ -1,6 +1,13 @@
1
1
  from __future__ import annotations
2
- from typing import Optional, Union, TypedDict, Tuple, Literal, List, Any
3
- from typing import cast, TYPE_CHECKING
2
+ from typing import Optional, Union, TypedDict, Tuple, Literal, List, Any, TYPE_CHECKING
3
+ from typing import cast
4
+ if TYPE_CHECKING:
5
+ from typing_extensions import TypeAlias
6
+ else:
7
+ try:
8
+ from typing import TypeAlias
9
+ except ImportError: # pragma: no cover - fallback for Python 3.8
10
+ from typing_extensions import TypeAlias
4
11
  from .helpers import get_file, get_reco, return_alt_val_if_none
5
12
  import logging
6
13
  import numpy as np
@@ -11,8 +18,8 @@ if TYPE_CHECKING:
11
18
  from ..dataclasses import Scan, Reco
12
19
  from ..core.parameters import Parameters
13
20
 
14
- SubjectType = Literal["Biped", "Quadruped", "Phantom", "Other", "OtherAnimal"]
15
- SubjectPose = Literal[
21
+ SubjectType: TypeAlias = Literal["Biped", "Quadruped", "Phantom", "Other", "OtherAnimal"]
22
+ SubjectPose: TypeAlias = Literal[
16
23
  "Head_Supine", "Head_Prone", "Head_Left", "Head_Right",
17
24
  "Foot_Supine", "Foot_Prone", "Foot_Left", "Foot_Right",
18
25
  ]
@@ -260,7 +260,7 @@ def resolve(
260
260
 
261
261
  if num_cycles > 1:
262
262
  time_step = cast(float, image_info['time_per_cycle']) / 1000.0
263
- num_slices = image_info['dataobj'].shape[2]
263
+ num_slices = cast(np.ndarray, image_info['dataobj']).shape[2]
264
264
  slice_duration = time_step / num_slices
265
265
  else:
266
266
  time_step = None
@@ -26,10 +26,10 @@
26
26
  </text>
27
27
  <text x="110.609375"
28
28
  y="15" fill="#010101" fill-opacity=".3">
29
- 10.5281/zenodo.18329489
29
+ 10.5281/zenodo.18392548
30
30
  </text>
31
31
  <text x="110.609375" y="14">
32
- 10.5281/zenodo.18329489
32
+ 10.5281/zenodo.18392548
33
33
  </text>
34
34
  </g>
35
35
  </svg>
@@ -39,4 +39,4 @@ This page is auto-generated from GitHub contributors.
39
39
  [ricardorios46]: https://github.com/RicardoRios46
40
40
  [ricardorios46-avatar]: https://avatars.githubusercontent.com/u/43252153?s=96
41
41
 
42
- Last updated: 2026-01-27
42
+ Last updated: 2026-01-29
@@ -1,17 +0,0 @@
1
- # Release v0.5.5
2
-
3
- Date: 2026-01-27
4
- Changes since 0.5.4
5
-
6
- - chore: prepare release v0.5.5 (c3260df)
7
- - docs: update contributors (a7bf3ef)
8
- - update: vscode, auto activate environment setting. (95e6868)
9
- - Chore: wire release → publish workflow (3419d97)
10
- - Use VS Code interpreter for venv setup task (5aed156)
11
- - Update release workflow and scripts for Zenodo badge + bibtex generation (e63e007)
12
- - Patch for brkraw-viewer lazy loading (avoid eager data resolution) (c916625)
13
- - chore(api): config module (2fa90fc)
14
- - chore(api): hook resolver (9c36e95)
15
- - chore(api): minor remapping (f2ef87e)
16
- - chore(api): ensure naming consistency (9010542)
17
- - refactor(loader): improve hook handling logic (5c5a0e7)
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
@@ -474,16 +474,6 @@ def main() -> int:
474
474
  title = args.pr_title or f"Release v{args.version}"
475
475
  initial_body = args.pr_body or build_pr_body(args.version, "- (pending)")
476
476
 
477
- pr_number = ensure_pr(
478
- upstream_repo_full=upstream_repo_full,
479
- base_branch=base_branch,
480
- head_ref=head_ref,
481
- title=title,
482
- body=initial_body,
483
- no_pr=args.no_pr,
484
- dry_run=args.dry_run,
485
- )
486
-
487
477
  # 1) contributors
488
478
  run_update_contributors(upstream_repo_full)
489
479
  commit_if_changed(
@@ -518,6 +508,16 @@ def main() -> int:
518
508
  if not args.dry_run:
519
509
  run_git(["push", args.remote_origin, f"HEAD:{branch}"], check=True)
520
510
 
511
+ pr_number = ensure_pr(
512
+ upstream_repo_full=upstream_repo_full,
513
+ base_branch=base_branch,
514
+ head_ref=head_ref,
515
+ title=title,
516
+ body=initial_body,
517
+ no_pr=args.no_pr,
518
+ dry_run=args.dry_run,
519
+ )
520
+
521
521
  # PR body update + label (if enabled)
522
522
  if pr_number and (not args.no_pr):
523
523
  changed_files = get_changed_files(args.base)
File without changes
File without changes
File without changes
File without changes