Граф коммитов

216 Коммитов

Автор SHA1 Сообщение Дата
Viktor Szakats e5bb88b8f8
tool: use our own stderr variable
Earlier this year we changed our own stderr variable to use the standard
name `stderr` (to avoid bugs where someone is using `stderr` instead of
the curl-tool specific variable). This solution needed to override the
standard `stderr` symbol via the preprocessor. This in turn didn't play
well with unity builds and caused curl tool to crash or stay silent due
to an uninitialized stderr. This was a hard to find issue, fixed by
manually breaking out one file from the unity sources.

To avoid two these two tricks, this patch implements a different
solution: Restore using our own local variable for our stderr output and
leave `stderr` as-is. To avoid using `stderr` by mistake, add a
`checksrc` rule (based on logic we already used in lib for `strerror`)
that detects any `stderr` use in `src` and points to using our own
variable instead: `tool_stderr`.

Follow-up to 06133d3e9b
Follow-up to 2f17a9b654

Closes #11958
2023-09-28 10:50:56 +00:00
Daniel Stenberg 9ffd411735
curl_multi_get_handles: get easy handles from a multi handle
Closes #11750
2023-09-25 20:16:58 +02:00
Daniel Stenberg d27576b2ad
singleuse: add scan for use in other source codes
This should reduce false-positive to almost zero. Checks for presence in
unit tests if --unit is specified, which is intended for debug builds
where unit testing is enabled.

Closes #11932
2023-09-25 17:05:49 +02:00
Daniel Stenberg 5627033344
scripts/singleuse.pl: add curl_global_trace 2023-09-22 14:13:00 +02:00
John Bampton 7378f9cc32
misc: remove duplicate words
Closes #11740
2023-08-29 10:39:31 +02:00
Viktor Szakats c09466abff
egd: delete feature detection and related source code
EGD is Entropy Gathering Daemon, a socket-based entropy source supported
by pre-OpenSSL v1.1 versions and now deprecated. curl also deprecated it
a while ago.

Its detection in CMake was broken all along because OpenSSL libs were
not linked at the point of feature check.

Delete detection from both cmake and autotools, along with the related
source snippet, and the `--with-egd-socket=` `./configure` option.

Closes #11556
2023-08-01 21:58:56 +00:00
Alexander Jaeger 959e613e7c
misc: fix various typos
Closes #11561
2023-08-01 14:09:32 +02:00
Daniel Stenberg b87e0921e0
checksrc: quote the file name to work with "funny" letters
Closes #11437
2023-07-13 14:25:18 +02:00
Paul Wise 7f669aa0f1
checksrc: modernise perl file open
Use regular variables and separate file open modes from filenames.

Suggested by perlcritic

Copied from https://github.com/curl/trurl/commit/f2784a9240f47ee28a845

Closes #11358
2023-06-22 11:03:02 +02:00
Dan Fandrich a1730b6106 scripts: Fix GHA matrix job detection in cijobs.pl
The parsing is pretty brittle and it broke detecting some jobs at some
point. Also, detect if Windows is used in GHA.
2023-05-30 16:54:13 -07:00
Daniel Stenberg af7670cf76
scripts/contri*sh: no longer grep -v ' '
Originally these scripts filtered out names that have no space so that
they better avoid nick names not intended for credits. Such names are
not too commonly used, plus we now give credit even to those.

Additionally: non-latin names, like Asian, don't have spaces at all so
they were also filtered out and had to be manually added which made it
an error-prone operation where Asian names eventually easily fell off by
mistake.

Closes #11206
2023-05-26 08:36:41 +02:00
Daniel Stenberg 0768604196
scripts/singleuse.pl: add more API calls 2023-05-23 11:08:51 +02:00
Emanuele Torre f198d33e8d
checksrc: disallow spaces before labels
Out of 415 labels throughout the code base, 86 of those labels were
not at the start of the line. Which means labels always at the start of
the line is the favoured style overall with 329 instances.

Out of the 86 labels not at the start of the line:
* 75 were indented with the same indentation level of the following line
* 8 were indented with exactly one space
* 2 were indented with one fewer indentation level then the following
  line
* 1 was indented with the indentation level of the following line minus
  three space (probably unintentional)

Co-Authored-By: Viktor Szakats

Closes #11134
2023-05-18 20:45:04 +02:00
Daniel Stenberg 9ce7eee070
checksrc: find bad indentation in conditions without open brace
If the previous line starts with if/while/for AND ends with a closed
parenthesis and there's an equal number of open and closed parentheses
on that line, verify that this line is indented $indent more steps, if
not a cpp line.

Also adjust the fall-out from this fix.

Closes #11054
2023-04-28 23:11:00 +02:00
Emanuele Torre 7f712399d5
checksrc: check for spaces before the colon of switch labels
Closes #11047
2023-04-27 23:26:50 +02:00
Daniel Stenberg d567cca1de
checksrc: fix SPACEBEFOREPAREN for conditions starting with "*"
The open paren check wants to warn for spaces before open parenthesis
for if/while/for but also for any function call. In order to avoid
catching function pointer declarations, the logic allows a space if the
first character after the open parenthesis is an asterisk.

I also spotted what we did not include "switch" in the check but we should.

This check is a little lame, but we reduce this problem by not allowing
that space for if/while/for/switch.

Reported-by: Emanuele Torre
Closes #11044
2023-04-27 17:24:47 +02:00
Daniel Stenberg a51f90ec0f
scripts/delta: fix "ambiguous argument" when used in branches 2023-03-18 10:22:58 +01:00
Daniel Stenberg 0900997250
scripts/delta: show percent of number of files changed since last tag 2023-02-10 18:52:16 +01:00
Daniel Stenberg be5f6c3124
zuul: stop using this CI service
The important jobs have already transitioned. The remaining ones we can
skip for now.

Closes #10368
2023-01-30 15:42:15 +01:00
Daniel Stenberg e62ebe3aa8
copyright: remove "m4/ax_compile_check_sizeof.m4" from skips
and report if skipped files do not exist.

Follow-up to 9e11c2791f which removed the file.

Closes #10369
2023-01-30 15:40:46 +01:00
Daniel Stenberg 0e293bacb1
copyright.pl: cease doing year verifications
As we have (mostly) removed the copyright year ranges.

Reported-by: Ryan Schmidt
Fixes #10345
Closes #10352
2023-01-29 10:27:28 +01:00
Dan Fandrich 8dceb7bfcd scripts: Fix Appveyor job detection in cijobs.pl
The reorganization in #9769 broke the script. This should probably be
rewritten to use a YAML parser for better upward compatibility.
2023-01-25 15:31:45 -08:00
Jay Satiro 602964ec5e scripts: set file mode +x on all perl and shell scripts
- Set all scripts +x, ie 644 => 755.

Prior to this change some scripts were not executable and therefore
could not be called directly.

~~~
git ls-files -s \*.{sh,pl,py} | grep -v 100755
~~~

Closes https://github.com/curl/curl/pull/10219
2023-01-05 02:34:24 -05:00
Daniel Stenberg 2bc1d775f5
copyright: update all copyright lines and remove year ranges
- they are mostly pointless in all major jurisdictions
- many big corporations and projects already don't use them
- saves us from pointless churn
- git keeps history for us
- the year range is kept in COPYING

checksrc is updated to allow non-year using copyright statements

Closes #10205
2023-01-03 09:19:21 +01:00
Daniel Stenberg 9ca194b5e2
release-notes.pl: check fixes/closes lines better
To better skip lines that just happen to mention those words at the
start of a line without being instructions.
2023-01-02 11:31:29 +01:00
Frank Gevaerts 99f72c01c2
contributors.sh: actually use $CURLWWW instead of just setting it.
The script was all set up for flexibility where curl-www is elsewhere in
the filesystem, but then hard-coded ../curl-www anyway...

Closes #10064
2022-12-09 16:50:23 +01:00
Max Dymond 4c712a1b25 ci: Remove zuul fuzzing job as it's superseded by CIFuzz 2022-12-01 16:00:11 +00:00
Daniel Stenberg 9967c10b6d
scripts/contributors.sh: strip one OR MORE leading spaces
From names found credited in commit logs
2022-11-30 09:09:47 +01:00
Daniel Stenberg 709aefc7ca
scripts/delta: adapt to curl.h changes for the opt counter 2022-11-17 14:41:04 +01:00
Daniel Stenberg 980510926d
log2changes.pl: wrap long lines at 80 columns
Also, only use author names in the output.

Fixes #9896
Reported-by: John Sherrill
Closes #9897
2022-11-15 10:56:09 +01:00
Daniel Stenberg 52cc4a85fd
style: use space after comment start and before comment end
/* like this */

/*not this*/

checksrc is updated accordingly

Closes #9828
2022-10-30 22:31:29 +01:00
Daniel Stenberg 3678336b20
scripts/checksrc.pl: detect duplicated include files
After an idea by Dan Fandrich in #9794

Closes #9796
2022-10-26 11:27:29 +02:00
Viktor Szakats c5d8895645
scripts/release-notes.pl: strip ci skip tag [ci skip]
Ref: e604a82cae (commitcomment-85637701)

Reviewed-by: Daniel Stenberg

Closes #9634
2022-10-02 22:15:21 +00:00
a1346054 c3a6165307
scripts: use `grep -E` instead of `egrep`
egrep is deprecated

Closes #9491
2022-09-13 10:18:50 +02:00
Daniel Stenberg e43c3b3e3e
zuul: remove the clang-tidy job
Turns out we don't see the warnings, but the warnings right now are
plain ridiculous and unhelpful so we can just as well just kill this
job.

Closes #9390
2022-08-30 15:40:03 +02:00
Daniel Stenberg 5357686fdf
examples/curlx.c: remove
This example is a bit convoluted to use as an example, combined with the
special license for it makes it unsuitable.

Closes #9330
2022-08-18 00:00:12 +02:00
Daniel Stenberg c7febe520b
GHA: move libressl CI from zuul to GitHub
Closes #9309
2022-08-14 00:54:01 +02:00
Daniel Stenberg 9e11c2791f
configure: introduce CURL_SIZEOF
This is a rewrite of the previously used GPLv3+exception licensed
file. With this change, there is no more reference to GPL so we can
remove that from LICENSES/.

Ref: #9220
Closes #9291
2022-08-11 09:07:02 +02:00
Emanuele Torre 79f915e8ec
ci: avoid `cmake -Hpath`
This is an undocumented option similar to the `-Spath' option introduced
in cmake 3.13.
Replace all instances of `-Hpath' with `-Spath' in macos workflow.
Replace `-H. -Bpath' with `mkdir path; cd ./path; cmake ..' in zuul
scripts since it runs an older version of cmake.

Fixes #9008
Closes #9014
2022-06-22 10:43:07 +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 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 758537854f
copyright: verify SPDX-License-Identifier presence as well 2022-06-13 09:51:32 +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 18a01e3229
scripts/copyright.pl: ignore leading spaces 2022-06-12 12:37:27 +02:00
Daniel Stenberg e517b63223
scripts/copyright.pl: fix the exclusion to not ignore man pages
Ref: #8869
Closes #8952
2022-06-02 15:39:14 +02:00
Viktor Szakats fde1cb9247
log2changes: do not indent empty lines [ci skip]
This will omit two spaces of indentation from lines with no content,
thus avoiding 'spaces @ EOL'.

Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Closes #8887
2022-05-20 05:58:05 +00:00
Daniel Gustafsson bf327a9dfe macos9: remove partial support
The support for compiling on Mac OS 9 hasn't been modified since 2001
and has no active maintainer or packager, so it's time to remove it as
it's incredibly unlikely to work. If a maintainer re-emerges it can be
resurrected from Git history.

Closes: #8836
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
2022-05-16 10:10:16 +02:00
Daniel Stenberg 3be1e9c642
zuul: fix the ngtcp2-gnutls build
Add packages and tweak the configure options.

Use the GnuTLS 3.7.4 branch (not main).

Closes #8829
2022-05-10 09:44:00 +02:00
Daniel Stenberg 447873dd4c
scripts/contributors.sh: correct the copyright range 2022-05-09 16:41:57 +02:00