Skip to content

Releases: kitajs/html

v3.0.5

30 Oct 02:38
d797e10
Compare
Choose a tag to compare

Important Changes

  • Improved performance
  • Added react benchmarks
  • meta property tag
  • More iframe attributes

Full Changelog: v3.0.4...v3.0.5

v3.0.4

17 Oct 15:29
f993aca
Compare
Choose a tag to compare

Important Changes

  • Added triple slash directives for error-boundary and suspense, allowing tools to detect and autoimport them.

Full Changelog: v3.0.3...v3.0.4

v3.0.3

13 Oct 18:09
d9f2f62
Compare
Choose a tag to compare

Important Changes

  • Added boolean selected for option tags in #47.
  • Fixed input minlength and maxlength.
  • Added decoding, srcset and loading for img tags.

Full Changelog: v3.0.2...v3.0.3

v3.0.2

07 Oct 16:08
c39aa72
Compare
Choose a tag to compare

Important Changes

New Contributors

Full Changelog: v3.0.1...v3.0.2

v3.0.1

02 Oct 20:56
a6f1221
Compare
Choose a tag to compare

Important changes

New Contributors

Full Changelog: v3.0.0...v3.0.1

v3.0.0

29 Sep 16:53
37b4e85
Compare
Choose a tag to compare

Breaking changes

Important Changes

  • Added Async Components, Suspense rendering and Error Boundary, read their respective documentation to learn more.
  • Added all SVG properties by @tpguy825 in #27.
  • Added Hotwire Turbo elements by @deriegle in #33.
  • Improved documentation almost everywhere.
  • Html.escapeHtml is a proxy for Bun.escapeHTML when using bun.
  • Fixed img height and width attributes type.
  • Fixed bun's bundle problem in #32.
  • Added 100% test coverage.
  • Improved performance of JSX in general and Fragments of around +20%.

New Contributors

Full Changelog: v2.2.2...v3.0.0

v2.2.2

15 Sep 01:19
Compare
Choose a tag to compare

Important Changes

  • Fixed disabled attribute.

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.1...v2.2.2

v2.2.1

14 Sep 22:13
Compare
Choose a tag to compare

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

14 Sep 21:07
Compare
Choose a tag to compare

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

11 Sep 18:30
Compare
Choose a tag to compare

Important Changes

  • Improved performance of toKebabCase and escapeHtml 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