Ryan Walters
0b5aeceb51
feat: improve test reliability and add request tracing
...
- Add retry configuration for flaky tests (2 retries for default, 3 for
OAuth)
- Configure test groups with proper concurrency limits (serial: 1,
integration: 4)
- Add tower-http tracing layer with custom span formatting for HTTP
requests
- Simplify database pool handling by removing unnecessary Arc wrapper
- Improve test context setup with better logging and error handling
- Refactor user creation parameters for better clarity and consistency
- Add debug logging for OAuth cookie handling
2025-09-19 17:35:53 -05:00
Ryan Walters
e1b266f3b2
refactor: rename Claims fields internally, maintain terse serialization with serde rename
2025-09-19 11:56:02 -05:00
Ryan Walters
76985f6390
refactor: allow testing of mocked providers via AuthRegistry creation, avoid creation of responses in auth
2025-09-19 11:50:25 -05:00
Ryan Walters
4a041a7695
test: apply coverage filters to pacman-server crate
2025-09-19 10:46:23 -05:00
Ryan Walters
62b619a3cc
ci: adjust timeouts for nextest given docker requirements
2025-09-19 10:28:59 -05:00
Ryan Walters
67c9460c84
refactor(auth): implement session-based PKCE and eliminate provider duplication
...
- Replace in-memory PKCE storage with encrypted session cookies
- Add PKCE verifier and CSRF state fields to JWT Claims struct
- Move common PKCE validation logic to OAuthProvider trait
- Extract provider-specific methods for token exchange and user fetching
- Remove PkceManager and DashMap-based storage system
- Update GitHub and Discord providers to use new session-based approach
2025-09-19 10:23:33 -05:00
Ryan Walters
7e98bc7488
test: add low slow-timeout for nextest
2025-09-19 09:50:48 -05:00
Ryan Walters
698f95ff32
refactor: clean test setup code, cleanup tests, separate into different files
2025-09-19 09:50:22 -05:00
Ryan Walters
54eca9f447
fix: install crypto provider default select
2025-09-19 08:54:20 -05:00
Ryan Walters
f9e79eb6d6
fix: move railway.json to root, explicitly configure with Dockerfile
2025-09-19 08:35:47 -05:00
Ryan Walters
408b660490
fix: drop unused fast_image_resize, drop toolchain back to 1.86, limit emscripten build to pacman project properly
2025-09-18 23:16:55 -05:00
Ryan Walters
cc06cd88a1
refactor: allow optional database in setup, use derived default
2025-09-18 22:58:38 -05:00
Ryan Walters
e2c725cb95
feat: allow health check forcing in debug, setup test mocking, plan out integration tests
2025-09-18 22:42:00 -05:00
Ryan Walters
350f92ab21
tests: setup basic tests, integration tests with testcontainers
2025-09-18 21:33:15 -05:00
Ryan Walters
3ad00bdcba
chore: setup lib for testing, image handling notes in README
2025-09-18 13:18:53 -05:00
Ryan Walters
7f9d3e9158
feat: implement r2 image upload for avatars
2025-09-18 13:18:14 -05:00
Ryan Walters
56e02e7253
refactor: remove unnecessary HashMap for passing code/state strings, formatter lifetime tweak
2025-09-17 13:18:58 -05:00
Ryan Walters
e2f3f6790f
refactor: create common pkce handling, max_age on link cookie
2025-09-17 13:08:48 -05:00
Ryan Walters
1be59f474d
feat: add Server header middleware, bump version to v0.4.0
2025-09-17 12:37:12 -05:00
Ryan Walters
916428fe76
feat: setup healthcheck route & background task
2025-09-17 12:32:52 -05:00
Ryan Walters
e02c2286bb
chore: add .scripts with local postgres setup script, setup todo list in README
2025-09-17 12:23:55 -05:00
Ryan Walters
c12dc11d8f
feat: normalize provider details into oauth_accounts table, auth linking intent, provider array in profile response
2025-09-17 11:17:31 -05:00
Ryan Walters
1cf3b901e8
feat: users table with sqlx, migrations, data persistence
2025-09-17 09:43:52 -05:00
Ryan Walters
ac1417aabc
feat: discord oauth provider, setup provider list route, add 'active' method, common type alias
2025-09-17 09:23:31 -05:00
Ryan Walters
8e23fb66a4
feat: setup smarter PKCE map purging & BasicClient type alias, smarter EnvFilter string building
2025-09-17 04:06:52 -05:00
Ryan Walters
92acb07b04
feat: setup tracing calls throughout project
2025-09-17 04:05:59 -05:00
Ryan Walters
18e750fa61
feat: add tracing/tracing-subscriber, setup CustomPrettyFormatter & CustomJsonFormatter
2025-09-17 03:48:35 -05:00
Ryan Walters
8d9c0621c9
feat: proper shutdown timeout handling
2025-09-17 03:41:13 -05:00
Ryan Walters
750b47b609
feat: add SIGINT/SIGTERM graceful shutdown handling
2025-09-17 03:36:59 -05:00
Ryan Walters
b1fae907ee
chore: add railway.json drainingSeconds
2025-09-17 03:33:39 -05:00
Ryan Walters
f3db44c48b
feat: setup github provider with generic trait, proper routes, session & jwt handling, errors & user agent
2025-09-17 03:33:18 -05:00
Ryan Walters
264478bdaa
chore: reformat recipes, add server/docker recipes, strip symbols for release
2025-09-17 01:30:04 -05:00
Ryan Walters
f69a5c7d52
feat: initial server config & Dockerfile
2025-09-16 22:13:35 -05:00
Ryan Walters
7ede82cc5d
feat: add pacman-common/pacman-server crates
v0.81.1
2025-09-16 09:36:12 -05:00
Ryan Walters
d0ee7db2ef
fix: update workspace Cargo.toml, README.md workspace distinctions
v0.81.0
2025-09-16 09:19:23 -05:00
Ryan Walters
a3c4c94d42
refactor: create workspace, move 'pacman' into pacman/ subfolder as workspace member
2025-09-16 01:07:16 -05:00
Ryan Walters
841cf5b83e
feat: implement pause state management and single tick command
2025-09-11 17:03:24 -05:00
Ryan Walters
a887fae00f
feat: separate player/ghost collider sizes, move fruit sprite up 1 pixel, add fruit TTL
v0.80.3
2025-09-11 14:46:07 -05:00
Ryan Walters
273385dfe4
refactor: improve audio system states, add try_new(), organize constants, volume memory
2025-09-11 14:45:48 -05:00
Ryan Walters
82cedf7e4a
fix: remove ConsoleInit condition, add ToggleFullscreen condition, helper 'push' just recipe
2025-09-11 13:49:44 -05:00
Ryan Walters
b58a7a8f63
chore: bump version, add 'dev-release' debug profile
v0.80.2
2025-09-11 13:46:05 -05:00
Ryan Walters
f340de80f3
feat: subsystem toggling via feature, release mode console allocation with ANSI, desktop file subscriber
2025-09-11 13:45:01 -05:00
Ryan Walters
d9ea79db74
fix: only run most workflows against 'master' branch
2025-09-11 09:41:21 -05:00
Ryan Walters
126b6ff378
feat: fullscreen toggle key
v0.80.1
2025-09-11 09:10:19 -05:00
Ryan Walters
36e9de1a1f
chore: bump to v0.80.0, update ROADMAP.md
v0.80.0
2025-09-11 02:26:39 -05:00
Ryan Walters
9ad1704806
feat(audio): setup intro jingle, use fruit & ghost sounds, improve AudioEvent
2025-09-11 02:24:15 -05:00
Ryan Walters
86331afd52
refactor(audio): rename eat() to waka(), use play(Sound) for death() instead
2025-09-11 02:11:57 -05:00
Ryan Walters
cca205fe95
chore: compress .ogg audio files
2025-09-11 02:01:44 -05:00
Ryan Walters
00a65954e6
refactor: unify cross-platform asset loading, avoid hard-coding with folder-based asset embedding for desktop
2025-09-11 01:11:00 -05:00
Ryan Walters
43532dac56
feat(audio): centralize sound management with proper enum, improved iterator protocols, introduce new sound files
2025-09-11 00:40:09 -05:00