Skip to content

Ignoring empty rows in csv files#923

Merged
michelebastione merged 2 commits intomini-software:masterfrom
michelebastione:issue-914-fix
Feb 14, 2026
Merged

Ignoring empty rows in csv files#923
michelebastione merged 2 commits intomini-software:masterfrom
michelebastione:issue-914-fix

Conversation

@michelebastione
Copy link
Contributor

@michelebastione michelebastione commented Feb 14, 2026

Removing InternalsVisibleTo tags from MiniExcel.Core.csproj and MiniExcel.Csv.csproj due to the latest refactoring making them irrelevant
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @michelebastione, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request enhances the CSV import functionality by introducing a mechanism to gracefully handle and ignore empty or whitespace-only rows. This improvement prevents parsing errors or unexpected data when CSV files contain blank lines, making the CSV reader more robust and user-friendly. Additionally, it includes minor project file cleanups and a test file rename.

Highlights

  • Empty Row Handling: Implemented functionality to ignore empty or whitespace-only rows when importing data from CSV files, preventing parsing issues with malformed input.
  • Test Coverage: Added a new dedicated test case (Issue914) to validate the correct behavior of the empty row skipping logic, ensuring the feature works as expected.
  • Project File Cleanup: Removed redundant InternalsVisibleTo attributes from both MiniExcel.Core.csproj and MiniExcel.Csv.csproj, simplifying the project configurations.
  • Test File Renaming: Corrected a typo in a test file name, renaming MiniExcelCsvAsycTests.cs to MiniExcelCsvAsyncTests.cs for improved consistency.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • src/MiniExcel.Core/MiniExcel.Core.csproj
    • Removed InternalsVisibleTo attribute for MiniExcel.OpenXml.Tests.
  • src/MiniExcel.Csv/CsvReader.cs
    • Implemented a check to ignore rows that are empty or contain only whitespace.
    • Added a continue statement to skip processing of empty rows.
  • src/MiniExcel.Csv/MiniExcel.Csv.csproj
    • Removed InternalsVisibleTo attribute for MiniExcel.Csv.Tests.
  • tests/MiniExcel.Csv.Tests/IssueTests.cs
    • Introduced a new test method Issue914 to verify the correct handling of empty rows in CSV files.
    • Defined a NameAgeTuple class for testing purposes.
    • Asserted that empty rows are not counted in the final result and that correct data is parsed.
  • tests/MiniExcel.Csv.Tests/MiniExcelCsvAsycTests.cs
    • Renamed the test file from MiniExcelCsvAsycTests.cs to MiniExcelCsvAsyncTests.cs to correct a typo.
Activity
  • No human activity has occurred on this pull request yet.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a useful feature to ignore empty and whitespace-only rows when reading CSV files. The implementation in CsvReader.cs is straightforward and correct. The accompanying test case in IssueTests.cs effectively validates the new functionality. The PR also includes some project cleanup by removing InternalsVisibleTo attributes and fixing a typo in a test filename. I have one minor suggestion to improve code style.

Comment on lines +42 to +44
if (string.IsNullOrWhiteSpace(row))
continue;

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This block contains an unnecessary empty line with whitespace. It can be removed for better code clarity and style.

            if (string.IsNullOrWhiteSpace(row))
                continue;

@michelebastione michelebastione merged commit 483b22e into mini-software:master Feb 14, 2026
3 checks passed
@michelebastione michelebastione deleted the issue-914-fix branch February 14, 2026 23:16
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.

[BUG] - empty row in csv causing error of KeyNotFoundException

1 participant