Honor the requested mode in the Windows access provider
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 75/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- rust
- 領域
- cli, operating-systems
調査の方向性
問題はファイル std/sys/windows/fs.wave にあります。まず、そのファイル内の access 関数を読み、現在 mode パラメータをどのように無視しているかを確認してください。期待される動作を理解するために、他のプラットフォームの実装と比較してください。モードチェックをWindows API呼び出し(存在確認には GetFileAttributes、読み取り/書き込み可能性のテストには目的のアクセス権で CreateFile など)を使用して実装してください。同じファイルまたは対応するテストモジュールにテストを書き、存在(FS_F_OK)、読み取り可能(FS_R_OK)、書き込み不可(読み取り専用ファイルでの FS_W_OK)のケースを検証してください。失敗時に正しいポータブルエラーコードが返されるようにしてください。
索引モデルが issue の本文から書いたものです。
説明
Problem
std/sys/windows/fs.wave exposes FS_F_OK, FS_X_OK, FS_W_OK, and FS_R_OK, but access(path, mode) never reads mode. Any existing path therefore succeeds regardless of the requested access check, so a write check currently behaves the same as an existence check.
Other filesystem providers pass the requested mode through to their native access primitive, so the Windows provider does not preserve the portable contract.
Completion criteria
- Keep
FS_F_OKas an existence check. - Make nonzero access modes affect the Windows result instead of being ignored.
- Ensure a read-only file does not report writable for
FS_W_OK. - Define and test the Windows behavior for the exported
FS_R_OKandFS_X_OKmodes. - Return the existing portable negative error codes on failure.
- Add focused Windows regression coverage for existence, readable, and non-writable cases.
Difficulty: easy.
- 主要言語
- Rust
- スター
- 56
- フォーク
- 21
- 平均マージ
- 3時間 19分
- マージ済み PR(30日)
- 54
環境構築
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
wavefnd/Wave のほかの issue
-
enhancement good first issue needs testing
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
enhancement good first issue needs testing
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
enhancement good first issue needs testing
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
enhancement good first issue needs testing
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
enhancement good first issue needs testing
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
trailofbits/dylint#2107 ·
メンテナーはふだん 1 日以内に返信
-
area:cli bug good first issue priority:medium
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
メンテナーはふだん 1 日以内に返信
-
arrays_zip with two same-named inputs fails with "ArrowArray struct has 2 children (expected 1)"オープンbug requires-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
apache/datafusion-comet#6251 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
bug false-positive harper-core linting
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
Automattic/harper#4471 ·
メンテナーはふだん 1 日以内に返信