Skip to content

⬆️ Bump quantecon/actions from 0.8.0 to 0.9.0 - #585

Merged
mmcky merged 1 commit into
mainfrom
dependabot/github_actions/quantecon/actions-0.9.0
Jul 29, 2026
Merged

⬆️ Bump quantecon/actions from 0.8.0 to 0.9.0#585
mmcky merged 1 commit into
mainfrom
dependabot/github_actions/quantecon/actions-0.9.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 23, 2026

Copy link
Copy Markdown
Contributor

Bumps quantecon/actions from 0.8.0 to 0.9.0.

Release notes

Sourced from quantecon/actions's releases.

v0.9.0

Added

  • CI: test-containers-lectures.yml and build-containers.yml now open (or comment on) a deduplicated tracking issue when they fail, via the new scripts/create-ci-failure-issue.sh. Both run unattended — off a weekly schedule and off workflow_run — and had no alert path: container validation was red for nine consecutive weeks in Feb–Apr 2026 with nothing surfacing it. One open issue is kept per workflow; repeat failures are appended as comments. Manual workflow_dispatch runs are excluded, since those have someone watching. (#103)

Changed

  • Containers: Migrated both images to the Anaconda 2026.06 baseline (anaconda=2026.06 in containers/quantecon/environment.yml, and the matching linux-64 py313 MKL pin set in the lean image's explicit stack). This is the baseline the lecture repos build against. The images have shipped this since 2026-07-08 — it is live in :latest and reaches consumers through the image tag rather than through this release. (#95)
  • build-jupyter-cache, restore-jupyter-cache, setup-environment: actions/cache, actions/cache/restore and actions/cache/save moved from @v5 to @v6. (#90)
  • publish-gh-pages: softprops/action-gh-release moved to v3.0.1. (#94)

Fixed

  • restore-jupyter-cache: Every output, and the fail-on-miss guard, now work with save-cache: 'true'. The save-mode step used the top-level actions/cache@v6, which declares cache-hit alone — cache-matched-key exists only on actions/cache/restore — so the outputs bound to it always came back empty: cache-hit was false on a perfect restore, cache-key was blank, the status report announced "⚠️ No cache found" immediately after logging a successful restore, and fail-on-miss: 'true' failed the job unconditionally. The restore now always runs through actions/cache/restore@v6, and save mode adds an actions/cache@v6 step with lookup-only: true whose only job is to register the job-end save post: hook. ⚠️ This is the mode the preview-optimisation work rolls out (#92). (#104)

  • ⚠️ BREAKING restore-jupyter-cache: Dropped the bare build- restore-key fallback, which made the build cache impossible to miss — an environment.yml change silently restored a _build produced by the old environment instead of missing and rebuilding, contradicting the action's own documented behaviour. The build-{env-hash}-{update-hash}- and build-{env-hash}- fallbacks remain, so a warm start is still found within the same environment. The execution cache keeps its bare jupyter-cache- fallback: .jupyter_cache is content-addressed per notebook and revalidates itself, whereas _build carries no record of what produced it. (#104)

    Migration: no config change is needed, but the first build after an environment.yml change is now a genuine cache miss and therefore cold. That is the intended behaviour — the warm start it replaces was reusing build output generated by the superseded environment.

  • CI: The buildx registry layer cache in build-containers.yml now resolves. Both cache-from refs interpolated github.repository_owner, which preserves the QuantEcon casing; buildx rejects ghcr.io/QuantEcon/... as "repository name must be lowercase" and treats a failed cache import as non-fatal, so every container build since the cache was added has been cold — and green. The namespace is now a lowercase IMAGE_NAMESPACE env var used by both jobs. (#103)

  • CI: Added a workflow-level concurrency group to build-containers.yml. Both jobs push :latest and every consumer pins :latest, but nothing serialised the workflow — on 2026-07-08 two overlapping runs meant the older commit's build finished last and won the tag. (#103)

... (truncated)

Changelog

Sourced from quantecon/actions's changelog.

[0.9.0] - 2026-07-23

Added

  • CI: test-containers-lectures.yml and build-containers.yml now open (or comment on) a deduplicated tracking issue when they fail, via the new scripts/create-ci-failure-issue.sh. Both run unattended — off a weekly schedule and off workflow_run — and had no alert path: container validation was red for nine consecutive weeks in Feb–Apr 2026 with nothing surfacing it. One open issue is kept per workflow; repeat failures are appended as comments. Manual workflow_dispatch runs are excluded, since those have someone watching. (#103)

Changed

  • Containers: Migrated both images to the Anaconda 2026.06 baseline (anaconda=2026.06 in containers/quantecon/environment.yml, and the matching linux-64 py313 MKL pin set in the lean image's explicit stack). This is the baseline the lecture repos build against. The images have shipped this since 2026-07-08 — it is live in :latest and reaches consumers through the image tag rather than through this release. (#95)
  • build-jupyter-cache, restore-jupyter-cache, setup-environment: actions/cache, actions/cache/restore and actions/cache/save moved from @v5 to @v6. (#90)
  • publish-gh-pages: softprops/action-gh-release moved to v3.0.1. (#94)

Fixed

  • restore-jupyter-cache: Every output, and the fail-on-miss guard, now work with save-cache: 'true'. The save-mode step used the top-level actions/cache@v6, which declares cache-hit alone — cache-matched-key exists only on actions/cache/restore — so the outputs bound to it always came back empty: cache-hit was false on a perfect restore, cache-key was blank, the status report announced "⚠️ No cache found" immediately after logging a successful restore, and fail-on-miss: 'true' failed the job unconditionally. The restore now always runs through actions/cache/restore@v6, and save mode adds an actions/cache@v6 step with lookup-only: true whose only job is to register the job-end save post: hook. ⚠️ This is the mode the preview-optimisation work rolls out (#92). (#104)

  • ⚠️ BREAKING restore-jupyter-cache: Dropped the bare build- restore-key fallback, which made the build cache impossible to miss — an environment.yml change silently restored a _build produced by the old environment instead of missing and rebuilding, contradicting the action's own documented behaviour. The build-{env-hash}-{update-hash}- and build-{env-hash}- fallbacks remain, so a warm start is still found within the same environment. The execution cache keeps its bare jupyter-cache- fallback: .jupyter_cache is content-addressed per notebook and revalidates itself, whereas _build carries no record of what produced it. (#104)

    Migration: no config change is needed, but the first build after an environment.yml change is now a genuine cache miss and therefore cold. That is the intended behaviour — the warm start it replaces was reusing build output generated by the superseded environment.

  • CI: The buildx registry layer cache in build-containers.yml now resolves. Both cache-from refs interpolated github.repository_owner, which preserves the QuantEcon casing; buildx rejects ghcr.io/QuantEcon/... as "repository name must be lowercase" and treats a failed cache import as non-fatal, so every container build since the cache was added has been cold — and green. The namespace is now a lowercase IMAGE_NAMESPACE env var used by both jobs. (#103)

  • CI: Added a workflow-level concurrency group to build-containers.yml. Both jobs push :latest and every consumer pins :latest, but nothing serialised the workflow — on 2026-07-08 two overlapping runs meant the older commit's build finished last and won the tag. (#103)

... (truncated)

Commits
  • 45ced77 Release v0.9.0 (#113)
  • ca5656e fix(restore-jupyter-cache): repair save-mode outputs and fail-on-miss (#112)
  • fcf97ef ci: repair the container publish and validation pipeline (#111)
  • 1a7c3c7 ci: bump the github-actions group across 2 directories with 5 updates (#94)
  • 0668b42 ci: bump the github-actions-major group across 4 directories with 2 updates (...
  • 46f3a31 Migrate both containers to the Anaconda 2026.06 baseline (#95)
  • de75041 Add PROJECT-OPTIMIZE-PREVIEWS.md: fast preview builds research and roadmap (#93)
  • 26e2781 Rewrite PLAN.md as the repo's working plan (July 2026) (#91)
  • b49824a Pin kaleido<1.0 in both containers to fix ChromeNotFoundError (#85)
  • 81b7047 Pin lean container's science stack to the Anaconda 2025.12 baseline (#28) (#84)
  • See full diff in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [quantecon/actions](https://github.com/quantecon/actions) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/quantecon/actions/releases)
- [Changelog](https://github.com/QuantEcon/actions/blob/main/CHANGELOG.md)
- [Commits](QuantEcon/actions@v0.8.0...v0.9.0)

---
updated-dependencies:
- dependency-name: quantecon/actions
  dependency-version: 0.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Jul 23, 2026
@mmcky
mmcky merged commit b22983d into main Jul 29, 2026
4 checks passed
@mmcky
mmcky deleted the dependabot/github_actions/quantecon/actions-0.9.0 branch July 29, 2026 09:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant