AO Fluent HTML Any Changelog


Snapshot Notes

  • Added crossorigin attribute to <img> and <script>.
  • Replaced trim / nullIfEmpty boolean flags with normalizer and validator functions.
  • URL attributes are now trimmed and attribute will not be added when trims to empty.


Release Notes

  • Added tabindex attribute to remaining elements.
  • The autofocus attribute is now a global attribute.
  • Implemented <textarea>.
  • Changed <option> and <title> from MediaWritable to TextContent.
  • Moved all event attributes to a single package com.aoapps.html.any.attributes.event. Although the event categories provided by w3schools are conceptually helpful, they are not part of the HTML specification.
  • Implemented many more global attributes.
  • Added very thorough doctype checks for all HTML 5 elements and attributes.
  • Annotated javadocs @since HTML 5 for all HTML 5 elements and attributes.
  • Moved all attributes from com.aoapps.html.any.attributes.String to com.aoapps.html.any.attributes.text, making them now streamable.
  • Implemented more elements.
  • Added support for java.nio.charset.Charset.
  • Removed self-referential generics that were emulating self-types. Instead, manually overloading all methods. Although a bit tedious in the implementation, this cleans-up the API by removing unnecessary type parameter.
  • Removed DocumentMediaWriter.
  • Made AnyDocument.out private and deprecated the unsafe(…) methods. The unsafe(…) methods will remain, but their use is discouraged as it can be dangerous. Renamed getUnsafe() to getRawUnsafe().
  • Optimized AnyDocument.out via Coercion.optimize(Writer, null).
  • Indentation changed from tab to two-space for consistency with the new AO Checkstyle Config project, which itself is based on Google Java Style Guide.
  • Performed Checkstyle clean-up.


Release Notes

  • Fixed bug in DocumentMediaWriter.text() that incorrectly encoded suffix.


Release Notes

  • Renamed static test helper classes since does not directly provide unit tests.


Release Notes

  • value attributes no longer convert empty string to null, and thus value="" now works as expected.


Release Notes

  • Added onchange attribute to <select>.


Release Notes

  • Fixed NPE in streaming text encoding in MediaWriter.


Release Notes

  • Now supports Java 9+ modules with included module-info.class.
  • Maven artifact relocated from com.aoindustries:ao-fluent-html-any to com.aoapps:ao-fluent-html-any.
  • Package renamed from com.aoindustries.html.any to com.aoapps.html.any.


Release Notes

  • Split base abstract classes and interfaces into this new sub-project.