[Autoloop] [Autoloop: build-tsb-pandas-typescript-migration]
- Dominant language
- TypeScript
- Stars
- 7
- Forks
- 3
- Avg merge
- 1h 42m
- Merged PRs (30d)
- 1
Description
🤖 *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](https://github.com/githubnext/tsessebe/actions/runs/24926859048/agentic_workflow) · ● 8.9M · [◷](https://github.com/search?q=repo%3Agithubnext%2Ftsessebe+%22gh-aw-workflow-id%3A+autoloop%22&type=pullrequests)
---
> [!NOTE]
> This was originally intended as a pull request, but the git push operation failed.
>
> **Workflow Run:** [View run details and download patch artifact](https://github.com/githubnext/tsessebe/actions/runs/24926859048)
>
> The patch file is available in the `agent` artifact in the workflow run linked above.
To create a pull request with the changes:
```sh
# 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)
```diff
From ef7cc0762d676db154df4e27fb4f15f89bbad7c2 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
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 @@
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.
+
+
📄 Fixed-Width Format I/O
+
Parse fixed-width formatted text into a DataFrame. readFwf() mirrors pandas.read_fwf — auto-infers or acc
... (truncated)
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.