Skip to content

Port CLI improvements from #202 to RokuDeploy.ts and align options interface#230

Draft
Copilot wants to merge 36 commits intov4from
copilot/port-cli-changes-to-rokudeploy
Draft

Port CLI improvements from #202 to RokuDeploy.ts and align options interface#230
Copilot wants to merge 36 commits intov4from
copilot/port-cli-changes-to-rokudeploy

Conversation

Copy link

Copilot AI commented Feb 5, 2026

PR #202 refactored the CLI with improved argument handling, explicit validation, and command-specific logic. This ports those improvements to the core RokuDeploy API and options interface.

Changes

RokuDeployOptions Interface

  • Removed most default values except for universally applicable options (host, password, username, timeout, remotePort, packagePort)
  • Eliminated redundant options that were only used in specific commands
  • Options now must be explicitly provided per-call rather than relying on hardcoded defaults

CLI Implementation

  • Ported command classes from v4 branch (SideloadCommand, StageCommand, ZipCommand, etc.)
  • Updated cli.ts to match v4's command structure with explicit option handling
  • Added ecpPort alias for remotePort in ECP-related commands
  • CLI args use more intuitive names: --out instead of --outDir/--outFile, --pkg for signed packages, --dir for directories

RokuDeploy.ts Function Alignment

  • Function signatures now match CLI command expectations
  • Added validation to throw errors when required options are missing
  • Removed implicit option merging behaviors that masked missing arguments

Example

Before (relied on defaults):

await rokuDeploy.sideload({ host: '192.168.1.100' }); // Used default outDir, files, etc.

After (explicit options required):

await rokuDeploy.sideload({ 
  host: '192.168.1.100',
  password: 'password',
  outDir: './out',
  outFile: 'package.zip'
});

CLI now validates and provides clear errors for missing required options rather than silently using defaults.

Original prompt

This section details on the original issue you should resolve

<issue_title>Consider carrying over changes to CLI from #202 into RokuDeploy.ts</issue_title>
<issue_description>In #202 there were a lot of changes done to the CLI. We want to port those changes over to RokuDeploy.ts.</issue_description>

<agent_instructions>We want to start with RokuDeployOptions. We want to mostly get rid of these except for options that are used in every call, like host and password. Then we want to align the rest of the options with the changes to the CLI. Users should be able to input most of their options through CLI, have a warning if an option is required but wasn't input, and rely very little on hard coded defaults unless it makes sense with how little these defaults change and how often they are used (like host and password, as previously mentioned). This all can be done in one commit on a new branch. Then in a new commit on the same branch, we want to make sure that the functions in rokudeploy.ts align well with the CLI. The CLI is the source of truth with the major functions. The similar functions in rokudeploy.ts should be named the same and have the same functionality, and error when not provided the correct arguments.

Please formulate a plan before getting started. Ask any questions before getting started. </agent_instructions>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

TwitchBronBron and others added 30 commits August 4, 2025 12:01
Co-authored-by: rokucommunity-bot <[email protected]>
Co-authored-by: rokucommunity-bot <[email protected]>
Co-authored-by: Bronley Plumb <[email protected]>
Christian-Holbrook and others added 6 commits December 5, 2025 13:10
Co-authored-by: rokucommunity-bot <[email protected]>
Co-authored-by: rokucommunity-bot <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Copilot AI changed the title [WIP] Port changes from CLI to RokuDeploy.ts Port CLI improvements from #202 to RokuDeploy.ts and align options interface Feb 5, 2026
Copilot AI requested a review from MilapNaik February 5, 2026 18:25
@MilapNaik MilapNaik changed the base branch from master to v4 February 5, 2026 20:19
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.

Consider carrying over changes to CLI from #202 into RokuDeploy.ts

5 participants