Feature request: allow `decompress` to decompress stream data without content size in the header
メンテナーはふだん 2 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 42/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- python
調査の方向性
zstd.decompress、max_output_size、ZstdDecompressor.stream_reader を使って例を再現し、現在の動作を比較します。decompress API のエントリーポイントとそのテストから始めます。既知の出力サイズを要求せずにコンテンツサイズのないフレームを伸長でき、報告されたケースのカバレッジがあれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Edit: this is documented, but I think it would be an useful addition. Maybe by passing max_output_size=-1?
The example below raises ZstdError: could not determine content size in frame header
import io
import zstandard as zstd
data = b'some data'
input_buffer = io.BytesIO(data)
with zstd.ZstdCompressor().stream_reader(input_buffer) as r:
compressed = r.read()
decompressed = zstd.decompress(compressed)
assert decompressed == data
Passing max_output_size to the decompress call works as expected:
...
decompressed = zstd.decompress(compressed, max_output_size=len(data))
assert decompressed == data
Using ZstdDecompressor.stream_reader also works:
...
with zstd.ZstdDecompressor().stream_reader(io.BytesIO(compressed)) as r:
decompressed = r.read()
assert decompressed == data
I think decompress should handle this case as well, since it's not always possible to known how the data was compressed.
The package version I use is zstandard 0.15.2 on windows 10 (but I don't think it's os dependent)
- 主要言語
- C
- スター
- 641
- フォーク
- 117
- 平均マージ
- 1日 14時間
- マージ済み PR(30日)
- 5
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
indygreg/python-zstandard のほかの issue
-
`multi_decompress_to_buffer([])` terminates the process with SIGFPE対応中かも @mikamikasuki が 7 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
indygreg/python-zstandard#335 ·
メンテナーはふだん 2 日以内に返信
-
Silent data-correctness bug: `readinto()` / `readinto1()` on `stream_reader` return `tell() == 0` after successful reads対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
indygreg/python-zstandard#295 ·
メンテナーはふだん 2 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 64/100
indygreg/python-zstandard#345 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 55/100
indygreg/python-zstandard#334 ·
メンテナーはふだん 2 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 54/100
indygreg/python-zstandard#333 ·
メンテナーはふだん 2 日以内に返信
indygreg/python-zstandard の issue をすべて見る
似ている issue
-
IO.get_env on Node truncates names at embedded NUL対応中かも @Yi-111-a が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
HigherOrderCO/Bend#1449 · コメント 1 件 ·
-
bug C/C++ code
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
webarkit/WebARKitLib#84 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
OpenPrinting/cups#1751 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
es-ude/OnDeviceTraining#488 ·
メンテナーはふだん 1 日以内に返信
-
enhancement good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
メンテナーはふだん 1 日以内に返信