Skip to content

chore(deps): bump adm-zip and deepl-node - #865

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/multi-df4597a5bb
Closed

chore(deps): bump adm-zip and deepl-node#865
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/multi-df4597a5bb

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 24, 2026

Copy link
Copy Markdown
Contributor

Bumps adm-zip and deepl-node. These dependencies needed to be updated together.
Updates adm-zip from 0.5.16 to 0.6.0

Release notes

Sourced from adm-zip's releases.

v0.6.0

Full Changelog: cthackers/adm-zip@v0.5.18...v0.6.0

This release fixes a security vulnerability (CVE-2026-39244), resolves several long-standing bugs, ships built-in TypeScript types, and includes two behavior changes worth reading before you upgrade.

  • extractEntryTo(dirEntry, target, maintainEntryPath = false) now preserves subdirectories instead of flattening files into the target folder by basename (which also silently overwrote same-named files). (#306)
  • Extraction no longer fails when the modification time can't be set — utimes is now best-effort. (#379)
  • Minimum Node.js is now 14 (the code already required it; engines was incorrectly >=12).
  • CVE-2026-39244 — a crafted archive declaring a huge uncompressed size could force an unbounded Buffer.alloc and OOM the process; allocation is now bounded by the data actually present. Reported by Daniel Púa (devploit), Anh Hong, and José Antonio Zamudio Amaya. (#568)
  • Hardened entry-name lookup against object injection (proto names). Prototype-less table.
  • Data-descriptor regression rejecting valid archives (#548, #533, #554)
  • Directory permissions not restored on extract (#530)
  • Infinite recursion on symlink loops in addLocalFolder (#541)
  • Uncaught process crash in writeFileToAsync on write failure (#470, #459, #402)
  • Empty name on directory entries (#466)
  • test() always returned false for archives with files
  • ~6× faster entry sorting for large archives
  • Built-in TypeScript definitions (types.d.ts) — you can drop @​types/adm-zip

v0.5.18

What's Changed

New Contributors

Full Changelog: cthackers/adm-zip@v0.5.17...v0.5.18

v0.5.17

What's Changed

New Contributors

Full Changelog: cthackers/adm-zip@v0.5.16...v0.5.17

Changelog

Sourced from adm-zip's changelog.

0.6.0 / 2026-07-10

Security

  • Fixed CVE-2026-39244: a crafted archive declaring a huge uncompressed size could force an unbounded Buffer.alloc (memory exhaustion / DoS) before any validation. Allocation is now bounded by the data actually present — STORED output is sized from the real bytes, DEFLATED output is grown by the inflater and capped at the declared size (#568)
  • Hardened the internal entry-name lookup table against object injection: entry names come from untrusted archives, and a name such as __proto__ previously resolved to Object.prototype, crashing addFile and hiding the entry from getEntry/readFile. The table is now prototype-less

Bug fixes

  • Fixed a regression (0.5.15) that rejected valid archives using a data descriptor (general-purpose bit 3). The payload is now validated against the authoritative central-directory CRC instead of requiring/parsing the trailing descriptor (#548, #533, #554)
  • Fixed extractAllTo/extractAllToAsync not restoring directory permissions with keepOriginalPermission; directory modes are applied after their contents are written, deepest path first, and no longer lock the extractor out of a restrictive directory (#530)
  • Fixed infinite recursion in addLocalFolder when a folder contains a symlink pointing back to an ancestor (e.g. workspace node_modules); the walk now tracks resolved real paths and skips already-visited directories (#541)
  • Fixed an uncaught exception (ERR_INVALID_ARG_TYPE) that crashed the process when writeFileToAsync could not open the target file (bad permissions, invalid filename, exhausted file descriptors); write failures are now reported through the callback and write errors are no longer silently swallowed (#470, #459, #402)
  • Fixed directory entries reporting an empty name (e.g. a/b/c/ now returns c) (#466)
  • Fixed extractEntryTo flattening subdirectories when maintainEntryPath is false; the structure below the extracted directory is now preserved instead of collapsing (and overwriting) files by basename (#306)
  • Fixed a failed utimes aborting extraction; setting the modification time is now best-effort and never fails extraction of already-written content (#379)
  • Fixed test() always returning false for any archive containing a file (it indexed the entries array with an entry object instead of reading the entry); it now correctly verifies each entry's CRC

Performance

  • Faster entry sorting when writing archives with many entries: names are decoded once instead of on every comparison (about 6× faster sort for large archives)

Added

  • Bundled TypeScript type definitions (types.d.ts), so @types/adm-zip is no longer required

Notes

  • Behavior change: extractEntryTo(dir, target, /* maintainEntryPath */ false) now preserves subdirectories beneath the extracted directory rather than flattening them
  • Behavior change: extraction no longer fails when the modification time cannot be set

0.5.4 / 2021-03-08

  • Fixed relative paths
  • Added zipcrypto encryption
  • Lower verMade for macOS when generating zip file

0.5.3 / 2021-02-07

  • Fixed filemode when unzipping

0.5.2 / 2021-01-27

  • Fixed path traversal issue (GHSL-2020-198)

0.5.1 / 2020-11-27

  • Incremented version (cthackers)
  • Fixed outFileName (cthackers)

0.5.0 / 2020-11-19

  • Added extra parameter to extractEntryTo so target filename can be renamed (cthackers)

... (truncated)

Commits
  • 2b4d840 updated minimum node engine version to >= 14
  • dc57f0f Hardened entry-name lookup, fixed test(), and sped up entry sorting
  • f81806a Made utimes best-effort so it can't abort extraction (#379)
  • ab04324 Fixed extractEntryTo flattening subdirectories (#306)
  • 8a5d9ba Fixed empty name for directory entries (#466)
  • 3e72790 Fixed uncaught crash in writeFileToAsync on write failure (#470, #459, #402)
  • 651ae4c Added typescript types
  • e72021d Fixed infinite recursion on symlink loops in addLocalFolder (#541)
  • 8f3176b Fixed directory permissions on linux
  • 4d2c8f9 Fixed error introduced with zip descriptor checks
  • Additional commits viewable in compare view

Updates deepl-node from 1.24.0 to 1.28.0

Release notes

Sourced from deepl-node's releases.

v1.28.0

Added

  • Added support for using multiple glossaries in text and document translation via the glossaryIds option (up to 5 glossary IDs) in TranslateTextOptions and DocumentTranslateOptions.
  • Added support for style rules in document translation via the styleRule option in DocumentTranslateOptions.
  • Added support for translation memories in document translation via the translationMemory and translationMemoryThreshold options in DocumentTranslateOptions.
  • Added support for the translation memory management APIs: getTranslationMemory(), listTranslationMemorySegments(), deleteTranslationMemory(), createTranslationMemoryImport(), uploadTranslationMemoryFile(), createTranslationMemoryExport(), getTranslationMemoryJob(), isTranslationMemoryJobComplete(), and downloadTranslationMemoryExport(), along with the importTranslationMemoryFromFilepath() and exportTranslationMemoryToFilepath() convenience functions that create the job, transfer the TMX file, and wait for the job to finish. Because the API detects the file upload asynchronously, an import job keeps reporting awaiting_input for a while after the upload; the wait loop polls through that status and accepts an optional timeoutMs to bound the wait.
  • Added the TranslationMemorySegments, TranslationMemorySegment, TranslationMemoryTargetSegment, TranslationMemorySegmentsOptions, TranslationMemoryImport, TranslationMemoryExport, TranslationMemoryJob, TranslationMemoryJobResult, and TranslationMemoryJobStatus types.
  • Added optional creationTime and updatedTime fields to TranslationMemoryInfo.

Changed

  • Requests to the pre-signed storage URLs used for translation memory import and export now go through a separate HTTP client that is constructed without the DeepL Authorization header, instead of stripping it per request. Headers supplied via TranslatorOptions.headers are no longer sent to those URLs either — only the User-Agent and the per-request Content-Type. Proxy settings are unaffected.

Fixed

  • The debug log helper no longer crashes when axios error fields return a non-primitive from toString or Symbol.toPrimitive.

Security

  • Bumped axios to ^1.19.0, form-data to ^3.0.5, and adm-zip to ^0.6.0 to resolve high-severity npm audit advisories in production dependencies.

v1.26.0

Added

  • Added support for translation memories in text translation via translationMemory and translationMemoryThreshold options in translateText().
  • Added listTranslationMemories() method to the DeepLClient class for

... (truncated)

Changelog

Sourced from deepl-node's changelog.

[1.28.0] - 2026-08-11

Added

  • Added support for using multiple glossaries in text and document translation via the glossaryIds option (up to 5 glossary IDs) in TranslateTextOptions and DocumentTranslateOptions.
  • Added support for style rules in document translation via the styleRule option in DocumentTranslateOptions.
  • Added support for translation memories in document translation via the translationMemory and translationMemoryThreshold options in DocumentTranslateOptions.
  • Added support for the translation memory management APIs: getTranslationMemory(), listTranslationMemorySegments(), deleteTranslationMemory(), createTranslationMemoryImport(), uploadTranslationMemoryFile(), createTranslationMemoryExport(), getTranslationMemoryJob(), isTranslationMemoryJobComplete(), and downloadTranslationMemoryExport(), along with the importTranslationMemoryFromFilepath() and exportTranslationMemoryToFilepath() convenience functions that create the job, transfer the TMX file, and wait for the job to finish. Because the API detects the file upload asynchronously, an import job keeps reporting awaiting_input for a while after the upload; the wait loop polls through that status and accepts an optional timeoutMs to bound the wait.
  • Added the TranslationMemorySegments, TranslationMemorySegment, TranslationMemoryTargetSegment, TranslationMemorySegmentsOptions, TranslationMemoryImport, TranslationMemoryExport, TranslationMemoryJob, TranslationMemoryJobResult, and TranslationMemoryJobStatus types.
  • Added optional creationTime and updatedTime fields to TranslationMemoryInfo.

Changed

  • Requests to the pre-signed storage URLs used for translation memory import and export now go through a separate HTTP client that is constructed without the DeepL Authorization header, instead of stripping it per request. Headers supplied via TranslatorOptions.headers are no longer sent to those URLs either — only the User-Agent and the per-request Content-Type. Proxy settings are unaffected.

Fixed

  • The debug log helper no longer crashes when axios error fields return a non-primitive from toString or Symbol.toPrimitive.

Security

  • Bumped axios to ^1.19.0, form-data to ^3.0.5, and adm-zip to ^0.6.0 to resolve high-severity npm audit advisories in production dependencies.

[1.27.0] - 2026-04-27

Changed

  • Replaced the uuid dependency with Node's built-in crypto.randomUUID(). Resolves GHSA-w5hq-g745-h8pq (uuid <14.0.0) and removes a runtime dependency.
  • Bumped minimum Node version from >=12.0 to >=14.17. Node 12 reached

... (truncated)

Commits
  • d092087 docs: Bump version to 1.28.0
  • c7023f6 feat: add support for the translation memory management APIs
  • 3fe5a95 feat: support glossaryIds and document styleRule/translationMemory options
  • 7051960 fix: bump axios to ~1.15.2 and harden debug logging against non-stringifiable...
  • b4c3f89 chore: fix changelog
  • 605bb61 Merge pull request #80 from DeepLcom/acl-2909-retry-on-econnreset
  • 02d7410 docs: Bump version to 1.27.0
  • ec06c2e chore: drop uuid dependency in favor of crypto.randomUUID
  • 074c649 formatting
  • 1f5b91f acl-2909: retry on ECONNRESET / EPIPE / EAI_AGAIN
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Aug 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Not Automerged — Unknown Update Type

The update type (empty) is not recognized. Only version-update:semver-patch, version-update:semver-minor, and version-update:semver-major are supported.

No further processing was performed.

Dependabot Information:

  • Package name(s): adm-zip, deepl-node
  • Update type: unknown (raw: (empty))
  • Dependency type: package-lock
  • Previous version:
  • New version:

Bumps [adm-zip](https://github.com/cthackers/adm-zip) and [deepl-node](https://github.com/DeepLcom/deepl-node). These dependencies needed to be updated together.

Updates `adm-zip` from 0.5.16 to 0.6.0
- [Release notes](https://github.com/cthackers/adm-zip/releases)
- [Changelog](https://github.com/cthackers/adm-zip/blob/master/history.md)
- [Commits](cthackers/adm-zip@v0.5.16...v0.6.0)

Updates `deepl-node` from 1.24.0 to 1.28.0
- [Release notes](https://github.com/DeepLcom/deepl-node/releases)
- [Changelog](https://github.com/DeepL/deepl-node/blob/main/CHANGELOG.md)
- [Commits](DeepL/deepl-node@v1.24.0...v1.28.0)

---
updated-dependencies:
- dependency-name: adm-zip
  dependency-version: 0.6.0
  dependency-type: indirect
- dependency-name: deepl-node
  dependency-version: 1.28.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/multi-df4597a5bb branch from 8dceef6 to ca8f7ae Compare August 24, 2026 11:50
@github-actions

Copy link
Copy Markdown
Contributor

Not Automerged — Unknown Update Type

The update type (empty) is not recognized. Only version-update:semver-patch, version-update:semver-minor, and version-update:semver-major are supported.

No further processing was performed.

Dependabot Information:

  • Package name(s): adm-zip, deepl-node
  • Update type: unknown (raw: (empty))
  • Dependency type: package-lock
  • Previous version:
  • New version:

DutchmanNL added a commit that referenced this pull request Aug 24, 2026
Runtime dependencies:
* @iobroker/adapter-core ^3.4.1 -> ^3.4.3
* axios ^1.12.0 -> ^1.19.0
* ws ^8.7.0 -> ^8.21.3 (resolves GHSA-58qx-3vcg-4xpx / GHSA-96hv-2xvq-fx4p)

Dev dependencies:
* @tsconfig/node22 ^22.0.2 -> ^22.0.6
* @types/node ^22.10.0 -> ^22.20.1 (kept on the 22.x line to match engines.node >= 22)
* lockfile refresh pulls @iobroker/eslint-config 2.3.4, @iobroker/testing 5.3.0,
  @jey-cee/dm-utils 0.0.5, deepl-node 1.28.0 and adm-zip 0.6.0 (CVE-2026-39244)

GitHub Actions:
* actions/checkout v4 -> v7
* actions/github-script v7 -> v9

Deliberately not taken:
* hex-rgb 5.x and rgb-hex 4.x are ESM-only; this adapter is CommonJS and
  require()s both in main.js, so they stay on 4.3.0 / 3.0.0.

Supersedes dependabot PRs #865, #862, #857, #856 and makes #864 and #861 obsolete.

Verified locally: npm run lint (0 errors), npm run test:package (57 passing),
npm run test:js (1 passing), npm run test:integration (2 passing, adapter boots).

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@DutchmanNL

Copy link
Copy Markdown
Contributor

Superseded by the consolidated dependency update in #867 (merged).

@DutchmanNL DutchmanNL closed this Aug 24, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 24, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/multi-df4597a5bb branch August 24, 2026 13:03
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 javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant