Conversation
…ekly-report-release Fix weekly release asset filenames
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (4)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including You can disable this status message by setting the WalkthroughThe changes update the GitHub Actions workflow to locate and handle the latest CSV-based weekly report, adjusting how release assets are attached and uploaded. Additionally, several Python dependencies in the requirements file are upgraded to newer versions, with no changes to public APIs or exported entities. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Poem
✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (2)
.github/workflows/GenerateReport.yml (2)
419-425:sortmay not pick the latest report consistently
sort | tail -n 1relies on filename lexicographical order.
If a patch version or accidental suffix slips in (e.g.WeeklyReport_20250701_v2.csv) the last entry is no longer the newest by date.-latest_csv=$(find WeeklyReport -type f -name "WeeklyReport_*.csv" | sort | tail -n 1) +# More robust: version-aware sort (or sort by mtime) +latest_csv=$(find WeeklyReport -type f -name "WeeklyReport_*.csv" \ + | sort -V \ + | tail -n 1)This keeps the “latest” logic stable even with mixed suffixes.
435-445: Environment-variable writes are fragile due to nested quotingThe current pattern:
echo "CSV_FILENAME=$(basename \"$latest_csv\")" >> $GITHUB_ENVrequires escaping inner quotes and will break if a path contains
$, back-ticks, or newlines.-echo "CSV_FILENAME=$(basename \"$latest_csv\")" >> $GITHUB_ENV +printf 'CSV_FILENAME=%s\n' "$(basename "$latest_csv")" >>"$GITHUB_ENV"Using
printfavoids shell-word-splitting/escape headaches and is consistent with GitHub’s guidance. Apply the same change to the HTML/JSON blocks.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (4)
MonthlyReport/2025-07/MonthlyReport-202507-05-1257.xlsxis excluded by!**/*.xlsxMonthlyReport/2025-07/MonthlyReport-202507-25-1633.xlsxis excluded by!**/*.xlsxWeeklyReport/2025-06-30/WeeklyReport_20250705_124618.csvis excluded by!**/*.csvWeeklyReport/2025-07-21/WeeklyReport_20250725_162335.csvis excluded by!**/*.csv
📒 Files selected for processing (2)
.github/workflows/GenerateReport.yml(2 hunks)src/requirements_full_list.txt(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Generate Weekly Report
🔇 Additional comments (2)
src/requirements_full_list.txt (1)
5-7: Validateaio*transitive dependencies after bump
aiohttp==3.12.14and friends drop support for oldermultidict/frozenlistversions and enforce Python ≥ 3.8. Make sure the resolver still lands on compatible versions (multidict>=6.0,<7.0,frozenlist>=1.4) across the full set – otherwise the workflow may break at install-time.
Consider runningpip install -r … --dry-runorpipdeptreein CI to catch conflicts early..github/workflows/GenerateReport.yml (1)
491-497: Good incremental upload strategyConditionally uploading HTML/JSON only when present avoids hard-failing the release and keeps the first
gh release createcall idempotent. Nice improvement.
| sseclient-py==1.8.0 | ||
| stack-data==0.6.3 | ||
| starlette==0.40.0 | ||
| starlette==0.47.2 |
There was a problem hiding this comment.
Version conflict: fastapi 0.111.1 requires a newer Starlette
fastapi==0.111.1 pins starlette>=0.47.4,<0.48.0, but the list now freezes starlette==0.47.2 – below the minimum. pip will refuse to resolve or will back-rev FastAPI, defeating the upgrade.
- starlette==0.47.2
+ # Option A: bring Starlette up to the floor required by FastAPI
+ starlette==0.47.4
+ # Option B (less ideal): stick to FastAPI ≤0.111.0 that still accepts 0.47.2Please bump Starlette (preferred) or downgrade FastAPI to avoid a hard failure during environment setup.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| starlette==0.47.2 | |
| # Option A: bring Starlette up to the floor required by FastAPI | |
| starlette==0.47.4 | |
| # Option B (less ideal): stick to FastAPI ≤0.111.0 that still accepts 0.47.2 |
🤖 Prompt for AI Agents
In src/requirements_full_list.txt at line 524, the pinned version of starlette
is 0.47.2, which conflicts with fastapi 0.111.1 that requires
starlette>=0.47.4,<0.48.0. To fix this, update the starlette version to at least
0.47.4 but less than 0.48.0 to satisfy fastapi's dependency and avoid
installation errors.
Merge #33
Summary by CodeRabbit