curl/.github/labeler.yml
Viktor Szakats 2d4d0c1fd3
appveyor: replace PowerShell with bash + parallel autotools
PowerShell works (after a steep development curve), but one property of
it stuck and kept causing unresolvable usability issues: With
`$ErrorActionPreference=Stop`, it does abort on failures, but shows only
the first line of the error message. In `Continue` mode, it shows the
full error message, but doesn't stop on all errors. Another issue is
PowerShell considering any stderr output as if the command failed (this
has been improved in 7.2 (2021-Nov), but fixed versions aren't running
in CI and will not be for a long time in all test images.)

Thus, we're going with bash.

Also:
- use `-j2` with autotools tests, making them finish 5-15 minutes per
  job faster.
- omit `POSIX_PATH_PREFIX`.
- use `WINDIR`.
- prefer forward slashes.

Follow-up to: 75078a415d #11999
Ref: #12444

Fixes #12560
Closes #12572
2023-12-21 22:54:07 +00:00

495 lines
15 KiB
YAML

# Copyright (C) Daniel Fandrich, <dan@coneharvesters.com>, et al.
#
# SPDX-License-Identifier: curl
# The workflow configures the .github/workflows/label.yml action
# to add labels to pull requests. This is not (yet?) a replacement for human
# triaging, but is intended to add labels to the easy cases. If the matching
# language becomes more powerful, more cases should be able to be handled.
#
# Labels are added in two ways: the any-glob-to-all-files ones are added if all
# the files fit into the category, and the any-glob-to-any-file ones are added
# as long as any file matches. The first ones are for "major" categories (the
# PR is all about that one topic, like HTTP/3), while the second ones are
# "addendums" that give useful information about a PR that's really mostly
# something else (e.g. CI if the PR also touches CI jobs).
#
# See https://github.com/actions/labeler/ for documentation on this file.
appleOS:
- all:
- changed-files:
- any-glob-to-all-files:
- '.github/workflows/macos.yml'
- 'lib/config-mac.h'
- 'lib/macos*'
- 'lib/vtls/sectransp*'
- 'm4/curl-sectransp.m4'
- 'MacOSX-Framework'
authentication:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/mk-ca-bundle.1'
- 'docs/libcurl/opts/CURLINFO_HTTPAUTH*'
- 'docs/libcurl/opts/CURLINFO_PROXYAUTH*'
- 'docs/libcurl/opts/CURLOPT_KRB*'
- 'docs/libcurl/opts/CURLOPT_SASL*'
- 'docs/libcurl/opts/CURLOPT_SERVICE_NAME*'
- 'docs/libcurl/opts/CURLOPT_USERNAME*'
- 'docs/libcurl/opts/CURLOPT_USERPWD*'
- 'docs/libcurl/opts/CURLOPT_XOAUTH*'
- 'lib/*gssapi*'
- 'lib/*krb5*'
- 'lib/*ntlm*'
- 'lib/curl_sasl.*'
- 'lib/http_aws*'
- 'lib/http_digest.*'
- 'lib/http_negotiate.*'
- 'lib/vauth/**'
- 'tests/server/fake_ntlm.c'
build:
- all:
- changed-files:
- any-glob-to-all-files:
- '**/CMakeLists.txt'
- '**/Makefile.am'
- '**/Makefile.inc'
- '**/Makefile.mk'
- '**/*.m4'
- '**/*.mk'
- '*.m4'
- 'docs/INSTALL.cmake'
- 'lib/curl_config.h.cmake'
- 'lib/libcurl*.in'
- 'CMake/**'
- 'CMakeLists.txt'
- 'configure.ac'
- 'm4/**'
- 'MacOSX-Framework'
- 'Makefile.*'
- 'packages/**'
- 'plan9/**'
- 'projects/**'
- 'winbuild/**'
- 'libcurl.def'
CI:
- all:
- changed-files:
- any-glob-to-any-file:
- '.azure-pipelines.yml'
- '.circleci/**'
- '.cirrus.yml'
- '.github/**'
- 'appveyor.*'
- 'scripts/ci*'
- 'tests/azure.pm'
- 'tests/appveyor.pm'
- 'tests/CI.md'
cmake:
- all:
- changed-files:
- any-glob-to-all-files:
- '**/CMakeLists.txt'
- 'CMake/**'
- 'docs/INSTALL.cmake'
- 'lib/curl_config.h.cmake'
cmdline tool:
- all:
- changed-files:
- any-glob-to-any-file:
- 'docs/cmdline-opts/**'
- 'src/**'
connecting & proxies:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/CONNECTION-FILTERS.md'
- 'docs/examples/ipv6.c'
- 'docs/libcurl/opts/CURLINFO_CONNECT*'
- 'docs/libcurl/opts/CURLINFO_PROXY*'
- 'docs/libcurl/opts/CURLOPT_ADDRESS*'
- 'docs/libcurl/opts/CURLOPT_CONNECT*'
- 'docs/libcurl/opts/CURLOPT_HAPROXY*'
- 'docs/libcurl/opts/CURLOPT_OPENSOCKET*'
- 'docs/libcurl/opts/CURLOPT_PRE_PROXY*'
- 'docs/libcurl/opts/CURLOPT_PROXY*'
- 'docs/libcurl/opts/CURLOPT_SOCKOPT*'
- 'docs/libcurl/opts/CURLOPT_SOCKS*'
- 'docs/libcurl/opts/CURLOPT_TCP*'
- 'docs/libcurl/opts/CURLOPT_TIMEOUT*'
- 'lib/cf-*proxy.*'
- 'lib/cf-socket.*'
- 'lib/cfilters.*'
- 'lib/conncache.*'
- 'lib/connect.*'
- 'lib/http_proxy.*'
- 'lib/if2ip.*'
- 'lib/noproxy.*'
- 'lib/socks.*'
- 'tests/server/socksd.c'
cookies:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/HTTP-COOKIES.md'
- 'docs/cmdline-opts/cookie*'
- 'docs/cmdline-opts/junk-session-cookies.d'
- 'docs/libcurl/opts/CURLINFO_COOKIE*'
- 'docs/libcurl/opts/CURLOPT_COOKIE*'
- 'docs/examples/cookie_interface.c'
- 'lib/cookie.*'
- 'lib/psl.*'
cryptography:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/CIPHERS.md'
- 'docs/RUSTLS.md'
- 'docs/libcurl/opts/CURLOPT_EGDSOCKET*'
- 'lib/*sha256*'
- 'lib/curl_des.*'
- 'lib/curl_hmac.*'
- 'lib/curl_md?.*'
- 'lib/md?.*'
- 'lib/rand.*'
DICT:
- all:
- changed-files:
- any-glob-to-all-files:
- 'lib/dict.*'
- 'tests/dictserver.py'
documentation:
- all:
- changed-files:
- any-glob-to-all-files:
- '**/*.md'
- '**/*.txt'
- '**/*.1'
- '**/*.3'
- 'CHANGES'
- 'docs/**'
- 'GIT-INFO'
- 'LICENSES/**'
- 'README'
- 'RELEASE-NOTES'
- all-globs-to-all-files:
# negative matches
- '!**/CMakeLists.txt'
- '!**/Makefile.am'
FTP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/libcurl/opts/CURLINFO_FTP*'
- 'docs/libcurl/opts/CURLOPT_FTP*'
- 'docs/libcurl/opts/CURLOPT_WILDCARDMATCH*'
- 'docs/examples/ftp*'
- 'lib/curl_fnmatch.*'
- 'lib/curl_range.*'
- 'lib/ftp*'
- 'tests/ftp*'
GOPHER:
- all:
- changed-files:
- any-glob-to-all-files:
- 'lib/gopher*'
HTTP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/examples/hsts*'
- 'docs/examples/http-*'
- 'docs/examples/httpput*'
- 'docs/examples/https*'
- 'docs/examples/*post*'
- 'docs/HSTS.md'
- 'docs/HTTP-COOKIES.md'
- 'docs/libcurl/opts/CURLINFO_COOKIE*'
- 'docs/libcurl/opts/CURLOPT_COOKIE*'
- 'docs/libcurl/opts/CURLINFO_HTTP_**'
- 'docs/libcurl/opts/CURLINFO_REDIRECT*'
- 'docs/libcurl/opts/CURLINFO_REFER*'
- 'docs/libcurl/opts/CURLOPT_FOLLOWLOCATION*'
- 'docs/libcurl/opts/CURLOPT_HSTS*'
- 'docs/libcurl/opts/CURLOPT_HTTP*'
- 'docs/libcurl/opts/CURLOPT_POST.*'
- 'docs/libcurl/opts/CURLOPT_POSTFIELD*'
- 'docs/libcurl/opts/CURLOPT_POSTREDIR*'
- 'docs/libcurl/opts/CURLOPT_REDIR*'
- 'docs/libcurl/opts/CURLOPT_REFER*'
- 'docs/libcurl/opts/CURLOPT_TRAILER*'
- 'docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING*'
- 'lib/cf-https*'
- 'lib/cf-h1*'
- 'lib/cf-h2*'
- 'lib/cookie.*'
- 'lib/http*'
- 'tests/http*'
- 'tests/http-server.pl'
- 'tests/http/*'
- 'tests/nghttp*'
HTTP/2:
- all:
- changed-files:
- any-glob-to-all-files:
- 'CMake/FindNGHTTP2.cmake'
- 'CMake/FindQUICHE.cmake'
- 'docs/HTTP2.md'
- 'docs/libcurl/opts/CURLOPT_STREAM*'
- 'docs/examples/http2*'
- 'lib/http2*'
- 'tests/http2-server.pl'
HTTP/3:
- all:
- changed-files:
- any-glob-to-all-files:
- '.github/workflows/ngtcp2*'
- '.github/workflows/quiche*'
- 'CMake/FindMSH3.cmake'
- 'CMake/FindNGHTTP3.cmake'
- 'CMake/FindNGTCP2.cmake'
- 'docs/HTTP3.md'
- 'docs/examples/http3*'
- 'lib/vquic/**'
- 'tests/http3-server.pl'
- 'tests/nghttpx.conf'
Hyper:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/HYPER.md'
- 'lib/c-hyper.*'
IMAP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'lib/imap*'
- 'docs/examples/imap*'
LDAP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'lib/*ldap*'
libcurl API:
- all:
- changed-files:
- any-glob-to-any-file:
- 'docs/libcurl/ABI.md'
- 'docs/libcurl/curl_*.3'
- 'include/curl/**'
logging:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/cmdline-opts/trace*'
- 'docs/libcurl/curl_global_trace*'
- 'lib/curl_trc*'
- 'tests/http/test_15_tracing.py'
MIME:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/libcurl/curl_form*'
- 'docs/libcurl/curl_mime_*'
- 'docs/libcurl/opts/CURLOPT_MIME*'
- 'docs/libcurl/opts/CURLOPT_HTTPPOST*'
- 'lib/formdata*'
- 'lib/mime*'
- 'src/tool_formparse.*'
MQTT:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/MQTT.md'
- 'lib/mqtt*'
- 'tests/server/mqttd.c'
name lookup:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/examples/resolve.c'
- 'docs/libcurl/opts/CURLINFO_NAMELOOKUP*'
- 'docs/libcurl/opts/CURLOPT_DNS*'
- 'docs/libcurl/opts/CURLOPT_DOH*'
- 'docs/libcurl/opts/CURLOPT_RESOLVE*'
- 'lib/asyn*'
- 'lib/curl_gethostname.*'
- 'lib/doh*'
- 'lib/host*'
- 'lib/idn*'
- 'lib/inet_pton.*'
- 'lib/socketpair*'
- 'tests/server/resolve.c'
POP3:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/examples/pop3*'
- 'lib/pop3.*'
RTMP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'lib/curl_rtmp.*'
RTSP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/libcurl/opts/CURLINFO_RTSP*'
- 'docs/libcurl/opts/CURLOPT_RTSP*'
- 'lib/rtsp.*'
- 'tests/rtspserver.pl'
- 'tests/server/rtspd.c'
SCP/SFTP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'CMake/FindLibSSH2.cmake'
- 'docs/libcurl/opts/CURLOPT_SSH*'
- 'docs/examples/sftp*'
- 'lib/vssh/**'
- 'tests/sshhelp.pm'
- 'tests/sshserver.pl'
script:
- all:
- changed-files:
- any-glob-to-all-files:
- '**/*.pl'
- '**/*.sh'
- 'curl-config.in'
- 'docs/curl-config.1'
- 'docs/mk-ca-bundle.1'
- 'docs/THANKS-filter'
- 'scripts/**'
SMB:
- all:
- changed-files:
- any-glob-to-all-files:
- 'lib/smb.*'
- 'tests/smbserver.py'
SMTP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/examples/smtp-*'
- 'docs/libcurl/opts/CURLOPT_MAIL*'
- 'lib/smtp.*'
tests:
- all:
- changed-files:
- any-glob-to-any-file:
- 'tests/**'
TFTP:
- all:
- changed-files:
- any-glob-to-all-files:
- 'lib/tftp.*'
- 'tests/tftpserver.pl'
- 'tests/server/tftp*'
TLS:
- all:
- changed-files:
- any-glob-to-all-files:
- 'CMake/FindBearSSL.cmake'
- 'CMake/FindMbedTLS.cmake'
- 'CMake/FindWolfSSL.cmake'
- 'docs/examples/ssl*'
- 'docs/examples/*ssl.*'
- 'docs/examples/*tls.*'
- 'docs/SSL*'
- 'docs/libcurl/curl_global_sslset*'
- 'docs/libcurl/opts/CURLINFO_CA*'
- 'docs/libcurl/opts/CURLINFO_CERT*'
- 'docs/libcurl/opts/CURLINFO_SSL*'
- 'docs/libcurl/opts/CURLINFO_TLS*'
- 'docs/libcurl/opts/CURLOPT_CA*'
- 'docs/libcurl/opts/CURLOPT_CERT*'
- 'docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY*'
- 'docs/libcurl/opts/CURLOPT_SSL*'
- 'docs/libcurl/opts/CURLOPT_TLS*'
- 'docs/libcurl/opts/CURLOPT_USE_SSL*'
- 'lib/vtls/**'
- 'm4/curl-bearssl.m4'
- 'm4/curl-gnutls.m4'
- 'm4/curl-mbedtls.m4'
- 'm4/curl-openssl.m4'
- 'm4/curl-rustls.m4'
- 'm4/curl-schannel.m4'
- 'm4/curl-sectransp.m4'
- 'm4/curl-wolfssl.m4'
URL:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/libcurl/curl_url*'
- 'docs/URL-SYNTAX.md'
- 'docs/examples/parseurl*'
- 'include/curl/urlapi.h'
- 'lib/urlapi*'
WebSocket:
- all:
- changed-files:
- any-glob-to-all-files:
- 'docs/WEBSOCKET.md*'
- 'docs/examples/websocket*'
- 'docs/libcurl/curl_ws_*'
- 'docs/libcurl/libcurl-ws*'
- 'docs/libcurl/opts/CURLOPT_WS_*'
- 'include/curl/websockets.h'
- 'lib/ws.*'
- 'tests/http/clients/ws*'
- 'tests/http/test_20_websockets.py'
- 'tests/http/testenv/ws*'
Windows:
- all:
- changed-files:
- any-glob-to-all-files:
- 'appveyor.*'
- 'CMake/Platforms/WindowsCache.cmake'
- 'lib/*win32*'
- 'lib/curl_multibyte.*'
- 'lib/rename.*'
- 'lib/vtls/schannel*'
- 'm4/curl-schannel.m4'
- 'projects/**'
- 'src/tool_doswin.c'
- 'winbuild/**'
- 'libcurl.def'