Skip to content

What’s new in OpenPost.

New tools, small improvements, and fixes that make your day easier.

Release

v7.22.2

Fixed

  • Publish video posts with a selected cover frame when MCP or API media settings are omitted, including existing posts with null settings.
  • Record destination and post failures after publishing panics, preserving diagnostics and checking saved provider receipts before any retry.
  • Allow deletion of failed posts when no delivery is active or unresolved.
  • Handle null JSON objects in legacy messaging settings and legacy publication-job migration without panicking.
  • Keep joined-source and inherited text-card attachment settings as objects when refreshing existing posts.

2 more entries in the full changelog.

Maintenance

  • Update compatible Expo SDK 57 patches and use the shared app icon for iOS validation.
  • Refresh product screenshots and make automated screenshot and README asset refreshes more reliable.
  • Document the sidebar-calendar browser preference and align navigation checks with the current post and workspace controls.
  • Give the public-site determinism check enough time to build both sites twice and verify their complete outputs on CI.

Added

  • Browse posts in a masonry grid and use the draft gallery to search, select, and schedule drafts.
  • Show or hide the sidebar calendar through personal preferences.
Read the full release notes

Release

v7.21.1

Added

  • Italian interface translations, language selection, regional formatting, and offline recovery copy in the web app.

Fixed

  • Backup restore drills count the current Publication inventory and clean up their temporary database after failed restores.

Maintenance

  • Remove the README demo-maintenance note and the retired VitePress link-checking branch. Point the superseded composer proposal to the maintained Ideate and review contracts.
  • Remove obsolete web dependency declarations after the shared UI extraction and keep theme-icon generator dependencies with repository tooling.
Read the full release notes

Release

v7.20.8

Fixed

  • Facebook Reels and video Stories finish completed uploads before waiting for processing, and recognize already published videos from older checkpoints without sending finish again.
  • Pending publications stay in progress without repeated failure events. Automatic provider reconciliation is bounded and retains unresolved receipts for manual checks.
  • YouTube waits for confirmed processing before reporting a video published, and preserves provider schedules. X processing checks stop at media expiry and yield without repeating uploads.
  • Preserve the first day's Analytics trend change when its previous measurement falls on the same UTC date as the selected range's start.
  • Calendar week headers wrap long timezone names within their column, keeping the full name readable without overlapping the first day.

14 more entries in the full changelog.

Performance

  • Read the latest stored Analytics measurements and pre-range trend baselines through a workspace-scoped rendition index, avoiding full-history transfers and repeated historical sorts. Preserve workspace and account filters, missing measurements, and insights across the complete filtered post inventory.
  • Video Editor preview and export reuse the active sequence's item index when resolving transform parents, property links, and expressions. Large timelines no longer rebuild the complete lookup for each visible clip; paused edits continue to update immediately.
  • Resolve built-in workspace themes from a catalogue validated once per server process. Requests copy only the selected theme, preserving independent manifests, custom-theme validation, and complete Workshop recovery.
  • Calendar date ranges use an index on each post's actual calendar occurrence, avoiding scans and sorts over unrelated history. Authored schedules, published timestamps, workspace boundaries, and stable pagination retain their existing behavior.
  • Calendar week view groups posts by their local hour once per data or timezone change, preserving daylight-saving transitions and existing post order while avoiding repeated time formatting for every grid cell.

20 more entries in the full changelog.

Fixes

  • Video Editor filmstrip eviction now releases decoded images and object URLs while preserving thumbnails still in use. Cache cleanup discards and releases pending thumbnail loads, preventing stale thumbnails from returning after cleanup.
  • Source previews keep usable space in short panels and on phones. Audio waveforms remain visible while the source controls scroll, and the source name and touch-sized close button stay reachable.

Improved

  • Open image designs with many grouped layers faster by preparing group destinations when a layer menu opens.
  • Open Quick Cut with less JavaScript by loading source inspection, waveforms, and export processing when needed.
  • Load workflow history and connected accounts when their views need them, and pause hidden history polling. Keep navigation available during loading and offer retry controls for failed history requests.
  • Build workflow diagram catalogues once per graph, and avoid validating run payloads for compact previews. Full editor and run canvases retain their validation warnings.
  • Load workflow run cards without transferring every run's source data, inputs, and outputs. Opening a run retrieves its complete saved snapshot, with loading and retry feedback.

Changed

  • Existing installations using LinkedIn member analytics must set `OPENPOST_LINKEDIN_MEMBER_ANALYTICS_ENABLED=true` and restart OpenPost to retain collection after upgrading. The setting defaults to false, independently of Organization Page support. Reconnect accounts only if their existing authorization lacks `r_member_profileAnalytics` or `r_member_postAnalytics`. Stored metrics are preserved.

Added

  • Native clients can inspect submitted post versions and review history, then approve their assigned version or request changes. Review previews show destination accounts, segment titles, descriptions, provider settings, and first comments. Protected videos and audio play in the app; other attachments open through the device's file controls.
  • Shared recovery pages give the app, public site, documentation, and native app a consistent route back to work, including offline recovery.
  • Self-hosting documentation includes an UmbrelOS installation guide.

Upgrade notes

  • Android advances to version 0.2.59 (61). Database migrations 159 and 160 add analytics and calendar lookup indexes.
Read the full release notes

Release

v7.19.1

Added

  • Invite clients to connect and reconnect social accounts and decide assigned approvals. Clients cannot author, publish, disconnect accounts, or administer the workspace.
  • Workspace summaries expose `can_connect` and `can_approve` separately from editing rights, and the interface follows those capabilities.
  • Client invitations open account connections after acceptance.
  • Client-role support incorporates [PR #332](https://github.com/getopenpost/openpost/pull/332) by Digital Media Group.
  • Create a source-backed series within Ideate, select concepts to generate, edit each post, and explicitly save selected drafts.

2 more entries in the full changelog.

Changed

  • Improved Ideate's four post alternatives to prioritize source-supported reader value, honest openings and payoffs, feasible media briefs, meaningful variety, and earned humor without inventing tutorial details or platform-performance claims.
  • Web Ideate uses one resumable dialog from navigation and the composer. The old route opens that dialog. Ordinary solo-founder drafting and publishing remain unchanged.
  • Scheduled usage is reserved atomically with delivery jobs across individual and batch scheduling.

Upgrade notes

  • Apply additive migration 158 and upgrade every publishing process before enabling `OPENPOST_CLIENT_REVIEWS_ENABLED`. Existing reviews remain enforced when new review admission is disabled. See `docs/development/client-reviews-and-series.md` for rollout and rollback instructions.
Read the full release notes

Looking for the details?

Find every fix and update note in the full changelog.

Open on GitHub