Skip to content

Add ability to insert rows and columns#317

Merged
vincentlaucsb merged 9 commits into
masterfrom
csv-editing
May 26, 2026
Merged

Add ability to insert rows and columns#317
vincentlaucsb merged 9 commits into
masterfrom
csv-editing

Conversation

@vincentlaucsb
Copy link
Copy Markdown
Owner

@vincentlaucsb vincentlaucsb commented May 17, 2026

Added CSV editing support:

  • DataFrame::insert_row()
  • DataFrame::insert_column() / append_column() via dump-and-reparse
  • DataFrameRow::erase()
  • DataFrameColumn::erase() as a soft delete logical-to-physical column mapping and sparse overlay shifting

Split the large DataFrame header:

  • include/internal/data_frame.hpp is now mostly an umbrella shim
  • implementation moved under include/internal/data_frame/
  • added local include/internal/data_frame/AGENTS.md

Refactored parallel parsing/thread-pool internals:

  • consolidated indexed task pool logic into include/internal/parallel/indexed_task_pool.hpp
  • removed old ThreadPoolRefactor.md
  • touched parser/speculative parallel internals and chunk offset reporting

Added Codecov agent guidance:

  • new CODECOV_AGENTS.md
  • root AGENTS.md references it

@codecov
Copy link
Copy Markdown

codecov Bot commented May 17, 2026

Codecov Report

❌ Patch coverage is 91.28739% with 67 lines in your changes missing coverage. Please review.
✅ Project coverage is 91.63%. Comparing base (9d70013) to head (dcda238).

Files with missing lines Patch % Lines
include/internal/data_frame/data_frame.hpp 91.58% 6 Missing and 28 partials ⚠️
include/internal/data_frame/data_frame_cell.hpp 84.09% 2 Missing and 5 partials ⚠️
include/internal/speculative/parallel_parser.hpp 56.25% 0 Missing and 7 partials ⚠️
include/internal/data_frame/data_frame_column.hpp 89.79% 0 Missing and 5 partials ⚠️
include/internal/parallel/indexed_task_pool.hpp 94.20% 0 Missing and 4 partials ⚠️
include/internal/data_frame/row_overlay.hpp 93.75% 0 Missing and 3 partials ⚠️
include/internal/data_frame/data_frame_row.hpp 96.77% 0 Missing and 2 partials ⚠️
include/internal/memory/raw_csv_field.hpp 50.00% 0 Missing and 2 partials ⚠️
...nclude/internal/data_frame/data_frame_executor.hpp 94.44% 0 Missing and 1 partial ⚠️
include/internal/memory/block_arena.hpp 75.00% 0 Missing and 1 partial ⚠️
... and 1 more
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #317      +/-   ##
==========================================
+ Coverage   91.12%   91.63%   +0.51%     
==========================================
  Files          47       55       +8     
  Lines        3346     3527     +181     
  Branches      942     1037      +95     
==========================================
+ Hits         3049     3232     +183     
+ Misses        130      114      -16     
- Partials      167      181      +14     
Flag Coverage Δ
cpp 91.49% <91.28%> (+0.55%) ⬆️
python 93.64% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

uses: actions/setup-python@v6
- name: Install single_header
id: single-header
uses: vincentlaucsb/single_header@0.1.0
uses: actions/setup-python@v6
- name: Install single_header
id: single-header
uses: vincentlaucsb/single_header@0.1.0
uses: actions/setup-python@v6
- name: Install single_header
id: single-header
uses: vincentlaucsb/single_header@0.1.0
# Drops csv.hpp into docs/html so it is served at the same Pages URL
# as the Doxygen docs: https://<owner>.github.io/csv-parser/csv.hpp
run: python single_header.py docs/html/csv.hpp
uses: vincentlaucsb/single_header@0.1.0
run: |
mkdir -p release-assets
python single_header.py release-assets/csv.hpp
uses: vincentlaucsb/single_header@0.1.0
@vincentlaucsb vincentlaucsb merged commit 37240c8 into master May 26, 2026
31 checks passed
@vincentlaucsb vincentlaucsb deleted the csv-editing branch May 26, 2026 06:23
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