custom-elements-everywhere
custom-elements-everywhere copied to clipboard
Update dependency riot to v9
This PR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
riot (source) | 4.14.0 -> 9.4.5 |
Release Notes
riot/riot (riot)
v9.4.5
- Improve the types using the
withTypes
method https://github.com/riot/riot/issues/3046
v9.4.4
- Fix type definitions https://github.com/riot/riot/issues/3040 https://github.com/riot/riot/pull/3045
v9.4.3
v9.4.2
- Fix https://github.com/riot/riot/issues/3025
- Fix the e2e tests
- Update documentation regarding contributions. The
main
branch will be used for development and releases
v9.4.1
- Fix unmount DOM rendering in components without template https://github.com/riot/riot/issues/3025
v9.4.0
- Add experimental support for
ref
attributes https://github.com/riot/riot/issues/3015
v9.3.0
- Update the compiler and dom bindings to support slot fallback bindings https://github.com/riot/riot/issues/3014
v9.2.2
- Improve the compiler css selector replacement strategy
v9.2.1
- Fix broken selector scoping with css comments above the selectors
v9.2.0
- Add support for native nested CSS https://github.com/riot/riot/issues/3009
v9.1.8
- Update improve performance of internal array/object iterators
v9.1.7
- Fix https://github.com/riot/riot/issues/3011
- Update github actions
- Fix small typos in comments
v9.1.6
- Fix https://github.com/riot/riot/issues/3004
- Fix https://github.com/riot/riot/issues/3003 and https://github.com/riot/riot/issues/3005
- Add expose more internal/private APIs https://github.com/riot/riot/issues/2998 https://github.com/riot/riot/pull/2999
v9.1.5
- Fix https://github.com/riot/riot/issues/3000
- Update dependencies
v9.1.4
- Update riotjs dom bindings adding small optimizations and removing deprecated code to reduce the bundle size
- Update dev dependecies
v9.1.3
- Fix recursive props rendering on the root node https://github.com/riot/riot/issues/2994
- Fix saucelabs crossbrowser tests https://github.com/riot/riot/issues/2989
- Replace the deprecated karmajs dependency with a custom setup
- Update dev dependencies
- Update eslint config supporting newer ecma versions
v9.1.2
- Fix missing
@riotjs/dom-bindings
types - Update dependencies
v9.1.1
- Improve the order of the
exports
keys in thepackage.json
file
v9.1.0
- Improve compatibility with commonjs environments
- Improve the quality typescript declaration exports
- Update dev dependencies
v9.0.4
- Fix https://github.com/riot/riot/issues/2985
- Fix https://github.com/riot/riot/issues/2984
- Fix https://github.com/riot/riot/issues/2983
v9.0.3
- Fix disable the boolean attributes rendering on custom elements
- known boolean attributes are available only on existing html tags like
input
orselect
- known boolean attributes are available only on existing html tags like
v9.0.2
- Update node engine
>=18.0.0
value inpackage.json
v9.0.1
- Fix removal of falsy boolean attributes
v9.0.0
: Evergreen
V9 is almost fully backward compatible with previous versions of Riot.js. However, a few breaking changes have been made, which are listed below:
- Fix https://github.com/riot/riot/issues/2975
- Use Module Syntax Exports
- Reduce library size to 5.8kb
- Use Prettier to format the codebase
- Discontinued support for node versions older than v18
-
Breaking Change: Babel Code transpilation has been removed
- To target older browsers, you will need to transpile your Riot.js import within your app
-
Breaking Change: Non boolean falsy attributes will no longer be removed; instead, use
null
orundefined
(see also https://github.com/riot/riot/issues/2975). For example:-
<p is-active={false}>
-is-active
will no longer be removed. Use<p is-active={null}>
instead - Note that Riot.js will still automatically detect boolean attributes like
checked
orselected
and in that case remove them with falsy values
-
Several ecosystem packages have received major updates and the rest will be updated soon. Future versions of Riot.js ecosystem packages will be synchronized to avoid confusion. To use Riot.js v9, ensure that you install only v9 @riotjs packages.
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 is behind base branch, 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 was generated by Mend Renovate. View the repository job log.