Skip to content

Migrate to roku-deploy v4 - #398

Draft
chrisdp wants to merge 1 commit into
masterfrom
feature/roku-deploy-v4
Draft

Migrate to roku-deploy v4#398
chrisdp wants to merge 1 commit into
masterfrom
feature/roku-deploy-v4

Conversation

@chrisdp

@chrisdp chrisdp commented Jul 23, 2026

Copy link
Copy Markdown
Collaborator

Moves every roku-deploy call to the v4 named-options API and the unified device option (roku-deploy PR rokucommunity/roku-deploy#323, plus the defaults/resolvers from rokucommunity/roku-deploy#330).

  • publish -> sideload, passing explicit close: false and deleteDevChannel: false since v4 enables both by default and roku-debug handles them itself
  • pressHomeButton -> keyPress with the home key
  • deleteInstalledChannel -> deleteDevChannel
  • prepublishToStaging -> stage, zipFolder -> zip, getFilePaths named options (dest paths are now staging-relative, so ProjectManager absolutizes them)
  • getOptions/getOutputZipFilePath are gone in v4; replaced with RokuDeploy.defaults and the getStagingDir/getOutputZipPath resolvers
  • every host/remotePort call site now builds a device option; the private BrightScriptDebugSession.device getter is the single place the launch configuration becomes a roku-deploy device config, so future addressing schemes (like the Roku Cloud Emulator) only need to be handled there

Draft: builds against a local roku-deploy checkout of the unified-device-option work; the package.json bump will follow separately once a v4 alpha containing it is published.

Move every roku-deploy call to the v4 named-options API and the unified device option:
- publish -> sideload (explicit close: false and deleteDevChannel: false to preserve existing behavior)
- pressHomeButton -> keyPress with the home key
- deleteInstalledChannel -> deleteDevChannel
- prepublishToStaging -> stage, zipFolder -> zip
- getFilePaths named options (dest is staging-relative; ProjectManager absolutizes)
- getOptions/getOutputZipFilePath replaced with RokuDeploy.defaults and the getStagingDir/getOutputZipPath resolvers
- host/remotePort call sites now build a device option; the private BrightScriptDebugSession.device getter is the single place the launch configuration becomes a roku-deploy device config
password: this.launchConfiguration.password,
username: this.launchConfiguration.username,
packagePort: this.launchConfiguration.packagePort
});

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

We can set most of these in the RokuDeploy constructor and it will persist. That way we don't have to repeat the same parameters over and over.

@chrisdp chrisdp self-assigned this Jul 24, 2026
@chrisdp chrisdp mentioned this pull request Jul 24, 2026
13 tasks
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