Skip to content

chore: Deno 2 + libpkgx v0.23 (multi-version openssl/abseil)#366

Open
jhheider wants to merge 1 commit into
mainfrom
deno-2-libpkgx-0.23
Open

chore: Deno 2 + libpkgx v0.23 (multi-version openssl/abseil)#366
jhheider wants to merge 1 commit into
mainfrom
deno-2-libpkgx-0.23

Conversation

@jhheider

Copy link
Copy Markdown
Contributor
  • Bump runtime from deno^1 to deno^2 with --unstable-fs/ffi
  • libpkgx v0.23 via raw.githubusercontent (multi-ABI hydrate)
  • cliffy/command and std yaml/assert via JSR
  • resolve-pkg: reconstruct package.yml path when find() omits it
  • Deno 2 type fixes (override, unknown catch, version.tag)

Enables simple openssl.org: ^3 alongside python's transitive ^1.1.

- Bump runtime from deno^1 to deno^2 with --unstable-fs/ffi
- libpkgx v0.23 via raw.githubusercontent (multi-ABI hydrate)
- cliffy/command and std yaml/assert via JSR
- resolve-pkg: reconstruct package.yml path when find() omits it
- Deno 2 type fixes (override, unknown catch, version.tag)

Enables simple openssl.org: ^3 alongside python's transitive ^1.1.
Copilot AI review requested due to automatic review settings July 22, 2026 21:36

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates brewkit’s Deno-based scripts and composite actions to run on Deno 2, while migrating several dependencies to JSR and adapting to newer libpkgx behaviors (including missing find().path).

Changes:

  • Bump all runtime/action entrypoints from deno^1 to deno^2 and add required --unstable-fs/--unstable-ffi flags where needed.
  • Migrate cliffy/command, std/yaml, and std/assert usage to JSR (@cliffy/command, @std/yaml, @std/assert) and update the import map accordingly.
  • Improve compatibility with newer libpkgx by reconstructing package.yml paths when usePantry().find() omits them, and by adjusting a few Deno 2 typing/Command API changes.

Reviewed changes

Copilot reviewed 25 out of 27 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
upload-build-artifact/action.yml Switch cache step to deno^2.
download-build-artifact/action.yml Switch cache step to deno^2.
test/action.yml Switch cache step to deno^2.
test/test.ts Deno 2 shebang flags; move YAML import to @std/yaml.
scripts/publish-release.sh Bump embedded deno runtime to deno^2.
libexec/fix-shebangs.ts Deno 2 shebang + unstable flags.
lib/utils/Unarchiver.ts Add override annotations for Deno 2 typing.
lib/utils.ts Replace prototype .compact usage with utils.compact.
lib/resolve-pkg.ts Reconstruct package.yml path when find() omits it (libpkgx≥0.23 behavior).
lib/porcelain/fix-up.ts Replace .compact usage with utils.compact.
lib/porcelain/build-script.ts Replace .compact usage with utils.compact.
lib/porcelain/fetch.ts Guard err.cause assignment for unknown catches.
lib/hooks/usePantry.getVersions.ts Replace .chuzzle/.compact; adjust transformer subprocess handling for Deno 2.
lib/hooks/usePantry.getVersions.test.ts Move asserts import to @std/assert.
lib/hooks/useGitHubAPI.ts Use Deno.Command().output() (single execution) for token retrieval.
lib/hooks/useCache.test.ts Move asserts import to @std/assert.
lib/bin/fix-elf.ts Deno 2 shebang + replace .compact/.chuzzle usage with utils functions.
lib/actions/stage.ts Deno 2 shebang + unstable flags.
lib/actions/platform-key.ts Deno 2 shebang + migrate Command import to @cliffy/command.
id/id.ts Deno 2 shebang + adjust version.tag access for typing changes.
id/action.yml Switch cache step to deno^2.
deno.jsonc Move to Deno 2, JSR imports for std/cliffy, update libpkgx mappings.
build/build.ts Deno 2 shebang; migrate YAML + Command imports; adjust version.tag typing.
build/action.yml Switch cache step to deno^2.
bin/bk-edit Bump embedded deno runtime to deno^2.
audit/audit.ts Deno 2 shebang; migrate Command import to @cliffy/command.
audit/action.yml Switch cache step to deno^2.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +329 to +333
const [out, , status] = await Promise.all([
new Response(child.stdout).arrayBuffer(),
new Response(child.stderr).arrayBuffer(),
child.status,
])
Comment thread deno.jsonc
Comment on lines +18 to +22
// libpkgx multi-version hydrate — JSR (deno.land/x is read-only)
// Note: JSR doesn't support trailing-slash import-map prefixes; map each export.
"libpkgx": "jsr:@pkgx/libpkgx@^0.24.0",
"libpkgx/hooks/useConfig.ts": "jsr:@pkgx/libpkgx@^0.24.0/hooks/useConfig.ts",
"libpkgx/hooks/usePantry.ts": "jsr:@pkgx/libpkgx@^0.24.0/hooks/usePantry.ts",
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