SemanticCMS Core Model Changelog

semanticcms-core-model-1.14.1

Release Notes

  • Updated dependencies.

semanticcms-core-model-1.14.0

Release Notes

  • Minimum Java version changed from 1.8 to 11.
  • Now supports Java 9+ modules with included module-info.class.

semanticcms-core-model-1.13.0

Release Notes

  • New methods for finding the first child element by class or interface, with optional additional filter.

semanticcms-core-model-1.12.0

Release Notes

  • Moved Freezable and FrozenException to AO Lang.

semanticcms-core-model-1.11.0

Release Notes

  • Minimum Java version changed from 1.7 to 1.8.
  • Reduced use of property substitutions in pom.xml. This is to help 3rd-party parsers that fail to perform full Maven-compatible substitutions.
  • No more appendLabel(Appendable out). It is a premature optimization and hinders the in-context translation ability to identify strings for mark-up.
  • Pages now contain per-page Web Resource Registries, which allows the declaration of per-page styles and scripts, along with their dependencies and ordering.
  • Fixed bug in PageRef to root folder of book throwing SecurityException.
  • Updated dependencies.

semanticcms-core-model-1.10.0

Release Notes

semanticcms-core-model-1.9.1

Release Notes

  • Using managed dependencies:
    1. This project uses managed dependencies.
    2. This project's managed dependencies may also be imported by other projects.

semanticcms-core-model-1.9.0

Release Notes

  • Minimum Java version changed from 1.6 to 1.7.
  • Removed the premature optimization of interning strings in references and identifiers. This was as likely to hurt as to help, and in either case it is off the radar in profiling, so going with the simpler implementation.
  • Changed type of Node.lock to Object to not export private class in public API.

semanticcms-core-model-1.8.2

Release Notes

  • Nodes, including both pages and elements, now have properties:
    1. Properties are a mapping from string name to object value.
    2. Properties are immutable and may not be changed once set.
    3. Properties may not be added to a frozen node.
  • Updated dependencies.

semanticcms-core-model-1.8.1

Release Notes

  • New AO OSS Parent POM to simplify pom.xml files.
  • Added support for dateCreated, datePublished, dateModified, and dateReviewed.
  • Added new dates to content view. The most recent date visible and the others in meta data only.
  • Project documentation moved to per-project book in SemanticCMS format.
  • Added changelog as top-level project link.

semanticcms-core-model-1.8.0

Release Notes

  • Improved Javadoc formatting.
  • Improved README formatting.
  • shortTitle may now be specified on a per-parent basis, for when the shortTitle only makes sense within the context of that specific parent. This is useful for navigation items such as breadcrumbs or trees.
  • Canonical URL is now set on a per-book basis.

semanticcms-core-model-1.7.1

Release Notes

  • Using latest releases of dependencies.

semanticcms-core-model-1.7.0

Release Notes

  • Improved Javadoc formatting.
  • Model now thread safe.
  • Avoiding calling writeTo when capturing.
  • Optimized id generation concurrency and efficiency by using ranges of ids in thread locals.
  • Each lock object now a small empty class to help identify lock contention.

    The lock contention profiler in NetBeans is just showing "java.lang.Object" all over, and can't seem to get from the lock object id to the actual object in the heap dump using OQL (id not found).

  • Improved concurrency through less locking.
  • Caching exists() implementation.
  • pageRef fields interned for great .equals performance during traversals.
  • New ElementRef object to represent a reference to a specific element on a page.

semanticcms-core-model-1.6

Release Notes

  • Use dependencyManagement instead of dependency for junit.
  • Now supporting per-page allowRobots setting.
  • Now all types of elements may be hidden.
  • PageRef natural ordering is now by servlet path.
  • Page natural ordering is now by PageRef.
  • A little more help in catching null pointer exceptions on ID generation.
  • Avoiding doubled-up periods in copyright toString.

semanticcms-core-model-1.5

Release Notes

  • Improved Maven configuration for Java EE 6 dependencies.

semanticcms-core-model-1.4

Release Notes

  • Implementation-specific book attributes changed to properties.
  • ID templates may now be determined by elements independently of their label.
  • No longer making the assumption pages contain HTML or even any form of XML.
  • Moved styles to separate package.
  • Created parent pom for all SemanticCMS components.
  • Requires latest version of aocode-public.

semanticcms-core-model-1.3

Release Notes

  • Now generating missing ids when first accesssed, not at the end of the page. This fixes bug where IDs were missing from elements.
  • To avoid easily making broken links, may no longer link to generated element ids.
  • Headings moved to own projects and renamed to "Section".
  • Passing args as Map<String, ?> instead of forcing Map<String, Object>
  • Pulled files out of core and made files be elements.

semanticcms-core-model-1.2

Release Notes

  • Renamed project from ao-web-page to semanticcms-core-model.

ao-web-page-1.1

Release Notes

  • Reverted to Java 1.6 for Android and Java EE 6 compatibility.

ao-web-page-1.0

Release Notes

  • Project moved to GitHub and Maven.