- 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.
* 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
...
* main: (47 commits)
Remove overflow from columns
Only reverse Watching button if icon_only
Move video captions below content
Account#slug uses the virtual "tenant" attribute
Rename LOCAL_AUTHENTICATION to OSS_CONFIG
Add a script to generate unique passwords per email address
Visually hide the pagination indicator
Use hide avatars from tabindex on preview
Render a helpful menu of tenants temporarily
Remove code related to Launchpad auth or 37id Users
Formatting
Fix missing close bracket from merge
Reverse involvement buttons if watching
Only render the manifest link for tenanted URLs
Move load-balancer to fizzy-lb-101
Add otel_collector accessory for load balancer
Fix: this was getting idiomorph confused as it was being invoked on many subtree elements
Keep column popups during page refreshes
Don't render next link unless there is more activity
Live updates for the collection perma
...
* main: (24 commits)
Move load-balancer to fizzy-lb-101
Add otel_collector accessory for load balancer
Fix: this was getting idiomorph confused as it was being invoked on many subtree elements
Keep column popups during page refreshes
Don't render next link unless there is more activity
Live updates for the collection perma
Keep filter panel during page refreshes
Add pagination to the list of filtered cards
Use frame based pagination for the users timeline too
Use frame-based pagination for the activity timeline
Don't broadcast updates of cards unless published
Live updates for the timeline
Make permanent to avoid losing menu on page refreshes
Use the new required attribute that now Lexxy supports
Use controller to disable empty comment submit
Dynamic height for pins based on viewport height
Position lexxy language picker
Replace old link with proper collection path
No longer needed
Prevent card bubbles getting clipped in grid layout
...