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

rm stale notes about HTTP.jl concurrency issues #694

Merged
merged 1 commit into from
Oct 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions src/utilities/downloads_backend.jl
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@ It has one field,
which is the `Downloads.Downloader` to use. If set to `nothing`, the default,
then a global downloader object will be used.

Downloads.jl tends to perform better under concurrent operation than HTTP.jl,
particularly with `@async` / `asyncmap`. Note that threading (e.g. `@spawn` or `@threads`) with Downloads.jl is broken on Julia releases prior to 1.8 (https://github.com/JuliaLang/Downloads.jl/issues/182#issuecomment-1069269944).
Note that threading (e.g. `@spawn` or `@threads`) with Downloads.jl is broken on Julia releases prior to 1.8 (https://github.com/JuliaLang/Downloads.jl/issues/182#issuecomment-1069269944).
"""
struct DownloadsBackend <: AWS.AbstractBackend
downloader::Union{Nothing,Downloads.Downloader}
Expand Down
5 changes: 1 addition & 4 deletions src/utilities/request.jl
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,7 @@ which defaults to an empty dictionary. This field provides
default options to use, which can be any of the keyword
arguments to [`HTTP.request`](https://juliaweb.github.io/HTTP.jl/stable/public_interface/#HTTP.request). These options are overwritten by any per-request options.

This is the default backend, and the only option until AWS.jl v1.57.0. Therefore, it has
been used more often in practice, and may be more mature. Note, however, HTTP.jl currently
(March 2022) has issues with concurrency (see [HTTP.jl#517](https://github.com/JuliaWeb/HTTP.jl/issues/517)). Therefore, it may be advisable to switch to the [`DownloadsBackend`](@ref) if you
are using concurrency.
This is the default backend.
"""
struct HTTPBackend <: AbstractBackend
http_options::AbstractDict{Symbol,<:Any}
Expand Down
Loading