githubnext / githubnext/tsb

[Autoloop] [Autoloop: build-tsb-pandas-typescript-migration]

Open
#223 0 comments 0 reactions 0 assignees View on GitHub
agentic-workflows autoloop automation
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.


✅ Complete


+

+

📄 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.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.