{"action":"created","issue":{"url":"https://api.github.com/repos/nodejs/node/issues/22490","repository_url":"https://api.github.com/repos/nodejs/node","labels_url":"https://api.github.com/repos/nodejs/node/issues/22490/labels{/name}","comments_url":"https://api.github.com/repos/nodejs/node/issues/22490/comments","events_url":"https://api.github.com/repos/nodejs/node/issues/22490/events","html_url":"https://github.com/nodejs/node/pull/22490","id":353566767,"node_id":"MDExOlB1bGxSZXF1ZXN0MjEwNTg1NzEw","number":22490,"title":"src,cli: make CLI options programmatically accessible & generate --help text","user":{"login":"addaleax","id":899444,"node_id":"MDQ6VXNlcjg5OTQ0NA==","avatar_url":"https://avatars2.githubusercontent.com/u/899444?v=4","gravatar_id":"","url":"https://api.github.com/users/addaleax","html_url":"https://github.com/addaleax","followers_url":"https://api.github.com/users/addaleax/followers","following_url":"https://api.github.com/users/addaleax/following{/other_user}","gists_url":"https://api.github.com/users/addaleax/gists{/gist_id}","starred_url":"https://api.github.com/users/addaleax/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/addaleax/subscriptions","organizations_url":"https://api.github.com/users/addaleax/orgs","repos_url":"https://api.github.com/users/addaleax/repos","events_url":"https://api.github.com/users/addaleax/events{/privacy}","received_events_url":"https://api.github.com/users/addaleax/received_events","type":"User","site_admin":false},"labels":[{"id":155267502,"node_id":"MDU6TGFiZWwxNTUyNjc1MDI=","url":"https://api.github.com/repos/nodejs/node/labels/C++","name":"C++","color":"e11d21","default":false},{"id":523004170,"node_id":"MDU6TGFiZWw1MjMwMDQxNzA=","url":"https://api.github.com/repos/nodejs/node/labels/cli","name":"cli","color":"bfd4f2","default":false},{"id":281232761,"node_id":"MDU6TGFiZWwyODEyMzI3NjE=","url":"https://api.github.com/repos/nodejs/node/labels/lib%20/%20src","name":"lib / src","color":"fad8c7","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-08-23T21:49:56Z","updated_at":"2018-08-27T23:37:10Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/nodejs/node/pulls/22490","html_url":"https://github.com/nodejs/node/pull/22490","diff_url":"https://github.com/nodejs/node/pull/22490.diff","patch_url":"https://github.com/nodejs/node/pull/22490.patch"},"body":"<details><summary>`node --help` before:</summary>\r\n\r\n```\r\nUsage: node [options] [ -e script | script.js | - ] [arguments]\r\n       node inspect script.js [arguments]\r\n\r\nOptions:\r\n  -                          script read from stdin (default; \r\n                             interactive mode if a tty)\r\n  --                         indicate the end of node options\r\n  --abort-on-uncaught-exception\r\n                             aborting instead of exiting causes a\r\n                             core file to be generated for analysis\r\n  --experimental-modules     experimental ES Module support\r\n                             and caching modules\r\n  --experimental-repl-await  experimental await keyword support\r\n                             in REPL\r\n  --experimental-vm-modules  experimental ES Module support\r\n                             in vm module\r\n  --experimental-worker      experimental threaded Worker support\r\n  --icu-data-dir=dir         set ICU data load path to dir\r\n                             (overrides NODE_ICU_DATA)\r\n  --inspect-brk[=[host:]port]\r\n                             activate inspector on host:port\r\n                             and break at start of user script\r\n  --inspect-port=[host:]port\r\n                             set host:port for inspector\r\n  --inspect[=[host:]port]    activate inspector on host:port\r\n                             (default: 127.0.0.1:9229)\r\n  --napi-modules             load N-API modules (no-op - option\r\n                             kept for compatibility)\r\n  --no-deprecation           silence deprecation warnings\r\n  --no-force-async-hooks-checks\r\n                             disable checks for async_hooks\r\n  --no-warnings              silence all process warnings\r\n  --openssl-config=file      load OpenSSL configuration from the\r\n                             specified file (overrides\r\n                             OPENSSL_CONF)\r\n  --pending-deprecation      emit pending deprecation warnings\r\n  --preserve-symlinks        preserve symbolic links when resolving\r\n  --preserve-symlinks-main   preserve symbolic links when resolving\r\n                             the main module\r\n  --prof                     generate V8 profiler output\r\n  --prof-process             process V8 profiler output generated\r\n                             using --prof\r\n  --redirect-warnings=file\r\n                             write warnings to file instead of\r\n                             stderr\r\n  --throw-deprecation        throw an exception on deprecations\r\n  --title=title              the process title to use on start up\r\n  --tls-cipher-list=val      use an alternative default TLS cipher list\r\n  --trace-deprecation        show stack traces on deprecations\r\n  --trace-event-categories   comma separated list of trace event\r\n                             categories to record\r\n  --trace-event-file-pattern Template string specifying the\r\n                             filepath for the trace-events data, it\r\n                             supports ${rotation} and ${pid}\r\n                             log-rotation id. %2$u is the pid.\r\n  --trace-events-enabled     track trace events\r\n  --trace-sync-io            show stack trace when use of sync IO\r\n                             is detected after the first tick\r\n  --trace-warnings           show stack traces on process warnings\r\n  --track-heap-objects       track heap object allocations for heap snapshots\r\n  --use-bundled-ca           use bundled CA store (default)\r\n  --use-openssl-ca           use OpenSSL's default CA store\r\n  --v8-options               print v8 command line options\r\n  --v8-pool-size=num         set v8's thread pool size\r\n  --zero-fill-buffers        automatically zero-fill all newly allocated\r\n                             Buffer and SlowBuffer instances\r\n  -c, --check                syntax check script without executing\r\n  -e, --eval script          evaluate script\r\n  -h, --help                 print node command line options\r\n  -i, --interactive          always enter the REPL even if stdin\r\n                             does not appear to be a terminal\r\n  -p, --print                evaluate script and print result\r\n  -r, --require              module to preload (option can be repeated)\r\n  -v, --version              print Node.js version\r\n\r\nEnvironment variables:\r\nNODE_DEBUG                   ','-separated list of core modules\r\n                             that should print debug information\r\nNODE_DEBUG_NATIVE            ','-separated list of C++ core debug\r\n                             categories that should print debug\r\n                             output\r\nNODE_DISABLE_COLORS          set to 1 to disable colors in the REPL\r\nNODE_EXTRA_CA_CERTS          path to additional CA certificates\r\n                             file\r\nNODE_ICU_DATA                data path for ICU (Intl object) data\r\nNODE_NO_WARNINGS             set to 1 to silence process warnings\r\nNODE_OPTIONS                 set CLI options in the environment\r\n                             via a space-separated list\r\nNODE_PATH                    ':'-separated list of directories\r\n                             prefixed to the module search path\r\nNODE_PENDING_DEPRECATION     set to 1 to emit pending deprecation\r\n                             warnings\r\nNODE_PRESERVE_SYMLINKS       set to 1 to preserve symbolic links\r\n                             when resolving and caching modules\r\nNODE_REDIRECT_WARNINGS       write warnings to path instead of\r\n                             stderr\r\nNODE_REPL_HISTORY            path to the persistent REPL history\r\n                             file\r\nOPENSSL_CONF                 load OpenSSL configuration from file\r\n\r\nDocumentation can be found at https://nodejs.org/\r\n```\r\n\r\n</details>\r\n<details><summary>`node --help` after:</summary>\r\n\r\n```\r\nUsage: node [options] [ -e script | script.js | - ] [arguments]\r\n       node inspect script.js [arguments]\r\n\r\nOptions:\r\n  -                           script read from stdin (default;\r\n                              interactive mode if a tty)\r\n  --                          indicate the end of node options\r\n  --abort_on_uncaught_exception\r\n                              aborting instead of exiting causes a\r\n                              core file to be generated for analysis\r\n  -c, --check                 syntax check script without executing\r\n  -e, --eval=...              evaluate script\r\n  --experimental-modules      experimental ES Module support and\r\n                              caching modules\r\n  --experimental-repl-await   experimental await keyword support in\r\n                              REPL\r\n  --experimental-vm-modules   experimental ES Module support in vm\r\n                              module\r\n  --experimental-worker       experimental threaded Worker support\r\n  -h, --help                  print node command line options\r\n                              (currently set)\r\n  --icu-data-dir=...          set ICU data load path to dir (overrides\r\n                              NODE_ICU_DATA)\r\n  --inspect[=[host:]port]     activate inspector on host:port\r\n                              (default: 127.0.0.1:9229)\r\n  --inspect-brk[=[host:]port] activate inspector on host:port and\r\n                              break at start of user script\r\n  --debug-port, --inspect-port=[host:]port\r\n                              set host:port for inspector\r\n  -i, --interactive           always enter the REPL even if stdin does\r\n                              not appear to be a terminal\r\n  --loader=...                (with --experimental-modules) use the\r\n                              specified file as a custom loader\r\n  --no-deprecation            silence deprecation warnings\r\n  --no-force-async-hooks-checks\r\n                              disable checks for async_hooks\r\n  --no-warnings               silence all process warnings\r\n  --openssl-config=...        load OpenSSL configuration from the\r\n                              specified file (overrides OPENSSL_CONF)\r\n  --pending-deprecation       emit pending deprecation warnings\r\n                              (currently set)\r\n  --preserve-symlinks         preserve symbolic links when resolving\r\n  --preserve-symlinks-main    preserve symbolic links when resolving\r\n                              the main module\r\n  -p, --print [...]           evaluate script and print result\r\n  --prof-process              process V8 profiler output generated\r\n                              using --prof\r\n  --redirect-warnings=...     write warnings to file instead of stderr\r\n  -r, --require=...           module to preload (option can be\r\n                              repeated)\r\n  --throw-deprecation         throw an exception on deprecations\r\n  --title=...                 the process title to use on startup\r\n  --tls-cipher-list=...       use an alternative default TLS cipher\r\n                              list\r\n  --trace-deprecation         show stack traces on deprecations\r\n  --trace-event-categories=...\r\n                              comma separated list of trace event\r\n                              categories to record\r\n  --trace-event-file-pattern=...\r\n                              Template string specifying the filepath\r\n                              for the trace-events data, it supports\r\n                              ${rotation} and ${pid} log-rotation id.\r\n                              %2$u is the pid.\r\n  --trace-sync-io             show stack trace when use of sync IO is\r\n                              detected after the first tick\r\n  --trace-warnings            show stack traces on process warnings\r\n                              (currently set)\r\n  --track-heap-objects        track heap object allocations for heap\r\n                              snapshots\r\n  --use-bundled-ca            use bundled CA store (default)\r\n  --use-openssl-ca            use OpenSSL's default CA store\r\n  --v8-options                print V8 command line options\r\n  --v8-pool-size=...          set V8's thread pool size\r\n  -v, --version               print Node.js version\r\n  --zero-fill-buffers         automatically zero-fill all newly\r\n                              allocated Buffer and SlowBuffer\r\n                              instances\r\n  \r\nEnvironment variables:\r\nNODE_DEBUG                  ','-separated list of core modules that\r\n                            should print debug information\r\nNODE_DEBUG_NATIVE           ','-separated list of C++ core debug\r\n                            categories that should print debug\r\n                            output\r\nNODE_DISABLE_COLORS         set to 1 to disable colors in the REPL\r\nNODE_EXTRA_CA_CERTS         path to additional CA certificates file\r\nNODE_NO_WARNINGS            set to 1 to silence process warnings\r\nNODE_OPTIONS                set CLI options in the environment via a\r\n                            space-separated list\r\nNODE_PATH                   ':'-separated list of directories\r\n                            prefixed to the module search path\r\nNODE_PENDING_DEPRECATION    set to 1 to emit pending deprecation\r\n                            warnings\r\nNODE_PRESERVE_SYMLINKS      set to 1 to preserve symbolic links when\r\n                            resolving and caching modules\r\nNODE_REDIRECT_WARNINGS      write warnings to path instead of stderr\r\nNODE_REPL_HISTORY           path to the persistent REPL history file\r\nOPENSSL_CONF                load OpenSSL configuration from file\r\n\r\nDocumentation can be found at https://nodejs.org/\r\n```\r\n</details>\r\n\r\n\r\n##### Checklist\r\n<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->\r\n\r\n- [x] `make -j4 test` (UNIX), or `vcbuild test` (Windows) passes\r\n- [x] tests and/or benchmarks are included\r\n- [x] commit message follows [commit guidelines](https://github.com/nodejs/node/blob/master/doc/guides/contributing/pull-requests.md#commit-message-guidelines)\r\n"},"comment":{"url":"https://api.github.com/repos/nodejs/node/issues/comments/416402766","html_url":"https://github.com/nodejs/node/pull/22490#issuecomment-416402766","issue_url":"https://api.github.com/repos/nodejs/node/issues/22490","id":416402766,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNjQwMjc2Ng==","user":{"login":"addaleax","id":899444,"node_id":"MDQ6VXNlcjg5OTQ0NA==","avatar_url":"https://avatars2.githubusercontent.com/u/899444?v=4","gravatar_id":"","url":"https://api.github.com/users/addaleax","html_url":"https://github.com/addaleax","followers_url":"https://api.github.com/users/addaleax/followers","following_url":"https://api.github.com/users/addaleax/following{/other_user}","gists_url":"https://api.github.com/users/addaleax/gists{/gist_id}","starred_url":"https://api.github.com/users/addaleax/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/addaleax/subscriptions","organizations_url":"https://api.github.com/users/addaleax/orgs","repos_url":"https://api.github.com/users/addaleax/repos","events_url":"https://api.github.com/users/addaleax/events{/privacy}","received_events_url":"https://api.github.com/users/addaleax/received_events","type":"User","site_admin":false},"created_at":"2018-08-27T23:37:10Z","updated_at":"2018-08-27T23:37:10Z","author_association":"MEMBER","body":"And again: https://ci.nodejs.org/job/node-test-pull-request/16814/"}}
{"actor":{"display_login":"addaleax"}}