brighterscript 1.0.0-alpha.23 → 1.0.0-alpha.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (536) hide show
  1. package/CHANGELOG.md +585 -218
  2. package/README.md +45 -139
  3. package/bsconfig.schema.json +41 -0
  4. package/dist/ActionPipeline.d.ts +10 -0
  5. package/dist/ActionPipeline.js +40 -0
  6. package/dist/ActionPipeline.js.map +1 -0
  7. package/dist/AstValidationSegmenter.d.ts +25 -0
  8. package/dist/AstValidationSegmenter.js +152 -0
  9. package/dist/AstValidationSegmenter.js.map +1 -0
  10. package/dist/BsConfig.d.ts +39 -4
  11. package/dist/BusyStatusTracker.d.ts +31 -0
  12. package/dist/BusyStatusTracker.js +83 -0
  13. package/dist/BusyStatusTracker.js.map +1 -0
  14. package/dist/Cache.js +3 -3
  15. package/dist/Cache.js.map +1 -1
  16. package/dist/CacheVerifier.d.ts +7 -0
  17. package/dist/CacheVerifier.js +20 -0
  18. package/dist/CacheVerifier.js.map +1 -0
  19. package/dist/CodeActionUtil.d.ts +3 -3
  20. package/dist/CodeActionUtil.js.map +1 -1
  21. package/dist/CommentFlagProcessor.d.ts +3 -2
  22. package/dist/CommentFlagProcessor.js +5 -4
  23. package/dist/CommentFlagProcessor.js.map +1 -1
  24. package/dist/DependencyGraph.d.ts +3 -2
  25. package/dist/DependencyGraph.js +11 -10
  26. package/dist/DependencyGraph.js.map +1 -1
  27. package/dist/DiagnosticCollection.js +9 -5
  28. package/dist/DiagnosticCollection.js.map +1 -1
  29. package/dist/DiagnosticFilterer.d.ts +1 -0
  30. package/dist/DiagnosticFilterer.js +5 -3
  31. package/dist/DiagnosticFilterer.js.map +1 -1
  32. package/dist/DiagnosticMessages.d.ts +79 -15
  33. package/dist/DiagnosticMessages.js +134 -21
  34. package/dist/DiagnosticMessages.js.map +1 -1
  35. package/dist/DiagnosticSeverityAdjuster.d.ts +7 -0
  36. package/dist/DiagnosticSeverityAdjuster.js +41 -0
  37. package/dist/DiagnosticSeverityAdjuster.js.map +1 -0
  38. package/dist/FunctionScope.d.ts +28 -0
  39. package/dist/FunctionScope.js +52 -0
  40. package/dist/FunctionScope.js.map +1 -0
  41. package/dist/KeyedThrottler.d.ts +3 -3
  42. package/dist/KeyedThrottler.js +3 -3
  43. package/dist/KeyedThrottler.js.map +1 -1
  44. package/dist/LanguageServer.d.ts +23 -11
  45. package/dist/LanguageServer.js +222 -87
  46. package/dist/LanguageServer.js.map +1 -1
  47. package/dist/Logger.d.ts +3 -2
  48. package/dist/Logger.js +11 -3
  49. package/dist/Logger.js.map +1 -1
  50. package/dist/PluginInterface.d.ts +21 -3
  51. package/dist/PluginInterface.js +74 -6
  52. package/dist/PluginInterface.js.map +1 -1
  53. package/dist/Program.d.ts +162 -81
  54. package/dist/Program.js +903 -732
  55. package/dist/Program.js.map +1 -1
  56. package/dist/ProgramBuilder.d.ts +22 -12
  57. package/dist/ProgramBuilder.js +132 -104
  58. package/dist/ProgramBuilder.js.map +1 -1
  59. package/dist/Scope.d.ts +95 -134
  60. package/dist/Scope.js +477 -551
  61. package/dist/Scope.js.map +1 -1
  62. package/dist/Stopwatch.js +1 -1
  63. package/dist/Stopwatch.js.map +1 -1
  64. package/dist/SymbolTable.d.ts +95 -29
  65. package/dist/SymbolTable.js +256 -102
  66. package/dist/SymbolTable.js.map +1 -1
  67. package/dist/Throttler.d.ts +12 -0
  68. package/dist/Throttler.js +39 -0
  69. package/dist/Throttler.js.map +1 -1
  70. package/dist/Watcher.d.ts +0 -3
  71. package/dist/Watcher.js +0 -3
  72. package/dist/Watcher.js.map +1 -1
  73. package/dist/XmlScope.d.ts +4 -6
  74. package/dist/XmlScope.js +74 -68
  75. package/dist/XmlScope.js.map +1 -1
  76. package/dist/astUtils/CachedLookups.d.ts +48 -0
  77. package/dist/astUtils/CachedLookups.js +323 -0
  78. package/dist/astUtils/CachedLookups.js.map +1 -0
  79. package/dist/astUtils/{AstEditor.d.ts → Editor.d.ts} +9 -5
  80. package/dist/astUtils/{AstEditor.js → Editor.js} +10 -4
  81. package/dist/astUtils/Editor.js.map +1 -0
  82. package/dist/astUtils/{AstEditor.spec.js → Editor.spec.js} +68 -64
  83. package/dist/astUtils/Editor.spec.js.map +1 -0
  84. package/dist/astUtils/creators.d.ts +10 -10
  85. package/dist/astUtils/creators.js +26 -16
  86. package/dist/astUtils/creators.js.map +1 -1
  87. package/dist/astUtils/creators.spec.js +5 -5
  88. package/dist/astUtils/creators.spec.js.map +1 -1
  89. package/dist/astUtils/reflection.d.ts +132 -100
  90. package/dist/astUtils/reflection.js +225 -166
  91. package/dist/astUtils/reflection.js.map +1 -1
  92. package/dist/astUtils/reflection.spec.js +208 -126
  93. package/dist/astUtils/reflection.spec.js.map +1 -1
  94. package/dist/astUtils/stackedVisitor.spec.js +12 -12
  95. package/dist/astUtils/stackedVisitor.spec.js.map +1 -1
  96. package/dist/astUtils/visitors.d.ts +54 -35
  97. package/dist/astUtils/visitors.js +29 -3
  98. package/dist/astUtils/visitors.js.map +1 -1
  99. package/dist/astUtils/visitors.spec.js +178 -33
  100. package/dist/astUtils/visitors.spec.js.map +1 -1
  101. package/dist/astUtils/xml.d.ts +9 -9
  102. package/dist/astUtils/xml.js +9 -9
  103. package/dist/astUtils/xml.js.map +1 -1
  104. package/dist/bscPlugin/BscPlugin.d.ts +12 -2
  105. package/dist/bscPlugin/BscPlugin.js +41 -3
  106. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  107. package/dist/bscPlugin/CallExpressionInfo.d.ts +36 -0
  108. package/dist/bscPlugin/CallExpressionInfo.js +131 -0
  109. package/dist/bscPlugin/CallExpressionInfo.js.map +1 -0
  110. package/dist/bscPlugin/FileWriter.d.ts +6 -0
  111. package/dist/bscPlugin/FileWriter.js +24 -0
  112. package/dist/bscPlugin/FileWriter.js.map +1 -0
  113. package/dist/bscPlugin/SignatureHelpUtil.d.ts +10 -0
  114. package/dist/bscPlugin/SignatureHelpUtil.js +135 -0
  115. package/dist/bscPlugin/SignatureHelpUtil.js.map +1 -0
  116. package/dist/bscPlugin/codeActions/CodeActionsProcessor.d.ts +1 -1
  117. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +21 -12
  118. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  119. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +86 -12
  120. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  121. package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +57 -0
  122. package/dist/bscPlugin/completions/CompletionsProcessor.js +544 -0
  123. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -0
  124. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +1909 -0
  125. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +1 -0
  126. package/dist/bscPlugin/fileProviders/FileProvider.d.ts +9 -0
  127. package/dist/bscPlugin/fileProviders/FileProvider.js +51 -0
  128. package/dist/bscPlugin/fileProviders/FileProvider.js.map +1 -0
  129. package/dist/bscPlugin/hover/HoverProcessor.d.ts +17 -0
  130. package/dist/bscPlugin/hover/HoverProcessor.js +188 -0
  131. package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -0
  132. package/dist/bscPlugin/hover/HoverProcessor.spec.js +513 -0
  133. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -0
  134. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +3 -1
  135. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +102 -29
  136. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
  137. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +167 -6
  138. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -1
  139. package/dist/bscPlugin/serialize/BslibInjector.spec.d.ts +1 -0
  140. package/dist/bscPlugin/serialize/BslibInjector.spec.js +19 -0
  141. package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +1 -0
  142. package/dist/bscPlugin/serialize/BslibManager.d.ts +9 -0
  143. package/dist/bscPlugin/serialize/BslibManager.js +40 -0
  144. package/dist/bscPlugin/serialize/BslibManager.js.map +1 -0
  145. package/dist/bscPlugin/serialize/FileSerializer.d.ts +9 -0
  146. package/dist/bscPlugin/serialize/FileSerializer.js +72 -0
  147. package/dist/bscPlugin/serialize/FileSerializer.js.map +1 -0
  148. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.d.ts +16 -0
  149. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js +123 -0
  150. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -0
  151. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.d.ts +1 -0
  152. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +41 -0
  153. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +1 -0
  154. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.d.ts +12 -0
  155. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js +99 -0
  156. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js.map +1 -0
  157. package/dist/bscPlugin/validation/BrsFileValidator.d.ts +22 -1
  158. package/dist/bscPlugin/validation/BrsFileValidator.js +316 -29
  159. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  160. package/dist/bscPlugin/validation/BrsFileValidator.spec.d.ts +1 -0
  161. package/dist/bscPlugin/validation/BrsFileValidator.spec.js +264 -0
  162. package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -0
  163. package/dist/bscPlugin/validation/ProgramValidator.d.ts +10 -0
  164. package/dist/bscPlugin/validation/ProgramValidator.js +32 -0
  165. package/dist/bscPlugin/validation/ProgramValidator.js.map +1 -0
  166. package/dist/bscPlugin/validation/ScopeValidator.d.ts +56 -8
  167. package/dist/bscPlugin/validation/ScopeValidator.js +514 -116
  168. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  169. package/dist/bscPlugin/validation/ScopeValidator.spec.d.ts +1 -0
  170. package/dist/bscPlugin/validation/ScopeValidator.spec.js +2454 -0
  171. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -0
  172. package/dist/bscPlugin/validation/XmlFileValidator.d.ts +8 -0
  173. package/dist/bscPlugin/validation/XmlFileValidator.js +44 -0
  174. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -0
  175. package/dist/cli.js +107 -8
  176. package/dist/cli.js.map +1 -1
  177. package/dist/deferred.d.ts +3 -3
  178. package/dist/deferred.js.map +1 -1
  179. package/dist/diagnosticUtils.d.ts +8 -2
  180. package/dist/diagnosticUtils.js +47 -17
  181. package/dist/diagnosticUtils.js.map +1 -1
  182. package/dist/examples/plugins/removePrint.js +8 -10
  183. package/dist/examples/plugins/removePrint.js.map +1 -1
  184. package/dist/files/AssetFile.d.ts +26 -0
  185. package/dist/files/AssetFile.js +26 -0
  186. package/dist/files/AssetFile.js.map +1 -0
  187. package/dist/files/BrsFile.Class.spec.js +529 -486
  188. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  189. package/dist/files/BrsFile.d.ts +124 -112
  190. package/dist/files/BrsFile.js +819 -1131
  191. package/dist/files/BrsFile.js.map +1 -1
  192. package/dist/files/BrsFile.spec.js +1869 -1277
  193. package/dist/files/BrsFile.spec.js.map +1 -1
  194. package/dist/files/BscFile.d.ts +104 -0
  195. package/dist/files/BscFile.js +16 -0
  196. package/dist/files/BscFile.js.map +1 -0
  197. package/dist/files/Factory.d.ts +25 -0
  198. package/dist/files/Factory.js +22 -0
  199. package/dist/files/Factory.js.map +1 -0
  200. package/dist/files/LazyFileData.d.ts +20 -0
  201. package/dist/files/LazyFileData.js +54 -0
  202. package/dist/files/LazyFileData.js.map +1 -0
  203. package/dist/files/LazyFileData.spec.d.ts +1 -0
  204. package/dist/files/LazyFileData.spec.js +27 -0
  205. package/dist/files/LazyFileData.spec.js.map +1 -0
  206. package/dist/files/XmlFile.d.ts +70 -32
  207. package/dist/files/XmlFile.js +106 -117
  208. package/dist/files/XmlFile.js.map +1 -1
  209. package/dist/files/XmlFile.spec.js +325 -262
  210. package/dist/files/XmlFile.spec.js.map +1 -1
  211. package/dist/files/tests/imports.spec.js +49 -41
  212. package/dist/files/tests/imports.spec.js.map +1 -1
  213. package/dist/files/tests/optionalChaning.spec.js +104 -40
  214. package/dist/files/tests/optionalChaning.spec.js.map +1 -1
  215. package/dist/globalCallables.js +16 -18
  216. package/dist/globalCallables.js.map +1 -1
  217. package/dist/index.d.ts +13 -2
  218. package/dist/index.js +15 -2
  219. package/dist/index.js.map +1 -1
  220. package/dist/interfaces.d.ts +440 -150
  221. package/dist/interfaces.js +27 -0
  222. package/dist/interfaces.js.map +1 -1
  223. package/dist/lexer/Character.spec.js +5 -5
  224. package/dist/lexer/Character.spec.js.map +1 -1
  225. package/dist/lexer/Lexer.d.ts +12 -5
  226. package/dist/lexer/Lexer.js +28 -13
  227. package/dist/lexer/Lexer.js.map +1 -1
  228. package/dist/lexer/Lexer.spec.js +187 -134
  229. package/dist/lexer/Lexer.spec.js.map +1 -1
  230. package/dist/lexer/Token.d.ts +9 -1
  231. package/dist/lexer/Token.js +9 -1
  232. package/dist/lexer/Token.js.map +1 -1
  233. package/dist/lexer/TokenKind.d.ts +9 -0
  234. package/dist/lexer/TokenKind.js +30 -5
  235. package/dist/lexer/TokenKind.js.map +1 -1
  236. package/dist/parser/AstNode.d.ts +162 -0
  237. package/dist/parser/AstNode.js +225 -0
  238. package/dist/parser/AstNode.js.map +1 -0
  239. package/dist/parser/AstNode.spec.d.ts +1 -0
  240. package/dist/parser/AstNode.spec.js +165 -0
  241. package/dist/parser/AstNode.spec.js.map +1 -0
  242. package/dist/parser/BrsTranspileState.d.ts +4 -7
  243. package/dist/parser/BrsTranspileState.js +4 -12
  244. package/dist/parser/BrsTranspileState.js.map +1 -1
  245. package/dist/parser/Expression.d.ts +126 -167
  246. package/dist/parser/Expression.js +524 -394
  247. package/dist/parser/Expression.js.map +1 -1
  248. package/dist/parser/Parser.Class.spec.js +152 -146
  249. package/dist/parser/Parser.Class.spec.js.map +1 -1
  250. package/dist/parser/Parser.d.ts +45 -196
  251. package/dist/parser/Parser.js +470 -926
  252. package/dist/parser/Parser.js.map +1 -1
  253. package/dist/parser/Parser.spec.d.ts +3 -1
  254. package/dist/parser/Parser.spec.js +1034 -805
  255. package/dist/parser/Parser.spec.js.map +1 -1
  256. package/dist/parser/SGParser.d.ts +9 -8
  257. package/dist/parser/SGParser.js +10 -8
  258. package/dist/parser/SGParser.js.map +1 -1
  259. package/dist/parser/SGParser.spec.js +27 -38
  260. package/dist/parser/SGParser.spec.js.map +1 -1
  261. package/dist/parser/SGTypes.d.ts +98 -35
  262. package/dist/parser/SGTypes.js +169 -99
  263. package/dist/parser/SGTypes.js.map +1 -1
  264. package/dist/parser/Statement.d.ts +208 -122
  265. package/dist/parser/Statement.js +599 -364
  266. package/dist/parser/Statement.js.map +1 -1
  267. package/dist/parser/Statement.spec.js +45 -21
  268. package/dist/parser/Statement.spec.js.map +1 -1
  269. package/dist/parser/TranspileState.d.ts +1 -1
  270. package/dist/parser/TranspileState.js +7 -12
  271. package/dist/parser/TranspileState.js.map +1 -1
  272. package/dist/parser/tests/Parser.spec.js +3 -2
  273. package/dist/parser/tests/Parser.spec.js.map +1 -1
  274. package/dist/parser/tests/controlFlow/For.spec.js +33 -23
  275. package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
  276. package/dist/parser/tests/controlFlow/ForEach.spec.js +25 -20
  277. package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
  278. package/dist/parser/tests/controlFlow/If.spec.js +96 -94
  279. package/dist/parser/tests/controlFlow/If.spec.js.map +1 -1
  280. package/dist/parser/tests/controlFlow/While.spec.js +22 -16
  281. package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
  282. package/dist/parser/tests/expression/Additive.spec.js +8 -8
  283. package/dist/parser/tests/expression/Additive.spec.js.map +1 -1
  284. package/dist/parser/tests/expression/ArrayLiterals.spec.js +58 -21
  285. package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +1 -1
  286. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +61 -20
  287. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +1 -1
  288. package/dist/parser/tests/expression/Boolean.spec.js +8 -8
  289. package/dist/parser/tests/expression/Boolean.spec.js.map +1 -1
  290. package/dist/parser/tests/expression/Call.spec.js +129 -21
  291. package/dist/parser/tests/expression/Call.spec.js.map +1 -1
  292. package/dist/parser/tests/expression/Exponential.spec.js +5 -5
  293. package/dist/parser/tests/expression/Exponential.spec.js.map +1 -1
  294. package/dist/parser/tests/expression/Function.spec.js +36 -36
  295. package/dist/parser/tests/expression/Function.spec.js.map +1 -1
  296. package/dist/parser/tests/expression/Indexing.spec.js +67 -22
  297. package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
  298. package/dist/parser/tests/expression/Multiplicative.spec.js +9 -9
  299. package/dist/parser/tests/expression/Multiplicative.spec.js.map +1 -1
  300. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +123 -81
  301. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
  302. package/dist/parser/tests/expression/PrefixUnary.spec.js +12 -12
  303. package/dist/parser/tests/expression/PrefixUnary.spec.js.map +1 -1
  304. package/dist/parser/tests/expression/Primary.spec.js +12 -12
  305. package/dist/parser/tests/expression/Primary.spec.js.map +1 -1
  306. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +10 -10
  307. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -1
  308. package/dist/parser/tests/expression/Relational.spec.js +13 -13
  309. package/dist/parser/tests/expression/Relational.spec.js.map +1 -1
  310. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +24 -24
  311. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
  312. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +221 -81
  313. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
  314. package/dist/parser/tests/expression/TernaryExpression.spec.js +287 -105
  315. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
  316. package/dist/parser/tests/expression/TypeExpression.spec.d.ts +1 -0
  317. package/dist/parser/tests/expression/TypeExpression.spec.js +127 -0
  318. package/dist/parser/tests/expression/TypeExpression.spec.js.map +1 -0
  319. package/dist/parser/tests/expression/UnaryExpression.spec.d.ts +1 -0
  320. package/dist/parser/tests/expression/UnaryExpression.spec.js +52 -0
  321. package/dist/parser/tests/expression/UnaryExpression.spec.js.map +1 -0
  322. package/dist/parser/tests/statement/AssignmentOperators.spec.js +15 -15
  323. package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +1 -1
  324. package/dist/parser/tests/statement/ConstStatement.spec.d.ts +1 -0
  325. package/dist/parser/tests/statement/ConstStatement.spec.js +262 -0
  326. package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -0
  327. package/dist/parser/tests/statement/Continue.spec.d.ts +1 -0
  328. package/dist/parser/tests/statement/Continue.spec.js +119 -0
  329. package/dist/parser/tests/statement/Continue.spec.js.map +1 -0
  330. package/dist/parser/tests/statement/Declaration.spec.js +19 -19
  331. package/dist/parser/tests/statement/Declaration.spec.js.map +1 -1
  332. package/dist/parser/tests/statement/Dim.spec.js +22 -22
  333. package/dist/parser/tests/statement/Dim.spec.js.map +1 -1
  334. package/dist/parser/tests/statement/Enum.spec.js +111 -300
  335. package/dist/parser/tests/statement/Enum.spec.js.map +1 -1
  336. package/dist/parser/tests/statement/For.spec.js +9 -10
  337. package/dist/parser/tests/statement/For.spec.js.map +1 -1
  338. package/dist/parser/tests/statement/ForEach.spec.js +8 -9
  339. package/dist/parser/tests/statement/ForEach.spec.js.map +1 -1
  340. package/dist/parser/tests/statement/Function.spec.js +44 -35
  341. package/dist/parser/tests/statement/Function.spec.js.map +1 -1
  342. package/dist/parser/tests/statement/Goto.spec.js +5 -5
  343. package/dist/parser/tests/statement/Goto.spec.js.map +1 -1
  344. package/dist/parser/tests/statement/Increment.spec.js +20 -20
  345. package/dist/parser/tests/statement/Increment.spec.js.map +1 -1
  346. package/dist/parser/tests/statement/InterfaceStatement.spec.js +30 -196
  347. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
  348. package/dist/parser/tests/statement/LibraryStatement.spec.js +11 -11
  349. package/dist/parser/tests/statement/LibraryStatement.spec.js.map +1 -1
  350. package/dist/parser/tests/statement/Misc.spec.js +16 -78
  351. package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
  352. package/dist/parser/tests/statement/PrintStatement.spec.js +107 -90
  353. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  354. package/dist/parser/tests/statement/ReturnStatement.spec.js +14 -12
  355. package/dist/parser/tests/statement/ReturnStatement.spec.js.map +1 -1
  356. package/dist/parser/tests/statement/Set.spec.js +48 -35
  357. package/dist/parser/tests/statement/Set.spec.js.map +1 -1
  358. package/dist/parser/tests/statement/Stop.spec.js +6 -6
  359. package/dist/parser/tests/statement/Stop.spec.js.map +1 -1
  360. package/dist/parser/tests/statement/Throw.spec.js +6 -6
  361. package/dist/parser/tests/statement/Throw.spec.js.map +1 -1
  362. package/dist/parser/tests/statement/TryCatch.spec.js +18 -16
  363. package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
  364. package/dist/preprocessor/Manifest.d.ts +1 -1
  365. package/dist/preprocessor/Manifest.js +3 -3
  366. package/dist/preprocessor/Manifest.js.map +1 -1
  367. package/dist/preprocessor/Manifest.spec.js +8 -8
  368. package/dist/preprocessor/Manifest.spec.js.map +1 -1
  369. package/dist/preprocessor/Preprocessor.d.ts +5 -6
  370. package/dist/preprocessor/Preprocessor.js +15 -11
  371. package/dist/preprocessor/Preprocessor.js.map +1 -1
  372. package/dist/preprocessor/Preprocessor.spec.js +25 -25
  373. package/dist/preprocessor/Preprocessor.spec.js.map +1 -1
  374. package/dist/preprocessor/PreprocessorParser.d.ts +1 -1
  375. package/dist/preprocessor/PreprocessorParser.js +7 -1
  376. package/dist/preprocessor/PreprocessorParser.js.map +1 -1
  377. package/dist/preprocessor/PreprocessorParser.spec.js +13 -13
  378. package/dist/preprocessor/PreprocessorParser.spec.js.map +1 -1
  379. package/dist/roku-types/data.json +6544 -10519
  380. package/dist/roku-types/index.d.ts +662 -1934
  381. package/dist/types/ArrayType.d.ts +10 -9
  382. package/dist/types/ArrayType.js +65 -60
  383. package/dist/types/ArrayType.js.map +1 -1
  384. package/dist/types/ArrayType.spec.js +36 -68
  385. package/dist/types/ArrayType.spec.js.map +1 -1
  386. package/dist/types/AssociativeArrayType.d.ts +11 -0
  387. package/dist/types/AssociativeArrayType.js +52 -0
  388. package/dist/types/AssociativeArrayType.js.map +1 -0
  389. package/dist/types/BaseFunctionType.d.ts +9 -0
  390. package/dist/types/BaseFunctionType.js +25 -0
  391. package/dist/types/BaseFunctionType.js.map +1 -0
  392. package/dist/types/BooleanType.d.ts +8 -5
  393. package/dist/types/BooleanType.js +14 -7
  394. package/dist/types/BooleanType.js.map +1 -1
  395. package/dist/types/BooleanType.spec.js +10 -6
  396. package/dist/types/BooleanType.spec.js.map +1 -1
  397. package/dist/types/BscType.d.ts +32 -21
  398. package/dist/types/BscType.js +118 -21
  399. package/dist/types/BscType.js.map +1 -1
  400. package/dist/types/BscTypeKind.d.ts +25 -0
  401. package/dist/types/BscTypeKind.js +30 -0
  402. package/dist/types/BscTypeKind.js.map +1 -0
  403. package/dist/types/BuiltInInterfaceAdder.d.ts +23 -0
  404. package/dist/types/BuiltInInterfaceAdder.js +164 -0
  405. package/dist/types/BuiltInInterfaceAdder.js.map +1 -0
  406. package/dist/types/BuiltInInterfaceAdder.spec.d.ts +1 -0
  407. package/dist/types/BuiltInInterfaceAdder.spec.js +116 -0
  408. package/dist/types/BuiltInInterfaceAdder.spec.js.map +1 -0
  409. package/dist/types/ClassType.d.ts +17 -0
  410. package/dist/types/ClassType.js +58 -0
  411. package/dist/types/ClassType.js.map +1 -0
  412. package/dist/types/ClassType.spec.d.ts +1 -0
  413. package/dist/types/ClassType.spec.js +77 -0
  414. package/dist/types/ClassType.spec.js.map +1 -0
  415. package/dist/types/ComponentType.d.ts +26 -0
  416. package/dist/types/ComponentType.js +83 -0
  417. package/dist/types/ComponentType.js.map +1 -0
  418. package/dist/types/DoubleType.d.ts +8 -5
  419. package/dist/types/DoubleType.js +18 -16
  420. package/dist/types/DoubleType.js.map +1 -1
  421. package/dist/types/DoubleType.spec.js +12 -6
  422. package/dist/types/DoubleType.spec.js.map +1 -1
  423. package/dist/types/DynamicType.d.ts +10 -5
  424. package/dist/types/DynamicType.js +16 -4
  425. package/dist/types/DynamicType.js.map +1 -1
  426. package/dist/types/DynamicType.spec.js +16 -5
  427. package/dist/types/DynamicType.spec.js.map +1 -1
  428. package/dist/types/EnumType.d.ts +30 -12
  429. package/dist/types/EnumType.js +43 -17
  430. package/dist/types/EnumType.js.map +1 -1
  431. package/dist/types/EnumType.spec.d.ts +1 -0
  432. package/dist/types/EnumType.spec.js +33 -0
  433. package/dist/types/EnumType.spec.js.map +1 -0
  434. package/dist/types/FloatType.d.ts +8 -5
  435. package/dist/types/FloatType.js +18 -16
  436. package/dist/types/FloatType.js.map +1 -1
  437. package/dist/types/FloatType.spec.js +4 -6
  438. package/dist/types/FloatType.spec.js.map +1 -1
  439. package/dist/types/FunctionType.d.ts +13 -8
  440. package/dist/types/FunctionType.js +30 -14
  441. package/dist/types/FunctionType.js.map +1 -1
  442. package/dist/types/InheritableType.d.ts +28 -0
  443. package/dist/types/InheritableType.js +152 -0
  444. package/dist/types/InheritableType.js.map +1 -0
  445. package/dist/types/IntegerType.d.ts +8 -5
  446. package/dist/types/IntegerType.js +18 -16
  447. package/dist/types/IntegerType.js.map +1 -1
  448. package/dist/types/IntegerType.spec.js +8 -6
  449. package/dist/types/IntegerType.spec.js.map +1 -1
  450. package/dist/types/InterfaceType.d.ts +12 -13
  451. package/dist/types/InterfaceType.js +20 -48
  452. package/dist/types/InterfaceType.js.map +1 -1
  453. package/dist/types/InterfaceType.spec.js +90 -56
  454. package/dist/types/InterfaceType.spec.js.map +1 -1
  455. package/dist/types/InvalidType.d.ts +7 -5
  456. package/dist/types/InvalidType.js +13 -7
  457. package/dist/types/InvalidType.js.map +1 -1
  458. package/dist/types/InvalidType.spec.js +8 -6
  459. package/dist/types/InvalidType.spec.js.map +1 -1
  460. package/dist/types/LongIntegerType.d.ts +8 -5
  461. package/dist/types/LongIntegerType.js +17 -15
  462. package/dist/types/LongIntegerType.js.map +1 -1
  463. package/dist/types/LongIntegerType.spec.js +10 -6
  464. package/dist/types/LongIntegerType.spec.js.map +1 -1
  465. package/dist/types/NamespaceType.d.ts +12 -0
  466. package/dist/types/NamespaceType.js +28 -0
  467. package/dist/types/NamespaceType.js.map +1 -0
  468. package/dist/types/ObjectType.d.ts +9 -8
  469. package/dist/types/ObjectType.js +21 -11
  470. package/dist/types/ObjectType.js.map +1 -1
  471. package/dist/types/ObjectType.spec.js +3 -3
  472. package/dist/types/ObjectType.spec.js.map +1 -1
  473. package/dist/types/ReferenceType.d.ts +63 -0
  474. package/dist/types/ReferenceType.js +423 -0
  475. package/dist/types/ReferenceType.js.map +1 -0
  476. package/dist/types/ReferenceType.spec.d.ts +1 -0
  477. package/dist/types/ReferenceType.spec.js +137 -0
  478. package/dist/types/ReferenceType.spec.js.map +1 -0
  479. package/dist/types/StringType.d.ts +11 -5
  480. package/dist/types/StringType.js +18 -7
  481. package/dist/types/StringType.js.map +1 -1
  482. package/dist/types/StringType.spec.js +3 -5
  483. package/dist/types/StringType.spec.js.map +1 -1
  484. package/dist/types/TypedFunctionType.d.ts +22 -17
  485. package/dist/types/TypedFunctionType.js +78 -60
  486. package/dist/types/TypedFunctionType.js.map +1 -1
  487. package/dist/types/TypedFunctionType.spec.js +105 -20
  488. package/dist/types/TypedFunctionType.spec.js.map +1 -1
  489. package/dist/types/UninitializedType.d.ts +8 -6
  490. package/dist/types/UninitializedType.js +13 -7
  491. package/dist/types/UninitializedType.js.map +1 -1
  492. package/dist/types/UnionType.d.ts +20 -0
  493. package/dist/types/UnionType.js +123 -0
  494. package/dist/types/UnionType.js.map +1 -0
  495. package/dist/types/UnionType.spec.d.ts +1 -0
  496. package/dist/types/UnionType.spec.js +130 -0
  497. package/dist/types/UnionType.spec.js.map +1 -0
  498. package/dist/types/VoidType.d.ts +8 -5
  499. package/dist/types/VoidType.js +14 -7
  500. package/dist/types/VoidType.js.map +1 -1
  501. package/dist/types/VoidType.spec.js +3 -3
  502. package/dist/types/VoidType.spec.js.map +1 -1
  503. package/dist/types/helper.spec.d.ts +1 -0
  504. package/dist/types/helper.spec.js +145 -0
  505. package/dist/types/helper.spec.js.map +1 -0
  506. package/dist/types/helpers.d.ts +19 -37
  507. package/dist/types/helpers.js +159 -99
  508. package/dist/types/helpers.js.map +1 -1
  509. package/dist/types/index.d.ts +22 -0
  510. package/dist/types/index.js +39 -0
  511. package/dist/types/index.js.map +1 -0
  512. package/dist/util.d.ts +167 -131
  513. package/dist/util.js +890 -350
  514. package/dist/util.js.map +1 -1
  515. package/dist/validators/ClassValidator.d.ts +7 -25
  516. package/dist/validators/ClassValidator.js +103 -194
  517. package/dist/validators/ClassValidator.js.map +1 -1
  518. package/package.json +165 -149
  519. package/dist/astUtils/AstEditor.js.map +0 -1
  520. package/dist/astUtils/AstEditor.spec.js.map +0 -1
  521. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.d.ts +0 -8
  522. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js +0 -40
  523. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +0 -1
  524. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +0 -32
  525. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +0 -1
  526. package/dist/parser/SGTypes.spec.js +0 -351
  527. package/dist/parser/SGTypes.spec.js.map +0 -1
  528. package/dist/types/CustomType.d.ts +0 -12
  529. package/dist/types/CustomType.js +0 -44
  530. package/dist/types/CustomType.js.map +0 -1
  531. package/dist/types/LazyType.d.ts +0 -16
  532. package/dist/types/LazyType.js +0 -44
  533. package/dist/types/LazyType.js.map +0 -1
  534. /package/dist/astUtils/{AstEditor.spec.d.ts → Editor.spec.d.ts} +0 -0
  535. /package/dist/bscPlugin/{transpile/BrsFilePreTranspileProcessor.spec.d.ts → completions/CompletionsProcessor.spec.d.ts} +0 -0
  536. /package/dist/{parser/SGTypes.spec.d.ts → bscPlugin/hover/HoverProcessor.spec.d.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -6,14 +6,591 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6
6
 
7
7
 
8
8
 
9
- ## [1.0.0-alpha.23](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha22...v1.0.0-alpha.23) - 2022-06-14
9
+ ## [1.0.0-alpha.25](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.11...v1.0.0-alpha.25) - 2024-01-25
10
10
  ### Changed
11
- - all changes from [v0.52.3](#0523---2022-06-14)
12
- - all changes from [v0.52.2](#0522---2022-06-13)
13
- - all changes from [v0.52.1](#0521---2022-06-10)
11
+ - renamed these releases to `v1.0.0-alpha.*`, which means we are now targeting a `v1.0.0` release
12
+ - Remove `Parser.references` ([#1021](https://github.com/rokucommunity/brighterscript/pull/1021))
13
+ - Fixes Compatibility checks for types defined recursively. ([#1015](https://github.com/rokucommunity/brighterscript/pull/1015))
14
+ - Renamed File interface to BscFile #1013
15
+ - Fix cross namespace collision detection ([#1008](https://github.com/rokucommunity/brighterscript/pull/1008))
16
+ - XML fields of type color can accept strings or integers ([#1016](https://github.com/rokucommunity/brighterscript/pull/1016))
17
+ - Updates the Member types for Component Fields ([#1014](https://github.com/rokucommunity/brighterscript/pull/1014))
18
+ - Adds missing Completion Items ([#1009](https://github.com/rokucommunity/brighterscript/pull/1009))
19
+ - Adds missing Completion Items ([#1009](https://github.com/rokucommunity/brighterscript/pull/1009))
20
+ - Adds a findChildren function on AstNode ([#1010](https://github.com/rokucommunity/brighterscript/pull/1010))
21
+ - Adds Diagnostics for Member Accessibility ([#1004](https://github.com/rokucommunity/brighterscript/pull/1004))
22
+ - Fixes transpiles of Typecasts wrapped in parens ([#998](https://github.com/rokucommunity/brighterscript/pull/998))
14
23
 
15
24
 
16
25
 
26
+ ## [0.66.0-alpha.11](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.10...v0.66.0-alpha.11) - 2023-12-21
27
+ ### Changed
28
+ - Make `roSGNode` and `roSGNodeNode` the same ([#984](https://github.com/rokucommunity/brighterscript/pull/984))
29
+ ### Fixed
30
+ - Scope validation crash ([#991](https://github.com/rokucommunity/brighterscript/pull/991))
31
+ - Namespace validation crash ([#989](https://github.com/rokucommunity/brighterscript/pull/989))
32
+
33
+
34
+
35
+ ## [0.66.0-alpha.10](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.9...v0.66.0-alpha.10) - 2023-12-07
36
+ ### Fixed
37
+ - class constructor used as function transpilation and validation ([#972](https://github.com/rokucommunity/brighterscript/pull/972))
38
+ - exception when given unknown type ([#983](https://github.com/rokucommunity/brighterscript/pull/983))
39
+ ### Changed
40
+ - classes do not include AA members ([#970](https://github.com/rokucommunity/brighterscript/pull/970))
41
+ - remove post-transpiled symbols from .bs code completion ([#979](https://github.com/rokucommunity/brighterscript/pull/979))
42
+ - general purpose name collision diagnostic ([#982](https://github.com/rokucommunity/brighterscript/pull/982))
43
+
44
+
45
+
46
+ ## [0.66.0-alpha.9](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.8...v0.66.0-alpha.9) - 2023-11-28
47
+ ### Fixed
48
+ - removed `v8-profiler-next` package as a dependency (it'll be installed on-demand) ([#1287a5d](https://github.com/rokucommunity/brighterscript/commits/1287a5d7628c0e3ae3154697dfa4d12df5d7e96a))
49
+
50
+
51
+
52
+ ## [0.66.0-alpha.8](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.7...v0.66.0-alpha.8) - 2023-11-27
53
+ ### Added
54
+ - Interface optional properties ([#946](https://github.com/rokucommunity/brighterscript/pull/946))
55
+ - ifDraw2d to reRegion interface ([#960](https://github.com/rokucommunity/brighterscript/pull/960))
56
+ ### Changed
57
+ - cache `range` and `position` to improve performance ([#940](https://github.com/rokucommunity/brighterscript/pull/940))
58
+ - changes to make use with Plugins easier ([#959](https://github.com/rokucommunity/brighterscript/pull/959))
59
+ ### Fixed
60
+ - parsing order for `not` keyword ([#932](https://github.com/rokucommunity/brighterscript/pull/932))
61
+ - class fields using constructors not transpiling correctly ([#933](https://github.com/rokucommunity/brighterscript/pull/933))
62
+ - performance fixes ([#936](https://github.com/rokucommunity/brighterscript/pull/936))
63
+ - validation Performance: File level providedSymbols and `requiredSymbols` ([#944](https://github.com/rokucommunity/brighterscript/pull/944))
64
+ - interface & class support for go-to-definition ([#948](https://github.com/rokucommunity/brighterscript/pull/948))
65
+ - fixes using Enums directly in namespaced situations ([#949](https://github.com/rokucommunity/brighterscript/pull/949))
66
+ - completion performance ([#958](https://github.com/rokucommunity/brighterscript/pull/958))
67
+ - param order for AST class constructors for interface/class members ([#954](https://github.com/rokucommunity/brighterscript/pull/954))
68
+
69
+
70
+
71
+ ## [0.66.0-alpha.7](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.6...v0.66.0-alpha.7) - 2023-10-16
72
+ ### Changed
73
+ - all changes from [v0.65.6](https://github.com/rokucommunity/brighterscript/compare/v0.65.5...v0.65.6) and [v0.65.7](https://github.com/rokucommunity/brighterscript/compare/v0.65.6...v0.65.7)
74
+ - Better multi-scope messages ([#904](https://github.com/rokucommunity/brighterscript/pull/904))
75
+ - Refine type compatibility message ([#908](https://github.com/rokucommunity/brighterscript/pull/908))
76
+ - Allow classes and native components in Typed Arrays ([#919](https://github.com/rokucommunity/brighterscript/pull/919))
77
+ - Fixes some enum validation stuff ([#920](https://github.com/rokucommunity/brighterscript/pull/920))
78
+ - Fixes compatibility of built in types (roArray -> typed arrays) ([#925](https://github.com/rokucommunity/brighterscript/pull/925))
79
+ - Semantic Tokes for Native Components and Type completion in Type Expressions ([#927](https://github.com/rokucommunity/brighterscript/pull/927))
80
+ - Adds callFunc as member method to Custom Components ([#929](https://github.com/rokucommunity/brighterscript/pull/929))
81
+ - Allows scrape-roku-docs to consolidate overloaded methods ([#930](https://github.com/rokucommunity/brighterscript/pull/930))
82
+ - File api ([#408](https://github.com/rokucommunity/brighterscript/pull/408))
83
+
84
+
85
+
86
+ ## [0.66.0-alpha.6](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.5...v0.66.0-alpha.6) - 2023-09-20
87
+ ### Changed
88
+ - Validates DottedSetStatements for type compatibility ([#894](https://github.com/rokucommunity/brighterscript/pull/894))
89
+ - Adds Native Brightscript Component Types and Custom Components (Nodes) to Type System ([#891](https://github.com/rokucommunity/brighterscript/pull/891))
90
+ - Adds validation for binary operators ([#896](https://github.com/rokucommunity/brighterscript/pull/896))
91
+ - Fix union type unary operations and Array.sort(by) optional params ([#897](https://github.com/rokucommunity/brighterscript/pull/897))
92
+ - Interface param support ([#900](https://github.com/rokucommunity/brighterscript/pull/900))
93
+ - Fixes issues with Interface validations, and adds extra details about missing or mismatches members ([#901](https://github.com/rokucommunity/brighterscript/pull/901))
94
+ - Fix isLiteralInvalid ([#902](https://github.com/rokucommunity/brighterscript/pull/902))
95
+
96
+
97
+
98
+ ## [0.66.0-alpha.5](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.4...v0.66.0-alpha.5) - 2023-09-14
99
+ ### Changed
100
+ - all changes from [v0.65.5](https://github.com/rokucommunity/brighterscript/compare/v0.65.4...v0.65.5)
101
+ - Type casts are not allowed in BrightScript ([#859](https://github.com/rokucommunity/brighterscript/pull/859))
102
+ - Fixes small hover issues ([#860](https://github.com/rokucommunity/brighterscript/pull/860))
103
+ - Fixes ReferenceTypes in Binary Operations & UnionTypes as args ([#858](https://github.com/rokucommunity/brighterscript/pull/858))
104
+ - Refactor completion logic ([#864](https://github.com/rokucommunity/brighterscript/pull/864))
105
+ - Fix built in methods parameter types ([#866](https://github.com/rokucommunity/brighterscript/pull/866))
106
+ - Fixes types on call expression info class ([#877](https://github.com/rokucommunity/brighterscript/pull/877))
107
+ - Adds Return type validation ([#876](https://github.com/rokucommunity/brighterscript/pull/876))
108
+ - Adds Typed Arrays ([#875](https://github.com/rokucommunity/brighterscript/pull/875))
109
+ - Use Symbol Tables for Completions ([#874](https://github.com/rokucommunity/brighterscript/pull/874))
110
+ - Adds Leading Trivia to all tokens ([#885](https://github.com/rokucommunity/brighterscript/pull/885))
111
+ - Adds built in Interfaces to primitive types & Validates class method calls ([#856](https://github.com/rokucommunity/brighterscript/pull/856))
112
+
113
+
114
+
115
+ ## [0.66.0-alpha.4](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.3...v0.66.0-alpha.4) - 2023-07-26
116
+ ### Changed
117
+ - all changes from [v0.65.4](https://github.com/rokucommunity/brighterscript/compare/v0.65.3...v0.65.4)
118
+ ### Fixes
119
+ - assignment from return of member functions of primitive types ([#855](https://github.com/rokucommunity/brighterscript/pull/855))
120
+ - using invalid as a default param value (now sets type to dynamic) ([#855](https://github.com/rokucommunity/brighterscript/pull/855))
121
+ - missing `Roku_Event_Dispatcher()` global callable (from library `Roku_Event_Dispatcher.brs`) ([#855](https://github.com/rokucommunity/brighterscript/pull/855))
122
+ - `FormatJson()` function signature ([#855](https://github.com/rokucommunity/brighterscript/pull/855))
123
+
124
+
125
+
126
+ ## [0.66.0-alpha.3](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.2...v0.66.0-alpha.3) - 2023-07-24
127
+ ## Fixed
128
+ - performance fixes ([#834](https://github.com/rokucommunity/brighterscript/pull/834))
129
+ - remove enable type validation option ([#846](https://github.com/rokucommunity/brighterscript/pull/846))
130
+ - BinaryExpression and UnaryExpression infer resultant types ([#827](https://github.com/rokucommunity/brighterscript/pull/827))
131
+ - improve hover to use symbol tables ([#828](https://github.com/rokucommunity/brighterscript/pull/828))
132
+ - fix issue with enums not being properly treated as their underlying types when passed to functions ([#849](https://github.com/rokucommunity/brighterscript/pull/849))
133
+ - object type wider support ([#850](https://github.com/rokucommunity/brighterscript/pull/850))
134
+ - functions as params ([#853](https://github.com/rokucommunity/brighterscript/pull/853))
135
+
136
+
137
+
138
+ ## [0.66.0-alpha.2](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.1...v0.66.0-alpha.2) - 2023-06-14
139
+ ### Fixed
140
+ - Fixes some issues related to Classes as Properties and Consts validation ([#826](https://github.com/rokucommunity/brighterscript/pull/826))
141
+ - Fixes when a Class is a Property of another class, and being unable to resolve it
142
+ - Fixes issue with Consts value looking at a typetime value of the RHS
143
+ - Does a better job of caching symbol lookups on memberTables
144
+
145
+
146
+
147
+ ## [0.66.0-alpha.1](https://github.com/rokucommunity/brighterscript/compare/v0.66.0-alpha.0...v0.66.0-alpha.1) - 2023-06-11
148
+ ### Changed
149
+ - plugin event structures (all events now take a single event object instead of ordered params)
150
+ ### Fixed
151
+ - bugs with namespaces across files having their members missing during validation
152
+
153
+
154
+
155
+ ## [0.66.0-alpha.0](https://github.com/rokucommunity/brighterscript/compare/v0.65.1...v0.66.0-alpha.0) - 2023-06-09
156
+ ### Changed
157
+ - all the type tracking stuff!
158
+ ## [0.65.18](https://github.com/rokucommunity/brighterscript/compare/v0.65.17...v0.65.18) - 2024-01-25
159
+ ### Changed
160
+ - Refactor bsconfig documentation ([#1024](https://github.com/rokucommunity/brighterscript/pull/1024))
161
+ - Prevent overwriting `Program._manifest` if already set on startup ([#1027](https://github.com/rokucommunity/brighterscript/pull/1027))
162
+ - Improving null safety: Add FinalizedBsConfig and tweak plugin events ([#1000](https://github.com/rokucommunity/brighterscript/pull/1000))
163
+
164
+
165
+
166
+ ## [0.65.17](https://github.com/rokucommunity/brighterscript/compare/v0.65.16...0.65.17) - 2024-01-16
167
+ ### Changed
168
+ - add documentation on pruneEmptyCodeFiles to the README ([#1012](https://github.com/rokucommunity/brighterscript/pull/1012))
169
+ - assign .program to the builder BEFORE calling afterProgram ([#1011](https://github.com/rokucommunity/brighterscript/pull/1011))
170
+ ### Fixed
171
+ - properly handle `libpkg:/` prefix for script imports ([#1017](https://github.com/rokucommunity/brighterscript/pull/1017))
172
+
173
+
174
+
175
+ ## [0.65.16](https://github.com/rokucommunity/brighterscript/compare/v0.65.15...v0.65.16) - 2024-01-08
176
+ ### Added
177
+ - Add `pruneEmptyCodeFiles` option to prevent publishing of empty files and exclude unnecessary script imports ([#997](https://github.com/rokucommunity/brighterscript/pull/997))
178
+ ### Changed
179
+ - chore: improve null safety ([#996](https://github.com/rokucommunity/brighterscript/pull/996))
180
+
181
+
182
+
183
+ ## [0.65.15](https://github.com/rokucommunity/brighterscript/compare/v0.65.14...v0.65.15) - 2023-12-26
184
+ ### Fixed
185
+ - Prevent errors when using enums in a file that's not included in any scopes ([#995](https://github.com/rokucommunity/brighterscript/pull/995))
186
+
187
+
188
+
189
+ ## [0.65.14](https://github.com/rokucommunity/brighterscript/compare/v0.65.13...v0.65.14) - 2023-12-20
190
+ ### Fixed
191
+ - multi-namespace class inheritance transpile bug ([#990](https://github.com/rokucommunity/brighterscript/pull/990))
192
+ ### Changed
193
+ - flag missing function references for `onChange` function ([#941](https://github.com/rokucommunity/brighterscript/pull/941))
194
+ - upgrade to [roku-deploy@3.11.2](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3112---2023-12-20). Notable changes since 3.11.1:
195
+ - Update wrong host password error message ([roku-deploy#134](https://github.com/rokucommunity/roku-deploy/pull/134))
196
+
197
+
198
+
199
+ ## [0.65.13](https://github.com/rokucommunity/brighterscript/compare/v0.65.12...v0.65.13) - 2023-12-08
200
+ ### Fixed
201
+ - broken enum transpiling ([#985](https://github.com/rokucommunity/brighterscript/pull/985))
202
+
203
+
204
+
205
+ ## [0.65.12](https://github.com/rokucommunity/brighterscript/compare/v0.65.11...v0.65.12) - 2023-12-07
206
+ ### Added
207
+ - `optional` modifier for interface and class members ([#955](https://github.com/rokucommunity/brighterscript/pull/955))
208
+ - manifest loading from files ([#942](https://github.com/rokucommunity/brighterscript/pull/942))
209
+ ### Changed
210
+ - use regex for faster manifest/typedef detection ([#976](https://github.com/rokucommunity/brighterscript/pull/976))
211
+ - out-of-date transpile blocks in docs ([#956](https://github.com/rokucommunity/brighterscript/pull/956))
212
+ ### Fixed
213
+ - Correct RANGE in template string when dealing with quotes in annotations ([#975](https://github.com/rokucommunity/brighterscript/pull/975))
214
+
215
+
216
+
217
+ ## [0.65.11](https://github.com/rokucommunity/brighterscript/compare/v0.65.10...v0.65.11) - 2023-11-30
218
+ ### Changed
219
+ - upgrade to [roku-deploy@3.11.1](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3111---2023-11-30). Notable changes since 3.10.5:
220
+ - Wait for file stream to close before resolving promise ([roku-deploy#133](https://github.com/rokucommunity/roku-deploy/pull/133))
221
+ ### Fixed
222
+ - enums as class initial values ([#950](https://github.com/rokucommunity/brighterscript/pull/950))
223
+
224
+
225
+
226
+ ## [0.65.10](https://github.com/rokucommunity/brighterscript/compare/v0.65.9...v0.65.10) - 2023-11-14
227
+ ### Changed
228
+ - upgrade to [roku-deploy@3.10.5](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3105---2023-11-14). Notable changes since 3.10.4:
229
+ - Add better device-info docs ([roku-deploy#128](https://github.com/rokucommunity/roku-deploy/pull/128))
230
+ - Added some more message grabbing logic ([roku-deploy#127](https://github.com/rokucommunity/roku-deploy/pull/127))
231
+
232
+
233
+
234
+ ## [0.65.9](https://github.com/rokucommunity/brighterscript/compare/v0.65.8...v0.65.9) - 2023-11-06
235
+ ### Changed
236
+ - upgrade to [roku-deploy@3.10.4](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3104---2023-11-03). Notable changes since 3.10.3:
237
+ - Enhance getDeviceInfo() method ([roku-deploy#120](https://github.com/rokucommunity/roku-deploy/pull/120))
238
+ ### Fixed
239
+ - issue with unary expression parsing ([#938](https://github.com/rokucommunity/brighterscript/pull/938))
240
+
241
+
242
+
243
+ ## [0.65.8](https://github.com/rokucommunity/brighterscript/compare/v0.65.7...v0.65.8) - 2023-10-06
244
+ ### Added
245
+ - interface parameter support ([#924](https://github.com/rokucommunity/brighterscript/pull/924))
246
+ ### Changed
247
+ - Bump postcss from 8.2.15 to 8.4.31 ([#928](https://github.com/rokucommunity/brighterscript/pull/928))
248
+ ### Fixed
249
+ - chore: fix typescript typing for `Deferred` ([#923](https://github.com/rokucommunity/brighterscript/pull/923))
250
+
251
+
252
+
253
+ ## [0.65.7](https://github.com/rokucommunity/brighterscript/compare/v0.65.6...v0.65.7) - 2023-09-28
254
+ ### Fixed
255
+ - fix bug in --noproject flag logic ([#922](https://github.com/rokucommunity/brighterscript/pull/922))
256
+
257
+
258
+
259
+ ## [0.65.6](https://github.com/rokucommunity/brighterscript/compare/v0.65.5...v0.65.6) - 2023-09-28
260
+ ### Added
261
+ - `noProject` flag to bsc so `bsconfig.json` loading can be skipped entirely even if present ([#868](https://github.com/rokucommunity/brighterscript/pull/868))
262
+ ### Changed
263
+ - docs: add some more details to the plugins ([#913](https://github.com/rokucommunity/brighterscript/pull/913))
264
+ - docs: add missing emitDefinitions ([#893](https://github.com/rokucommunity/brighterscript/pull/893))
265
+ ### Fixed
266
+ - incorrect quasi location in template string ([#921](https://github.com/rokucommunity/brighterscript/pull/921))
267
+ - `UnaryExpression` transpile for namespace and const ([#914](https://github.com/rokucommunity/brighterscript/pull/914))
268
+
269
+
270
+
271
+ ## [0.65.5](https://github.com/rokucommunity/brighterscript/compare/v0.65.4...v0.65.5) - 2023-09-06
272
+ ### Added
273
+ - support overriding bs_const values in bsconfig ([#887](https://github.com/rokucommunity/brighterscript/pull/887))
274
+ - allow optionally specifying bslib destination directory ([#871](https://github.com/rokucommunity/brighterscript/pull/871))
275
+ - Print diagnostic related information ([#867](https://github.com/rokucommunity/brighterscript/pull/867))
276
+ ### Fixed
277
+ - ensure consistent insertion of bslib.brs ([#870](https://github.com/rokucommunity/brighterscript/pull/870))
278
+ - Fix crashes in util for null ranges ([#869](https://github.com/rokucommunity/brighterscript/pull/869))
279
+ - Fix tab issue when printing diagnostics ([#865](https://github.com/rokucommunity/brighterscript/pull/865))
280
+
281
+
282
+
283
+ ## [0.65.4](https://github.com/rokucommunity/brighterscript/compare/v0.65.3...v0.65.4) - 2023-07-24
284
+ ### Changed
285
+ - Install `v8-profiler-next` on demand instead of being a dependency ([#854](https://github.com/rokucommunity/brighterscript/pull/854))
286
+
287
+
288
+
289
+ ## [0.65.3](https://github.com/rokucommunity/brighterscript/compare/v0.65.2...v0.65.3) - 2023-07-22
290
+ ### Changed
291
+ - Show busy spinner for lsp builds. Remove `build-status` event in favor of new `busy-status` ([#852](https://github.com/rokucommunity/brighterscript/pull/852))
292
+ - upgrade to [roku-deploy@3.10.3](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3103---2023-07-22). Notable changes since 3.10.2:
293
+ - Bump word-wrap from 1.2.3 to 1.2.4 ([roku-deploy#117](https://github.com/rokucommunity/roku-deploy/pull/117))
294
+ - Bump word-wrap from 1.2.3 to 1.2.4 ([#851](https://github.com/rokucommunity/brighterscript/pull/851))
295
+
296
+
297
+
298
+ ## [0.65.2](https://github.com/rokucommunity/brighterscript/compare/v0.65.1...v0.65.2) - 2023-07-17
299
+ ### Added
300
+ - beforeProgramDispose event ([#844](https://github.com/rokucommunity/brighterscript/pull/844)), ([#845](https://github.com/rokucommunity/brighterscript/pull/845))
301
+ - profiling support to the cli via the `--profile` flag ([#833](https://github.com/rokucommunity/brighterscript/pull/833))
302
+ ### Changed
303
+ - Make component ready on afterScopeCreate ([#843](https://github.com/rokucommunity/brighterscript/pull/843))
304
+ - Add project index to language server log entries ([#836](https://github.com/rokucommunity/brighterscript/pull/836))
305
+ - Prevent crashing when diagnostic is missing range. ([#832](https://github.com/rokucommunity/brighterscript/pull/832))
306
+ - Prevent crash when diagnostic is missing range ([#831](https://github.com/rokucommunity/brighterscript/pull/831))
307
+ - Add baseline interface docs ([#829](https://github.com/rokucommunity/brighterscript/pull/829))
308
+
309
+
310
+
311
+ ## [0.65.1](https://github.com/rokucommunity/brighterscript/compare/v0.65.0...v0.65.1) - 2023-06-09
312
+ ### Fixed
313
+ - injection of duplicate super calls into classes ([#823](https://github.com/rokucommunity/brighterscript/pull/823))
314
+
315
+
316
+
317
+ ## [0.65.0](https://github.com/rokucommunity/brighterscript/compare/v0.64.4...v0.65.0) - 2023-05-17
318
+ ### Changed
319
+ - npm audit fixes. upgrade to coveralls-next ([43756d8](https://github.com/rokucommunity/brighterscript/commit/43756d8))
320
+ - Improve findChild and findAncestor AST methods ([#807](https://github.com/rokucommunity/brighterscript/pull/807))
321
+
322
+
323
+
324
+ ## [0.64.4](https://github.com/rokucommunity/brighterscript/compare/v0.64.3...v0.64.4) - 2023-05-10
325
+ ### Changed
326
+ - upgrade to [roku-deploy@3.10.2](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3102---2023-05-10). Notable changes since 3.10.1:
327
+ - Fix audit issues ([roku-deploy#116](https://github.com/rokucommunity/roku-deploy/pull/116))
328
+ - fix nodejs 19 bug ([roku-deploy#115](https://github.com/rokucommunity/roku-deploy/pull/115))
329
+
330
+
331
+
332
+ ## [0.64.3](https://github.com/rokucommunity/brighterscript/compare/v0.64.2...v0.64.3) - 2023-04-28
333
+ ### Changed
334
+ - Improves performance in symbol table fetching ([#797](https://github.com/rokucommunity/brighterscript/pull/797))
335
+
336
+
337
+
338
+ ## [0.64.2](https://github.com/rokucommunity/brighterscript/compare/v0.64.1...v0.64.2) - 2023-04-18
339
+ ### Fixed
340
+ - namespace-relative enum value false positive diagnostic ([#793](https://github.com/rokucommunity/brighterscript/pull/793))
341
+
342
+
343
+
344
+ ## [0.64.1](https://github.com/rokucommunity/brighterscript/compare/v0.64.0...v0.64.1) - 2023-04-14
345
+ ### Changed
346
+ - Bump xml2js from 0.4.23 to 0.5.0 ([#790](https://github.com/rokucommunity/brighterscript/pull/790))
347
+ - upgrade to [roku-deploy@3.10.1](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3101---2023-04-14). Notable changes since 3.10.0:
348
+ - Bump xml2js from 0.4.23 to 0.5.0 ([roku-deploy#112](https://github.com/rokucommunity/roku-deploy/pull/112))
349
+
350
+
351
+
352
+ ## [0.64.0](https://github.com/rokucommunity/brighterscript/compare/v0.63.0...v0.64.0) - 2023-04-04
353
+ ### Changed
354
+ - Fix namespace-relative items ([#789](https://github.com/rokucommunity/brighterscript/pull/789))
355
+
356
+
357
+
358
+ ## [0.63.0](https://github.com/rokucommunity/brighterscript/compare/v0.62.0...v0.63.0) - 2023-03-31
359
+ ### Changed
360
+ - Wrap transpiled template strings in parens ([#788](https://github.com/rokucommunity/brighterscript/pull/788))
361
+ - Simplify the ast range logic ([#784](https://github.com/rokucommunity/brighterscript/pull/784))
362
+
363
+
364
+
365
+ ## [0.62.0](https://github.com/rokucommunity/brighterscript/compare/v0.61.3...v0.62.0) - 2023-03-16
366
+ ### Added
367
+ - `severityOverride` option ([#725](https://github.com/rokucommunity/brighterscript/pull/725))
368
+ - Optional chaining assignment validation ([#782](https://github.com/rokucommunity/brighterscript/pull/782))
369
+ ### Changed
370
+ - Fix transpile bug with optional chaning ([#781](https://github.com/rokucommunity/brighterscript/pull/781))
371
+ - Fix crash when func has no block ([#774](https://github.com/rokucommunity/brighterscript/pull/774))
372
+ - Move not-referenced check into ProgramValidator ([#773](https://github.com/rokucommunity/brighterscript/pull/773))
373
+ - upgrade to [roku-deploy@3.10.0](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#3100---2023-03-16). Notable changes since 3.9.3:
374
+ - Use micromatch instead of picomatch ([roku-deploy#109](https://github.com/rokucommunity/roku-deploy/pull/109))
375
+
376
+
377
+
378
+ ## [0.61.3](https://github.com/rokucommunity/brighterscript/compare/v0.61.2...0.61.3) - 2023-01-12
379
+ ### Changed
380
+ - Add diagnostic for passing more than 5 arguments to a callFunc ([#765](https://github.com/rokucommunity/brighterscript/pull/765))
381
+ - upgrade to [roku-deploy@3.9.3](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#393---2023-01-12)
382
+
383
+
384
+
385
+ ## [0.61.2](https://github.com/rokucommunity/brighterscript/compare/v0.61.1...0.61.2) - 2022-12-15
386
+ ### Changed
387
+ - Bump qs from 6.5.2 to 6.5.3 ([#758](https://github.com/rokucommunity/brighterscript/pull/758))
388
+
389
+
390
+
391
+ ## [0.61.1](https://github.com/rokucommunity/brighterscript/compare/v0.61.0...0.61.1) - 2022-12-07
392
+ ### Fixed
393
+ - Ensure enums and interfaces persist in typedefs ([#757](https://github.com/rokucommunity/brighterscript/pull/757))
394
+
395
+
396
+
397
+ ## [0.61.0](https://github.com/rokucommunity/brighterscript/compare/v0.60.6...0.61.0) - 2022-12-05
398
+ ### Added
399
+ - new `removeParameterTypes` option that removes type information from parameters when transpiling ([#744](https://github.com/rokucommunity/brighterscript/pull/744))
400
+ ### Fixed
401
+ - throttle transpiling to prevent crashes ([#755](https://github.com/rokucommunity/brighterscript/pull/755))
402
+ - exception while validating continue statement ([#752](https://github.com/rokucommunity/brighterscript/pull/752))
403
+ - add missing visitor params for DottedSetStatement ([#748](https://github.com/rokucommunity/brighterscript/pull/748))
404
+ - flag incorrectly nested statements ([#747](https://github.com/rokucommunity/brighterscript/pull/747))
405
+
406
+
407
+
408
+ ## [0.60.6](https://github.com/rokucommunity/brighterscript/compare/v0.60.5...0.60.6) - 2022-11-08
409
+ ### Fixed
410
+ - double `super` call transpile in subclasses ([#740](https://github.com/rokucommunity/brighterscript/pull/740))
411
+ - issues with Roku doc scraper and adds missing components ([#736](https://github.com/rokucommunity/brighterscript/pull/736))
412
+
413
+
414
+
415
+ ## [0.60.5](https://github.com/rokucommunity/brighterscript/compare/v0.60.4...0.60.5) - 2022-11-03
416
+ ### Changed
417
+ - Refactor SymbolTable and AST parent logic so that SymbolTables get their parent symbol table from its own (AstNode) ([#732](https://github.com/rokucommunity/brighterscript/pull/732))
418
+ ### Fixed
419
+ - Significant performance boost in `validate()` by caching `getCallableByName` ([#739](https://github.com/rokucommunity/brighterscript/pull/739))
420
+ - Add diagnostic when using namespaces as variables ([#738](https://github.com/rokucommunity/brighterscript/pull/738))
421
+ - Fix crash in `getDefinition` ([#734](https://github.com/rokucommunity/brighterscript/pull/734))
422
+
423
+
424
+
425
+ ## [0.60.4](https://github.com/rokucommunity/brighterscript/compare/v0.60.3...0.60.4) - 2022-10-28
426
+ ### Changed
427
+ - Add `name` to symbol table ([#728](https://github.com/rokucommunity/brighterscript/pull/728))
428
+ ### Fixed
429
+ - Allow `continue` as local var ([#730](https://github.com/rokucommunity/brighterscript/pull/730))
430
+ - language server semanticToken request now waits until validate finishes ([#727](https://github.com/rokucommunity/brighterscript/pull/727))
431
+
432
+
433
+
434
+ ## [0.60.3](https://github.com/rokucommunity/brighterscript/compare/v0.60.2...0.60.3) - 2022-10-20
435
+ ### Changed
436
+ - better parse recovery for unknown function parameter types ([#722](https://github.com/rokucommunity/brighterscript/pull/722))
437
+
438
+
439
+
440
+ ## [0.60.2](https://github.com/rokucommunity/brighterscript/compare/v0.60.1...0.60.2) - 2022-10-18
441
+ ### Fixed
442
+ - if statement block var bug ([#698](https://github.com/rokucommunity/brighterscript/pull/698))
443
+
444
+
445
+
446
+ ## [0.60.1](https://github.com/rokucommunity/brighterscript/compare/v0.60.0...0.60.1) - 2022-10-18
447
+ ### Fixed
448
+ - Beter location for bs1042 ([#719](https://github.com/rokucommunity/brighterscript/pull/719))
449
+
450
+
451
+
452
+ ## [0.60.0](https://github.com/rokucommunity/brighterscript/compare/v0.59.0...0.60.0) - 2022-10-10
453
+ ### Added
454
+ - goto definition for enum statements and enum members ([#715](https://github.com/rokucommunity/brighterscript/pull/715))
455
+ - nested namespace support ([#708](https://github.com/rokucommunity/brighterscript/pull/708))
456
+ ### Changed
457
+ - upgrade to [roku-deploy@3.9.2](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#392---2022-10-03). Notable changes since 3.9.1:
458
+ - Replace minimatch with picomatch ([roku-deploy#101](https://github.com/rokucommunity/roku-deploy/pull/101))
459
+ ### Fixed
460
+ - fixes signature help resolution for callexpressions ([#707](https://github.com/rokucommunity/brighterscript/pull/707))
461
+ - Fix transpilation of simple else block with leading comment ([#712](https://github.com/rokucommunity/brighterscript/pull/712))
462
+
463
+
464
+
465
+ ## [0.59.0](https://github.com/rokucommunity/brighterscript/compare/v0.58.0...0.59.0) - 2022-10-03
466
+ ### Added
467
+ - `isThrowStatement` reflection function ([#709](https://github.com/rokucommunity/brighterscript/pull/709))
468
+ - Support `pkg:/` paths for `setFile` ([#701](https://github.com/rokucommunity/brighterscript/pull/701))
469
+ - Syntax and transpile support for continue statement ([#697](https://github.com/rokucommunity/brighterscript/pull/697))
470
+ ### Changed
471
+ - Migrate to `stagingDir` away from `stagingFolder` ([#706](https://github.com/rokucommunity/brighterscript/pull/706))
472
+ ### Fixed
473
+ - Fix enum error for negative values ([#703](https://github.com/rokucommunity/brighterscript/pull/703))
474
+
475
+
476
+
477
+ ## [0.58.0](https://github.com/rokucommunity/brighterscript/compare/v0.57.2...0.58.0) - 2022-09-23
478
+ ### Added
479
+ - AST child searching functionality. ([#695](https://github.com/rokucommunity/brighterscript/pull/695))
480
+ - `stagingFolderPath` option to the docs ([f521066](https://github.com/rokucommunity/brighterscript/commit/f521066))
481
+ - Create common ancestor for Expression and Statement ([#693](https://github.com/rokucommunity/brighterscript/pull/693))
482
+ ### Fixed
483
+ - Scope validation performance boost ([#656](https://github.com/rokucommunity/brighterscript/pull/656))
484
+ - Finds and includes more deeply embedded expressions ([#696](https://github.com/rokucommunity/brighterscript/pull/696))
485
+ ### Changed
486
+ - Rename refs to `isClassFieldStatement` and `isClassMethodStatement` ([#694](https://github.com/rokucommunity/brighterscript/pull/694))
487
+ - Centralize file path normalization for Program ([#692](https://github.com/rokucommunity/brighterscript/pull/692))
488
+ - use outputPath instead of object reference during transpiling to prevent duplicate file collisions ([#691](https://github.com/rokucommunity/brighterscript/pull/691))
489
+ - Move file validation into BscPlugin ([#688](https://github.com/rokucommunity/brighterscript/pull/688))
490
+ - upgrade to [roku-deploy@3.9.1](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#391---2022-09-19). Notable changes since 3.8.1:
491
+ - Sync retainStagingFolder, stagingFolderPath with options. ([roku-deploy#100](https://github.com/rokucommunity/roku-deploy/pull/100))
492
+ - Add stagingDir and retainStagingDir. ([roku-deploy#99](https://github.com/rokucommunity/roku-deploy/pull/99))
493
+
494
+
495
+
496
+ ## [0.57.2](https://github.com/rokucommunity/brighterscript/compare/v0.57.1...0.57.2) - 2022-09-08
497
+ ### Fixed
498
+ - Fix `brightscript.configFile` workspace config bug ([#686](https://github.com/rokucommunity/brighterscript/pull/686))
499
+
500
+
501
+
502
+ ## [0.57.1](https://github.com/rokucommunity/brighterscript/compare/v0.57.0...0.57.1) - 2022-09-07
503
+ ### Fixed
504
+ - fix(parser): consider namespace function transpiled names ([#685](https://github.com/rokucommunity/brighterscript/pull/685))
505
+
506
+
507
+
508
+ ## [0.57.0](https://github.com/rokucommunity/brighterscript/compare/v0.56.0...0.57.0) - 2022-09-02
509
+ ### Added
510
+ - validation for files that are nested too deep ([#680](https://github.com/rokucommunity/brighterscript/pull/680))
511
+ ### Changed
512
+ - upgrade to [roku-deploy@3.8.1](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#381---2022-09-02). Notable changes since 3.7.1:
513
+ ### Fixed
514
+ - Allow `mod` as an aa prop([#684](https://github.com/rokucommunity/brighterscript/pull/684))
515
+ - coerce AA member identifier kinds to `TokenKind.Identifier` ([#684](https://github.com/rokucommunity/brighterscript/pull/684))
516
+ - Doc Scraper issues ([#585](https://github.com/rokucommunity/brighterscript/pull/585))
517
+ - Fix case sensitivity issue with `bs_const` values ([#677](https://github.com/rokucommunity/brighterscript/pull/677))
518
+
519
+
520
+
521
+ ## [0.56.0](https://github.com/rokucommunity/brighterscript/compare/v0.55.2...0.56.0) - 2022-08-23
522
+ ### Added
523
+ - validation for dimmed variables ([#672](https://github.com/rokucommunity/brighterscript/pull/672))
524
+ - "--lsp" flag to bsc to start an LSP server ([#668](https://github.com/rokucommunity/brighterscript/pull/668))
525
+ ### Fixed
526
+ - compile crash for scope-less files ([#674](https://github.com/rokucommunity/brighterscript/pull/674))
527
+ - parse error for malformed dim statement ([#673](https://github.com/rokucommunity/brighterscript/pull/673))
528
+ - allow const as variable name ([#670](https://github.com/rokucommunity/brighterscript/pull/670))
529
+ - crashes for language clients that don't support "workspace/configuration" requests ([#667](https://github.com/rokucommunity/brighterscript/pull/667))
530
+
531
+
532
+
533
+ ## [0.55.2](https://github.com/rokucommunity/brighterscript/compare/v0.55.1...0.55.2) - 2022-08-15
534
+ ### Fixed
535
+ - Dedupe code completions in components ([#664](https://github.com/rokucommunity/brighterscript/pull/664))
536
+
537
+
538
+
539
+ ## [0.55.1](https://github.com/rokucommunity/brighterscript/compare/v0.55.0...0.55.1) - 2022-08-07
540
+ ### Fixed
541
+ - scope-specific diagnostic grouping issue ([#660](https://github.com/rokucommunity/brighterscript/pull/660))
542
+ - typescript error for ast parent setting ([#659](https://github.com/rokucommunity/brighterscript/pull/659))
543
+
544
+
545
+
546
+ ## [0.55.0](https://github.com/rokucommunity/brighterscript/compare/v0.54.1...0.55.0) - 2022-08-03
547
+ ### Added
548
+ - a `toJSON` function to SymbolTable ([#655](https://github.com/rokucommunity/brighterscript/pull/655))
549
+ - link all brs AST nodes to parent onFileValidate ([#650](https://github.com/rokucommunity/brighterscript/pull/650))
550
+ - semantic token color for consts ([#654](https://github.com/rokucommunity/brighterscript/pull/654))
551
+ - go-to-definition support for const statements ([#653](https://github.com/rokucommunity/brighterscript/pull/653))
552
+ ### Changed
553
+ ### Fixed
554
+ - bug that wasn't transpiling const expressions when used inside assignment expressions ([#658](https://github.com/rokucommunity/brighterscript/pull/658))
555
+ - Performance boost: better function sorting during validation ([#651](https://github.com/rokucommunity/brighterscript/pull/651))
556
+ - broken plugin imports with custom cwd ([#652](https://github.com/rokucommunity/brighterscript/pull/652))
557
+
558
+
559
+
560
+ ## [0.54.1](https://github.com/rokucommunity/brighterscript/compare/v0.54.0...0.54.1) - 2022-07-22
561
+ ### Changed
562
+ - Fix bug in languageserver hover provider ([#649](https://github.com/rokucommunity/brighterscript/pull/649))
563
+
564
+
565
+
566
+ ## [0.54.0](https://github.com/rokucommunity/brighterscript/compare/v0.53.1...0.54.0) - 2022-07-22
567
+ ### Added
568
+ - hover for CONST references. ([#648](https://github.com/rokucommunity/brighterscript/pull/648))
569
+ - plugins can contribute completions ([#647](https://github.com/rokucommunity/brighterscript/pull/647))
570
+ - plugins can contribute hovers ([#393](https://github.com/rokucommunity/brighterscript/pull/393))
571
+ ### Changed
572
+ - Export some vscode interfaces ([#644](https://github.com/rokucommunity/brighterscript/pull/644))
573
+ - Better plugin docs ([#643](https://github.com/rokucommunity/brighterscript/pull/643))
574
+
575
+
576
+
577
+ ## [0.53.1](https://github.com/rokucommunity/brighterscript/compare/v0.53.0...0.53.1) - 2022-07-15
578
+ ### Fixed
579
+ - bug with codeactions at the edges of tokens. ([#642](https://github.com/rokucommunity/brighterscript/pull/642))
580
+ - nested namespace import codeActions bug. ([#641](https://github.com/rokucommunity/brighterscript/pull/641))
581
+
582
+
583
+
584
+ ## [0.53.0](https://github.com/rokucommunity/brighterscript/compare/v0.52.3...0.53.0) - 2022-07-14
585
+ ### Added
586
+ - New Language Feature: Constants ([#632](https://github.com/rokucommunity/brighterscript/pull/632))
587
+ ### Changed
588
+ - Flag top level statements ([#638](https://github.com/rokucommunity/brighterscript/pull/638))
589
+ - Flag usage of undefined variables ([#631](https://github.com/rokucommunity/brighterscript/pull/631))
590
+ - Use `util.createLocation`, not `Location.create()` ([#637](https://github.com/rokucommunity/brighterscript/pull/637))
591
+ - Better project detection by language server ([#633](https://github.com/rokucommunity/brighterscript/pull/633))
592
+
593
+
17
594
 
18
595
  ## [0.52.3](https://github.com/rokucommunity/brighterscript/compare/v0.52.2...v0.52.3) - 2022-06-14
19
596
  ### Fixed
@@ -39,20 +616,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
39
616
 
40
617
 
41
618
 
42
- ## [1.0.0-alpha.22](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha21...v1.0.0-alpha.22) - 2022-06-08
43
- ### Changed
44
- - all changes from [v0.52.0](#0520---2022-06-08)
45
- - all changes from [v0.51.4](#0514---2022-05-31)
46
- - all changes from [v0.51.3](#0513---2022-05-31)
47
- - all changes from [v0.51.2](#0512---2022-05-26)
48
- - all changes from [v0.51.1](#0511---2022-05-26)
49
- - all changes from [v0.51.0](#0510---2022-05-24)
50
- - all changes from [v0.50.2](#0502---2022-05-23)
51
- - all changes from [v0.50.1](#0501---2022-05-18)
52
- - all changes from [v0.50.0](#0500---2022-05-17)
53
-
54
-
55
-
56
619
  ## [0.52.0](https://github.com/rokucommunity/brighterscript/compare/v0.51.4...v0.52.0) - 2022-06-08
57
620
  ### Added
58
621
  - LanguageServer: Load projects based on bsconfig.json presence ([#613](https://github.com/rokucommunity/brighterscript/pull/613))
@@ -123,14 +686,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
123
686
 
124
687
 
125
688
 
126
- ## [1.0.0-alpha.21](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha20...v1.0.0-alpha.21) - 2022-05-02
127
- ### Added
128
- - allow enym types as function parameters ([#579](https://github.com/rokucommunity/brighterscript/pull/579))
129
- ### Changed
130
- - all changes from [v0.49.0](#0481---2022-05-02)
131
-
132
-
133
-
134
689
  ## [0.49.0](https://github.com/rokucommunity/brighterscript/compare/v0.48.1...v0.49.0) - 2022-05-02
135
690
  ### Added
136
691
  - allow interfaces and enums as function param types ([#580](https://github.com/rokucommunity/brighterscript/pull/580))
@@ -139,22 +694,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
139
694
 
140
695
 
141
696
 
142
- ## [1.0.0-alpha.20](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.19...v1.0.0-alpha.20) - 2022-04-28
143
- ### Changed
144
- - all changes from [v0.48.1](#0481---2022-04-14)
145
- - all changes from [v0.48.0](#0480---2022-04-13)
146
- - all changes from [v0.47.3](#0473---2022-04-08)
147
- - all changes from [v0.47.2](#0472---2022-04-07)
148
- - all changes from [v0.47.1](#0471---2022-04-05)
149
-
150
-
151
-
152
697
  ## [0.48.1](https://github.com/rokucommunity/brighterscript/compare/v0.48.0...v0.48.1) - 2022-04-14
153
698
  ### Fixed
154
699
  - prevent duplicate `CreateObject` validations showing one for each affected scope ([#568](https://github.com/rokucommunity/brighterscript/pull/568))
155
700
  - prevent `CreateObject` diagnostics for component library components ([#568](https://github.com/rokucommunity/brighterscript/pull/568))
156
701
 
157
702
 
703
+
158
704
  ## [0.48.0](https://github.com/rokucommunity/brighterscript/compare/v0.47.3...v0.48.0) - 2022-04-13
159
705
  ### Added
160
706
  - language support for native BrightScript optional chaining ([#546](https://github.com/rokucommunity/brighterscript/pull/546))
@@ -185,47 +731,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
185
731
 
186
732
 
187
733
 
188
- ## [1.0.0-alpha.19](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.18...v1.0.0-alpha.19) - 2022-03-30
189
- ### Added
190
- - all changes from [v0.47.0](#0470---2022-03-30)
191
-
192
-
193
-
194
734
  ## [0.47.0](https://github.com/rokucommunity/brighterscript/compare/v0.46.0...v0.47.0) - 2022-03-30
195
735
  ### Added
196
736
  - `require` flag to allow loading external node modules as part of the build process (useful for things like `ts-node/register`). ([#550](https://github.com/rokucommunity/brighterscript/pull/550), [#551](https://github.com/rokucommunity/brighterscript/pull/551))
197
737
 
198
738
 
199
739
 
200
- ## [1.0.0-alpha.18](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.17...v1.0.0-alpha.18) - 2022-03-24
201
- ### Added
202
- - Adds Symbol Tables to InterfaceTypes - general refactor of Interfaces ([#496](https://github.com/rokucommunity/brighterscript/pull/496))
203
- - all changes from [v0.46.0](#0460---2022-03-24)
204
- ### Changed
205
- - Renamed `FunctionType` => `TypedFunctionType` and `UniversalFunctionType` => `FunctionType` ([#542](https://github.com/rokucommunity/brighterscript/pull/542))
206
- ### Fixed
207
- - Prevent undefined showing up in type tracking ([#543](https://github.com/rokucommunity/brighterscript/pull/543))
208
- - Better handling of object types ([#544](https://github.com/rokucommunity/brighterscript/pull/544))
209
-
210
-
211
-
212
740
  ## [0.46.0](https://github.com/rokucommunity/brighterscript/compare/v0.45.6...v0.46.0) - 2022-03-24
213
741
  ### Changed
214
742
  - refactored try-catch statement to make the expressions and bodies easier to access via plugins. [#514](https://github.com/rokucommunity/brighterscript/pull/514)
215
743
 
216
744
 
217
745
 
218
- ## [1.0.0-alpha.17](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.16...v1.0.0-alpha.17) - 2022-03-17
219
- ### Added
220
- - `TypeExpression` which will eventually make it easier to parse all types across the project. ([#507](https://github.com/rokucommunity/brighterscript/pull/507)
221
- - support for multidimensional arrays ([#507](https://github.com/rokucommunity/brighterscript/pull/507)
222
- - all changes from [v0.45.3](#0453---2022-02-25)
223
- - all changes from [v0.45.4](#0454---2022-03-08)
224
- - all changes from [v0.45.5](#0455---2022-03-10)
225
- - all changes from [v0.45.6](#0456---2022-03-17)
226
-
227
-
228
-
229
746
  ## [0.45.6](https://github.com/rokucommunity/brighterscript/compare/v0.45.5...v0.45.6) - 2022-03-17
230
747
  ### Changed
231
748
  - upgrade to [roku-deploy@3.5.4](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#354---2022-03-17) which fixed significant performance issues during globbing. ([roku-deploy#86](https://github.com/rokucommunity/roku-deploy/pull/86))
@@ -256,15 +773,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
256
773
 
257
774
 
258
775
 
259
- ## [1.0.0-alpha.16](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.15...v1.0.0-alpha.16) - 2022-02-24
260
- ### Added
261
- - all changes from [v0.45.1](#0451---2022-02-16)
262
- - all changes from [v0.45.2](#0452---2022-02-24)
263
- ### Fixed
264
- - incorrect diagnostics when passing functions as parameters. ([#516](https://github.com/rokucommunity/brighterscript/pull/516), [#517](https://github.com/rokucommunity/brighterscript/pull/517))
265
-
266
-
267
-
268
776
  ## [0.45.2](https://github.com/rokucommunity/brighterscript/compare/v0.45.1...v0.45.2) - 2022-02-24
269
777
  ### Changed
270
778
  - add default token values in creators. [#520](https://github.com/rokucommunity/brighterscript/pull/520)
@@ -280,12 +788,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
280
788
 
281
789
 
282
790
 
283
- ## [1.0.0-alpha.15](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.14...v1.0.0-alpha.15) - 2022-02-14
284
- ### Added
285
- - all changes from [v0.45.0](#0450---2022-02-11)
286
-
287
-
288
-
289
791
  ## [0.45.0](https://github.com/rokucommunity/brighterscript/compare/v0.44.0...v0.45.0) - 2022-02-11
290
792
  ### Added
291
793
  - `enum` language feature ([#484](https://github.com/rokucommunity/brighterscript/pull/484))
@@ -297,13 +799,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
297
799
 
298
800
 
299
801
 
300
- ## [1.0.0-alpha.14](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.13...v1.0.0-alpha.14) - 2022-02-08
301
- ### Added
302
- - array type support for parameters and return types ([#499](https://github.com/rokucommunity/brighterscript/pull/499))
303
- - all changes from 0.43.0, 0.43.1, 0.44.0
304
-
305
-
306
-
307
802
  ## [0.44.0](https://github.com/rokucommunity/brighterscript/compare/v0.43.1...v0.44.0) - 2022-02-08
308
803
  ### Added
309
804
  - `onScopeValidate` plugin event useful when plugins want to contribute scope validations ([#505](https://github.com/rokucommunity/brighterscript/pull/505))
@@ -335,17 +830,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
335
830
  - move parse and validate events to `Program` class and out of `XmlFile` and `BrsFile`. This only impacts plugins that depend on the `afterFileParse`, `onFileValidate` and `afterFileValidate` events while also constructing those files with their constructors directly. ([#494](https://github.com/rokucommunity/brighterscript/pull/494))
336
831
  - removed internal [barrels](https://github.com/basarat/typescript-book/blob/master/docs/tips/barrel.md). This means plugins can no longer do things like: `import { something} from 'brighterscript/some-path'`. All necessary exports can be done from the top-level brighterscript package directly. ([#492](https://github.com/rokucommunity/brighterscript/pull/492))
337
832
  - use `Map` for `ClassValidator` class lookup instead of an object. ([#481](https://github.com/rokucommunity/brighterscript/pull/481))
338
- ### Fixed
339
- - bug preventing code to come after an interface statement. ([#493](https://github.com/rokucommunity/brighterscript/pull/493))
340
- - don't crash on null options in `printDiagnostics`. ([3147202](https://github.com/rokucommunity/brighterscript/commit/3147202b948d08be198255c068f082857c9de1f0))
341
-
342
-
343
833
 
344
- ## [1.0.0-alpha.13](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.12...v1.0.0-alpha.13) - 2022-01-10
345
- ### Added
346
- - all changes from [v0.42.0](#0420---2022-01-10)
347
834
 
348
835
 
836
+ ### Fixed
837
+ - bug preventing code to come after an interface statement. ([#493](https://github.com/rokucommunity/brighterscript/pull/493))
838
+ - don't crash on null options in `printDiagnostics`. ([3147202](https://github.com/rokucommunity/brighterscript/commit/3147202b948d08be198255c068f082857c9de1f0))
349
839
 
350
840
  ## [0.42.0](https://github.com/rokucommunity/brighterscript/compare/v0.41.6...v0.42.0) - 2022-01-10
351
841
  ### Added
@@ -380,56 +870,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
380
870
  - Allow diagnostic non-numeric disable code comments ([#463](https://github.com/rokucommunity/brighterscript/pull/463)).
381
871
 
382
872
 
383
-
384
- ## [1.0.0-alpha.12](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.11...v1.0.0-alpha.12) - 2021-10-17
385
- ### Added
386
- - all changes from [v0.41.2](#0411---2021-10-17)
387
-
388
-
389
-
390
873
  ## [0.41.2](https://github.com/rokucommunity/brighterscript/compare/v0.41.1...v0.41.2) - 2021-10-17
391
874
  ### Fixed
392
875
  - crash when subclass field has same name as ancestor method ([#460](https://github.com/rokucommunity/brighterscript/pull/460)).
393
876
 
394
877
 
395
878
 
396
- ## [v1.0.0-alpha.11](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.10...v1.0.0-alpha.11) - 2021-10-12
397
- ### Added
398
- - all changes from [v0.41.1](#0411---2021-10-07)
399
-
400
-
401
-
402
879
  ## [0.41.1](https://github.com/rokucommunity/brighterscript/compare/v0.41.0...v0.41.1) - 2021-10-07
403
880
  ### Fixed
404
881
  - parse issue with regex literals ([#458](https://github.com/rokucommunity/brighterscript/pull/458)).
405
882
 
406
883
 
407
884
 
408
- ## [1.0.0-alpha.10](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.9...v1.0.0-alpha.10) - 2021-09-27
409
- ### Added
410
- - all changes from [v0.41.0](#0410---2021-09-27)
411
- ### Changed
412
- - type system performance boost by caching symbol lookups for tokens ([#453](https://github.com/rokucommunity/brighterscript/pull/453))
413
-
414
-
415
-
416
- ## [1.0.0-alpha.9](https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.8...v1.0.0-alpha.9) - 2021-09-08
417
- ### Added
418
- - type checking in classes, including validation of method calls and deep finding of types
419
- - handle super.doSomething() calls in classes
420
- ### Fixed
421
- - issue with `m` and `m.top` code completion and validation
422
- - issue finding properties of `m` in grandparents
423
-
424
-
425
-
426
- ## [1.0.0-alpha.8] - 2021-08-02
427
- [1.0.0-alpha.8]: https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.7...v1.0.0-alpha.8
428
- ### Added
429
- - all changes from [v0.40.0](#0400---2021-08-02)
430
-
431
-
432
-
433
885
  ## [0.41.0](https://github.com/rokucommunity/brighterscript/compare/v0.40.1...v0.41.0) - 2021-09-27
434
886
  ### Added
435
887
  - Regex literal support in brighterscript ([#452](https://github.com/rokucommunity/brighterscript/pull/452)).
@@ -458,7 +910,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
458
910
  - add v30/bslCore library functions to global callables ([#433](https://github.com/rokucommunity/brighterscript/pull/433))
459
911
 
460
912
 
461
-
462
913
  ## [0.39.3](https://github.com/rokucommunity/brighterscript/compare/v0.39.2...v0.39.3) - 2021-06-01
463
914
  ### Changed
464
915
  - upgraded to [roku-deploy@3.4.1](https://github.com/rokucommunity/roku-deploy/blob/master/CHANGELOG.md#341---2021-06-01) which fixes bugs introduced in roku-deploy@3.4.0
@@ -471,20 +922,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
471
922
 
472
923
 
473
924
 
474
- ## [1.0.0-alpha.7] - 2021-05-17
475
- [1.0.0-alpha.7]: https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.6...v1.0.0-alpha.7
476
- ### Added
477
- - all changes from [v0.39.2](#0390---2021-05-28)
478
-
479
-
480
-
481
- ## [1.0.0-alpha.6] - 2021-05-17
482
- [1.0.0-alpha.6]: https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.5...v1.0.0-alpha.6
483
- ### Added
484
- - all changes from [v0.39.1](#0390---2021-05-24)
485
-
486
-
487
-
488
925
  ## [0.39.1](https://github.com/rokucommunity/brighterscript/compare/v0.39.0...v0.39.1) - 2021-05-24
489
926
  ### Changed
490
927
  - re-export `CodeActionKind` so plugins don't need to import from vscode-brightscript-language directly.
@@ -494,18 +931,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
494
931
 
495
932
 
496
933
 
497
- ## [1.0.0-alpha.5] - 2021-05-17
498
- [1.0.0-alpha.5]: https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.4...v1.0.0-alpha.5
499
- ### Added
500
- - all changes from [v0.39.0](#0390---2021-05-18)
501
- ### Changed
502
- - Add location tracking (range property) to all SceneGraph/XML nodes. ([#400](https://github.com/rokucommunity/brighterscript/pull/400))
503
- - Refactored SGComponent scripts, children, and interface properties into getter functions which are driven by the underlying XML AST. This means as you modify the AST, those getter functions will automatically reflect the changes. ([#400](https://github.com/rokucommunity/brighterscript/pull/400))
504
- - Refactored SGInterface properties fields and functions to getter functions which are driven by the underlying XML AST. ([#400](https://github.com/rokucommunity/brighterscript/pull/400))
505
- - Moved SGParser module functions onto the SGParser class itself to match the OO patterns in the rest of the project. ([#400](https://github.com/rokucommunity/brighterscript/pull/400))
506
-
507
-
508
-
509
934
  ## [0.39.0](https://github.com/rokucommunity/brighterscript/compare/v0.38.2...v0.39.0) - 2021-05-18
510
935
  ### Added
511
936
  - semantic token support for plugins
@@ -513,31 +938,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
513
938
 
514
939
 
515
940
 
516
- ## [1.0.0-alpha.4] - 2021-05-17
517
- [1.0.0-alpha.4]: https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.3...v1.0.0-alpha.4
518
- ### Added
519
- - all changes from [v0.38.2](#0380---2021-05-17)
520
-
521
-
522
-
523
941
  ## [0.38.2](https://github.com/rokucommunity/brighterscript/compare/v0.38.1...v0.38.2) - 2021-05-17
524
942
  ### Fixed
525
943
  - language server crash when namespaced function or class didn't have a name ([#419](https://github.com/rokucommunity/brighterscript/pull/419))
526
944
 
527
945
 
528
946
 
529
- ## [1.0.0-alpha.3]
530
- [1.0.0-alpha.3]: https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.2...v1.0.0-alpha.3
531
- ### Added
532
- - all changes from [v0.38.1](#0380---2021-05-14)
533
- ### Changed
534
- - rename `Program.addOrReplaceFile` to `Program.setFile` ([#405](https://github.com/rokucommunity/brighterscript/pull/405))
535
- - Unified global callables and function type param definitions ([#417](https://github.com/rokucommunity/brighterscript/pull/417))
536
- - Fix issue with global `Val` function where there were two global functions with same name and different params and return types ([#417](https://github.com/rokucommunity/brighterscript/pull/417))
537
- - move token-specific functions into `Parser.ts` ([#407](https://github.com/rokucommunity/brighterscript/pull/407))
538
-
539
-
540
-
541
947
  ## [0.38.1](https://github.com/rokucommunity/brighterscript/compare/v0.38.0...v0.38.1) - 2021-05-14
542
948
  ### Changed
543
949
  - SOURCE_FILE_PATH and SOURCE_LOCATION source literals are now string concatenations in order to avoid triggering Roku's static analysis rule against `file:/` protocol strings ([#415](https://github.com/rokucommunity/brighterscript/pull/415))
@@ -549,18 +955,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
549
955
 
550
956
 
551
957
 
552
- ## [1.0.0-alpha.2]
553
- [1.0.0-alpha.2]: https://github.com/rokucommunity/brighterscript/compare/v1.0.0-alpha.1...v1.0.0-alpha.2
554
- ### Added
555
- - all changes from [v0.38.0](#0380---2021-05-04)
556
- ### Changed
557
- - Rename pathAbsolute to srcPath ([#399](https://github.com/rokucommunity/brighterscript/pull/399))
558
- - Convert pkgPath to actual pkgPath (i.e. `pkg:/source/main.brs` where previously it would have been `source/main.brs` or `source\main.brs`) ([#399](https://github.com/rokucommunity/brighterscript/pull/399))
559
- - Simplify Program removeFile and addReplaceFile ([#399](https://github.com/rokucommunity/brighterscript/pull/399))
560
- - Add `normalizePath` parameter to file-related functions in `Program` and `Scope` ([#399](https://github.com/rokucommunity/brighterscript/pull/399))
561
-
562
-
563
-
564
958
  ## [0.38.0](https://github.com/rokucommunity/brighterscript/compare/v0.37.4...v0.38.0) - 2021-05-04
565
959
  ### Added
566
960
  - warning for mismatched class method accessibility ([#402](https://github.com/rokucommunity/brighterscript/pull/402))
@@ -568,23 +962,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
568
962
 
569
963
 
570
964
 
571
- ## [1.0.0-alpha.1]
572
- [1.0.0-alpha.1]: https://github.com/rokucommunity/brighterscript/compare/v0.37.4...v1.0.0-alpha.1
573
- ### Add
574
- - Type checking for function arguments ([#401](https://github.com/rokucommunity/brighterscript/pull/401))
575
- ### Changed
576
- - Refactor plugin events to emit an event object ([#397](https://github.com/rokucommunity/brighterscript/pull/397))
577
- - Remove `FunctionScope` ([#401](https://github.com/rokucommunity/brighterscript/pull/401))
578
- - Add `SymbolTable` and `LazyType` objects to improve type tracking ([#401](https://github.com/rokucommunity/brighterscript/pull/401))
579
-
580
-
581
-
582
- ## [0.37.4] - 2021-04-20
583
- ### Fixed
584
- - bug validating namespace function calls ([#390](https://github.com/rokucommunity/brighterscript/pull/390))
585
-
586
-
587
-
588
965
  ## [0.37.4](https://github.com/rokucommunity/brighterscript/compare/v0.37.3...v0.37.4) - 2021-04-20
589
966
  ### Fixed
590
967
  - bug validating namespace function calls ([#390](https://github.com/rokucommunity/brighterscript/pull/390))
@@ -1541,13 +1918,3 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1541
1918
  ## [0.1.0](https://github.com/rokucommunity/brighterscript/compare/v0.1.0...v0.1.0) - 2019-08-10
1542
1919
  ### Changed
1543
1920
  - Cloned from [brightscript-language](https://github.com/rokucommunity/brightscript-language)
1544
-
1545
-
1546
-
1547
-
1548
-
1549
-
1550
-
1551
-
1552
-
1553
-