Apostrophe 4.1.0 AI translation, new modal options, deeper doc comparisons, and fixes #4473
BoDonkey
announced in
Release Notes
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Happy Equinox, everyone 🌸🍂!
As the day and night reach a balance, we're thrilled to introduce our latest release, perfectly timed to bring you a fresh bloom of features as we step into a new season. Whether you're welcoming spring flowers or autumn leaves, we've got exciting updates to invigorate your experience.
With this release, we're celebrating a significant milestone with our on-cycle release of version 4.1.0! In case you missed it, the major version switch to version 4 occurred earlier this month with the Admin UI components shifting from using Vue 2 to Vue 3. For many projects, this will be an invisible change. For those developers who have custom components in their projects, we've made a handy migration guide. Feel free to reach out in Discord or through the support portal if you need assistance.
Speaking of the user interface, we've heard your feedback about the editing experience feeling a bit snug for some widgets. In response, we've introduced the ability to customize the width and position of your widget editing modals, giving you the breathing room you need to create with ease. Now your modals can originate from the left or right sides of the window and take multiple widths up to 100%.
The big news this release is two new Pro features that bring additional core changes with them. The first is
@apostrophecms-pro/automatic-translation
. This extension currently allows for the use of DeepL or Google Cloud Translation to translate the content of your pages during the localization process. While content managers still need to review translations prior to publication, this should provide a major improvement in workflow speed! Along with this Pro feature, we added two new handler events to core;beforeLocalize
andafterLocalize
. If you are interested in adding Pro features to your projects, please visit our new Apostrophe Workspaces where you can easily manage all of your projects.The second new Pro feature is a significant update to
@apostrophecms-pro/document-versions
. Now in addition to viewing past versions of a document, you can also display side-by-side comparisons displaying all or only changed schema fields. This is partially enabled by the newgetChanges()
method in the core@apostrophecms/schema
module.In addition to these great features and fixes to core, we have made improvements and fixes to several Pro and public extensions and not all were made by the Apostrophe team! The sanitize-html extension got a feature update thanks to community member Gauav Kumar. We are committed to open-source and invite all community members, no matter their experience level to contribute to the Apostrophe ecosystem!
If you haven't already updated after our announcement of the release of apostrophe v4.0.0, the update procedure is a little different this time. Before running
npm update
you will have to perform some light editing of yourpackage.json
file. You can check out the linked announcement for details. Note that we will be maintaining a version 3.x.x branch updated primarily with security fixes until April 2025, but new features may slowly no longer be compatible.For full details of this release, see the changelogs below. Note that some extensions were released along with the major v4.0.0 release to maintain compatibility and their release date is noted.
Apostrophe 4.1.0
Fixes
together with the advanced permission module.
addition of
enterUsername
andenterPassword
i18n fields for front end customization and localization.apos.task.getReq
now include areq.headers
property, forgreater accuracy and to prevent unexpected bugs in other code.
actually exists before calling
attachment.url
still lies with the developer.Adds
getChanges
method to the schema module to get an array of document changed field names instead of just a boolean like does theisEqual
method.Apostrophe 4.0.0 (2024-03-12)
Adds
beforeLocalize
andafterLocalize
events.apos.schema.addManagerIndicator({ component, props, if })
. The component registered this way will be automatically rendered in the manager modal.translation
module to support document translations via the@apostrophecms-pro/automatic-translation
module.The
translation
core module may be removed or refactored to reduce overhead in the core, so its presence shouldnot be relied upon.
Changes
There are no other backwards incompatible changes in apostrophe version 4.0.0.
Certain other modules containing custom admin UI have also been updated in a new major version to be compatible,
as noted in our announcement and on the migration page of our website.
Fixes
textStyle
to Tiptap types so that spans are rendered on RT initializationfield.help
andfield.htmlHelp
are now correctly translated when displayed in a tooltip.he
package to most recent version.Apostrophe modules
@apostrophecms/import-export
1.5.0This A3 module enables import and export of pages and pieces, with or without related documents such as files, images and other related types.
Changes
Fixes
req.mode
was alwayspublished
, even for draft documents.1.4.0 (2024-03-12)
Changes
@apostrophecms/redirect
1.5.0Manages site redirects for Apostrophe.
Changes
Bug fix to properly migrate older redirects missing a
targetLocale
property, and to tolerate situations where this property is irrelevant or makes reference to a locale that no longer exists in the system.statusCode
of the redirects were never fetched.@apostrophecms/scheduled-publishing
1.1.0This module allows you to schedule publishing of your pieces (which includes pages) on specific dates.
Fixes
Pro modules
@apostrophecms-pro/advanced-permission
3.0.1This module provides more granular control over content permission. It allows the creation of custom groups with proscribed abilities and the ability to assign users to as few or as many groups as desired. Users and groups can also be assigned per-document and per-locale permissions allowing for fine control of who can edit and publish any document. Explore our documentation to discover how this extension can enhance your project. Then, effortlessly integrate it through our new Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Fixes
can
method now verifies the publish permission forcreate
andedit
actions in published mode.the can method now keeps track of permissions already authorized.
3.0.0 (2024-03-12)
Changes
Security updates will continue to be available on the 3.x series of this module as long as Apostrophe 3.x is supported.
@apostrophecms-pro/automatic-translation
1.0.0This bundle allows automatic translation of documents (pages and pieces) when localizing content. It comes with two translation providers: Google Cloud Translation and DeepL, but it is also possible to configure your own providers. Explore our documentation to discover how this extension can enhance your project. Then, effortlessly integrate it through our new Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Adds
@apostrophecms-pro/data-set
2.0.0 (2024-03-12)This module provides an easy avenue for low-code data presentation. It creates a data-set piece for the import of comma-separated values (CSV) files. A separate widget allows for the dynamic selection of columns, and display of the data as an HTML table, or in other templates provided by the developer. Explore our documentation to discover how this extension can enhance your project. Then, effortlessly integrate it through our new Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Changes
Security updates will continue to be available on the 3.x series of this module as long as Apostrophe 3.x is supported.
@apostrophecms-pro/doc-template-library
2.0.0 (2024-03-12)This module solves the "blank page problem" for developers and product managers, and makes it faster for editors to create content. doc-template-library allows for the configuration of default widgets and pre-populated content on piece or page templates, and to re-use existing layouts. Explore our documentation to discover how this extension can enhance your project. Then, effortlessly integrate it through our new Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Changes
Security updates will continue to be available on the 3.x series of this module as long as Apostrophe 3.x is supported.
@apostrophecms-pro/document-versions
2.1.0This module automatically creates versions for your published documents (pages and pieces) and allows manual restore to any previously saved document version. Explore our documentation to discover how this extension can enhance your project. Then, effortlessly integrate it through our new Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Adds
/compare/:vid1/:vid2
apiRoute that can allow a developer to compare the schema of two documents. The returned object contains the combined schema of the two documents, as well as adocument
object that contains anaposMeta
object containing all of the schema fields that have been changed along with their value.2.0.0 (2024-03-12)
Changes
Security updates will continue to be available on the 3.x series of this module as long as Apostrophe 3.x is supported.
@apostrophecms-pro/multisite
3.15.0 (2024-02-28)This module lets you have many ApostropheCMS websites running on a single codebase in a single Node.js process. Each has its own database, users, media uploads, etc. Sites can be created and managed via a dashboard site. Explore our documentation to discover how this extension can enhance your project. Then, effortlessly integrate it through our new Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Adds
Older releases of Apostrophe will ignore the structured logger configuration. They will still produce log
output but the site generating the log entry will not be reflected.
@apostrophecms-pro/palette
4.0.1 (2024-03-12)An in-context interface for changing CSS.
@apostrophecms-pro/palette
is a module that provides an in-context interface for changing the values of developer-set CSS properties. The values are stored in an Apostrophe piece singleton (like @apostrophecms/global) and applied to the site whenever the stylesheet link is included in a template. Adjusting values via the palette interface renders changes to the site instantly. Explore our documentation to discover how this extension can enhance your project. Then, effortlessly integrate it through our new Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.Fixes
4.0.0 (2024-03-12)
Changes
0
value.Security updates will continue to be available on the 3.x series of this module as long as Apostrophe 3.x is supported.
@apostrophecms-pro/signup
2.0.0 (2024-03-12)A seamless solution that empowers users to easily create accounts on your website. Users can sign up in a few simple steps, complete with email verification and pre-determined user role and access level. Explore our documentation to discover how this extension can enhance your project. Then, effortlessly integrate it through our new Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Changes
4.0.0
series (Vue 3). Critical bug fixes will be provided on the 1.x series of this module as long as support for the 3.x series of Apostrophe continues.Apostrophe 2.x modules
apostrophe-events
3.0.0This bundle provides a complete foundation for displaying upcoming events with the Apostrophe CMS.
Changes
id
but itsid
would change between versions. This resulted in infinite duplicates when committing an event with therepeat
property. This has been changed to check that its parent'sworkflowGuid
does not change across document versions.Backwards compatibility break: project level code that fetches repeated events should now rely on
workflowGuid
andworkflowLocale
, not_id
. Therefore the major version number has been bumped. You will need to update it inpackage.json
. This will not be an issue for most projects other than bumping the version inpackage.json
.repeat
had its parent'shasClones
property set to true (since it was duplicated and unchanged after that). To make more sense in the pieces, the duplicates now have thenowClones
property set to false upon cloning.Utilities
sanitize-html
2.13.0This module provides a simple HTML sanitizer with a clear API.
Changes
Documentation update regarding minimum supported TypeScript version.
Added disallowedTagsMode:
completelyDiscard
option to remove the content also in HTML. Thanks to Gauav Kumar for this addition.Beta Was this translation helpful? Give feedback.
All reactions