| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
| |
Access to "global" (maybe "external?") state is now handled at the top level of the component hierarchy, in `+page.svelte`, `+layout.svelte`, and their associated scripts. State is otherwise passed down through props, and changes are passed up through callbacks.
This is - hopefully - groundwork for refactoring state management a bit. I wanted to move access to state out to a smaller number of places, so that I have fewer places to update to implement reconnect logic. My broader goal is to make it easier to refactor these kinds of external side effects, as well, though no such changes are in this branch.
This change also makes testing a mile easier, since tests can interact with props and callbacks instead of emulating the whole HTTP request stack and the Pilcrow API. This change removes do-very-little tests.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
Browsers cope with weird nestings mostly fine, but there's no upside for us in testing that.
|
| | |
|
| |
|
|
|
|
| |
According to <https://stackoverflow.com/a/6803278>, this was needed for old versions of Safari. However, since at least 2022, Safari has supported `content: none` just fine.
Related Safari bug (still open as of this writing, comments relevnat): <https://bugs.webkit.org/show_bug.cgi?id=20032>
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
There are a couple of migration suggestions from `cargo fix --edition` that I have deliberately skipped, which are intended to make sure that the changes to `if let` scoping don't bite us. They don't, I'm pretty sure, and if I turn out to be wrong, I'd rather fix the scoping issues (as they arise) than use `match` (`cargo fix --edition`'s suggestion).
This change also includes a bulk reformat and a clippy cleanup.
NOTA BENE: As this requires a new Rust toolchain, you'll need to update Rust (`rustup update`, normally) or the server won't build. This also applies to the Debian builder Docker image; it'll need to be rebuilt (from scratch, pulling its base image again) as well.
|
| |
|
|
| |
It's amazing what you can learn by skimming the docs.
|
| |
|
|
| |
It was here to support axum 0.7.x.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
list.
This fixes a bug. To reproduce:
1. Open the client and log in.
2. Create a new channel using the `create channel` UI.
The expected result - and the behaviour after this commit - is that the newly-created channel will be shown in the sidebar immediately. The buggy behaviour is that it was not, but would appear in the sidebar once the client is reloaded. The channel would also not appear for other clients until they reloaded.
I'm not actually completely sure of _why_ this fixes the bug, but it does.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can't quite update rusqlite to latest as well, as it uses a slightly newer libsqlite3-sys crate. I made sure this pair of versions is valid:
% cargo tree --invert libsqlite3-sys
libsqlite3-sys v0.30.1
├── rusqlite v0.32.1
│ └── pilcrow v0.1.0 (/Users/owen/Projects/grimoire.ca/pilcrow)
└── sqlx-sqlite v0.8.3
└── sqlx v0.8.3
└── pilcrow v0.1.0 (/Users/owen/Projects/grimoire.ca/pilcrow)
libsqlite3-sys v0.30.1
└── sqlx-sqlite v0.8.3
└── sqlx-macros-core v0.8.3
└── sqlx-macros v0.8.3 (proc-macro)
└── sqlx v0.8.3 (*)
As both sqlx and rusqlite resolve to use the same version of libsqlite3-sys, we're fine.
|
| | |
|
| |
|
|
| |
I hit an actual Svelte bug (it was misattributing which component state changes originated in) that's fixed in newer Svelte 5, so I might as well hit 'em all.
|
| | |
|
| |\ |
|
| | |
| |
| |
| | |
Let's try this.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
The rounded corners on an iPhone shouldn't be cut off now.
|
| | | |
|
| | |\ |
|
| | | |
| | |
| | |
| | |
| | | |
We're not using Overlock currently, but I think it'll be good on headers
and stuff?
|
| | | |
| | |
| | |
| | | |
chrome).
|
| | | |
| | |
| | |
| | | |
The rounded corners on an iPhone shouldn't be cut off now.
|
| | |/
|/| |
|
| | | |
|
| |\ \ |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
out overlapping with the main area
|
| | | |
| | |
| | |
| | | |
own/other messages.
|
| | | | |
|
| | | |
| | |
| | |
| | | |
some visually-displeasing shapes and gaps near the bottom of the app.
|
| | |/ |
|
| | | |
|
| | | |
|