Module API Changelog
This section describes the changes made in each new release of @companion-module/base (the module API), and which version of Companion first supports these changes. Click on the links to read more about each topic.
API 2.0 (Companion 4.3+)
- Required changes
- Dropping support for Node 18
- @companion-module/base is now ESM
- Minimum @companion-module/tools version
- Remove
runEntrypointmethod - Required manifest type property
- Additional runtime checks for modules
- Updates to
setVariableDefinitions - Automatic expression parsing
- The
parseVariablesInStringmethod has been removed - Expression handling in options
- Using sensible values for options
- Expression handling in upgrade scripts
- Recommended cleanup for expressions
- Referencing expressions from `isVisibleExpression
- Presets overhaul
- Overhauling preset definition structure
- Local variables in presets
- Preset templating
- Dropping support for absolute delays in presets
- TypeScript reworking
InstanceBase<T>generic change- Strongly typed actions and feedbacks
- Miscellaneous changes
- New logging utility
- Control over UI order of actions and feedbacks
- Clarifying
this.checkFeedbacks()usage - Feedback lifecycle simplification
- Learn callback return value changes
- Replace action
optionsToIgnoreForSubscribewithoptionsToMonitorForSubscribe - Replacing
requiredproperty on some option field types - Bonjour query IPv6 support
- Convert 'isVisible' functions to 'isVisibleExpression'.
API 1.14 (Companion 4.2+)
- Automated layout for Config parameters
- Connection processes now include the label (name) of the connection
API 1.13 (Companion 4.1+)
- Variables in
textinputfields are now automatically parsed - Value-type feedbacks (support for local variables)
options:improvements: newdescriptionfield; multilinetextinputfield; "infinity" bounds fornumberfieldssecret-textfield-type for Configs- subscribe/unsubscribe: More flexibility for actions / less for feedbacks
API 1.12 (Companion 4.0+)
- Module permissions for enhanced security
- Expression syntax support for
isVisibleon option fields - Port-based filtering for Bonjour queries
- New utility methods for escape character handling
API 1.11 (Companion 3.5+)
API 1.10 (Companion 3.4+)
- Custom headlines for preset actions, feedbacks and steps
- Array support for merging multiple Bonjour queries
- Extended format support for feedback image buffers
API 1.8 (Companion 3.3+)
- Text preset type for organizing presets with headings
- Support for button-scoped local variables
- Shared UDP port listener for devices with hardcoded ports