Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[discussion] ErrorKind::FilesystemQuotaExceeded from io_error_more #130190

Closed
GrigorenkoPV opened this issue Sep 10, 2024 · 6 comments
Closed

[discussion] ErrorKind::FilesystemQuotaExceeded from io_error_more #130190

GrigorenkoPV opened this issue Sep 10, 2024 · 6 comments
Labels
C-discussion Category: Discussion or questions that doesn't represent real issues. disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. finished-final-comment-period The final comment period is finished for this PR / Issue. T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.

Comments

@GrigorenkoPV
Copy link
Contributor

GrigorenkoPV commented Sep 10, 2024

@rustbot label C-discussion

Main tracking issue: #86442

Background

The io_error_more feature introduced 21 new variants into ErrorKind. They were FCP'd back in December 2022, but there appeared to be quite a lot of disagreement about 4 of the added variants, so the stabilization (#106375) got stalled for over twenty months. Thankfully, the 17 uncontroversial variants got stabilized in #128316, so now we just need to iron out a satisfactory design for the remaining 4 variants, and then they can be stabilized too.

In order to not block any of the remaining variants on each other and to not intertwine the discussions, I've created 4 separate issues, which summarize the concerns & suggestions voiced up until this point and can serve as a place for further discussion.

FilesystemQuotaExceeded

Currently corresponds to EDQUOT on Unix and ERROR_DISK_QUOTA_EXCEEDED on Windows. (#86442 (comment)). As well as WSAEDQUOT on Windows (#130206).

Current docs description:

Filesystem quota was exceeded.

Drop "Filesystem" from the name

Can FilesystemQuotaExceeded be renamed QuotaExceeded? AFAIK Linux has no other quota error and EDQUOT is also used generically (not only for filesystem quotas). A few other uses are visible here: https://elixir.bootlin.com/linux/v4.5/ident/EDQUOT. The comment in errno.h simply describes it as "Quota exceeded".

Originally posted by kalcutter in #86442 (comment)

With my libs-api hat on: 👍 for renaming FilesystemQuotaExceeded to QuotaExceeded, as OSes may use it for other kinds of quotas.

Originally posted by Josh Triplett in #106375 (comment)

I am not quite so sure about [keeping "Filesystem" in the name of] FilesystemQuotaExceeded but again I think APIs in std won't produce this error other than for filesystem operations.

Originally posted by Ian Jackson in #106375 (comment)

Seemingly a consensus.

Also map WSAEDQUOT on Windows

Done in #130206.

Old description

There is also the winsock error WSAEDQUOT. Shouldn't that be mapped [...] to QuotaExceeded?

Originally posted by kalcutter in #106375 (comment)

Yes, I think so. I'm not sure why we overlooked that. Generally I would expect that a WSAE error should be mapped the same way as the correspondingly named E error on Unix. I think I tired to do that. Are there other omissions?

Originally posted by Ian Jackson in #106375 (comment)

A consensus.

@rustbot rustbot added needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. C-discussion Category: Discussion or questions that doesn't represent real issues. labels Sep 10, 2024
@dtolnay dtolnay added T-libs-api Relevant to the library API team, which will review and decide on the PR/issue. I-libs-api-nominated Nominated for discussion during a libs-api team meeting. labels Sep 10, 2024
workingjubilee added a commit to workingjubilee/rustc that referenced this issue Sep 11, 2024
Map `WSAEDQUOT` to `ErrorKind::FilesystemQuotaExceeded`

cc rust-lang#86442

As summarized in rust-lang#130190, there seems to be a consensus that this should be done.
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Sep 11, 2024
Map `WSAEDQUOT` to `ErrorKind::FilesystemQuotaExceeded`

cc rust-lang#86442

As summarized in rust-lang#130190, there seems to be a consensus that this should be done.
rust-timer added a commit to rust-lang-ci/rust that referenced this issue Sep 11, 2024
Rollup merge of rust-lang#130206 - GrigorenkoPV:WSAEDQUOT, r=ChrisDenton

Map `WSAEDQUOT` to `ErrorKind::FilesystemQuotaExceeded`

cc rust-lang#86442

As summarized in rust-lang#130190, there seems to be a consensus that this should be done.
@dtolnay
Copy link
Member

dtolnay commented Sep 12, 2024

@rfcbot fcp merge

Stabilizing with a rename from FilesystemQuotaExceeded to just QuotaExceeded, as implemented by #130254.

@rfcbot
Copy link

rfcbot commented Sep 12, 2024

Team member @dtolnay has proposed to merge this. The next step is review by the rest of the tagged team members:

No concerns currently listed.

Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@rfcbot rfcbot added proposed-final-comment-period Proposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off. disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. labels Sep 12, 2024
@dtolnay dtolnay removed the I-libs-api-nominated Nominated for discussion during a libs-api team meeting. label Sep 14, 2024
@saethlin saethlin removed the needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. label Sep 26, 2024
@joshtriplett
Copy link
Member

Ping @Amanieu @BurntSushi @m-ou-se

@rfcbot rfcbot added final-comment-period In the final comment period and will be merged soon unless new substantive objections are raised. and removed proposed-final-comment-period Proposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off. labels Nov 26, 2024
@rfcbot
Copy link

rfcbot commented Nov 26, 2024

🔔 This is now entering its final comment period, as per the review above. 🔔

@rfcbot rfcbot added finished-final-comment-period The final comment period is finished for this PR / Issue. to-announce Announce this issue on triage meeting and removed final-comment-period In the final comment period and will be merged soon unless new substantive objections are raised. labels Dec 6, 2024
@rfcbot
Copy link

rfcbot commented Dec 6, 2024

The final comment period, with a disposition to merge, as per the review above, is now complete.

As the automated representative of the governance process, I would like to thank the author for their work and everyone else who contributed.

This will be merged soon.

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Dec 6, 2024
Stabilize `std::io::ErrorKind::QuotaExceeded`

Also drop "Filesystem" from its name.

See rust-lang#130190 for more info.

FCP in rust-lang#130190

cc rust-lang#86442

r? `@dtolnay`
rust-timer added a commit to rust-lang-ci/rust that referenced this issue Dec 7, 2024
Rollup merge of rust-lang#130254 - GrigorenkoPV:QuotaExceeded, r=dtolnay

Stabilize `std::io::ErrorKind::QuotaExceeded`

Also drop "Filesystem" from its name.

See rust-lang#130190 for more info.

FCP in rust-lang#130190

cc rust-lang#86442

r? `@dtolnay`
@GrigorenkoPV
Copy link
Contributor Author

Stabilized in #130254, closing.

@apiraino apiraino removed the to-announce Announce this issue on triage meeting label Dec 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-discussion Category: Discussion or questions that doesn't represent real issues. disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. finished-final-comment-period The final comment period is finished for this PR / Issue. T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

7 participants