Skip to content

Releases: riot/riot

v7.0.0

02 Aug 20:45
Compare
Choose a tag to compare
  • Update: code cleanup to improve the esm bundle and treeshaking
    • Remove: riot.esm.js in favor of the esm folder
  • Add: runtime slots #2917
    • The runtime slots are available in the riot+compiler.js bundle (A documentation update will be available soon)
  • Update: reduced bundle size to 5kb riot.min.js gzipped
  • Update: new Compiler (riot+compiler.js) bundle 50% lighter than the previous one

Important: The documentation will be updated during the next few weeks, however no API breaking changes were introduced.

v6.1.2

24 Jan 21:44
Compare
Choose a tag to compare

v6.1.1

17 Dec 20:14
Compare
Choose a tag to compare

v6.1.0

11 Dec 20:57
Compare
Choose a tag to compare
  • Update compiler
    • Components output code will use modern javascript (like arrow functions) reducing heavily their size
    • Components code output will be smaller due to compiler optimizations
  • Update dependencies

v6.0.4

19 Sep 19:01
Compare
Choose a tag to compare

v6.0.3

06 Aug 20:02
Compare
Choose a tag to compare
  • Fix tags with only named export statements. Their javascript will be properly generated also without an export default
  • Update @riotjs/dom-bindings types adding better typescript support

v6.0.2

29 Jul 20:01
Compare
Choose a tag to compare

v6.0.1

14 Jul 18:55
Compare
Choose a tag to compare
  • Update: update the @riotjs/compiler improving the typescript support for type aliases like export type ComponentInterface = RiotComponent<MyComponentProps, MyComponentState>

v6.0.0

11 Jul 12:49
Compare
Choose a tag to compare
  • Add strict typescript support #2912 Breaking Change: the Riot.js types have been updated
  • Add fallback rendering for slots #2920
  • Add typescript Parser as default compiler parser riot/compiler#149
  • Fix #2925
  • Fix typescript compilation #2926

If you are not a typescript user this release doesn't introduce any braking change. If you are a typescript user you can start writing Riot.js components as follows

<my-component>
  <p>{ state.greeting }{ props.username }</p>

  <!--
    Notice that lang="ts" does actually nothing.
    It's just needed to let your IDE interpret the below code as typescript.
    The riot compiler will ignore it
  -->
  <script lang="ts">
    import {withTypes, RiotComponent} from 'riot'

    export type MyComponentProps = {
      username: string
    }

    export type MyComponentState = {
      message: string
    }

    export type MyComponent = RiotComponent<MyComponentProps, MyComponentState>

    export default withTypes<MyComponent>({
      state: {
        message: 'hello'
      }
    })
  </script>
</my-component>

Many thanks to https://github.com/kachurun for his help on this major release

v5.4.5

13 Jun 17:53
Compare
Choose a tag to compare