Skip to content

[BUG] Docker image 8.4.x ships Deno 1.43.5 but apps-engine 1.62.0 requires Deno 2.x. All Marketplace apps broken #40473

@hungrybluedev

Description

@hungrybluedev

Description:

The official rocket.chat:latest Docker image for versions 8.4.0 and 8.4.1 ships with Deno 1.43.5, but the bundled apps-engine 1.62.0 generates a deno.lock file at version 5, which requires Deno 2.x. This causes the Deno subprocess to refuse to start entirely, breaking all Marketplace app installation and execution. The RC 8.4.0-rc.0 release notes correctly list Deno 2.3.1 as the engine version, but the final published Docker image was not updated to match.

Steps to reproduce:

  1. Pull and run rocket.chat:latest (8.4.0 or 8.4.1) via Docker
  2. Attempt to install any Marketplace app (e.g. Jitsi, Giphy)
  3. Installation hangs indefinitely and never completes

Expected behavior:

Marketplace apps install and run correctly, with Deno 2.3.1 bundled in the image as stated in the release notes.

Actual behavior:

The container emits continuous errors: Subprocess stderr error: Unsupported lockfile version '5'. Try upgrading Deno or recreating the lockfile. This occurs even with zero apps installed, as the apps-engine Deno runtime fails to initialise at startup.

Server Setup Information:

  • Rocket.Chat Version: 8.4.1
  • Deployment Method: Docker (rocket.chat:latest)
  • Apps-Engine version: 1.62.0 (confirmed via package.json inside container)
  • Bundled Deno: 1.43.5 (confirmed via /usr/local/bin/deno --version)
  • deno.lock version inside image: 5 (confirmed via head -3 of the lock file)
  • MongoDB: 8.2.7

Workaround

A custom Dockerfile extending rocket.chat:latest that downloads and replaces the Deno binary with 2.3.1 resolves the issue completely.

Relevant logs:

Subprocess stderr error: Unsupported lockfile version '5'. Try upgrading Deno or recreating the lockfile.

(repeats every ~15 seconds continuously)

Additional Context

  • Release notes for 8.4.0-rc.0 correctly specify Deno: 2.3.1. The final image was not built to match
  • Verified by checking /usr/local/bin/deno --version inside the container
  • The deno.lock path: /app/bundle/programs/server/npm/node_modules/@rocket.chat/apps-engine/deno-runtime/deno.lock

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions