Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

JSON Lines files (.jsonl, .ndjson) are read as CSV and profiled as broken fragments

クローズ
#1,027 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
45/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
javascript, python
領域
cli, data

調査の方向性

Start by running the repro command, which reports 19 rows and 2 columns for a 20-line .jsonl file. The suffix routing is in read_table() in faircode/loaders.py and faircode/loaders_extra.py, and the web side is parseJSON() in assets/profiler-engine.js, with the accept list in profiler.html. Done means either .jsonl/.ndjson load as 20 records with a test in tests/test_loaders.py, or the suffix is rejected with a clear message. Maintainers have not chosen between the two options yet, so confirm which one before writing code.

索引モデルが issue の本文から書いたものです。

説明

bug enhancement help wanted

Where: faircode/loaders.py / faircode/loaders_extra.py read_table() (unknown suffix falls through to the CSV sniffer), assets/profiler-engine.js parseJSON(), assets/profiler-heldout.js / profiler.html (accept list), tests/test_loaders.py.

Current gap: a JSON Lines export (one object per line, the default of many tools) is neither supported nor rejected. The CLI reads it as comma-separated text, so each line is split inside the JSON braces and the "dataset" becomes columns named like {"sex": "f"; the report prints rows and columns and exits 0. The web engine reports "not valid JSON". Neither says that JSON Lines is the problem.

Repro:

$ python3 -c "import json; open('rows.jsonl','w').write('\n'.join(json.dumps({'sex': 'm' if i % 2 else 'f', 'age': 25 + i % 30}) for i in range(20)) + '\n')"
$ python3 -m faircode profile rows.jsonl | grep -E "Rows|Columns"
  Rows: 19    Columns: 2          # 20 records, two real columns, no error

Suggested approach: read .jsonl/.ndjson with pd.read_json(lines=True) (and in the web engine by parsing line by line), sharing the flatten rule, and add them to the file picker and the parity tests; if support is declined, reject the suffix with "JSON Lines is not supported: convert to a JSON array".

主要言語
HTML
スター
47
フォーク
45
平均マージ
2時間 49分
マージ済み PR(30日)
61

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

yakew7/Fair-Code のほかの issue

yakew7/Fair-Code の issue をすべて見る

似ている issue

CLI の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。