Windows: rc-apps deploy fails with File 'X.ts' not found while tsc compiles successfully

Open
#177 3 comments 0 reactions 0 assignees View on GitHub

A pull request for this has already been merged.

  • #69 by @d-gubert — merged

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
typescript
Domain
cli

Research direction

Reproduce the failure with rc-apps deploy on Windows using an entry file that imports another module, then inspect how the CLI packaging step invokes the TypeScript Language Service and resolves source paths. Done means the same project deploys successfully on Windows without the missing-file diagnostic.

Written by the indexing model from the issue text.

Description

When deploying a Rocket.Chat App using rc-apps deploy on Windows, the packaging step fails with a TypeScript diagnostic indicating that a source file cannot be found. However, the project compiles successfully when using tsc directly, and the same codebase deploys without issues on macOS.

This behavior suggests that the problem may be related to how the CLI resolves module paths through the TypeScript Language Service on Windows, rather than an issue with the TypeScript configuration itself.

My environment:

  • OS: Windows 10 / Windows 11
  • Node.js: v22.22.0
  • @rocket.chat/apps-cli: 1.13.0 (win32-x64, node-v22.22.0)
  • TypeScript: ^5.6.2

The log I got:
[
{
file: undefined,
start: undefined,
length: undefined,
code: 6053,
category: 1,
messageText: {
messageText: "File 'RoomPersistence.ts' not found.",
category: 1,
code: 6053,
next: [Array]
},
relatedInformation: undefined
}
]
A VERY UNEXPECTED ERROR HAPPENED THAT SHOULD NOT!
Packaging the app... ✖
2026-03-09 15:59:27.366 WARN App has external module(s) as dependency
(node:10364) [DEP0044] DeprecationWarning: The util.isArray API is deprecated. Please use Array.isArray() instead.
(Use node --trace-deprecation ... to show where the warning was created)
(node:10364) [DEP0047] DeprecationWarning: The util.isDate API is deprecated. Please use arg instanceof Date instead.
» Error: ⟿ Language Service's Compiler Options Diagnostics contains 1 diagnostics.

All source files are located in the project root. The issue occurs specifically when importing another module into the main app entry class. If the entry file does not import additional modules, deployment proceeds normally.

Dominant language
TypeScript
Stars
49
Forks
39
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from RocketChat/Rocket.Chat.Apps-cli

All issues in RocketChat/Rocket.Chat.Apps-cli

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.