Skip to content

Latest commit

 

History

History
862 lines (553 loc) · 61.9 KB

CHANGELOG.md

File metadata and controls

862 lines (553 loc) · 61.9 KB

Changelog

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.

Generated by auto-changelog.

Merged

  • fixes incorrect bslib #84

Commits

0.29.0 - 2023-04-25

Merged

  • fix: crash on node class #83

Commits

0.28.4 - 2023-03-20

Merged

  • fixes dot syntax not working with @sync #82

Commits

0.28.1 - 2023-03-03

Merged

  • Fix/node task return fix #81
  • feat(nodetask): can indicate maxTaskRetries on a generated task, and … #80

Commits

  • bump 13e6d66
  • adds tests to catch transpilation issues in nodetasks b943a36
  • adds library file to store large functions instead of injecting them into code 001422d
  • feat(nodetask): can indicate maxTaskRetries on a generated task, and also implement _execute method, to allow extending generated code with template method pattern 40bd9b6
  • fix(tasks): fixes problem in node task that resulted in duplicate finish callbacks. Also makes more streamlined d50d591

0.27.0 - 2023-02-22

Merged

  • feat(nodetask): can now simply return a value to propagate it #79

Commits

0.26.1 - 2023-02-21

Commits

0.26.0 - 2023-02-21

Merged

  • remove warning that's not needed #78
  • Adds support for injecting with default values and index dereferencin… #75
  • Fixes #76
  • Chore/upgrade bsc #73
  • Upgrade to bsc0.61.2, file api fixes #72
  • Fix tsc errors #71

Commits

  • update to bsc 0.59.0 5785730
  • wip e565b76
  • bump package log b453db8
  • Fix issues related to upgrading to bsc@0.61.2 6f10536
  • Adds support for injecting with default values and index dereferencing in as expressions 5dca51d
  • adds support for default enum values in node classes 70b2b4e
  • fixes nodeclass related issues de3a23c
  • fixes issues that prevented m method validations working 041b7c2
  • update package 1d4b02e
  • adds test for negative numbers on class fields 4e7560e
  • bsc update - test fix 1af8cc0
  • adds ability to transpile asNode to asAA for testing purposes 2757ad8
  • try fix build b3187c3
  • adds ability to transpile asNode to asAny for testing purposes, as that's better 6c54ab2
  • bump 8c6e304
  • fixing ci 10bef6c
  • Fix broken test ddbaa8e
  • fixes linting and tests 1952005
  • fixes wrong warning 289be99
  • try fix build c6be946
  • chore: removes some noisy logging 7a4268f
  • removes logging 7e370ee
  • Fixing CI 5b23757
  • update package.json 9a3aacd
  • Fix back-compat issue 1248505
  • try fix build 9576bb6
  • try fix build 969a35b
  • bump node on github runner 1b50bf4
  • fix error 4940d2d
  • try fix build 958b6e8
  • removes logging c17a536

0.25.7 - 2022-08-05

Merged

  • Fix/adds asnumber #64
  • Fix/include fields without public access modifiers as public on node classes #69

Commits

0.25.5 - 2022-08-01

0.25.4 - 2022-08-01

Merged

  • fixes peer dependency issue #68

0.25.3 - 2022-08-01

Merged

  • fix(core): addresses issues where enums or xml fields sporadically fail to be identified #67

Commits

0.25.2 - 2022-06-13

Merged

  • fix(nodeclasses): fixes crash on task #66

Commits

0.25.1 - 2022-06-13

Merged

  • feat(nodetask): adds suppport for auto-handling errors during execution #65

Commits

0.25.0 - 2022-06-07

Commits

0.24.0 - 2022-06-07

Merged

  • Performance fix: move replacePublicMFieldRefs to beforeProgramTranspile #63

Commits

  • bump c4fc3da
  • move replacePublicMFieldRefs to beforeProgramTranspile 08531f4
  • Remove unnecessary shouldParseFile call b679efa

0.23.2 - 2022-05-27

Merged

  • Fix/adds support for interface node fields #62

Commits

  • fixes bad package lock 715cdfd
  • fixes node field support for interface public fields d2f3230
  • bump af8def5

0.23.1 - 2022-05-26

Merged

  • getAllFields now returns Map to protect against js prototype collision #61
  • addresses serious performance regression #60
  • Use direct imports instead of import * #59

Commits

0.23.0 - 2022-05-26

Merged

  • Fix/support enums in node class public fields #58

Commits

  • fix(nodeclasses): supports enum values for public fields 3663198
  • Use addDiagnostics instead of direct array access a36f208
  • bump f4fd97c

0.22.3 - 2022-05-23

Merged

  • fix(core): does not check for namespac m injection on call expression… #57

Commits

  • fix(core): does not check for namespac m injection on call expressions with no dots 9a0063a

0.22.1 - 2022-05-23

Merged

  • fix(core): removes noisy logoutput and exception #56

Commits

0.22.0 - 2022-05-23

Merged

  • feat(core): adds support for asXXX(simpleValue) #55
  • Plugin cleanup #53
  • feat(core): adds support for @injectLocalM annotation, so that a func… #54
  • feat(core): adds diagnstocis for problems with mismatched observers #52

Commits

  • feat(core): adds support for @injectLocalM annotation, so that a function can indicate that the compiler should provide m, if not set manually 1d4d67c
  • Remove unused variables. 1a85dda
  • Remove references to builder 7a8ce22
  • bump 45e06ab
  • bump f032f84
  • better param name for FileFactory.addFile b792168
  • bump d583a13
  • remove errant .only f4e6049
  • fixes tests d289f1d

0.21.5 - 2022-05-10

Merged

  • Fix/fixes reflection regressoin #50

Commits

0.21.4 - 2022-05-08

0.21.3 - 2022-05-08

0.21.2 - 2022-05-08

0.21.1 - 2022-05-08

0.21.0 - 2022-05-08

Merged

  • optimizes lookups #48
  • fix(validation): correctly handles sitatuions where namespaces are in… #47
  • Better test code formatting #46
  • Fixes broken windows tests #45

Commits

  • Fix test indentation. 5f08a28
  • fix(validation): correctly handles sitatuions where namespaces are in multiple files when validationg if a namespace import is missing 1b3a3f5
  • Fix a few npm audit issues 998bb4a
  • enable windows tests in CI 6ac2841

0.20.3 - 2022-04-20

Merged

  • fixes validations stealing one of the params from observe calls, caus… #44

Commits

  • fixes validations stealing one of the params from observe calls, causing bad transpilation of observe/unobserve b3f6e87
  • bump a2ea616

0.20.2 - 2022-04-14

Merged

  • fix(imports): fixes crash when managing dynamic imports on bsc > 0.45.3 #43

Commits

0.20.1 - 2022-04-06

Merged

  • fixes incorrectly updating observenodefield invocations #41

Commits

0.20.0 - 2022-04-06

Merged

  • adds observe substitution #40

Commits

0.19.2 - 2022-04-05

Merged

  • fix: Fixes issue that prevented lines of code like: getAA(items[0].th… #39

Commits

  • bump cd9c92a
  • fix: Fixes issue that prevented lines of code like: getAA(items[0].thing.text) from transpiling 963d287

0.19.1 - 2022-04-04

Merged

  • Fix/as xxx start with as #38

Commits

  • fix(core): as_xxx methods must START with as_ to be considered 14999dc
  • bump c6a5dfe

0.19.0 - 2022-04-04

Merged

  • imrpoves error logging and diagnostics #37
  • Feat/as type support #36

Commits

  • adds support for swizzling asXXX functions, so that we can do instance invocations, as a polyfill for optional chaining 9a7f2b2

0.18.1 - 2022-02-26

Commits

0.18.0 - 2022-02-26

Merged

  • updates to bsc 0.45.2 #35

0.17.0 - 2022-02-14

Merged

  • Feat/adds root observer #33

Commits

  • feat(NodeClass): adds @rootObserver so that @observer annotations can specify to not callback when the root object did not change 96b297a
  • bump 143da89
  • bump ab79832

0.16.0 - 2022-01-30

Merged

  • Feat/observer injected fields #32
  • Chore/remove noisy timer #31

Commits

  • practically fixed f33aa8d
  • wip for observing injected values a51ccf9
  • adds handling for @sync annotation 062459d
  • chore: removes noisy timer 29a9444

0.15.3 - 2022-01-19

Merged

  • Fix import validation #30

Commits

  • fix(validation): fixes issues that caused the validator to go wrong in bsc > 0.41.6 e1d8eea
  • bump 4ec22c7
  • bump 4bd8fd7

0.15.2 - 2022-01-18

Merged

0.15.1 - 2022-01-13

Commits

0.15.0 - 2022-01-13

Merged

  • Feat/extra validations #28

Commits

  • feat(validation): adds extra validations for missing imports for class methods, classes, and namespaceS 9fe1b6b
  • bump 0eb49ea

0.14.0 - 2022-01-05

Merged

  • Feat/adds more options for validation xml gen #27

Commits

  • adds more options for tweaking validation/xml genearation c3d1d36
  • fixes options settings 2d2476f
  • version bump a7e6167
  • fixes failing tests fa4597b
  • do not exclude roku modules from validaitons, as default, if active d4cce0b

0.13.3 - 2021-11-07

Merged

  • Fix/fix crash on chekcing functions #24

Commits

  • version bump 350efaa
  • fix: fixes crash when changing types of functions 67f1f94

0.13.2 - 2021-10-29

Merged

  • chore: imrpoves logging #23

Commits

0.13.1 - 2021-10-21

Commits

0.13.0 - 2021-10-20

Merged

  • Reflection flags #22

Commits

  • update bsc 541a3ba
  • feat: adds config flags to allow files to be excluded from reflection lookup bd94e93
  • fix package lock 8d1194c
  • version bump df4344d
  • feat: ensure node classes generate inherited fields from super classes that did not have nodes f53148d
  • feat: adds flag to allow skipping of param stripping based on function names a6f6069
  • chore: remove noisy logs 27ef5a6
  • version bump e4c9471

0.12.1 - 2021-08-27

Merged

  • fix: improves stripping of types, changing reutrn types to functions … #21

Commits

  • fix: improves stripping of types, changing reutrn types to functions to dynamic, except where already explicitly void 80e14ad

0.12.0 - 2021-08-27

Merged

  • fix: improves handling of class types as nodeclass fields, defaulting… #20

Commits

  • fix: improves handling of class types as nodeclass fields, defaulting them to assocarray in generated xml, and raising diagnostics when unknown classes are referenced 3eea4d1
  • version bump 7934cdc
  • fix unit tests 6d9941e

0.11.0 - 2021-05-27

Merged

  • feat: enforce strict mode for classes, by default #19
  • fix: do not create observers for parent nodeclass fields #18

Commits

0.10.0 - 2021-05-22

Merged

  • Feat/strip as types #17

Commits

  • chore: tidies up readme and package f6419bf
  • version bump 721a950
  • feat: adds flag to allow stripping of type declarations on params 2274ee4

0.9.3 - 2021-05-18

Merged

  • fix: uses correct default values for wrapper functions #16

Commits

0.9.1 - 2021-05-18

Merged

  • fix: fixes issues with creating nodeclass test helpers #14

Commits

0.9.0 - 2021-05-17

Merged

  • feat: adds ability to generate node classes with injected global and … #13

Commits

  • feat: adds ability to generate node classes with injected global and top, for test scenarios: 6dfdbeb
  • bump version 2b4883c

0.8.1 - 2021-05-12

Merged

  • feat: can set fields on any node via virtual fields property, as a st… #12

Commits

  • feat: can set fields on any node via virtual fields property, as a step to deprecating styles in maestro-roku framework 78a0a71
  • version bump be32a7d
  • chore: ensure lf line ending 4be0602

0.8.0 - 2021-05-06

Merged

  • feat(mvvm): adds options to allow disabling of various types of xml/mvvm injected code #11

Commits

  • add some more app versions for debugging ff56016
  • adds options to allow disabling of various types of xml/mvvm injected code dac672b
  • version bump 023487a
  • change missing import keys to warning e960153

0.7.1 - 2021-05-03

Merged

  • fixes autogeneration of codebhind files, which was previously missing cascading imports #7

Commits

0.7.0 - 2021-04-29

Merged

  • Feat/autogenerate vm codebehind #6

Commits

  • adds package.lock ad7c11c
  • update package lock 83a8659
  • fix(tests): Fixes failing tests dc2fbbd
  • generate vm codebehind code, auomatically af96763
  • version bump 47a34ab
  • update readme 237e7ed
  • update readme 427efd2
  • fixes lint issues 15674b6
  • bump 2938497
  • feat(config): Adds addFrameworkFiles setting, to help with unit testing 2f4e9ae
  • remove some logs c2a3221
  • disable windows build for ci 2977c6b
  • minor tweak 3a9e3d1
  • do not publish coveralls (need to fix it) 8fda985
  • fix(bindings): Fixes incorrectly named binding function b0e18bf

0.6.3 - 2021-04-28

Commits

  • feat(nodeclass): Adds observerswaitinitialize annotation, which delays wiring up of observers until initialize is called on the parent class cb52a10
  • adds maestro sample project 78374a9

0.6.2 - 2021-04-26

Commits

  • adds lookups for everything in xml files that haves ids, not just for mvvm files 6f675b4
  • version bump d670bda
  • adds additional projects for debugging 32f3a4d
  • adds utility to create import statements df3467b
  • fix(mvvm): Imrpoves generated binding call, to go via vm 8d38082
  • ignores build folder c7acdc2

0.6.1 - 2021-04-22

Commits

  • do not validate node field observers that are from parent classes e81fb2c
  • bump 7d03ab1

0.6.0 - 2021-04-22

Commits

0.5.3 - 2021-04-22

Commits

  • bump 05bc101
  • nodeclass does not add 'data' field automatically anymore f866212

0.5.2 - 2021-04-22

Commits

  • fix(NodeClass): seems bsc has changed fields to case sensitive -fixes that issue f23bc3b
  • versoin bump 9bf5cd1

0.5.1 - 2021-04-22

Commits

  • fix(NodeClass): Nodeclasses will now include parent fields in their xml 7ab829b

0.5.0 - 2021-04-17

Commits

  • version bump e8fdd3d
  • updates nodeclass spec to ocnform with proposed bs nodeclass spec 3ba9adf
  • do not require constructor args for node classes 3191a0d
  • more class compliance changes 3d90c0d
  • fix(nodeClass): some optimizations, using event.getData() instead of rendezvous prone looking up on m.top 4686b89
  • check for public field existence when setting ioc values d1dcccf
  • Fixes bug with array public nodeclass fields 25d9472
  • changes @nodefunc tag to @func b8231cc
  • rmeove debug log f0230c1
  • includes id in topfield, automatically d9d1c2d

0.3.6 - 2021-03-04

Commits

  • improves log output for generated files d50747b

0.3.5 - 2021-03-02

Commits

  • fixes passing wrong args to nodeclass funcs, from wrappers d52c725
  • version bounce 354c3ce
  • do not add reflection code to files that should not be processed aef4c48

0.3.4 - 2021-03-01

Commits

  • ensure that __className is not added in subclasses and adds default params to nodefunc wrapper calls 1be2a56
  • version bounce 190ceba

0.3.3 - 2021-03-01

Commits

  • compile against latest bsc 54e2d61

0.3.2 - 2021-02-26

Commits

  • ensures correct transpilation of nodefield array values e8591a7
  • version bounce 02f52f3
  • Fixes issue with default aa values for node class fields 270c9dd
  • ensure validations take place fb4b576

0.3.1 - 2021-02-25

Commits

  • adds option to lazily create node class behind brs files, as this was causing the entire LSP to die ea1b81e
  • adds buildForIDE option, to guide the plugin to make better decisions about creating node files, as they can cause the ide to lock up 7187042
  • version bump 639b02b
  • version bump 6985010

0.3.0 - 2021-02-24

Commits

  • adds option to lazily create node class behind brs files, as this was causing the entire LSP to die bc798c9
  • adds scripts for easy remote/local npm switching 9c3bb7a
  • version bump b73ad83
  • adds option to lazily create node class behind brs files, as this was causing the entire LSP to die 3415b2d

0.2.6 - 2021-02-23

0.2.1 - 2021-02-24

Commits

  • adds additional method and field checks 693b3b7
  • clear out generated file diagnostics b75565c
  • adds option to lazily create node class behind brs files, as this was causing the entire LSP to die bc798c9
  • fix: ensure that full path is maintined for static bindings 87d5c43
  • adds scripts for easy remote/local npm switching 9c3bb7a
  • do not use public to infer node class api funcs, use @nodefunc annotation instead efeab99
  • do not add fields that are present in base nodes 4cc7d25
  • disables logging, do not error on __classname 741f20a
  • Adds more logging, and adds flag to allow to choose when xml binding code is injected, as the early strategy seems to degrade performance, and should only be used for debugging in specific scenarios d74ec70
  • fixes node classes not identifying parent xml comp 272b1cb
  • skip legit aa interface members 718892d
  • remove extranesou logigng 04f546f
  • fix: calls correct util method for getting static binding path c6f3d7b
  • fixes bad package config c39f787
  • bump to 0.2.6 8ae132b
  • data name clashed with internals of roku, moved back to json 7a3066a
  • filter out bad values in node class 783cf76
  • version bump b73ad83
  • adds option to lazily create node class behind brs files, as this was causing the entire LSP to die 3415b2d
  • remove debug log statement 5cce9da
  • version bounce 62bf844

0.2.0 - 2021-02-09

Commits

  • updated formatting and project to match roku community stanards 4bcfce0
  • initial commit d42f61e
  • refactored to use annotations and sg ast from bsc 1b4c916
  • some rejiggling 457cf19
  • fixes timing issues with binding diagnostics d376817
  • adds support for improved settings and improved function bindings: even alerts when function mismatches occur 656991d
  • adds support for reflection by adding __classname to all classes 0c45a6a
  • lots of goodness.. now has diagnostic support for most cases, and component based vmclass format 5d471cf
  • adds support for @stric mode, @inject, @injectClass and @useSetField langauge enhancements e87c07a
  • improves diagnostics - better handling of no id, and of function params checks 7732343
  • add support for node fields 9c6c260
  • adds node classes, and many other minor refactorings 9cd90cb
  • updated to use sync api 4d3e72b
  • various binding fixes 88f4d35
  • improves node classes - can now overlaod callbacks and select to debounce them 8bde12c
  • improves code generation efficiency with raw code statements 3eb90f9
  • cleanup vscode tasks 8b01e40
  • updates to latest brighterscript and adds support for binding function mapping to xml bindings eb2e884
  • fixes issues with annotations and parent classes 66e8941
  • fixes various binding diagnostic errors 697c4d4
  • adds ability to exclude files from processing via excludeFilters globs 14f3502
  • fixes up some issues around binding function args ade37bd
  • adds tag support. removes code from non-running tests to reduce overhead 70d3913
  • various tweaks to bring up to latest bsc version fa3b0ea
  • removes tslint 9f84c3f
  • fixes compile errors with latest bsc, and missing imports for node classes 211891a
  • add proper annotation support f6a888d
  • include vscode files 05929b9
  • vm bindings must be public a6d5a58
  • do not have diagnostics on any generated files 7e9e92b
  • udpated to be sync 43ea9b2
  • Create build.yml d307dd9
  • some minor fixes 0118758
  • Better params feedback 0a6fd4d
  • get reflection working 8f95e19
  • cleanup vscode tasks f60bab8
  • more bidning diagnostic improvements 4fcff01
  • fixes to ensure validations are accurate, with xml parser 4d5aae3
  • adds workspace 8ccb289
  • use maestro diagnostic namespace 82a3ac5
  • changes workspace colors (I have a lot of workspaces open) 4659a39
  • fixes compile error on lazy debounce callback e0ad254
  • moves stub project e3094c0
  • fixes reflection functions not getting generated 3d30ee4
  • import processor does not need to check for pkg existence 7fe640c
  • use maestro diagnostic namespace 995f49a
  • updated to latest bsc 8896a3d
  • line change f44c6c0
  • add run script 6d1440f
  • rename test to test-project e0cf6e1