custom-elements-everywhere
custom-elements-everywhere copied to clipboard
Update dependency riot to v7
This PR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
riot (source) | 4.14.0 -> 7.1.0 |
Release Notes
riot/riot
v7.1.0
- Fix https://github.com/riot/riot/issues/2972
- Fix https://github.com/riot/riot/issues/2967 (enhance the previous patch)
- Fix https://github.com/riot/riot/issues/2969
- Update Riot.js has now 0 dependencies. All the needed dependencies will be bundled before the publishing on npm
- Update dev dependencies
v7.0.7
- Fix https://github.com/riot/riot/issues/2971
- Fix https://github.com/riot/riot/issues/2967 adding support for css complex pseudo selectors
- Fix
riot.version
wrong value in theesm
export - Fix circular dependencies
- Update improve rendering performance preferring loops over recursion for DOM manipulations
v7.0.6
- Update improve the deno compatibility adding the file extension to the
esm
files imports
v7.0.5
- Improve rendering performance
- Update development dependencies
v7.0.4
v7.0.3
- Fix https://github.com/riot/riot/issues/2962
- Improve memory and rendering performance of the dom-bindings
v7.0.2
v7.0.1
- Fix small bug computing text expressions in runtime slots
v7.0.0
- Update: code cleanup to improve the
esm
bundle and treeshaking- Remove:
riot.esm.js
in favor of theesm
folder
- Remove:
- Add: runtime
slots
https://github.com/riot/riot/discussions/2917- The runtime slots are available in the
riot+compiler.js
bundle (A documentation update will be available soon)
- The runtime slots are available in the
- 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
v6.1.1
- Fix compiler issues with object expressions https://github.com/riot/compiler/issues/155
v6.1.0
- 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
- Update dependencies
- Fix https://github.com/riot/riot/issues/2935
- Fix https://github.com/riot/riot/issues/2931
v6.0.3
- 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
- Fix small incompatibility with @riotjs/lazy
v6.0.1
- Update: update the
@riotjs/compiler
improving the typescript support for type aliases like export type ComponentInterface = RiotComponent<MyComponentProps, MyComponentState>
v6.0.0
- Add strict typescript support https://github.com/riot/riot/pull/2912 Breaking Change: the Riot.js types have been updated
- Add fallback rendering for
slots
https://github.com/riot/riot/issues/2920 - Add typescript Parser as default compiler parser https://github.com/riot/compiler/pull/149
- Fix https://github.com/riot/riot/issues/2925
- Fix typescript compilation https://github.com/riot/riot/issues/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
- Fix https://github.com/riot/riot/issues/2914 many thanks to @kachurun
- Fix template tags rendering with empty DOM https://github.com/riot/dom-bindings/pull/19
v5.4.4
v5.4.3
v5.4.2
- Fix
mount
andunmount
type declarations https://github.com/riot/riot/pull/2909 @kachurun - Fix Parent Tag access in lifecycle events https://github.com/riot/riot/pull/2910 @kachurun
v5.4.1
v5.4.0
- Update: replace the compiler
acorn
javascript parser with the (bigger but more modern)@babel/parser
- Add: typescript syntax support in Riot.js
<script>
tags
Notice:
Riot.js will not type check your components scripts nor transpile them. This version allows you to use the typescript
syntax without forcing the use of a typescript preprocessor, but type checking and transpilation should be handled with tools like babel
or ts-loader
You can check the new compiler here with the following demo component:
<random>
<h3>{ props.title }</h3>
<button onclick={ generate }>
Generate
</button>
<h1>
{ state.number }
</h1>
<logs logs={ state.logs } onclear={ clearLogs }></logs>
<script lang="ts">
import Logs from '../logs/logs.riot'
import {RandomComponent} from './types'
function Random(): RandomComponent {
return {
state: {
number: null,
logs: []
},
generate(event: MouseEvent): void {
this.update({
number: Math.floor(Math.random() * 10000),
logs: this.state.logs.concat({
text: `Generate button clicked. Event type is ${event.type}`
})
})
},
clearLogs(): void {
this.update({
logs: []
})
}
}
}
Random.components = {
Logs
}
export default Random
</script>
</random>
v5.3.3
v5.3.2
v5.3.1
- Fix https://github.com/riot/riot/issues/2895
- Update improve compiler legacy syntax support. The following syntax is now also supported
<my-component>
<p>{ state.message }</p>
<button onclick={onClick}>Click Me</button>
<script>
const context = this
context.state = {
message: ''
}
context.onBeforeMount = () => {
context.state.message = 'Hello'
}
context.onClick = () => {
context.update({
message: 'Goodbye'
})
}
</script>
</my-component>
v5.3.0
- Update improve support for legacy Riot.js syntax fixing some edge cases
- Update improve support for recursive tags
Now you can recursively render tags without having to register them globally
<recursive-tree>
<p>{ props.name }</p>
<recursive-tree
if={ props.children.length && props.children }
each={ child in props.children } { ...child }/>
</recursive-tree>
v5.2.0
- Add support for old style Riot.js syntax
Some liked more the old RIot.js syntax so you can now write components also as follows
<old-syntax>
<p>{ state.message }</p>
<button onclick={onClick}>Click Me</button>
<script>
this.onBeforeMount = () => {
this.state.message = 'Hello'
}
this.onClick = () => {
this.update({
message: 'Goodbye'
})
}
</script>
</old-syntax>
v5.1.4
- Fix nested loops in looped
<template>
fragments https://github.com/riot/riot/issues/2892
v5.1.3
- Fix mitigate redering issues https://github.com/riot/riot/issues/2892 issue (it's not completely fixed yet...)
v5.1.2
- Update default project branch name
master
->main
- Fix make sure pure components will not be automatically removed by Riot.js
if
oreach
directives
v5.1.1
v5.1.0
- Add support for
<template>
slot tags https://github.com/riot/riot/issues/2888 - Add improve debugging support, allowing shortcuts for the use of
console
methods in expressions: Before{window.console.log('hello')}
-> After{console.log('hello')}
- Improve rendering performance simplifying the compiler output
v5.0.0
This release is completely backward compatible, make sure to update the @riotjs/[email protected]
along with [email protected]
. All the Riot.js echosystem tools should keep working as expected without needing major release updates.
Changelog
- Replace the internal domdiff rendering engine with a fork of udomdiff
- Improve rendering performance
- Improve library size (-1kb)
- Improve Riot.js is side-effect free. Supports ES2015 exports also, hence fully tree-shakeable
- Fix https://github.com/riot/riot/issues/2878 browser globals in expressions are available only as
window
properties breaking change old{ location.href }
new{ window.location.href }
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
- [ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.