Skip to content

Update CI workflows: bump actions, fix inconsistencies, remove dead code#1068

Merged
rly merged 7 commits intomainfrom
update-ci-workflows
Mar 5, 2026
Merged

Update CI workflows: bump actions, fix inconsistencies, remove dead code#1068
rly merged 7 commits intomainfrom
update-ci-workflows

Conversation

@rly
Copy link
Collaborator

@rly rly commented Mar 5, 2026

Summary

Modernize and clean up all GitHub Actions workflows.

Action version bumps

  • actions/checkout v1/v3/v4 → v6
  • actions/setup-python v4 → v6 (then removed — see below)
  • actions/setup-node v3/v4 → v6
  • actions/cache v4 → v5
  • actions/upload-artifact v4 → v7
  • actions/add-to-project v0.4.0 → v1
  • codecov/codecov-action v4 → v5
  • conda-incubator/setup-miniconda v2 → v3
  • apple-actions/import-codesign-certs v2 → v6
  • dawidd6/action-send-mail v3 → v11
  • tibdex/github-app-token v1.7.0 → replaced with actions/create-github-app-token@v2 (tibdex action is deprecated)
  • chromaui/action v1 → v15

Fixes and cleanup

  • Remove Spike2/sonpy support: sonpy is incompatible with Python 3.10+, and the project uses 3.12. Removed Spike2RecordingInterface from supported interfaces, all sonpy cleanup steps from workflows, and stale comments from environment files
  • Add conda-remove-defaults: true to all setup-miniconda steps to fix the "defaults channel might have been added implicitly" warning
  • Bump Node.js 18 → 20 in Windows deploy workflow for consistency
  • Align Windows deploy to use miniforge-version: latest + separate conda env update like all other workflows
  • Remove unnecessary setup-python from deploy workflows (conda handles Python)
  • Remove unnecessary fetch-depth: 0 from deploy workflows — they don't use git history or tags. Kept fetch-depth: 0 for Chromatic, which needs full history to determine baseline commits.
  • Standardize conda env update flags to --name nwb-guide --file across all workflows
  • Remove redundant CACHE_NUMBER env pass-through in testing_flask_build_and_dist
  • Fix stale comment referencing macos-13 instead of macos-15-intel
  • Add explanatory comment to Chromatic workflow about snapshot quota and trigger rationale

Test plan

  • Verify daily tests pass (covers DevTests, LiveServices, E2ELiveServices, BuildTests, ExampleDataCache, ExampleDataTests)
  • Verify PR checks pass on this PR itself
  • Manually trigger Chromatic workflow to confirm it still works
  • Verify add_to_nwb_dashboard workflow fires on next new issue (tests actions/create-github-app-token migration)
  • Test Mac and Windows release workflows before next release

🤖 Generated with Claude Code

rly and others added 6 commits March 5, 2026 09:39
…onda-remove-defaults

- Bump all GitHub Actions to latest major versions:
  actions/checkout v1/v3/v4 → v6, actions/setup-python v4 → v6,
  actions/setup-node v3/v4 → v6, actions/cache v4 → v5,
  actions/upload-artifact v4 → v7, codecov/codecov-action v4 → v5,
  dawidd6/action-send-mail v3 → v11, tibdex/github-app-token v1.7.0 → v2,
  actions/add-to-project v0.4.0 → v1, conda-incubator/setup-miniconda v2 → v3,
  apple-actions/import-codesign-certs v2 → v6
- Add conda-remove-defaults: true to all setup-miniconda steps
- Fix Node.js 18 → 20 in Windows deploy workflow
- Fix stale comment referencing macos-13 instead of macos-15-intel
- Remove unnecessary setup-python steps from deploy workflows (conda handles Python)
- Align Windows deploy to use miniforge like all other workflows
- Fix sonpy cleanup to run on all macOS runners using find instead of hardcoded path
- Remove unused python-version matrix variable from example_data_cache
- Standardize conda env update flags to --name/--file across all workflows
- Replace git fetch --prune --unshallow --tags with checkout fetch-depth: 0
- Add explanatory comment to Chromatic workflow about snapshot quota

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
sonpy is not compatible with Python 3.10+, and the project now uses
Python 3.12. Remove Spike2RecordingInterface from supported interfaces,
remove all sonpy cleanup steps from workflows, and remove the related
comment from the Mac arm64 environment file.

Also add fetch-depth: 0 and fetch-tags: true to both deploy workflows
so electron-builder can resolve versions from git tags.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The GPU process on macOS Intel CI runners can fail to initialize,
crashing the network service and causing E2E tests to time out.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
electron-builder reads the version from package.json, not git tags,
so a full clone is unnecessary for deploy workflows.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…depth and redundant env

- Replace tibdex/github-app-token@v2 (deprecated) with the official
  actions/create-github-app-token@v2
- Remove fetch-depth: 0 and fetch-tags: true from all test workflows;
  nothing in the codebase uses git history or tags at test time
- Remove redundant CACHE_NUMBER env pass-through in testing_flask_build_and_dist

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rly rly requested a review from bendichter March 5, 2026 18:41
Copy link
Collaborator

@bendichter bendichter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm. The CI is passing so let's merge!

@rly
Copy link
Collaborator Author

rly commented Mar 5, 2026

Let me investigate the chromatic failure (chromatic runs only on PR approval)

The v1 → v6 checkout upgrade changed the default fetch depth from full
to shallow, causing Chromatic to fail with "Found only one commit".
Also bump chromaui/action from v1 (CLI v11) to v15 (CLI v15).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rly
Copy link
Collaborator Author

rly commented Mar 5, 2026

@rly rly merged commit 04c4288 into main Mar 5, 2026
27 checks passed
@rly rly deleted the update-ci-workflows branch March 5, 2026 19:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants