Releases: Automattic/safe-publish
Releases · Automattic/safe-publish
Release list
v0.11.0
What's Changed
- Raise minimum WordPress version to 6.9 by @acicovic in #471
- Complete the comment colon capitalization convention by @acicovic in #473
- Limit bulk post selection to 50 by @ingeniumed in #464
- Fix phantom taxonomy removals in Compare by @ingeniumed in #475
- Reject import sessions whose source identity cannot be normalized by @ingeniumed in #476
- Don't wrap Markdown prose by @acicovic in #462
- Cover failed draft import refresh by @ingeniumed in #479
- Fix failure order in RTL locales by @ingeniumed in #480
- Fix keyboard focus loss and result scrolling by @ingeniumed in #482
- Show hierarchy term changes in Compare by @ingeniumed in #481
- Restore terms, author, parent, and post type on rollback by @ingeniumed in #486
- Remove unused session rollback functionality by @ingeniumed in #488
- v0.11.0 by @github-actions[bot] in #491
Note: This is the GA release.
Full Changelog: v0.10.0...v0.11.0
v0.10.0
What's Changed
- Update documentation by @ingeniumed in #408
- Expand CI compatibility coverage by @ingeniumed in #417
- Update node dependencies by @ingeniumed in #416
- Preserve backslashes in term source identities by @ingeniumed in #424
- Polish Manage and Compare UI copy by @ingeniumed in #423
- Keep posts imported after update rollback by @ingeniumed in #421
- Preserve backslashes in source identity meta by @acicovic in #437
- Fix rollback error copy and Compare headers by @acicovic in #440
- Guard rollback against replaying a rolled-back item by @acicovic in #438
- Report a rollback that could not be recorded by @acicovic in #443
- List bulk confirmation titles grouped by action by @acicovic in #448
- Refresh listing on modal dismiss by @acicovic in #453
- Confirm only imports that overwrite live content by @acicovic in #446
- Respect source post type field support by @ingeniumed in #422
- Modernize TypeScript and CI configuration by @ingeniumed in #457
- Fix plugin text domain header by @ingeniumed in #463
- v0.10.0 by @github-actions[bot] in #468
Full Changelog: v0.9.0...v0.10.0
v0.9.0
What's Changed
- Scope the Needs attention failures to the connected source by @acicovic in #368
- Scope the Posts tab to the connected source by @acicovic in #373
- Reconcile existing term fields on re-import by @acicovic in #377
- Correct the Compare action in the docs by @acicovic in #383
- Extend the test mutation rule to shared setup by @acicovic in #395
- Improve plugin autoloading by @ingeniumed in #409
- Skip the degradation for an empty taxonomy by @acicovic in #378
- Resolve nothing when the source scope is empty by @acicovic in #390
- Slash post fields on import by @acicovic in #397
- Compare block attribute values in the parity suite by @acicovic in #400
- Set node version to 24 by @ingeniumed in #407
- Refuse imports when no source site is connected by @acicovic in #379
- Update PHP dependencies by @ingeniumed in #415
- Surface term hierarchy and description in the diff by @acicovic in #380
- Compare only the taxonomies the import writes by @acicovic in #385
- Refuse Compare when no source site is connected by @acicovic in #392
- Remove the diff-preview mode and cleanup parameters by @acicovic in #411
- Replace the term reconcile outcome arrays with value objects by @acicovic in #412
- Surface the source failure reason from Compare by @acicovic in #394
- Restore the post-import notice and style it by outcome by @acicovic in #402
- Purge sessions recorded without a source by @acicovic in #405
- v0.9.0 by @github-actions[bot] in #419
New Contributors
- @ingeniumed made their first contribution in #409
Full Changelog: v0.8.0...v0.9.0
v0.8.0
What's Changed
- Fix comment colon capitalization by @acicovic in #355
- Fix duplicate source-error notice on the Posts tab by @acicovic in #359
- Make the Audit Log the sole event viewer by @acicovic in #357
- Normalize and index the stored session source identity by @acicovic in #366
- Batch and memoize term identity resolution by @acicovic in #364
- Clear terms emptied on the source by @acicovic in #367
- Support slug-keyed degradations by @acicovic in #361
- Degrade instead of failing on an unregistered taxonomy by @acicovic in #362
- Bump squizlabs/php_codesniffer from 3.13.5 to 3.13.6 by @dependabot[bot] in #375
- v0.8.0 by @github-actions[bot] in #389
Full Changelog: v0.7.0...v0.8.0
v0.7.0
What's Changed
- Bump actions/checkout from 7.0.0 to 7.0.1 in the actions-minor-patch group by @dependabot[bot] in #301
- Bump wp-coding-standards/wpcs from 3.3.0 to 3.4.1 by @dependabot[bot] in #315
- Fix admin color contrast, route inline colors to tokens by @acicovic in #304
- Inline linter suppression reasons by @acicovic in #306
- Repoint stale inline-image attachment IDs to restore srcset by @acicovic in #308
- Derive session status from item outcomes by @acicovic in #313
- Import classic [audio]/[video] shortcode media by @acicovic in #314
- Fix connection-probe failure classification by @acicovic in #316
- Rewrite gallery/playlist shortcode attachment IDs on import by @acicovic in #310
- Extend seeder parity coverage to gallery/playlist shortcode IDs by @acicovic in #312
- Normalize Arrange-Act-Assert comment markers in tests by @acicovic in #320
- Extract settings page inline JS into an enqueued file by @acicovic in #321
- Support custom post statuses in the catalog by @acicovic in #318
- Reuse existing terms on import by @acicovic in #335
- Add a Needs attention tab for post-import problems by @acicovic in #325
- Add a reversible Ignore to the Needs attention inbox by @acicovic in #329
- Add a resolvable-now hint and bulk Retry to the Needs attention inbox by @acicovic in #331
- Parent imported attachments to their source parent by @acicovic in #323
- Import bare gallery/playlist media by @acicovic in #327
- Remap cross-post gallery references by @acicovic in #333
- Bump ip-address from 10.2.0 to 10.4.0 by @dependabot[bot] in #344
- Bump guzzlehttp/guzzle from 7.15.1 to 7.15.2 by @dependabot[bot] in #345
- Bump fast-uri from 3.1.4 to 3.1.5 by @dependabot[bot] in #346
- Harden cache-control on authenticated REST responses by @acicovic in #348
- Delete a post's imported media on rollback by @acicovic in #339
- Fix low-severity issues in the Needs attention inbox by @acicovic in #342
- Import taxonomy hierarchy and term descriptions by @acicovic in #349
- Pull cross-post gallery/playlist media by @acicovic in #340
- v0.7.0 by @github-actions[bot] in #353
Full Changelog: v0.6.0...v0.7.0
v0.6.0
What's Changed
- Bump softprops/action-gh-release from 3.0.1 to 3.0.2 in the actions-minor-patch group by @dependabot[bot] in #271
- Bump actions/setup-node from 6 to 7 in the actions-major group by @dependabot[bot] in #272
- Bump svgo from 3.3.3 to 3.3.4 by @dependabot[bot] in #297
- Bump fast-uri from 3.1.2 to 3.1.4 by @dependabot[bot] in #298
- Bump immutable from 4.3.8 to 4.3.9 by @dependabot[bot] in #299
- Bump postcss from 8.5.15 to 8.5.23 by @dependabot[bot] in #300
- Document and test custom-block permalink boundary by @acicovic in #280
- Fix hierarchical parent docs by @acicovic in #290
- Fix media URL appearing in both failure messages by @acicovic in #291
- Normalize wording across admin dialogs and notices by @acicovic in #282
- Fix off-domain featured image import by @acicovic in #294
- Fix media sideload filter leak by @acicovic in #296
- Classify media from downloaded bytes, not URL extension by @acicovic in #284
- Explain skipped items in the import dialog by @acicovic in #286
- Document comparison and comment conventions by @acicovic in #287
- Fix URL search origin routing by @acicovic in #292
- v0.6.0 by @github-actions[bot] in #302
Full Changelog: v0.5.0...v0.6.0
v0.5.0
What's Changed
- Add auth-probe failure logging by @acicovic in #261
- Import media nested in container blocks by @acicovic in #256
- Import media in top-level classic and freeform content by @acicovic in #258
- Rewrite media embedded in block inner content by @acicovic in #262
- Add originating block to media-failure messages by @acicovic in #263
- bump websocket-driver from 0.7.4 to 0.7.5 by @dependabot[bot] in #267
- Bump ws from 7.5.10 to 7.5.13 by @dependabot[bot] in #270
- Add Yoast SEO meta migration recipe by @smithjw1 in #265
- Skip re-importing media already on the destination by @smithjw1 in #266
- Skip non-media URLs when sideloading block attrs by @smithjw1 in #269
- Bump axios from 1.16.0 to 1.18.1 by @dependabot[bot] in #275
- Remove source-scoping backfill migration by @acicovic in #274
- Add connection-test and sync-mode Pendo telemetry by @smithjw1 in #268
- Bump guzzlehttp/guzzle from 7.12.1 to 7.15.1 by @dependabot[bot] in #276
- Bump shell-quote from 1.8.4 to 1.10.0 by @dependabot[bot] in #277
- v0.5.0 by @github-actions[bot] in #278
Full Changelog: v0.4.0...v0.5.0
v0.4.0
What's Changed
- Fix stale attachment IDs in static media blocks by @acicovic in #202
- Migrate reusable blocks (core/block) by @acicovic in #204
- Lock inline image alt parity by @acicovic in #206
- Automate per-worktree wp-env ports by @acicovic in #213
- Propagate source alt text to featured-image attachments by @acicovic in #208
- Add catalog dispatch logging by @acicovic in #217
- Scope catalog search override and cap search tokens by @acicovic in #221
- Propagate source media library metadata to imported attachments by @acicovic in #215
- Relocate the catalog item serializer to the REST controller by @acicovic in #226
- Extract a shared GMT-to-ISO-8601 datetime helper by @acicovic in #227
- Return a session-expired error on AJAX nonce failure by @acicovic in #224
- Drop the dead featured_media read from single import by @acicovic in #225
- Make the fresh source payload authoritative for imported meta and terms by @acicovic in #230
- Bound outbound HTTP response size by @acicovic in #219
- Substitute (no title) for empty-title catalog posts by @acicovic in #222
- Surface reconcile retry outcome type and detail by @acicovic in #234
- Humanize audit log Event and Channel columns by @acicovic in #238
- Bump softprops/action-gh-release from 3.0.0 to 3.0.1 in the actions-minor-patch group by @dependabot[bot] in #186
- Bump actions/checkout from 6.0.3 to 7.0.0 in the actions-major group by @dependabot[bot] in #187
- Require the cURL PHP extension with SSL support by @acicovic in #232
- Add explicit server-log axis to the audit Logger by @acicovic in #240
- Add import-failure audit-log events by @acicovic in #236
- Fix false meta update failure on unchanged scalar values by @smithjw1 in #249
- Reclassify expected domain failures to log_failure by @acicovic in #242
- Preserve the source site's error message on error responses by @acicovic in #244
- Add rollback confirmation notice by @acicovic in #246
- Fix map_meta_cap override fatal on string user_id by @acicovic in #250
- Surface specific fetch-failure reasons by @acicovic in #248
- Add ACF/SCF meta extension filters and recipe by @acicovic in #254
- v0.4.0 by @github-actions[bot] in #255
Full Changelog: v0.3.0...v0.4.0
v0.3.0
What's Changed
- Revert "Hide navigation menus from the import type selector" by @acicovic in #152
- Import seeder parity batch once via a shared fixture by @acicovic in #156
- Assert block, shortcode, and page parity in the seeder test by @acicovic in #157
- Reverse-assert remaining divergent post columns by @acicovic in #161
- Add Needs attention surface for import degradations by @acicovic in #159
- Apply the page step-back guard to the orphan failures drawer by @acicovic in #165
- In-place Retry for unmapped references and orphaned parents by @acicovic in #163
- Out-of-import degradation logging by @acicovic in #167
- Assert author resolution parity in the seeder test by @acicovic in #169
- Assert post_parent parity in the seeder test by @acicovic in #171
- Bump actions/checkout from 6 to 6.0.3 in the actions-minor-patch group by @dependabot[bot] in #135
- Add a seeder for the import-degradation drawers by @acicovic in #175
- Log reconcile retries by actual outcome by @acicovic in #173
- Parity batch edge-case hardening by @acicovic in #179
- Assert embed url parity in the seeder test by @acicovic in #183
- Assert footnotes parity in the seeder test by @acicovic in #185
- Fix attention and orphan-failure callouts by @acicovic in #177
- Consolidate admin stylesheets and serve RTL by @acicovic in #181
- Refine the attention and orphan drawers by @acicovic in #189
- Re-derive nav-link URLs by @acicovic in #191
- Document internal-link migration limitation by @acicovic in #195
- Document nav-link draft-target limitation by @acicovic in #199
- Tidy nav-link re-derivation follow-ups by @acicovic in #197
- Surface reusable-block degradation by @acicovic in #193
- v0.3.0 by @github-actions[bot] in #200
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's Changed
- Remove backticks from test docblock summaries by @acicovic in #111
- Re-fire the sync-status batch on Refresh by @acicovic in #112
- Count held filter bounds as active by @acicovic in #113
- Fill Available pages server-side by @acicovic in #114
- Fix Post_Type_Map slug for the navigation type by @acicovic in #118
- Allowlist read-only inspection commands by @acicovic in #125
- Refresh AGENTS.md development state and structure by @acicovic in #126
- Add wp_navigation post type import support by @acicovic in #119
- Add customer-data guideline to AGENTS.md by @acicovic in #132
- Scope find_imported_post family by source site URL by @acicovic in #120
- Bump shivammathur/setup-php from 2.37.1 to 2.37.2 in the actions-minor-patch group by @dependabot[bot] in #92
- Bump the actions-major group with 6 updates by @dependabot[bot] in #93
- Fix diff preview 404 on multisite subsites by @acicovic in #129
- Add navigation cross-reference rewriter for imported menus by @acicovic in #122
- Fix featured and content media skipped on import by @acicovic in #130
- Preserve existing post status when updating via single import by @acicovic in #134
- Fix subsite block-ID reference remap by @acicovic in #137
- Centralize site-URL normalization by @acicovic in #138
- Bump guzzlehttp/guzzle from 7.10.0 to 7.12.1 by @dependabot[bot] in #141
- Scope Compare lookup by source site by @acicovic in #144
- Hide navigation menus from the import type selector by @acicovic in #146
- Scope source identity to the subsite path by @acicovic in #148
- Add source-scoping backfill for legacy imports by @acicovic in #150
- v0.2.0 by @github-actions[bot] in #151
Full Changelog: v0.1.1...v0.2.0