Apostrophe2 v3.17.0 Release Notes
Release Date: 2022-03-31 // about 2 years ago-
โ Adds
- ๐ Full support for the
object
field type, which works just likearray
but stores just one sub-object as a property, rather than an array of objects. - ๐ป To help find documents that reference related ones via
relationship
fields, implement backlinks of related documents by adding arelatedReverseIds
field to them and keeping it up to date. There is no UI based on this feature yet but it will permit various useful features in the near future. - โ Adds possibility for modules to extend the webpack configuration.
- โ Adds possibility for modules to add extra frontend bundles for scss and js. This is useful when the
ui/src
build would otherwise be very large due to code used on rarely accessed pages. - Loads the right bundles on the right pages depending on the page template and the loaded widgets. Logged-in users have all the bundles on every page, because they might introduce widgets at any time.
- ๐ Fixes deprecation warnings displayed after running
npm install
, for dependencies that are directly included by this package. - ๐ Implement custom ETags emission when
etags
cache option is enabled. See the documentation for more information.
โก๏ธ It allows caching of pages and pieces, using a cache invalidation mechanism that takes into account related (and reverse related) document updates, thanks to backlinks mentioned above.
Note that for now, only single pages and pieces benefit from the ETags caching system (pages' and pieces'getOne
REST API route, and regular served pages).
The cache of an index page corresponding to the type of a piece that was just saved will automatically be invalidated. However, please consider that it won't be effective when a related piece is saved, therefore the cache will automatically be invalidated after the cache lifetime set inmaxAge
cache option.
๐ Fixes
- ๐ Apostrophe's webpack build now works properly when developing code that imports module-specific npm dependencies from
ui/src
orui/apos
when usingnpm link
to develop the module in question. - The
es5: true
option to@apostrophecms/asset
works again.
- ๐ Full support for the