Mike Dalessio
3e54b7e655
backups: sweep them into "/backups" if it exists
...
and delete any backups older than our data retention policy
ref: https://3.basecamp.com/2914079/buckets/37331921/todos/9175385847
2025-10-14 16:07:49 -04:00
Jason Zimdars
a0520d34fc
Merge pull request #1306 from basecamp/fix-postpones-copy
...
"Postpones" -> "Closes in"
2025-10-14 12:08:32 -05:00
Jason Zimdars
040c8a92c2
"Postpones" -> "Closes in"
2025-10-14 12:05:21 -05:00
Jorge Manrubia
690ba7e655
Merge pull request #1303 from basecamp/card-broadcasts
...
Improve page refreshes
2025-10-14 15:43:12 +02:00
Jorge Manrubia
b177f92ec1
Prevent view transition animations on page refreshes
...
View transitions don't play great with page refreshes as they can make those
very noticeable
2025-10-14 15:38:35 +02:00
Jason Zimdars
99d7f62dbc
Merge pull request #1299 from basecamp/order-stream-by-activity
...
Activity bumps cards to the top
2025-10-14 08:14:42 -05:00
Jorge Manrubia
956faaa67d
More fine-grained approach to listen for broadcasted refresh signals
...
Only listen for collections actually involved in the view
2025-10-14 11:10:49 +02:00
Jorge Manrubia
6d434ec467
Reuse existing cache invalidation logic that replaced this helper
2025-10-14 11:02:15 +02:00
Jorge Manrubia
d2838fc3d8
Show completed cards when filtering cards by creator
2025-10-14 10:35:18 +02:00
Jason Zimdars
940db09063
Refactor to remove workflows styles
2025-10-13 18:06:14 -05:00
Jason Zimdars
9fb583e21c
Display column when viewing cards in a grid (filtering)
2025-10-13 18:06:14 -05:00
Jason Zimdars
109822d57a
Dial back title size on perma
2025-10-13 18:06:14 -05:00
Jason Zimdars
1bb3b50fe6
Add bubble when The Stream has bubbled cards
2025-10-13 18:06:14 -05:00
Jason Zimdars
5256c2fa86
This got too wide in the collapsed state
2025-10-13 18:06:14 -05:00
Jason Zimdars
8d82a1557b
Allow selecting default color
...
- Adjust swatch layout to be more resilliant and space efficient
- Select text on focus
- Update placeholder
2025-10-13 18:06:14 -05:00
Jason Zimdars
03dcfe8964
Style
2025-10-13 18:04:12 -05:00
Jason Zimdars
679b4d2c94
Focus filter input with a hotkey, adjust sizing
2025-10-13 18:04:01 -05:00
Jason Zimdars
b49275508d
esc clears filters
2025-10-13 18:03:42 -05:00
Jason Zimdars
94b5b6fc9e
Activity bumps cards to the top of triaged columns, too
2025-10-13 15:51:35 -05:00
Jason Zimdars
fb865effac
Activity bumps cards to the top of the stream
2025-10-13 15:39:14 -05:00
Mike Dalessio
63458ceb87
Fix SQLiteBackupsJob to work with AR::Tenanted v0.5.0
...
ref: https://github.com/basecamp/activerecord-tenanted/pull/215
2025-10-13 08:47:16 -04:00
Andy Smith
424a7795a9
Hide column list when creating a new card
2025-10-10 16:53:34 -05:00
Andy Smith
cafb17d21f
Tray toggle height should match card size
2025-10-10 16:38:38 -05:00
Andy Smith
fe842723b6
Nevermind about the default reason :)
2025-10-10 15:07:17 -05:00
Andy Smith
5ff50fd352
Change default reason from Completed to Done
2025-10-10 15:04:47 -05:00
Andy Smith
81ce61aa9e
Match the column name in workflows
2025-10-10 14:56:25 -05:00
Andy Smith
8085509cfd
Use stable scrollbar gutters for the Fizzy menu
2025-10-10 13:22:06 -05:00
Mike Dalessio
ec119b774a
Remove the caching around Identity-related fragments
...
The Identity table read should be OK given the menu is etagged
and the untenanted page should be a rarity.
2025-10-10 11:53:36 -04:00
Mike Dalessio
b7abf33c29
Bump identity cache fragments
2025-10-10 11:08:39 -04:00
Mike Dalessio
04be825609
Fix identities for existing sessions
2025-10-10 10:58:30 -04:00
Mike Dalessio
3399e45130
Introduce an "Identity" model to ease login
...
- New untenanted Identity and Membership models
- New `identity_token` cookie with path "/" holds state across tenants
We're not sure whether the untenanted database will be sqlite or
MySQL, and so I've been careful to minimize
- database reads, placing them behind etags and caching
- database writes, only writing when a new Session is created (login)
Note that we track two things in the identity_token cookie: a signed
id, and the updated_at for the underlying Identity object. This allows
us to effectively cache on the Identity without having to hit the
database, by using an Identity::Mock object that is compatible with
etag and cache methods.
The new integration test shows the desired user-facing behavior, which
is to make it easy to login without a tenanted URL and to jump between
tenants.
- the untenanted "login_help" page shows all linked memberships
- the jump menu shows all linked memberships (except the current)
Also introduced a utility script to populate existing employee
Identities, grouping accounts by email address.
2025-10-10 10:12:25 -04:00
Andy Smith
9ead1d82ac
Merge branch 'main' into public-description-lists
...
* main: (21 commits)
Ruby 3.4.7 (#1274 )
bin/setup: enpurple step headings
bin/setup: ensure PATH is prepared after a new Ruby is installed
Drop defunct bin/bundle that interferes with Bundler's own version management
bin/setup: use Bash so we can bootstrap Ruby (#1273 )
Don't try to wrap with a download link, every file already has one in the caption
bundle lock --normalize-platforms
Show column title on public collections
Docker: explicit libssl dep
Ruby 3.4.6 (#1272 )
Check the selected color
Style
Add column color to cache keys
Make the edit form the same dimensions as the add form
Don't let the column button effect apply to buttons in the picker
Set and change column colors
Prom metrics in dev (#1269 )
Cleanup prototyping
Properly scroll and center content
Sorta working x-scroll
...
2025-10-09 16:08:16 -05:00
Jason Zimdars
094c2c056b
Don't try to wrap with a download link, every file already has one in the caption
2025-10-08 21:54:25 -05:00
Jason Zimdars
8c3f0c66b7
Show column title on public collections
2025-10-08 17:55:35 -05:00
Jason Zimdars
4bc304f762
Check the selected color
2025-10-08 17:37:10 -05:00
Jason Zimdars
3390cd95af
Style
2025-10-08 17:11:42 -05:00
Jason Zimdars
fcba8b6acb
Add column color to cache keys
...
So cards change colors when you change the column color
2025-10-08 17:08:32 -05:00
Andy Smith
24eaf9ff1f
Make lists in public description less weird
2025-10-08 16:52:22 -05:00
Jason Zimdars
7d8564996f
Make the edit form the same dimensions as the add form
2025-10-08 16:49:16 -05:00
Jason Zimdars
7fd8cb2297
Don't let the column button effect apply to buttons in the picker
2025-10-08 16:48:44 -05:00
Jason Zimdars
d7cf5c9348
Set and change column colors
2025-10-08 16:47:36 -05:00
Andy Smith
4638237889
Cleanup prototyping
2025-10-08 14:45:02 -05:00
Andy Smith
64175f040a
Properly scroll and center content
2025-10-08 14:34:56 -05:00
Andy Smith
86b458bad0
Sorta working x-scroll
2025-10-08 13:54:24 -05:00
Andy Smith
a701cf4324
WIP
2025-10-08 12:59:08 -05:00
Andy Smith
c87dce0e7f
Add gap
2025-10-08 10:57:07 -05:00
Jorge Manrubia
245823ad1c
Don't cache the whole stream column
...
It can result in serving the wrong watch button, causing trouble like https://fizzy.37signals.com/5986089/cards/2157
The list of cards is already cached.
2025-10-08 12:18:31 +02:00
Jorge Manrubia
509464778f
Format
2025-10-08 11:21:49 +02:00
Jason Zimdars
6f73c6a729
Fix squashed users lists
...
Regressed in 9b1cd84f96 cc: @andyra
2025-10-07 20:27:55 -05:00
Andy Smith
42aa213312
Remove aside and toolbar role from perma actions
2025-10-07 10:48:05 -05:00