forcedotcom / cli

Salesforce CLI
https://developer.salesforce.com/docs/atlas.en-us.sfdx_cli_reference.meta/sfdx_cli_reference/
BSD 3-Clause "New" or "Revised" License
494 stars 78 forks source link

Can't deploy a TypeScript LWC component to pre-release scratch org #3011

Open SCWells72 opened 2 months ago

SCWells72 commented 2 months ago

NOTE: Logging this after discussion with Vivek Chawla in Slack.

The short version is that I've created a preview scratch org and an API v62.0 project, then I've created an LWC component with a valid .ts file instead of a .js file. When I try to deploy the project to the scratch org, I get:

$ sf project deploy start
Deploying v62.0 metadata to <redacted> using the v62.0 SOAP API.
Deploy ID: <redacted>
Status: Failed | ████████████████████████████████████████ | 1/1 Components | Errors: 1

Component Failures [1]
===================================================================================
| Type  Name        Problem                                             Line:Column 
| ───── ─────────── ─────────────────────────────────────────────────── ─────────── 
| Error tsComponent Cannot find Lightning Component Bundle tsComponent.
Note that I'm on the latest GA build of the CLI:

The same behavior occurs on the stable (@salesforce/cli/2.57.7 win32-x64 node-v20.16.0) and nightly (@salesforce/cli/2.59.5 win32-x64 node-v20.17.0) CLI builds.

System Information

CLI:
@salesforce/cli/2.59.5 win32-x64 node-v20.17.0

Plugin Version:
@oclif/plugin-autocomplete 3.2.3 (core)
@oclif/plugin-commands 4.0.14 (core)
@oclif/plugin-help 6.2.11 (core)
@oclif/plugin-not-found 3.2.20 (core)
@oclif/plugin-plugins 5.4.7 (core)
@oclif/plugin-search 1.2.8 (core)
@oclif/plugin-update 4.5.6 (core)
@oclif/plugin-version 2.2.12 (core)
@oclif/plugin-warn-if-update-available 3.1.15 (core)
@oclif/plugin-which 3.2.13 (core)
@salesforce/cli 2.59.5 (core)
apex 3.4.9 (core)
api 1.2.1 (core)
auth 3.6.56 (core)
data 3.6.5 (core)
deploy-retrieve 3.12.7 (core)
info 3.4.6 (core)
lightning-dev 1.1.1 (user)
limits 3.3.30 (core)
marketplace 1.2.25 (core)
org 4.5.8 (core)
packaging 2.8.4 (core)
schema 3.3.29 (core)
settings 2.3.19 (core)
sobject 1.4.35 (core)
source 3.5.19 (core)
telemetry 3.6.12 (core)
templates 56.3.18 (core)
trust 3.7.27 (core)
user 3.5.29 (core)
@salesforce/sfdx-scanner 4.2.0 (user)
SF ENV. VARS.
SF_AUTOUPDATE_DISABLE,true
SF_BINPATH,C:\Users\Scott\AppData\Local\sf\client\bin\sf
SF_DISABLE_AUTOUPDATE,true
SF_DISABLE_TELEMETRY,true
SF_TARGET_DEV_HUB,ic-dev-hub
SF_UPDATE_INSTRUCTIONS,Use "npm update --global @salesforce/cli" to update npm-based installations.
Windows: true
Shell: cmd.exe
Channel: stable

Diagnostics

:white_check_mark: pass - salesforcedx plugin isn’t installed :white_check_mark: pass - you don't have any linked plugins :white_check_mark: pass - [@salesforce/plugin-trust] can ping: https://registry.npmjs.org :white_check_mark: pass - [@salesforce/plugin-trust] can ping: https://registry.yarnpkg.com :white_check_mark: pass - [@salesforce/plugin-trust] can ping: https://registry.npmjs.org/ :x: warn - [@salesforce/plugin-deploy-retrieve] sourceApiVersion matches apiVersion :white_check_mark: pass - can access: https://appexchange.salesforce.com/services/data :white_check_mark: pass - can access: https://test.salesforce.com :white_check_mark: pass - can access: https://developer.salesforce.com/media/salesforce-cli/sf/channels/stable/sf-win32-x64-buildmanifest :white_check_mark: pass - using latest or latest-rc CLI version :x: fail - [@salesforce/plugin-auth] CLI supports v2 crypto :white_check_mark: pass - [@salesforce/plugin-auth] CLI using stable v1 crypto

SCWells72 commented 2 months ago

Note that trying to push via VSCode (latest everything) fails in the exact same manner:

image

iowillhoit commented 2 months ago

Thanks for creating this Scott! We will be having some conversations internally about this and will follow up

git2gus[bot] commented 2 months ago

This issue has been linked to a new work item: W-16725785

SCWells72 commented 2 months ago

Thanks, @iowillhoit. I'd be specifically interested to know whether or not it will be possible to deploy these via the CLI in the Winter '25 timeframe. That will obviously determine to what extent (if at all) I'm able to add support for TypeScript-based LWC components to IC2. I've already implemented a significant amount of IDE editor functionality, but if the transpiler step is only in the VS Code Extensions, I'd either need to know how to run the same transpiler or would have to wait until that functionality is (IMO correctly) moved into the CLI.