githubnext / githubnext/tsb

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

Đang mở
#223 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
agentic-workflows autoloop automation
Ngôn ngữ chính
TypeScript
Star
8
Fork
3
Merge trung bình
1 giờ 42 phút
Pull request đã merge (30 ngày)
1

Mô tả

🤖 *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)
```

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Trước tiên, hãy đọc src/io/read_fwf.ts và tests/io/read_fwf.test.ts, sau đó kiểm tra các export trong src/io/index.ts và src/index.ts. Chạy các test read_fwf và xem xét patch artifact để hiểu tính năng readFwf đã hoàn thiện; hoàn tất có nghĩa là phần triển khai, các test, trang playground và các export đều tồn tại và đều pass.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
typescript
Lĩnh vực
data
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
20/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.