Apostrophe 4.29.0: Recently Edited Documents Manager, Unified Styles Editor #5382
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
Uh oh!
There was an error while loading. Please reload this page.
-
Hello Apostrophe Community!
Apostrophe 4.29.0 brings a new Recently Edited Documents manager to the admin bar, a unified Styles Editor experience, and continued improvements to static build support for Apostrophe-Astro projects.
Apostrophe.4.29.0_.Recently.Edited.Documents.mp4
Recently Edited Documents Manager
The admin bar now includes a Recently Edited Documents manager, making it faster for editors to locate and review recently changed content without hunting through piece or page managers. The manager displays all documents that have been edited across content types in a single unified view, with filtering by editor, document type, locale, edit action, and status. It appears alongside the existing Submitted Drafts action and surfaces recently touched documents across content types in one place.
The manager is also extensible: modules can contribute their own filter choices to the Recently Edited view. Pro module integrations take advantage of this in 4.29.0, with
@apostrophecms-pro/automatic-translationadding an "Unpublished Translation" status filter and@apostrophecms/import-exportadding an "Imported" action filter — making it easier to pick up multilingual or imported content right where you (or someone else) left it.New Background Preset for the Styles Editor
The Styles Editor, the modal interface where developers predefine style options that editors can apply to widgets or globally, gains a new background preset in this release. It supports image, color, and gradient backgrounds with overlay, giving editors control over rich background treatments without writing custom CSS. Teams building visually varied layouts now have a structured, editor-friendly way to manage backgrounds as part of their predefined style options.
Static Build Improvements for Astro Projects
This release continues to expand static build support for Apostrophe-Astro projects. Pretty URL file attachments are now fully supported in the static build metadata pipeline: the
getAllUrlMetadataAPI correctly annotates affected attachments, and the backend streaming proxy route properly resolves relative uploadfs URLs during static builds. A bug that prevented pretty URLs from working correctly with locale prefixes has also been fixed.On the
@apostrophecms/apostrophe-astroside, thewriteAttachmentsstep now supports per-entry base URL resolution, correctly downloading and writing pretty URL files to the appropriate output directory (e.g.dist/files/). A newattachmentFilteroption, configurable as'all'or'prettyOnly',lets you skip regular uploadfs attachments when those are served by a CDN while still including backend-served pretty URL files (e.g. PDFs with friendly URLs) in the static output. The option can be set via thestaticBuild.attachmentFilterintegration option or theAPOS_ATTACHMENT_FILTERenvironment variable.Security Fixes
AI tooling has become remarkably effective at identifying previously undiscovered software vulnerabilities, and the open source ecosystem is feeling it — including us. This release includes six security fixes, more than we would typically see in a single cycle. We view this as a net positive: these issues are being found and fixed rather than quietly exploited, and in at least one case the work prompted us to introduce a new protective mechanism in core that makes an entire class of vulnerability less likely going forward.
This release addresses:
@apostrophecms/seomodule's SEO Title and Meta Description fields, in color schema fields, and insanitize-htmlwhenoptiontags were explicitly permitted.choices()and.counts()query builders, which could be used to access schema fields outside thepublicApiProjection, and a separatepublicApiProjectionbypass for piece typesImportant: The SEO XSS fix requires upgrading both
apostropheand@apostrophecms/seotogether. Upgrading only one will not fully resolve the vulnerability.Thanks to K Shanmukha Srinivasulu Royal for reporting the SEO vulnerability, and to offset and restriction for reporting — and in restriction's case, proposing fixes for — three additional issues.
Additional Improvements
x-defaulthreflang tags in sitemap entries for improved international SEO targeting.pruneDataForExternalFront— a method intended to be overridden to modify data in place before it is sent to Astro or a similar frontend — has been removed to prevent confusion when customizing that method.This release contains important security fixes — we encourage all users to upgrade promptly with
npm update. Let us know what you think on our roadmap.🚀 Happy coding!
Apostrophe 4.29.0
Adds
@apostrophecms/filehasoptions.prettyUrlsenabled, thegetAllUrlMetadataAPI now annotates affected attachments properly. The backend streaming proxy route was also fixed to correctly resolve relative uploadfs URLs during static builds.Fixes
@apostrophecms/fileis now compatible with locale prefixes.pruneDataForExternalFront, a method intended to be overridden to modify data "in place" before it is sent to Astro or a similar frontend.Changes
Security
@apostrophecms/seomodule. The fix requires upgrading BOTHapostropheand@apostrophecms/seo. A new mechanism for safely emitting JSON nodes has been introduced to make this type of vulnerability unlikely in the future. Thanks to K Shanmukha Srinivasulu Royal for reporting the vulnerability..choices()and.counts()query builders: formerly, these query builders could be used by the public to exfiltrate schema fields not included in thepublicApiProjection, or fields locked down with aviewPermissionproperty. Thanks to offset for reporting this issue, which was not made public prior to the release of the fix.-followed by anything, including</style>, which could be used to inject other markup. Thanks to restriction for reporting the issue and proposing the fix.publicApiProjectionbypass vulnerability for piece types. Thanks to restriction for reporting the issue and proposing the fix.Pro Modules
@apostrophecms-pro/automatic-translation1.5.0This bundle allows automatic translation of documents (pages and pieces) when localizing content. It comes with two translation providers: Google Cloud Translation and DeepL, and supports custom providers. Explore our documentation to learn how this extension can enhance your project. Once you're ready, obtain a license and install it through Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Adds
@apostrophecms-pro/cypress-tools1.0.0-beta.27Automated functional browser tests are an important part of quality assurance for enterprise websites and web applications. Cypress is an industry-standard, open-source library for carrying out automated functional browser tests. This module provides a collection of conveniences for testing the ApostropheCMS admin UI within Cypress. Explore our documentation to learn how this extension can enhance your project. Once you're ready, obtain a license and install it through Apostrophe Workspaces. For further details or inquiries, feel free to contact us or visit our pricing page.
Adds
dateFieldssupport forapos:dbUpdateandapos:dbFindtasks to restore BSON date types lost during Cypress JSON serialization.getRecentlyEditedModalandopenRecentlyEditedModalcommands.Free Modules
@apostrophecms/apostrophe-astro1.10.0This module integrates ApostropheCMS into your Astro application.
Adds
writeAttachmentsstep now supports per-entry base URL resolution, correctly downloading and writing pretty URL files to the appropriate output directory (e.g.dist/files/). A newattachmentFilteroption ('all'or'prettyOnly') lets you skip regular uploadfs attachments when those are served by a CDN while still including backend-served pretty URL files in the static output. Configurable via thestaticBuild.attachmentFilterintegration option or theAPOS_ATTACHMENT_FILTERenvironment variable.Changes
@apostrophecms/import-export3.5.2This module enables import and export of pages and pieces, with or without related documents such as files, images, and other related types.
Changes
@apostrophecms/seo1.4.1Comprehensive SEO module providing meta field management and Schema.org structured data generation (JSON-LD) for all pages and pieces.
Security
@apostrophecms/seoandapostrophe. Thanks to K Shanmukha Srinivasulu Royal for reporting the vulnerability.@apostrophecms/sitemap1.3.0The Apostrophe Sitemap module generates XML sitemaps for websites powered by ApostropheCMS.
Adds
x-defaulthreflang tag to sitemap entries for improved international SEO targeting.Security
Utilities
sanitize-html2.17.3This module provides a simple HTML sanitizer with a clear API.
Security
optiontags. There was no vulnerability when not explicitly allowingoptiontags.Beta Was this translation helpful? Give feedback.
All reactions