Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .claude/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,10 @@
"Bash(npx nx:*)",
"Bash(yarn build:ci)",
"Bash(gh api:*)",
"Bash(yarn tsc:*)"
"Bash(yarn tsc:*)",
"Bash(gh release *)",
"Bash(gh pr *)",
"Bash(yarn release-notes:generate)"
],
"deny": [],
"ask": []
Expand Down
26 changes: 26 additions & 0 deletions apps/docs/docusaurus.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,27 @@ const config: Config = {
} satisfies Preset.Options,
],
],
plugins: [
[
'@docusaurus/plugin-content-blog',
{
id: 'release-notes',
routeBasePath: 'release-notes',
path: './release-notes',
blogTitle: 'Release notes',
blogDescription: "What's new in Jetstream.",
blogSidebarTitle: 'All releases',
blogSidebarCount: 'ALL',
showReadingTime: false,
editUrl: 'https://github.com/jetstreamapp/jetstream/tree/main/apps/docs/',
feedOptions: {
type: 'all',
title: 'Jetstream release notes',
copyright: `Copyright © ${new Date().getFullYear()} Jetstream.`,
},
},
],
],
themeConfig: {
colorMode: {
defaultMode: 'dark',
Expand All @@ -89,6 +110,11 @@ const config: Config = {
srcDark: 'img/jetstream-logo-inverse.svg',
},
items: [
{
to: '/release-notes',
label: 'Release notes',
position: 'right',
},
{
href: 'https://getjetstream.app',
label: 'Jetstream',
Expand Down
60 changes: 60 additions & 0 deletions apps/docs/release-notes/2025-07-27-v7.0.0.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
slug: v7.0.0
title: 7.0.0 - React 19, Jotai state, and better datatable keyboard navigation
date: '2025-07-27'
authors: [jetstream]
tags: [web, extension]
versions:
web: 7.0.0
extension: 2.0.0
summary: Major foundation update. Jetstream now runs on React 19 with Jotai for state and Floating UI for popovers, plus meaningful wins for keyboard users in the datatable.
highlights:
- title: Improved datatable keyboard navigation
description: Tab now cycles through action and record Id cells, Enter opens the record popover, and inline editing matches SLDS styles.
docLink: /query/query-results
platforms: [web, extension]
- title: Tooltips respond to keyboard focus
description: Focusing a button or icon with the keyboard now shows its tooltip, matching the behavior you get with a mouse hover.
platforms: [web, extension]
- title: Bulk update from query results fixed
description: The bulk update job from query results no longer fails because of a stale polling callback, so jobs complete and surface their status correctly.
docLink: /query/query-results
platforms: [web, extension]
- title: Dropdowns close reliably on outside click
description: Clicking outside a dropdown now closes it in the cases where it was previously staying open.
platforms: [web, extension]
- title: Modernized popovers and tooltips
description: Popovers and tooltips moved to Floating UI, which fixes several nested portal and positioning glitches across modals and popovers.
platforms: [web, extension]
---

{/* truncate */}

## What's new

### Datatable keyboard navigation

Tabbing through the query and load datatables now behaves more predictably. The action column and the Id column are reachable with Tab, and pressing Enter on an Id cell opens the record popover. Copying a cell with the keyboard gets a visible focus style, and inline cell editing has been cleaned up to match SLDS. These changes apply anywhere the datatable is used, including query results and the web extension.

### Tooltips with keyboard focus

Tooltips now open when a control receives keyboard focus, not just when the mouse hovers. This makes icon-only buttons discoverable without a pointer.

### Bulk update from query results

Fixed a bug where the bulk update job launched from query results would silently fail because the polling callback captured stale state and never attached the job id to the tracked data. Polling now reads fresh state on each tick.

### Foundation upgrades

Under the hood this release rebuilds several foundations:

- Upgraded to React 19.
- Migrated state management from Recoil (unmaintained) to Jotai.
- Migrated tooltips and popovers from Tippy and Popper.js to Floating UI, which resolved a handful of nested-portal and positioning bugs in modals and popovers.
- Upgraded the react-data-grid library.

No action is required. If you notice any regression in tooltips, popovers, dropdowns, or inline editing after updating, please let us know.

### Web extension 2.0.0

The browser extension was bumped alongside the web release and picks up all of the above: React 19, Jotai, Floating UI, and the datatable keyboard improvements.
52 changes: 52 additions & 0 deletions apps/docs/release-notes/2025-08-09-v7.1.0.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
slug: v7.1.0
title: 7.1.0 - Diff editor toggle, folder metadata fixes
date: '2025-08-09'
authors: [jetstream]
tags: [web, extension]
versions:
web: 7.1.0
extension: 2.0.1
summary: Compare metadata got an option to hide unchanged lines, folder metadata types are now retrieved correctly, and several datatable and popover bugs are fixed.
highlights:
- title: Toggle unchanged lines in the metadata diff editor
description: When comparing metadata between orgs you can now collapse unchanged lines, which makes larger files much easier to scan.
docLink: /deploy/deploy-metadata
platforms: [web, extension]
- title: Folder metadata types work correctly
description: Document, Email, Report, and Dashboard folders now appear in the metadata picker and retrieve the correct metadata from Salesforce.
docLink: /deploy/deploy-metadata
platforms: [web, extension]
- title: Datatable tab navigation fix
description: Fixed an edge case where tab navigation inside the datatable could misidentify custom cell renderers after minification.
platforms: [web, extension]
- title: Monaco editor upgrade
description: Upgraded the embedded code editor, which powers the Apex, SOQL, and metadata editors across Jetstream.
platforms: [web, extension]
---

{/* truncate */}

## What's new

### Toggle unchanged lines when comparing metadata

The view-and-compare metadata modal now has a control to hide unchanged lines, so you can focus on the parts of a file that actually differ. Filename sorting in that view was also fixed so files list in a stable order.

### Folder metadata types

Document, Email, Report, and Dashboard folders are now included when you list metadata, and folder paths are sent to Salesforce in the format the API expects (with the trailing slash). This resolves cases where folder-based metadata was missing from the deploy or compare workflows.

### Datatable tab navigation

The datatable identifies certain columns (action and Id columns) by the name of their renderer function. After minification that name could change, causing tab navigation to treat them as normal cells. We now tag the renderers explicitly so tab navigation works the same in development and production builds.

### Under the hood

- Upgraded the Monaco editor and now serve its worker assets from node_modules rather than a checked-in copy on the server.
- Removed the react-aria and headless-ui dependencies in favor of the Floating UI stack introduced in 7.0.0. The Chrome Web Store flagged obfuscated code inside react-aria, so this unblocks future extension updates and cuts a dependency from the bundle.
- Fixed a scroll-lock glitch on the landing page and tightened portal root handling so popovers and modals render in the right container.

### Web extension 2.0.1

The browser extension picked up the react-aria and headless-ui removal and the scroll-lock and portal fixes.
28 changes: 28 additions & 0 deletions apps/docs/release-notes/2025-08-09-v7.2.0.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
slug: v7.2.0
title: 7.2.0 - Copy load results to clipboard
date: '2025-08-09'
authors: [jetstream]
tags: [web, extension]
versions:
web: 7.2.0
extension: 2.1.0
summary: You can now copy load results directly to the clipboard as Excel, CSV, or JSON without downloading a file first.
highlights:
- title: Copy load results to clipboard
description: From the load results modal, copy all or selected rows to the clipboard in spreadsheet, CSV, or JSON format.
docLink: /load/load
platforms: [web, extension]
---

{/* truncate */}

## What's new

### Copy load results to clipboard

The load results modal now has a Copy to Clipboard button. The main button copies in a spreadsheet-friendly format (compatible with Excel and Google Sheets), and the dropdown next to it lets you choose CSV or JSON instead. This is handy when you want to paste a few rows into a ticket, spreadsheet, or script without going through a file download.

### Web extension 2.1.0

The browser extension picks up the same copy-to-clipboard option in the load results view.
43 changes: 43 additions & 0 deletions apps/docs/release-notes/2025-08-11-v7.3.0.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
slug: v7.3.0
title: 7.3.0 - Windows desktop app and in-app desktop/extension promotion
date: '2025-08-11'
authors: [jetstream]
tags: [web, desktop]
versions:
web: 7.3.0
desktop: 1.1.0
summary: The desktop app now installs and auto-updates on Windows (code-signed), and the web app surfaces links to the desktop and browser extension builds from the home screen.
highlights:
- title: Windows desktop app
description: Desktop 1.1.0 ships a signed Windows installer with proper install, update, and Start Menu shortcut handling.
docLink: /getting-started/desktop-app
platforms: [desktop]
- title: Alternative app formats on the home screen
description: The home screen now shows a card pointing entitled users to the desktop app and browser extension.
platforms: [web]
- title: Desktop entitlement fix
description: Desktop was missing from entitlement checks, so paid users could be blocked from the desktop build. This is corrected.
platforms: [web, desktop]
---

{/* truncate */}

## What's new

### Windows desktop app

Desktop 1.1.0 adds Windows support alongside macOS. The Windows build is signed via a cloud HSM and handles Squirrel install, update, and uninstall events correctly, including Start Menu shortcuts. If you tried the desktop app previously on Windows, grab the new installer.

### Home screen links to desktop and extension

When you have access to the desktop app or browser extension, the app home screen now shows a card linking to those builds so you can discover and install them without leaving Jetstream.

### Entitlement fix

The desktop entitlement was missing from the user profile entitlement list, which could block access for paid users. Desktop is now a first-class entitlement.

### Other improvements

- Added a documentation page for the desktop app.
- Desktop app can now receive notifications from the server.
27 changes: 27 additions & 0 deletions apps/docs/release-notes/2025-08-11-v7.3.1.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
slug: v7.3.1
title: 7.3.1 - Login session hardening
date: '2025-08-11'
authors: [jetstream]
tags: [web]
versions:
web: 7.3.1
summary: Patch release that regenerates the session on login and cleans up server logs that could include sensitive values.
highlights:
- title: Session regenerated on login
description: The login flow now always returns a fresh session so cached state from the pre-login request cannot carry over.
- title: Cleaner server logs
description: Removed log statements that could include sensitive header or identity values.
---

{/* truncate */}

## What's new

### Login session regeneration

Login now runs session regeneration as a promise-backed step, guaranteeing the session is fully rebuilt before the response is sent. A duplicate header-access bug introduced during the refactor was also fixed.

### Log hygiene

Removed several log lines that could echo sensitive identity or header data.
22 changes: 22 additions & 0 deletions apps/docs/release-notes/2025-08-14-v7.3.2.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
slug: v7.3.2
title: 7.3.2 - Fix view-results modal for bulk edits from query
date: '2025-08-14'
authors: [jetstream]
tags: [web]
versions:
web: 7.3.2
summary: Fixes a bug where viewing bulk results after bulk editing records from query results did nothing.
highlights:
- title: View bulk results works again
description: Bulk editing from query results and then clicking "view results" now opens the results modal instead of silently doing nothing.
docLink: /query/query-results
---

{/* truncate */}

## What's new

### Fixed: view bulk results from query

When bulk editing records from query results, opening the view/download results modal did nothing because the parent modal was hidden before the child modal could render. The modal component now keeps its DOM mounted while a child modal is active, and the Google Drive file picker no longer hides its parent. Reported in [#1328](https://github.com/jetstreamapp/jetstream/issues/1328).
34 changes: 34 additions & 0 deletions apps/docs/release-notes/2025-08-21-v7.3.3.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
slug: v7.3.3
title: 7.3.3 - Connected app guidance and annual pricing fix
date: '2025-08-21'
authors: [jetstream]
tags: [web]
versions:
web: 7.3.3
summary: Adds an in-app banner about upcoming Salesforce Connected App changes, updates the related docs, and fixes annual pricing display for existing subscribers.
highlights:
- title: Upcoming Salesforce Connected App notice
description: The home screen now shows a banner linking to guidance for preparing for Salesforce's upcoming Connected App changes.
docLink: /getting-started/troubleshooting
- title: Annual subscription pricing fix
description: Existing annual subscribers now see the correct price on the billing page.
- title: Docs refresh
description: Overview, security, and troubleshooting docs have been updated with current Connected App install steps.
---

{/* truncate */}

## What's new

### Connected App banner

A new banner on the app home screen points to updated guidance for Salesforce's upcoming Connected App changes. If you start hitting "not installed" errors when connecting a new org, the linked docs walk through installing the Jetstream Connected App into that org.

### Billing page fix

Annual subscribers were seeing an incorrect price on the "Existing Subscriptions" screen. The displayed price now matches the actual plan.

### Docs

The getting-started overview, security, and troubleshooting pages have been refreshed, and a screenshot was added to the connecting-an-org walkthrough.
22 changes: 22 additions & 0 deletions apps/docs/release-notes/2025-08-23-v7.3.4.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
slug: v7.3.4
title: 7.3.4 - One-click field change in query filters
date: '2025-08-23'
authors: [jetstream]
tags: [web]
versions:
web: 7.3.4
summary: Removes the extra clear step when changing the field in a query filter condition.
highlights:
- title: Faster field swap in query filters
description: The "x" button on a selected filter field is gone, so you can pick a different field in one click instead of two.
docLink: /query/query-results
---

{/* truncate */}

## What's new

### Query filter field swap

In the query builder filter rows, changing the selected field required clicking a clear button first and then picking the new field. The clear button has been removed so you can swap fields in a single click.
22 changes: 22 additions & 0 deletions apps/docs/release-notes/2025-08-23-v7.3.5.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
slug: v7.3.5
title: 7.3.5 - Diff editor collapses unchanged regions after swap
date: '2025-08-23'
authors: [jetstream]
tags: [web]
versions:
web: 7.3.5
summary: Fixes the view/compare metadata diff editor so collapsed unchanged regions stay collapsed after swapping the two sides.
highlights:
- title: Diff editor swap fix
description: Swapping sides in the view/compare metadata diff now re-renders the editor so unchanged regions collapse as expected.
docLink: /deploy/deploy-metadata
---

{/* truncate */}

## What's new

### Diff editor

When comparing two pieces of metadata, swapping the left and right sides previously left the collapsed-unchanged-regions behavior out of sync. The editor now re-renders on swap so collapsing works consistently. Reported in [#1315](https://github.com/jetstreamapp/jetstream/issues/1315).
Loading
Loading