Releases: JohnSundell/Plot
Plot 0.14.0
twitter:site
meta tag added by @harrydayexe in #92Aside
HTML component added by @Vithanco in #93<time>
element added by @harrydayexe in #86
Plot 0.13.0
This new version of Plot makes the library fully compatible with the Open Graph protocol, and includes neat new extensions added by the community.
- Compatibility with Open Graph protocol by @CoolONEOfficial in #88
- Add
crossorigin
link attribute by @davidrothera in #87 - Extend
<dl>
with<div>
wrapped groups by @nkalvi in #89
Plot 0.12.0
This new release of Plot is long overdue (very sorry about that!) and includes some great new features added by the community:
- Fix typo in the documentation for
EnvironmentValue
by @jordanekay in #83 - Adding
type
attribute toPictureSourceContext
by @fishcharlie in #76 - Replace
HTMLAnchorRelationship
enum withRawRepresentable
struct by @emorydunn in #75 - Chinese language variants added by @zgjie in #84
- Update README to mark a codeblock as being
swift
by @ptrkstr in #74 - Add the
dir
HTML attribute by @alobaili in #72 - Add
viewport-fit
to viewport meta tag by @hallee in #41 - Add support for the
object
tag by @AlexLike in #39
Plot 0.11.0
This release fixes two compatibility issues with Swift 5.6 and Xcode 13.3:
HTMLAnchorTarget.self
has been replaced with.current
, since usingself
for enum case names now yields a compiler warning. Backward compatibility for.self
is still maintained through a deprecated computed property, but all Plot users who are usingHTMLAnchorTarget.self
within their code bases are encouraged to switch to.current
as soon as possible.- A compiler error that could be triggered by using a custom
EnvironmentKey
with an optionalValue
type has been fixed.
Plot 0.10.0
- You can now define an RSS item's
description
using Plot nodes, which are then converted into HTML (by @daveverwer). - The
title
andspellcheck
attributes can now be natively attached to any HTML element (by @daveverwer). - The
type
attribute is now natively supported for HTML<button>
elements (by @daveverwer). - The rendering of boolean HTML attributes has been optimized, and are now often rendered without any value, further minimizing the overall footprint of the HTML that Plot generates (by @daveverwer).
This release also contains documentation fixes by @omaralbeik.
Plot 0.9.3
This release fixes a minor regression for documents rendered with indentation, in that text nodes would always be rendered on a new line. The previous (0.8.0 and earlier) rendering behavior has now been restored, and purely Text
-based components now also get this inline rendering behavior as well.
Plot 0.9.2
When appending attributes (such as a class
) to a custom component that uses a ComponentGroup
as its body
, those attributes are now appended individually to each of the group's members.
Plot 0.9.1
- The
content
namespace of generated RSS feeds now points to the correct URL (by @mwermeester). - You can now append attributes to custom component wrappers, and they will be added to the component's underlying element.
- Appending an empty attribute to a component no longer causes additional whitespace to be rendered.
Plot 0.9.0
This version of Plot introduces a brand new Component
API that can be used to build HTML components in a very SwiftUI-like way. It also includes a brand new rendering engine, the ability to append values to attributes, and more. All while maintaining complete backward compatibility with the existing API. Check out the "Components" section in the updated README to learn more about the new component-based API.
- Plot now uses Swift 5.4.
- The new
Component
protocol can be used to define HTML<body>
components in a very SwiftUI-like way. Node
is no longer an enum, and is now implemented as a struct instead, for added flexibility. This is the only potentially breaking change in this release, but will only affect API users that have been manually switching onNode
values, which is a highly unlikely scenario.- Values can now be appended to attributes (rather than overwriting them) by setting the
replaceExisting
property onAttribute
tofalse
. - Plot now natively supports the
<small>
element (by @daveverwer). - Attributes can now be attached to the
<hr>
element (by @daveverwer). - The
title
attribute can now be attached to any HTML<body>
element (by @daveverwer). - The
label
attribute can now be attached to the<option>
element (by @mredig). - HTML tables can now be natively grouped using
<thead>
,<tbody>
, and<tfoot>
(by @mredig). - The
<img>
element now natively supports thewidth
andheight
attributes (by @MainasuK). - Brazilian Portuguese has now been added to the
Language
enum (by @ednofedulo).
Plot 0.8.0
- All HTML body elements now support the
onclick
attribute (by @8W9aG). - HTML forms now support the
novalidate
attribute (by @julianschiavo). - HTML
<input>
elements now support theplaceholder
attribute (by @julianschiavo). - The HTML
aria-hidden
accessibility attribute is now natively supported (by @julianschiavo). - The HTML
<aside>
element is now natively supported (by @l1ghthouse). - HTML body and form elements can now be freely mixed, and elements that typically appear within a form (such as
<input>
) can now appear anywhere within a page's<body>
.
This release also includes documentation additions by @BastianInuk.