LeoVasanko
|
1800dc12ae
|
Light/dark selection in user profile, if set this is preferred on the whole system, together with app overrides (the first one on the URL wins).
|
2026-01-30 23:31:06 +00:00 |
|
LeoVasanko
|
cc55474e62
|
Light/dark override for in-app login dialogs to match app style e.g. light only
|
2026-01-30 22:59:52 +00:00 |
|
LeoVasanko
|
8ac2c8e5fa
|
Screenshots on README.
|
2026-01-29 22:50:54 +00:00 |
|
LeoVasanko
|
2ee8ddf1d1
|
Log proper action for delete_session depending on what function it performs: logout, delete_session (user's own) or admin:delete_session.
|
2026-01-29 22:44:22 +00:00 |
|
LeoVasanko
|
d58b3742b1
|
Smarter change logging on console, properly display newly created items (not available via jsondiffs).
|
2026-01-29 22:39:16 +00:00 |
|
LeoVasanko
|
5879be39a5
|
Better change entry logging.
|
2026-01-29 22:09:26 +00:00 |
|
LeoVasanko
|
5b3406025c
|
Silence type checker about our unconventional imports.
|
2026-01-29 22:09:03 +00:00 |
|
LeoVasanko
|
dda57ac27d
|
Fix WS access log IP margin size change missed in earlier commit.
|
2026-01-29 21:39:30 +00:00 |
|
LeoVasanko
|
5e12dcba76
|
Add paskia-js to Python build; update build-frontend to use fastapi-vue utils for JS_RUNTIME that also can be set via env now. Fix paskia-js compatibility issue with deno, now works with all three runtimes.
|
2026-01-29 21:33:09 +00:00 |
|
LeoVasanko
|
be7a9e7f00
|
Smarter access log formatting with IPv6.
|
2026-01-29 21:17:50 +00:00 |
|
LeoVasanko
|
3d2151fed7
|
Add support for perm=foo+bar to specify multiple scopes that are required. Multiple perm args are acceptable too. Pretty logging of permission denied errors.
|
2026-01-29 21:11:29 +00:00 |
|
LeoVasanko
|
58b56a09a4
|
Restrict remote auth to the existing granting user's credentials.
|
2026-01-29 20:24:26 +00:00 |
|
LeoVasanko
|
731b36b456
|
Cleanup auth WS code, refactor to remove duplication and pass proper context.
|
2026-01-29 20:15:01 +00:00 |
|
LeoVasanko
|
8f9cd1124c
|
Add missing context on update_session.
|
2026-01-29 19:51:56 +00:00 |
|
LeoVasanko
|
7e49ef296a
|
Create a stand-alone paskia npm package (paskia-js). Make the frontend use it (but from source tree to keep synced).
|
2026-01-29 19:46:26 +00:00 |
|
LeoVasanko
|
af35ff3d4c
|
Add a screenshot.
|
2026-01-29 19:15:17 +00:00 |
|
LeoVasanko
|
dac1415a86
|
More of a normal white path color.
|
2026-01-29 16:57:30 +00:00 |
|
LeoVasanko
|
433844cf08
|
Refactor to separate paskia lib functionality generally useful for various apps.
|
2026-01-29 16:55:46 +00:00 |
|
LeoVasanko
|
c9ea1c8948
|
Consistent and stronger session revalidation checks in Auth profile and Admin App. Fix missing handling of link generation network errors.
|
2026-01-29 16:02:29 +00:00 |
|
LeoVasanko
|
58f46c6abf
|
Logging cleanup, better colors, suppress more useless messages. Enable reloading in devmode again (needs uvicorn.run to function).
|
2026-01-29 14:48:59 +00:00 |
|
LeoVasanko
|
7c4418e631
|
Smarter change logging on console.
|
2026-01-28 23:22:03 +00:00 |
|
LeoVasanko
|
1648c8641f
|
Improved access logging.
|
2026-01-28 23:01:35 +00:00 |
|
LeoVasanko
|
63eb088dbd
|
Cleanup
|
2026-01-28 20:31:33 +00:00 |
|
LeoVasanko
|
e88cc004dd
|
Implement versioning in metadata, outside of the DB itself. Cleanup to migration handling and changes. Implement new migration step using msgspec normalization.
|
2026-01-28 20:21:09 +00:00 |
|
LeoVasanko
|
76921e8b31
|
Add migrate:msgspec for changes in schema that don't require version bump. Rename the other migrations to migrate:sql and migrate:v{N}.
|
2026-01-28 19:24:15 +00:00 |
|
LeoVasanko
|
c1b0aab296
|
Cleanup
|
2026-01-28 19:17:24 +00:00 |
|
LeoVasanko
|
8f89bb6d4b
|
Modules missing git add
|
2026-01-28 19:04:18 +00:00 |
|
LeoVasanko
|
d16d1ed1c2
|
Make database changes outside of transaction a fatal error. Fix bootstrap and migrate to work with various latest changes.
|
2026-01-28 19:04:00 +00:00 |
|
LeoVasanko
|
2cfca81672
|
Fix a bug with validate returning 401 when a session was refreshed. Simplify & cleanup.
|
2026-01-28 18:45:02 +00:00 |
|
LeoVasanko
|
ce300ebdaf
|
API to use msgspec structs as well.
|
2026-01-28 18:31:45 +00:00 |
|
LeoVasanko
|
7329223784
|
Implement full ORM. Various other cleanup.
|
2026-01-28 17:19:56 +00:00 |
|
LeoVasanko
|
c8d659b5ca
|
Move get_session_context to DB.session_ctx().
|
2026-01-28 14:52:18 +00:00 |
|
LeoVasanko
|
29ea6426fe
|
Problem solved, remove extraneous migration, reset to v1.
|
2026-01-28 02:29:53 +00:00 |
|
LeoVasanko
|
88a170a37b
|
Debug DB problem
|
2026-01-28 02:27:26 +00:00 |
|
LeoVasanko
|
38d240d86d
|
Credential update was being done out of transaction, now part of login.
|
2026-01-28 02:22:47 +00:00 |
|
LeoVasanko
|
53362b8061
|
Debug DB problem
|
2026-01-28 02:19:54 +00:00 |
|
LeoVasanko
|
d3d5f5a3c8
|
Remove get_session_context setting of host (now read only op as expected). Make session host, ip and user_agent always set (the ua potentially empty string).
|
2026-01-28 02:14:34 +00:00 |
|
LeoVasanko
|
d156fb9221
|
Fix migration logic.
|
2026-01-28 02:02:18 +00:00 |
|
LeoVasanko
|
f868bc59d1
|
Fix migration logic.
|
2026-01-28 01:58:36 +00:00 |
|
LeoVasanko
|
0022986d4e
|
Implement migration to remove created_at timestamp from Orgs that already has one, bumping db v1.
|
2026-01-28 01:52:33 +00:00 |
|
LeoVasanko
|
b08cca754f
|
Remove Org.created_at to maintain compatibility with old versions (the field was not being used).
|
2026-01-28 01:31:35 +00:00 |
|
LeoVasanko
|
aa58f08bc5
|
Hardened PATCH handling (only allow updating select fields). Hardened DB transactions, rollback.
|
2026-01-28 01:13:05 +00:00 |
|
LeoVasanko
|
1062b5d6c8
|
Fix background task still running twice, and add a check to prevent that happening again (double expiry).
|
2026-01-27 23:51:13 +00:00 |
|
LeoVasanko
|
3d49cbf2d6
|
Disable API docs that display very much broken due to missing request/response typing.
|
2026-01-27 23:27:42 +00:00 |
|
LeoVasanko
|
13c49aebfd
|
Remove unnecessary use of async now that db access doesn't need awaiting.
|
2026-01-27 23:16:17 +00:00 |
|
LeoVasanko
|
abec77d561
|
Broken import
|
2026-01-27 22:46:49 +00:00 |
|
LeoVasanko
|
9b505ff553
|
DB background worker cleanup, avoid issue with double cleanup. Faster write to disk.
|
2026-01-27 22:21:33 +00:00 |
|
LeoVasanko
|
ddd70e6130
|
Cleaner typing to avoid some checking errors.
|
2026-01-27 22:04:14 +00:00 |
|
LeoVasanko
|
cf1124c251
|
DB transactions cleanup, better actor/user data. Simplified admin API. Use UUID to refer to a specific permission in admin API. Other cleanup.
|
2026-01-27 21:48:21 +00:00 |
|
LeoVasanko
|
7504aaf7e0
|
Move imports to top of file.
|
2026-01-27 20:16:32 +00:00 |
|
LeoVasanko
|
e8247a2c7f
|
Remove most remaining DB getters. Add ws auth chat helper function to avoid repetition, along with the existing register chat in wschat.py.
|
2026-01-27 20:01:17 +00:00 |
|
LeoVasanko
|
968964c4c9
|
Remove db.get_session.
|
2026-01-27 18:28:32 +00:00 |
|
LeoVasanko
|
6aa1a08e39
|
Remove list_sessions_for_user, inline db access at call sites.
|
2026-01-27 18:25:29 +00:00 |
|
LeoVasanko
|
31f40d874c
|
DB cleanup: removed get_permission_organizations and build_org. Using db.data() for read access at call sites.
|
2026-01-27 18:23:17 +00:00 |
|
LeoVasanko
|
7530d7a710
|
DB cleanup continued: Made the working copy data public in DB class.
|
2026-01-27 18:02:16 +00:00 |
|
LeoVasanko
|
90d5f0e45f
|
Remove runtime expiry checks; the db background cleanup makes this unnecessary.
|
2026-01-27 16:55:07 +00:00 |
|
LeoVasanko
|
f0d1b86d6b
|
Database cleanup continues, build functions replaced by post init. Simplified some APIs.
|
2026-01-27 16:53:13 +00:00 |
|
LeoVasanko
|
dbdd1dbd3c
|
Missing import in migrate script.
|
2026-01-27 16:26:48 +00:00 |
|
LeoVasanko
|
8f862fb4d1
|
Consistently use UUID type in APIs instead of UUID str as option.
|
2026-01-27 16:24:02 +00:00 |
|
LeoVasanko
|
cfb917da46
|
DB getter refactoring. Documented call sites. Added separate function for by-scope permission lookup.
|
2026-01-27 15:54:28 +00:00 |
|
LeoVasanko
|
3a8e7d1f4f
|
Remove credentials: 'include', a mechanism that we don't actually use.
|
2026-01-27 15:23:19 +00:00 |
|
LeoVasanko
|
86966526c4
|
Finalize database API class merge.
|
2026-01-27 03:00:18 +00:00 |
|
LeoVasanko
|
3196aa7688
|
Refactor API to match database, no _uuid postfixes.
|
2026-01-27 02:32:46 +00:00 |
|
LeoVasanko
|
2fadaea19c
|
Update E2E tests with changes since a while back.
|
2026-01-27 02:24:09 +00:00 |
|
LeoVasanko
|
cb84a81a06
|
Update the API to use new naming matching database.
|
2026-01-27 02:22:29 +00:00 |
|
LeoVasanko
|
9bdca1f43a
|
Finish the database key-in-object refactoring.
|
2026-01-27 02:11:09 +00:00 |
|
LeoVasanko
|
0f29544bdb
|
Database cleanup, better UUID passing and construction (User model).
|
2026-01-27 01:25:52 +00:00 |
|
LeoVasanko
|
4ddaa9fdf4
|
Cleanup and bugfixes on Bootstrap and JSONL handling.
|
2026-01-26 23:54:03 +00:00 |
|
LeoVasanko
|
7e568dbd10
|
Refactor validate endpoint to return session context, leaving user-info only for extra profile data. Completely separate token-info for reset tokens. Simplified by reusing same data structures in various places and mandating fields to have values not needing fallbacks. Implemented consistent AccessDenied view in profile and admin apps.
|
2026-01-26 19:40:48 +00:00 |
|
LeoVasanko
|
fbc6108b7a
|
Fix frontend-build location. Cleanup.
|
2026-01-25 03:26:22 +00:00 |
|
LeoVasanko
|
6e649f1f07
|
Fix test expected HTTP code.
|
2026-01-25 03:20:28 +00:00 |
|
LeoVasanko
|
8d68e5d237
|
Add missing set_session_host on dunder all.
|
2026-01-25 03:17:32 +00:00 |
|
LeoVasanko
|
5ee7443801
|
Use fastapi-vue-setup, merging its template scripts to old Paskia entry point and devserver. Simplified CLI, no longer uses serve subcommand. Fixed the URL displayed on banner to show to actual frontend/caddy server even in devmode.
|
2026-01-25 03:15:50 +00:00 |
|
LeoVasanko
|
2100a7e14f
|
Logging cleanup, linter.
|
2026-01-24 01:08:00 +00:00 |
|
LeoVasanko
|
aae33e60ce
|
Fix errors where permission scopes were still expected for indexing.
|
2026-01-24 00:58:18 +00:00 |
|
LeoVasanko
|
cebef8adfc
|
Large refactoring for better JSONL context. Switched back the urlsafe for session tokens that need to be passed in URLs. Other minor fixes.
|
2026-01-24 00:40:32 +00:00 |
|
LeoVasanko
|
57a9c60557
|
Don't load existing JSONL on migrate.
|
2026-01-24 00:08:21 +00:00 |
|
LeoVasanko
|
a9ef20969e
|
Refer permissions by UUID rather than scope.
|
2026-01-24 00:06:08 +00:00 |
|
LeoVasanko
|
57748876cb
|
Debug JSONL updates.
|
2026-01-23 23:49:11 +00:00 |
|
LeoVasanko
|
ba552e24cd
|
Debug JSONL updates.
|
2026-01-23 23:41:47 +00:00 |
|
LeoVasanko
|
dbe4149b63
|
Debug JSONL updates.
|
2026-01-23 23:35:00 +00:00 |
|
LeoVasanko
|
3d5f82c3df
|
Debug JSONL updates.
|
2026-01-23 23:29:47 +00:00 |
|
LeoVasanko
|
2a005692ee
|
Fixes to JSONL management, starting from empty state rather than default DB.
|
2026-01-23 21:31:54 +00:00 |
|
LeoVasanko
|
2ec6314264
|
Simplify session and reset token formats; removes the token utility functions entirely.
|
2026-01-23 20:53:03 +00:00 |
|
LeoVasanko
|
ae4c982a30
|
Fix actor fields and transactions for API operations as they are recorded to DB.
|
2026-01-23 20:19:33 +00:00 |
|
LeoVasanko
|
c2933d60c2
|
Update migrate script with the latest database changes.
|
2026-01-23 19:56:44 +00:00 |
|
LeoVasanko
|
d4ebc1bf99
|
Record user UUID as actor for API access.
|
2026-01-23 19:55:54 +00:00 |
|
LeoVasanko
|
0f857ffb78
|
Cleanup, add database versioning.
|
2026-01-23 19:22:23 +00:00 |
|
LeoVasanko
|
b7ebe68665
|
Refactor to use UUID and bytes rather than str keys in msgspec structs because the module can automatically convert these.
|
2026-01-23 18:47:56 +00:00 |
|
LeoVasanko
|
f9d23a196c
|
Database refactor to separate modules.
|
2026-01-23 18:27:12 +00:00 |
|
LeoVasanko
|
2c6a5c72d9
|
Updated database to use async background worker, making changes lock-free synchronous ops.
|
2026-01-23 15:57:16 +00:00 |
|
LeoVasanko
|
c13044c085
|
Change PUT to PATCH for intent-based updates, avoiding override of fields not intended to change. This preserves role permissions matrix even if the permission is temporarily removed from the org.
|
2026-01-23 15:41:23 +00:00 |
|
LeoVasanko
|
2c783498a4
|
Better handling of Org Admin permission. More guardrails for Master Admin not locking himself out by changes. Admin app UI improvements.
|
2026-01-23 15:11:01 +00:00 |
|
LeoVasanko
|
3430c7f0cf
|
Permissions refactor. Permissions have UUID and scope (previously id) and the latter no longer needs to be unique. Org admin uses a single global permission now. Domain scoped permissions. Removed from user info the admin fields, use effective_permission checks instead.
|
2026-01-23 13:54:31 +00:00 |
|
LeoVasanko
|
236d52aa55
|
Replace session.renewed with .expiry for consistency with other expiring items. Fix migration script.
|
2026-01-23 01:39:59 +00:00 |
|
LeoVasanko
|
02e04da2c4
|
Database cleanup: make it synchronous because we work with in-memory data. Defer writes to disk and cleanup to background task. Tests passing.
|
2026-01-23 01:22:47 +00:00 |
|
LeoVasanko
|
7f3763b46d
|
Replace SQL database with JSONL based solution that keeps history.
|
2026-01-23 00:54:37 +00:00 |
|
LeoVasanko
|
0fe55b2b62
|
Update docs/Caddy.md
|
2025-12-19 22:53:10 +00:00 |
|
LeoVasanko
|
ccf71bf0a3
|
Docs updates.
|
2025-12-19 21:09:56 +00:00 |
|
LeoVasanko
|
cdaeecb179
|
Docs updates.
|
2025-12-19 21:08:40 +00:00 |
|