Skip to content

Releases: wapc/widl-js

Stream keyword on unary parameters and returns

12 Jan 23:20
Compare
Choose a tag to compare

What's Changed

  • Adding stream keyword on unary parameters and returns by @pkedy in #13

Full Changelog: v0.0.11...v0.0.12

Flagging imported definitions

15 Oct 19:53
Compare
Choose a tag to compare
v0.0.11

Flagging imported definitions

Misc fixes

15 Oct 18:45
Compare
Choose a tag to compare
v0.0.10

Fix imports above namespace in "namespace_first" rule. Few other misc…

Miscellaneous fixes

04 Jun 00:05
Compare
Choose a tag to compare
  • Added rules that check:
    • Only one namespace is defined and it must be at the top of the WIDL document
    • Only one interface can be defined
    • Allow ALIAS as a directive location
  • Fixed enumeration parsing of optional display string.
  • Added Annotated interface for use in the code generator.

Alias types

22 May 20:35
Compare
Choose a tag to compare

Alias syntax:

alias UUID = bytes

Aliases are similar to (and inspired by) Scalar types from GraphQL, but the difference is that Aliases target a primitive or user-defined type. The intention is mainly to help the a code generation module redirect an aliased type to an alternate type that is treated a specific way. For example, the alias of UUID = bytes might indicate that a byte array that should be treated as a UUID (16 bytes). The code generator would select the ideal internal type for its targeted programming language.

Added WIDL module template

20 May 13:59
Compare
Choose a tag to compare

You can now use the CLI to bootstrap a codegen plugin.

wapc new @wapc/widl/module my_module

cd my_module

npm install
npm run build

Misc fixes

15 May 13:33
Compare
Choose a tag to compare
  • Fixed required annotation error message
  • Making a return type optional (assumes void) and fixing validation rule for void returns
  • Disable camel case directive name rule
  • Fix descriptions over namespaces, imports, directives, interfaces and roles
  • Make parameters parenthesis options for directive definitions
  • Added parseType
  • Switch on kind improvement
  • Added annotation callback
  • novisit annotation for types and enums
  • Operation returns void validation fix
  • Required field from type in valid annotation check

Misc refactoring, imports, directive "requires", and validation

12 May 21:13
Compare
Choose a tag to compare

Add a few language features:

  • Imports - includes types and directives from a resolver function. In practice, this will load from ~/.wapc/definitions which is installed to wapc install (upcoming PR in the CLI)
  • Directive requires @other on TYPE | etc. syntax to target what other directives must exist in relation to it (validation forthcoming)

Refactored:

  • Added validate function that takes in configuration rules (which as visitors in rules)
  • Kinds are now an enum - no more instanceof
  • Organization of classes into definitions, nodes, types & values
  • More visitor hooks

Add isKind helper method to the AST

23 Apr 14:24
Compare
Choose a tag to compare
v0.0.4

Version bump to v0.0.4

Initial release

20 Mar 14:36
d86b5bc
Compare
Choose a tag to compare
Merge pull request #2 from wapc/initial_version

Initial version