Andy Smith
4db715ca5f
Merge pull request #2515 from basecamp/card-column-refresh
...
Only disable the current column if it's open
2026-02-09 16:09:40 -06:00
Andy Smith
b3951564bc
Only disable the current column if it's open
2026-02-09 16:02:02 -06:00
Andy Smith
e1a70a330d
Merge pull request #2513 from basecamp/truncate-account-menu
...
Truncate long account names in the menu
2026-02-09 10:51:02 -06:00
Mike Dalessio
8c5b47d774
Group notification emails by board ( #2506 )
...
* Group notification emails by board
Notification bundle emails now group items by board instead of
showing the board name redundantly for each card. Each board
section has a linked header and an <hr> separator.
* Adjust board title styles and remove rem units
* Sort board groups alphabetically
Sort notification email board sections alphabetically by name
(case-insensitive).
Also, rewrite mailer tests to use Nokogiri::HTML5 for precise DOM
assertions instead of regex matching.
---------
Co-authored-by: Andy Smith <andy@37signals.com >
2026-02-09 11:29:11 -05:00
Andy Smith
4127eaeacf
Truncate long account names in the menu
2026-02-09 10:22:58 -06:00
Rosa Gutierrez
692fd73512
Run only Solid Queue's maintenance tasks in staging
...
And not all production tasks, because that causes unexpected side
effects such as cards being auto-postponed and firing webhooks
configured to trigger on that event.
2026-02-09 13:19:12 +01:00
dependabot[bot]
9622e5dad4
Bump actions/attest-build-provenance from 3.1.0 to 3.2.0 ( #2499 )
...
Bumps [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance ) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/actions/attest-build-provenance/releases )
- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md )
- [Commits](https://github.com/actions/attest-build-provenance/compare/v3.1.0...v3.2.0 )
---
updated-dependencies:
- dependency-name: actions/attest-build-provenance
dependency-version: 3.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-08 10:35:19 -08:00
dependabot[bot]
52ec23ff21
Bump docker/login-action from 3.6.0 to 3.7.0 ( #2500 )
...
Bumps [docker/login-action](https://github.com/docker/login-action ) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/docker/login-action/releases )
- [Commits](https://github.com/docker/login-action/compare/v3.6.0...v3.7.0 )
---
updated-dependencies:
- dependency-name: docker/login-action
dependency-version: 3.7.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-08 10:35:11 -08:00
Mike Dalessio
bd1ef1f650
dep: bump console1984 to 746cd443 ( #2495 )
...
to pick up the session incineration fix
ref: https://3.basecamp.com/2914079/buckets/27/card_tables/cards/9552285400
2026-02-06 10:24:04 -05:00
Adrien Maston
a8676ada4c
Merge pull request #2490 from basecamp/fix-hidden-filters-in-firefox
...
Fix hidden filters in Firefox
2026-02-06 11:01:54 +01:00
Andy Smith
90cf405391
Merge pull request #2492 from basecamp/accounts-page-overflow
...
Content overflow scrolling for users list
2026-02-05 13:23:22 -06:00
Andy Smith
8e93f9d45e
Content overflow scrolling for users list
2026-02-05 13:20:01 -06:00
Adrien Maston
9c7afcbee8
Merge pull request #2484 from basecamp/mobile/fix-board-scroll-position
...
Mobile / Fix expanded column not being scrolled into view
2026-02-05 17:47:38 +01:00
Adrien Maston
cf6cd7d7c5
Merge pull request #2491 from basecamp/mobile/bridge-back-to-board-button
...
Mobile / Bridge back to board button
2026-02-05 17:43:12 +01:00
Adrien Maston
4072688974
Use a dedicated link to bridge a "go to" board button
2026-02-05 17:36:48 +01:00
Adrien Maston
fe555f751e
Move "Edit" action to ellipsis menu
2026-02-05 17:33:29 +01:00
Adrien Maston
626b8aa8a6
Revert "Show "Go to" board button in card perma"
...
This reverts commit d689f560b4 .
2026-02-05 17:31:37 +01:00
Adrien Maston
186d759672
Instant scrolling on restore, animated on user action
2026-02-05 17:17:49 +01:00
Adrien Maston
d689f560b4
Show "Go to" board button in card perma
2026-02-05 17:04:03 +01:00
Stanko Krtalić
421525e725
Merge pull request #2480 from basecamp/move-import-button-to-signup-screen
...
Move import button to sign up screen
2026-02-05 12:33:11 +01:00
Adrien Maston
9d4655d35e
Make filters "open" by default then hide in mobile apps
2026-02-05 11:12:50 +01:00
Mike Dalessio
14aa95d982
Add migration script to fix misplaced comment events ( #2487 )
...
Finds comment events that are on the wrong board (after a card move)
and updates them to the correct board.
2026-02-04 15:27:33 -05:00
Mike Dalessio
d611b2cc6c
Move comment events when card moves to a new board ( #2486 )
...
When a card moves between boards, comment events were staying on the
old board. Now they move with the card.
2026-02-04 15:04:28 -05:00
Denis Svara
d032f88c59
Merge pull request #2476 from basecamp/mobile/associated-domains
...
Add `apple-app-site-association` file to support iOS Universal Links
2026-02-04 20:32:35 +01:00
Adrien Maston
171b8caa45
Switch non-animated scrolling in the mobile apps
2026-02-04 18:35:12 +01:00
Mike Dalessio
1e4a411cf2
Merge pull request #2482 from basecamp/omit-inactive-users-from-mentions
...
Omit inactive users from board mention picker
2026-02-03 18:45:19 -05:00
Mike Dalessio
e311d8f521
Omit inactive users from board mention picker
...
The board-scoped mention prompt was returning all users with board access,
including those marked as inactive. This adds the `.active` scope to match
the behavior of the account-wide mention prompt.
Fixes https://app.fizzy.do/5986089/cards/3861
2026-02-03 18:42:15 -05:00
Mike Dalessio
8074bfd43e
Merge pull request #2481 from basecamp/import-associations-check
...
Validate ActionText associations during import check phase
2026-02-03 17:47:10 -05:00
Mike Dalessio
7f473eda66
Validate ActionText associations during import check phase
...
ActionTextRichTextRecordSet now calls check_associations_dont_exist to
ensure imported ActionText records only reference records within the
same import, matching the behavior of the parent RecordSet class.
2026-02-03 13:46:28 -05:00
Stanko K.R.
02e6c15e32
Move import button to sign up screen
2026-02-03 18:02:58 +01:00
Adrien Maston
1c6c77d356
Merge pull request #2475 from basecamp/mobile/fix-board-default-scroll-position
2026-02-03 17:59:50 +01:00
Mike Dalessio
df037e21fb
Merge pull request #2478 from basecamp/bg-image-boost
...
Fix boost button appearing prematurely on draft cards
2026-02-03 10:59:22 -05:00
Mike Dalessio
015bc3420e
Fix boost button appearing prematurely on draft cards
...
When updating a draft card (e.g., adding a background image), the turbo
stream response was using the published card container partial, which
includes the reactions/boost button. Draft cards should use the draft
container partial which intentionally omits reactions.
Fixes https://app.fizzy.do/5986089/cards/3970
2026-02-03 09:28:08 -05:00
Stanko Krtalić
636b109dba
Merge pull request #2477 from basecamp/fix-crash-during-export
...
Fix crash during export
2026-02-03 15:04:27 +01:00
Stanko K.R.
1c1a73c57c
Check if the file exists before adding it
...
ZipKit creates a placeholder record when add_file is called, this record is then filled with the content that's passxed to write. But if the blob's file doesn't exist then an error is rased and the placeholder is never filled. This results in a ZIP that has a place in its catalog for the blob, but no contant for it, which makes it invalid.
2026-02-03 15:01:10 +01:00
Stanko K.R.
ffce51a42f
Ignore faulty ZIP files
2026-02-03 14:04:54 +01:00
Stanko K.R.
a4bec6e407
Ignore missing attachments
2026-02-03 13:51:22 +01:00
Adrien Maston
aa3103de3c
Rename handleDesktop method
2026-02-03 12:52:54 +01:00
Denis Švara
3f44ff286e
Add apple-app-site-association file to support associated domains.
2026-02-03 12:48:30 +01:00
Adrien Maston
43d12b27ed
Expand maybe column is no expanded column is found in localStorage
...
... to trigger scrolling into view
2026-02-03 12:12:20 +01:00
Adrien Maston
45f65bd1c3
Merge pull request #2466 from basecamp/mobile/hide-sections-from-apps
...
Mobile / Hide sections from apps
2026-02-03 11:29:08 +01:00
Adrien Maston
2ab9dd8a30
Remove no-longer wanted margin
...
... after getting the newer stuff from main
2026-02-03 11:25:35 +01:00
Adrien Maston
a6a20fa56e
Merge branch 'main' into mobile/hide-sections-from-apps
...
* main: (65 commits)
Fix crash due to missing ActiveStorage URL options
Capture backtrace of nested errors
Remove debug code
Add more debug info
Pass all service options
Prevent duplicate files in user data export
Write in binmode
Replace custom IO object with a transport manager IO
Explain imports & exports
Add missing method to IO object
Rename jobs
Finishing touches
Delete accounts for failed imports
Check that associations don't exist
Bust the cache after import
Explicitly use the default storage service
Fix ActiveStorage writing to disk
Fix crash on successful import email
Fix orphaned attachments when deleting the whole account
Add size to remote io
...
2026-02-03 10:49:16 +01:00
Stanko Krtalić
0f1850c674
Merge pull request #2474 from basecamp/fix-crash-during-export
...
Fix crash due to missing ActiveStorage URL options
2026-02-02 21:51:49 +01:00
Stanko K.R.
b497aa07e9
Fix crash due to missing ActiveStorage URL options
2026-02-02 21:49:06 +01:00
Stanko Krtalić
571af6be5a
Merge pull request #2473 from basecamp/fix-crash-during-export
...
Capture backtrace of nested errors
2026-02-02 21:38:58 +01:00
Stanko K.R.
e587cb6a2b
Capture backtrace of nested errors
2026-02-02 21:37:37 +01:00
Stanko K.R.
5eb15ebf4d
Remove debug code
2026-02-02 21:33:48 +01:00
Stanko Krtalić
30b2c7f27a
Merge pull request #2472 from basecamp/fix-crash-during-export
...
Add more debug info
2026-02-02 21:26:29 +01:00
Stanko K.R.
e0c3e09aa9
Add more debug info
2026-02-02 21:17:43 +01:00