essdiffraction 24.10.0__tar.gz → 25.2.0__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 (129) hide show
  1. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.copier-answers.yml +3 -3
  2. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/workflows/ci.yml +6 -6
  3. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/workflows/docs.yml +3 -3
  4. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/workflows/nightly_at_main.yml +3 -3
  5. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/workflows/nightly_at_release.yml +4 -4
  6. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/workflows/release.yml +5 -5
  7. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/workflows/test.yml +2 -2
  8. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/workflows/unpinned.yml +4 -4
  9. essdiffraction-25.2.0/.github/workflows/weekly_windows_macos.yml +42 -0
  10. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.gitignore +4 -1
  11. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.pre-commit-config.yaml +10 -2
  12. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/LICENSE +1 -1
  13. {essdiffraction-24.10.0/src/essdiffraction.egg-info → essdiffraction-25.2.0}/PKG-INFO +6 -5
  14. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/api-reference/index.md +1 -0
  15. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/conf.py +4 -4
  16. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/user-guide/dream/dream-data-reduction.ipynb +148 -54
  17. essdiffraction-25.2.0/docs/user-guide/dream/dream-detector-diagnostics.ipynb +112 -0
  18. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/user-guide/dream/index.md +2 -0
  19. essdiffraction-25.2.0/docs/user-guide/dream/workflow-widget-dream.ipynb +142 -0
  20. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/user-guide/sns-instruments/POWGEN_data_reduction.ipynb +1 -1
  21. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/pyproject.toml +4 -4
  22. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/base.in +2 -2
  23. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/base.txt +34 -34
  24. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/basetest.txt +10 -10
  25. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/ci.txt +13 -13
  26. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/dev.txt +19 -21
  27. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/docs.txt +33 -33
  28. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/make_base.py +12 -7
  29. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/mypy.txt +1 -1
  30. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/nightly.in +8 -2
  31. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/nightly.txt +108 -25
  32. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/static.txt +4 -4
  33. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/wheels.txt +2 -2
  34. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/diffraction/__init__.py +2 -2
  35. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/dream/data.py +62 -0
  36. essdiffraction-25.2.0/src/ess/dream/diagnostics.py +235 -0
  37. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/dream/io/__init__.py +3 -3
  38. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/dream/io/cif.py +12 -7
  39. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/dream/io/geant4.py +70 -1
  40. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/dream/io/nexus.py +4 -1
  41. essdiffraction-25.2.0/src/ess/dream/parameters.py +66 -0
  42. essdiffraction-25.2.0/src/ess/dream/workflow.py +108 -0
  43. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/__init__.py +5 -1
  44. essdiffraction-25.2.0/src/ess/powder/calibration.py +114 -0
  45. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/conversion.py +33 -3
  46. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/correction.py +122 -44
  47. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/masking.py +2 -2
  48. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/types.py +29 -6
  49. {essdiffraction-24.10.0 → essdiffraction-25.2.0/src/essdiffraction.egg-info}/PKG-INFO +6 -5
  50. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/essdiffraction.egg-info/SOURCES.txt +7 -0
  51. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/essdiffraction.egg-info/requires.txt +2 -2
  52. essdiffraction-25.2.0/tests/dream/diagnostics_test.py +57 -0
  53. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/dream/geant4_reduction_test.py +76 -12
  54. essdiffraction-25.2.0/tests/dream/io/cif_test.py +65 -0
  55. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/package_test.py +2 -2
  56. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/powder/correction_test.py +160 -1
  57. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/snspowder/powgen/powgen_reduction_test.py +2 -2
  58. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tox.ini +4 -1
  59. essdiffraction-24.10.0/src/ess/dream/workflow.py +0 -52
  60. essdiffraction-24.10.0/tests/dream/io/cif_test.py +0 -49
  61. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.copier-answers.ess.yml +0 -0
  62. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/ISSUE_TEMPLATE/blank.md +0 -0
  63. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/ISSUE_TEMPLATE/high-level-requirement.yml +0 -0
  64. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/dependabot.yml +0 -0
  65. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.github/workflows/python-version-ci +0 -0
  66. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/.python-version +0 -0
  67. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/CODE_OF_CONDUCT.md +0 -0
  68. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/CONTRIBUTING.md +0 -0
  69. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/MANIFEST.in +0 -0
  70. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/README.md +0 -0
  71. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/conda/meta.yaml +0 -0
  72. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/_static/anaconda-icon.js +0 -0
  73. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/_static/favicon.svg +0 -0
  74. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/_static/logo-dark.svg +0 -0
  75. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/_static/logo.svg +0 -0
  76. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/_templates/class-template.rst +0 -0
  77. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/_templates/doc_version.html +0 -0
  78. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/_templates/module-template.rst +0 -0
  79. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/about/bibliography.rst +0 -0
  80. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/about/index.md +0 -0
  81. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/bibliography.bib +0 -0
  82. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/developer/coding-conventions.md +0 -0
  83. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/developer/dependency-management.md +0 -0
  84. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/developer/getting-started.md +0 -0
  85. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/developer/index.md +0 -0
  86. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/index.md +0 -0
  87. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/user-guide/dream/dream-instrument-view.ipynb +0 -0
  88. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/user-guide/index.md +0 -0
  89. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/user-guide/sns-instruments/index.md +0 -0
  90. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/user-guide/sns-instruments/preprocess_files.ipynb +0 -0
  91. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/docs/user-guide/sns-instruments/vanadium_processing.ipynb +0 -0
  92. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/basetest.in +0 -0
  93. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/ci.in +0 -0
  94. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/dev.in +0 -0
  95. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/docs.in +0 -0
  96. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/mypy.in +0 -0
  97. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/static.in +0 -0
  98. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/test.in +0 -0
  99. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/test.txt +0 -0
  100. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/requirements/wheels.in +0 -0
  101. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/resources/logo.svg +0 -0
  102. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/setup.cfg +0 -0
  103. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/diffraction/py.typed +0 -0
  104. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/dream/__init__.py +1 -1
  105. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/dream/instrument_view.py +0 -0
  106. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/dream/py.typed +0 -0
  107. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/_util.py +0 -0
  108. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/filtering.py +0 -0
  109. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/grouping.py +0 -0
  110. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/logging.py +0 -0
  111. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/py.typed +0 -0
  112. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/smoothing.py +0 -0
  113. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/powder/transform.py +0 -0
  114. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/snspowder/powgen/__init__.py +0 -0
  115. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/snspowder/powgen/beamline.py +0 -0
  116. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/snspowder/powgen/calibration.py +0 -0
  117. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/snspowder/powgen/data.py +0 -0
  118. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/snspowder/powgen/instrument_view.py +0 -0
  119. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/snspowder/powgen/peaks.py +0 -0
  120. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/ess/snspowder/powgen/workflow.py +0 -0
  121. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/essdiffraction.egg-info/dependency_links.txt +0 -0
  122. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/src/essdiffraction.egg-info/top_level.txt +0 -0
  123. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/dream/instrument_view_test.py +0 -0
  124. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/dream/io/geant4_test.py +0 -0
  125. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/dream/io/nexus_test.py +0 -0
  126. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/powder/conversion_test.py +0 -0
  127. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/powder/filtering_test.py +0 -0
  128. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/powder/transform_test.py +0 -0
  129. {essdiffraction-24.10.0 → essdiffraction-25.2.0}/tests/snspowder/powgen/load_test.py +0 -0
@@ -1,8 +1,8 @@
1
1
  # Changes here will be overwritten by Copier; NEVER EDIT MANUALLY
2
- _commit: 75b9a8f
2
+ _commit: 5c4fd02
3
3
  _src_path: gh:scipp/copier_template
4
4
  description: Diffraction data reduction for the European Spallation Source
5
- max_python: '3.12'
5
+ max_python: '3.13'
6
6
  min_python: '3.10'
7
7
  namespace_package: ess
8
8
  nightly_deps: scipp,scippnexus,sciline,plopp,scippneutron,essreduce
@@ -10,4 +10,4 @@ orgname: scipp
10
10
  prettyname: ESSdiffraction
11
11
  projectname: essdiffraction
12
12
  related_projects: Scipp,ScippNexus,ScippNeutron,Sciline,Plopp,ESSreduce
13
- year: 2024
13
+ year: 2025
@@ -10,7 +10,7 @@ on:
10
10
  jobs:
11
11
  formatting:
12
12
  name: Formatting and static analysis
13
- runs-on: 'ubuntu-22.04'
13
+ runs-on: 'ubuntu-24.04'
14
14
  outputs:
15
15
  min_python: ${{ steps.vars.outputs.min_python }}
16
16
  min_tox_env: ${{ steps.vars.outputs.min_tox_env }}
@@ -19,15 +19,15 @@ jobs:
19
19
  - name: Get Python version for other CI jobs
20
20
  id: vars
21
21
  run: |
22
- echo "min_python=$(cat .github/workflows/python-version-ci)" >> $GITHUB_OUTPUT
23
- echo "min_tox_env=py$(cat .github/workflows/python-version-ci | sed 's/\.//g')" >> $GITHUB_OUTPUT
22
+ echo "min_python=$(< .github/workflows/python-version-ci)" >> "$GITHUB_OUTPUT"
23
+ echo "min_tox_env=py$(sed 's/\.//g' < .github/workflows/python-version-ci)" >> "$GITHUB_OUTPUT"
24
24
  - uses: actions/setup-python@v5
25
25
  with:
26
26
  python-version-file: '.github/workflows/python-version-ci'
27
27
  - uses: pre-commit/action@v3.0.1
28
28
  with:
29
29
  extra_args: --all-files
30
- - uses: pre-commit-ci/lite-action@v1.0.3
30
+ - uses: pre-commit-ci/lite-action@v1.1.0
31
31
  if: always()
32
32
  with:
33
33
  msg: Apply automatic formatting
@@ -37,7 +37,7 @@ jobs:
37
37
  needs: formatting
38
38
  strategy:
39
39
  matrix:
40
- os: ['ubuntu-22.04']
40
+ os: ['ubuntu-24.04']
41
41
  python:
42
42
  - version: '${{needs.formatting.outputs.min_python}}'
43
43
  tox-env: '${{needs.formatting.outputs.min_tox_env}}'
@@ -53,6 +53,6 @@ jobs:
53
53
  uses: ./.github/workflows/docs.yml
54
54
  with:
55
55
  publish: false
56
- linkcheck: ${{ contains(matrix.variant.os, 'ubuntu') && github.ref == 'refs/heads/main' }}
56
+ linkcheck: ${{ github.ref == 'refs/heads/main' }}
57
57
  branch: ${{ github.head_ref == '' && github.ref_name || github.head_ref }}
58
58
  secrets: inherit
@@ -41,7 +41,7 @@ env:
41
41
  jobs:
42
42
  docs:
43
43
  name: Build documentation
44
- runs-on: 'ubuntu-22.04'
44
+ runs-on: 'ubuntu-24.04'
45
45
  env:
46
46
  ESS_PROTECTED_FILESTORE_USERNAME: ${{ secrets.ESS_PROTECTED_FILESTORE_USERNAME }}
47
47
  ESS_PROTECTED_FILESTORE_PASSWORD: ${{ secrets.ESS_PROTECTED_FILESTORE_PASSWORD }}
@@ -58,7 +58,7 @@ jobs:
58
58
  python-version-file: '.github/workflows/python-version-ci'
59
59
  - run: python -m pip install --upgrade pip
60
60
  - run: python -m pip install -r requirements/ci.txt
61
- - run: tox -e releasedocs -- ${VERSION}
61
+ - run: tox -e releasedocs -- "${VERSION}"
62
62
  if: ${{ inputs.version != '' }}
63
63
  - run: tox -e docs
64
64
  if: ${{ inputs.version == '' }}
@@ -69,7 +69,7 @@ jobs:
69
69
  name: docs_html
70
70
  path: html/
71
71
 
72
- - uses: JamesIves/github-pages-deploy-action@v4.6.4
72
+ - uses: JamesIves/github-pages-deploy-action@v4.7.2
73
73
  if: ${{ inputs.publish }}
74
74
  with:
75
75
  branch: gh-pages
@@ -8,21 +8,21 @@ on:
8
8
  jobs:
9
9
  setup:
10
10
  name: Setup variables
11
- runs-on: 'ubuntu-22.04'
11
+ runs-on: 'ubuntu-24.04'
12
12
  outputs:
13
13
  min_python: ${{ steps.vars.outputs.min_python }}
14
14
  steps:
15
15
  - uses: actions/checkout@v4
16
16
  - name: Get Python version for other CI jobs
17
17
  id: vars
18
- run: echo "min_python=$(cat .github/workflows/python-version-ci)" >> $GITHUB_OUTPUT
18
+ run: echo "min_python=$(< .github/workflows/python-version-ci)" >> "$GITHUB_OUTPUT"
19
19
 
20
20
  tests:
21
21
  name: Tests
22
22
  needs: setup
23
23
  strategy:
24
24
  matrix:
25
- os: ['ubuntu-22.04']
25
+ os: ['ubuntu-24.04']
26
26
  python:
27
27
  - version: '${{needs.setup.outputs.min_python}}'
28
28
  tox-env: 'nightly'
@@ -8,7 +8,7 @@ on:
8
8
  jobs:
9
9
  setup:
10
10
  name: Setup variables
11
- runs-on: 'ubuntu-22.04'
11
+ runs-on: 'ubuntu-24.04'
12
12
  outputs:
13
13
  min_python: ${{ steps.vars.outputs.min_python }}
14
14
  release_tag: ${{ steps.release.outputs.release_tag }}
@@ -18,17 +18,17 @@ jobs:
18
18
  fetch-depth: 0 # history required so we can determine latest release tag
19
19
  - name: Get last release tag from git
20
20
  id: release
21
- run: echo "release_tag=$(git describe --tags --abbrev=0 --match '[0-9]*.[0-9]*.[0-9]*')" >> $GITHUB_OUTPUT
21
+ run: echo "release_tag=$(git describe --tags --abbrev=0 --match '[0-9]*.[0-9]*.[0-9]*')" >> "$GITHUB_OUTPUT"
22
22
  - name: Get Python version for other CI jobs
23
23
  id: vars
24
- run: echo "min_python=$(cat .github/workflows/python-version-ci)" >> $GITHUB_OUTPUT
24
+ run: echo "min_python=$(cat .github/workflows/python-version-ci)" >> "$GITHUB_OUTPUT"
25
25
 
26
26
  tests:
27
27
  name: Tests
28
28
  needs: setup
29
29
  strategy:
30
30
  matrix:
31
- os: ['ubuntu-22.04']
31
+ os: ['ubuntu-24.04']
32
32
  python:
33
33
  - version: '${{needs.setup.outputs.min_python}}'
34
34
  tox-env: 'nightly'
@@ -12,7 +12,7 @@ defaults:
12
12
  jobs:
13
13
  build_conda:
14
14
  name: Conda build
15
- runs-on: 'ubuntu-22.04'
15
+ runs-on: 'ubuntu-24.04'
16
16
 
17
17
  steps:
18
18
  - uses: actions/checkout@v4
@@ -35,7 +35,7 @@ jobs:
35
35
 
36
36
  build_wheels:
37
37
  name: Wheels
38
- runs-on: 'ubuntu-22.04'
38
+ runs-on: 'ubuntu-24.04'
39
39
 
40
40
  steps:
41
41
  - uses: actions/checkout@v4
@@ -61,7 +61,7 @@ jobs:
61
61
  upload_pypi:
62
62
  name: Deploy PyPI
63
63
  needs: [build_wheels, build_conda]
64
- runs-on: 'ubuntu-22.04'
64
+ runs-on: 'ubuntu-24.04'
65
65
  environment: release
66
66
  permissions:
67
67
  id-token: write
@@ -73,7 +73,7 @@ jobs:
73
73
  upload_conda:
74
74
  name: Deploy Conda
75
75
  needs: [build_wheels, build_conda]
76
- runs-on: 'ubuntu-22.04'
76
+ runs-on: 'ubuntu-24.04'
77
77
  if: github.event_name == 'release' && github.event.action == 'published'
78
78
 
79
79
  steps:
@@ -97,7 +97,7 @@ jobs:
97
97
  assets:
98
98
  name: Upload docs
99
99
  needs: docs
100
- runs-on: 'ubuntu-22.04'
100
+ runs-on: 'ubuntu-24.04'
101
101
  permissions:
102
102
  contents: write # This is needed so that the action can upload the asset
103
103
  steps:
@@ -4,7 +4,7 @@ on:
4
4
  workflow_dispatch:
5
5
  inputs:
6
6
  os-variant:
7
- default: 'ubuntu-22.04'
7
+ default: 'ubuntu-24.04'
8
8
  type: string
9
9
  python-version:
10
10
  type: string
@@ -23,7 +23,7 @@ on:
23
23
  workflow_call:
24
24
  inputs:
25
25
  os-variant:
26
- default: 'ubuntu-22.04'
26
+ default: 'ubuntu-24.04'
27
27
  type: string
28
28
  python-version:
29
29
  type: string
@@ -8,7 +8,7 @@ on:
8
8
  jobs:
9
9
  setup:
10
10
  name: Setup variables
11
- runs-on: 'ubuntu-22.04'
11
+ runs-on: 'ubuntu-24.04'
12
12
  outputs:
13
13
  min_python: ${{ steps.vars.outputs.min_python }}
14
14
  release_tag: ${{ steps.release.outputs.release_tag }}
@@ -18,17 +18,17 @@ jobs:
18
18
  fetch-depth: 0 # history required so we can determine latest release tag
19
19
  - name: Get last release tag from git
20
20
  id: release
21
- run: echo "release_tag=$(git describe --tags --abbrev=0 --match '[0-9]*.[0-9]*.[0-9]*')" >> $GITHUB_OUTPUT
21
+ run: echo "release_tag=$(git describe --tags --abbrev=0 --match '[0-9]*.[0-9]*.[0-9]*')" >> "$GITHUB_OUTPUT"
22
22
  - name: Get Python version for other CI jobs
23
23
  id: vars
24
- run: echo "min_python=$(cat .github/workflows/python-version-ci)" >> $GITHUB_OUTPUT
24
+ run: echo "min_python=$(cat .github/workflows/python-version-ci)" >> "$GITHUB_OUTPUT"
25
25
 
26
26
  tests:
27
27
  name: Tests
28
28
  needs: setup
29
29
  strategy:
30
30
  matrix:
31
- os: ['ubuntu-22.04']
31
+ os: ['ubuntu-24.04']
32
32
  python:
33
33
  - version: '${{needs.setup.outputs.min_python}}'
34
34
  tox-env: 'unpinned'
@@ -0,0 +1,42 @@
1
+ name: Windows and MacOS weekly tests
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ schedule:
6
+ - cron: '0 2 * * 1'
7
+
8
+ jobs:
9
+ pytox:
10
+ name: Python and Tox env
11
+ runs-on: 'ubuntu-24.04'
12
+ outputs:
13
+ min_python: ${{ steps.vars.outputs.min_python }}
14
+ min_tox_env: ${{ steps.vars.outputs.min_tox_env }}
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+ - name: Get Python version for other CI jobs
18
+ id: vars
19
+ run: |
20
+ echo "min_python=$(cat .github/workflows/python-version-ci)" >> $GITHUB_OUTPUT
21
+ echo "min_tox_env=py$(cat .github/workflows/python-version-ci | sed 's/\.//g')" >> $GITHUB_OUTPUT
22
+ tests:
23
+ name: Tests
24
+ needs: pytox
25
+ strategy:
26
+ matrix:
27
+ os: ['macos-latest', 'windows-latest']
28
+ python:
29
+ - version: '${{needs.pytox.outputs.min_python}}'
30
+ tox-env: '${{needs.pytox.outputs.min_tox_env}}'
31
+ uses: ./.github/workflows/test.yml
32
+ with:
33
+ os-variant: ${{ matrix.os }}
34
+ python-version: ${{ matrix.python.version }}
35
+ tox-env: ${{ matrix.python.tox-env }}
36
+
37
+ docs:
38
+ needs: tests
39
+ uses: ./.github/workflows/docs.yml
40
+ with:
41
+ publish: false
42
+ branch: ${{ github.head_ref == '' && github.ref_name || github.head_ref }}
@@ -4,7 +4,8 @@ dist
4
4
  html
5
5
  .tox
6
6
  *.egg-info
7
- uv.lock # we lock dependencies with pip-compile, not uv
7
+ # we lock dependencies with pip-compile, not uv
8
+ uv.lock
8
9
 
9
10
  *.sw?
10
11
 
@@ -42,3 +43,5 @@ docs/generated/
42
43
  *.rcif
43
44
  *.ort
44
45
  *.zip
46
+ *.sqw
47
+ *.nxspe
@@ -1,8 +1,10 @@
1
1
  repos:
2
2
  - repo: https://github.com/pre-commit/pre-commit-hooks
3
- rev: v4.6.0
3
+ rev: v5.0.0
4
4
  hooks:
5
5
  - id: check-added-large-files
6
+ - id: check-case-conflict
7
+ - id: check-illegal-windows-names
6
8
  - id: check-json
7
9
  exclude: asv.conf.json
8
10
  - id: check-merge-conflict
@@ -21,7 +23,7 @@ repos:
21
23
  args: [ "--drop-empty-cells",
22
24
  "--extra-keys 'metadata.language_info.version cell.metadata.jp-MarkdownHeadingCollapsed cell.metadata.pycharm'" ]
23
25
  - repo: https://github.com/astral-sh/ruff-pre-commit
24
- rev: v0.6.2
26
+ rev: v0.8.0
25
27
  hooks:
26
28
  - id: ruff
27
29
  args: [ --fix ]
@@ -44,3 +46,9 @@ repos:
44
46
  - id: rst-directive-colons
45
47
  - id: rst-inline-touching-normal
46
48
  - id: text-unicode-replacement-char
49
+ - repo: https://github.com/rhysd/actionlint
50
+ rev: v1.7.3
51
+ hooks:
52
+ - id: actionlint
53
+ # Disable because of false-positive SC2046
54
+ args: ["-shellcheck="]
@@ -1,6 +1,6 @@
1
1
  BSD 3-Clause License
2
2
 
3
- Copyright (c) 2024, Scipp contributors (https://github.com/scipp)
3
+ Copyright (c) 2025, Scipp contributors (https://github.com/scipp)
4
4
  All rights reserved.
5
5
 
6
6
  Redistribution and use in source and binary forms, with or without
@@ -1,11 +1,11 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: essdiffraction
3
- Version: 24.10.0
3
+ Version: 25.2.0
4
4
  Summary: Diffraction data reduction for the European Spallation Source
5
5
  Author: Scipp contributors
6
6
  License: BSD 3-Clause License
7
7
 
8
- Copyright (c) 2024, Scipp contributors (https://github.com/scipp)
8
+ Copyright (c) 2025, Scipp contributors (https://github.com/scipp)
9
9
  All rights reserved.
10
10
 
11
11
  Redistribution and use in source and binary forms, with or without
@@ -45,20 +45,21 @@ Classifier: Programming Language :: Python :: 3 :: Only
45
45
  Classifier: Programming Language :: Python :: 3.10
46
46
  Classifier: Programming Language :: Python :: 3.11
47
47
  Classifier: Programming Language :: Python :: 3.12
48
+ Classifier: Programming Language :: Python :: 3.13
48
49
  Classifier: Topic :: Scientific/Engineering
49
50
  Classifier: Typing :: Typed
50
51
  Requires-Python: >=3.10
51
52
  Description-Content-Type: text/markdown
52
53
  License-File: LICENSE
53
54
  Requires-Dist: dask
54
- Requires-Dist: essreduce>=24.10.2
55
+ Requires-Dist: essreduce>=24.12.0
55
56
  Requires-Dist: graphviz
56
57
  Requires-Dist: numpy
57
58
  Requires-Dist: plopp
58
59
  Requires-Dist: pythreejs
59
60
  Requires-Dist: sciline>=24.06.0
60
61
  Requires-Dist: scipp>=24.09.1
61
- Requires-Dist: scippneutron>=24.9.0
62
+ Requires-Dist: scippneutron>=24.11.0
62
63
  Requires-Dist: scippnexus>=23.12.0
63
64
  Provides-Extra: test
64
65
  Requires-Dist: pandas; extra == "test"
@@ -52,6 +52,7 @@
52
52
  :recursive:
53
53
 
54
54
  data
55
+ diagnostics
55
56
  io
56
57
  ```
57
58
 
@@ -1,5 +1,5 @@
1
1
  # SPDX-License-Identifier: BSD-3-Clause
2
- # Copyright (c) 2024 Scipp contributors (https://github.com/scipp)
2
+ # Copyright (c) 2025 Scipp contributors (https://github.com/scipp)
3
3
 
4
4
  import doctest
5
5
  import os
@@ -14,9 +14,9 @@ sys.path.insert(0, os.path.abspath("."))
14
14
  logger = logging.getLogger(__name__)
15
15
 
16
16
  # General information about the project.
17
- project = "ESSdiffraction"
18
- copyright = "2024 Scipp contributors"
19
- author = "Scipp contributors"
17
+ project = 'ESSdiffraction'
18
+ copyright = '2025 Scipp contributors'
19
+ author = 'Scipp contributors'
20
20
 
21
21
  html_show_sourcelink = True
22
22