Skip to content

fix(folderparser): use csv.reader to handle RFC 4180 quoted fields in annotation CSVs#490

Open
AbdulrahmanXAmer wants to merge 2 commits into
roboflow:mainfrom
AbdulrahmanXAmer:fix/csv-quoted-field-parsing
Open

fix(folderparser): use csv.reader to handle RFC 4180 quoted fields in annotation CSVs#490
AbdulrahmanXAmer wants to merge 2 commits into
roboflow:mainfrom
AbdulrahmanXAmer:fix/csv-quoted-field-parsing

Conversation

@AbdulrahmanXAmer
Copy link
Copy Markdown

Problem

_parseAnnotationCSV used line.split(",") to extract filenames. This silently corrupts file_name when a filename contains commas inside quoted fields — valid per RFC 4180. Any dataset with such filenames fails to link images to their annotations.

Fix

Replace manual split with csv.reader (stdlib). Raw line text preserved verbatim for server upload reconstruction. File opened in text mode so \r\n normalises to \n (backward compat with Windows CSVs unchanged).

Tests

  • test_parse_csv_quoted_filename — regular CSV with comma-containing filename
  • test_parse_multilabel_csv_quoted_filename_classes.csv with comma-containing filename

🤖 Generated with Claude Code

Abdulrahman Amer and others added 2 commits June 5, 2026 10:02
… annotation CSVs

Split-on-comma parsing silently corrupted file_name when filenames or
labels contained commas inside quoted fields. Switch to csv.reader.
Raw line text preserved for server reconstruction. Adds regression tests
for both regular and _classes.csv paths.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@CLAassistant
Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
0 out of 2 committers have signed the CLA.

❌ Abdulrahman Amer
❌ pre-commit-ci[bot]


Abdulrahman Amer seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants