Skip to content

ci(deps): bump actions/download-artifact from 4 to 8#4

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions/download-artifact-8
Open

ci(deps): bump actions/download-artifact from 4 to 8#4
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions/download-artifact-8

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Apr 22, 2026

Copy link
Copy Markdown

Bumps actions/download-artifact from 4 to 8.

Release notes

Sourced from actions/download-artifact's releases.

v8.0.0

v8 - What's new

[!IMPORTANT] actions/download-artifact@v8 has been migrated to an ESM module. This should be transparent to the caller but forks might need to make significant changes.

[!IMPORTANT] Hash mismatches will now error by default. Users can override this behavior with a setting change (see below).

Direct downloads

To support direct uploads in actions/upload-artifact, the action will no longer attempt to unzip all downloaded files. Instead, the action checks the Content-Type header ahead of unzipping and skips non-zipped files. Callers wishing to download a zipped file as-is can also set the new skip-decompress parameter to true.

Enforced checks (breaking)

A previous release introduced digest checks on the download. If a download hash didn't match the expected hash from the server, the action would log a warning. Callers can now configure the behavior on mismatch with the digest-mismatch parameter. To be secure by default, we are now defaulting the behavior to error which will fail the workflow run.

ESM

To support new versions of the @actions/* packages, we've upgraded the package to ESM.

What's Changed

Full Changelog: actions/download-artifact@v7...v8.0.0

v7.0.0

v7 - What's new

[!IMPORTANT] actions/download-artifact@v7 now runs on Node.js 24 (runs.using: node24) and requires a minimum Actions Runner version of 2.327.1. If you are using self-hosted runners, ensure they are updated before upgrading.

Node.js 24

This release updates the runtime to Node.js 24. v6 had preliminary support for Node 24, however this action was by default still running on Node.js 20. Now this action by default will run on Node.js 24.

What's Changed

New Contributors

Full Changelog: actions/download-artifact@v6.0.0...v7.0.0

v6.0.0

... (truncated)

Commits
  • 3e5f45b Add regression tests for CJK characters (#471)
  • e6d03f6 Add a regression test for artifact name + content-type mismatches (#472)
  • 70fc10c Merge pull request #461 from actions/danwkennedy/digest-mismatch-behavior
  • f258da9 Add change docs
  • ccc058e Fix linting issues
  • bd7976b Add a setting to specify what to do on hash mismatch and default it to error
  • ac21fcf Merge pull request #460 from actions/danwkennedy/download-no-unzip
  • 15999bf Add note about package bumps
  • 974686e Bump the version to v8 and add release notes
  • fbe48b1 Update test names to make it clearer what they do
  • Additional commits viewable in compare view

Dependabot compatibility score

You can trigger a rebase of this PR 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)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](actions/download-artifact@v4...v8)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github

dependabot Bot commented on behalf of github Apr 22, 2026

Copy link
Copy Markdown
Author

Labels

The following labels could not be found: dependencies, github-actions. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot dependabot Bot requested a review from rlogger as a code owner April 22, 2026 04:49
rlogger added a commit that referenced this pull request Apr 28, 2026
…lassifiers, jit-friendly cleanup, JMLR paper restructure, honest BENCHMARKS framing, real-data path on activity_recognition

Five concrete fixes flagged by an independent JMLR-MLOSS-style review.

API hole (#2):
- Public logits() method on BayesianCentroidClassifier, BayesianAdaptiveHDC, StreamingBayesianHDC. Returns pre-softmax cosine-similarity scores; canonical input to TemperatureCalibrator.fit and ConformalClassifier.fit. Closes the leak where the three classification examples and pvsa_quickstart had to call jax.vmap(clf._similarity_row) — a private method — to get logits. New test in tests/test_bayesian_models.py confirms shape, single-vs-batch dispatch, and softmax(logits) == predict_proba.
- Examples updated to clf.logits(hv) instead of jax.vmap(clf._similarity_row)(hv).

Performance claims contradicted by implementation (#5):
- BayesianAdaptiveHDC.fit and StreamingBayesianHDC.fit rewritten as a single jax.lax.scan per epoch. The full pass JIT-compiles into one XLA computation and composes with vmap / pmap; no Python loop over observations.
- New tests/test_v05_v06.py::test_streaming_fit_runs_under_jit and ::test_adaptive_fit_runs_under_jit confirm fit() now compiles end-to-end under jax.jit.
- New cleanup_gaussian_stacked: JIT-friendly mirror of cleanup_gaussian that takes a stacked GaussianHV (mu/var arrays of shape (N, D)) and returns JAX scalars rather than Python int/float. The list-form cleanup_gaussian is preserved for the convenient API and now delegates internally. Two new tests in tests/test_mixture_and_derived.py.
- TemperatureCalibrator: silent-fallback fix. The previous code caught broad Exception around jax.scipy.optimize.minimize and silently fell back to gradient descent — including when BFGS produced a non-finite result. Now catches only ImportError, additionally checks for non-finite candidate, and emits a RuntimeWarning when the fallback is taken. The fitted-temperature MLE guarantee in the docstring now reflects what the code actually does.

JMLR paper (#1):
- Body shrunk from ~10 pages to ~4 (533 → 336 lines of TeX).
- Section 2 ("The Bayes-HDC System") rewritten as Section 2 "Probabilistic VSA" with five subsections (Distribution types · Closed-form moment propagation · KL divergences and reparameterisation gradients · Group action and equivariance · Uncertainty layer). The PVSA discussion now leads the body, matching the abstract's promise.
- The eight per-module subsubsections (~120 lines of bulleted module descriptions) collapsed into Table 1 (one row per module, two columns: purpose + key components). Probabilistic-layer modules listed first, deterministic substrate below.
- Three usage-example listings collapsed into one PVSA pipeline that exercises the full stack (encode → BayesianCentroidClassifier → clf.logits → TemperatureCalibrator → ConformalClassifier). Demonstrates the new public logits API.
- Comparison-with-existing-software paragraph reframed: feature comparison rather than performance contest. Axes are descriptive of capability (XLA, TPU, PVSA, Conformal, Calibration), not framed as competitive wins.
- Intro contribution list compressed to one paragraph; conclusion shortened; related-work section compressed to one paragraph.
- Implementation Notes appendix removed (deferred to DESIGN.md to respect the 4-page MLOSS limit).
- Abstract revised: dropped "first open-source library implementing PVSA" and the "5–25× ECE reduction" / "accuracy parity" benchmark claims; replaced with a description of the algebraic and uncertainty layers.

Marketing tone (#3):
- BENCHMARKS.md: "wins 5 of 5" replaced with an honest description of the methodology — "the Bayes-HDC column reports the best of an ensemble of four classifiers (ridge, logistic, centroid-LVQ, GBT) with the per-task winner chosen by held-out calibration-set accuracy; TorchHD reports its default centroid classifier on the same encoder." Multi-seed sweep flagged as a planned addition. Numbers stay; framing is now reviewer-defensible.
- ORIGINALITY.md: "first HDC library to ship X" softened to "to the author's knowledge, no comparable HDC library ships X as a built-in primitive at time of writing" for TemperatureCalibrator and ConformalClassifier. The "first HDC library to provide" framing on calibration metrics removed.
- README hero: "A JAX library with serious algebraic depth" replaced with a description of what the library does — "Probabilistic hyperdimensional computing in JAX". "the claims are theorems" softened to "the algebraic and coverage claims are property-tested" in the About paragraph.
- MLOSS_COVER_LETTER: bracketed placeholders filled. New "Maturity and community adoption" section honestly acknowledges the project is at 0.4.0a0, was first published April 15, 2026, and that community adoption is the weakest dimension at submission time. Suggested-reviewer brackets replaced with descriptors of relevant subfield expertise (deferring assignment to the action editor).

Real-data path on at least one example (#4):
- examples/activity_recognition.py: --real-data flag loads UCIHAR via bayes_hdc.datasets.load_ucihar() (one-time OpenML download). Default remains synthetic so the example always runs offline. Try/except surfaces download failures and falls back gracefully. Docstring and Run:: stanza updated. The encoder/classifier code paths are identical between the two modes; only the data source changes.

CI green: 480 tests pass (up from 475 with the new tests for logits + cleanup_gaussian_stacked + lax.scan-jit-compatibility); ruff and ruff format clean across bayes_hdc/, tests/, examples/, benchmarks/.
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.

0 participants