v17.6.0-rc1
This is a release candidate for 17.6.0. It is published to NuGet as a
prerelease, so you need to include prereleases to install it.
The main addition in 17.6.0 is approvals for Publisher: a server can require
someone to approve a push or pull before it changes anything. There is also a
new API for starting a push, pull or export in a single call.
Added
- Publisher: approvals. A server can require approval for content pushes and
pulls. The push or pull stops once the report is ready, and waits until
someone in the server's approver groups approves or declines it. Settings
pushes and pulls are not affected.
- Publisher: when a request is approved, the push or pull is sent again and
the target re-checked before anything is applied. If the target changed
since the request was made, the result shows what is different.
- Publisher: a new Approvals dashboard in the Content section lists the
requests waiting for you, the requests you have made, and their history. It
only appears once approvals are in use.
- Publisher: approvers get an email when a request needs them, and requesters
when theirs is approved, declined, expires or fails. This needs SMTP set up
in Umbraco.
- A single-call API to start a push, pull or export in the background:
POST Publisher/Start and POST Exporter/Start, with
GET Exporter/Download/{id} to download a finished export.
Setting up approvals
Approvals are set per server, on the server's Permissions view in the
Publisher settings:
- Require approval: turns approvals on for pushes and pulls with this
server. Off by default, so existing servers behave exactly as before.
- Approvers: the user groups that can approve or decline requests. Admins
can always approve. Nobody can approve their own request unless they are an
admin.
- Expires after (days): how long a request waits for a decision. The
default is 7; 0 means requests never expire.
When someone pushes or pulls with that server, they see the report as usual
and choose Request approval, with an optional note for the approver.
Customising the emails
Each email comes from a built-in template. To change one, put a file with the
same name in ~/uSync/emails/ in your site's content root:
approval-requested.html, approval-approved.html,
approval-declined.html, approval-expired.html or approval-failed.html.
The file's <title> becomes the email subject, and a comment at the top of
each built-in template lists the placeholders you can use.
To send these notifications somewhere other than email, handle
PublisherApprovalRequestedNotification,
PublisherApprovalDecidedNotification and
PublisherApprovalFinishedNotification.
Changed
- Publisher: the push and pull buttons only appear for user groups whose
default permissions allow a push or pull.
- Publisher: the first step of a push or pull now says it is finding items,
and how many it found.
Fixed
- Publisher: in Safari 26.4 the push dialog no longer collapses to nothing,
which left the backoffice looking locked up.
- Publisher: the progress bar updates during a push or pull again, including
the "Uploading to server" and "Packing items" messages.
- Publisher: items that fail to import are now listed in the push or pull
result.
- Publisher: in the content browser, the focus ring on a card no longer
covers the Compare button.
- TimeMachine: the timeline refreshes when you come back to it.
- Exporter: asking for an export that doesn't exist, or with an invalid
request, now returns Not Found or Bad Request instead of a server error.
- Publisher: spelling and pluralisation fixes in result messages.
Requirements
- Jumoo.Processing 17.5.0-rc2 (installed automatically).