Skip to content

chore(ci): bump actions/upload-artifact from 4 to 7 - #22

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

chore(ci): bump actions/upload-artifact from 4 to 7#22
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions/upload-artifact-7

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 17, 2026

Copy link
Copy Markdown

Bumps actions/upload-artifact from 4 to 7.

Release notes

Sourced from actions/upload-artifact's releases.

v7.0.0

v7 What's new

Direct Uploads

Adds support for uploading single files directly (unzipped). Callers can set the new archive parameter to false to skip zipping the file during upload. Right now, we only support single files. The action will fail if the glob passed resolves to multiple files. The name parameter is also ignored with this setting. Instead, the name of the artifact will be the name of the uploaded file.

ESM

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

What's Changed

New Contributors

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

v6.0.0

v6 - What's new

[!IMPORTANT] actions/upload-artifact@v6 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. v5 had preliminary support for Node.js 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

Full Changelog: actions/upload-artifact@v5.0.0...v6.0.0

v5.0.0

What's Changed

BREAKING CHANGE: this update supports Node v24.x. This is not a breaking change per-se but we're treating it as such.

... (truncated)

Commits
  • 043fb46 Merge pull request #797 from actions/yacaovsnc/update-dependency
  • 634250c Include changes in typespec/ts-http-runtime 0.3.5
  • e454baa Readme: bump all the example versions to v7 (#796)
  • 74fad66 Update the readme with direct upload details (#795)
  • bbbca2d Support direct file uploads (#764)
  • 589182c Upgrade the module to ESM and bump dependencies (#762)
  • 47309c9 Merge pull request #754 from actions/Link-/add-proxy-integration-tests
  • 02a8460 Add proxy integration test
  • b7c566a Merge pull request #745 from actions/upload-artifact-v6-release
  • e516bc8 docs: correct description of Node.js 24 support in README
  • 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/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@v4...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  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 Jun 17, 2026

Copy link
Copy Markdown
Author

Labels

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

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

yfedoseev added a commit that referenced this pull request Jul 27, 2026
…ency + security refresh (#33, #32)

Reusing a Page across navigations grew V8's live heap by ~10 MB per page
without ceiling, and — as this work uncovered — was also silently corrupting
render output. Every reaper the engine had was wired only to Page::drop, which
a pool by definition never reaches, and several bootstrap-JS registries are
scoped to the JsRuntime rather than to the document.

Sources of retention, all previously unpruned on reuse:

  event_bootstrap.js   _objListeners    window-keyed; window is never collected
                       _nodeListeners   strong Map, never pruned at all
  dom_bootstrap.js     _nodeCache, _scrollState, _moObservers,
                       _appendedIframes, _frameRegistry
  window_bootstrap.js  _customElementsRegistry, _whenDefinedPromises
  globalThis           page-assigned properties, and on* handler VALUES

New JS reset hooks (__cancelAllListeners, __resetDomRegistries,
__resetCustomElements, __resetPageGlobals) bundled behind a public
Page::reset_for_reuse(). PagePool::acquire and the CDP protocol server — which
had the identical bug on Page.navigate — now call it.

Three correctness bugs fall out of the same fix. _nodeListeners and the node
wrapper cache are keyed by nodeId, and node IDs restart at zero when
replace_dom swaps the document, so the previous page's handler for node 42
fired on the new page's node 42. Re-define()ing a custom element name the
previous page had registered was a silent no-op. And __keepLongTimersRefed
stayed set after a challenge page, pinning long timers thereafter.

on* handlers needed value-level treatment: they already exist as own
properties at bootstrap, so a key-set diff cannot see `window.onscroll = fn`.
Values are snapshotted at baseline and restored, which clears page assignments
while preserving the engine's own window.onerror instrumentation.

Live heap, after a forced full GC, 25 warm reuses of a document retaining
~1 MB behind a window listener:

  without reset (0.1.0 behaviour)   1,040,662 B / reuse
  with reset    (this change)             468 B / reuse

Beyond memory: on main, the second site through the pool renders a 9-byte
body. Reproduced on two unrelated real sites — hackernews (9 -> 34,772 B) and
the areyouheadless detection probe (9 -> 164 B, matching cold-path output).
canary.yml could not catch this because it only exercises the cold path.

Adds Page::v8_heap_used_bytes() / collect_garbage() so operators can verify
pool health, and examples/canvas_fp_probe.rs to guard canvas fingerprint
stability across dependency bumps.

Dependencies (closes #32, supersedes #22-#31):
  deno_core 0.404, taffy 0.12, sha1/sha2 0.11, adblock 0.13, skia-safe 0.99,
  tokio-tungstenite 0.30, webpki-root-certs 1.0, brotli 8, base64 0.23,
  glow 0.18, chrono, http2, five SHA-pinned CI actions, plus cargo update.

  png HELD at 0.17: 0.18 emits a 9,646-byte canvas data URL where 0.17 emits
  17,502 — a different fingerprint on every page. deno_core HELD at 0.404:
  0.408 aborts (SIGABRT) during V8 isolate construction in Linux debug builds.

Security — cargo audit 2 vulnerabilities -> 0:
  quinn-proto     0.11.14 -> 0.11.16  RUSTSEC-2026-0185 (remote memory
                                      exhaustion, in the HTTP/3 path)
  crossbeam-epoch  0.9.18 -> 0.9.20   RUSTSEC-2026-0204
  anyhow          1.0.102 -> 1.0.104  RUSTSEC-2026-0190

Also fixes the DCO workflow, which could never pass: `git log --pretty=full`
indents the body four spaces, so its `^Signed-off-by:` anchor never matched.

Regression tested main -> HEAD on 15 open and 15 protected/anti-bot sites,
both engine paths: zero regressions, pool 11/15 -> 12/15 on the open corpus.
browserleaks/canvas, creepjs and pixelscan byte-identical on both paths.

adblock 0.13 API port by Ran-Mewo (SilvR-AI/browser_oxide fork), with thanks.
Reported by DemonMartin.

Closes #33
Closes #32

Signed-off-by: Yury Fedoseev <yfedoseev@gmail.com>
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