← All releases
Thirty-six changes and eleven database migrations, the largest release since August. One answers a bug report a troop member filed through the site's feedback form: the broadcast recipient picker no longer needs the Ctrl key. Two are merit badge catalog refreshes that touch about 90 badges. One adds a place to keep per-member documents.
What's new on the site
Email
- Pick broadcast recipients by clicking, not by holding Ctrl. A troop member reported that adding more than one group to a broadcast needed a Ctrl-click, and asked for a two-step flow instead. The Recipient Groups field is now a row of chips you click to add or remove. The recipients preview below it gains a name filter, Select all and Select none buttons, and a checkbox per person in place of the red X.
- A related fault, found while building this. The recipients preview showed the audience for the previous choice, not the current one, when groups were changed quickly. It now shows the current one.
- A failed broadcast can be retried from its own page. When a broadcast reached only some of its recipients — the page already said "3 of 190 delivered" — there was no way to try again without staff help. A failed broadcast now shows a Retry Send button, which sends only to the people who did not get it, and a line explaining that nobody is mailed twice.
- The weekly onboarding reminder reaches more than the Scoutmaster. When a troop has not named a dedicated onboarding coordinator, the reminder went to whoever holds the Scoutmaster position and nobody else. It now goes to every active Scoutmaster, Committee Chair and Membership Coordinator, each with their own unsubscribe link.
Advancement and merit badges
- Choice requirements are now separate, individually signable rows. For about 90 merit badges, a "Do ONE of the following" requirement was stored as one long paragraph with every option inside it, so a counselor signing off saw a wall of text. Each is now a short intro row plus one row per option — "6a", "6b", "6c" — the same shape required multi-part requirements already had. Nothing enforces "pick exactly one"; the counselor still signs off whichever option the Scout completed.
- A limit, corrected in the next release. The splitter stopped after the fifth option and numbered some options
51, 81 instead of 5a, 8a. Eighty-six rows read wrong in this release; v0.54.0 rebuilds them.
- Sixty-five merit badges carry the 2025 requirement wording. BSA updated 70 badges in its 2025 requirements book; 65 of them still showed the old text. A scout already partway through one of these badges keeps working from the wording they started under. A scout who starts after this release sees the 2025 text.
- A scout mid-rank can be moved to a newer requirement version. When BSA republishes a rank, a Scoutmaster-level leader now sees a Change Version button on that scout's in-progress rank card. It opens a window showing exactly what carries over, what is dropped and what is new, then applies the switch. The button appears only when a newer version actually exists, which will be rare.
- A future-dated requirement update no longer goes live early. An operator loading a badge update dated for next January would have put it in force the moment it was loaded. Ten places that ask "which version is current" now respect the date. Nothing on the site changes today, because no award carries a future date; this makes the November pre-load safe.
- Position of Responsibility credit follows the scout's own checkbox. A position's catalog entry could veto rank-advancement credit for every scout in that role, overriding the "Track credit" box a leader had checked on the scout's own assignment. The catalog veto is gone; the per-scout checkbox decides. Position settings now show an editable "Default: track credit toward advancement" box instead. Existing assignments keep today's outcome — a leader re-checks Track credit where the old veto applied.
- The counselor portal's Cancel button works. Editing a merit badge sign-off date opened an inline row whose Cancel button did nothing. It now discards the edit, like every other Cancel on the site.
Events and campouts
- Archived events still count. Camping trips, hikes, service projects and meetings that had been archived stopped counting toward a scout's attendance and advancement credit, even though attendance was really taken. They now count everywhere attendance and credit are totaled; cancelled events still never count. The missing-attendance worklist shows archived events too, badged "Archived". The Archived events tab now also lists imported activity-credit records so leaders can find, fix or delete them.
- Required documents on an event can be edited and deleted. A typo or a duplicate was stuck on the event forever, short of deleting the whole event. Each required-document row now has an Edit link and a Delete button, gated the same way as adding one. Deleting warns how many people already acknowledged the document.
- The Phase 3 compliance checklist stays put. Clicking a compliance checkbox on a trip's Phase 3 page jumped the whole page down. It no longer jumps; the counts at the top of the checklist update the moment you click, and the row dims while it saves.
Scouts and families
- Per-member documents. A new Documents area holds health forms, permission slips, background checks and similar files against a member, with visibility controlled per document type. Set up the types under Admin → Data Types → User Documents; each member profile gets a Documents card, and Members → Scouts and Members → Adults each get a Documents tab. Files are stored securely.
- Changing a training course's expiration term re-dates everyone who took it. Editing a course's "Expiration (months)" setting used to leave every existing completion on the old date until each was re-saved by hand. Saving the course now re-dates all of them at once and reports "N existing record(s) were updated". Setting a course to "does not expire" clears those dates.
- Re-importing an unchanged roster no longer rewrites every row. An unedited 215-row re-import reported 215 updates and wrote 215 history entries for nothing. A matched row whose values already match is now reported as "skip (no change)". This release proves it on the Equipment importer; the other importers follow.
Galleries
- Gallery photos open about ten times faster. The lightbox loaded the camera original — typically 3.8 MB and 5,700 pixels wide, drawn at about 1,500. A 1,600-pixel display copy is now shown, with the original one click away. The thumbnail is shown while the display copy loads.
- A campout's gallery is labeled by its event type. Galleries kept two separate links, one to an event and one to a campout, even though a campout is a kind of event. There is now one link. Nothing changes on a gallery you already have.
The phone app
- The mobile advancement list no longer errors for an incomplete scout record. A troop carrying a scout record with no advancement profile crashed the advancement list and search. That scout is now left off the list instead.
Public pages
- Buttons on the public site tightened up. The landing page, both signup pages and the seven feature pages now use the same button style: sharper corners, and the gold buttons lighten on hover. Same words, same links.
Behind the scenes
Nothing here changes what you see on the site.
- A member record now states plainly whether someone is an adult, a scout, and part of the troop. Thirty-three places in the code guessed the third from the first, and two of them disagreed. One visible consequence: a broadcast reaching youth where the only other person present is an outside contact now shows the two-deep warning it should.
- A PDF component was updated. Every generated PDF — emergency-contact sheets, the sign-off matrix, org chart, rosters, exports — was re-checked.
- Operators can load a BSA requirement update from a file and preview what it adds, removes and changes before applying it. No troop-facing change until an update is applied.