-
Notifications
You must be signed in to change notification settings - Fork 17.8k
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
net/http: mention io.Seeker requirement in FS documentation #48781
Conversation
This PR (HEAD: 319a4d9) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/go/+/353874 to see it. Tip: You can toggle comments from me using the |
Message from Go Bot: Patch Set 1: Congratulations on opening your first change. Thank you for your contribution! Next steps: Most changes in the Go project go through a few rounds of revision. This can be During May-July and Nov-Jan the Go project is in a code freeze, during which Please don’t reply on this GitHub thread. Visit golang.org/cl/353874. |
319a4d9
to
655be81
Compare
This PR (HEAD: 655be81) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/go/+/353874 to see it. Tip: You can toggle comments from me using the |
Message from Damien Neil: Patch Set 3: Trust+1 (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/353874. |
655be81
to
56d2d41
Compare
This PR (HEAD: 56d2d41) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/go/+/353874 to see it. Tip: You can toggle comments from me using the |
Message from Alex Studer: Patch Set 4: (2 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/353874. |
Message from Damien Neil: Patch Set 4: Run-TryBot+1 Code-Review+2 Trust+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/353874. |
Message from Go Bot: Patch Set 4: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/353874. |
Message from Go Bot: Patch Set 4: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/353874. |
Message from Go Bot: Patch Set 4: TryBot-Result-1 (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/353874. |
Message from Ian Lance Taylor: Patch Set 4: Trust+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/353874. |
Both FileServer and NewFileTransport can try to seek a file, specifically when MIME type sniffing is performed. This can be somewhat surprising to an implementer of an fs.FS, as their filesystem will appear to work until a user tries to access a file with an unrecognized extension (which requires type sniffing and therefore seeking). With FileServer, this results in a "seeker can't seek" message, which is not very clear for the developer. The issue arises because fs.FS does not require Seek, while http.FileSystem does. Therefore, this change adds a line to the documentation of net/http's adapter function mentioning the requirement.
56d2d41
to
fddccda
Compare
This PR (HEAD: fddccda) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/go/+/353874 to see it. Tip: You can toggle comments from me using the |
Both FileServer and NewFileTransport can try to seek a file, specifically when MIME type sniffing is performed. This can be somewhat surprising to an implementer of an fs.FS, as their filesystem will appear to work until a user tries to access a file with an unrecognized extension (which requires type sniffing and therefore seeking). With FileServer, this results in a "seeker can't seek" message, which is not very clear for the developer. The issue arises because fs.FS does not require Seek, while http.FileSystem does. Therefore, this change adds a line to the documentation of net/http's adapter function mentioning the requirement. Change-Id: Ieb955b7a7f34e2be39dd696cb712513c70100b3a GitHub-Last-Rev: fddccda GitHub-Pull-Request: #48781 Reviewed-on: https://go-review.googlesource.com/c/go/+/353874 Reviewed-by: Damien Neil <[email protected]> Auto-Submit: Damien Neil <[email protected]> Run-TryBot: Damien Neil <[email protected]> TryBot-Result: Gopher Robot <[email protected]> Reviewed-by: David Chase <[email protected]>
This has been addressed in afd792f, released in Go 1.20 and visible in the doc: https://pkg.go.dev/net/http#FS Can probably be closed. |
This change has been merged in Gerrit. I don't know why this pull request didn't get closed. |
Both FileServer and NewFileTransport can try to seek a file, specifically
when MIME type sniffing is performed. This can be somewhat surprising to an
implementer of an fs.FS, as their filesystem will appear to work until a
user tries to access a file with an unrecognized extension (which requires
type sniffing and therefore seeking). With FileServer, this results in a
"seeker can't seek" message, which is not very clear for the developer.
The issue arises because fs.FS does not require Seek, while http.FileSystem
does. Therefore, this change adds a line to the documentation of net/http's
adapter function mentioning the requirement.