Changelog

July 13, 2026 ยท View on GitHub

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

2.67.3 - 2026-07-13

Added

  • Indicator for the active device in the Devices panel (#856)

Changed

  • Add device commands to Devices panel right-click context menu and nested device info (#853)
  • Persist active device by serial number and re-resolve its IP across reloads (#854)

Fixed

  • upgrade to @rokucommunity/logger@0.4.1. Notable changes since 0.4.0:
    • Serialize Error.cause (recursively) when logging (#33)
  • Nested namespace display and nesting in outline (#848)

2.67.2 - 2026-07-07

Changed

  • upgrade to roku-debug@0.23.16. Notable changes since 0.23.15:
    • Improve ECP access mode error messages with step-by-step navigation (#386)

Fixed

  • Crash related to move dayjs missing as prod dependency (#850)

2.67.1 - 2026-07-06

Changed

  • Reuse probed device-info for launch and host selection (#839)
  • Make .env file optional and support loading system env vars (#842)
  • upgrade to brighterscript-formatter@1.8.1. Notable changes since 1.8.0:
    • Fix de-indent of multi-line call continuation lines ending with a closing paren (#147)
  • upgrade to roku-debug@0.23.15. Notable changes since 0.23.14:
    • Accept device-info in the launch config to skip the device-info request (#381)
    • Prevent orphaned debug adapter after client disconnect (#383)
  • upgrade to roku-deploy@3.17.7. Notable changes since 3.17.6:
    • Fix: potential crash in normalizeDeviceInfoFieldValue when supplied non-string values (#301)

2.67.0 - 2026-06-29

Added

  • enablePostfix option to component library launch schema (#832)
  • restart device and software update commands (#829)

Changed

  • Reduced unnecessary production dependencies
  • Advertise processStagingDir capability and handle the reverse request (#826)

Fixed

  • Show an empty-state for empty Perfetto trace files (#831)
  • upgrade to @rokucommunity/logger@0.4.0.
  • upgrade to brighterscript@0.73.0. Notable changes since 0.72.5:
    • Validate eval/rsg_version against firmware lifecycle (#1698)
    • Reduced unessisary unnecessary production dependencies (#1735) (#1736) (#1737)
  • upgrade to brighterscript-formatter@1.8.0. Notable changes since 1.7.27:
    • Add forLoopTerminator option and fix bogus next handling (#130)
    • Fix multi-line indentation regression from 1.7.28 (#143) (#145)
    • Multi-line Function parameters (#140)
  • upgrade to roku-debug@0.23.14. Notable changes since 0.23.12:
    • Improve debug console completions (#376)
    • Per-component-library option to disable file postfixing (#378)
    • Report empty Perfetto trace files on stop (#377)
    • Fix telnet rendezvous status detection for fallback activation (#371)
    • Reduced ~30s delay when stopping a Perfetto recording and it being opened (#373)
    • Add processStagingDir reverse request support (#366)
  • upgrade to roku-test-automation@2.2.2. Notable changes since 2.2.1:

Fixed

  • Fix boolean field toggles in SceneGraph Inspector node detail page (#835)

2.66.4 - 2026-06-10

Changed

  • upgrade to @rokucommunity/logger@0.3.13. Notable changes since 0.3.12:
    • Security enhancments
  • upgrade to brighterscript@0.72.5. Notable changes since 0.72.3:
    • Security enhancments
  • upgrade to brighterscript-formatter@1.7.27. Notable changes since 1.7.26:
    • Security enhancments
  • upgrade to roku-debug@0.23.12. Notable changes since 0.23.10:
    • Enhanced thread names (#303)
    • Log Perfetto availability and notify user when device firmware is below the minimum requirement (#354)
    • Validate breakpoint valid file types (#317)
  • upgrade to roku-deploy@3.17.6. Notable changes since 3.17.4:
    • Fix case-insensitive matching for absolute files.src glob patterns on case-insensitive file systems (#279)
    • Preserve ! glob-negation prefix in standardizePath (#277)
    • Security enhancments

Fixed

  • Skip link-local addresses in network change detection logic (#821)
  • Fix string interpolation in error message when unable to run a task (#822)

2.66.3 - 2026-05-28

Fixed

  • profilling buttons not displaying
  • upgrade to roku-debug@0.23.10. Notable changes since 0.23.9:
    • perfetto and heap snapshots avalability events not firing (#362)

2.66.2 - 2026-05-27

Changed

  • Security enhancements (#813)
  • upgrade to brighterscript@0.72.3. Notable changes since 0.72.2:
    • Added parameter name inlay hints (#1703)
  • upgrade to roku-debug@0.23.9. Notable changes since 0.23.8:
    • stale suspend/runtime-error events when debugger is no longer paused (#356)
    • pressHomeButton crash in disconnectRequest (#358)
    • crash related to missing client when syncing breakpoints with device (#357)

2.66.1 - 2026-05-26

Fixed

  • Webview panels such as the SceneGraph Inspector not rendering (#808)

2.66.0 - 2026-05-22

Added

  • Add filter dropdown to the Devices view (#790)
  • Support bsconfig*.json suffixes for JSON schema validation (#792)

Changed

  • Rewrite Registry View (#784)
  • Display device state icons in device tree (#799)
  • Get device-info when cached device IP doesn't match requested device (#783)
  • Force-terminate dev channel on restartDevApplication (#788)
  • Update device display name logic (#796)
  • chore: Add security-audit-required gated job to security audit workflow (#800)
  • Security enhancements (#794, #804)
  • upgrade to @rokucommunity/logger@0.3.12. Notable changes since 0.3.11:
    • Security enhancements (#17)
  • upgrade to brighterscript@0.72.2. Notable changes since 0.72.1:
    • Security enhancements (#1714)
  • upgrade to brighterscript-formatter@1.7.26. Notable changes since 1.7.25:
    • Security enhancements (#133)
  • upgrade to roku-debug@0.23.8. Notable changes since 0.23.7:
    • Security enhancements (#350)
    • Fix TelnetAdapter crash when methods are called after destroy (#349)
    • Fix deferred capability handling for exception breakpoints (#342)
    • Fixes bug on windows with rdb file copying (#343)
    • Inject breakpoint STOPs after InitializedEvent (#340)
    • Fix sourcemap race in preprocessStagingFiles (#339)
    • Defer DAP capabilities and InitializedEvent until after adapter connects (#328)
  • upgrade to roku-deploy@3.17.4. Notable changes since 3.17.2:
    • npm audit fixes (#263)
    • Add autoLaunch option to control dev_autolaunch on sideload (#261)

Fixed

  • Resolve SSDP devices that have no cache entry when focused (#797)
  • Device Picker shows device icons instead of pending (#791)

2.65.0 - 2026-05-12

Added

  • Add ManifestProjectProvider for Roku channel detection (#780)
  • Add restartDevApplication command (#782)

Changed

  • Configured device bug fixes (#747)
  • Suppress device-online notifications for routine Roku heartbeats (#778)
  • Document bs:disable / bs:enable block directives and suppression quick fixes (#779)
  • upgrade to brighterscript@0.72.1. Notable changes since 0.72.0:
    • Recover from mismatched loop terminators with quick fixes (#1696)
    • Add diagnosticReporter config option (#1701)
    • Diagnose reserved BrightScript builtins used as values (#1697)
    • Add bs:disable / bs:enable block directives and diagnostic suppression quick fixes (#1699)
    • feat: add validate bsconfig flag to skip validation phase (#1687)
    • feat: allow line continuation in .brs files when minFirmwareVersion >= 15.3 (#1693)
    • Reload projects when manifest file changes (#1700)
    • Set up Copilot coding agent instructions (#1695)
  • upgrade to brighterscript-formatter@1.7.25. Notable changes since 1.7.24:
  • upgrade to roku-debug@0.23.7. Notable changes since 0.23.6:
    • Bump ip-address from 10.1.0 to 10.2.0 (#336)
  • upgrade to roku-deploy@3.17.2. Notable changes since 3.17.1:
    • Expanded the default files array to include the locale folder (#237)

2.64.0 - 2026-04-30

Added

  • Auto-discover Roku projects and generate debug configs (#761)
  • Support setting a default device password (#764)

Changed

  • Auto-update imports in brs|bs|xml when files are renamed (#776)
  • Device credentials refactor: SN-keyed passwords and smart resolution (#772)
  • Only keep most recent IP address per serial per network (#770)
  • defaultDevicePassword scoped only to global settings (#771)
  • Prefer active device for ${promptForHost}, fall back to picker (#765)
  • Skip health checks when opening device picker (#757)
  • upgrade to brighterscript@0.72.0. Notable changes since 0.71.1:
    • Add relativeSourceMaps option for portable sourcemaps (#1624)
    • Auto-update imports when files are renamed (#1688)
    • Support minFirmwareVersion in bsconfig.json (#1678)
    • added source fix all code action support (#1659)
    • Limit project activation concurrency (#1627)
    • Share per-file namespace data via lazy ScopeNamespaceLookup view (#1684)
    • Lazy-allocate NamespaceContainer's optional fields (#1683)
    • Share BscSymbol references in SymbolTable.mergeSymbolTable (#1682)
    • Chain prebuild sourcemaps through BrighterScript transpile (#1676)
    • added selection range provider support to lsp capabilities (#1657)
    • Report const cycle diagnostic per node to match class convention (#1681)
    • add: Support line continuation (#1667)
    • Fix cross-file const inlining and flag const cycles (#1680)
  • upgrade to brighterscript-formatter@1.7.24. Notable changes since 1.7.23:
  • upgrade to roku-debug@0.23.6. Notable changes since 0.23.5:
    • Fix breakpoint injection breaking sourcemap chain for .bs files (#333)
    • Increase app-ready timeout to 60 seconds for slow Roku launches (#334)
  • upgrade to roku-deploy@3.17.1. Notable changes since 3.16.5:
    • Fix crash when loading roku-deploy on node < 18 (#256)
    • feat: add RokuDeploy.validateDeveloperPassword (#252)

Fixed

  • Fix getIpForSerial fallback to select most recently updated IP across networks (#769)
  • Fix network change detection on wake from sleep (#760)

2.63.7 - 2026-04-14

Changed

  • upgrade to brighterscript@0.71.1. Notable changes since 0.71.0:
  • upgrade to brighterscript-formatter@1.7.23. Notable changes since 1.7.22:
  • upgrade to roku-debug@0.23.5. Notable changes since 0.23.3:
    • Fix sourcemap comments (#327)
    • Avoid monkey-patching roku-deploy's getFiles function (#329)
    • Fix sourcemap staging bugs when maps are from different depth than staging dir (#308)
    • Handle THREAD_DETACHED gracefully and show [unavailable] for inaccessible threads (#324)
    • Resolve relative source maps and honor sourceRoot (#307)
  • upgrade to roku-deploy@3.16.5. Notable changes since 3.16.3:
    • Resolve files array staging option (#249)
    • Fix zipFolder bug that wasn't properly handling absolute stagingDir path (#245)

2.63.6 - 2026-04-10

Changed

2.63.5 - 2026-04-10

Fixed

  • upgrade to roku-debug@0.23.4. Notable changes since 0.23.3:
    • Fix sourcemap staging bugs when maps are from different depth than staging dir (#308)
    • Handle THREAD_DETACHED gracefully and show [unavailable] for inaccessible threads (#324)
    • Resolve relative source maps and honor sourceRoot (#307)
  • upgrade to roku-deploy@3.16.4. Notable changes since 3.16.3:
    • Fix zipFolder bug that wasn't properly handling absolute stagingDir path (#245)

2.63.4 - 2026-04-02

Changed

  • Support hand curated device lists (#709)

2.63.3 - 2026-04-01

Fixed

  • upgrade to roku-debug@0.23.3. Notable changes since 0.23.2:
    • Respect client line and col numbers for stack frames and compile errors (#309)
    • Crash when socket errors after a successful connection is established (#321)

2.63.2 - 2026-04-01

Added

  • Button to toggle device discovery in device panel and device quick picker (#723)
  • BrightScript syntax highlighting for CDATA blocks in Roku XML files (#729)

Changed

  • Populate additionalInfo fields in DAP crash issue reporter (#735)
  • upgrade to roku-debug@0.23.2. Notable changes since 0.23.1:
    • AdditionalInfo to ProcessCrashEvent (#319)
    • Thread detached visulization (#306)

Fixed

  • Errors in extension host output (#727)
  • Make the host picker less squishy (#731)
  • Crash in debugger in _syncBreakpoints when client is undefined (#316)

2.63.1 - 2026-03-27

Changed

  • Upgrade to brighterscript@0.71.0. Notable changes since 0.70.4:
    • More quick fixes (#1662)
    • Small perf improvements (#1663)
    • Add computed property names (compile-time support only) (#1658)

Fixed

  • Missing brightscript.format.insertSpaceAfterConditionalCompileSymbol setting (#720)
  • Upgrade to roku-debug@0.23.1. Notable changes since 0.23.0:
    • Fix crash when breakpoint deletion fails while device is running (#313)

2.63.0 - 2026-03-27

Added

  • Debugger crash event handle and suggest filing a bug report (#725)

Changed

  • upgrade to roku-debug@0.23.0. Notable changes since 0.22.7:
    • DAP level communication logging and process crash event handling (#310)

Fixed

  • Sort order bug in Brightscript tasks causing incorrect folder selection (#722)
  • When clearing device cache, ensure a scan next time requested (#721)

2.62.0 - 2026-03-24

Added

  • added go to parent component command (#718)
  • Added missing @type/request dev dependency (#713)

Changed

  • Customize screenshot directory path (#677)
  • Always show alive broadcasts (#710)
  • chore: migrate to serial-number instead of deviceId (#714)
  • Show loader when launching a perfetto trace file (#716)
  • Debounce multiple alive broadcasts (#711)
  • upgrade to brighterscript@0.70.4. Notable changes since 0.70.3:
    • perf(ProjectManager): cache PathCollection per project in flushDocumentChanges (#1628)
    • feat(LanguageServer): debounce onDidChangeWatchedFiles events (#1626)
    • Typedef namespace param fix (#1641)
    • Backport V1 Typed function type syntax to v0 (#1623)
    • Backport for each type syntax from V1 -> V0 (#1617)
    • Back ports intersection type and grouped type expressions (#1608)
    • Backports TypeStatement syntax from v1 to v0 (#1600)
    • Backported v1 inline interface syntax (#1592)
    • Add definition provider for import statement (#1595)
    • Fix confusing diagnostic when dottedGet follows function call in ExpressionStatement (#1598)
  • upgrade to brighterscript-formatter@1.7.22. Notable changes since 1.7.21:
  • upgrade to roku-debug@0.22.7. Notable changes since 0.22.6:
    • Fix default profiling enablement flow (#302)
    • Support for ProgressStart ProgressUpdate and ProgressEnd DAP events (#300)
    • Support bs_libs_provided when computing complib out file name (#298)
  • upgrade to roku-deploy@3.16.3. Notable changes since 3.16.2:

Fixed

  • spawn brightscript tasks as a login shell to match VS Code's PATH behavior (#717)
  • Remove the profiling default values so the debugger knows how to handle when missing (#715)

2.61.2 - 2026-03-12

Added

  • Add custom brightscript.format.bsfmtPath file path setting (#701)

Fixed

  • Fix bug showing too many "new device" notifications (#703)
  • Fixed an issues with newlines not rendering correct with brightscript tasks (#702)
  • (chore): Fixed bad mocking techniques in the BrightScriptTaskProvider tests (#700)

2.61.1 - 2026-03-10

Added

  • Task/support for brightscript tasks with custom command variable resolving (#693)

Fixed

  • Update how we handle the deviceDiscovery.enabled setting (#695)

2.61.0 - 2026-03-09

Added

  • Add support for device-specific passwords and its variable substitution (#688)
  • Support for Perfetto tracing on supported devices (Roku OS 15.2 and above) (#680)

Changed

  • Totally overhauled DeviceDevice Discovery to minimize network noise (#683)
  • upgrade to brighterscript-formatter@1.7.21. Notable changes since 1.7.19:
    • Fix type statement with typed function indenting (#116)
  • upgrade to roku-debug@0.22.6. Notable changes since 0.22.5:
    • Perfetto tracing (#286)
    • combined the ifDateTime dateLocalized and timeLocalized vurtual variable into one time variable (#295)
    • Better messages when 'limited' or 'disabled' are detected for ecp-setting-mode (#283)
  • upgrade to roku-deploy@3.16.2. Notable changes since 3.15.0:
    • Add ecpSettingMode to device-info interface (#225)
    • Add support for detecting ecpNetworkAccessMode (#223)

2.60.1 - 2025-12-01

Added

  • Add packageTask, packagePath, packageUploadOverrides complib launch schema info (#675)

Changed

  • upgrade to roku-debug@0.22.5. Notable changes since 0.22.4:
    • Support packageTask, packagePath, packageUploadOverrides for complibs (#282)

2.60.0 - 2025-11-19

Added

  • Support for installing component libraries onto device during launch (#672)
  • upgrade to roku-debug@0.22.4. Notable changes since 0.22.3:
    • Add ability to install component libraries on device (#279)
  • upgrade to roku-deploy@3.15.0. Notable changes since 3.14.4:
    • Support installing and deleting component libraries (#220)

2.59.2 - 2025-10-31

Changed

  • upgrade to brighterscript@0.70.3. Notable changes since 0.70.2:
    • Fix crash when bsc plugin in worker loads another version of bsc (#1579)
    • Fix recursive const and enum resolution during transpilation (#1578)
  • upgrade to roku-debug@0.22.3. Notable changes since 0.22.2:
    • Change ecp logging to trace to make lower level logs more useful (#276)
  • upgrade to roku-deploy@3.14.4. Notable changes since 3.13.0:

Fixed

  • Fix bug where param named interface breaks syntax highlighting (#670)

2.59.1 - 2025-10-10

Changed

Fixed

  • Fix incorrect command categories (#665)

Removed

  • (chore) Remove unnecessary activation events (#666)

2.59.0 - 2025-09-12

Changed

  • Update SceneGraph Inspector to use new AppUI method for building tree and other improvements (#661)
  • Support actions on the popup message event (#659)
  • upgrade to brighterscript@0.70.1. Notable changes since 0.69.13:
    • Flag param names that are reserved words (#1556)
    • Fix for adding files on beforeProgramValidate (#1568)
    • Fix typdef generation of default param func (#1551)
    • Support transpiling class methods as named functions (#1548)
  • upgrade to brighterscript-formatter@1.7.18. Notable changes since 1.7.17:
  • upgrade to roku-debug@0.22.1. Notable changes since 0.21.38:
    • Better handling when the telnet debugger freezes (#268)
    • Add more logs to track how long each step takes while sideloading (#270)
  • upgrade to roku-deploy@3.13.0. Notable changes since 3.12.6:
    • Add standards-compliant User-Agent header (#203)

2.58.0 - 2025-08-04

Added

  • Add new launch variable substitution called activeHost (#657)

Changed

  • Migrate enableLanguageServer to languageServer.enabled with backward compatibility (#660)
  • upgrade to brighterscript@0.69.13. Notable changes since 0.69.12:
    • Add projectDiscoveryExclude setting and files.watcherExclude support (#1535)
    • Fix signature help crash on malformed function declarations (#1536)
    • Add max depth configuration for Roku project discovery (#1533)
  • upgrade to brighterscript-formatter@1.7.17. Notable changes since 1.7.16:
  • upgrade to roku-debug@0.21.38. Notable changes since 0.21.37:

2.57.1 - 2025-07-07

Changed

2.57.0 - 2025-07-03

Changed

2.56.1 - 2025-06-03

Changed

2.56.0 - 2025-05-30

Added

  • Added support for Exporting and Importing automation scripts. (#644)

Changed

  • upgrade to @rokucommunity/logger@0.3.11. Notable changes since 0.3.10:
  • upgrade to brighterscript@0.69.9. Notable changes since 0.69.6:
    • removed no-throw-literal lint rule (#1489)
    • Prevent runtime crash for non-referencable funcs in ternary and null coalescing (#1474)
    • Fix removeParameterTypes compile errors for return types (#1414)
    • Flag incorrect return statements in functions and subs (#1463)
  • upgrade to brighterscript-formatter@1.7.14. Notable changes since 1.7.12:
  • upgrade to roku-debug@0.21.35. Notable changes since 0.21.31:
    • Removed isClockValid virtual variable (#262)
    • Fix telnet-still-in-use issues (#259)
    • Force allowHalfOpen to false on all sockets (#251)
    • Added better telnet socket in use detection (#250)
  • upgrade to roku-deploy@3.12.5. Notable changes since 3.12.4:

Fixed

  • Update JSON parsing in formatValues to not handle strings that look like numbers and booleans to avoid registry updates failing when sent to the device (#645)
  • Fix the release-type for the publish workflow (#640)

2.55.11 - 2025-04-10

Changed

2.55.10 - 2025-04-03

Changed

Fixed

  • incorrect default for enhanceREPLCompletions (#637)
  • syntax highlighting for comment in enum statement (#635)
  • bsdoc return and type syntax highlighting (#634)
  • syntax highlighting on AA function names (#627)

2.55.9 - 2025-03-20

Changed

2.55.8 - 2025-03-17

Changed

  • Inverted keys PageUp and PageDown mapping on remote control mode (#631)
  • upgrade to roku-debug@0.21.27. Notable changes since 0.21.26:
    • Fixed TelnetAdapter reporting that it was a protocol adapter (roku-debug#237)

2.55.7 - 2025-03-13

Changed

2.55.6 - 2025-03-10

Added

  • Added snippet for functional fields (#625)

Changed

  • Reenable the enhanceREPLCompletions launch option by default (#630)
  • syntax highlighting updates to include all known brightscript & brightsign components (#626)
  • upgrade to roku-debug@0.21.25. Notable changes since 0.21.24:
    • Fix crash in bsc project when thread has error (roku-debug#235)
    • Fixed and issue where hasFocus and isInFocusChain virtual vars where missing on nodes (roku-debug#234)
  • upgrade to brighterscript@0.69.1. Notable changes since 0.69.0:

Fixed

  • Fix brightscript object syntax highlighting (#623)

2.55.5 - 2025-02-21

Changed

v2.55.4 - 2025-02-19

Changed

  • Added new settings for deferred scope loading and updated telemetry with some missing settings (#620)
  • upgrade to roku-debug@0.21.23. Notable changes since 0.21.22:
    • Cleaned up the scopes flows and added the ability to defer the loading of the local scope (roku-debug#227)
    • Removed the random uuid virtual variable from device info (roku-debug#228)

2.55.3 - 2025-02-17

Changed

  • Add thumbnail to Roku AppOverlays grid #549 (#614)
  • upgrade to roku-debug@0.21.22. Notable changes since 0.21.21:
    • Bump serialize-javascript and mocha (roku-debug#224)
    • Centralize ECP request processing (roku-debug#225)
    • Fixed an issue where the entry breakpoint could be hit by the end user if they manually restarted the app (roku-debug#226)

2.55.2 - 2025-02-13

Changed

  • upgrade to roku-debug@0.21.21. Notable changes since 0.21.20:
    • Fixed a bug that would cause the stopOnEntry setting from always being respected when using restart debug session (roku-debug#223)
    • missing new lines in start up logs (roku-debug#222)

Fixed

  • Fix enableDebugProtocol and enhanceREPLCompletions autocomplete defaults (#617)

2.55.1 - 2025-02-11

Changed

  • Fix launch config values that were inconsistantly set (and disable enhanceREPLCompletions until we can fix the crash) (#616)

2.55.0 - 2025-02-10

Added

  • New lanuch config setting to enable/disable pkg path conversions in logs (#610)

Changed

2.54.0 - 2025-02-06

Added

  • variable and REPL launch config options (#613)

Changed

2.53.1 - 2025-01-31

Changed

2.53.0 - 2025-01-31

Changed

  • upgrade to roku-debug@0.21.17. Notable changes since 0.21.16:
    • Add support for custom variables (#209)
    • Convert pkg path to file system path in logs (#208)
    • Fixed file path and unusable link issues on windows (#213)
    • Fixed a bug where some logs could get lost by the debugger (#212)
    • Fixed issue looking up primitive variables on hover (#210)
  • upgrade to brighterscript-formatter@1.7.9. Notable changes since 1.7.8:
    • Fix indentation bug when brighterscript keywords are used as identifiers (#96)

2.52.1 - 2025-01-22

Changed

2.52.0 - 2025-01-13

Changed

Fixed

  • Retain original newlines in BrightScript Log output panel, and also strip ansii colors (#609)

2.51.0 - 2024-12-20

Added

  • new remote commands (#605)
  • AppManager AppMemoryMonitor AppMemoryMonitorEvent coloring (#602)

Changed

Fixed

  • issues with busy spinner showing too many error messages (#607)
  • syntax highlighting but for object functions (#604)
  • numeric literal colorization (#603)

2.50.5 - 2024-11-06

Changed

  • Show multi-line lsp progress details (#600)

Fixed

  • Fix bug with m.top colorization (#601)

2.50.4 - 2024-10-18

Added

  • ability to set a device as the current active device via the Deive tree view. (#597)

Changed

2.50.3 - 2024-09-27

Fixed

  • Consistent device list sorting and formatting. (#596)

2.50.2 - 2024-09-27

Fixed

  • crash when language server was missing (#594)

2.50.1 - 2024-09-27

Changed

2.50.0 - 2024-09-23

Added

  • ability to install a missing bsc version (#583)

2.49.1 - 2024-09-19

Fixed

  • Roku Device View works again by upgrading to RTA with patch to use postman-request for screenshot triggering (#589)

2.49.0 - 2024-09-06

Added

  • Add syntax highlighting support for bsdoc tags (#586)
  • Add sort imports setting (#582)

Changed

2.48.6 - 2024-07-24

Added

  • support for viewing nodes that are in the node tree from NodeCountByTypePage (#579)
  • support for removing nodes in SceneGraph Inspector (#578)

Changed

2.48.5 - 2024-06-04

Fixed

  • bug with the language server crash tracker (#576)

2.48.4 - 2024-06-04

Added

  • Prompt to restart lsp if it has stopped (#575)

Changed

2.48.3 - 2024-05-20

Changed

  • Improve manual ip address component UI design (#570)

Fixed

  • Fix broken device view (#570)

2.48.2 - 2024-05-17

Added

  • syntax highlighting support for alias statements (#567)
  • Add on device brightscript repl (#564)

Changed

Fixed

  • bugs in the language server version picker (#568)
  • bug that prevented accessing global in scenegraph inspector, prevent duplicate requests for same node (#565)

2.48.1 - 2024-04-23

Added

  • support for focusing a node in SceneGraph Inspector (#563)

2.48.0 - 2024-04-11

Added

  • support for opening SceneGraph Inspector in panel (#561)

2.47.0 - 2024-04-01

Added

  • support for split panel scenegraph inspector (#555)
  • commands to rekey device and create packages (#509)
  • delete button in FS view (#552)

Changed

2.46.1 - 2024-03-07

Changed

Fixed

  • conditional compile syntax highlighting (#551)
  • crash when trying to copy numeric values to the clipboard (#550)

2.46.0 - 2024-03-01

Added

  • Add some enhanced launch settings to support more diverse projects (#538)
  • Device disconnect support and other improvements in RDB (#548)
  • Add Roku File System Panel and Roku App Overlays Panel (#545)

Changed

2.45.17 - 2024-02-09

Changed

2.45.16 - 2024-01-31

Changed

2.45.15 - 2024-01-30

Changed

2.45.14 - 2024-01-30

Changed

2.45.13 - 2024-01-28

Fixed

  • Sets stagingDir properly in DebugConfigurationProvider (#543)

2.45.12 - 2024-01-26

Changed

2.45.11 - 2024-01-17

Changed

2.45.10 - 2024-01-10

Changed

Fixed

  • improve messaging when debug session encounters errors (#537)
  • improve screenshot capabilities to make it easier to share screenshots from device. (#536)

2.45.9 - 2023-12-07

Changed

  • Add a few missing brightscript.debug settings (#535)
  • Support a configurable port for SceneGraphDebugCommandController (#534)

2.45.8 - 2023-12-07

Changed

Fixed

  • spelling mistake in lsp message (#531)

2.45.7 - 2023-11-27

Changed

  • Hide the debug protocol popup, use telnet by default (#530)

2.45.6 - 2023-11-20

Fixed

  • backtick support in surrounding & autoClosing pairs (#528)

2.45.5 - 2023-11-16

Changed

  • Add app dropdown menu for ECP registry link (#514)
  • chore: move common user input into a dedicated manager (#523)

2.45.4 - 2023-11-16

Changed

2.45.3 - 2023-11-15

Changed

2.45.2 - 2023-11-08

Changed

2.45.1 - 2023-11-06

Fixed

  • extension crash introduced in 2.45.0 (#520)

2.45.0 - 2023-11-06

Changed

2.44.1 - 2023-10-31

Changed

  • Enhance host picker during launch (#512)
  • Add link for ECP registry (#511)
  • Add brs to releases script (5c6622b)
  • upgrade to roku-debug@0.20.8. Notable changes since 0.20.7:

2.44.0 - 2023-10-16

Added

  • ability to capture device screenshots (#505)

Changed

2.43.1 - 2023-10-08

Added

  • ability to enable/disable remote control on launch/session-end (#503)

Changed

Fixed

  • automation view crash when no config found (#504)
  • error when generating the docs (12dfb27)

2.43.0 - 2023-09-12

Added

  • Roku Test Automation Panel (#499)

Changed

2.42.0 - 2023-07-26

Added

  • deleteDevChannelBeforeInstall launch option (#494)

Changed

  • upgrade to roku-debug@0.20.3. Notable changes since 0.20.2:
    • Add deleteDevChannelBeforeInstall option to delete dev channel before install (roku-debug#158)

2.41.2 - 2023-07-25

Added

  • a spinner in the statusbar when the language server is busy (#492)

Changed

2.41.1 - 2023-07-07

Changed

2.41.0 - 2023-07-05

Added

  • ECP Rendezvous tracking (rendezvousTracking launch.json option) (#490)
  • fileLogging launch.json option (#487)

Changed

Fixed

2.40.4 - 2023-05-18

Changed

2.40.3 - 2023-05-17

Changed

Fixed

  • Use postman-request instead of request (#485)

2.40.2 - 2023-05-17

Changed

Fixed

  • Remove < and > from bracket matching (#483)
  • incorrect rendezvous count for file history (#482)
  • fix infinite recursion possibility in Scenegraph Inspector and fix Roku Commands list of available requests (#480)

2.40.1 - 2023-04-28

Changed

Fixed

  • bugs when using the Device View from within WSL (#478)

2.40.0 - 2023-04-18

Added

  • validation for raleTrackerTaskFileLocation setting existence. (#472)

Changed

Fixed

  • Fix crash during launch due to missing rale option (#476)
  • Wrap the dnsLookup for host in a try/catch (#473)

2.39.0 - 2023-03-22

Added

  • device view with direct node selection (#465)

Changed

2.38.8 - 2023-01-31

Changed

2.38.7 - 2023-01-24

Changed

  • upgrade to roku-debug@0.18.1. Notable changes since 0.18.0:
    • hide prefixed variables in the debug variable panel (roku-debug#127)
    • fix isAssignableExpression to correctly support dotted and indexed set statements (roku-debug#128)

Fixed

  • continue keyword colorization (#459)

2.38.6 - 2023-01-17

Changed

  • replaced vsmarketplace badge url to pass marketplace certification

2.38.5 - 2023-01-17

Changed

  • nothing changed. the VSCode extension marketplace isn't showing v2.38.4 for some reason, so bump the patch version to force an update

2.38.4 - 2023-01-12

Changed

Fixed

  • rdb keypaths and focus scrolling (#455)

2.38.3 - 2022-12-15

Changed

Fixed

  • Make vsix smaller by excluding unneeded files (#454)
  • Upgrade webview build system (#450)
  • upgrade roku-test-automation module and update code accordingly (#440)

2.38.2 - 2022-12-08

Changed

2.38.1 - 2022-11-04

Changed

Fixed

2.38.0 - 2022-11-02

Changed

2.37.0 - 2022-10-28

Added

  • add brightscript.deviceDiscovery.concealDeviceInfo option to obscure the device-info (#443)

Changed

Fixed

  • allow clearing rendezvous events when a debug session is not running. (#444)
  • move "clear rendezvous history" button out of a menu and into the title bar of that section (#444)

2.36.1 - 2022-10-18

Changed

2.36.0 - 2022-10-18

Added

  • all launch configuration settings are avaiable in settings under the brightscript.debug key (#438)

Changed

Fixed

  • ignore default user settings not set by user (#439)

2.35.2 - 2022-09-08

Changed

2.35.1 - 2022-09-02

Changed

2.35.0 - 2022-08-24

Changed

Fixed

  • improve multi-network-interface device discovery (#427)
  • component var coloring (#426)

2.34.2 - 2022-08-15

Fixed

  • converted file svg icons to paths instead of text

2.34.1 - 2022-08-15

Changed

2.34.0 - 2022-07-18

Added

  • support showing popups from debug sessions (#407)
  • syntax highlighting for regex literals (#408)
  • syntax highlighting support for the new const keyword (#412)

Changed

Fixed

  • property and call syntax highlighting (#414)
  • import statement syntax highlighting. (#413)
  • Rdb improvements (#410)

2.33.2 - 2022-06-13

Changed

2.33.1 - 2022-06-09

Changed

2.33.0 - 2022-06-08

Changed

Fixed

  • don't show error messages when 0 Roku devices are found in the active device manager (#406)
  • delay the language server 1.5 seconds when running in dev mode to help with language server debugging (#405)
  • add missing RDP parameter (#403)

2.32.1 - 2022-06-02

Fixed

  • allow user-specified RDB port (#401)
  • prevent RDB-related "port already in use" error after the first debug session (#401)

2.32.0 - 2022-05-31

Added

  • new SceneGraph Inspector panel to view/manage all on-device SceneGraph nodes right in vscode. (#386)
  • syntax coloring for experimental ComponentStatement brighterscript feature (#389)
  • subdivisions to VSCode Extension Settings (#390)
  • refresh button in the devices panel (#392)
  • support for enum and interface lookup (#398)

Changed

  • updated to brighterscript@0.51.4. Notable changes since v0.48.1:
    • allow interfaces and enums as function param types (#580)
    • Transpile files added by plugins after start of transpile cycle (#578)
    • Fix semantic tokens for enums in if statements (#584)
    • Fix language server cwd issue with multi-root workspaces (#592)
    • allowBrighterScriptInBrightScript config option to allow brighterscript features to be included in BrightScript files, and force those files to be transpiled (#573)
    • allow enums and interfaces as function return types (#601)
    • allow enums and interfaces as class field types (#602)
    • add hover for namespace functions (#606)
  • updated to roku-debug@0.12.2. Notable changes since 0.10.5:
    • fix RDB path bug on windows (#76)
    • add brightScriptConsolePort option. Utilize remotePort in more places (#79)
    • fix crash during rendezvous tracking (#82)
    • fix line number and thread hopping issues (#86)
  • updated to roku-deploy@3.7.0

Fixed

  • Excludes the out directory from readDeclarations function (#391)
  • roIntrinsicDouble syntax highlighting color (#395)

2.31.1 - 2022-04-18

Fixed

  • Unfocus remote control mode statusbar item on click (#384)
  • Add missing remote control mode keybinding Ctrl+Escape/Cmd+Escape for home press (#383)
  • enable remote control mode telemetry tracking

2.31.0 - 2022-04-14

Added

  • a BRS custom view in the Activity Bar (#375)
  • new Remote Control Mode to handle Roku remote emulation. (#375)
  • history tracking of the last 30 unique values sent by the extension.brightscript.sendRemoteText command (#375)
  • Many missing ECP commands (#375)
  • new extension.brightscript.showReleaseNotes command accessible via the command pallet

Changed

  • Remove the debug-panel focus-based remote emulation functionality in favor of Remote Control Mode (#375)
  • updated to brighterscript@0.48.1
    • language support for native BrightScript optional chaining (#546)
    • validation for all known createObject values and parameters. (#435, #568)
    • for plugin authors:
      • fixed accuracy issues when parsing the manifest (#565)
      • add missing statements and expressions to createVisitor (#567)
  • updated to roku-deploy@3.6.0
  • updated to brighterscript-formatter@1.6.12
  • updated to roku-debug@0.10.5
  • removed the CreateObject snippet because it's too aggressive

Fixed

  • bug with brightscript.deviceDiscovery.includeNonDeveloperDevices setting not working
  • bug with brightscript.deviceDiscovery.enabled not working properly (#236)
  • issue where the rendezvous ui commands would show up in the when they shouldn't
  • Rendezvous timing issue (#367)

2.30.1 - 2022-04-07

Changed

  • updated to roku-debug@0.10.2
    • fixed stability issues when restarting an existing debug session (#74)
    • fixed issue where the type and keys commands would time out. (#73)
    • possible fix for #72 (#73)
  • updated to brighterscript@0.47.2
    • fixed enum transpile bug for binary expressions (#559)
    • added missing require entry to bsconfig.schema.json (#560)
    • don't add trailing commas in transpiled output for array and aa literals (#556)
    • retain quote char when transpiling xml attributes (#552)
    • add require flag to allow loading external node modules as part of the build process (useful for things like ts-node/register). (#550, #551)
  • updated to brighterscript-formatter@1.6.11

Fixed

  • empty host and password fields for new launch configuration
  • standardized the default value for retainStagingFolder and stopOnEntry launch options

2.30.0 - 2022-03-30

Added

  • Add bsc problem matchers. ($bsc, $bsc-watch, $bsc-watch-silent) (#376)

2.29.4 - 2022-03-25

Changed

Fixed

  • sendRemoteText command no longer times out when sending large text. (#373)

2.29.3 - 2022-03-23

Fixed

  • reverted syntax highlighting introduced in v2.29.2.

2.29.2 - 2022-03-22

Fixed

  • better function, method, and type syntax highlighting. (#371)

2.29.1 - 2022-03-18

Changed

Fixed

2.29.0 - 2022-03-08

Changed

  • updated to brighterscript@0.45.4
  • updated to roku-debug@0.10.0
    • added support for roku debug protocol v3.0.0
    • support for eval/execute functionality over the debug protocol(v3.0.0+) from the debug console
    • Changed: running print statements in the debug console now runs an actual print statement. To do variable evaluation, simply type the name of the variable.

2.28.1 - 2022-02-24

Changed

2.28.0 - 2022-02-11

Changed

Fixed

  • fixed bug with indented enum syntax highlighting
  • bug with namespace, interface, and enum indentation rules

2.27.2 - 2022-02-08

Added

  • enum syntax highlighting (#359)

Changed

2.27.1 - 2022-02-01

Changed

Fixed

2.27.0 - 2022-01-31

Added

  • start tracking anonymized telemetry data to give visibility into real-world usage of the extension and its features. (#354)

2.26.1 - 2022-01-28

Changed

2.26.0 - 2022-01-28

Added

  • ability to filter out devices with developer mode off (#353)

Changed

2.25.3 - 2022-01-14

Changed

  • updated to brighterscript-formatter@1.6.5
  • Removed all interface snippets introduced in Adding Completion Items #105 that were partially removed a while ago. These should all be handled by the language server as we add better type tracking support. (#348)
  • Don't show brighterscript-specific snippets in BrightScript files (#348)

Fixed

  • formatting indentation bug with interface statements (brighterscript-formatter#45)
  • syntax highlighting for interface statements (#351)
  • Add brightscript and brighterscript snippets to BrighterScript files (they were missing for some reason) (#348)

2.25.2 - 2022-01-12

Fixed

  • updated to roku-debug@0.9.2
    • fixed bug with telnet debug session related to fire-and-forget commands like step, continue, etc. This was causing the debug session to stall frequently. (roku-debug#64)
    • combine telnet output that was split due to buffer sizes (roku-debug#64)

2.25.1 - 2022-01-05

Changed

2.25.0 - 2021-12-17

Changed

  • updated to roku-debug@0.9.0
    • Adds many new log messages at various debug levels. (roku-debug#61)
    • Ability to inspect node children through the [[children]] virtual property (#57)
    • [[length]] virtual property for all variables that support it. (#57)
  • add logLevel launch configuration variable (roku-debug#61)
  • rename SceneGraph Debug Commands Log output panel to SceneGraph Debug Commands (#342)
  • rename BrightScript Debug Server output panel to BrightScript Extension for wider usage. (#342)

Fixed

  • add brightscript.extensionLogfilePath setting to specify an output file for debug logs (#342)
  • several telnet debugging issues related to the 10.5 Roku OS release.(roku-debug#57)

2.24.2 - 2021-11-23

Changed

Fixed

  • critical crash in language server whenever a local variable had the same name as a javascript object function on the prototype (stuch as constructor). (brighterscript#469)

2.24.1 - 2021-11-11

Changed

2.24.0 - 2021-11-04

Added

  • limited support for running the extension in vscode for web. Currently only the syntax hightlighter works. (#333)

Fixed

  • updated to roku-debug@0.8.6
    • telnet debugger to work better with RokuOS 10.5 and run_as_process=1 projects, as well as some better detection of the Brightscript Debugger> prompt.
    • fix ECP commands that would fail when using a hostname instead of an ip address.
  • updated to roku-deploy@3.5.2

2.23.1 - 2021-10-27

Changed

Fixed

  • syntax highlighting issue related to if keyword that looked like a function call (#331)
  • throw keyword colorization (#330)

2.23.0 - 2021-09-17

Added

  • Initial RDB implementation (#317)

Fixed

  • deploy crashes when target Roku doesn't have an installed channel (roku-deploy#65)

Changed

2.22.3 - 2021-06-28

Fixed

  • (Debugger) freeze when debugger prompt split across multiple telnet messages (roku-debug#35)
  • (LanguageServer) allow up to 6 arguments in CreateObject function signature (brighterscript#430)
  • (LanguageServer) add v30/bslCore library functions to global callables (brighterscript#433)

2.22.2 - 2021-06-01

Fixed

  • extension crash due to a missing dependency in roku-deploy

Changed

2.22.1 - 2021-05-28

Changed

2.22.0 - 2021-05-19

Added

  • extension.brightscript.showkey command to show the current developer key (#313)

Fixed

  • broken extension.brightscript.genkey command due to wrong casing of the command (#313)

2.21.0 - 2021-05-18

Changed

2.20.2 - 2021-05-17

Added

2.20.1 - 2021-05-03

Added

  • (LanguageServer) warning for mismatched class method accessibility (BrighterScript#402)
  • (LanguageServer) allow class field overrides in child classes as long as they are the same type (BrighterScript#394)

Changed

Fixed

  • (Debugger) Fix incorrect sgnodes shell prompt matching string. (RokuDebug#31)
  • (Debugger) Increase port 8080 commands max buffer size (RokuDebug#31)
  • (Extension) Fixed an issue where some sg debug command logs could have missing results for large responses (#309)

2.20.0 - 2021-05-03

Added

  • Commands for all port 8080 requests (chanperf, rendezvous tracking, etc...) (#308)
  • (Debugger) launch config options autoRunSgDebugCommands for running port 8080 commands before starting a debug session
  • new showOutputPanelOnStartup setting.

Changed

  • updated to roku-debug@0.8.0
  • Deprecated focusOutputPanelOnStartup in favor of the new showOutputPanelOnStartup setting.

2.19.0 - 2021-04-27

Added

  • (Debugger) support for inspecting roXmlElement
  • (Debugger) support for capturing chanperf events (these are shown in the status bar)

Changed

Fixed

  • (LanguageServer) bug validating namespace function calls

2.18.1 - 2021-04-13

Changed

Fixed

  • (LanguageServer) crash when encountering BrighterScript circular imports
  • (LanguageServer) bug where having multiple components with the same name would cause issues in the program, normally requiring a language server restart.

2.18.0 - 2021-03-30

Added

  • (LanguageServer) version picker for running locally-installed versions of BrighterScript (#300)
  • (LanguageSever) setting brightscript.bsdk for specifying the version of BrighterScript to use for the language server (#300)

Changed

Fixed

  • colorization issues with certain SceneGraph support functions

2.17.9 - 2021-03-18

Added

Changed

2.17.8 - 2021-03-16

Added

Changed

Fixed

2.17.7 - 2021-03-13

Added

Changed

Fixed

  • syntax highlight issue for keywords in class method declarations

2.17.6 - 2021-03-10

Added

  • (LanguageServer) code actions for suggesting import statements in brighterscript files
  • (LanguageServer) support for loading bslib without alias

Changed

Fixed

2.17.5 - 2021-03-02

Changed

Fixed

  • (LanguageServer) syntax parsing bugs within single-line if statements

2.17.4 - 2021-02-28

Added

  • (LanguageServer) file path completions inside strings that start with pkg: or libpkg:

Changed

2.17.3 - 2021-02-27

Changed

Fixed

  • (LanguageServer) bslib bugs
  • (LanguageServer) parse crash when encountering immediately-invoked function expressions
  • (LanguageServer) error during language server completions when activated on the first token in the file

2.17.2 - 2021-02-25

Changed

Fixed

  • (LanguageServer) fix significant performance bug in diagnostic filtering
  • (LanguageServer) null reference error in Scope.getFileByRelativePath()
  • (LanguageServer) fix class fields that were missing in getSymbol requests

2.17.1 - 2021-02-18

Changed

Fixed

  • (LanguageServer) prevent exception in codeAction functionality when file cannot be found in a Program, which caused unwanted focus on the "BrighterScript Language Server" output panel.

2.17.0 - 2021-02-17

Added

  • (LanguageServer) codeAction to add missing extends attribute in components

Changed

Fixed

  • (Debugger) improve stack trace name mapping for BrighterScript class methods

2.16.2 - 2021-02-15

Changed

Fixed

2.16.1 - 2021-02-12

Added

  • (LanguageServer) additional debug logging

Changed

Fixed

  • (LanguageServer) don't mangle xml scripts during transpile preview

2.16.0 - 2021-02-11

Added

  • Command to restart language server called "BrightScript: Restart Language Server"

Changed

Fixed

  • (LanguageServer) bug prevent signature help for functions with zero leading whitespace

2.15.0 - 2021-02-04

Added

  • (LanguageServer) syntax support for dim statements
  • (LanguageServer) completion and code navigation for labels

Changed

Fixed

  • (LanguageServer) exception related to signature help when writing comments

2.14.2 - 2021-02-03

Changed

Fixed

  • (LanguageServer) fixed crash during validation caused by a missing function body when parsing malformed code

2.14.1 - 2021-01-31

Fixed

Changed

2.14.0 - 2021-01-26

Added

Changed

Fixed

  • (BrighterScript)infinite parser loop when encountering annotations without an identifier above a class method (#291)

2.13.0 - 2021-01-25

Added

Changed

2.12.3 - 2021-01-24

Changed

Fixed

  • (LanguageServer) bug where the variable declaration from for each statements was missing from intellisense.

2.12.2 - 2021-01-19

Changed

Fixed

  • (LanguageServer) bug with transpiling classes that would not always get the correct superclass index. (#279)
  • (Debugger) timing issue when shutting down debug session before the log processor has finish its job
  • (Debugger) off-by-one location of "compile errors" when device validates XML components
  • (Debugger) off-by-one code stepping with debug protocol
  • (Debugger) XML sourcemap resolution; follow mapped source even if we don't have a resolved mapping
  • (Debugger) errors being dropped when a "line" error is found
  • (Debugger) added extra XML error matching
  • (Debugger) filter out "generic XML error" on a file if a specific one was captured as well

2.12.1 - 2021-01-16

Added

  • (LanguageServer) annotation support for classes and class methods (BrighterScript#270)
  • syntax highlighting support for annotations

Changed

Fixed

  • (Languageserver) bugs with go-to-definition and signature help for namespace functions, classes, and callfunc calls

2.12.0 - 2021-01-15

Added

  • (LanguageServer) support for proper xml parsing and additional SceneGraph diagnostics (such as component interface validation)
  • (LanguageServer) support for string-based diagnostic codes from plugins

Changed

2.11.7 - 2021-01-12

Added

  • (LanguageServer) support for passing custom types as function parameters and return types (BrighterScript#262)

Changed

Fixed

  • (Debugger) occasional failure to launch during home press commands when device would send 202 instead of 200 http response
  • (LanguageServer) bug with transpiled child classes causing on-device stack overflows (BrighterScript#267)

2.11.6 - 2020-12-22

Changed

  • updated to brighterscript@0.23.1
  • (LanguageServer) Refactored statement separators processing and cleaned error messages
  • (LanguageServer) Improved try-catch parsing
  • (LanguageServer) Improved label error handling

Fixed

2.11.5 - 2020-12-10

Fixed

  • show better error messages in certain debug crash situations (#286)

2.11.4 - 2020-11-25

Fixed

  • broken syntax highlighting introduced in v2.11.3

2.11.3 - 2020-11-25

Added

  • (Formatter) indentation and keyword support for try,catch,throw,end try.
  • (Editor) syntax highlighting for try,catch,throw,end try.

Changed

2.11.2 - 2020-11-23

Added

Changed

2.11.1 - 2020-11-17

Changed

Fixed

  • (LanguageServer) - load BrighterScript plugins relative to the project (BrighterScript#243)

2.11.0 - 2020-11-14

Changed

  • use LanguageServer for most completion/provider functionality. (you can disable this by setting "brightscript.enableLanguageServer": false in user/workspace settings). (279)
  • updated to brighterscript@0.20.0

2.10.3 - 2020-11-11

Fixed

  • bug with hardcoded extension ID that did not properly work with new vscode publisher id.

2.10.2 - 2020-11-11

Changed

  • Publish to OpenVSX registry
  • Rename VSCode marketplace publisher to "RokuCommunity"
  • update badges

2.10.1 - 2020-10-30

Changed

Fixed

  • (LanguageServer) exclude bs1100 for typedef files (Missing "super()" call in class constructor method.)
  • (LanguageServer) fix some invalid class field types in typedef files
  • (LanguageServer) include override keyword in class methods in typedef files

2.10.0 - 2020-10-30

Added

  • (LanguageServer) support for BrighterScript type definitions

Changed

2.9.0 - 2020-10-28

Added

  • (LanguageServer) support for BrighterScript annotations

Changed

2.8.15 - 2020-10-23

Changed

Fixed

  • (Debugger) bug when converting $anon_### function names into original function names that was using the wrong line number to look up the name. (roku-debug#21)

2.8.14 - 2020-10-20

Changed

  • updated to brighterscript@0.16.11
  • (LanguageServer) removed bs1106 (.bs file script tags must use the type="brighterscript") diagnostic because it's unnecessary.

Fixed

  • (LanguageServer) bug when using single quotes in an xml script tag

2.8.13 - 2020-10-20

Changed

Fixed

  • (LanguageServer) crash when a callable has the same name as a javascript reserved name (BrighterScript#226)
  • (LanguageServer) crash when import statement is malformed (BrighterScript#224)

2.8.12 - 2020-10-18

Changed

Fixed

  • (LanguageServer) reduce throttle for validation and parsing now that those have improved performance.
  • (LanguageServer) massively improve validation performance by refactoring getFileByPkgPath
  • (LanguageServer) micro-optimization of hot parser functions
  • (LanguageServer) change codebase to use import type many places, which reduces the number of files imported at runtime

2.8.11 - 2020-10-15

Changed

Fixed

  • (LanguageServer) bug when printing diagnostics that would crash if the contents were missing (like for in-memory-only files injected by plugins) (BrighterScript#217)
  • (LanguageServer) performance improvements by moving property name collection into the parser, which elimitates a costly AST walk

2.8.10 - 2020-10-13

Changed

Fixed

  • (LanguageServer) bug when finding bsconfig.json that would use the wrong cwd in multi-workspace language server situations. This fix may resolve significant multi-workspace performance problems you might have been seeing.
  • (LanguageServer) performance issue during the parser phase. We now defer certain collections until needed (BrighterScript#210)

2.8.9 - 2020-10-12

Changed

  • (LanguageServer) significant changes to the plugin API related to AST traversal.
  • LanguageServer) plugin system (still in alpha) support for re-scanning the AST after modifing the AST by calling invalidateReferences()
  • (LanguageServer) now sends a diff of diagnostics for files, instead of the entire project's diagnostics every time. This improves performance for projects with a high number of diagnostics or files (BrighterScript#204)
  • update to brighterscript@0.16.4

Fixed

  • (Debugger) Fixed bug where stagingFolderPath was defaulting to ${workspaceFolder}/.roku-deploy-staging, when it should have been ${workspaceFolder}/out/.roku-deploy-staging.
  • (LanguageServer) bugs with plugin interoperability with BrighterScript when using instanceof. All internal BrighterScript logic now uses the is functions from astutils/reflection, and plugin authors should do the same.
  • (LanguageServer) critical bug in diagnostic printing that would crash the program if a diagnostic was missing a valid range.
  • (LanguageServer) Prevent bogus diagnostic on all callfunc operations (BrighterScript#205)
  • (LanguageServer) transpile bug for namespaced class constructors that wouldn't properly prepend the namespace in some situations. (BrighterScript#208)
  • (LanguageServer) bug in class validation that was causing bogus diagnostics during class construction in namespaces.(BrighterScript#203)

2.8.8 - 2020-10-06

Changed

Fixed

  • (Debugger) bug that was not passing in the stagingFolderPath property for the root project, and therefore incorrectly loading that value from bsconfig.json if it existed. (roku-debug#18)

2.8.7 - 2020-10-01

Changed

Fixed

  • (LanguageServer) annoying popup that would show anytime invalid XML was encountered.
  • (LanguageServer) improved performance in the lexer and parser
  • (LanguageServer) potential for accidentally changing cwd during bsconfig resolving

2.8.6 - 2020-09-30

Changed

Fixed

  • (Debugger) bug preventing component library debug sessions from launching in certain situations

2.8.5 - 2020-09-30

Changed

Fixed

  • (Debugger) bug where debugger couldn't find manifest file for component libraries during publish.

2.8.4 - 2020-09-25

Added

  • (Language Server) alpha version of plugin system. This is subject to change at any time, so use at your own risk.

Changed

Fixed

  • (Debugger) fixed some false positive detections of Can't continue in the TelnetAdapter

2.8.3 - 2020-09-04

Changed

2.8.2 - 2020-09-01

Changed

  • update to brighterscript@0.13.2
  • (Language Server) Upgraded BS1104 to error (previously a warning) and refined the messaging.

2.8.1 - 2020-08-14

Changed

  • upgraded to roku-deploy@3.2.3
  • upgraded to roku-debug@0.5.3
  • upgraded to brighterscript@0.13.1
  • throw exception when copying to staging folder and rootDir does not exist in the file system
  • throw exception when zipping package and ${stagingFolder}/manifest does not exist in the file system

Fixed

  • bug in DebugConfigProvider that incorrectly used ${workspaceFolder} when rootDir didn't exist.

2.8.0 - 2020-08-10

Added

  • (Language Server) ability to mark the extends and project options in bsconfig.json as optional by prefixing the path with a question mark. See this link for more details.

Changed

2.7.0 - 2020-08-03

Added

  • support for clickable file:// links in the log output (#262)

Changed

Fixed

  • (Language Server) bug that would provide stale completions due to the file throttling introduced in brighterscript@0.11.2. Now the language server will wait for the throttled parsing to complete before serving completion results.
  • improvements in the auto-indent functionality for certain language keywords (#271).

2.6.0 - 2020-07-29

Added

  • (Formatter) ability to load formatter settings in bsfmt.json file in cwd. If bsfmt.json exists, then user/workspace formatting settings are ignored.

Changed

Fixed

  • (BrighterScript) bug on Windows when transpiling import statements into xml script tags that would use the wrong path separator sometimes.

2.5.4 - 2020-07-14

Changed

Fixed

  • (LanguageServer) - critical bug in BrighterScript and roku-deploy when when loading stagingFolderPath from rokudeploy.json or bsconfig.json that would crash the language server

2.5.3 - 2020-07-11

Fixed

  • (Debugger) Prevent debug session crash if target breakpoint file doesn't exist. roku-debug#10
  • (Debugger) Bug when converting source location to staging locations that incorrectly checked rootDir before sourceDirs. roku-debug#10

2.5.2 - 2020-07-09

Changed

Fixed

  • Throttle LanguageServer validation to prevent running too many validations in a row.

2.5.1 - 2020-07-09

Changed

  • (LanguageServer) add 350ms debounce in onDidChangeWatchedFiles to increase performance by reducing the number of times a file is parsed and validated.
  • Upgraded to brighterscript@0.11.2

Fixed

  • (Debugger) bug in the .env file processing during debug launch.
  • (LanguageServer) bug in the log output that wasn't casting string log levels into their numeric enum versions, causing messages to be lost at certain log levels.
  • (LanguageServer) load manifest file exactly one time per program rather than every time a file gets parsed.
  • (LanguageServer) bug in info logging that wasn't showing the proper parse times for files on first run.

2.5.0 - 2020-07-08

Added

Changed

Fixed

  • (Debugger) Fixed bug when inspecting indexed variables that would always show the list or array itself when using the BrightScript debug protocol roku-debug#8
  • (LanguageServer) bug in parser that would fail to find function calls in certain situations, killing the rest of the parse.
  • (LanguageServer) Do not show BS1010 diagnostic hints for the same script imported for parent and child. (brighterscript#113)

2.4.6 - 2020-07-02

Changed

2.4.5 - 2020-07-02

Fixed

  • bug where .env placeholders in nested launch.json settings were not being handled in the config resolver. #256

2.4.4 - 2020-06-12

Changed

Added

  • (BrighterScript) bslib.brs gets copied to pkg:/source and added as an import to every component on transpile.
  • (LanguageServer) several timing logs under the "info" log level.

Changed

  • (LanguageServer) pipe the language server output to the extension's log window

Fixed

  • (LanguageServer) bug with global val function signature that did not support the second parameter (BrighterScript#110)
  • (LanguageServer) bug with global 'StrI' function signature that did not support the second parameter.

2.4.3 - 2020-06-10

Changed

Fixed

  • (LanguageServer) Allow leading spaces for bs:disable-line and bs:disable-next-line comments (brighterscript#108)
  • (LanguageServer) incorrect definition for global Left() function. (brighterscript#100)
  • (LanguageServer) missing definition for global Tab() and Pos() functions (brighterscript#101)
  • BrighterScript class-extends snippet with broken placeholder for parent class (#252)

2.4.2 - 2020-06-04

Changed

  • Upgraded to brighterscript@0.10.5
  • (LanguageServer) log full error to language server console in client anytime critical error is encountered (attempting to find cause of brighterscript#97)

2.4.1 - 2020-06-04

Changed

  • remove required fields (rootDir, host, password) from launch.json as it's perfectly valid to provide none and rely on the bsconfig.json. (#251)

2.4.0 - 2020-06-01

Added

  • basic snippets for brs/bs and xml files (#248)

Fixed

  • bug where command extension.brightscript.toggleXML wouldn't account for .bs files (#242)

2.3.0 - 2020-06-01

Added

  • (Formatter) new option insertSpaceBetweenAssociativeArrayLiteralKeyAndColon which will ensure exactly 1 or 0 spaces between an associative array key and its trailing colon. (brighterscript-formatter#17)

Changed

Fixed

2.2.1 - 2020-05-28

Changed

Fixed

  • (LanguageServer) CreateObject("roRegex") with third parameter caused compile error (BrighterScript#95)
  • (BrighterScript) flag parameter with same name as namespace
  • (BrighterScript) flag variable with same name as namespace

2.2.0 - 2020-05-27

Added

  • commands to show preview of transpiled BrighterScript (brighterscript.showPreview and brighterscript.showPreviewToSide);

Changed

2.1.23 - 2020-05-20

Changed

  • disabled formatMultiLineObjectsAndArrays by default because it has a bug. Will re-enable in the future when that option gets fixed.

2.1.22 - 2020-05-20

Added

  • (BRS/BS formatter) new option formatMultiLineObjectsAndArrays which inserts newlines and indents multi-line objects and arrays

2.1.21 - 2020-05-20

Added

  • (BRS/BS Formatter) new option insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces which...does what it says. (brighterscript-formatter#16

Changed

Fixed

  • issue where somehow BrighterScript got moved from a dependency into a devDependency, causing the entire package to be excluded from the extension. (#244)
  • incorrect indent when using class, endclass, namespace, endnamespace as an object property (brighterscript-formatter#18)

2.1.20 - 2020-05-19

Added

Changed

2.1.19 - 2020-05-16

Changed

Fixed

  • timing bugs in the language server on first parse that would randomly show errors during startup
  • (BrighterScript) some bugs related to import statements not being properly traced.

2.1.18 - 2020-05-14

Changed

  • Upgraded to brighterscript@0.9.7
  • BrighterScript TypeScript compile targets "ES2017" which provides a signifiant performance boost in lexer (~30%) and parser (~175%)

Fixed

  • (LanguageServer) false negative diagnostic when using the new keyword as a local variable #79

2.1.17 - 2020-05-14

Changed

Fixed

  • formatter bug that would incorrectly add spacing between a negative sign and a number if it's the first entry in an array (brighterscript-formatter#14)
  • formatter bug that would incorrectly add spacing to the left of a negative sign if preceeded by a left curly bracket or left paren.
  • (formatter) Prevent indent after lines with indexed getter function call (i.e. someObj[someKey]()) (brighterscript-formatter#15)

2.1.16 - 2020-05-11

Changed

  • brightscript debug commands from the debug console in the telnet adapter like cont and step are now supported (but use at your own risk as there are synchronization issues between the adapter and vscode sometimes)
  • source maps are now cached on launch to improve step speed.
  • only initialize the log manager when launching a BrightScript debug session.
  • only clear/focus console/output when launching a BrightScript debug session
  • Upgraded to roku-deploy@3.1.1
  • Upgraded to roku-debug@0.3.7
  • Upgraded to brighterscript-formatter@1.1.7
  • Upgraded to brighterscript@0.9.6

Fixed

  • Added missing roku-deploy options into launch config schema.
  • issue that was treating logpoints like regular breakpoints
  • bugs when debugging files with sourcemaps. This still isn't perfect, as files with injected breakpoints will debug the staging file. However, files with maps that don't have breakpoints will be debuggable in the source file. Fix coming soon for the prior.
  • several bugs where the source locations and staging locations were not being computed properly, causing a poor debugging experience.
  • bugs related to sourcemaps not loading from the proper locations.
  • bug with circular dependencies in source maps (shouldn't ever actually exist, but at least we won't loop forever now)

2.1.15 - 2020-05-07

Changed

Fixed

  • bug in LanguageServer that was printing diagnostics to the console when it shouldn't be.

2.1.14 - 2020-05-05

Added

  • diagnostic for detecting unnecessary script imports when autoImportComponentScript is enabled

Changed

  • several performance regressions that were introduced in v0.8.2. (#230)
  • Upgraded to brighterscript@0.9.4
  • filter duplicate dignostics from multiple projects. (#75)
  • bug that was flagging namespaced functions with the same name as a stdlib function.
  • bug that was not properly transpiling brighterscript script tags in xml components.
  • fixes to the autoImportComponentScript logic that was not properly finding the files in all situations.
  • Replace type="text/brighterscript" with type="text/brightscript" in xml script imports during transpile. (#73)

2.1.13 - 2020-05-04

Changed

Fixed

2.1.12 - 2020-05-04

Changed

Fixed

  • issue that prevented certain keywords from being used as function parameter names (brighterscript#69)

2.1.11 - 2020-05-02

Changed

Fixed

  • colorization of the new keyword in BrighterScript
  • Bug in LanguageServer that would show parse errors for functions named constructor(brighterscript#66)
  • bug when printing diagnostics that would sometimes fail to find the line in question `(brighterscript#68)
  • Some performance issues during typing caused by the LanguageServer validating too frequently.

2.1.10 - 2020-05-01

Added

  • (LanguageServer) New BrighterScript compile flag autoImportComponentScript which will automatically inject a script at transpile-time for a component with the same name if it exists.
  • (Formatter) new formatting option typeCaseOverride which works the same as keywordCaseOverride but exclusively for type tokens (integer, function, etc...)

Changed

Fixed

  • (Formatter) conditional compile keywordCaseOverride characters now support using the literal tokens #if, #else, etc...
  • (Formatter) bug indenting all-uppercase two-word conditional compile tokens #ELSE IF and #END IF
  • (Formatter) Unwanted spacing between a negative sign and a number whenever preceeded by a comma (brightscript-formatter#8)
  • (Formatter) Remove whitespace preceeding a comma within a statement brightscript-formatter#5)
  • (Formatter) Remove leading whitespace around ++ and -- brightscript-formatter#10)
  • (Formatter) bug when providing null to keywordCaseOverride would case crash
  • (Formatter) Fix bug with titleCase option not being properly handled.
  • (Formatter) Only indent once for left square bracket and left square curly brace on the same line (brightscript-formatter#6)
  • (LanguageServer) Parse bug with upper-case two-word conditional compile tokens #ELSE IF and #END IF (brightscript#63)

2.1.9 - 2020-04-29

Changed

Fixed

  • bugs in class field initialization
  • bug preventing class fields from being named certain keywords. Now they can.

2.1.8 - 2020-04-27

Changed

Fixed

  • incorrect syntax highlighting for commented-out end if statement.
  • colorize class fields

Fixed

  • formatter bug that was de-indenting for each loop bodies and everything after.

2.1.7 - 2020-04-24

Added

  • new setting brightscript.focusOutputPanelOnStartup.

Changed

  • Disable file system logging by default.
  • The "BrightScript Log" output channel is no longer automatically focused on extension init. You will need to set brightscript.focusOutputPanelOnStartup to true in order to regain this functionality.
  • Upgraded to brighterscript@0.7.2
  • Upgraded to brighterscript-formatter@1.1.0 which brings indent support for namespace and class, and keyword support for namespace, class, and import.

Fixed

  • incorrect syntax highlighting for end class.

2.1.6 - 2020-04-16

Added

  • syntax highlighting for import and namespace

Changed

  • upgraded to roku-debug@0.3.6 which fixed a bug in the new BrightScript debug protocol that would sometimes crash during launch.

2.1.5 - 2020-04-15

Added

  • (LanguageServer) ability to filter out diagnostics by using the diagnosticFilters option in bsconfig

Changed

  • upgraded to brighterscript@0.6.0
  • (LanguageServer depricated the ignoreErrorCodes in favor of diagnosticFilters

Fixed

  • (LanguageServer) Bug in the language server that wasn't reloading the project when changing the bsconfig.json

2.1.4 - 2020-04-14

Changed

  • upgraded to brighterscript@0.5.4 which fixed a syntax bug, now allowing the use of a period before an indexed getter (i.e. object.["key]"). It

2.1.3 - 2020-04-12

Changed

  • upgraded to brighterscript@0.5.3 which fixed several syntax errors during brighscript file parsing.

2.1.2 - 2020-04-11

Changed

  • upgraded to brighterscript@0.5.2
  • upgraded to roku-debug@0.3.5
  • upgraded to roku-deploy@3.0.2 which fixed a file copy bug in subdirectories of symlinked folders
  • (LanguageServer) downgrade diagnostic issue 1007 from an error to a warning, and updated the message to "Component is mising "extends" attribute and will automatically extend "Group" by default". (BrighterScript#53)

Fixed

  • (LanguageServer) Prevent xml files found outside of the pkg:/components folder from being parsed and validated. (BrighterScript#51)
  • (LanguageServer) allow empty elseif and else blocks. (BrighterScript#48)

2.1.1 - 2020-04-10

Added

  • several new diagnostics for conditional compiles. Some of them allow the parser to recover and continue. (BrightScript/BrighterScript)

Changed

  • upgraded to brighterscript@0.5.0
  • parser diagnostics have been broken out into their own error codes, removing the use of error code 1000 for a generic catch-all. That code still exists and will hold runtime errors from the parser. (BrightScript/BrighterScript)

Fixed

  • (LanguageServer) bug in parser that was flagging the new class keywords (new, class, public, protected, private, override) as parse errors. These are now allowed as both local variables and property names.

2.1.0 - 2020-04-07

Added

  • Support for the BrightScript debug protocol. It's disabled by default, but can be enabled by setting brightscript.debug.enableDebugProtocol to true in your user settings or launch configuration.

2.0.0 - 2020-04-01

This is a summary of all changes between 1.23.0 and 2.0.0-beta.50

Added

  • language server support, which includes intellisense and syntax checking for brightscript projects
  • flag to enable/disable the language server
  • DebugServer output channel for showing more details of the status of the debug server without cluttering the main BrightScript log output

2.0.0-beta.50 - 2020-03-25

Added

  • flag to enable/disable the language server

2.0.0-beta.49 - 2020-03-07

Added

  • all changes from 1.23.0

2.0.0-beta.48 - 2020-02-26

Fixed

  • bug where no files would be copied to staging during the launch process.

2.0.0-beta.47 - 2020-02-26

Added

  • all changes from 1.22.0

2.0.0-beta.46 - 2020-02-18

Added

  • all changes from 1.21.3

2.0.0-beta.45 - 2020-01-22

Fixed

  • performance issue where projects including component libraries were writing to the filesystem too frequently, causing very slow build times. #217

2.0.0-beta.44 - 2020-01-15

Fixed

2.0.0-beta.43 - 2020-01-11

Added

  • DebugServer output channel for showing more details of the status of the debug server without cluttering the main BrightScript log output

Updated

2.0.0-beta.42 - 2020-01-07

Updated

2.0.0-beta.41 - 2019-11-08

Updated

2.0.0-beta.40 - 2019-10-30

Added

  • all changes from 1.20.3

2.0.0-beta.39 - 2019-10-21

Added

  • all changes from 1.20.2

2.0.0-beta.38 - 2019-10-03

Added

  • all changes from 1.20.0

Changed

  • upgraded to brighterscript@0.3.0 which fixes parse error related to comments inside of associative array literals, and supports parsing opened files that are not included in a bsconfig.json file

2.0.0-beta.37 - 2019-10-01

Added

  • all changes from 1.20.0

2.0.0-beta.36 - 2019-09-28

Changed

2.0.0-beta.35 - 2019-09-24

Added

  • all changes from 1.19.0 through 1.19.6

Changed

  • Enhanced intellisense to scan all files in context to provide more accurate results for object property completions.
  • Enhanced intellisense that filters results based on whether you typing an object proeprty/method or not.
  • switched languageserver to use brighterscript. This is the first step towards support the BrighterScript language.

Fixed

  • bug that would not register new files until a vscode restart.

1.23.0 - 2020-03-06

Added

  • support for file-system logging of the BrightScript and debug output channels. (brightscript.debug.logfilePath in user/workspace settings or logfilePath in launch.json) (#216)

1.22.0 - 2020-02-25

Added

  • source map support during debugging. See the sourcemap section of the README for more information.
  • support for sourceDirs for component libraries
  • ability to set any default launch config settings in user/workspace settings under brightscript.debug.launchConfigValueHere. There is not full validation for these yet, but the logic is already in place to use them.

Changed

  • setting brightscript.rokuAdvancedLayoutEditor.trackerTaskFileLocation has been depricated and replaced with brightscript.debug.raleTrackerTaskFileLocation

1.21.3 - 2020-02-18

Fixed

  • set many default config values so .env file works better. (#215)
  • Speed up RALE insertion (#218)

1.21.2 - 2020-01-22

Fixed

  • performance issue where projects including component libraries were writing to the filesystem too frequently, causing very slow build times. #217

1.21.1 - 2019-12-20

Changed

1.21.0 - 2019-12-08

Added

  • option to use an alternate port when publishing a package to a Roku. This is mainly useful for publishing to an emulator an alternate port through port-forwarding.

Changed

1.20.3 - 2019-10-21

Fixed

  • bug in debugger that would fail to identify empty arrays and associative arrays.

1.20.2 - 2019-10-21

Fixed

  • bug in the parsing of the file paths on the device as of Roku FW 9.2 causing the opening of Component Library file to fail on runtime crashes and break points.

1.20.1 - 2019-10-03

Fixed

  • bug in the "port is in use" crash message detection (it wasn't awaiting an async call which was causing intermittent errors).
  • bug in the componentLibrary files JSON schema that wasn't allowing {src;dest} objects.

1.20.0 - 2019-10-01

Added

  • "port is in use" crash message when serving component libraries

Changed

  • The Roku stacktrace includes all function names back as fully lower case. The extension reads the original files and attempts to find the correct case for every function. These results were not being cached, but are now cached in order to improve performance.

Fixed

  • some syntax colors related to object function calls

1.19.6 - 2019-09-23

Fixed

  • bugs in language grammar (syntax highlighting)

1.19.5 - 2019-09-20

Fixed

  • issue where part of the debug crash output was not being logged to the console (see #198)

1.19.4 - 2019-09-19

Changed

Fixed

  • formatting bug where, if a line ended with end (even property names), the following lines would all be de-indented

1.19.3 - 2019-09-18

Fixed

  • added format-document support for BrighterScript files.

1.19.2 - 2019-09-17

Changed

Fixed

  • syntax colorization of library and sub

1.19.1 - 2019-09-17

Changed

  • .env files are processed closer to the beginning of the config resolve function, which allows users to customize which prompts they want to see.

1.19.0 - 2019-09-16

Changed

Fixed

  • many bugs related to inspecting large arrays/objects on the Roku during debugging. (see #152)

2.0.0-beta.34 - 2019-08-19

Changed

Fixed

2.0.0-beta.33 - 2019-08-09

Fixed

  • issue that was crashing every debug session before it started.

2.0.0-beta.32 - 2019-08-07

Added

Changed

2.0.0-beta.31 - 2019-08-03

Added

2.0.0-beta.30 - 2019-08-02

Added

2.0.0-beta.30 - 2019-06-21

Added

2.0.0-beta.28 - 2019-06-18

Added

2.0.0-beta.27 - 2019-06-13

Added

2.0.0-beta.26 - 2019-06-11

Added

2.0.0-beta.25 - 2019-05-31

Fixed

  • upgraded to brightscript-language@0.2.12 which:
    • prevent compile errors for conditional compile statements
    • syntax support for single-word #elseif and #endif brs#249
    • syntax support for stop statements brs#247
    • syntax support for empty print statements brs#264

2.0.0-beta.24 - 2019-05-28

Added

Changed

2.0.0-beta.23 - 2019-05-23

Changed

2.0.0-beta.22 - 2019-05-22

Changed

  • upgraded to brightscript-language@0.2.9 which:
    • added syntax support for numbers with leading or trailing period
    • added & as supported type designator for identifiers

2.0.0-beta.21 - 2019-05-14

Added

Changed

2.0.0-beta.20 - 2019-05-07

Changed

  • upgraded to brightscript-language@0.2.7 which:
    • fixes many syntax errors related to using keywords as property names.
    • adds support for hex literals

Fixed

  • bug in syntax highlighting that was showing keyword colors for object properties with keyword names.

2.0.0-beta.19 - 2019-05-01

Changed

2.0.0-beta.18 - 2019-04-30

Changed

2.0.0-beta.17 - 2019-04-26

Added

2.0.0-beta.16 - 2019-04-19

Added

2.0.0-beta.15 - 2019-04-11

Added

2.0.0-beta.14 - 2019-03-21

Added

2.0.0-beta.13 - 2019-03-21

Changed

Fixed

  • greatly improved single-line recovery. Previously, certain syntax errors would prevent the rest of the block or file from parsing. The parser will now skip erraneous lines and attempt to recover. This usually provides much better error recovery, but in certain cases can produce additional errors in the file.
  • bitshift assignment operators (>>= <<=) no longer cause parse errors
  • using colons as separators for associate arrays no longer cause parse errors (e.g obj = {x:0 : y: 1})

2.0.0-beta.12 - 2019-03-21

Added

  • all changes from v1.9.0 and v1.10.0

Changed

  • This release is the successor to 2.0.0-beta.11. The name of the beta program caused some confusion in the past, because it seemed like it was a beta version of 1.9.0, when in reality it was just a beta version of new features, and we needed a higher number than the current version (which was 1.8.* at that time). So now, for clarity, the new versions of the languageserver beta versions will be 2.0.0-beta.[the_beta_number}. It would have been nice to not use a version number at all, but vscode and npm both need valid semantic version numbers, so we decided to use 999 instead, which makes it much more obvious that this is an outlier.
  • Upgrade to brightscript-language@0.2.3
  • exclude method completions from xml files (will be added back once CDATA support arrives)
  • empty script reference errors will show a more usefull error message "Script import cannot be empty or whitespace"

Fixed

  • parse errors for type designators (i.e. $ % ! # at end of variable name)
  • parse errors for multiple spaces between two-word keywords (like else if or end if)
  • issue with missing brsconfig.json schema file.

2.0.0-beta.11 - 2019-03-12

Added

  • Support for go to definition to open parent component xml file when the cursor is on a component's extends="ParentName" section (fixes #114).

Fixed

  • Syntax colorization for multi-word keywords like endfor, endif, elseif, etc. that were not supporting zero spaces between or more than 1 space between.

2.0.0-beta.10 - 2019-03-12

Added

Fixed

  • regression issue preventing the use of launch configs stored settings.json (see #111)

2.0.0-beta.9 - 2019-03-11

Fixed

2.0.0-beta.8 - 2019-03-10

Added

  • support specifying brsconfig.json path as a vscode setting under the brightscript.configFile setting.
  • reload workspace if brsconfig.json has changed
  • When launching debug session, read values from brsconfig.json when available

Changed

  • Don't show brightscript log on workspace open (still support option to show on debug-start)

Fixed

  • Upgraded to brightscript-language@0.1.19) which fixes:
  • RHS boolean assignment parse errors (see this issue)
  • hover bug in multi-root workspace that was only showing hovers for the first workspace

2.0.0-beta.7 - 2019-03-09

Added

  • All changes from 1.8.4 and 1.8.5

Fixed

  • Upgraded to brightscript-language@0.1.17) which fixes:
    • Regression issue where mixed case then statements showed up as parse errors (fixed by
    • Parse errors related to assignment operators (i.e. +=, -=, *=, etc.)
    • issue where only top-level variables were being found. Now all variables are found throughout the entire function scope.
    • runtime error when getting hover result.
    • issue with hover that would not find top-level function parameter types.

2.0.0-beta.6 - 2019-03-04

Added

Fixed

  • syntax highlighting bug related to then not colorizing when containing any upper case character
  • the MaxListenersExceededWarning warning by upgrading to brightscript-language@0.1.15

2.0.0-beta.5 - 2019-03-03

Changed

  • Upgraded to brightscript-language@0.1.14 that brings syntax fixes for using then as an object property name and now allows function as an argument type.

Fixed

  • textmate grammar related to run, stop, and then when used as object property names

2.0.0-beta.4 - 2019-02-25

Changed

2.0.0-beta.3 - 2019-02-25

Fixed

  • bugs with errors showing up for script imports inside of comments.

2.0.0-beta.2 - 2019-02-24

Changed

  • Upgraded to latest brightscript project, which fixes bitshift assignment operators and stop and run keywords on object literals.

2.0.0-beta.1 - 2019-02-20

Added

  • Experimental language validation support. Catches most parse errors and a few basic language errors.

1.18.2 - 2019-08-07

Changed

  • upgrade to roku-deploy@2.2.1 which fixes manifest parsing bug related to colors starting with #.

1.18.1 - 2019-08-03

Fixed

  • issue where the RALE Tracker Task injection logic was enabled by default.

1.18.0 - 2019-08-02

Added

  • Automatic Rendezvous tracking when logrendezvous is enabled on the Roku. The extension monitors all rendezvous console log entries and displays them in a new side panel in vscode.
  • bs_const support in the launch.config. See the bs_const section for more information.
  • User-Agent header to the ECP requests in the ActiveDeviceManager to make it easier to detect where those requests are coming from.
  • Ability to auto-name component libraries based on values from the manifest (such as title)
  • Ability to inject the Roku Advanced Layout Editor(RALE) task from a single user managed version. (See the #RALE-Support for more information)

Fixed

  • Set and use default files array when not specified in launch.json so users don't need to set it themselves.
  • Bug where some of the console output gets lost during consoleOutput: "normal".
  • Show better error messages during the publish process
    • include the host ip address in most error messages
    • open the first file that has a compile error

1.17.1 - 2019-06-21

Fixed

  • regression issue with formatIndent

1.17.0 - 2019-06-18

Added

  • support for hosting and debugging component libraries. (#161)
  • Dropdown during launch allowing you to pick from a list of Rokus found on local network. (#156)
  • Upgraded to brightscript-formatter@1.6.0, and added new extension settings:
    • brightscript.format.formatInteriorWhitespace
    • brightscript.format.insertSpaceBeforeFunctionParenthesis
    • brightscript.format.insertSpaceBetweenEmptyCurlyBraces

1.16.0 - 2019-06-11

Added

  • added launch config setting stopDebuggerOnAppExit which monitors the console output, and automatically ends the debug session when detected.
  • added launch config setting enableLookupVariableNodeChildren that, if true, will get all children of a node, when the value is displayed in a debug session, and display it in the virtual _children field
  • added extension setting brightscript.output.clearConsoleOnChannelStart that allows you to clear/not clear the initial roku compile console output.
  • resolving children of nodes variables

Fixed

  • bug that would cause debug session crashes when inspecting a roList variable (#155)

1.15.0 - 2019-05-28

Added

  • support for foldable regions by typing '#region and '#endregion
  • added syntax colorization for #region and #endregion

1.14.0 - 2019-05-14

Changed

  • default value of debug configuration setting stopOnEntry to false.

Fixed

  • bug that wouldn't support launching screen savers due to not looking for RunScreenSaver entry point.

1.13.1 - 2019-04-26

Fixed

  • bug in the run loop break recovery section that was not resetting certain variables, which was requiring a vscode reboot to fix.

1.13.0 - 2019-04-19

Added

  • sourceDirs launch config setting that enables the debugger to search through each entry in sourceDirs until it finds a relative file path that matches the file currently being debugged. (#130)
  • deep link / ECP support when launching a debug session. Use the deepLinkUrl property in your launch.json (#4)

Depricated

  • debugRootDir launch config setting. Use the new sourceDirs setting instead. (#130)

Fixed

  • Bugs in hover and locals that would not show the full variable name (#137).

1.12.1 - 2019-04-11

Fixed

  • issue where vscode would periodically provide different character casing for workspaceFolder than for full file paths, which would prevent launching a debug session
  • Remove excess spacing in logpoint output

1.12.0 - 2019-04-09

Added

  • conditional breakpoint support
  • logpoint support
  • hit count breakpoint support

1.11.0 - 2019-04-01

Added

  • ability to recover from roku run loop break issues that would previously cause many debug sessions to completely bomb. Set enableDebuggerAutoRecovery to true to opt-in to this feature. See #129 for more information
  • ability to change the presentation of package path hyperlinks in the BrightScript output log. See #128 for more information.

1.10.0 - 2019-03-21

Added

  • Completion items for all BrightScript interface methods except for a few more obscure ones (#68). These can be activated by typing the full interface name after the variable (i.e. )

Fixed

  • problems launching a debug session when the Roku has an app already running that is stuck in the debug state. This extension now issues several exit commands in a row (in addition to the home press it was already doing) which seems to resolve the majority of those issues. (#125)

1.9.0 - 2019-03-19

Added

  • Support for the vars panel during a debug session. This can be disabled by setting enableVariablesPanel: false in the launch.json configuration.

Fixed

  • Syntax highlighting issues
    • variable names with type designators are colored properly
    • endsub and endfunction are colored properly
    • end is colored properly as a standalone command
    • various two word keywords now support no space or multiple spaces between (previously needed exactly 1 space between then)

1.8.6 - 2019-03-09

Fixed

  • launching debug session without a launch.json works again.

1.8.5 - 2019-03-07

Fixed

  • Re-added the log commands that somehow got dropped in a previous release

1.8.4 - 2019-03-04

Fixed

  • Regression syntax highlighting issue that was not correctly colorizing then in conditional statements if it contains any uppercase letters.

1.8.3 - 2019-03-04

Fixed

  • Several textmate grammar issues and added more variety in the captured tokens to provide better colorization

1.8.2 - 2019-01-27

Changed

  • Upgraded to roku-deploy@2.0.0 which brings support for dereferencing symbolic links, and copying files located outside of rootDir.

1.8.1 - 2019-01-25

Fixed

  • Issue in Go to definition that would not find functions/subs with a space between the name and the opening parenthesis (#85)

1.8.0 - 2019-01-25

Added

  • Support for reading variables from a .env file in launch.json (see this section of the readme for more information)

Fixed

  • Bug in Go to definition that wasn't finding function declarations with leading whitespace

1.7.0 - 2019-01-22

Added

  • Ability to click on pkg:/ links in BrightScript output window to open that file at the specified line number.

1.6.1 - 2019-01-20

Fixed

  • Bug where the debugger would hang indefinitely on certain deployment errors.

1.6.0 - 2019-01-15

Added

  • Ability to filter log output
  • Ability to clear log output

Changed

  • Included not searchViewletVisible as part of the roku keyboard remote keybindings so the search panel is more usable in the output window.
  • Prevent adding entry breakpoint when stopOnEntry is false in launch.json.
  • Updated textmate grammar to include step as reserved word.

Fixed

  • Upgraded to roku-deploy@2.0.0-beta2 which fixes some file path regression issues introduced in 1.0.0

1.5.0 - 2019-01-03

Added

  • Ability to send remote control commands from the keyboard. See readme for more details.

1.4.2 - 2018-12-19

Changed

  • Upgraded to roku-deploy version 1.0.0 which brings glob-all support for negating globs.

1.4.1 - 2018-12-14

Fixed

  • Bug that was preventing debugger from working.

1.4.0 - 2018-12-10

Added

  • Basic goto declaration support in xml documents
  • Inline errors for compilation failures
  • BrightScript Log output window, which can have colors/searches applied to it
  • Basic message signature support
  • Find usage support for brs documents

1.3.2 - 2018-12-07

Fixed

  • Bug that was preventing using function Main as an entry function.

1.3.1 - 2018-12-05

Changed

  • Upgraded to brightscript-formatter version 1.5.0 which brings support for overriding keywordCase for specific keywords.

Fixed

  • Bug introduced in 1.3.0 that was preventing a debug session from starting due to incorrect "out" path.

1.3.0 - 2018-11-20

Added

  • Support for declarations and symbols
  • Support for go to definition
  • Ability to format hightlighted code without formatting the whole document
  • A new launch setting called debugRootDir that allows deploying a build file while still debugging a source file
  • Command for switching between xml and brs files for a component.
  • Support for conditional statements without the then.

Changed

  • Upgraded to brightscript-formatter version 1.4.0 which brings better support for multi-line if statements without the trailing then.

Fixed

  • Breakpoints added after a debug session is launched are now correctly show as disabled.

1.2.2 - 2018-09-26

Changed

  • Upgraded to brightscript-formatter version 1.3.0 which brings support for formatting conditional compile statements.

1.2.1 - 2018-09-26

Changed

  • Upgraded to roku-deploy version 0.2.1 which removed some packages containing security vulnerabilities.

1.2.0 - 2018-09-26

Changed

  • Upgraded to roku-deploy version 0.2.0 which adds support for moving and renaming files during the packaging process (see the files property for more details).

1.1.0 - 2018-07-11

Changed

  • Upgraded brightscript-formatter to version 1.2.0 which enables removing trailing whitespace when formatting.

1.0.1 - 2018-04-04

Fixed

  • Issue in debugger that was not properly handling truncated file paths received from Roku.

1.0.0 - 2018-03-16

Added

  • Remote debugging support
  • Code formatter

Fixed

  • Issues with language colorization