Commit Graph

28767 Commits

Author SHA1 Message Date
Daniel Stenberg
c717975eaa
CONTRIBUTE: mention how we maintain REUSE compliance
for copyright and license information of all files stored in git

Closes #9032
2022-06-21 23:48:57 +02:00
Daniel Stenberg
d56dbf0a16
CURLOPT_ALTSVC.3: document the file format
Closes #9033
2022-06-21 23:48:00 +02:00
Jay Satiro
51e0b8fc60 runtests: add "threadsafe" to detected features
Follow-up to recent commits which added thread-safety support.

Bug: https://github.com/curl/curl/pull/9012#discussion_r902018782
Reported-by: Marc Hörsken

Closes https://github.com/curl/curl/pull/9030
2022-06-21 03:17:56 -04:00
Daniel Stenberg
d5dc3629eb
easy: remove dead code
Follow-up from 5912da253b

Detected by Coverity (CID 1506519)

Closes #9029
2022-06-20 10:44:28 +02:00
Glenn Strauss
7f43f3dc59
transfer: upload performance; avoid tiny send
Append to the upload buffer when only small amount remains in buffer
rather than performing a separate tiny send to empty buffer.

Avoid degenerative upload behavior which might cause curl to send mostly
1-byte DATA frames after exhausing the h2 send window size

Related discussion: https://github.com/nghttp2/nghttp2/issues/1722

Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
Closes #8965
2022-06-20 09:42:40 +02:00
Steve Holme
aea8ac14df
projects: fix third-party SSL library build paths for Visual Studio
The paths used by the build batch files were inconsistent with those in
the Visual Studio project files.

Closes #8991
2022-06-20 08:22:24 +02:00
Pierrick Charron
4bf2c231d7
urlapi: make curl_url_set(url, CURLUPART_URL, NULL, 0) clear all parts
As per the documentation :

> Setting a part to a NULL pointer will effectively remove that
> part's contents from the CURLU handle.

But currently clearing CURLUPART_URL does nothing and returns
CURLUE_OK. This change will clear all parts of the URL at once.

Closes #9028
2022-06-20 08:15:51 +02:00
Philip H
06fc958305
CI: bump FreeBSD 13.0 to 13.1
Signed-off-by: Philip H <47042125+pheiduck@users.noreply.github.com>
Closes #8815
2022-06-18 12:47:17 +02:00
Daniel Stenberg
dd7864da0f
RELEASE-NOTES: synced
and updated release date in RELEASE-PROCEDURE.md
2022-06-18 12:21:48 +02:00
divinity76
8dcbb0f191
CURLOPT_HTTPHEADER.3: improve comment in example
Closes #9025
2022-06-17 23:12:17 +02:00
Marc Hoersken
3084f87757
CI/azure: reduce flakiness by retrying install/prepare steps
Closes #9010
2022-06-16 20:37:06 +02:00
Marc Hoersken
0263c828a5
CI/cirrus: align Windows timeout with Azure CI at 120 minutes
Closes #9009
2022-06-16 20:33:43 +02:00
Jay Satiro
a8a4abb2ae vtls: make curl_global_sslset thread-safe
.. and update some docs to explain curl_global_* is now thread-safe.

Follow-up to 23af112 which made curl_global_init/cleanup thread-safe.

Closes https://github.com/curl/curl/pull/9016
2022-06-16 03:18:40 -04:00
Jay Satiro
9135275f86 curl_easy_pause.3: remove explanation of progress function
- Remove misleading text that says progress function "gets called at
  least once per second, even if the connection is paused."

The progress function behavior is more nuanced and the user is better
served reading the progress function doc rather than attempt to explain
it in the curl_easy_pause doc.

The progress function can only be called at least once per second if an
appropriate multi transfer function is called (eg curl_multi_perform) in
that time. For a paused transfer there may not be such a call. Rather
than explain this in detail in the curl_easy_pause doc, rely on the user
reading the CURLOPT_PROGRESSFUNCTION doc.

Ref: https://github.com/curl/curl/issues/8983

Closes https://github.com/curl/curl/pull/9015
2022-06-16 03:18:04 -04:00
Daniel Stenberg
ef22d5c42a
libssh: skip the fake-close when libssh does the right thing
Starting in libssh 0.10.0 ssh_disconnect() will no longer close our
socket. Instead it will be kept alive as we want it, and it is our
responsibility to close it later.

Ref: #8718
Ref: https://gitlab.com/libssh/libssh-mirror/-/merge_requests/240
Closes #9021
2022-06-15 23:43:35 +02:00
Daniel Stenberg
c828dc72e5
configure: warn about rustls being experimental
Right now a dozen test cases are disabled because they don't work with
rustls.

Closes #9019
2022-06-15 23:33:00 +02:00
Daniel Stenberg
f0f587d347
runtests: skip starting the ssh server if user name is lacking
Because the ssh server startup script *requires* a user name there's no
point in invoking it if no name was found.

Reported-by: Ricardo M. Correia
Ref: #9007
Closes #9013
2022-06-15 08:31:57 +02:00
Daniel Stenberg
4572489c59
copyright.pl: parse and use .reuse/dep5 for skips
Also scan skipped files to be able to find superfluous ignores, shown with -v.

Closes #9006
2022-06-14 14:07:12 +02:00
Daniel Stenberg
2b7f7d04f7
reuse/dep5: adjusted to parse better
... adjusted a few files to contain copyright and license info.

Closes #9006
2022-06-14 14:07:02 +02:00
Daniel Stenberg
10f8fe3683
buildconf.bat: update copyright year range
Closes #9006
2022-06-14 14:06:55 +02:00
Daniel Stenberg
6c616ba1e7
README.md: use the common "Copyright" style formatting
Closes #9006
2022-06-14 14:06:43 +02:00
Daniel Stenberg
c2ad703e63
reuse: move license info from .mailmap.license to .reuse/dep5
Closes #9006
2022-06-14 14:06:30 +02:00
Daniel Stenberg
20e0507381
README.md: add a REUSE badge
Closes #9004
2022-06-14 09:00:15 +02:00
Daniel Stenberg
a33f90b1e3
.reuse/dep5: remove recursive docs ignore, only skip markdown files
... and some additional non-markdown individual files in docs/

Closes #9005
2022-06-14 08:58:20 +02:00
Daniel Stenberg
df45fd1794
docs/cmdline-opts: add copyright and license identifier to each file
gen.pl now insists on C: and SPDX-License-Identifier: fields to be
present in all files.

Closes #9002
2022-06-14 08:48:09 +02:00
Daniel Stenberg
d82c7eedea
copyright: info for/ignore .github/ISSUE_TEMPLATE/bug_report.md
Follow-up from 448f7ef9ab. The adding of the copyright text in that
file broke site functionality.

Closes #9001
2022-06-14 00:04:19 +02:00
Daniel Stenberg
448f7ef9ab
bug_report.md: revert the REUSE template to see if it works again 2022-06-13 23:41:07 +02:00
Viktor Szakats
a94d6fe706
version: rename threadsafe-init to threadsafe
Referring to Daniel's article [1], making the init function thread-safe
was the last bit to make libcurl thread-safe as a whole. So the name of
the feature may as well be the more concise 'threadsafe', also telling
the story that libcurl is now fully thread-safe, not just its init
function. Chances are high that libcurl wants to remain so in the
future, so there is little likelihood of ever needing any other distinct
`threadsafe-<name>` feature flags.

For consistency we also shorten `CURL_VERSION_THREADSAFE_INIT` to
`CURL_VERSION_THREADSAFE`, update its description and reference libcurl's
thread safety documentation.

[1]: https://daniel.haxx.se/blog/2022/06/08/making-libcurl-init-more-thread-safe/

Reviewed-by: Daniel Stenberg
Reviewed-by: Jay Satiro
Closes #8989
2022-06-13 18:59:45 +00:00
Daniel Stenberg
7ade9c50b3
test3026: disable on win32
... as it's not likely to have working pthreads

Closes #8996
2022-06-13 17:51:30 +02:00
Daniel Stenberg
805796ed0b
GHA: shorten the reuse CI job name
"REUSE compliance / check" should be good enough

Closes #9000
2022-06-13 10:09:15 +02:00
Daniel Stenberg
a36e6987e5
misc: add missing SPDX-License-Identifier info
For some reason the REUSE CI job did not find these.

Closes #8999
2022-06-13 10:08:17 +02:00
Daniel Stenberg
758537854f
copyright: verify SPDX-License-Identifier presence as well 2022-06-13 09:51:32 +02:00
Daniel Stenberg
be632e23df
easy_lock: add SPDX license identifier
Closes #8998
2022-06-13 09:36:25 +02:00
Daniel Stenberg
5ccddf6439
mailmap: Max Mehl 2022-06-13 09:14:07 +02:00
max.mehl
e8e66126aa
git: ignore large commit making the curl REUSE compliant 2022-06-13 09:14:07 +02:00
max.mehl
ad9bc5976d
copyright: make repository REUSE compliant
Add licensing and copyright information for all files in this repository. This
either happens in the file itself as a comment header or in the file
`.reuse/dep5`.

This commit also adds a Github workflow to check pull requests and adapts
copyright.pl to the changes.

Closes #8869
2022-06-13 09:13:00 +02:00
Daniel Stenberg
965119855d
curl_url_set.3: clarify by default using known schemes only
Closes #8994
2022-06-12 23:10:51 +02:00
Daniel Stenberg
18a01e3229
scripts/copyright.pl: ignore leading spaces 2022-06-12 12:37:27 +02:00
Viktor Szakats
dd94076947
ngtcp2: fix typo in preprocessor condition
Ref: 927ede7edc

Bug: https://github.com/curl/curl/pull/8981#discussion_r894312185
Reported-by: Emil Engler
Closes #8987
2022-06-10 23:07:15 +00:00
Daniel Stenberg
37c5a527a8
RELEASE-NOTES: synced 2022-06-10 09:18:39 +02:00
Tatsuhiro Tsujikawa
927ede7edc
ngtcp2: build without sendmsg
Closes #8981
2022-06-10 09:10:54 +02:00
Tatsuhiro Tsujikawa
d2c6d8be18
ngtcp2: use handshake helper funcs to simplify TLS handshake integration
Closes #8968
2022-06-10 09:07:33 +02:00
Daniel Stenberg
95f5aae9ad
test390: verify --parallel
Closes #8985
2022-06-10 09:05:25 +02:00
Daniel Stenberg
5121d98c22
test1543: verify CURLINFO_EFFECTIVE_URL with CURLOPT_CURLU set
Triggered by a bug report from Adam Light:
https://curl.se/mail/lib-2022-06/0013.html - which ended up being mostly
a misunderstanding of how CURLINFO_EFFECTIVE_URL works.

Closes #8971
2022-06-08 16:32:46 +02:00
Daniel Stenberg
90a7017acb
url: URL encode the path when extracted, if spaces were set 2022-06-08 16:32:46 +02:00
Daniel Stenberg
c3fc406ebb
urlapi: support CURLU_URLENCODE for curl_url_get() 2022-06-08 16:32:46 +02:00
Daniel Stenberg
db8cfdc8f7
server/sws: support spaces in the HTTP request path 2022-06-08 16:32:46 +02:00
Daniel Stenberg
d391c57990
tests/getpart: fix getpartattr to work with "data" and "data2" 2022-06-08 16:32:46 +02:00
Daniel Stenberg
5912da253b
select: return error from "lethal" poll/select errors
Adds two new error codes: CURLE_UNRECOVERABLE_POLL and
CURLM_UNRECOVERABLE_POLL one each for the easy and the multi interfaces.

Reported-by: Harry Sintonen
Fixes #8921
Closes #8961
2022-06-08 11:07:01 +02:00
Daniel Stenberg
7007324a6a
test3026: add missing control file
Follow-up from 2ed1012564

Makes the test run, makes 'make dist' work

This single test takes 24-25 seconds on my machine (with valgrind). For
this reason I tag it with a "slow" keyword.

Closes #8976
2022-06-08 11:00:02 +02:00