From 1fe41a8c57cf88b48254d300489f61eb4f12160e Mon Sep 17 00:00:00 2001 From: Mohammed Keyvanzadeh Date: Thu, 20 Apr 2023 19:34:31 +0330 Subject: [PATCH] tools: update PR label config - Update paths to the new ones. - Remove paths that no longer exist. - Capitalize comments and quote labels mentioned within. - Fix syntax error in regex. - Add missing JavaScript subsystems. PR-URL: https://github.com/nodejs/node/pull/47593 Reviewed-By: Rich Trott Reviewed-By: Michael Dawson --- .github/label-pr-config.yml | 78 ++++++++++++++++++------------------- 1 file changed, 37 insertions(+), 41 deletions(-) diff --git a/.github/label-pr-config.yml b/.github/label-pr-config.yml index ab60767072e5da..3d877a39227299 100644 --- a/.github/label-pr-config.yml +++ b/.github/label-pr-config.yml @@ -2,12 +2,12 @@ ## earlier entries override later entries subSystemLabels: # src subsystems - /^src\/async-wrap/: c++, async_wrap + /^src\/async_wrap/: c++, async_wrap /^src\/(?:base64|node_buffer|string_)/: c++, buffer /^src\/cares/: c++, cares /^src\/(?:process_wrap|spawn_)/: c++, child_process /^src\/(?:node_)?crypto/: c++, crypto - /^src\/(?:debug-|node_debug)/: c++, debugger + /^src\/debug_/: c++, debugger /^src\/udp_/: c++, dgram /^src\/(?:fs_|node_file|node_stat_watcher)/: c++, fs /^src\/node_http_parser/: c++, http_parser @@ -16,14 +16,13 @@ subSystemLabels: /^src\/(?:connect(?:ion)?|pipe|tcp)_/: c++, net /^src\/node_os/: c++, os /^src\/(?:node_main|signal_)/: c++, process - /^src\/timer_/: c++, timers - /^src\/(?:CNNICHashWhitelist|node_root_certs|tls_)/: c++, tls + /^src\/timer[_s]/: c++, timers + /^src\/node_root_certs/: c++, tls /^src\/tty_/: c++, tty /^src\/node_url/: c++, whatwg-url /^src\/node_util/: c++, util /^src\/node_v8/: c++, v8 engine /^src\/node_contextify/: c++, vm - /^src\/.*win32.*/: c++, windows /^src\/node_zlib/: c++, zlib /^src\/tracing/: c++, tracing /^src\/(?:node_api|js_native_api)/: c++, node-api @@ -35,31 +34,27 @@ subSystemLabels: /^src\/node_bob*/: c++, quic, dont-land-on-v14.x /^src\/node_sea/: single-executable - # don't label python files as c++ - /^src\/.+\.py$/: python, needs-ci - - # properly label changes to v8 inspector integration-related files + # Properly label changes to V8 inspector integration-related files /^src\/inspector_/: c++, inspector, needs-ci - # don't want to label it a c++ update when we're "only" bumping the Node.js version + # Don't want to label it a C++ update when we're "only" bumping the Node.js version /^src\/(?!node_version\.h)/: c++ # BUILDING.md should be marked as 'build' in addition to 'doc' /^BUILDING\.md$/: build, doc - # meta is a very specific label for things that are policy and or meta-info related - /^([A-Z]+$|CODE_OF_CONDUCT|ROADMAP|WORKING_GROUPS|GOVERNANCE|CHANGELOG|\.mail|\.git.+)/: meta - # things that edit top-level .md files are always a doc change + # 'meta' is a very specific label for things that are policy and or meta-info related + /^(?:[A-Z]+$|CODE_OF_CONDUCT|GOVERNANCE|CHANGELOG|\.mail|\.git.+)/: meta + # Things that edit top-level .md files are always a doc change /^\w+\.md$/: doc - # different variants of *Makefile and build files - /^(tools\/)?(Makefile|BSDmakefile|create_android_makefiles|\.travis\.yml)$/: build, needs-ci - /^tools\/(install\.py|genv8constants\.py|getnodeversion\.py|js2c\.py|utils\.py|configure\.d\/.*)$/: build, python, needs-ci + # Different variants of Makefile and build files + /^(?:tools\/)?(?:Makefile|BSDmakefile|create_android_makefiles)$/: build, needs-ci + /^tools\/(?:install\.py|genv8constants\.py|getnodeversion\.py|js2c\.py|utils\.py|configure\.d\/.*)$/: build, python, needs-ci /^vcbuild\.bat$/: build, windows, needs-ci - /^(android-)?configure|node\.gyp|common\.gypi$/: build, needs-ci - # more specific tools + /^(?:android-)?configure|node\.gyp|common\.gypi$/: build, needs-ci + # More specific tools /^tools\/gyp/: tools, build, gyp, needs-ci, dont-land-on-v14.x /^tools\/doc\//: tools, doc /^tools\/icu\//: tools, i18n-api, icu, needs-ci - /^tools\/(?:osx-pkg\.pmdoc|pkgsrc)\//: tools, macos, install - /^tools\/(?:(?:mac)?osx-)/: tools, macos + /^tools\/osx-/: tools, macos /^tools\/test-npm/: tools, test, npm /^tools\/test/: tools, test /^tools\/(?:certdata|mkssldef|mk-ca-bundle)/: tools, openssl, tls @@ -67,16 +62,16 @@ subSystemLabels: /^tools\/[^/]+\.bat$/: tools, windows, needs-ci /^tools\/make-v8/: tools, v8 engine, needs-ci /^tools\/v8_gypfiles/: tools, v8 engine, needs-ci - /^tools\/(code_cache|snapshot)/: needs-ci + /^tools\/snapshot/: needs-ci /^tools\/build-addons.mjs/: needs-ci - # all other tool changes should be marked as such + # All other tool changes should be marked as such /^tools\//: tools - /^\.eslint|\.remark|\.editorconfig/: tools + /^\.eslint|\.editorconfig/: tools /^typings\//: typings ## Dependencies # libuv needs an explicit mapping, as the ordinary /deps/ mapping below would - # end up as libuv changes labeled with "uv" (which is a non-existing label) + # end up as libuv changes labeled with 'uv' (which is a non-existing label) /^deps\/uv\//: libuv /^deps\/v8\/tools\/gen-postmortem-metadata\.py/: v8 engine, python, post-mortem /^deps\/v8\//: v8 engine @@ -85,18 +80,17 @@ subSystemLabels: /^deps\/nghttp2\/nghttp2\.gyp/: build, http2 /^deps\/nghttp2\//: http2 /^deps\/ngtcp2\//: quic, dont-land-on-v14.x - /^deps\/nghttp3\//: quic, dont-land-on-v14.x /^deps\/([^/]+)/: dependencies, $1 ## JS subsystems # Oddities first - /^lib\/(punycode|\w+\/freelist|sys\.js)/: '' + /^lib\/(?:punycode|\w+\/freelist|sys\.js)/: '' /^lib\/constants\.js$/: lib / src - /^lib\/_(debug_agent|debugger)\.js$/: debugger - /^lib(\/\w+)?\/(_)?link(ed)?list/: timers - /^lib\/\w+\/bootstrap_node/: lib / src - /^lib\/\w+\/v8_prof_/: tools - /^lib\/\w+\/socket_list/: net + /^lib\/internal/debugger$/: debugger + /^lib\/internal\/linkedlist\.js$/: timers + /^lib\/internal\/bootstrap/: lib / src + /^lib\/internal\/v8_prof_/: tools + /^lib\/internal\/socket(?:_list|address)\.js$/: net /^lib\/\w+\/streams$/: stream /^lib\/.*http2/: http2 /^lib\/worker_threads.js$/: worker @@ -112,22 +106,21 @@ subSystemLabels: /^lib(?:\/internal)?\/(\w+)(?:\/|$)/: $1 # Subfolders exlusiveLabels: - # more specific tests + # More specific tests /^test\/addons\//: test, addons - /^test\/debugger\//: test, debugger + /^test\/debugger/: test, debugger /^test\/doctool\//: test, doc, tools - /^test\/timers\//: test, timers + /^test\/timers/: test, timers /^test\/pseudo-tty\//: test, tty - /^test\/inspector\//: test, inspector + /^test\/inspector/: test, inspector /^test\/cctest\/test_inspector/: test, inspector - /^test\/cctest\/test_url/: test, whatwg-url /^test\/node-api\//: test, node-api /^test\/js-native-api\//: test, node-api /^test\/async-hooks\//: test, async_hooks /^test\/report\//: test, report /^test\/fixtures\/es-module/: test, esm /^test\/es-module\//: test, esm - /^test\/fixtures\/wpt\/streams//: test, web streams + /^test\/fixtures\/wpt\/streams\//: test, web streams /^test\//: test @@ -138,11 +131,9 @@ exlusiveLabels: # node-api is treated separately since it is not a JS core module but is still # considered a subsystem of sorts /^doc\/api\/n-api.md$/: doc, node-api - # quic - /^doc\/api\/quic.md$/: doc, quic, dont-land-on-v14.x # Add worker label to PRs that affect doc/api/worker_threads.md /^doc\/api\/worker_threads.md$/: doc, worker - # test runner documentation + # test_runner documentation /^doc\/api\/test.md$/: doc, test_runner, dont-land-on-v14.x # Automatically tag JS subsystem-specific API doc changes /^doc\/api\/(\w+)\.md$/: doc, $1 @@ -154,7 +145,7 @@ exlusiveLabels: # More specific benchmarks /^benchmark\/buffers\//: benchmark, buffer - /^benchmark\/(?:arrays|es)\//: benchmark, v8 engine + /^benchmark\/es\//: benchmark, v8 engine /^benchmark\/_http/: benchmark, http /^benchmark\/(?:misc|fixtures)\//: benchmark /^benchmark\/streams\//: benchmark, stream @@ -173,6 +164,7 @@ allJsSubSystems: - crypto - debugger - dgram + - diagnostics_channel - dns - domain - events @@ -181,11 +173,14 @@ allJsSubSystems: - http - https - http2 + - inspector - module - net - os - path + - perf_hooks - process + - punycode - querystring - quic - readline @@ -195,6 +190,7 @@ allJsSubSystems: - string_decoder - timers - tls + - trace_events - tty - typings - url