Mike Dalessio
36727ba5ea
Introduce a separate controller for collection entropy config
...
which opens the door to rendering turbo frames in the responses to
collection edits.
2025-07-02 17:41:29 -04:00
Mike Dalessio
2377770ef6
Stay on the collection edit page after changing workflow
...
ref: https://fizzy.37signals.com/5986089/collections/2/cards/852
2025-07-02 16:53:53 -04:00
Mike Dalessio
b99b80bc3d
Merge pull request #690 from basecamp/flavorjones/cleanup-20250702
...
Cleanup after moving beta into a datacenter
2025-07-02 15:27:01 -04:00
Mike Dalessio
4537037a4c
squash! Remove session controller actions other than delete
2025-07-02 15:23:59 -04:00
Mike Dalessio
7f1b384425
Remove the invitation codes for now
...
until I circle back for https://3.basecamp.com/2914079/buckets/37331921/todos/8746162337
2025-07-02 15:15:05 -04:00
Mike Dalessio
fa1c5f7279
Remove session controller actions other than delete
...
and do some general cleanup around sessions controllers and the
sign_in_as test helper
2025-07-02 15:03:28 -04:00
Mike Dalessio
c8be7418c1
Account.signal_account is no longer optional
2025-07-02 12:04:26 -04:00
Mike Dalessio
da69bd1689
Remove local authentication code
2025-07-02 11:59:21 -04:00
Mike Dalessio
4fafeee4a9
Drop the password column from the users table.
2025-07-02 11:59:14 -04:00
Mike Dalessio
08db57644a
Merge pull request #665 from basecamp/flavorjones/path-based-tenanting
...
Account slug tenanting
2025-07-02 10:52:18 -04:00
Mike Dalessio
84ed83a2c6
Script to create Users for existing 37id accounts
...
intended for staging
2025-07-01 17:41:54 -04:00
Mike Dalessio
7089fbe0d4
Configure Mission Control to skip tenanted authentication
...
In 29644ba1 we configured HTTP basic auth to secure it for now.
2025-07-01 15:56:14 -04:00
Mike Dalessio
8e666a5247
Script to update URLs and attachments in cards and comments
2025-07-01 15:56:14 -04:00
Mike Dalessio
9c59a85abd
Make sure seeds are creating sluggable tenants
2025-07-01 15:56:14 -04:00
Mike Dalessio
444b7aa69f
Script to rename tenants after the QB account id
2025-07-01 15:56:14 -04:00
Mike Dalessio
f8cbf51f71
Update the signups tests to work with untenanted paths
2025-07-01 15:56:14 -04:00
Mike Dalessio
b8368de002
Update the Command classes to handle paths with account slugs
2025-07-01 15:56:14 -04:00
Mike Dalessio
3d39bdc9f3
Update bin/dev to point at the new tenant URLs
2025-07-01 15:56:14 -04:00
Mike Dalessio
3844dc9ff3
Patch Active Storage controllers to generate slugged URLs
...
This really only impacts the Disk service in development.
I proposed this upstream in https://github.com/rails/rails/pull/55248 ,
but it's not clear if the presence of script_name should _always_
prefix generated URLs, so for now it's local to Fizzy.
2025-07-01 15:56:14 -04:00
Mike Dalessio
98e6bd8cd7
Point Action Cable at the slugged cable endpoint
...
I proposed this upstream in https://github.com/rails/rails/pull/55250 ,
but it's not clear if the presence of script_name should _always_
prefix generated URLs, so for now it's local to Fizzy.
2025-07-01 15:56:14 -04:00
Mike Dalessio
e378c5a45e
Extract pieces from the tenanting initializer
...
into:
- tenanting/account_slug
- tenanting/logging
- tenanting/turbo
2025-07-01 15:56:14 -04:00
Mike Dalessio
e68e2eb971
Patch Turbo to use the request script name
...
so that the URLs generated during view rendering are correct
2025-07-01 15:56:14 -04:00
Mike Dalessio
33d5eccb70
Use the new AR::Tenanted convention for action cable connections
2025-07-01 15:56:14 -04:00
Mike Dalessio
f43a5ff22c
Use a tenant resolver that recognizes the account slug
...
and sets the script name accordingly
2025-07-01 15:56:14 -04:00
Mike Dalessio
6905198b66
dep: Use the patched AR::Tenanted branch
2025-07-01 15:56:14 -04:00
Mike Dalessio
5f31e6612b
Merge pull request #685 from basecamp/flavorjones/fix-sqlite-backups
...
SQLiteBackupsJob explicitly uses db_config.database_path
2025-07-01 15:39:45 -04:00
Mike Dalessio
fe8b71c2c9
SQLiteBackupsJob explicitly uses db_config.database_path
...
because using db_config.database will give us the sqlite file URL with
query params, and that's not what we mean.
This should restore nightly backups.
2025-07-01 15:32:13 -04:00
Jorge Manrubia
43ec523eaa
Update action text lexical!
2025-07-01 09:58:33 +02:00
Jorge Manrubia
c2e1b36d7e
Merge pull request #675 from basecamp/command-errors
...
Show command errors
2025-07-01 09:56:42 +02:00
Jorge Manrubia
50b4f34f34
Copy tweaks
2025-07-01 09:51:11 +02:00
Jorge Manrubia
888923d32b
Copy tweaks
2025-07-01 09:50:10 +02:00
Jorge Manrubia
01bda1b529
Merge pull request #672 from basecamp/filter-ignore-diacritics
...
Convert diacritics to approximations before filtering
2025-07-01 09:46:14 +02:00
Jorge Manrubia
a5f5a4ec26
Remove helper not used anymore because lexical handles it
...
https://github.com/basecamp/actiontext-lexical/pull/18
2025-07-01 09:44:24 +02:00
Jorge Manrubia
2ab322adfe
Tidy up code to normalize text, extract text helpers
2025-07-01 09:42:22 +02:00
Mike Dalessio
96408e6088
Merge pull request #683 from basecamp/flavorjones/fix-closed-notifications
...
Fix notification rendering on card closure events
2025-06-30 23:49:20 -04:00
Mike Dalessio
3156fbd770
Fix notification rendering on card closure events
...
where the closure no longer exists, possibly due to being
reopened.
Previously, fragment caching generally prevented any problems, but if
the cache is busted for any reason (like Andy did in c7eeb56c ), then
the previous logic would raise an exception like "undefined method
'reason' for nil".
So, if the closure no longer exists, let's just note that it was
closed, and by who.
2025-06-30 23:45:53 -04:00
Jason Zimdars
fb1ec2ab3a
Copy edits
2025-06-30 18:14:48 -05:00
Jason Zimdars
ab5d6931de
Color the output red, too
2025-06-30 18:14:43 -05:00
Jason Zimdars
ffb422ac61
This attribute is no longer needed
2025-06-30 17:31:07 -05:00
Jason Zimdars
dec57f1a9a
Perform conversion on the client side
2025-06-30 17:30:34 -05:00
Jason Zimdars
3af949edca
Merge branch 'main' into filter-ignore-diacritics
...
* main:
Clear the comments cache
Add context for search screens
Needs changed for both states
Use lighter icon and update asset
Add btn--circle class to user edit form
Organize button variants
Untangle `avatar btn` crossover styles
Remove redundant classes and styles for avatars
Adjust footer line height
Tweak padding
2025-06-30 17:01:43 -05:00
Andy Smith
ec287b2a50
Merge pull request #676 from basecamp/clear-cache
...
Clear the comments cache
2025-06-30 16:48:12 -05:00
Andy Smith
c7eeb56cfa
Clear the comments cache
2025-06-30 16:47:08 -05:00
Jorge Manrubia
179ae45bf3
Show command errors
...
I went with placing htis logic at the command level since it plays well with the composite structure, where you don't know whether you are handling one command or many commands, and you want to aggregate all the errors. I didn't leverage the existing support with rails' model errors because that customizing those message is cumbersome (either i18n or using custom validation logic for everything).
2025-06-30 23:10:39 +02:00
Jorge Manrubia
eb3fc208a9
Merge pull request #674 from basecamp/search-context
...
Make search results screen a "cards context for Fizzy do
2025-06-30 22:15:30 +02:00
Jorge Manrubia
9db96bc4a4
Add context for search screens
2025-06-30 22:13:42 +02:00
Andy Smith
95310da203
Merge pull request #650 from basecamp/misc-polish
...
Tweak padding
2025-06-30 15:07:41 -05:00
Jason Zimdars
f3c3a72887
Needs changed for both states
2025-06-30 15:00:03 -05:00
Jason Zimdars
a8e495db36
Merge branch 'update-bookmark-button'
...
* update-bookmark-button:
Use lighter icon and update asset
2025-06-30 14:52:10 -05:00
Jason Zimdars
45f2ace71b
Use lighter icon and update asset
2025-06-30 14:47:33 -05:00