Changelog
Source:NEWS.md
blockr.session 0.1.1
The navbar’s piece is now the workflow: its name (“Untitled workflow” until it is first saved) and a save menu beside it, with the drafts notice and the save status between them. The name’s menu switches to another workflow and starts a new one. The save menu holds Save (⌘S on a Mac, Ctrl+S elsewhere; “Save…” until the workflow has a name), then, once the workflow is saved, “Save as new workflow…” (⌘⇧S or Ctrl+Shift+S), Download, the latest versions and “Share…”. The shortcuts work before the menu has been opened.
The workflow name in the navbar gives way on a narrow bar: it is cut short with an ellipsis, with the full name as its tooltip, while the controls beside it keep their width (#136).
The avatar moves out of the
manage_project()plugin’s piece of the navbar into an item of its own,avatar_navbar_item(), which an app appends to the navbar of a blockr.dock board, after the dock’s own controls, withserve(board, navbar = blockr.dock::custom_navbar(avatar_navbar_item())). It shows only for a signed-in user, where the plugin fell back to the account the app runs under (#135).The workflow listing and the draft notice show their tooltips as blockr’s light card rather than the browser’s native box. The card comes from blockr.ui, which the package now imports. The listing’s icon-only buttons and links gain an accessible name, and the links that open a workflow in a new tab gain a tooltip as well. The navbar’s workflow name drops its “Workflow ID” tooltip.
Downloading a single workflow or a single version from a row of the workflow listing works again: both buttons drive a hidden download link that Shiny had left unregistered while hidden, so clicking did nothing at all.
Setting the
session_autosaveblockr option to an interval in seconds turns on crash recovery: a board with unsaved changes is parked on the configured backend as a draft, and a later session offers to restore it. A draft is an ordinary record at a reserved id, so it never touches a workflow’s version history and stays out of the workflow listing. Retention is governed bysession_draft_ttl.The
rack_create()function gains adraftargument minting those reserved ids, and the newrack_records()lists records of one kind at a time. Draft writes are unversioned, via a newversionedargument onrack_upload().
blockr.session 0.1.0
CRAN release: 2026-08-04
Initial CRAN release.
manage_project()provides a blockr.corepreserve_boardplugin that saves, restores and manages boards from within a running app, with a navbar dropdown exposing a workflow listing, version history and an editable board title.Board storage is backed by the pins package.
user_pins_board()is the default backend, resolved from thesession_mgmt_backendblockr option: on Posit Connect with the Connect API Integration enabled, each visitor reads and writes pins under their own account, falling back to the application’s Connect credentials and then to a local board off Connect.On Posit Connect, boards can be shared with named users and given a visibility level from the dropdown’s Sharing tab.