Releases: kitajs/html
Releases · kitajs/html
v2.2.1
Important Changes
-
You may have to change some of your properties to kebab case
- Removed unused auto kebab feature. See #24.
Benchmark
- 2023-09-14T21:20:07.035Z
- Node: v18.15.0
- V8: 10.2.154.26-node.25
- OS: linux
- Arch: x64
Hello World
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.0094ms | 0.0164ms | 1.74x | 0.0038ms | 2.5x | 4.34x |
10000 | 1.1723ms | 2.9252ms | 2.5x | 1.278ms | 0.92x | 2.29x |
100000 | 8.8428ms | 20.1493ms | 2.28x | 2.7031ms | 3.27x | 7.45x |
Many Props
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.1971ms | 1.3064ms | 6.63x | 0.0036ms | 54.09x | 358.62x |
10000 | 166.2978ms | 938.6489ms | 5.64x | 0.9456ms | 175.87x | 992.66x |
100000 | 1693.7948ms | 8952.945ms | 5.29x | 4.292ms | 394.64x | 2085.96x |
Many Components
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.2237ms | 0.7488ms | 3.35x | 0.0072ms | 31.14x | 104.22x |
10000 | 171.0714ms | 500.6814ms | 2.93x | 1.449ms | 118.06x | 345.53x |
100000 | 1818.6258ms | 5277.3456ms | 2.9x | 9.2505ms | 196.6x | 570.49x |
Big Component
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.5231ms | 0.9827ms | 1.88x | 0.0059ms | 88.03x | 165.38x |
10000 | 131.2238ms | 829.1856ms | 6.32x | 0.9444ms | 138.95x | 878x |
100000 | 1346.2388ms | 7372.6771ms | 5.48x | 4.6654ms | 288.56x | 1580.29x |
Full Changelog: v2.2.0...v2.2.1
v2.2.0
Important Changes
- Index signature for attributes was removed by default. You now need to add
all-types
to your types. - Reduced the amount of characters needed to be escaped at attributes.
- Improved performance.
- Fixed missing register file.
- Improved package and security documentation.
Benchmark
- 2023-09-14T20:06:09.655Z
- Node: v18.15.0
- V8: 10.2.154.26-node.25
- OS: linux
- Arch: x64
Hello World
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.0088ms | 0.0177ms | 2.02x | 0.0066ms | 1.33x | 2.68x |
10000 | 0.9501ms | 3.2714ms | 3.44x | 0.6968ms | 1.36x | 4.7x |
100000 | 12.2114ms | 19.6453ms | 1.61x | 2.7776ms | 4.4x | 7.07x |
Many Props
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.2479ms | 1.3757ms | 5.55x | 0.0031ms | 79.8x | 442.91x |
10000 | 240.6256ms | 982.6665ms | 4.08x | 0.7723ms | 311.56x | 1272.37x |
100000 | 2436.4599ms | 10844.2049ms | 4.45x | 4.4179ms | 551.49x | 2454.59x |
Many Components
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.2174ms | 0.5805ms | 2.67x | 0.0058ms | 37.43x | 99.91x |
10000 | 169.6069ms | 665.6724ms | 3.92x | 1.5865ms | 106.91x | 419.6x |
100000 | 1747.2244ms | 5227.3891ms | 2.99x | 7.5666ms | 230.91x | 690.85x |
Big Component
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.2235ms | 0.8053ms | 3.6x | 0.0048ms | 46.53x | 167.64x |
10000 | 175.1073ms | 735.6298ms | 4.2x | 0.9891ms | 177.03x | 743.7x |
100000 | 1841.2463ms | 7872.5854ms | 4.28x | 5.1064ms | 360.58x | 1541.72x |
Full Changelog: v2.1.2...v2.2.0
v2.1.2
Important Changes
- Improved performance of
toKebabCase
andescapeHtml
up to 3x. See benchmark.
Benchmark
- 2023-09-11T18:08:10.527Z
- Node: v20.6.0
- V8: 11.3.244.8-node.14
- OS: linux
- Arch: x64
Hello World
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.0105ms | 0.0154ms | 1.47x | 0.0067ms | 1.57x | 2.3x |
10000 | 0.9791ms | 3.285ms | 3.36x | 0.5294ms | 1.85x | 6.21x |
100000 | 10.3421ms | 34.3962ms | 3.33x | 3.539ms | 2.92x | 9.72x |
Many Props
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.6015ms | 3.128ms | 5.2x | 0.0047ms | 127.98x | 665.53x |
10000 | 434.7339ms | 1408.6933ms | 3.24x | 0.94ms | 462.48x | 1498.61x |
100000 | 4323.8703ms | 13815.1441ms | 3.2x | 4.7838ms | 903.86x | 2887.9x |
Big Component
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.3384ms | 1.0461ms | 3.09x | 0.0049ms | 69.06x | 213.49x |
10000 | 277.77ms | 1003.0324ms | 3.61x | 1.1829ms | 234.82x | 847.94x |
100000 | 2721.9826ms | 9898.4646ms | 3.64x | 5.6384ms | 482.76x | 1755.55x |
Full Changelog: v2.1.1...v2.1.2
v2.1.1
Important changes
Benchmark
- 2023-09-11T06:33:17.036Z
- Node: v20.6.0
- V8: 10.2.154.26-node.26
- OS: darwin
- Arch: arm64
Hello World
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.0111ms | 0.0149ms | 1.34x | 0.0071ms | 1.56x | 2.1x |
10000 | 1.389ms | 4.3509ms | 3.13x | 0.5962ms | 2.33x | 7.3x |
100000 | 9.6386ms | 25.7452ms | 2.67x | 2.6383ms | 3.65x | 9.76x |
Many Props
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.8359ms | 2.4209ms | 2.9x | 0.0041ms | 203.88x | 590.46x |
10000 | 654.4648ms | 1696.169ms | 2.59x | 1.0713ms | 610.91x | 1583.28x |
100000 | 6022.4039ms | 13676.7311ms | 2.27x | 4.9011ms | 1228.79x | 2790.54x |
Big Component
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.4776ms | 1.0979ms | 2.3x | 0.0052ms | 91.85x | 211.13x |
10000 | 411.6375ms | 987.0599ms | 2.4x | 1.2778ms | 322.15x | 772.47x |
100000 | 3986.7891ms | 9863.4924ms | 2.47x | 6.9333ms | 575.02x | 1422.63x |
Full Changelog: v2.1.0...v2.1.1
v2.1.0
Important Changes
compile
type no longer requires explicit generic by @ethanniser in #19- Added HTMX typings to improve intellisense for htmx users.
- Made
html
andjsx
files importable to reduce overhead on weak bundle systems.
New Contributors
- @ethanniser made their first contribution in #19
Benchmark
- 2023-09-11T06:33:17.036Z
- Node: v20.6.0
- V8: 10.2.154.26-node.26
- OS: darwin
- Arch: arm64
Hello World
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.0111ms | 0.0149ms | 1.34x | 0.0071ms | 1.56x | 2.1x |
10000 | 1.389ms | 4.3509ms | 3.13x | 0.5962ms | 2.33x | 7.3x |
100000 | 9.6386ms | 25.7452ms | 2.67x | 2.6383ms | 3.65x | 9.76x |
Many Props
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.8359ms | 2.4209ms | 2.9x | 0.0041ms | 203.88x | 590.46x |
10000 | 654.4648ms | 1696.169ms | 2.59x | 1.0713ms | 610.91x | 1583.28x |
100000 | 6022.4039ms | 13676.7311ms | 2.27x | 4.9011ms | 1228.79x | 2790.54x |
Big Component
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.4776ms | 1.0979ms | 2.3x | 0.0052ms | 91.85x | 211.13x |
10000 | 411.6375ms | 987.0599ms | 2.4x | 1.2778ms | 322.15x | 772.47x |
100000 | 3986.7891ms | 9863.4924ms | 2.47x | 6.9333ms | 575.02x | 1422.63x |
Full Changelog: v2.0.1...v2.1.0
v2.0.1
Breaking Changes
html.compile
now only accepts functions, which is not backwards compatible withv1.x
, read mode.- Migrated namespace from
html
toHtml
(capital H), which reduces on naming collisions ashtml
is a pretty common variable name. - Added
@kitajs/html/register
to avoid the need of importingHtml
on each and every file. - Other things remained unchanged
Important Changes
- Improved performance and benchmarks.
Benchmark
- 2023-09-11T00:53:49.607Z
- Node: v18.16.0
- V8: 10.2.154.26-node.26
- OS: darwin
- Arch: arm64
Hello World
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.0063ms | 0.0107ms | 1.68x | 0.0013ms | 5.07x | 8.53x |
10000 | 1.632ms | 4.848ms | 2.97x | 0.9131ms | 1.79x | 5.31x |
100000 | 9.4629ms | 19.367ms | 2.05x | 2.3115ms | 4.09x | 8.38x |
Many Props
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.4629ms | 1.3898ms | 3x | 0.0025ms | 182.19x | 547.04x |
10000 | 372.5842ms | 840.7459ms | 2.26x | 0.6308ms | 590.66x | 1332.84x |
100000 | 3438.7935ms | 7706.0509ms | 2.24x | 3.7163ms | 925.32x | 2073.56x |
Big Component
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.3075ms | 0.8844ms | 2.88x | 0.0037ms | 81.99x | 235.85x |
10000 | 222.5096ms | 521.0473ms | 2.34x | 0.7118ms | 312.61x | 732.02x |
100000 | 2211.6316ms | 5229.3416ms | 2.36x | 4.1123ms | 537.82x | 1271.65x |
Full Changelog: v2.0.0...v2.0.1
v2.0.0
Breaking Changes
html.compile
now only accepts functions, which is not backwards compatible withv1.x
.- Other things remained unchanged.
Important Changes
html.compile
improved into a more suitable version, read mode.- Improved performance and benchmarks.
Benchmark
- 2023-09-11T00:53:49.607Z
- Node: v18.16.0
- V8: 10.2.154.26-node.26
- OS: darwin
- Arch: arm64
Hello World
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.0063ms | 0.0107ms | 1.68x | 0.0013ms | 5.07x | 8.53x |
10000 | 1.632ms | 4.848ms | 2.97x | 0.9131ms | 1.79x | 5.31x |
100000 | 9.4629ms | 19.367ms | 2.05x | 2.3115ms | 4.09x | 8.38x |
Many Props
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.4629ms | 1.3898ms | 3x | 0.0025ms | 182.19x | 547.04x |
10000 | 372.5842ms | 840.7459ms | 2.26x | 0.6308ms | 590.66x | 1332.84x |
100000 | 3438.7935ms | 7706.0509ms | 2.24x | 3.7163ms | 925.32x | 2073.56x |
Big Component
Runs | @kitajs/html | typed-html | + | .compile() | + / @kitajs/html | + / typed-html |
---|---|---|---|---|---|---|
10 | 0.3075ms | 0.8844ms | 2.88x | 0.0037ms | 81.99x | 235.85x |
10000 | 222.5096ms | 521.0473ms | 2.34x | 0.7118ms | 312.61x | 732.02x |
100000 | 2211.6316ms | 5229.3416ms | 2.36x | 4.1123ms | 537.82x | 1271.65x |
Full Changelog: v1.4.7...v2.0.0
v1.4.7
Important Changes
- Fixed declaration errors (#17)
- Added support for unknown attributes.
Full Changelog: v1.4.6...v1.4.7
v1.4.6
Important Changes
- Added
hgroup
. Thanks @florentulve. (#16)
New Contributors
- @florentulve made their first contribution in #16
Full Changelog: v1.4.5...v1.4.6
v1.4.5
- Fixed tests
- Removed unused key attribute
Full Changelog: v1.4.4...v1.4.5