Released October 8, 2026

TroopPlanner v0.67.0

← All releases

Forty-six work items, 50 changes, and one database migration, which only rewords a setting's help text. This release closes the known gaps left at the end of v0.66.0: the troop's name on the public gallery and printouts, plain-text event reminders, and a set of smaller page fixes. It also adds a per-person email option for broadcasts, roster sorting on several columns at once, and a page to roll back one scout's advancement record.

What's new on the site

Email and messages

  • Broadcasts can go out as one email per person. A new troop setting sends every broadcast and newsletter recipient a separate email. Each person sees only their own address and gets their own unsubscribe link. Parents are told which of their scouts the message also went to. The setting is off by default, so nothing changes until a troop turns it on.
  • Event reminder emails include a plain-text version. They were HTML only, which reads badly in a text-only mail program and scores worse with spam filters.
  • The sender hears about a broadcast that died mid-send. When the sending job stopped partway through, the broadcast was marked failed and nobody was told. The sender now gets a notice that delivery may be partial, with the option to send it again.
  • The group picker keeps keyboard focus. After you pick a recipient group with the keyboard, focus stays in the picker and Escape closes the list.

Scouts and rosters

  • Roster pages sort on several columns, and the sort stays. On the attendance roster and every other roster page, a sort used to reset when you changed the filter. You can now sort by one column, then another, in the order you click. Sorts and filters stay in place until you press Reset.
  • One scout's advancement record can be rolled back. Roll back this scout, in the History section of a scout's page, opens a list of recent changes to that scout's ranks, merit badges, sign-offs, Boards of Review and positions. Rolling back to a row undoes that change and every later one for that scout only. Other scouts are not touched. Only leaders with the top Settings level can do this.
  • The org chart's empty state shows its heading and tip instead of a blank box.
  • Save on a position's page returns you to that page, not to the position list.

Advancement and positions

  • Every way to assign a position follows the position's credit setting. The Assign position form on the advancement page saved every new term as counting toward rank, even for a position set not to count. All screens, imports and commands that start or end a term now go through one path, so they apply the same rules and write the same history entry.
  • The Eagle readiness table scrolls as one region. It had three scrollbars fighting over the same mouse wheel.

Events

  • Hiking and service events always show the override column. A leader had to type 0 as the event default before they could record anyone's miles or hours. A tagged event now shows the column with or without a default, and a blank default counts as 0.
  • The Actions card shows for anyone who may take an action. A member who may edit a draft but not manage the event got no Actions card. The card now appears whenever you may take any of its actions, and it shows only the controls you may use.
  • Waitlist badges name the queue. Scouts and adults wait in separate lines, so a scout and an adult could both read "Waitlisted - #1". The badge now reads "Waitlisted - #1 Scout" or "Waitlisted - #1 Adult". The phone app's home screen follows in a later release.
  • The bulk-edit page no longer claims edits apply to the whole series. They apply only to the events you select, as the preview page already said.

Campouts, equipment and planning

  • The campout list's Phase badge reads "Phase 1", "Phase 2" and so on. It was always blank.
  • Equipment check-in refuses a return date in the future.
  • A refused change to a campout's required document shows a red, labeled error, not plain text under the field's internal name.
  • An empty TO PLAN list links to the create form.

The phone app

  • Record BOR is gray until the other requirements are done, then turns green, matching the desktop. It stays tappable in both states.
  • A refused offline sign-off is flagged in every case. v0.66.0 covered the case where the app sends the queued work. When the phone's background sync sends it first, any open page is now told what the server refused, so the row reads "Not saved" instead of "Signed".
  • The offline copy stores the right style sheet and scripts. The app cached four files under names no page asks for, so they never served offline. It now caches the names pages actually request.

The top bar

  • The leader top bar wraps on a narrow screen, and the notification dropdown opens above page content. Before, buttons pushed the bell off the right edge of a phone screen, and the dropdown sometimes opened underneath the events calendar.

Names, wording and downloads

  • The public photo gallery and two printouts name the troop. The gallery header read "TroopPlanner", and the printed advancement report and contact list printed a blank troop name.
  • About 111 explanatory passages were cut or shortened across the site: subtitles that repeat the heading, "click the button below" hints, and help text that repeats the label. Warnings, rules and format hints stay.
  • Dynamic groups read "2 criteria", not "2 criteriona".
  • The Table Export page uses the site's colors and is readable in dark mode.
  • The TroopMaster import warns less. On a real export, 52 of 63 edition warnings were noise, because the catalog holds no merit badge editions before 2024. The import now warns only when a real edition exists and disagrees.

Behind the scenes

Nothing here changes what you see on the site.

  • Updates no longer undo catalog corrections. Every update reloaded the whole BSA catalog and undid corrections made on the live site. It now loads only missing rows.
  • A command deletes a retired troop's data once its six months have passed, as the privacy page promises.
  • Phone snapshots rebuild for the right troop when a change is made from a background job. Before, the rebuild could wait up to two hours.
  • The TroopMaster history import sees catalog changes right away.
  • New checks stop old faults coming back: one path to start or end a position term, and no new pages in the old template system, which is now removed.
  • Checking tools: the nightly smoke test, the page-reachability report and two flaky tests were fixed; the speed check budgets now use the 90th percentile; and offline sync has its first browser test.