@samitouri / QOS-React / commits / c88d356603

[healthcheck] Add status message

Show compiling status message and not just block UI. ghstack-source-id: 67761c5d32216e105c4aa6404dfa07d76ae22583 Pull Request resolved: https://github.com/facebook/react-forget/pull/2921

Sathya Gunsasekaran committed May 1, 2024 at 13:35 UTC c88d3566033beb1edea13d93d8293874e32e572d
3 files changed +125 -5
compiler/packages/healthcheck/package.json
+1
@@ -8,6 +8,7 @@
8 },
9 "dependencies": {
10 "fast-glob": "^3.3.2",
11 + "ora": "5.4.1",
12 "yargs": "^17.7.2"
13 },
14 "devDependencies": {},
compiler/packages/healthcheck/src/index.ts
+4
@@ -14,6 +14,7 @@ import {
14 import { LoggerEvent } from "babel-plugin-react-forget/src/Entrypoint";
15 import { glob } from "fast-glob";
16 import * as fs from "fs/promises";
17 +import ora from "ora";
18 import yargs from "yargs/yargs";
19
20 const SUCCESS: Array<LoggerEvent> = [];
@@ -86,6 +87,7 @@ async function main() {
87 })
88 .parseSync();
89
90 + const spinner = ora("Compiling").start();
91 let src = argv.src;
92
93 // no file extension specified
@@ -109,8 +111,10 @@ async function main() {
111
112 for (const path of await glob(src, globOptions)) {
113 const source = await fs.readFile(path, "utf-8");
114 + spinner.text = `Compiling ${path}`;
115 compile(source, path);
116 }
117 + spinner.stop();
118
119 console.log(`Successful compilation: ${SUCCESS.length}`);
120 console.log(`Failed compilation: ${ACTIONABLE_FAILURES.length}`);
compiler/yarn.lock
+120 -5
@@ -3799,6 +3799,11 @@ balanced-match@^1.0.0:
3799 resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
3800 integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
3801
3802 +base64-js@^1.3.1:
3803 + version "1.5.1"
3804 + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
3805 + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
3806 +
3807 big-integer@^1.6.44:
3808 version "1.6.51"
3809 resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686"
@@ -3814,6 +3819,15 @@ binary-extensions@^2.0.0:
3819 resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
3820 integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
3821
3822 +bl@^4.1.0:
3823 + version "4.1.0"
3824 + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a"
3825 + integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==
3826 + dependencies:
3827 + buffer "^5.5.0"
3828 + inherits "^2.0.4"
3829 + readable-stream "^3.4.0"
3830 +
3831 bplist-parser@^0.2.0:
3832 version "0.2.0"
3833 resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.2.0.tgz#43a9d183e5bf9d545200ceac3e712f79ebbe8d0e"
@@ -3887,6 +3901,14 @@ buffer-from@^1.0.0:
3901 resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
3902 integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
3903
3904 +buffer@^5.5.0:
3905 + version "5.7.1"
3906 + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
3907 + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==
3908 + dependencies:
3909 + base64-js "^1.3.1"
3910 + ieee754 "^1.1.13"
3911 +
3912 builtin-modules@^3.3.0:
3913 version "3.3.0"
3914 resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6"
@@ -4007,6 +4029,18 @@ cli-color@~0.1.6:
4029 dependencies:
4030 es5-ext "0.8.x"
4031
4032 +cli-cursor@^3.1.0:
4033 + version "3.1.0"
4034 + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307"
4035 + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==
4036 + dependencies:
4037 + restore-cursor "^3.1.0"
4038 +
4039 +cli-spinners@^2.5.0:
4040 + version "2.9.2"
4041 + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.2.tgz#1773a8f4b9c4d6ac31563df53b3fc1d79462fe41"
4042 + integrity sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==
4043 +
4044 client-only@0.0.1:
4045 version "0.0.1"
4046 resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1"
@@ -4048,6 +4082,11 @@ clone-deep@^4.0.1:
4082 kind-of "^6.0.2"
4083 shallow-clone "^3.0.0"
4084
4085 +clone@^1.0.2:
4086 + version "1.0.4"
4087 + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e"
4088 + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==
4089 +
4090 clsx@^1.1.0, clsx@^1.2.1:
4091 version "1.2.1"
4092 resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12"
@@ -4312,6 +4351,13 @@ default-browser@^4.0.0:
4351 execa "^7.1.1"
4352 titleize "^3.0.0"
4353
4354 +defaults@^1.0.3:
4355 + version "1.0.4"
4356 + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a"
4357 + integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==
4358 + dependencies:
4359 + clone "^1.0.2"
4360 +
4361 define-data-property@^1.0.1, define-data-property@^1.1.1:
4362 version "1.1.1"
4363 resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.1.tgz#c35f7cd0ab09883480d12ac5cb213715587800b3"
@@ -5726,6 +5772,11 @@ iconv-lite@0.6.3:
5772 dependencies:
5773 safer-buffer ">= 2.1.2 < 3.0.0"
5774
5775 +ieee754@^1.1.13:
5776 + version "1.2.1"
5777 + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
5778 + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
5779 +
5780 ignore@^5.2.0:
5781 version "5.2.0"
5782 resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"
@@ -5765,7 +5816,7 @@ inflight@^1.0.4:
5816 once "^1.3.0"
5817 wrappy "1"
5818
5768 -inherits@2:
5819 +inherits@2, inherits@^2.0.3, inherits@^2.0.4:
5820 version "2.0.4"
5821 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
5822 integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
@@ -5930,6 +5981,11 @@ is-inside-container@^1.0.0:
5981 dependencies:
5982 is-docker "^3.0.0"
5983
5984 +is-interactive@^1.0.0:
5985 + version "1.0.0"
5986 + resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e"
5987 + integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==
5988 +
5989 is-map@^2.0.1, is-map@^2.0.2:
5990 version "2.0.2"
5991 resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127"
@@ -6043,6 +6099,11 @@ is-typed-array@^1.1.12:
6099 dependencies:
6100 which-typed-array "^1.1.11"
6101
6102 +is-unicode-supported@^0.1.0:
6103 + version "0.1.0"
6104 + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7"
6105 + integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==
6106 +
6107 is-weakmap@^2.0.1:
6108 version "2.0.1"
6109 resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2"
@@ -7511,6 +7572,14 @@ lodash@^4.17.10, lodash@^4.17.21:
7572 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
7573 integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
7574
7575 +log-symbols@^4.1.0:
7576 + version "4.1.0"
7577 + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503"
7578 + integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==
7579 + dependencies:
7580 + chalk "^4.1.0"
7581 + is-unicode-supported "^0.1.0"
7582 +
7583 loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0:
7584 version "1.4.0"
7585 resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
@@ -7920,7 +7989,7 @@ once@^1.3.0:
7989 dependencies:
7990 wrappy "1"
7991
7923 -onetime@^5.1.2:
7992 +onetime@^5.1.0, onetime@^5.1.2:
7993 version "5.1.2"
7994 resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
7995 integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
@@ -7980,6 +8049,21 @@ optionator@^0.9.3:
8049 prelude-ls "^1.2.1"
8050 type-check "^0.4.0"
8051
8052 +ora@5.4.1:
8053 + version "5.4.1"
8054 + resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18"
8055 + integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==
8056 + dependencies:
8057 + bl "^4.1.0"
8058 + chalk "^4.1.0"
8059 + cli-cursor "^3.1.0"
8060 + cli-spinners "^2.5.0"
8061 + is-interactive "^1.0.0"
8062 + is-unicode-supported "^0.1.0"
8063 + log-symbols "^4.1.0"
8064 + strip-ansi "^6.0.0"
8065 + wcwidth "^1.0.1"
8066 +
8067 p-limit@^2.0.0, p-limit@^2.2.0:
8068 version "2.3.0"
8069 resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
@@ -8387,6 +8471,15 @@ read-cache@^1.0.0:
8471 dependencies:
8472 pify "^2.3.0"
8473
8474 +readable-stream@^3.4.0:
8475 + version "3.6.2"
8476 + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
8477 + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
8478 + dependencies:
8479 + inherits "^2.0.3"
8480 + string_decoder "^1.1.1"
8481 + util-deprecate "^1.0.1"
8482 +
8483 readdirp@~3.6.0:
8484 version "3.6.0"
8485 resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
@@ -8565,6 +8658,14 @@ resolve@^2.0.0-next.4:
8658 path-parse "^1.0.7"
8659 supports-preserve-symlinks-flag "^1.0.0"
8660
8661 +restore-cursor@^3.1.0:
8662 + version "3.1.0"
8663 + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
8664 + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==
8665 + dependencies:
8666 + onetime "^5.1.0"
8667 + signal-exit "^3.0.2"
8668 +
8669 reusify@^1.0.4:
8670 version "1.0.4"
8671 resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
@@ -8657,7 +8758,7 @@ safe-array-concat@^1.0.1:
8758 has-symbols "^1.0.3"
8759 isarray "^2.0.5"
8760
8660 -safe-buffer@^5.1.0:
8761 +safe-buffer@^5.1.0, safe-buffer@~5.2.0:
8762 version "5.2.1"
8763 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
8764 integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
@@ -8795,7 +8896,7 @@ side-channel@^1.0.4:
8896 get-intrinsic "^1.0.2"
8897 object-inspect "^1.9.0"
8898
8798 -signal-exit@^3.0.3, signal-exit@^3.0.7:
8899 +signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7:
8900 version "3.0.7"
8901 resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
8902 integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
@@ -8989,6 +9090,13 @@ string.prototype.trimstart@^1.0.7:
9090 define-properties "^1.2.0"
9091 es-abstract "^1.22.1"
9092
9093 +string_decoder@^1.1.1:
9094 + version "1.3.0"
9095 + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
9096 + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
9097 + dependencies:
9098 + safe-buffer "~5.2.0"
9099 +
9100 "strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1:
9101 version "6.0.1"
9102 resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
@@ -9460,7 +9568,7 @@ url-parse@^1.5.3:
9568 querystringify "^2.1.1"
9569 requires-port "^1.0.0"
9570
9463 -util-deprecate@^1.0.2:
9571 +util-deprecate@^1.0.1, util-deprecate@^1.0.2:
9572 version "1.0.2"
9573 resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
9574 integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
@@ -9515,6 +9623,13 @@ watchpack@2.4.0:
9623 glob-to-regexp "^0.4.1"
9624 graceful-fs "^4.1.2"
9625
9626 +wcwidth@^1.0.1:
9627 + version "1.0.1"
9628 + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8"
9629 + integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==
9630 + dependencies:
9631 + defaults "^1.0.3"
9632 +
9633 webidl-conversions@^7.0.0:
9634 version "7.0.0"
9635 resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a"