Skip to content

Conversation

@blshukla
Copy link
Contributor

@blshukla blshukla commented Jul 10, 2025

📝 Description

  • Add new JS application that can self update and run on BrightSign players
  • Add optional Nodejs server that serves the "autorun.zip" file expected by the JS app

Issue: JIRA - PE-851

✔️ Dev Complete Checklist

  • PR template filled out
  • Change is tested by submitter
  • PR follows all linting and coding standards
  • Github Issue exists (if applicable)
  • Team member has been assigned
  • At least one commit message is in Conventional Commit format

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Adds a complete example of a self-updating JavaScript application for BrightSign players, including build configs, runtime code, an optional server, and documentation.

  • Introduces a TypeScript-based updater app with Webpack and TS configuration
  • Adds an optional Express server to serve the autorun.zip package
  • Provides a BrightScript autorun.brs script and README instructions

Reviewed Changes

Copilot reviewed 8 out of 9 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
examples/bs-app-updater-example/webpack.config.js Webpack config for building the updater app
examples/bs-app-updater-example/tsconfig.json TypeScript compiler settings
examples/bs-app-updater-example/server/package.json Defines the optional server’s package metadata
examples/bs-app-updater-example/server/index.js Express server to deliver autorun.zip
examples/bs-app-updater-example/package.json Main updater app’s package metadata and dependencies
examples/bs-app-updater-example/index.ts Core logic for downloading, unzipping, backup, and reboot
examples/bs-app-updater-example/autorun.brs BrightScript autorun entrypoint for the updater
examples/bs-app-updater-example/README.md Instructions for setup, build, and usage
Comments suppressed due to low confidence (2)

examples/bs-app-updater-example/README.md:55

  • The README instructs npm run build for the server, but server/package.json has no build script. Either add a build script or remove this step.
    npm run build

examples/bs-app-updater-example/index.ts:30

  • [nitpick] This critical download-and-unzip function lacks unit tests to verify success, error paths, and edge cases. Consider adding tests around network errors, invalid zips, and permission failures.
async function downloadAndUnzipFile(url: string, dest: string): Promise<boolean> {

Copy link

@evan-morgan evan-morgan left a comment

Choose a reason for hiding this comment

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

Only 1 real point to address, the rest are just not-why comments

@blshukla blshukla requested a review from evan-morgan July 10, 2025 23:01
@blshukla blshukla dismissed evan-morgan’s stale review July 10, 2025 23:02

Addressed review comments

@blshukla blshukla requested a review from jdmedlin1 July 10, 2025 23:02
@blshukla blshukla force-pushed the PE-851-app-updater branch from 4d6bd20 to 67a4f64 Compare July 14, 2025 23:48
@blshukla blshukla requested a review from lherlein July 25, 2025 00:05
evan-morgan
evan-morgan previously approved these changes Aug 4, 2025
@evan-morgan evan-morgan changed the title feat: PE-851: Add Example for Self-Updating Application in dev-cookbook feat(PE-851): Add Example for Self-Updating Application in dev-cookbook Aug 4, 2025
Copy link

@evan-morgan evan-morgan left a comment

Choose a reason for hiding this comment

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

Great job, LGTM

@blshukla blshukla merged commit 80570ff into main Aug 5, 2025
2 checks passed
@blshukla blshukla deleted the PE-851-app-updater branch August 5, 2025 15:26
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.

4 participants