diff --git a/.github/workflows/build-macos-arm64.yaml b/.github/workflows/build-macos-arm64.yaml index ba592163c2..dab3b92c98 100644 --- a/.github/workflows/build-macos-arm64.yaml +++ b/.github/workflows/build-macos-arm64.yaml @@ -104,6 +104,9 @@ jobs: - name: Enable building with magic run: | perl -pli -e 's/magicmime: false/magicmime: true/' stack.yaml + # lts-24 caps `magic` at 1.1 while some transitive dep pulls 1.1.2; + # pin the exact-1.1 hackage revision that stack itself recommends. + echo '- magic-1.1@sha256:3a31ca1c49fa5f6a857f647471739bd240a6020af6ae43e71fb72201fc482fa2,928' >> stack.yaml - name: stack setup run: stack setup diff --git a/.github/workflows/build-macos.yaml b/.github/workflows/build-macos.yaml index cf582d9939..f0c9659ade 100644 --- a/.github/workflows/build-macos.yaml +++ b/.github/workflows/build-macos.yaml @@ -104,6 +104,9 @@ jobs: - name: Enable building with magic run: | perl -pli -e 's/magicmime: false/magicmime: true/' stack.yaml + # lts-24 caps `magic` at 1.1 while some transitive dep pulls 1.1.2; + # pin the exact-1.1 hackage revision that stack itself recommends. + echo '- magic-1.1@sha256:3a31ca1c49fa5f6a857f647471739bd240a6020af6ae43e71fb72201fc482fa2,928' >> stack.yaml - name: stack setup run: stack setup @@ -202,7 +205,6 @@ jobs: matrix: flavor: ["normal", "crippled-tmp", "custom-config1"] os: [macos-15-intel] - include: [{"flavor": "normal", "os": "macos-latest-large"}] fail-fast: false steps: - name: Checkout this repository diff --git a/.github/workflows/build-windows.yaml b/.github/workflows/build-windows.yaml index 4b2be888a6..e7e259a44f 100644 --- a/.github/workflows/build-windows.yaml +++ b/.github/workflows/build-windows.yaml @@ -100,6 +100,9 @@ jobs: - name: Enable building with magic run: | perl -pli -e 's/magicmime: false/magicmime: true/' stack.yaml + # lts-24 caps `magic` at 1.1 while some transitive dep pulls 1.1.2; + # pin the exact-1.1 hackage revision that stack itself recommends. + echo '- magic-1.1@sha256:3a31ca1c49fa5f6a857f647471739bd240a6020af6ae43e71fb72201fc482fa2,928' >> stack.yaml - name: Set UPGRADE_LOCATION run: | @@ -246,7 +249,7 @@ jobs: - name: Install git-annex package shell: powershell run: | - ./git-annex-installer_*.exe /S + Start-Process -FilePath (Get-Item ./git-annex-installer_*.exe).FullName -ArgumentList '/S' -Wait -NoNewWindow - name: Check that magic files are installed run: | @@ -352,7 +355,7 @@ jobs: - name: Install git-annex package shell: powershell run: | - ./git-annex-installer_*.exe /S + Start-Process -FilePath (Get-Item ./git-annex-installer_*.exe).FullName -ArgumentList '/S' -Wait -NoNewWindow - name: Define test host alias shell: cmd diff --git a/.github/workflows/template/build-{{ostype}}.yaml.j2 b/.github/workflows/template/build-{{ostype}}.yaml.j2 index f3ecefc08f..8c885f7c62 100644 --- a/.github/workflows/template/build-{{ostype}}.yaml.j2 +++ b/.github/workflows/template/build-{{ostype}}.yaml.j2 @@ -196,6 +196,9 @@ jobs: - name: Enable building with magic run: | perl -pli -e 's/magicmime: false/magicmime: true/' stack.yaml + # lts-24 caps `magic` at 1.1 while some transitive dep pulls 1.1.2; + # pin the exact-1.1 hackage revision that stack itself recommends. + echo '- magic-1.1@sha256:3a31ca1c49fa5f6a857f647471739bd240a6020af6ae43e71fb72201fc482fa2,928' >> stack.yaml - name: stack setup run: stack setup @@ -234,6 +237,9 @@ jobs: - name: Enable building with magic run: | perl -pli -e 's/magicmime: false/magicmime: true/' stack.yaml + # lts-24 caps `magic` at 1.1 while some transitive dep pulls 1.1.2; + # pin the exact-1.1 hackage revision that stack itself recommends. + echo '- magic-1.1@sha256:3a31ca1c49fa5f6a857f647471739bd240a6020af6ae43e71fb72201fc482fa2,928' >> stack.yaml - name: Set UPGRADE_LOCATION run: | @@ -286,7 +292,7 @@ jobs: {% endif %} - name: Upload packages - uses: actions/upload-artifact@v6 + uses: actions/upload-artifact@v7 with: name: {{artifact_basename}}_${{ steps.build-version.outputs.version }} path: | @@ -372,7 +378,7 @@ jobs: - name: Send e-mail on failed run if: failure() && contains(fromJSON('["schedule", "workflow_dispatch"]'), github.event_name) # freeze to v17 - uses: dawidd6/action-send-mail@6e71c855c9a091d80a519621b9fd3e8d252ca40c + uses: dawidd6/action-send-mail@42942bc2f8fba4e611b459a018967a6a7c78c68c with: server_address: ${{ secrets.NOTIFY_SMTP_HOST }} server_port: ${{ secrets.NOTIFY_SMTP_PORT }} @@ -424,7 +430,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Download git-annex package - uses: actions/download-artifact@v7 + uses: actions/download-artifact@v8 with: name: {{artifact_basename}}_${{ needs.build-package.outputs.build-version }} @@ -544,7 +550,7 @@ jobs: - name: Send e-mail on failed run if: failure() && contains(fromJSON('["schedule", "workflow_dispatch"]'), github.event_name) # freeze to v17 - uses: dawidd6/action-send-mail@6e71c855c9a091d80a519621b9fd3e8d252ca40c + uses: dawidd6/action-send-mail@42942bc2f8fba4e611b459a018967a6a7c78c68c with: server_address: ${{ secrets.NOTIFY_SMTP_HOST }} server_port: ${{ secrets.NOTIFY_SMTP_PORT }} @@ -584,7 +590,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Download git-annex package - uses: actions/download-artifact@v7 + uses: actions/download-artifact@v8 with: name: {{artifact_basename}}_${{ needs.build-package.outputs.build-version }} @@ -645,7 +651,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Download git-annex package - uses: actions/download-artifact@v7 + uses: actions/download-artifact@v8 with: name: {{artifact_basename}}_${{ needs.build-package.outputs.build-version }} diff --git a/.github/workflows/template/specs.yml b/.github/workflows/template/specs.yml index 40106317b3..dffde5da13 100644 --- a/.github/workflows/template/specs.yml +++ b/.github/workflows/template/specs.yml @@ -26,9 +26,12 @@ # TODO: Add "crippled-home" back in once # # is fixed - test_annex_include: - - flavor: normal - os: macos-latest-large + # macos-latest-large is a paid larger-Intel runner class; jobs get blocked + # on billing. Since macos-15-intel already provides Intel coverage, + # disable this extra include until billing is sorted. + # test_annex_include: + # - flavor: normal + # os: macos-latest-large artifact_basename: git-annex-macos-dmg artifact_install_steps: - hdiutil attach git-annex_*.dmg @@ -67,7 +70,9 @@ test_annex_flavors: [normal, custom-config1] artifact_basename: git-annex-windows-installer artifact_install_steps: - - ./git-annex-installer_*.exe /S + # -Wait is required because NSIS silent installers fork and the parent + # returns immediately — without it the next step may race the copy. + - Start-Process -FilePath (Get-Item ./git-annex-installer_*.exe).FullName -ArgumentList '/S' -Wait -NoNewWindow test_datalad: true # TODO: reenable -- was hanging on test step # see https://github.com/datalad/datalad-extensions/pull/54