Commit Graph

8933 Commits

Author SHA1 Message Date
Stanko Krtalić 86c8736bb8 Merge pull request #2379 from basecamp/fix-ocassional-ruby-vm-crash-due-to-bootsnap
Bump Bootsnap to v1.21.1
2026-01-16 14:30:08 +01:00
Stanko K.R. a811ba1b2a Bump Bootsnap to v1.21.1 2026-01-16 14:26:46 +01:00
Andy Smith 002149a1a7 Merge pull request #2375 from basecamp/image-card-fix
Fix regression on cards with background images
2026-01-15 12:31:22 -06:00
Andy Smith ff050505d5 Use correct class selectors to target cards with background images 2026-01-15 12:27:29 -06:00
Jorge Manrubia 62021a3b82 Merge pull request #2292 from basecamp/update-lexxy-tables
Update to latest Lexxy
2026-01-15 16:52:33 +01:00
Jorge Manrubia af9f53d82d Update lexxy to latest 2026-01-15 16:38:07 +01:00
Jorge Manrubia f9d85570e6 Hide table button for now 2026-01-15 16:37:27 +01:00
Zoltan Hosszu b28a88c185 Table CSS tweaks 2026-01-15 16:34:56 +01:00
Zoltan Hosszu 43fa7fb6aa Update to Lexxy 0.7.0beta 2026-01-15 16:34:56 +01:00
Zoltan Hosszu 1a9b59ebb1 Revert "Wrap tables in div"
This reverts commit 2a2feb469eac7fe8b3957d11c6bc147cb63be51a.
2026-01-15 16:34:56 +01:00
Zoltan Hosszu 21d6316daf Wrap tables in div
This prevents overflow of huge tables
2026-01-15 16:34:56 +01:00
Zoltan Hosszu a5a24d0085 CSS updates for <table> support 2026-01-15 16:34:56 +01:00
Jorge Manrubia ce1c04803e Update to latest Lexxy 2026-01-15 16:34:56 +01:00
Stanko Krtalić 75710ecd42 Merge pull request #2371 from basecamp/fix-subscriber-count
Show only active subscriptions
2026-01-15 08:03:02 +01:00
Stanko K.R. 2fa3056e14 Show only active subscriptions 2026-01-15 08:00:19 +01:00
Mike Dalessio 5615b9f6f5 Add paid accounts stats to admin dashboard
Shows total, 7-day, and 24-hour counts of paid accounts based on
subscription created_at. Excludes comped accounts and avoids
double-counting accounts with multiple subscriptions.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 16:45:43 -05:00
Rosa Gutierrez 832e63f99a Keep URLs in webhook events absolute
Follow-up to #2318

These are sent to other apps, so they need to be absolute. I changed
this too eagerly when I was moving calls to `polymorphic_url`.
2026-01-14 21:15:42 +01:00
Rosa Gutierrez ee636f1994 Delete orphaned watches and pins when a card is moved to a private board
For watchers and users with pins that don't have access to the private
board where the card was moved to.
2026-01-14 19:38:15 +01:00
Rosa Gutierrez 0f35109e00 Merge pull request #2318 from basecamp/relative-urls
Use relative URLs where possible across all the app
2026-01-14 11:05:44 +01:00
Rosa Gutierrez bf224b19f5 Add rollback script to convert relative URLs back to absolute 2026-01-14 11:01:42 +01:00
Rosa Gutierrez bf6fe75b7c Add a script to migrate existing rich texts to relative URLs 2026-01-14 11:01:42 +01:00
Rosa Gutierrez 527ffc42b9 Use relative URLs where possible across all the app
Skipping API responses, where we need absolute URLs, and those that are
intended for sharing or external use:

- account/join_codes/show.html.erb - Join code URL for sharing
- boards/edit/_publication.html.erb - Publication URL for sharing
- public/* views - Public page URLs and og:url meta tags
- pwa/manifest.json.erb - PWA manifest needs absolute URLs

For this, we had to replace `url_for` used with Active Storage variants
and previews with the specific path helper (for Active Storage
representations).
2026-01-14 11:01:42 +01:00
Rosa Gutierrez 235890e666 Use relative URLs for avatars and rich text attachments
These URLs can be problematic or inconsistent, as we might end up with
rich text content with beta URLs for attachments being used in
production, or viceversa. It'll also be problematic when importing or
exporting data between a self-hosted instance and the SaaS version.
2026-01-14 11:01:42 +01:00
Andy Smith 8823ff8930 Merge pull request #2359 from basecamp/disable-current-column
Disable card column buttons when active
2026-01-13 17:06:07 -06:00
Andy Smith c8059dea90 Disable card column buttons when active 2026-01-13 16:15:33 -06:00
Andy Smith b4413acffc Merge pull request #2357 from basecamp/comment-boost-overlap
Prevent comment content from overlapping with reaction button
2026-01-13 14:17:58 -06:00
Andy Smith fe57d9d013 Prevent comment content from overlapping with reaction button 2026-01-13 11:55:01 -06:00
Andy Smith 819864b756 Merge pull request #2355 from nqst/txt-balance
Add `.txt-balance` utility and use it for Magic Link instructions
2026-01-13 10:32:11 -06:00
Andy Smith d79ffced89 Merge pull request #2351 from basecamp/improve-board-loading
Move handleDesktop inside restoreColumnsDisablingTransitions
2026-01-13 10:25:22 -06:00
Rosa Gutierrez 5e099c4c06 Delete pins belonging to cards in a board with revoked access
As part of cleaning up inaccessible data in the board after revoking
access.
2026-01-13 16:25:59 +01:00
Stanko Krtalić 829dd345f6 Merge pull request #2322 from drjayvee/locals-only-partial
Replace use of instance variable with local
2026-01-13 13:26:53 +01:00
Stanko Krtalić c61f57d7da Merge pull request #2352 from basecamp/dependency-updates
Dependency updates
2026-01-13 12:25:59 +01:00
Stanko K.R. d5f270fe3a Update development dependencies in SAAS lockfile 2026-01-13 12:06:43 +01:00
Stanko K.R. f6557856f7 Update runtime dependencies
Updated kamal, bootsnap, rqrcode, net-http-persistent, web-push, aws-sdk-s3, bcrypt & rouge
2026-01-13 12:03:43 +01:00
Stanko K.R. 40a5d6211e Update development dependencies 2026-01-13 11:52:10 +01:00
Alexander Zaytsev 6c6a7be607 Balance magic link instructions 2026-01-13 09:51:35 +01:00
Alexander Zaytsev 603e4d10b3 Add .txt-balance utility 2026-01-13 09:50:37 +01:00
Stanko Krtalić ceff6ea4df Merge pull request #2344 from secretpray/fix/deprecation-warnings-only
Fix deprecation warnings for skip_before_action :verify_authenticity_token
2026-01-13 08:59:15 +01:00
Andy Smith 589ae1ab36 Move handleDesktop inside restoreColumnsDisablingTransitions 2026-01-12 16:23:20 -06:00
Andy Smith 2d118b0bcd Merge pull request #2349 from basecamp/card-placeholder-mobile
Clean up blank slates
2026-01-12 15:46:57 -06:00
Andy Smith f428bfaa7c Adjust border radius 2026-01-12 15:43:59 -06:00
Andy Smith 64fdbf6b8f Clean up blank slates 2026-01-12 15:37:06 -06:00
Andy Smith 30928a1f5a Merge pull request #2348 from basecamp/events-dialog-manager
Add dialog manager to events page
2026-01-12 14:04:24 -06:00
Andy Smith 4dedfce39f Add dialog manager to events page 2026-01-12 14:00:37 -06:00
Andy Smith 6192fc5be8 Merge pull request #2347 from basecamp/andy-12-jan
Andy 12 jan
2026-01-12 13:56:08 -06:00
Andy Smith 8288e85df6 More sturated mini bubbles in light mode 2026-01-12 13:34:30 -06:00
Andy Smith df7df74752 Brighten mini bubbles in dark mode 2026-01-12 13:31:36 -06:00
Rosa Gutierrez 025d70dd13 Use separate cache namespaces for each beta instance
Otherwise we end up with views including URLs from all the betas,
leading to some confusion and problems with the CSP.
2026-01-12 20:28:18 +01:00
Andy Smith ca5bca9796 Bump boost size up a tick on mobile 2026-01-12 13:18:39 -06:00
Andy Smith 8bb043bef8 Move Undo form inside closure message element 2026-01-12 13:14:37 -06:00