Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Oct 14, 2025

Fix Deno dependency management for new lint rules

Summary

This PR fixes CI failures caused by Deno's new lint rules (no-import-prefix and no-unversioned-import) that require dependencies to be declared in deno.json instead of using inline imports.

Changes:

  • Added imports section to deno.json with all 6 dependencies mapped to bare specifiers
  • Updated 6 source files (logger.ts, bundle.ts, params_test.ts, server.ts, render.ts) to use bare specifiers
  • Regenerated deno.lock (v4 → v5 format) with correct hashes for new dependency resolution
  • Pinned @std/ulid to exact version 1.0.0 for predictable dependency resolution

CI Status: ✅ All checks passing (fmt, lint, test)

Review & Testing Checklist for Human

  • Verify deno task build failure is acceptable - The build task now fails because the emit bundler doesn't understand import maps. This task is NOT part of CI, but if you use it locally for development, we'll need to fix it separately (likely by configuring emit to use the import map or switching bundlers).
  • Test the application end-to-end - Run deno task dev and verify the server starts correctly and generates images as expected. CI only tests fmt/lint/test, not runtime behavior.
  • Review import map entries - Verify all 6 import map entries in deno.json are correct and match the actual imports in the code.

Notes

  • The lock file format changed from v4 to v5, which is expected with Deno v2.5.4
  • All inline imports (jsr:, https://) have been replaced with bare specifiers as required by the new lint rules
  • Local verification completed: deno fmt --check ✅, deno lint ✅, deno test

Devin Session: https://app.devin.ai/sessions/5bb3ce0fa7ea448da5f05fce40bf9d8a
Requested by: swfz ([email protected]) / @swfz

renovate bot and others added 5 commits October 14, 2025 05:54
- Add imports section to deno.json with all dependencies
- Update all source files to use bare specifiers instead of inline imports
- Regenerate deno.lock with correct hashes for new dependency resolution
- Fixes lint errors: no-import-prefix and no-unversioned-import

Co-Authored-By: swfz <[email protected]>
- Pin @std/ulid from @1 to @1.0.0 for more predictable dependency resolution
- Regenerate deno.lock with pinned version

Co-Authored-By: swfz <[email protected]>
- Load deno.json and pass import map to bundle() function
- This allows the bundler to resolve bare specifiers like 'tiny-segmenter'
- Fixes 'deno task build' which was failing after migrating to import maps

Co-Authored-By: swfz <[email protected]>
- Remove trailing whitespace from lines 5 and 8
- Fixes deno fmt --check CI failure

Co-Authored-By: swfz <[email protected]>
@swfz swfz merged commit e87afc5 into main Nov 11, 2025
3 checks passed
@swfz swfz deleted the renovate/actions-setup-node-6.x branch November 11, 2025 12:00
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