2025-04-06T09:14:52Z - 2026-04-06T09:14:52Z

Overview

61 Active Pull Requests
40 Active Issues
Excluding merges, 1 author has pushed 15 commits to main and 136 commits to all branches. On main, 15 files have changed and there have been 2945 additions and 172 deletions.

13 Releases published by 1 user

Published 2026.4.3 2026-04-02 16:59:33 +00:00

Published 2026.4.2 2026-04-02 01:20:52 +00:00

Published 2026.4.1 2026-04-01 22:45:43 +00:00

Published 2026.3.7 2026-03-28 07:29:24 +00:00

Published 2026.3.6 2026-03-17 21:44:39 +00:00

Published 2026.3.5 2026-03-10 14:05:23 +00:00

Published 2026.3.4 2026-03-10 00:42:13 +00:00

Published 2026.3.3 2026-03-08 22:38:35 +00:00

Published 2026.3.2 2026-03-03 03:48:15 +00:00

Published 2026.3.1 2026-03-03 01:31:28 +00:00

Published 2026.2.3 2026-02-18 19:50:20 +00:00

Published 2026.2.2 2026-02-17 23:57:33 +00:00

Published 2026.2.1 2026-02-17 23:42:29 +00:00

36 Pull requests merged by 2 users

Merged #105 fix: correct column references in season pitching stats SQL 2026-04-02 16:57:31 +00:00

Merged #104 fix: let HTTPException pass through @handle_db_errors 2026-04-02 16:57:14 +00:00

Merged #103 hotfix: remove output caps from GET /players 2026-04-02 01:19:53 +00:00

Merged #99 Fix unbounded API queries causing worker timeouts 2026-04-01 22:44:40 +00:00

Merged #84 fix: remove hardcoded fallback password from DB connection 2026-03-28 07:26:56 +00:00

Merged #64 Release: merge next-release into main 2026-03-17 21:43:38 +00:00

Merged #44 fix: validate sort_by parameter with Literal type in views.py (#36) 2026-03-10 14:41:31 +00:00

Merged #58 fix: remove unimplementable skipped caching tests (#33) 2026-03-10 14:40:18 +00:00

Merged #54 fix: replace print(req.scope) with logger.debug in /api/docs (#21) 2026-03-10 14:38:59 +00:00

Merged #52 fix: eliminate N+1 queries in batch POST endpoints (#25) 2026-03-10 14:37:57 +00:00

Merged #50 fix: replace bare except: with except Exception: (#29) 2026-03-10 14:35:10 +00:00

Merged #49 fix: remove unused imports in standings.py and pitchingstats.py (#30) 2026-03-10 14:34:39 +00:00

Merged #47 fix: invalidate cache after PlayerService write operations (#32) 2026-03-10 14:33:26 +00:00

Merged #46 fix: remove empty WEEK_NUMS dict from db_engine.py (#34) 2026-03-10 14:30:31 +00:00

Merged #43 perf: push limit/offset to DB in PlayerService.get_players (#37) 2026-03-10 14:29:15 +00:00

Merged #59 fix: calculate lob_2outs and rbipercent in SeasonPitchingStats (#28) 2026-03-10 14:24:07 +00:00

Merged #63 chore: pin all Python dependency versions in requirements.txt (#62) 2026-03-10 14:04:22 +00:00

Merged #61 fix: standardize all collection POST routes to use trailing slash 2026-03-10 00:41:22 +00:00

Merged #60 fix: case-insensitive team_abbrev filter in transactions endpoint 2026-03-08 22:37:47 +00:00

Merged #41 fix: raise HTTPException in recalculate_standings on failure (#23) 2026-03-03 03:47:30 +00:00

Merged #39 fix: assign order_by() return value in GET /api/v3/games (#24) 2026-03-03 01:29:29 +00:00

Merged #18 ci: Use shared composite actions from cal/gitea-actions 2026-02-18 19:47:56 +00:00

Merged #17 feat/stratplay-sbaplayer 2026-02-17 23:56:42 +00:00

Merged #16 fix: Use Gitea API for tag creation instead of git push 2026-02-17 23:41:49 +00:00

Merged #15 ci/calver 2026-02-17 23:35:04 +00:00

Merged #11 fix: Replace fragile locals() pattern in PATCH endpoints 2026-02-12 15:37:11 +00:00

Merged #12 ci: switch Docker build cache to type=registry 2026-02-11 22:14:22 +00:00

Merged #10 fix/standings-streak-sort-order 2026-02-10 21:05:42 +00:00

Merged #9 Optimize player search endpoint for 30x performance improvement 2026-02-06 13:33:52 +00:00

Merged #7 Set default sort on teams 2026-02-06 03:00:48 +00:00

Merged #6 fix: Respect short_output parameter in player search endpoint 2026-02-06 02:11:23 +00:00

Merged #5 chore/cleanup-legacy-files 2026-02-05 19:33:34 +00:00

Merged #4 fix: Prevent locals() from polluting player PATCH data dict 2026-02-04 21:00:24 +00:00

Merged #3 fix: Resolve Player.data AttributeError in patch_player endpoint 2026-02-04 20:49:28 +00:00

Merged #2 fix: Exclude deprecated pitcher_injury field from player responses 2026-02-04 20:05:19 +00:00

Merged #1 Test PR from Jarvis 2026-02-04 19:08:43 +00:00

25 Pull requests proposed by 2 users

Proposed #42 fix: remove db.close() from handle_db_errors error handler (#38) 2026-03-05 16:02:59 +00:00

Proposed #45 fix: remove token value from Bad Token log messages (#35) 2026-03-05 17:32:27 +00:00

Proposed #48 fix: remove commented-out dead code blocks (#31) 2026-03-05 19:34:59 +00:00

Proposed #51 fix: eliminate N+1 queries in get_custom_commands (#26) 2026-03-05 22:03:44 +00:00

Proposed #53 fix: replace print() debug statements with logger calls in db_engine.py (#22) 2026-03-06 00:34:17 +00:00

Proposed #55 fix: remove hardcoded fallback database password from db_engine.py (#20) 2026-03-06 01:33:42 +00:00

Proposed #56 fix: remove hardcoded Discord webhook URL from dependencies.py (#19) 2026-03-06 02:02:26 +00:00

Proposed #57 fix: remove unimplemented is_trade parameter from GET /api/v3/transactions (#27) 2026-03-06 05:02:52 +00:00

Proposed #67 fix: add combined_season classmethod to PitchingStat (#65) 2026-03-17 22:34:00 +00:00

Proposed #68 fix: enforce Literal validation on sort parameter in GET /api/v3/players (#66) 2026-03-17 23:03:45 +00:00

Proposed #83 fix: move hardcoded Discord webhook URL to env var 2026-03-27 04:15:37 +00:00

Proposed #85 fix: remove token value from Bad Token log warnings (#79) 2026-03-27 04:32:57 +00:00

Proposed #86 fix: add type annotations to untyped query parameters (#73) 2026-03-27 05:03:11 +00:00

Proposed #87 fix: disable autoconnect and set pool timeout on PooledPostgresqlDatabase (#80) 2026-03-27 05:36:54 +00:00

Proposed #88 fix: align CustomCommandCreator.discord_id model with BIGINT column (#78) 2026-03-27 06:03:59 +00:00

Proposed #89 fix: remove SQLite fallback code from db_engine.py (#70) 2026-03-27 06:34:12 +00:00

Proposed #90 fix: replace deprecated Pydantic .dict() with .model_dump() (#76) 2026-03-27 07:03:13 +00:00

Proposed #91 fix: update Docker base image from Python 3.11 to 3.12 (#82) 2026-03-27 07:32:16 +00:00

Proposed #92 fix: replace row-by-row DELETE with bulk DELETE in career recalculation (#77) 2026-03-27 08:03:07 +00:00

Proposed #93 fix: batch standings updates to eliminate N+1 queries in recalculate (#75) 2026-03-27 08:38:07 +00:00

Proposed #94 fix: replace integer comparisons on boolean fields with True/False (#69) 2026-03-27 09:04:20 +00:00

Proposed #95 fix: add missing indexes on FK columns in stratplay and stratgame (#74) 2026-03-27 10:06:58 +00:00

Proposed #96 feat: add migration tracking system (#81) 2026-03-27 10:34:30 +00:00

Proposed #97 fix: replace manual db.close() calls with middleware-based connection management (#71) 2026-03-27 11:05:19 +00:00

Proposed #102 fix: preserve total_count in get_totalstats instead of overwriting with page length (#101) 2026-04-01 23:01:57 +00:00

15 Issues closed from 1 user

Closed #100 fieldingstats.get_fieldingstats: count computed after limit applied 2026-04-01 22:44:43 +00:00

Closed #98 API allows unbounded queries causing Gunicorn worker timeouts 2026-04-01 22:44:41 +00:00

Closed #62 chore: pin all Python dependency versions in requirements.txt 2026-03-10 18:26:22 +00:00

Closed #36 Validate sort_by parameter against allowed field names in views.py 2026-03-10 18:26:21 +00:00

Closed #37 Push limit/offset to the database in PlayerService.get_players 2026-03-10 18:26:21 +00:00

Closed #34 Remove the empty WEEK_NUMS dict from db_engine.py 2026-03-10 18:26:20 +00:00

Closed #33 Implement or remove the three skipped caching tests in test_player_service.py 2026-03-10 18:26:19 +00:00

Closed #32 Add cache invalidation on write operations for cached endpoints 2026-03-10 18:26:18 +00:00

Closed #30 Remove unused imports in standings.py and pitchingstats.py 2026-03-10 18:26:18 +00:00

Closed #28 Implement or document lob_2outs and rbipercent fields in SeasonPitchingStats 2026-03-10 18:26:17 +00:00

Closed #25 Eliminate N+1 queries in post_transactions 2026-03-10 18:26:16 +00:00

Closed #21 Replace print(req.scope) with proper logging in /api/docs 2026-03-10 18:26:15 +00:00

Closed #29 Replace bare except: clauses with except Exception: in custom_commands.py and db_engine.py 2026-03-10 14:35:10 +00:00

Closed #23 Fix swallowed error in recalculate_standings — HTTPException constructed but not raised 2026-03-06 00:02:49 +00:00

Closed #24 Fix ignored order_by() call in stratgame.py 2026-03-03 01:29:29 +00:00

25 Issues created by 1 user

Opened #19 Remove hardcoded Discord webhook URL from dependencies.py 2026-02-20 06:49:32 +00:00

Opened #20 Remove hardcoded fallback database password from db_engine.py 2026-02-20 06:49:38 +00:00

Opened #22 Replace print() debug statements with logger calls in db_engine.py 2026-02-20 06:49:48 +00:00

Opened #26 Fix N+1 query in get_custom_commands 2026-02-20 06:50:10 +00:00

Opened #27 Implement or remove the is_trade parameter from GET /api/v3/transactions 2026-02-20 06:50:14 +00:00

Opened #31 Remove commented-out dead code blocks in multiple files 2026-02-20 06:50:34 +00:00

Opened #35 Remove token value from log messages in legacy router files 2026-02-20 06:50:55 +00:00

Opened #38 Remove db.close() from handle_db_errors error handler 2026-02-20 06:51:18 +00:00

Opened #65 fix: PitchingStat model missing combined_season attribute (500 on s_type=combined) 2026-03-17 22:15:03 +00:00

Opened #66 fix: sort_by Literal validation not enforced — invalid values silently ignored 2026-03-17 22:15:10 +00:00

Opened #69 Boolean fields compared as integers (SQLite pattern) 2026-03-27 04:06:13 +00:00

Opened #70 Remove SQLite fallback code from db_engine.py 2026-03-27 04:06:18 +00:00

Opened #71 Refactor manual db.close() calls to middleware-based connection management 2026-03-27 04:06:24 +00:00

Opened #72 Add Meta.table_name to all models missing it 2026-03-27 04:06:28 +00:00

Opened #73 Add type annotations to untyped query parameters 2026-03-27 04:06:31 +00:00

Opened #74 Add missing indexes on foreign key columns in high-volume tables 2026-03-27 04:06:37 +00:00

Opened #75 Fix N+1 query pattern in standings recalculation 2026-03-27 04:06:40 +00:00

Opened #76 Replace deprecated Pydantic .dict() with .model_dump() 2026-03-27 04:06:43 +00:00

Opened #77 Replace row-by-row DELETE with bulk DELETE in career recalculation 2026-03-27 04:06:47 +00:00

Opened #78 Fix discord_id type mismatch between model (CharField) and migration (BIGINT) 2026-03-27 04:06:52 +00:00

Opened #79 Stop logging raw auth tokens in warning messages 2026-03-27 04:06:55 +00:00

Opened #80 Disable autoconnect and set pool timeout on PooledPostgresqlDatabase 2026-03-27 04:07:00 +00:00

Opened #81 Add migration tracking system 2026-03-27 04:07:03 +00:00

Opened #82 Align Python version between Docker image (3.11) and local dev (3.12) 2026-03-27 04:07:06 +00:00

Opened #101 fieldingstats.get_totalstats: total_count overwritten by post-filter length 2026-04-01 22:39:43 +00:00