-
-
Notifications
You must be signed in to change notification settings - Fork 405
test(fuzzing): include full parameter list in fuzzer log output - #1760
test(fuzzing): include full parameter list in fuzzer log output #1760webdevsamran wants to merge 2 commits into
Conversation
This pull request did not pass quality checks and AI use is suspected. Please review Contribute and make any necessary amendments.
Profile summary:
GitHub user: webdevsamran
🟢 No concerns found with user's profile.
🟡 Some concerns found with recent PR activity.
🟢 No concerns found with recent issue activity.
For a more detailed report, run `gh-profiler webdevsamran`.
Full profile
GitHub user: webdevsamran
🟢 No concerns found with user's profile.
🟢 Account age: 3 years
🟢 Profile information:
name: Samran Asif
email: samranwebdev2000@gmail.com
bio: Full Stack Developer
Empty fields: company, blog, location
🟡 Some concerns found with recent PR activity.
100 PRs opened in the last 21 days.
10 opened against repos the user owns.
0 opened against repos in publicly associated orgs.
90 opened against external repos.
🟡 29 of 90 external PRs closed without merging in the last 21 days.
🟢 No concerns found with recent issue activity.
43 new issues opened in the last 21 days.
43 opened in repos the user owns.
0 opened in repos in publicly associated orgs.
0 opened in external repos.
🟢 0 external issues closed as NOT_PLANNED.
🟢 0 external issues opened with the same title.
coverage: 97.562%. remained the same — webdevsamran:fix/issue-1758 into collective:main
niccokunzmann
commented
Sep 3, 2026
@webdevsamran We already have a PR open for this. Could you help us out and give it a review to help us get it merged quicker?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please keep this close to the .encode("UTF-8", "surrogateescape")part.
@angatha
angatha
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for your first contribution. Code looks fine besindes some minor tweaks.
A CONTRIBUTING.md file usually contains information how you can perticipate in a project. We have such a file and it links to our guide.
- Please use the PR template (for future PRs)
- Then check all check boxes after you did the tasks.
- We need a changelog entry. Please provide one. The guide contains information about that.
- Please write the entry yourself and not with generative AI
- Please clarify AI usage in the PR description and the changelog entry. You may also update the commit message (yourself)
Format fuzzer log output with entrypoint name and parameters (multiple, should_walk) alongside the base64-encoded calendar content to enable reproducing test cases. Keep Calendar.from_ical inlined in fuzzer. Add changelog entry. AI use disclosure: Model: Claude 3.7 Sonnet / Gemini 2.5 Prompt: Update fuzzer logging to output full parameter list (multiple, should_walk) for reproducing fuzzed calendar test cases, write unit tests, and add news changelog entry. Output: Implemented format_fuzz_log, updated ical_fuzzer.py, added unit test in test_fuzzed_calendars.py, and added news/1758.internal.
webdevsamran
commented
Sep 4, 2026
Thanks for the review and guidance @angatha!
All requested changes are completed:
- **Inlined \Calendar.from_ical**: Kept \icalendar.cal.calendar.Calendar.from_ical\ inlined in \src/icalendar/fuzzing/ical_fuzzer.py\ to reduce diff noise.
- Changelog entry added: Added
ews/1758.internal\ per the contributing guide and AI policy. Verified that \ owncrier check\ passes. - PR description: Updated the PR description to use the repository's official PR template with all checkboxes marked.
- AI usage disclosure: Disclosed AI assistance in the PR description, the changelog fragment, and the commit message.
- Quality checks: Verified all tests pass (\pytest src/icalendar/tests/fuzzed/test_fuzzed_calendars.py) and
uff check\ /
uff format\ are clean.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On a second thought, this should be called from fuzz_v1_calendar in __init__.py and include the version (see other comment).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Uh oh!
There was an error while loading. Please reload this page.
Linked issue
Description
Includes the full parameter list (\multiple, \should_walk) alongside the entrypoint name and base64-encoded calendar payload in the fuzzer log output (\src/icalendar/fuzzing/ical_fuzzer.py), formatted via \ormat_fuzz_log\ in \src/icalendar/tests/fuzzed/init.py. This enables reproducing fuzzed test cases with their exact execution parameters. \Calendar.from_ical\ is kept inlined in the fuzzer per review feedback.
AI disclosure: I used AI assistance (Claude 3.7 Sonnet / Gemini 2.5) to help draft and refine the implementation, test coverage, and changelog entry for this change.
Checklist