Skip to content

[Autoloop] [Autoloop: build-tsb-pandas-typescript-migration]Β #223

@github-actions

Description

@github-actions

πŸ€– This PR is maintained by Autoloop. Each accepted iteration adds a commit to this branch.

Program Goal

Build tsb β€” a complete TypeScript port of pandas, one feature at a time.

Program Issue: #1
Metric: pandas_features_ported (higher is better) β€” currently 135 (was 134)

Latest Change (Iteration 283)

Added readFwf β€” fixed-width format reader (mirrors pandas.read_fwf)

What was added

  • src/io/read_fwf.ts β€” full implementation of readFwf:
    • Auto-infers column boundaries from whitespace patterns across sample rows
    • Accepts explicit colspecs ([start, end] pairs) or widths (column widths)
    • Supports header, header: null + names, indexCol, dtype overrides
    • naValues, skipRows, nRows, inferNrows options
    • Strict TypeScript β€” no any, no escape hatches
  • tests/io/read_fwf.test.ts β€” comprehensive test suite (unit + property-based)
  • playground/read_fwf.html β€” interactive playground page with live demo
  • Exported from src/io/index.ts and src/index.ts

Metric: 134 β†’ 135 (+1)

Generated by Autoloop Β· ● 8.9M Β· β—·


Note

This was originally intended as a pull request, but the git push operation failed.

Workflow Run: View run details and download patch artifact

The patch file is available in the agent artifact in the workflow run linked above.

To create a pull request with the changes:

# Download the artifact from the workflow run
gh run download 24926859048 -n agent -D /tmp/agent-24926859048

# Create a new branch
git checkout -b autoloop/build-tsb-pandas-typescript-migration

# Apply the patch (--3way handles cross-repo patches where files may already exist)
git am --3way /tmp/agent-24926859048/aw-autoloop-build-tsb-pandas-typescript-migration.patch

# Push the branch to origin
git push origin autoloop/build-tsb-pandas-typescript-migration

# Create the pull request
gh pr create --title '[Autoloop] [Autoloop: build-tsb-pandas-typescript-migration]' --base main --head autoloop/build-tsb-pandas-typescript-migration --repo githubnext/tsessebe
Show patch preview (500 of 1183 lines)
From ef7cc0762d676db154df4e27fb4f15f89bbad7c2 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]" <github-actions[bot]@users.noreply.github.com>
Date: Sat, 25 Apr 2026 08:46:18 +0000
Subject: [PATCH] [Autoloop: build-tsb-pandas-typescript-migration] Iteration
 283: add readFwf (fixed-width format reader)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Port pandas.read_fwf β€” parse fixed-width formatted text into a DataFrame.
Auto-infers column boundaries from whitespace or accepts explicit colspecs/widths.
Supports header, header:null+names, indexCol, dtype overrides, naValues, skipRows, nRows.

Run: https://github.com/githubnext/tsessebe/actions/runs/24926859048

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
---
 playground/index.html     |   5 +
 playground/read_fwf.html  | 391 +++++++++++++++++++++++++++++++++
 src/index.ts              |   2 +
 src/io/index.ts           |   3 +
 src/io/read_fwf.ts        | 450 ++++++++++++++++++++++++++++++++++++++
 tests/io/read_fwf.test.ts | 252 +++++++++++++++++++++
 6 files changed, 1103 insertions(+)
 create mode 100644 playground/read_fwf.html
 create mode 100644 src/io/read_fwf.ts
 create mode 100644 tests/io/read_fwf.test.ts

diff --git a/playground/index.html b/playground/index.html
index 0597f9f..245f3e5 100644
--- a/playground/index.html
+++ b/playground/index.html
@@ -344,6 +344,11 @@
           <p>XLSX file reading. readExcel() parses Excel files from a Uint8Array/ArrayBuffer β€” ZIP+XML parsing from scratch, shared strings, number/string/boolean cells, sheet selection, header, indexCol, skipRows, nrows.</p>
           <div class="status done">βœ… Complete</div>
         </div>
+        <div class="feature-card">
+          <h3><a href="read_fwf.html" style="color: var(--accent); text-decoration: none;">πŸ“„ Fixed-Width Format I/O</a></h3>
+          <p>Parse fixed-width formatted text into a DataFrame. readFwf() mirrors pandas.read_fwf β€” auto-infers or acc
... (truncated)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions