- Improve output safety.
- HTML tags are now automatically escaped when they come from Ruby code.
- Add fragment support.
- Analogous to JSX fragments, eg.
<>foo</>
.
- Analogous to JSX fragments, eg.
- Add keyword argument support in HTML attributes.
- Eg.
<div {**kwargs} bar="baz">boo</div>
.
- Eg.
- Add ViewComponent slot support.
- Works via pseudo components that begin with
With
, eg.<MySlotComponent><WithItem>Item</WithItem></MySlotComponent>
.
- Works via pseudo components that begin with
- Allow printing
ruxc
results to STDOUT. - Support for unquoted attributes.
- Drop explicit support for Ruby versions < 3.
- Don't slugify HTML attributes in the tag builder either.
- Don't slugify HTML attributes.
- Previously rux would emit
<div data-foo="bar">
as<div data_foo="bar">
because it treated HTML attributes as if they were being passed as Ruby arguments, which don't allow dashes. If these arguments are passed to a component initializer, then they must be slugified, but HTML attributes shouldn't be affected.
- Previously rux would emit
- Remove newlines between elements. (@aalin, #3)
- Use modern AST format.
- Switch back to unparser v0.6.
- Fix bug causing
ArgumentError
s under Ruby 3.0.- Related: mbj/unparser#254
- Fix bug in default buffer implementation causing
TypeError
s when attempting to shovel in arrays.
- Birthday!