date input: unrecognized trailing tokens rejected (e.g. `8j`, `8 j`)
まだ誰も着手していません。
- #286 @0xSoftBoi による — マージされずにクローズ
評価
調査の方向性
parse_datetime エントリーポイントから開始し、末尾の単語トークンがどのように処理されるかを確認してから、uutils/coreutils 統合テストスイートで提案されているテストを確認します。再現手順で "8j" と "8 j" の date ケースを実行します。両方の入力が成功して 08:00:00 を生成し、既存のパーステストも引き続き通過すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Summary
GNU date silently ignores unrecognized trailing word-tokens and parses the preceding number as an hour. parse_datetime errors out instead.
Found by a fuzz_date run on uutils/coreutils.
Reproduction
$ TZ=UTC /usr/bin/date -u -d '8j' '+%H:%M:%S'
08:00:00
$ echo $?
0
$ TZ=UTC target/debug/coreutils date -u -d '8j' '+%H:%M:%S'
date: invalid date '8j'
$ echo $?
1
$ TZ=UTC /usr/bin/date -u -d '8 j' '+%H:%M:%S'
08:00:00
$ TZ=UTC target/debug/coreutils date -u -d '8 j' '+%H:%M:%S'
date: invalid date '8 j'
Test (in uutils/coreutils integration suite)
#[test]
fn test_date_ignores_unrecognized_trailing_tokens() {
for input in ["8j", "8 j"] {
new_ucmd!()
.env("TZ", "UTC")
.arg("-u")
.arg("-d")
.arg(input)
.arg("+%H:%M:%S")
.succeeds()
.stdout_only("08:00:00\n");
}
}
- 主要言語
- Rust
- スター
- 37
- フォーク
- 43
- 平均マージ
- 2日 15時間
- マージ済み PR(30日)
- 8
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
uutils/parse_datetime のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 45/100
uutils/parse_datetime#240 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 52/100
uutils/parse_datetime#160 · コメント 10 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 35/100
uutils/parse_datetime#82 ·
-
Cargo test fails at 0:20 JST再び着手できるかも このイシューのプルリクエストはマージされずにクローズされました。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
uutils/parse_datetime#36 · コメント 4 件 · リアクション 1 件 ·
-
Dependency Dashboardオープン
難易度 4/5 3〜5日 初心者へのやさしさ 20/100
uutils/parse_datetime#9 ·
uutils/parse_datetime の issue をすべて見る
似ている issue
-
✨ enhancement needs-discussion
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
-
area:docs documentation good first issue priority:low
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
triage:accepted
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
open-telemetry/otel-arrow#4343 ·
メンテナーはふだん 2 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
mishraprafful/multihull#150 ·
メンテナーはふだん 1 日以内に返信
-
area:tooling bug good first issue priority:P3
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
michaelnavazhylau/ngspice-rs#129 ·
メンテナーはふだん 1 日以内に返信