@rushstack/rush-http-build-cache-plugin 5.97.1 → 5.99.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/.rush/temp/operation/_phase_build/state.json +1 -1
  2. package/.rush/temp/operation/_phase_test/all.log +25 -29
  3. package/.rush/temp/operation/_phase_test/state.json +1 -1
  4. package/.rush/temp/package-deps__phase_build.json +6 -6
  5. package/.rush/temp/package-deps__phase_test.json +6 -6
  6. package/.rush/temp/{rushstack+rush-http-build-cache-plugin-_phase_build-646439b80a2010050f5b4b8a916e50afae04c3ab.log → rushstack+rush-http-build-cache-plugin-_phase_build-55b99e47821b7a1898b0ccaae08ac0b587ad1700.log} +2 -2
  7. package/.rush/temp/shrinkwrap-deps.json +5 -6
  8. package/lib/HttpBuildCacheProvider.d.ts +2 -0
  9. package/lib/HttpBuildCacheProvider.d.ts.map +1 -1
  10. package/lib/HttpBuildCacheProvider.js +30 -11
  11. package/lib/HttpBuildCacheProvider.js.map +1 -1
  12. package/lib/RushHttpBuildCachePlugin.d.ts.map +1 -1
  13. package/lib/RushHttpBuildCachePlugin.js +28 -4
  14. package/lib/RushHttpBuildCachePlugin.js.map +1 -1
  15. package/lib/test/HttpBuildCacheProvider.test.d.ts.map +1 -0
  16. package/lib/{HttpBuildCacheProvider.test.js → test/HttpBuildCacheProvider.test.js} +46 -3
  17. package/lib/test/HttpBuildCacheProvider.test.js.map +1 -0
  18. package/package.json +10 -10
  19. package/rush-logs/rush-http-build-cache-plugin._phase_build.log +0 -4
  20. package/rush-logs/rush-http-build-cache-plugin._phase_test.log +25 -29
  21. package/src/HttpBuildCacheProvider.ts +36 -7
  22. package/src/RushHttpBuildCachePlugin.ts +23 -28
  23. package/src/test/HttpBuildCacheProvider.test.ts +115 -0
  24. package/temp/build.typescript/ts_l9Fw4VUO.json +1 -0
  25. package/temp/coverage/clover.xml +456 -78
  26. package/temp/coverage/coverage-final.json +3 -3
  27. package/temp/coverage/lcov-report/HttpBuildCacheProvider.ts.html +554 -467
  28. package/temp/coverage/lcov-report/RushHttpBuildCachePlugin.ts.html +168 -183
  29. package/temp/coverage/lcov-report/index.html +32 -32
  30. package/temp/coverage/lcov-report/index.ts.html +12 -12
  31. package/temp/coverage/lcov.info +535 -193
  32. package/temp/test.jest/haste-map-bae913f9b9aa720eb4deeae0a60a4b27-22ae7f4ce9de4306889d8c05e5cc39b9-e5d2c7a7e073ec3e531e055f2d784a12 +0 -0
  33. package/{.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2f/package_2f923ac6ad9bbd4966f8472750ef7770 → temp/test.jest/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/de/package_de7b83da8b7688c9d812a8838d7203b5} +5 -5
  34. package/{.heft/build-cache/jest-cache → temp/test.jest}/perf-cache-bae913f9b9aa720eb4deeae0a60a4b27-da39a3ee5e6b4b0d3255bfef95601890 +1 -1
  35. package/.heft/build-cache/heft-jest-data.json +0 -7
  36. package/.heft/build-cache/jest-cache/haste-map-bae913f9b9aa720eb4deeae0a60a4b27-22ae7f4ce9de4306889d8c05e5cc39b9-f6b1af01a3130057bdfe3d86807211f9 +0 -0
  37. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/00/CommandLineParser_0096ef3e73a0458d2c4e987ce6950ec8 +0 -217
  38. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/00/jsonfile_001c9f2c4a38c3ac08d195a597f3f40c +0 -13
  39. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/01/action_container_0168facd9c19526b921c2a176ff5e3dd +0 -483
  40. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/02/getPackageDeps_02bf27e4c49bd0d60a0d2a807f58ad64 +0 -256
  41. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/03/CommandLineChoiceListParameter_039f877c10997d8689457a3cc6126b9f +0 -85
  42. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/04/Hook_044e3585bd11395575af5f860b3449ca +0 -176
  43. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/05/StdioWritable_0514ac0d19d8447acf4fc997d4eb75c2 +0 -34
  44. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/06/ConfigurationFile_06d7f35feb0bd944d9b9a2a4d9e112c8 +0 -532
  45. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/07/FileError_07e325c2d038b4cc56e1dfe3830d6c3e +0 -114
  46. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/07/ltr_0715ee1731dbedafe7e26cfb1315c8db +0 -5
  47. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/08/homedir_086be402c636b5ef75b92acd986cbbcf +0 -25
  48. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/08/outputjsonsync_08a1ad9a9786d59f137a5ea6e1547f10 +0 -19
  49. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/09/Path_0996303466a12a84e221f1ca7e815489 +0 -215
  50. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/0b/constant_0bebc93b25bd88f8e9694b48db821b00 +0 -48
  51. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/0b/index_0b2321eff214a8a8c920ed4d283d606f +0 -26
  52. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/0c/gracefulfs_0c1a237496d918be613bce417baa89f2 +0 -449
  53. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/0d/indexumd_0dd8b4985260e5d98d86cd77c5feca27 +0 -1073
  54. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/0e/index_0e154b4f09da1ddc6c89567be99e1184 +0 -12
  55. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/0f/StringBuilder_0f79d7bd9ef44b22de47594852bebf54 +0 -42
  56. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/0f/index_0f086ad263aa8ec1c88455f1c863d9c3 +0 -13
  57. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/10/CommandLineChoiceParameter_10f873b895c0c8bbfff1b3ca3be44551 +0 -96
  58. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/11/PackageName_11306194785ccb2ba264a8e77c4109de +0 -214
  59. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/12/Import_12af6d2ca109ffba883fc5079062e0e8 +0 -391
  60. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/12/runTest_12014d70f30cb7039d4e026bacc47665 +0 -463
  61. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/14/index_14189dd0bf5b37d264e85be625b19df0 +0 -118
  62. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/15/lt_15449967a28afb6ec5dbb008da254f3e +0 -4
  63. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/19/copysync_196045f8ccef3c2f2f82113b3d6322ea +0 -194
  64. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/19/intersects_1920dd31d7a2b696c913c6105b7aea5a +0 -8
  65. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/1a/index_1a09c4b40e031dcc3464bf0de8642956 +0 -190
  66. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/1a/tocomparators_1a8990095d92cfa18e5a3c7547951f9b +0 -9
  67. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/1b/index_1b7c45ee5c2dbabcedc41ab6b1e02377 +0 -220
  68. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/1c/CollatedWriter_1c603fd6e169333da45c34e3c6aba4f3 +0 -52
  69. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/1d/ScopedCommandLineAction_1d44a994459da880ecd53a33e4e612aa +0 -179
  70. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/1d/index_1d071d1d9c16561dc536eb16f991e9d1 +0 -83
  71. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/1d/index_1dcfbe32546c5f673f2b614530fce0ef +0 -78
  72. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/1f/safe_1fecf14f4050ef9c0f88c3c1e2dd85a8 +0 -11
  73. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/20/CollatedTerminal_204a6de6c99e4c915d6221e230a0fa4e +0 -27
  74. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/21/index_210551fcae12c5b3d27a6b0775228781 +0 -215
  75. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/22/coerce_224b5791f8f7b7cee6fac3237e26755b +0 -53
  76. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/22/core_2267298cab4959e0bc6a302739275617 +0 -53
  77. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/22/index_226f648122f5302b23da56fe470c16ac +0 -34
  78. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/22/supportscolors_2218a76b76fd61532d614e1b0bb928fd +0 -152
  79. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/22/urlstatemachine_2208634a5a2ffd9728d9dafaf9451e2d +0 -1298
  80. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/23/AlreadyReportedError_23dbb838b51752afa3d8495f3062de58 +0 -55
  81. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/23/minsatisfying_231e7868208d4f1c9e82cecdce4c81ef +0 -25
  82. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/24/error_245d118d6aaef020e6c9b74d975e24d7 +0 -51
  83. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/26/Enum_26f7c648b8042f36def6f28b90b3995f +0 -137
  84. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/26/index_269839caa72382caf6110fdff62b8b0f +0 -89
  85. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/26/symlinkpaths_269231f2a465387e8122e02bc23a585b +0 -100
  86. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/27/AsyncParallelBailHook_277e441e1512e36622369a45ebd3f58b +0 -86
  87. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/27/index_272b3290b49eb1250dd5383c4066d1d6 +0 -44
  88. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/27/index_27f9c09249b0c27a2bfad978196e060d +0 -194
  89. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/28/subparsers_2863fbc004ea15cbe9570a59d7688f82 +0 -150
  90. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2a/maxsatisfying_2a5f074207b66570ea099648b0cc07a2 +0 -26
  91. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2a/win32_2aa3d38608b9c19fb22bc6e49e6c17d8 +0 -26
  92. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2c/AsyncSeriesHook_2cb49a136f5dc18080ce2e75c6c685e7 +0 -38
  93. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2d/normalizeoptions_2ddefac3c548a6a9d8c0eb3182ae2480 +0 -11
  94. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2e/ConsoleTerminalProvider_2e66ae3538bbf6aaa5dcd74944fc205c +0 -72
  95. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2f/DynamicCommandLineParser_2f63330ac83fd134e7e7164fb7730fee +0 -14
  96. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2f/comparebuild_2fa43366ea840981f043518d2912193b +0 -8
  97. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2f/yallist_2f0386bace7319ff5589bde4ad419b70 +0 -427
  98. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/31/TypeUuid_31520f7b55e4db7a1c37ae8a15fa9da8 +0 -88
  99. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/31/help_314cbae995ff508d97fba2240a5c2289 +0 -48
  100. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/33/URL_33382dd2bd04cfe3a63ad984d9d1495c +0 -197
  101. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/34/SyncHook_3450bad6af5c4ae6f675e42c4f3c8961 +0 -47
  102. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/35/CommandLineHelper_35432de5b9e0472d8b4b0363144700a3 +0 -23
  103. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/35/index_351599b17438e340506c874eb4c4d916 +0 -70
  104. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/36/index_36c8f6d5633e9389ceab255fbf71ae18 +0 -6
  105. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/37/RemoveColorsTextRewriter_3774df1d77755492e62324174f09d9e9 +0 -96
  106. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/37/Sort_37dfd29dc09c27aacc04846107b87488 +0 -213
  107. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/37/index_37474d53f1aec6000961e1f22d1c83ad +0 -24
  108. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/37/semver_37eefd4df46c11fd6ff7bbfa601cb07a +0 -288
  109. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/38/index_3845abe725b203bc5c4e6a1238cb36c9 +0 -20
  110. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/39/MultiHook_39ae7d5e7f9fb6b6c2daef78c7830798 +0 -55
  111. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/39/index_39a7e36288e762fe97d6899aff7bb080 +0 -7
  112. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/39/index_39f2106e77a53f183393c1eb12dc0abd +0 -6
  113. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/3c/iscore_3cd337d75d2dc1446345a2444372d63e +0 -6
  114. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/3d/index_3df2d3d9ea8e302f11de5ec1fc1aeec9 +0 -15
  115. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/3e/JsonSchema_3e5211cb39cc2174977ac14cd08caab3 +0 -219
  116. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/3e/StringBufferTerminalProvider_3eb3f66416fcf71c742d0d05f1c8be24 +0 -109
  117. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/3e/re_3e3693784461f0e33578b04c0eab88d4 +0 -183
  118. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/3f/CommandLineParameterProvider_3fb6e4bc8707b78de508dcdc2aad0dab +0 -490
  119. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/40/LockFile_400fe1e4cf3ae073f4cddf66c85b768c +0 -425
  120. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/43/CommandLineFlagParameter_4381def97a72b0f60c84f30b1acf59e9 +0 -73
  121. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/45/index_457f942d32e2a1d8bf2bd93782c18416 +0 -95
  122. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/49/ITerminalChunk_49865ff4a7b2620ddc8eb70b153d46db +0 -6
  123. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/49/minor_499fd4858add324322b2d7aac97495be +0 -4
  124. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/49/valid_490a9a03ccbefe3df7830c88aa76fa9e +0 -7
  125. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/4a/caller_4a52763deee17c1eabd62004bb6722b3 +0 -9
  126. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/4b/HookMap_4ba23f7fef2983971a4eb0ef8e3e933a +0 -62
  127. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/4c/valid_4c0a764095911643682868db2648d277 +0 -12
  128. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/51/publicapi_5191d008e2683b44e2ec1184bbe13750 +0 -12
  129. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/52/cmp_5283aa608b609dad4611e3faace2a4cf +0 -53
  130. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/52/index_52fb4a8a0bc7c5a7f9414063c7efee91 +0 -41
  131. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/53/AsyncSeriesLoopHook_53405b02ad03aabaa1d426caeffbcf46 +0 -38
  132. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/53/TextRewriter_53f9b6ac0214eb849c77a20f19ebf99f +0 -40
  133. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/53/index_53d9d5a344c3984994c801733764f503 +0 -85
  134. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/53/utils_53dfb762f99e59335c970a62a9e510a2 +0 -58
  135. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/56/identifiers_5666c8fdebf8bea43ee0cb13c2c4fb99 +0 -24
  136. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/57/Terminal_578f895bcff5950330288b7fbb82e347 +0 -298
  137. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/57/mkdirssync_57a474552ec95c9b8e2261bbaaf33e4c +0 -55
  138. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/58/link_588215e47725c14ad798d475bb0fea94 +0 -62
  139. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/5c/npa_5c7f076d9565dfd59727d5116cf9ccd7 +0 -302
  140. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/5d/CommandLineIntegerParameter_5d2f433e98ce71e716006ab8ac983248 +0 -87
  141. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/5d/InternalError_5dd9d2af36ccc351a963a526c009c8a5 +0 -56
  142. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/5d/Text_5da85b5db9a2f06bbe29cdcd91e6fbca +0 -187
  143. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/5d/mkdirs_5d126b371fc3eb56a986e5354ede8f8f +0 -64
  144. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/5d/rsort_5d475d23748e66c70f21cab766127fe8 +0 -4
  145. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/5e/index_5e83cfb096cb71c3c3b5071c51c76352 +0 -29
  146. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/5f/major_5f17be93c674dbdf30dc56dca1ceeb61 +0 -4
  147. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/60/iterator_605cedebcb174a610571f444f3e35cb9 +0 -9
  148. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/61/index_61b111e1602c823e36866ed58bfa5c02 +0 -225
  149. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/63/HookCodeFactory_635a639b45eb6a18260466654465472e +0 -469
  150. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/66/index_66cb1263a037358a57670e4b63da0f5f +0 -4
  151. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/68/rushlib_68c59fa059ba441c9c6883bcfed4a8d2 +0 -723
  152. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/68/subset_6895b03eef5d710fb02eb441db91f05f +0 -245
  153. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/6c/legacystreams_6cc4e01cffc5492fbda70264b3e436f4 +0 -119
  154. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/6f/index_6f9d4619de3942194b764b51b436253a +0 -1698
  155. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/71/CommandLineStringParameter_7110656822e0c0e75681161f079c932f +0 -86
  156. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/73/DynamicCommandLineAction_731ac0ca1ec60f3665f5fb69da39d5c1 +0 -18
  157. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/73/unicode_7398d3d7f883f4ab7cf11c5db8d4d728 +0 -71
  158. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/76/CommandLineStringListParameter_7673af10944fc3c86e1d8b67dfbfb9a3 +0 -74
  159. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/76/index_7612803919a5c9008d58ae6ccfd3ff5a +0 -33
  160. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/76/jestglobalsetup_7682e971203cc7639e25d90ff1117ed6 +0 -14
  161. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/77/satisfies_77c1039e1bfe840713edc2ae742f25c2 +0 -11
  162. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/78/CommandLineRemainder_78035c057f5ba7a67eebb8bf5eff0948 +0 -49
  163. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/78/StdioSummarizer_78cb92918c2050d0ed4a91e761363d03 +0 -99
  164. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/79/SyncLoopHook_7926719c84b5956272d204a1a14f5a05 +0 -47
  165. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/79/index_791cd131fb0e2b5672d97cfe1f3b7900 +0 -49
  166. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/79/index_7996c009dbfc6e03f020903b4e0ea736 +0 -105
  167. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/79/random_790a273dde9b34fd1f868a19c1a26f9e +0 -13
  168. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/7b/zalgo_7b856872eb76fb730e32acbf1500bc70 +0 -111
  169. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/7c/rcompare_7c2ed9bf4fade2c7f3d1f5d241964080 +0 -4
  170. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/7d/AsyncSeriesBailHook_7dcd8ad992fcc7c9e285a4be8c1f4638 +0 -43
  171. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/7d/FileSystem_7dfdf678d0cba7fd01a405bfc86432f7 +0 -1100
  172. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/80/compareloose_80136cfdc57ee904f7908e1485f4edb0 +0 -4
  173. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/80/index_8021860f6bdaf0355b9b55768096ad1f +0 -17
  174. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/81/index_81958cb0f4d5af47c9f4ff027730a354 +0 -335
  175. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/86/RigConfig_8614551e6fbc38bf3f0d0dd1d1150e2e +0 -316
  176. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/87/clone_8741d656a737c57873a2cb137fc3c2a2 +0 -24
  177. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/87/version_870188990057b0e5b35d6d9bd63f0eb6 +0 -48
  178. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/89/true_89b39ea93e164e1bb913772edd7a31cb +0 -27
  179. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/8a/ProtectableMap_8a9fe29cb67257b4a7d9e2a2bdff47de +0 -91
  180. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/8a/SyncWaterfallHook_8a739b54c97de3d2f978d3f281705b85 +0 -58
  181. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/8c/FileWriter_8c34d45ee75dae06e4593e27ec9e6c99 +0 -64
  182. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/8c/colors_8c84db0002e69a4cfd1c0798f7f1c18a +0 -200
  183. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/8c/index_8ceede9e1085ff23f8671d696ecd7bdb +0 -46
  184. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/8e/append_8e1ed839104f64988fca6d92799f11c8 +0 -54
  185. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/91/EnvironmentMap_9164c9ef57fe102a2485664129f6d55c +0 -107
  186. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/93/trap_93535875cbcf5257946ec047bb05b68b +0 -47
  187. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/93/types_938cea5406dd0f56f3b17b463d571060 +0 -29
  188. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/94/clean_94837a6a564c76b60fbb8c8ab6c19dc1 +0 -7
  189. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/94/comparator_94f63ab47adc67ef3b7426d6b8c12210 +0 -137
  190. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/94/group_94a0b10687068ed655e30792779c33ed +0 -76
  191. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/95/utils_955a20e43e3ae489688d1c74a75d5a2b +0 -21
  192. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/96/AsyncSeriesWaterfallHook_9637cc190622117769cc984f4be38d67 +0 -48
  193. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/96/CallbackWritable_9611294010bb59334d77e19aca8ffe90 +0 -32
  194. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/96/copy_96b340b66c576bda43a9adc5ddd9d5e8 +0 -247
  195. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/97/rainbow_976c14df0174a4c5f52ee98e5c558120 +0 -15
  196. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/99/ITerminalProvider_9968ff70dd6950d66e51c15e5bd0e22b +0 -33
  197. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/99/LegacyAdapters_994d50a9d99bca598923c5d0a78658a9 +0 -75
  198. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/99/argument_parser_99c82f41bebafcf12dc985c074661de3 +0 -1162
  199. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/99/constants_993db3d18bc6186d69bd3869e6686734 +0 -18
  200. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9a/index_9afc29e15688c6855cbfd3494af0f8e6 +0 -45
  201. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9b/const_9b7421e189c528d99006e6fe10ec68d0 +0 -22
  202. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9c/argparse_9c97ed9dfc279c7cfbd90530b5e22ca0 +0 -15
  203. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9d/commons_9d513d1d600f9112f73547da918dcbb7 +0 -23450
  204. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9e/Colors_9ecc4a155788090d261edabf2719d1f8 +0 -185
  205. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9e/MapExtensions_9e5b8afe723b86b4ee5b79a35287a9e0 +0 -41
  206. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9e/symlinktype_9e28e4f4457ee603d982b6fb686f0ed3 +0 -32
  207. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9f/EnvironmentVariableParser_9f0570850bed25007c419377e7c7340e +0 -52
  208. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a1/exclusive_a143a742fec2463ca3a09bb335d9db42 +0 -55
  209. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a1/implementation_a1723a009de8984b2f21159b10fc6520 +0 -53
  210. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a1/outside_a1760cf8e60702091d1e4d477923e3a6 +0 -81
  211. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a2/Executable_a27667ef327d1d227f03d7a0954c45a8 +0 -429
  212. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a4/file_a48a764ff3863fe34bfc4daa1ddaa746 +0 -50
  213. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a4/sync_a4bf19b74e558d2357595e14f82e75a0 +0 -209
  214. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a5/SyncBailHook_a52e9aaf0f808558574466e14a2f4c20 +0 -52
  215. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a6/hasflag_a64b2cc5845c94a8a4ff212a6480c528 +0 -36
  216. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a7/MockWritable_a745bd72731e0b51f6097d118713aa9d +0 -33
  217. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a7/TerminalTransform_a791046363f27a01a21b28a5fc18e159 +0 -58
  218. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a7/gtr_a7c6cf87054408dfaa332053e93e500f +0 -5
  219. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a7/simplify_a7134847013b1ea2f9417ee16c03824b +0 -48
  220. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a8/CommandLineAction_a8253bed5d1978bb6a92066326e38357 +0 -77
  221. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ac/NormalizeNewlinesTextRewriter_ac3af2a268ce9d6922f1294a58da6c4a +0 -71
  222. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b2/extendStringPrototype_b2f9a6c1379034ad868c5f667877fadc +0 -107
  223. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b4/Async_b43c9d64ab6a035dbce65b9f1a28e166 +0 -218
  224. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b4/namespace_b4914dcf7fc2fb8f7f972c13b48f6645 +0 -77
  225. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b5/constant_b5b769be9acb440042a7957665debf5a +0 -44
  226. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b6/JsonFile_b6b4a5937dbb9325053b19bc4e2b0450 +0 -426
  227. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b6/index_b6ba4dd47ab8e3f3e79ca88ec7825b15 +0 -341
  228. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b6/sprintf_b684d33114f728a6c356eb3bbb9156d5 +0 -209
  229. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b7/URLimpl_b7e473a6d12ed1315b560494844887bd +0 -201
  230. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b8/patch_b81e5f0e2e6da3056822bf2f4ed9e7e7 +0 -4
  231. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/b9/ProtectableMapView_b9b1fd8ad3e74d9d06a42d6e7db85a90 +0 -57
  232. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/bc/AnsiEscape_bc9207c145be8aaf6afacb84732c22e3 +0 -134
  233. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/bc/runner_bc68aa9a21b7738e0d6c25423b185c0f +0 -11
  234. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/bc/symlink_bc0175250b3ab636a40c845a9eddb39d +0 -64
  235. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/bd/CommandLineParserExitError_bd2152fe7b2d6044694614b16bd42828 +0 -58
  236. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/be/index_be50ea9cf8c03c5389c9952e3199b3f0 +0 -14
  237. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/be/zebra_bee85ff6bfd6c73305c83bae9403032a +0 -6
  238. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/bf/index_bff0217ff50de0880fe9c3dd5a042b61 +0 -26
  239. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/c2/inc_c29ab8939670a598aaecd384c9d5ac0b +0 -19
  240. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/c3/PrintUtilities_c35051579d48861512e413c8a14412a7 +0 -85
  241. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/c4/index_c41f3b8b1d980e4a50a1f567ef3dfa55 +0 -7
  242. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/c8/index_c849c0732b3c043d26dd7f83e42b0e82 +0 -19
  243. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/c8/range_c82cd0a8e5f3ab26a390fc043d2fd6c1 +0 -523
  244. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/cb/index_cb910c0c44d500b1de395d308269b53c +0 -77
  245. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ce/PosixModeBits_ce06fd83b104c77fb11b25bbcb96cda0 +0 -84
  246. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ce/index_ce3464019fb882539ee9a6f3e36e615a +0 -88
  247. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ce/index_ce3464019fb882539ee9a6f3e36e615a.map +0 -1
  248. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ce/parseoptions_ce35dd2d295c4a7222a6222851e75566 +0 -12
  249. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ce/store_ce7210aaefb043cec971342bfc0cfdd0 +0 -51
  250. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d0/polyfills_d0ad94e2eb550e44630192458362dcb6 +0 -356
  251. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d1/AsyncParallelHook_d18cda50e690d0dbbc99a98a59de44bc +0 -38
  252. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d1/TabCompletionAction_d14027e38fb75b6d8c775fdfb5eeba25 +0 -210
  253. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d1/getRepoState_d169674c56b8de074a7b0bbf4e00fd38 +0 -399
  254. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d2/StdioLineTransform_d2f22c5a6ce4b53f293a12c214c78e9b +0 -115
  255. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d2/buffer_d24e8fbd314b1514e892b0037226d476 +0 -13
  256. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d2/neq_d231567796306add9d6c56edc5883cf8 +0 -4
  257. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d3/StreamCollator_d38868f25e405ca18337dd6c6c43bb7b +0 -149
  258. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d3/ZSchemabrowsermin_d390d636d452d49462407943a5567f28 +0 -3
  259. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d3/gt_d3738f1d28722401000112f671c9314f +0 -4
  260. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d3/jestAdapter_d364e6fc05fddde0141d1adf30928ab8 +0 -118
  261. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d4/count_d4f18f1fd57b57bd934e1aec406fd42b +0 -41
  262. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d4/index_d4ec4e13526fb09fdb434929a9393040 +0 -6
  263. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d6/SplitterTransform_d62b2e66ec6880c4fa2e0799bbe80845 +0 -49
  264. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d7/index_d745e3edab39ecf8b68f842aeda1f436 +0 -10
  265. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d7/index_d79ccb4a675bce07283a087905f1f2c1 +0 -17
  266. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d7/nodemodulespaths_d744d0bfa889ed50d6db4f1079fe6320 +0 -43
  267. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d8/index_d823010cbbbbee48e7338f71e799e46b +0 -28
  268. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/d9/async_d9bc7cae91f957ecf449fffa5417f46b +0 -330
  269. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/dc/america_dc8321ced343699017efa55ce495cae9 +0 -13
  270. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/dc/outputjson_dc9bcfd272ece271d5ba1d88882aabd3 +0 -28
  271. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/dd/added_formatters_dddaa6b90e00843ac1493a1754ad8d35 +0 -88
  272. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/de/rimraf_de5bb2bceea542b599f79b32f00261b6 +0 -315
  273. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/df/debug_dfea87a09ee5f184765dd5d9c5f2907d +0 -10
  274. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e0/index_e0fb84b2cae789df813ab2fd47dab672 +0 -2
  275. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e1/action_e1aaa76264f13ca51849266a55660ed3 +0 -147
  276. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e3/DiscardStdoutTransform_e3ca398d1799ec51a0da3262837e8907 +0 -94
  277. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e3/PackageJsonLookup_e391de8a3bc029ef14212787d6efef5a +0 -328
  278. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e4/lte_e41aef5564169e2c9a26d71b55ac32cc +0 -4
  279. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e4/minversion_e4899cb3e82f3792e99b5d72895f46d7 +0 -62
  280. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e4/styles_e45b23904077bb02545672de0f04ca03 +0 -78
  281. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e5/Constants_e5916bdbd55b7c5751c61c22c2d8ac34 +0 -35
  282. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e5/HttpBuildCacheProvider_e53bd002cf44ae62693f20b8c4682941 +0 -4367
  283. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e5/HttpBuildCacheProvider_e53bd002cf44ae62693f20b8c4682941.map +0 -1
  284. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e5/formatter_e5470f40e67b2ff71fa7e81816df9709 +0 -796
  285. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e6/RushHttpBuildCachePlugin_e69b4b7cd4f95aa49455690c88f00247 +0 -362
  286. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e6/RushHttpBuildCachePlugin_e69b4b7cd4f95aa49455690c88f00247.map +0 -1
  287. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e6/parse_e600979fefd4a38a2ee298d2c0620ade +0 -761
  288. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e7/parse_e7d763c8be3f06ca68dae801f67f74f0 +0 -34
  289. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/e9/prerelease_e9273d37a4257d1ec90c3290bff01e38 +0 -7
  290. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ea/index_eac4fe91a50305745e819cc74aa7ecef +0 -135
  291. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/eb/SubprocessTerminator_ebf12d3f7deaa7ae1d03a93896142f71 +0 -183
  292. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ed/Constants_edd5c8fac126611f0aac2c21306624ce +0 -8
  293. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ee/CommandLineIntegerListParameter_ee2f3b50b51fed153ef44b020f23a401 +0 -83
  294. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/ee/TextRewriterTransform_eea93c8f7ebdbdc06d142929eabdbf1a +0 -94
  295. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f0/sort_f08e51bfef63ae58474299f9e7546731 +0 -4
  296. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f1/false_f1144cdddaa535b00035b0fbe77ead5f +0 -28
  297. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f2/utimes_f2a55040651c41f48b71717467a0818a +0 -80
  298. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f5/index_f581df3f55b3b9bf7204b9154e41c668 +0 -595
  299. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f7/HttpBuildCacheProvidertest_f710af633835df558cad54cb165c14fa +0 -73
  300. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f7/HttpBuildCacheProvidertest_f710af633835df558cad54cb165c14fa.map +0 -1
  301. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f8/BaseClasses_f86545813589e9e0e828bd06fd6f483b +0 -170
  302. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f8/Helpers_f82226d33bc83e35ab5d60a911a8baa0 +0 -72
  303. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f8/eq_f83b8f41e78fb9dcd93f57ba31fd2fb7 +0 -4
  304. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f9/TerminalWritable_f95360cc0a4458d3f87824bca7c56ec7 +0 -124
  305. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/f9/compare_f98f6def50e53b4e306f892abb74cc0e +0 -6
  306. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/fc/diff_fc9e8ec97b9414c6564bfb456a67b499 +0 -24
  307. package/.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/fc/gte_fce941d3a7388750c169856aaaa6ab09 +0 -4
  308. package/lib/HttpBuildCacheProvider.test.d.ts.map +0 -1
  309. package/lib/HttpBuildCacheProvider.test.js.map +0 -1
  310. package/src/HttpBuildCacheProvider.test.ts +0 -58
  311. /package/lib/{HttpBuildCacheProvider.test.d.ts → test/HttpBuildCacheProvider.test.d.ts} +0 -0
  312. /package/{.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/50/core_50b22e73455ca8518c847bae97611bda → temp/test.jest/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/9c/core_9c5086b29cd2255e4352762c522b0dc6} +0 -0
  313. /package/{.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/86/mappingTable_86f2dfc435ef89190b3f1803ce21e9c8 → temp/test.jest/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/a3/mappingTable_a3bbd51f5a995bfd008b594203dad191} +0 -0
  314. /package/{.heft/build-cache/jest-cache/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/2c/core_2cedf8a7e3f663d3d09ca6789bdf0c46 → temp/test.jest/jest-transform-cache-bae913f9b9aa720eb4deeae0a60a4b27-474488b31a4a940a3990e9eaf06f1647/c9/core_c9eac21888645f5d5abe55a219020667} +0 -0
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">47.45% </span>
26
+ <span class="strong">65.56% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>56/118</span>
28
+ <span class='fraction'>278/424</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">39.02% </span>
33
+ <span class="strong">55.17% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>32/82</span>
35
+ <span class='fraction'>32/58</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">50% </span>
40
+ <span class="strong">61.53% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>9/18</span>
42
+ <span class='fraction'>8/13</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">47.45% </span>
47
+ <span class="strong">65.56% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>56/118</span>
49
+ <span class='fraction'>278/424</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line low'></div>
64
+ <div class='status-line high'></div>
65
65
  <pre><table class="coverage">
66
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -458,402 +458,460 @@
458
458
  <a name='L393'></a><a href='#L393'>393</a>
459
459
  <a name='L394'></a><a href='#L394'>394</a>
460
460
  <a name='L395'></a><a href='#L395'>395</a>
461
- <a name='L396'></a><a href='#L396'>396</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
461
+ <a name='L396'></a><a href='#L396'>396</a>
462
+ <a name='L397'></a><a href='#L397'>397</a>
463
+ <a name='L398'></a><a href='#L398'>398</a>
464
+ <a name='L399'></a><a href='#L399'>399</a>
465
+ <a name='L400'></a><a href='#L400'>400</a>
466
+ <a name='L401'></a><a href='#L401'>401</a>
467
+ <a name='L402'></a><a href='#L402'>402</a>
468
+ <a name='L403'></a><a href='#L403'>403</a>
469
+ <a name='L404'></a><a href='#L404'>404</a>
470
+ <a name='L405'></a><a href='#L405'>405</a>
471
+ <a name='L406'></a><a href='#L406'>406</a>
472
+ <a name='L407'></a><a href='#L407'>407</a>
473
+ <a name='L408'></a><a href='#L408'>408</a>
474
+ <a name='L409'></a><a href='#L409'>409</a>
475
+ <a name='L410'></a><a href='#L410'>410</a>
476
+ <a name='L411'></a><a href='#L411'>411</a>
477
+ <a name='L412'></a><a href='#L412'>412</a>
478
+ <a name='L413'></a><a href='#L413'>413</a>
479
+ <a name='L414'></a><a href='#L414'>414</a>
480
+ <a name='L415'></a><a href='#L415'>415</a>
481
+ <a name='L416'></a><a href='#L416'>416</a>
482
+ <a name='L417'></a><a href='#L417'>417</a>
483
+ <a name='L418'></a><a href='#L418'>418</a>
484
+ <a name='L419'></a><a href='#L419'>419</a>
485
+ <a name='L420'></a><a href='#L420'>420</a>
486
+ <a name='L421'></a><a href='#L421'>421</a>
487
+ <a name='L422'></a><a href='#L422'>422</a>
488
+ <a name='L423'></a><a href='#L423'>423</a>
489
+ <a name='L424'></a><a href='#L424'>424</a>
490
+ <a name='L425'></a><a href='#L425'>425</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
462
491
  <span class="cline-any cline-yes">1x</span>
463
- <span class="cline-any cline-neutral">&nbsp;</span>
464
- <span class="cline-any cline-neutral">&nbsp;</span>
465
- <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-neutral">&nbsp;</span>
469
492
  <span class="cline-any cline-yes">1x</span>
470
- <span class="cline-any cline-neutral">&nbsp;</span>
471
493
  <span class="cline-any cline-yes">1x</span>
472
494
  <span class="cline-any cline-yes">1x</span>
473
495
  <span class="cline-any cline-yes">1x</span>
474
496
  <span class="cline-any cline-yes">1x</span>
475
- <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-neutral">&nbsp;</span>
477
497
  <span class="cline-any cline-yes">1x</span>
478
498
  <span class="cline-any cline-yes">1x</span>
479
499
  <span class="cline-any cline-yes">1x</span>
480
500
  <span class="cline-any cline-yes">1x</span>
481
501
  <span class="cline-any cline-yes">1x</span>
482
502
  <span class="cline-any cline-yes">1x</span>
483
- <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-neutral">&nbsp;</span>
487
- <span class="cline-any cline-neutral">&nbsp;</span>
488
- <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-neutral">&nbsp;</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-neutral">&nbsp;</span>
492
- <span class="cline-any cline-neutral">&nbsp;</span>
493
- <span class="cline-any cline-neutral">&nbsp;</span>
494
- <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-neutral">&nbsp;</span>
496
- <span class="cline-any cline-neutral">&nbsp;</span>
497
- <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-neutral">&nbsp;</span>
499
- <span class="cline-any cline-neutral">&nbsp;</span>
500
- <span class="cline-any cline-neutral">&nbsp;</span>
501
- <span class="cline-any cline-neutral">&nbsp;</span>
502
- <span class="cline-any cline-neutral">&nbsp;</span>
503
- <span class="cline-any cline-neutral">&nbsp;</span>
504
503
  <span class="cline-any cline-yes">1x</span>
505
- <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-neutral">&nbsp;</span>
509
- <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-neutral">&nbsp;</span>
513
- <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-neutral">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-neutral">&nbsp;</span>
517
- <span class="cline-any cline-neutral">&nbsp;</span>
504
+ <span class="cline-any cline-yes">1x</span>
505
+ <span class="cline-any cline-yes">1x</span>
506
+ <span class="cline-any cline-yes">1x</span>
507
+ <span class="cline-any cline-yes">1x</span>
508
+ <span class="cline-any cline-yes">1x</span>
509
+ <span class="cline-any cline-yes">1x</span>
510
+ <span class="cline-any cline-yes">1x</span>
511
+ <span class="cline-any cline-yes">1x</span>
512
+ <span class="cline-any cline-yes">1x</span>
513
+ <span class="cline-any cline-yes">1x</span>
514
+ <span class="cline-any cline-yes">1x</span>
515
+ <span class="cline-any cline-yes">1x</span>
516
+ <span class="cline-any cline-yes">1x</span>
517
+ <span class="cline-any cline-yes">1x</span>
518
+ <span class="cline-any cline-yes">1x</span>
519
+ <span class="cline-any cline-yes">1x</span>
520
+ <span class="cline-any cline-yes">1x</span>
521
+ <span class="cline-any cline-yes">1x</span>
522
+ <span class="cline-any cline-yes">1x</span>
523
+ <span class="cline-any cline-yes">1x</span>
524
+ <span class="cline-any cline-yes">1x</span>
525
+ <span class="cline-any cline-yes">1x</span>
526
+ <span class="cline-any cline-yes">1x</span>
527
+ <span class="cline-any cline-yes">1x</span>
528
+ <span class="cline-any cline-yes">1x</span>
529
+ <span class="cline-any cline-yes">1x</span>
530
+ <span class="cline-any cline-yes">1x</span>
531
+ <span class="cline-any cline-yes">1x</span>
532
+ <span class="cline-any cline-yes">1x</span>
533
+ <span class="cline-any cline-yes">1x</span>
534
+ <span class="cline-any cline-yes">1x</span>
535
+ <span class="cline-any cline-yes">1x</span>
536
+ <span class="cline-any cline-yes">1x</span>
537
+ <span class="cline-any cline-yes">1x</span>
538
+ <span class="cline-any cline-yes">1x</span>
539
+ <span class="cline-any cline-yes">1x</span>
540
+ <span class="cline-any cline-yes">1x</span>
541
+ <span class="cline-any cline-yes">1x</span>
542
+ <span class="cline-any cline-yes">1x</span>
543
+ <span class="cline-any cline-yes">1x</span>
544
+ <span class="cline-any cline-yes">1x</span>
545
+ <span class="cline-any cline-yes">1x</span>
546
+ <span class="cline-any cline-yes">1x</span>
547
+ <span class="cline-any cline-yes">1x</span>
548
+ <span class="cline-any cline-yes">1x</span>
549
+ <span class="cline-any cline-yes">1x</span>
550
+ <span class="cline-any cline-yes">1x</span>
551
+ <span class="cline-any cline-yes">1x</span>
552
+ <span class="cline-any cline-no">&nbsp;</span>
518
553
  <span class="cline-any cline-no">&nbsp;</span>
519
- <span class="cline-any cline-neutral">&nbsp;</span>
520
- <span class="cline-any cline-neutral">&nbsp;</span>
521
- <span class="cline-any cline-neutral">&nbsp;</span>
522
554
  <span class="cline-any cline-yes">1x</span>
523
555
  <span class="cline-any cline-yes">1x</span>
556
+ <span class="cline-any cline-yes">2x</span>
557
+ <span class="cline-any cline-yes">2x</span>
558
+ <span class="cline-any cline-yes">2x</span>
559
+ <span class="cline-any cline-yes">2x</span>
560
+ <span class="cline-any cline-yes">2x</span>
561
+ <span class="cline-any cline-yes">2x</span>
562
+ <span class="cline-any cline-yes">2x</span>
563
+ <span class="cline-any cline-yes">2x</span>
564
+ <span class="cline-any cline-yes">2x</span>
565
+ <span class="cline-any cline-yes">2x</span>
566
+ <span class="cline-any cline-yes">2x</span>
567
+ <span class="cline-any cline-yes">2x</span>
568
+ <span class="cline-any cline-yes">2x</span>
524
569
  <span class="cline-any cline-yes">1x</span>
525
- <span class="cline-any cline-neutral">&nbsp;</span>
526
570
  <span class="cline-any cline-yes">1x</span>
571
+ <span class="cline-any cline-yes">2x</span>
572
+ <span class="cline-any cline-yes">2x</span>
573
+ <span class="cline-any cline-yes">2x</span>
574
+ <span class="cline-any cline-yes">2x</span>
575
+ <span class="cline-any cline-yes">2x</span>
576
+ <span class="cline-any cline-yes">2x</span>
577
+ <span class="cline-any cline-yes">2x</span>
578
+ <span class="cline-any cline-yes">2x</span>
579
+ <span class="cline-any cline-yes">2x</span>
580
+ <span class="cline-any cline-yes">2x</span>
581
+ <span class="cline-any cline-yes">2x</span>
582
+ <span class="cline-any cline-yes">2x</span>
583
+ <span class="cline-any cline-yes">2x</span>
527
584
  <span class="cline-any cline-yes">1x</span>
585
+ <span class="cline-any cline-yes">2x</span>
586
+ <span class="cline-any cline-yes">2x</span>
528
587
  <span class="cline-any cline-yes">1x</span>
529
588
  <span class="cline-any cline-yes">1x</span>
530
589
  <span class="cline-any cline-yes">1x</span>
590
+ <span class="cline-any cline-yes">2x</span>
531
591
  <span class="cline-any cline-yes">1x</span>
532
592
  <span class="cline-any cline-yes">1x</span>
533
- <span class="cline-any cline-neutral">&nbsp;</span>
534
- <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-neutral">&nbsp;</span>
536
- <span class="cline-any cline-neutral">&nbsp;</span>
537
- <span class="cline-any cline-neutral">&nbsp;</span>
538
- <span class="cline-any cline-neutral">&nbsp;</span>
593
+ <span class="cline-any cline-no">&nbsp;</span>
594
+ <span class="cline-any cline-no">&nbsp;</span>
595
+ <span class="cline-any cline-no">&nbsp;</span>
596
+ <span class="cline-any cline-no">&nbsp;</span>
597
+ <span class="cline-any cline-no">&nbsp;</span>
598
+ <span class="cline-any cline-no">&nbsp;</span>
599
+ <span class="cline-any cline-no">&nbsp;</span>
600
+ <span class="cline-any cline-no">&nbsp;</span>
601
+ <span class="cline-any cline-no">&nbsp;</span>
602
+ <span class="cline-any cline-no">&nbsp;</span>
603
+ <span class="cline-any cline-no">&nbsp;</span>
604
+ <span class="cline-any cline-no">&nbsp;</span>
605
+ <span class="cline-any cline-no">&nbsp;</span>
606
+ <span class="cline-any cline-no">&nbsp;</span>
607
+ <span class="cline-any cline-no">&nbsp;</span>
608
+ <span class="cline-any cline-no">&nbsp;</span>
609
+ <span class="cline-any cline-no">&nbsp;</span>
610
+ <span class="cline-any cline-no">&nbsp;</span>
611
+ <span class="cline-any cline-no">&nbsp;</span>
612
+ <span class="cline-any cline-no">&nbsp;</span>
613
+ <span class="cline-any cline-no">&nbsp;</span>
614
+ <span class="cline-any cline-no">&nbsp;</span>
615
+ <span class="cline-any cline-no">&nbsp;</span>
616
+ <span class="cline-any cline-no">&nbsp;</span>
617
+ <span class="cline-any cline-no">&nbsp;</span>
618
+ <span class="cline-any cline-no">&nbsp;</span>
619
+ <span class="cline-any cline-no">&nbsp;</span>
620
+ <span class="cline-any cline-no">&nbsp;</span>
539
621
  <span class="cline-any cline-yes">1x</span>
540
622
  <span class="cline-any cline-yes">1x</span>
541
- <span class="cline-any cline-neutral">&nbsp;</span>
542
- <span class="cline-any cline-neutral">&nbsp;</span>
543
- <span class="cline-any cline-neutral">&nbsp;</span>
544
- <span class="cline-any cline-neutral">&nbsp;</span>
545
- <span class="cline-any cline-neutral">&nbsp;</span>
546
- <span class="cline-any cline-neutral">&nbsp;</span>
547
- <span class="cline-any cline-neutral">&nbsp;</span>
548
- <span class="cline-any cline-neutral">&nbsp;</span>
549
623
  <span class="cline-any cline-no">&nbsp;</span>
550
- <span class="cline-any cline-neutral">&nbsp;</span>
624
+ <span class="cline-any cline-no">&nbsp;</span>
625
+ <span class="cline-any cline-no">&nbsp;</span>
626
+ <span class="cline-any cline-no">&nbsp;</span>
627
+ <span class="cline-any cline-no">&nbsp;</span>
628
+ <span class="cline-any cline-no">&nbsp;</span>
629
+ <span class="cline-any cline-no">&nbsp;</span>
630
+ <span class="cline-any cline-no">&nbsp;</span>
631
+ <span class="cline-any cline-no">&nbsp;</span>
632
+ <span class="cline-any cline-no">&nbsp;</span>
633
+ <span class="cline-any cline-no">&nbsp;</span>
634
+ <span class="cline-any cline-no">&nbsp;</span>
551
635
  <span class="cline-any cline-yes">1x</span>
552
636
  <span class="cline-any cline-yes">1x</span>
553
- <span class="cline-any cline-neutral">&nbsp;</span>
554
- <span class="cline-any cline-neutral">&nbsp;</span>
555
- <span class="cline-any cline-neutral">&nbsp;</span>
556
- <span class="cline-any cline-neutral">&nbsp;</span>
557
- <span class="cline-any cline-neutral">&nbsp;</span>
558
- <span class="cline-any cline-neutral">&nbsp;</span>
559
- <span class="cline-any cline-neutral">&nbsp;</span>
560
- <span class="cline-any cline-neutral">&nbsp;</span>
561
637
  <span class="cline-any cline-no">&nbsp;</span>
562
638
  <span class="cline-any cline-no">&nbsp;</span>
563
639
  <span class="cline-any cline-no">&nbsp;</span>
564
- <span class="cline-any cline-neutral">&nbsp;</span>
565
- <span class="cline-any cline-neutral">&nbsp;</span>
566
640
  <span class="cline-any cline-no">&nbsp;</span>
567
- <span class="cline-any cline-neutral">&nbsp;</span>
568
641
  <span class="cline-any cline-no">&nbsp;</span>
569
642
  <span class="cline-any cline-no">&nbsp;</span>
570
- <span class="cline-any cline-neutral">&nbsp;</span>
571
- <span class="cline-any cline-neutral">&nbsp;</span>
572
- <span class="cline-any cline-neutral">&nbsp;</span>
573
- <span class="cline-any cline-neutral">&nbsp;</span>
574
- <span class="cline-any cline-neutral">&nbsp;</span>
575
- <span class="cline-any cline-neutral">&nbsp;</span>
576
- <span class="cline-any cline-neutral">&nbsp;</span>
577
- <span class="cline-any cline-neutral">&nbsp;</span>
578
643
  <span class="cline-any cline-no">&nbsp;</span>
579
- <span class="cline-any cline-neutral">&nbsp;</span>
580
644
  <span class="cline-any cline-no">&nbsp;</span>
581
645
  <span class="cline-any cline-no">&nbsp;</span>
582
- <span class="cline-any cline-neutral">&nbsp;</span>
583
- <span class="cline-any cline-neutral">&nbsp;</span>
584
- <span class="cline-any cline-neutral">&nbsp;</span>
585
- <span class="cline-any cline-neutral">&nbsp;</span>
586
646
  <span class="cline-any cline-no">&nbsp;</span>
587
- <span class="cline-any cline-neutral">&nbsp;</span>
588
- <span class="cline-any cline-neutral">&nbsp;</span>
589
- <span class="cline-any cline-neutral">&nbsp;</span>
590
- <span class="cline-any cline-neutral">&nbsp;</span>
591
647
  <span class="cline-any cline-no">&nbsp;</span>
592
- <span class="cline-any cline-neutral">&nbsp;</span>
593
- <span class="cline-any cline-neutral">&nbsp;</span>
594
648
  <span class="cline-any cline-no">&nbsp;</span>
595
- <span class="cline-any cline-neutral">&nbsp;</span>
596
- <span class="cline-any cline-neutral">&nbsp;</span>
597
- <span class="cline-any cline-neutral">&nbsp;</span>
598
- <span class="cline-any cline-neutral">&nbsp;</span>
599
- <span class="cline-any cline-neutral">&nbsp;</span>
600
649
  <span class="cline-any cline-no">&nbsp;</span>
601
650
  <span class="cline-any cline-no">&nbsp;</span>
602
- <span class="cline-any cline-neutral">&nbsp;</span>
603
- <span class="cline-any cline-neutral">&nbsp;</span>
604
- <span class="cline-any cline-neutral">&nbsp;</span>
605
- <span class="cline-any cline-neutral">&nbsp;</span>
606
- <span class="cline-any cline-neutral">&nbsp;</span>
607
- <span class="cline-any cline-neutral">&nbsp;</span>
608
- <span class="cline-any cline-neutral">&nbsp;</span>
609
651
  <span class="cline-any cline-no">&nbsp;</span>
610
652
  <span class="cline-any cline-no">&nbsp;</span>
611
653
  <span class="cline-any cline-no">&nbsp;</span>
612
- <span class="cline-any cline-neutral">&nbsp;</span>
613
654
  <span class="cline-any cline-no">&nbsp;</span>
614
- <span class="cline-any cline-neutral">&nbsp;</span>
615
655
  <span class="cline-any cline-no">&nbsp;</span>
616
656
  <span class="cline-any cline-no">&nbsp;</span>
617
- <span class="cline-any cline-neutral">&nbsp;</span>
618
- <span class="cline-any cline-neutral">&nbsp;</span>
619
657
  <span class="cline-any cline-no">&nbsp;</span>
620
658
  <span class="cline-any cline-no">&nbsp;</span>
621
- <span class="cline-any cline-neutral">&nbsp;</span>
622
659
  <span class="cline-any cline-no">&nbsp;</span>
623
- <span class="cline-any cline-neutral">&nbsp;</span>
624
660
  <span class="cline-any cline-no">&nbsp;</span>
625
- <span class="cline-any cline-neutral">&nbsp;</span>
626
- <span class="cline-any cline-neutral">&nbsp;</span>
627
- <span class="cline-any cline-neutral">&nbsp;</span>
628
661
  <span class="cline-any cline-no">&nbsp;</span>
629
- <span class="cline-any cline-neutral">&nbsp;</span>
630
- <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-neutral">&nbsp;</span>
632
- <span class="cline-any cline-neutral">&nbsp;</span>
662
+ <span class="cline-any cline-no">&nbsp;</span>
663
+ <span class="cline-any cline-yes">1x</span>
664
+ <span class="cline-any cline-yes">1x</span>
665
+ <span class="cline-any cline-no">&nbsp;</span>
666
+ <span class="cline-any cline-no">&nbsp;</span>
667
+ <span class="cline-any cline-no">&nbsp;</span>
668
+ <span class="cline-any cline-no">&nbsp;</span>
669
+ <span class="cline-any cline-no">&nbsp;</span>
670
+ <span class="cline-any cline-no">&nbsp;</span>
633
671
  <span class="cline-any cline-no">&nbsp;</span>
634
672
  <span class="cline-any cline-no">&nbsp;</span>
635
- <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span>
637
- <span class="cline-any cline-neutral">&nbsp;</span>
638
- <span class="cline-any cline-neutral">&nbsp;</span>
639
- <span class="cline-any cline-neutral">&nbsp;</span>
673
+ <span class="cline-any cline-no">&nbsp;</span>
674
+ <span class="cline-any cline-no">&nbsp;</span>
675
+ <span class="cline-any cline-yes">1x</span>
676
+ <span class="cline-any cline-yes">1x</span>
677
+ <span class="cline-any cline-yes">5x</span>
678
+ <span class="cline-any cline-yes">2x</span>
679
+ <span class="cline-any cline-yes">2x</span>
640
680
  <span class="cline-any cline-yes">2x</span>
681
+ <span class="cline-any cline-no">&nbsp;</span>
682
+ <span class="cline-any cline-no">&nbsp;</span>
683
+ <span class="cline-any cline-yes">2x</span>
684
+ <span class="cline-any cline-yes">2x</span>
685
+ <span class="cline-any cline-yes">2x</span>
686
+ <span class="cline-any cline-yes">5x</span>
687
+ <span class="cline-any cline-yes">5x</span>
688
+ <span class="cline-any cline-yes">5x</span>
641
689
  <span class="cline-any cline-yes">1x</span>
642
- <span class="cline-any cline-neutral">&nbsp;</span>
643
690
  <span class="cline-any cline-yes">1x</span>
691
+ <span class="cline-any cline-yes">5x</span>
692
+ <span class="cline-any cline-yes">5x</span>
693
+ <span class="cline-any cline-yes">5x</span>
694
+ <span class="cline-any cline-yes">5x</span>
695
+ <span class="cline-any cline-yes">5x</span>
696
+ <span class="cline-any cline-yes">5x</span>
697
+ <span class="cline-any cline-yes">5x</span>
698
+ <span class="cline-any cline-yes">5x</span>
699
+ <span class="cline-any cline-yes">5x</span>
700
+ <span class="cline-any cline-yes">5x</span>
701
+ <span class="cline-any cline-yes">5x</span>
702
+ <span class="cline-any cline-yes">5x</span>
703
+ <span class="cline-any cline-yes">4x</span>
704
+ <span class="cline-any cline-yes">4x</span>
705
+ <span class="cline-any cline-yes">4x</span>
706
+ <span class="cline-any cline-yes">5x</span>
707
+ <span class="cline-any cline-no">&nbsp;</span>
708
+ <span class="cline-any cline-no">&nbsp;</span>
709
+ <span class="cline-any cline-yes">4x</span>
710
+ <span class="cline-any cline-yes">5x</span>
644
711
  <span class="cline-any cline-no">&nbsp;</span>
645
- <span class="cline-any cline-neutral">&nbsp;</span>
646
- <span class="cline-any cline-neutral">&nbsp;</span>
712
+ <span class="cline-any cline-no">&nbsp;</span>
713
+ <span class="cline-any cline-no">&nbsp;</span>
714
+ <span class="cline-any cline-no">&nbsp;</span>
715
+ <span class="cline-any cline-yes">4x</span>
716
+ <span class="cline-any cline-yes">5x</span>
717
+ <span class="cline-any cline-yes">5x</span>
718
+ <span class="cline-any cline-yes">5x</span>
719
+ <span class="cline-any cline-yes">5x</span>
720
+ <span class="cline-any cline-yes">5x</span>
721
+ <span class="cline-any cline-yes">5x</span>
722
+ <span class="cline-any cline-yes">5x</span>
723
+ <span class="cline-any cline-yes">5x</span>
724
+ <span class="cline-any cline-yes">5x</span>
725
+ <span class="cline-any cline-yes">5x</span>
726
+ <span class="cline-any cline-yes">4x</span>
727
+ <span class="cline-any cline-yes">4x</span>
728
+ <span class="cline-any cline-yes">4x</span>
729
+ <span class="cline-any cline-yes">4x</span>
730
+ <span class="cline-any cline-yes">4x</span>
731
+ <span class="cline-any cline-yes">4x</span>
732
+ <span class="cline-any cline-yes">4x</span>
733
+ <span class="cline-any cline-yes">1x</span>
734
+ <span class="cline-any cline-yes">4x</span>
735
+ <span class="cline-any cline-yes">1x</span>
647
736
  <span class="cline-any cline-yes">1x</span>
648
- <span class="cline-any cline-neutral">&nbsp;</span>
649
- <span class="cline-any cline-neutral">&nbsp;</span>
737
+ <span class="cline-any cline-yes">1x</span>
738
+ <span class="cline-any cline-yes">1x</span>
739
+ <span class="cline-any cline-yes">1x</span>
740
+ <span class="cline-any cline-yes">1x</span>
741
+ <span class="cline-any cline-yes">1x</span>
742
+ <span class="cline-any cline-yes">3x</span>
743
+ <span class="cline-any cline-yes">4x</span>
744
+ <span class="cline-any cline-yes">2x</span>
745
+ <span class="cline-any cline-yes">2x</span>
746
+ <span class="cline-any cline-yes">2x</span>
747
+ <span class="cline-any cline-yes">2x</span>
748
+ <span class="cline-any cline-yes">2x</span>
650
749
  <span class="cline-any cline-yes">2x</span>
651
- <span class="cline-any cline-neutral">&nbsp;</span>
652
- <span class="cline-any cline-neutral">&nbsp;</span>
653
- <span class="cline-any cline-neutral">&nbsp;</span>
654
- <span class="cline-any cline-neutral">&nbsp;</span>
655
- <span class="cline-any cline-neutral">&nbsp;</span>
656
- <span class="cline-any cline-neutral">&nbsp;</span>
657
- <span class="cline-any cline-neutral">&nbsp;</span>
658
- <span class="cline-any cline-neutral">&nbsp;</span>
659
- <span class="cline-any cline-neutral">&nbsp;</span>
660
- <span class="cline-any cline-neutral">&nbsp;</span>
661
- <span class="cline-any cline-neutral">&nbsp;</span>
662
750
  <span class="cline-any cline-yes">2x</span>
663
751
  <span class="cline-any cline-yes">2x</span>
664
752
  <span class="cline-any cline-yes">2x</span>
753
+ <span class="cline-any cline-yes">2x</span>
754
+ <span class="cline-any cline-yes">1x</span>
665
755
  <span class="cline-any cline-yes">1x</span>
666
- <span class="cline-any cline-neutral">&nbsp;</span>
667
756
  <span class="cline-any cline-yes">1x</span>
668
757
  <span class="cline-any cline-yes">1x</span>
669
758
  <span class="cline-any cline-no">&nbsp;</span>
670
- <span class="cline-any cline-neutral">&nbsp;</span>
671
- <span class="cline-any cline-neutral">&nbsp;</span>
759
+ <span class="cline-any cline-yes">5x</span>
760
+ <span class="cline-any cline-yes">5x</span>
761
+ <span class="cline-any cline-yes">5x</span>
762
+ <span class="cline-any cline-yes">5x</span>
763
+ <span class="cline-any cline-yes">5x</span>
764
+ <span class="cline-any cline-yes">5x</span>
765
+ <span class="cline-any cline-yes">5x</span>
766
+ <span class="cline-any cline-yes">5x</span>
767
+ <span class="cline-any cline-yes">5x</span>
768
+ <span class="cline-any cline-yes">5x</span>
769
+ <span class="cline-any cline-yes">1x</span>
770
+ <span class="cline-any cline-yes">1x</span>
771
+ <span class="cline-any cline-yes">1x</span>
672
772
  <span class="cline-any cline-yes">1x</span>
773
+ <span class="cline-any cline-yes">1x</span>
774
+ <span class="cline-any cline-yes">1x</span>
775
+ <span class="cline-any cline-yes">5x</span>
673
776
  <span class="cline-any cline-no">&nbsp;</span>
674
777
  <span class="cline-any cline-no">&nbsp;</span>
675
- <span class="cline-any cline-neutral">&nbsp;</span>
676
- <span class="cline-any cline-neutral">&nbsp;</span>
677
- <span class="cline-any cline-neutral">&nbsp;</span>
778
+ <span class="cline-any cline-yes">5x</span>
779
+ <span class="cline-any cline-yes">5x</span>
780
+ <span class="cline-any cline-yes">5x</span>
781
+ <span class="cline-any cline-yes">5x</span>
782
+ <span class="cline-any cline-yes">5x</span>
783
+ <span class="cline-any cline-yes">5x</span>
784
+ <span class="cline-any cline-yes">5x</span>
785
+ <span class="cline-any cline-yes">5x</span>
786
+ <span class="cline-any cline-yes">1x</span>
787
+ <span class="cline-any cline-yes">1x</span>
788
+ <span class="cline-any cline-yes">1x</span>
678
789
  <span class="cline-any cline-yes">1x</span>
679
- <span class="cline-any cline-neutral">&nbsp;</span>
680
790
  <span class="cline-any cline-yes">1x</span>
681
- <span class="cline-any cline-neutral">&nbsp;</span>
682
791
  <span class="cline-any cline-yes">1x</span>
683
- <span class="cline-any cline-neutral">&nbsp;</span>
684
- <span class="cline-any cline-neutral">&nbsp;</span>
685
- <span class="cline-any cline-neutral">&nbsp;</span>
686
- <span class="cline-any cline-neutral">&nbsp;</span>
687
- <span class="cline-any cline-neutral">&nbsp;</span>
688
- <span class="cline-any cline-neutral">&nbsp;</span>
689
792
  <span class="cline-any cline-yes">1x</span>
690
793
  <span class="cline-any cline-yes">1x</span>
691
- <span class="cline-any cline-neutral">&nbsp;</span>
692
- <span class="cline-any cline-neutral">&nbsp;</span>
693
- <span class="cline-any cline-neutral">&nbsp;</span>
694
794
  <span class="cline-any cline-yes">1x</span>
695
- <span class="cline-any cline-neutral">&nbsp;</span>
696
- <span class="cline-any cline-neutral">&nbsp;</span>
795
+ <span class="cline-any cline-yes">1x</span>
796
+ <span class="cline-any cline-yes">1x</span>
797
+ <span class="cline-any cline-yes">1x</span>
798
+ <span class="cline-any cline-yes">4x</span>
799
+ <span class="cline-any cline-yes">4x</span>
800
+ <span class="cline-any cline-yes">4x</span>
801
+ <span class="cline-any cline-yes">1x</span>
802
+ <span class="cline-any cline-yes">1x</span>
803
+ <span class="cline-any cline-yes">5x</span>
804
+ <span class="cline-any cline-yes">5x</span>
805
+ <span class="cline-any cline-yes">5x</span>
806
+ <span class="cline-any cline-yes">5x</span>
807
+ <span class="cline-any cline-yes">5x</span>
808
+ <span class="cline-any cline-yes">5x</span>
809
+ <span class="cline-any cline-yes">5x</span>
810
+ <span class="cline-any cline-yes">5x</span>
811
+ <span class="cline-any cline-yes">5x</span>
812
+ <span class="cline-any cline-yes">5x</span>
813
+ <span class="cline-any cline-yes">5x</span>
814
+ <span class="cline-any cline-yes">5x</span>
697
815
  <span class="cline-any cline-no">&nbsp;</span>
698
816
  <span class="cline-any cline-no">&nbsp;</span>
699
- <span class="cline-any cline-neutral">&nbsp;</span>
700
- <span class="cline-any cline-neutral">&nbsp;</span>
701
817
  <span class="cline-any cline-no">&nbsp;</span>
702
- <span class="cline-any cline-neutral">&nbsp;</span>
703
818
  <span class="cline-any cline-no">&nbsp;</span>
704
- <span class="cline-any cline-neutral">&nbsp;</span>
705
- <span class="cline-any cline-neutral">&nbsp;</span>
706
- <span class="cline-any cline-neutral">&nbsp;</span>
707
- <span class="cline-any cline-neutral">&nbsp;</span>
708
- <span class="cline-any cline-neutral">&nbsp;</span>
709
819
  <span class="cline-any cline-no">&nbsp;</span>
710
- <span class="cline-any cline-neutral">&nbsp;</span>
711
- <span class="cline-any cline-neutral">&nbsp;</span>
712
- <span class="cline-any cline-neutral">&nbsp;</span>
713
- <span class="cline-any cline-neutral">&nbsp;</span>
714
- <span class="cline-any cline-neutral">&nbsp;</span>
715
- <span class="cline-any cline-neutral">&nbsp;</span>
716
- <span class="cline-any cline-neutral">&nbsp;</span>
717
- <span class="cline-any cline-yes">2x</span>
820
+ <span class="cline-any cline-yes">5x</span>
821
+ <span class="cline-any cline-yes">1x</span>
822
+ <span class="cline-any cline-yes">1x</span>
823
+ <span class="cline-any cline-yes">1x</span>
824
+ <span class="cline-any cline-no">&nbsp;</span>
718
825
  <span class="cline-any cline-no">&nbsp;</span>
719
- <span class="cline-any cline-neutral">&nbsp;</span>
720
- <span class="cline-any cline-neutral">&nbsp;</span>
721
- <span class="cline-any cline-yes">2x</span>
722
- <span class="cline-any cline-neutral">&nbsp;</span>
723
- <span class="cline-any cline-yes">2x</span>
724
- <span class="cline-any cline-yes">2x</span>
725
- <span class="cline-any cline-neutral">&nbsp;</span>
726
- <span class="cline-any cline-neutral">&nbsp;</span>
727
- <span class="cline-any cline-yes">2x</span>
728
826
  <span class="cline-any cline-yes">1x</span>
729
- <span class="cline-any cline-neutral">&nbsp;</span>
730
- <span class="cline-any cline-neutral">&nbsp;</span>
731
- <span class="cline-any cline-neutral">&nbsp;</span>
732
- <span class="cline-any cline-neutral">&nbsp;</span>
733
- <span class="cline-any cline-neutral">&nbsp;</span>
734
- <span class="cline-any cline-neutral">&nbsp;</span>
735
- <span class="cline-any cline-neutral">&nbsp;</span>
736
- <span class="cline-any cline-neutral">&nbsp;</span>
737
- <span class="cline-any cline-neutral">&nbsp;</span>
738
- <span class="cline-any cline-neutral">&nbsp;</span>
739
- <span class="cline-any cline-neutral">&nbsp;</span>
740
- <span class="cline-any cline-neutral">&nbsp;</span>
741
- <span class="cline-any cline-yes">1x</span>
742
- <span class="cline-any cline-neutral">&nbsp;</span>
743
- <span class="cline-any cline-neutral">&nbsp;</span>
744
- <span class="cline-any cline-neutral">&nbsp;</span>
745
- <span class="cline-any cline-neutral">&nbsp;</span>
746
- <span class="cline-any cline-neutral">&nbsp;</span>
747
- <span class="cline-any cline-yes">2x</span>
748
- <span class="cline-any cline-neutral">&nbsp;</span>
749
- <span class="cline-any cline-neutral">&nbsp;</span>
750
- <span class="cline-any cline-neutral">&nbsp;</span>
751
- <span class="cline-any cline-neutral">&nbsp;</span>
752
- <span class="cline-any cline-yes">2x</span>
753
- <span class="cline-any cline-neutral">&nbsp;</span>
754
- <span class="cline-any cline-neutral">&nbsp;</span>
755
- <span class="cline-any cline-neutral">&nbsp;</span>
756
- <span class="cline-any cline-yes">2x</span>
827
+ <span class="cline-any cline-yes">1x</span>
828
+ <span class="cline-any cline-yes">1x</span>
829
+ <span class="cline-any cline-no">&nbsp;</span>
830
+ <span class="cline-any cline-no">&nbsp;</span>
831
+ <span class="cline-any cline-no">&nbsp;</span>
832
+ <span class="cline-any cline-no">&nbsp;</span>
833
+ <span class="cline-any cline-no">&nbsp;</span>
834
+ <span class="cline-any cline-no">&nbsp;</span>
835
+ <span class="cline-any cline-no">&nbsp;</span>
836
+ <span class="cline-any cline-no">&nbsp;</span>
837
+ <span class="cline-any cline-no">&nbsp;</span>
838
+ <span class="cline-any cline-no">&nbsp;</span>
839
+ <span class="cline-any cline-yes">1x</span>
840
+ <span class="cline-any cline-yes">1x</span>
841
+ <span class="cline-any cline-yes">1x</span>
842
+ <span class="cline-any cline-yes">1x</span>
843
+ <span class="cline-any cline-no">&nbsp;</span>
844
+ <span class="cline-any cline-no">&nbsp;</span>
845
+ <span class="cline-any cline-no">&nbsp;</span>
846
+ <span class="cline-any cline-no">&nbsp;</span>
847
+ <span class="cline-any cline-no">&nbsp;</span>
848
+ <span class="cline-any cline-no">&nbsp;</span>
849
+ <span class="cline-any cline-no">&nbsp;</span>
850
+ <span class="cline-any cline-no">&nbsp;</span>
757
851
  <span class="cline-any cline-no">&nbsp;</span>
758
852
  <span class="cline-any cline-no">&nbsp;</span>
759
853
  <span class="cline-any cline-no">&nbsp;</span>
760
- <span class="cline-any cline-neutral">&nbsp;</span>
761
- <span class="cline-any cline-neutral">&nbsp;</span>
762
- <span class="cline-any cline-neutral">&nbsp;</span>
763
- <span class="cline-any cline-neutral">&nbsp;</span>
764
- <span class="cline-any cline-neutral">&nbsp;</span>
765
- <span class="cline-any cline-no">&nbsp;</span>
766
- <span class="cline-any cline-no">&nbsp;</span>
767
- <span class="cline-any cline-neutral">&nbsp;</span>
768
- <span class="cline-any cline-neutral">&nbsp;</span>
769
- <span class="cline-any cline-no">&nbsp;</span>
770
- <span class="cline-any cline-neutral">&nbsp;</span>
771
- <span class="cline-any cline-neutral">&nbsp;</span>
772
- <span class="cline-any cline-neutral">&nbsp;</span>
773
- <span class="cline-any cline-neutral">&nbsp;</span>
774
- <span class="cline-any cline-neutral">&nbsp;</span>
775
- <span class="cline-any cline-neutral">&nbsp;</span>
776
- <span class="cline-any cline-neutral">&nbsp;</span>
777
- <span class="cline-any cline-neutral">&nbsp;</span>
778
- <span class="cline-any cline-neutral">&nbsp;</span>
779
- <span class="cline-any cline-no">&nbsp;</span>
780
- <span class="cline-any cline-neutral">&nbsp;</span>
781
- <span class="cline-any cline-neutral">&nbsp;</span>
782
- <span class="cline-any cline-neutral">&nbsp;</span>
783
- <span class="cline-any cline-neutral">&nbsp;</span>
784
- <span class="cline-any cline-neutral">&nbsp;</span>
785
- <span class="cline-any cline-no">&nbsp;</span>
786
- <span class="cline-any cline-neutral">&nbsp;</span>
787
- <span class="cline-any cline-neutral">&nbsp;</span>
788
- <span class="cline-any cline-neutral">&nbsp;</span>
789
- <span class="cline-any cline-neutral">&nbsp;</span>
790
- <span class="cline-any cline-neutral">&nbsp;</span>
791
- <span class="cline-any cline-neutral">&nbsp;</span>
792
- <span class="cline-any cline-neutral">&nbsp;</span>
793
- <span class="cline-any cline-no">&nbsp;</span>
794
- <span class="cline-any cline-neutral">&nbsp;</span>
795
- <span class="cline-any cline-neutral">&nbsp;</span>
796
- <span class="cline-any cline-no">&nbsp;</span>
797
- <span class="cline-any cline-neutral">&nbsp;</span>
798
- <span class="cline-any cline-neutral">&nbsp;</span>
799
- <span class="cline-any cline-neutral">&nbsp;</span>
800
- <span class="cline-any cline-no">&nbsp;</span>
801
- <span class="cline-any cline-neutral">&nbsp;</span>
802
- <span class="cline-any cline-no">&nbsp;</span>
803
- <span class="cline-any cline-neutral">&nbsp;</span>
804
- <span class="cline-any cline-neutral">&nbsp;</span>
805
- <span class="cline-any cline-neutral">&nbsp;</span>
806
- <span class="cline-any cline-neutral">&nbsp;</span>
807
- <span class="cline-any cline-neutral">&nbsp;</span>
808
- <span class="cline-any cline-no">&nbsp;</span>
809
- <span class="cline-any cline-neutral">&nbsp;</span>
810
- <span class="cline-any cline-neutral">&nbsp;</span>
811
- <span class="cline-any cline-neutral">&nbsp;</span>
812
- <span class="cline-any cline-neutral">&nbsp;</span>
813
- <span class="cline-any cline-neutral">&nbsp;</span>
814
- <span class="cline-any cline-neutral">&nbsp;</span>
815
- <span class="cline-any cline-neutral">&nbsp;</span>
816
- <span class="cline-any cline-neutral">&nbsp;</span>
817
- <span class="cline-any cline-neutral">&nbsp;</span>
818
- <span class="cline-any cline-no">&nbsp;</span>
819
- <span class="cline-any cline-neutral">&nbsp;</span>
820
- <span class="cline-any cline-no">&nbsp;</span>
821
- <span class="cline-any cline-no">&nbsp;</span>
822
- <span class="cline-any cline-neutral">&nbsp;</span>
823
- <span class="cline-any cline-neutral">&nbsp;</span>
824
- <span class="cline-any cline-neutral">&nbsp;</span>
825
- <span class="cline-any cline-no">&nbsp;</span>
826
- <span class="cline-any cline-no">&nbsp;</span>
827
- <span class="cline-any cline-neutral">&nbsp;</span>
828
- <span class="cline-any cline-neutral">&nbsp;</span>
829
- <span class="cline-any cline-neutral">&nbsp;</span>
830
- <span class="cline-any cline-no">&nbsp;</span>
831
- <span class="cline-any cline-no">&nbsp;</span>
832
- <span class="cline-any cline-neutral">&nbsp;</span>
833
- <span class="cline-any cline-neutral">&nbsp;</span>
834
- <span class="cline-any cline-neutral">&nbsp;</span>
835
- <span class="cline-any cline-no">&nbsp;</span>
836
- <span class="cline-any cline-no">&nbsp;</span>
837
- <span class="cline-any cline-neutral">&nbsp;</span>
838
- <span class="cline-any cline-neutral">&nbsp;</span>
839
- <span class="cline-any cline-neutral">&nbsp;</span>
840
- <span class="cline-any cline-no">&nbsp;</span>
841
- <span class="cline-any cline-neutral">&nbsp;</span>
842
- <span class="cline-any cline-neutral">&nbsp;</span>
843
- <span class="cline-any cline-neutral">&nbsp;</span>
844
- <span class="cline-any cline-neutral">&nbsp;</span>
845
- <span class="cline-any cline-neutral">&nbsp;</span>
846
- <span class="cline-any cline-neutral">&nbsp;</span>
847
- <span class="cline-any cline-neutral">&nbsp;</span>
848
- <span class="cline-any cline-neutral">&nbsp;</span>
849
- <span class="cline-any cline-neutral">&nbsp;</span>
850
- <span class="cline-any cline-neutral">&nbsp;</span>
851
- <span class="cline-any cline-neutral">&nbsp;</span>
852
- <span class="cline-any cline-neutral">&nbsp;</span>
853
- <span class="cline-any cline-neutral">&nbsp;</span>
854
- <span class="cline-any cline-neutral">&nbsp;</span>
855
- <span class="cline-any cline-neutral">&nbsp;</span>
856
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { ITerminal, Executable } from '@rushstack/node-core-library';
854
+ <span class="cline-any cline-no">&nbsp;</span>
855
+ <span class="cline-any cline-no">&nbsp;</span>
856
+ <span class="cline-any cline-yes">1x</span>
857
+ <span class="cline-any cline-yes">1x</span>
858
+ <span class="cline-any cline-no">&nbsp;</span>
859
+ <span class="cline-any cline-no">&nbsp;</span>
860
+ <span class="cline-any cline-no">&nbsp;</span>
861
+ <span class="cline-any cline-no">&nbsp;</span>
862
+ <span class="cline-any cline-no">&nbsp;</span>
863
+ <span class="cline-any cline-yes">1x</span>
864
+ <span class="cline-any cline-yes">1x</span>
865
+ <span class="cline-any cline-yes">1x</span>
866
+ <span class="cline-any cline-yes">1x</span>
867
+ <span class="cline-any cline-yes">1x</span>
868
+ <span class="cline-any cline-yes">1x</span>
869
+ <span class="cline-any cline-yes">1x</span>
870
+ <span class="cline-any cline-yes">1x</span>
871
+ <span class="cline-any cline-yes">1x</span>
872
+ <span class="cline-any cline-yes">1x</span>
873
+ <span class="cline-any cline-yes">1x</span>
874
+ <span class="cline-any cline-yes">1x</span>
875
+ <span class="cline-any cline-yes">1x</span>
876
+ <span class="cline-any cline-yes">1x</span>
877
+ <span class="cline-any cline-yes">1x</span>
878
+ <span class="cline-any cline-no">&nbsp;</span>
879
+ <span class="cline-any cline-no">&nbsp;</span>
880
+ <span class="cline-any cline-no">&nbsp;</span>
881
+ <span class="cline-any cline-yes">1x</span>
882
+ <span class="cline-any cline-yes">1x</span>
883
+ <span class="cline-any cline-yes">1x</span>
884
+ <span class="cline-any cline-yes">1x</span>
885
+ <span class="cline-any cline-yes">1x</span>
886
+ <span class="cline-any cline-yes">1x</span>
887
+ <span class="cline-any cline-yes">1x</span>
888
+ <span class="cline-any cline-no">&nbsp;</span>
889
+ <span class="cline-any cline-no">&nbsp;</span>
890
+ <span class="cline-any cline-no">&nbsp;</span>
891
+ <span class="cline-any cline-yes">1x</span>
892
+ <span class="cline-any cline-yes">1x</span>
893
+ <span class="cline-any cline-no">&nbsp;</span>
894
+ <span class="cline-any cline-no">&nbsp;</span>
895
+ <span class="cline-any cline-no">&nbsp;</span>
896
+ <span class="cline-any cline-yes">1x</span>
897
+ <span class="cline-any cline-yes">1x</span>
898
+ <span class="cline-any cline-no">&nbsp;</span>
899
+ <span class="cline-any cline-no">&nbsp;</span>
900
+ <span class="cline-any cline-no">&nbsp;</span>
901
+ <span class="cline-any cline-no">&nbsp;</span>
902
+ <span class="cline-any cline-no">&nbsp;</span>
903
+ <span class="cline-any cline-no">&nbsp;</span>
904
+ <span class="cline-any cline-no">&nbsp;</span>
905
+ <span class="cline-any cline-no">&nbsp;</span>
906
+ <span class="cline-any cline-no">&nbsp;</span>
907
+ <span class="cline-any cline-no">&nbsp;</span>
908
+ <span class="cline-any cline-no">&nbsp;</span>
909
+ <span class="cline-any cline-no">&nbsp;</span>
910
+ <span class="cline-any cline-no">&nbsp;</span>
911
+ <span class="cline-any cline-yes">1x</span>
912
+ <span class="cline-any cline-yes">1x</span>
913
+ <span class="cline-any cline-yes">1x</span>
914
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { ITerminal, Executable, Async } from '@rushstack/node-core-library';
857
915
  import {
858
916
  ICloudBuildCacheProvider,
859
917
  ICredentialCacheEntry,
@@ -889,6 +947,7 @@ export interface IHttpBuildCacheProviderOptions {
889
947
  url: string;
890
948
  tokenHandler?: IHttpBuildCacheTokenHandler;
891
949
  uploadMethod?: string;
950
+ minHttpRetryDelayMs?: number;
892
951
  headers?: Record&lt;string, string&gt;;
893
952
  cacheKeyPrefix?: string;
894
953
  isCacheWriteAllowed: boolean;
@@ -896,6 +955,9 @@ export interface IHttpBuildCacheProviderOptions {
896
955
  rushProjectRoot: string;
897
956
  }
898
957
  &nbsp;
958
+ const MAX_HTTP_CACHE_ATTEMPTS: number = 3;
959
+ const DEFAULT_MIN_HTTP_RETRY_DELAY_MS = 2500;
960
+ &nbsp;
899
961
  export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
900
962
  private readonly _pluginName: string;
901
963
  private readonly _rushSession: RushSession;
@@ -907,11 +969,12 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
907
969
  private readonly _headers: Record&lt;string, string&gt;;
908
970
  private readonly _cacheKeyPrefix: string;
909
971
  private readonly _tokenHandler: IHttpBuildCacheTokenHandler | undefined;
972
+ private readonly _minHttpRetryDelayMs: number;
910
973
  private __credentialCacheId: string | undefined;
911
974
  &nbsp;
912
- <span class="fstat-no" title="function not covered" > public get i</span>sCacheWriteAllowed(): boolean {
975
+ <span class="fstat-no" title="function not covered" > public get isCacheWriteAllowed(): boolean {</span>
913
976
  <span class="cstat-no" title="statement not covered" > return EnvironmentConfiguration.buildCacheWriteAllowed ?? this._isCacheWriteAllowedByConfiguration;</span>
914
- }
977
+ <span class="cstat-no" title="statement not covered" > }</span>
915
978
  &nbsp;
916
979
  public constructor(options: IHttpBuildCacheProviderOptions, rushSession: RushSession) {
917
980
  this._pluginName = options.pluginName;
@@ -920,11 +983,12 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
920
983
  &nbsp;
921
984
  this._environmentCredential = EnvironmentConfiguration.buildCacheCredential;
922
985
  this._isCacheWriteAllowedByConfiguration = options.isCacheWriteAllowed;
923
- this._url = new URL(options.url.endsWith('/') ? <span class="branch-0 cbranch-no" title="branch not covered" >options.url </span>: options.url + '/');
924
- this._uploadMethod = options.uploadMethod ?? <span class="branch-1 cbranch-no" title="branch not covered" >'PUT';</span>
986
+ this._url = new URL(options.url.endsWith('/') <span class="branch-0 cbranch-no" title="branch not covered" >? options.url </span>: options.url + '/');
987
+ this._uploadMethod = options.uploadMethod<span class="branch-0 cbranch-no" title="branch not covered" > ?? 'PUT';</span>
925
988
  this._headers = options.headers<span class="branch-0 cbranch-no" title="branch not covered" > ?? {</span>};
926
989
  this._tokenHandler = options.tokenHandler;
927
990
  this._cacheKeyPrefix = options.cacheKeyPrefix<span class="branch-0 cbranch-no" title="branch not covered" > ?? '</span>';
991
+ this._minHttpRetryDelayMs = options.minHttpRetryDelayMs<span class="branch-0 cbranch-no" title="branch not covered" > ?? DEFAULT_MIN_HTTP_RETRY_DELAY_MS;</span>
928
992
  }
929
993
  &nbsp;
930
994
  public async tryGetCacheEntryBufferByIdAsync(
@@ -938,106 +1002,108 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
938
1002
  method: 'GET',
939
1003
  body: undefined,
940
1004
  warningText: 'Could not get cache entry',
941
- readBody: true
1005
+ readBody: true,
1006
+ maxAttempts: MAX_HTTP_CACHE_ATTEMPTS
942
1007
  });
943
1008
  &nbsp;
944
- <span class="cstat-no" title="statement not covered" > return Buffer.isBuffer(result) ? result : undefined;</span>
1009
+ return Buffer.isBuffer(result) <span class="branch-0 cbranch-no" title="branch not covered" >? result </span>: undefined;
945
1010
  } catch (e) {
946
1011
  terminal.writeWarningLine(`Error getting cache entry: ${e}`);
947
1012
  return undefined;
948
1013
  }
949
1014
  }
950
1015
  &nbsp;
951
- public <span class="fstat-no" title="function not covered" >async </span>trySetCacheEntryBufferAsync(
952
- terminal: ITerminal,
953
- cacheId: string,
954
- objectBuffer: Buffer
955
- ): Promise&lt;boolean&gt; {
956
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.isCacheWriteAllowed) {</span>
1016
+ public <span class="fstat-no" title="function not covered" >async trySetCacheEntryBufferAsync(</span>
1017
+ <span class="cstat-no" title="statement not covered" > terminal: ITerminal,</span>
1018
+ <span class="cstat-no" title="statement not covered" > cacheId: string,</span>
1019
+ <span class="cstat-no" title="statement not covered" > objectBuffer: Buffer</span>
1020
+ <span class="cstat-no" title="statement not covered" > ): Promise&lt;boolean&gt; {</span>
1021
+ <span class="cstat-no" title="statement not covered" > if (!this.isCacheWriteAllowed) {</span>
957
1022
  <span class="cstat-no" title="statement not covered" > terminal.writeErrorLine('Writing to cache is not allowed in the current configuration.');</span>
958
1023
  <span class="cstat-no" title="statement not covered" > return false;</span>
959
- }
960
- &nbsp;
1024
+ <span class="cstat-no" title="statement not covered" > }</span>
1025
+ <span class="cstat-no" title="statement not covered" ></span>
961
1026
  <span class="cstat-no" title="statement not covered" > terminal.writeDebugLine('Uploading object with cacheId: ', cacheId);</span>
962
- &nbsp;
1027
+ <span class="cstat-no" title="statement not covered" ></span>
963
1028
  <span class="cstat-no" title="statement not covered" > try {</span>
964
- const result = <span class="cstat-no" title="statement not covered" >await this._http({</span>
965
- terminal: terminal,
966
- relUrl: `${this._cacheKeyPrefix}${cacheId}`,
967
- method: this._uploadMethod,
968
- body: objectBuffer,
969
- warningText: 'Could not write cache entry',
970
- readBody: false
971
- });
972
- &nbsp;
1029
+ <span class="cstat-no" title="statement not covered" > const result = await this._http({</span>
1030
+ <span class="cstat-no" title="statement not covered" > terminal: terminal,</span>
1031
+ <span class="cstat-no" title="statement not covered" > relUrl: `${this._cacheKeyPrefix}${cacheId}`,</span>
1032
+ <span class="cstat-no" title="statement not covered" > method: this._uploadMethod,</span>
1033
+ <span class="cstat-no" title="statement not covered" > body: objectBuffer,</span>
1034
+ <span class="cstat-no" title="statement not covered" > warningText: 'Could not write cache entry',</span>
1035
+ <span class="cstat-no" title="statement not covered" > readBody: false,</span>
1036
+ <span class="cstat-no" title="statement not covered" > maxAttempts: MAX_HTTP_CACHE_ATTEMPTS</span>
1037
+ <span class="cstat-no" title="statement not covered" > });</span>
1038
+ <span class="cstat-no" title="statement not covered" ></span>
973
1039
  <span class="cstat-no" title="statement not covered" > return result !== false;</span>
974
- } catch (e) {
1040
+ <span class="cstat-no" title="statement not covered" > } catch (e) {</span>
975
1041
  <span class="cstat-no" title="statement not covered" > terminal.writeWarningLine(`Error uploading cache entry: ${e}`);</span>
976
1042
  <span class="cstat-no" title="statement not covered" > return false;</span>
977
- }
978
- }
1043
+ <span class="cstat-no" title="statement not covered" > }</span>
1044
+ <span class="cstat-no" title="statement not covered" > }</span>
979
1045
  &nbsp;
980
- public <span class="fstat-no" title="function not covered" >async </span>updateCachedCredentialAsync(terminal: ITerminal, credential: string): Promise&lt;void&gt; {
1046
+ public <span class="fstat-no" title="function not covered" >async updateCachedCredentialAsync(terminal: ITerminal, credential: string): Promise&lt;void&gt; {</span>
981
1047
  <span class="cstat-no" title="statement not covered" > await CredentialCache.usingAsync(</span>
982
- {
983
- supportEditing: true
984
- },
985
- <span class="fstat-no" title="function not covered" > async </span>(credentialsCache: CredentialCache) =&gt; {
1048
+ <span class="cstat-no" title="statement not covered" > {</span>
1049
+ <span class="cstat-no" title="statement not covered" > supportEditing: true</span>
1050
+ <span class="cstat-no" title="statement not covered" > },</span>
1051
+ <span class="cstat-no" title="statement not covered" > async (credentialsCache: CredentialCache) =&gt; {</span>
986
1052
  <span class="cstat-no" title="statement not covered" > credentialsCache.setCacheEntry(this._credentialCacheId, {</span>
987
- credential: credential
988
- });
1053
+ <span class="cstat-no" title="statement not covered" > credential: credential</span>
1054
+ <span class="cstat-no" title="statement not covered" > });</span>
989
1055
  <span class="cstat-no" title="statement not covered" > await credentialsCache.saveIfModifiedAsync();</span>
990
- }
991
- );
992
- }
1056
+ <span class="cstat-no" title="statement not covered" > }</span>
1057
+ <span class="cstat-no" title="statement not covered" > );</span>
1058
+ <span class="cstat-no" title="statement not covered" > }</span>
993
1059
  &nbsp;
994
- public <span class="fstat-no" title="function not covered" >async </span>updateCachedCredentialInteractiveAsync(terminal: ITerminal): Promise&lt;void&gt; {
995
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!this._tokenHandler) {</span>
1060
+ public <span class="fstat-no" title="function not covered" >async updateCachedCredentialInteractiveAsync(terminal: ITerminal): Promise&lt;void&gt; {</span>
1061
+ <span class="cstat-no" title="statement not covered" > if (!this._tokenHandler) {</span>
996
1062
  <span class="cstat-no" title="statement not covered" > throw new Error(</span>
997
- `The interactive cloud credentials flow is not configured.\n` +
998
- `Set the 'tokenHandler' setting in 'common/config/rush-plugins/${this._pluginName}.json' to a command that writes your credentials to standard output and exits with code 0 ` +
999
- `or provide your credentials to rush using the --credential flag instead. Credentials must be the ` +
1000
- `'Authorization' header expected by ${this._url.href}`
1001
- );
1002
- }
1003
- &nbsp;
1004
- const cmd: string = <span class="cstat-no" title="statement not covered" >`${this._tokenHandler.exec} ${(this._tokenHandler.args || []).join(' ')}`;</span>
1063
+ <span class="cstat-no" title="statement not covered" > `The interactive cloud credentials flow is not configured.\n` +</span>
1064
+ <span class="cstat-no" title="statement not covered" > `Set the 'tokenHandler' setting in 'common/config/rush-plugins/${this._pluginName}.json' to a command that writes your credentials to standard output and exits with code 0 ` +</span>
1065
+ <span class="cstat-no" title="statement not covered" > `or provide your credentials to rush using the --credential flag instead. Credentials must be the ` +</span>
1066
+ <span class="cstat-no" title="statement not covered" > `'Authorization' header expected by ${this._url.href}`</span>
1067
+ <span class="cstat-no" title="statement not covered" > );</span>
1068
+ <span class="cstat-no" title="statement not covered" > }</span>
1069
+ <span class="cstat-no" title="statement not covered" ></span>
1070
+ <span class="cstat-no" title="statement not covered" > const cmd: string = `${this._tokenHandler.exec} ${(this._tokenHandler.args || []).join(' ')}`;</span>
1005
1071
  <span class="cstat-no" title="statement not covered" > terminal.writeVerboseLine(`Running '${cmd}' to get credentials`);</span>
1006
- const result = <span class="cstat-no" title="statement not covered" >Executable.spawnSync(this._tokenHandler.exec, this._tokenHandler.args || []);</span>
1007
- &nbsp;
1072
+ <span class="cstat-no" title="statement not covered" > const result = Executable.spawnSync(this._tokenHandler.exec, this._tokenHandler.args || []);</span>
1073
+ <span class="cstat-no" title="statement not covered" ></span>
1008
1074
  <span class="cstat-no" title="statement not covered" > terminal.writeErrorLine(result.stderr);</span>
1009
- &nbsp;
1010
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (result.error) {</span>
1075
+ <span class="cstat-no" title="statement not covered" ></span>
1076
+ <span class="cstat-no" title="statement not covered" > if (result.error) {</span>
1011
1077
  <span class="cstat-no" title="statement not covered" > throw new Error(`Could not obtain credentials. The command '${cmd}' failed.`);</span>
1012
- }
1013
- &nbsp;
1014
- const credential = <span class="cstat-no" title="statement not covered" >result.stdout.trim();</span>
1078
+ <span class="cstat-no" title="statement not covered" > }</span>
1079
+ <span class="cstat-no" title="statement not covered" ></span>
1080
+ <span class="cstat-no" title="statement not covered" > const credential = result.stdout.trim();</span>
1015
1081
  <span class="cstat-no" title="statement not covered" > terminal.writeVerboseLine('Got credentials');</span>
1016
- &nbsp;
1082
+ <span class="cstat-no" title="statement not covered" ></span>
1017
1083
  <span class="cstat-no" title="statement not covered" > await this.updateCachedCredentialAsync(terminal, credential);</span>
1018
- &nbsp;
1084
+ <span class="cstat-no" title="statement not covered" ></span>
1019
1085
  <span class="cstat-no" title="statement not covered" > terminal.writeLine('Updated credentials cache');</span>
1020
- }
1086
+ <span class="cstat-no" title="statement not covered" > }</span>
1021
1087
  &nbsp;
1022
- public <span class="fstat-no" title="function not covered" >async </span>deleteCachedCredentialsAsync(terminal: ITerminal): Promise&lt;void&gt; {
1088
+ public <span class="fstat-no" title="function not covered" >async deleteCachedCredentialsAsync(terminal: ITerminal): Promise&lt;void&gt; {</span>
1023
1089
  <span class="cstat-no" title="statement not covered" > await CredentialCache.usingAsync(</span>
1024
- {
1025
- supportEditing: true
1026
- },
1027
- <span class="fstat-no" title="function not covered" > async </span>(credentialsCache: CredentialCache) =&gt; {
1090
+ <span class="cstat-no" title="statement not covered" > {</span>
1091
+ <span class="cstat-no" title="statement not covered" > supportEditing: true</span>
1092
+ <span class="cstat-no" title="statement not covered" > },</span>
1093
+ <span class="cstat-no" title="statement not covered" > async (credentialsCache: CredentialCache) =&gt; {</span>
1028
1094
  <span class="cstat-no" title="statement not covered" > credentialsCache.deleteCacheEntry(this._credentialCacheId);</span>
1029
1095
  <span class="cstat-no" title="statement not covered" > await credentialsCache.saveIfModifiedAsync();</span>
1030
- }
1031
- );
1032
- }
1096
+ <span class="cstat-no" title="statement not covered" > }</span>
1097
+ <span class="cstat-no" title="statement not covered" > );</span>
1098
+ <span class="cstat-no" title="statement not covered" > }</span>
1033
1099
  &nbsp;
1034
1100
  private get _credentialCacheId(): string {
1035
1101
  if (!this.__credentialCacheId) {
1036
1102
  const cacheIdParts: string[] = [this._url.href];
1037
1103
  &nbsp;
1038
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this._isCacheWriteAllowedByConfiguration) {
1104
+ if (this._isCacheWriteAllowedByConfiguration) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1039
1105
  <span class="cstat-no" title="statement not covered" > cacheIdParts.push('cacheWriteAllowed');</span>
1040
- }
1106
+ <span class="cstat-no" title="statement not covered" > }</span>
1041
1107
  &nbsp;
1042
1108
  this.__credentialCacheId = cacheIdParts.join('|');
1043
1109
  }
@@ -1052,6 +1118,7 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
1052
1118
  body: BodyInit | undefined;
1053
1119
  warningText: string;
1054
1120
  readBody: boolean;
1121
+ maxAttempts: number;
1055
1122
  credentialOptions?: CredentialsOptions;
1056
1123
  }): Promise&lt;Buffer | boolean&gt; {
1057
1124
  const { terminal, relUrl, method, body, warningText, readBody, credentialOptions } = options;
@@ -1060,17 +1127,17 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
1060
1127
  const url = new URL(relUrl, this._url).href;
1061
1128
  &nbsp;
1062
1129
  const headers: Record&lt;string, string&gt; = {};
1063
- <span class="missing-if-branch" title="if path not taken" >I</span>if (typeof credentials === 'string') {
1130
+ if (typeof credentials === 'string') <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1064
1131
  <span class="cstat-no" title="statement not covered" > headers.Authorization = credentials;</span>
1065
- }
1132
+ <span class="cstat-no" title="statement not covered" > }</span>
1066
1133
  &nbsp;
1067
- for (const [key, value] of Object.entries(this._headers)) {
1068
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (typeof value === 'string') {</span>
1134
+ for (const [key, value] of Object.entries(this._headers)) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1135
+ <span class="cstat-no" title="statement not covered" > if (typeof value === 'string') {</span>
1069
1136
  <span class="cstat-no" title="statement not covered" > headers[key] = value;</span>
1070
- }
1071
- }
1137
+ <span class="cstat-no" title="statement not covered" > }</span>
1138
+ <span class="cstat-no" title="statement not covered" > }</span>
1072
1139
  &nbsp;
1073
- const bodyLength = (<span class="branch-1 cbranch-no" title="branch not covered" >body as { length: number })?.length </span>|| 'unknown';
1140
+ const bodyLength = (body<span class="branch-0 cbranch-no" title="branch not covered" > as { length: number })?.length </span>|| 'unknown';
1074
1141
  &nbsp;
1075
1142
  terminal.writeDebugLine(`[http-build-cache] request: ${method} ${url} ${bodyLength} bytes`);
1076
1143
  &nbsp;
@@ -1082,26 +1149,46 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
1082
1149
  });
1083
1150
  &nbsp;
1084
1151
  if (!response.ok) {
1085
- if (typeof credentials !== 'string' &amp;&amp; safeCredentialOptions === CredentialsOptions.Optional) {
1086
- // We tried fetching the resource without credentials and that did not work out
1087
- // Try again but require credentials this time
1088
- // This will trigger the provider to request credentials
1152
+ const isNonCredentialResponse = response.status &gt;= 500 &amp;&amp; response.status &lt; 600;
1153
+ &nbsp;
1154
+ if (
1155
+ !isNonCredentialResponse &amp;&amp;
1156
+ typeof credentials !== 'string' &amp;&amp;
1157
+ safeCredentialOptions === CredentialsOptions.Optional
1158
+ ) {
1159
+ // If we don't already have credentials yet, and we got a response from the server
1160
+ // that is a "normal" failure (4xx), then we assume that credentials are probably
1161
+ // required. Re-attempt the request, requiring credentials this time.
1162
+ //
1163
+ // This counts as part of the "first attempt", so it is not included in the max attempts
1089
1164
  return await this._http({ ...options, credentialOptions: CredentialsOptions.Required });
1090
1165
  }
1091
1166
  &nbsp;
1092
- <span class="cstat-no" title="statement not covered" > this._reportFailure(terminal, method, response, false, warningText);</span>
1093
- <span class="cstat-no" title="statement not covered" > return false;</span>
1094
- }
1167
+ if (options.maxAttempts &gt; 1) {
1168
+ // Pause a bit before retrying in case the server is busy
1169
+ // Add some random jitter to the retry so we can spread out load on the remote service
1170
+ // A proper solution might add exponential back off in case the retry count is high (10 or more)
1171
+ const factor = 1.0 + Math.random(); // A random number between 1.0 and 2.0
1172
+ const retryDelay = Math.floor(factor * this._minHttpRetryDelayMs);
1173
+ &nbsp;
1174
+ await Async.sleep(retryDelay);
1095
1175
  &nbsp;
1096
- const result: Buffer | boolean = <span class="cstat-no" title="statement not covered" >readBody ? Buffer.from(await response.arrayBuffer()) : true;</span>
1176
+ return await this._http({ ...options, maxAttempts: options.maxAttempts - 1 });
1177
+ }
1178
+ &nbsp;
1179
+ this._reportFailure(terminal, method, response, false, warningText);
1180
+ return false;
1181
+ }
1182
+ <span class="cstat-no" title="statement not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span>
1183
+ const result: Buffer | boolean = readBody ? Buffer.from(await response.arrayBuffer()) <span class="branch-0 cbranch-no" title="branch not covered" >: true;</span>
1097
1184
  &nbsp;
1098
- <span class="cstat-no" title="statement not covered" > terminal.writeDebugLine(</span>
1185
+ terminal.writeDebugLine(
1099
1186
  `[http-build-cache] actual response: ${response.status} ${url} ${
1100
- result === true ? 'true' : result.length
1187
+ result === true <span class="branch-0 cbranch-no" title="branch not covered" >? 'true' <span class="branch-0 cbranch-no" title="branch not covered" ></span>: result.length</span>
1101
1188
  } bytes`
1102
1189
  );
1103
1190
  &nbsp;
1104
- <span class="cstat-no" title="statement not covered" > return result;</span>
1191
+ return result;
1105
1192
  }
1106
1193
  &nbsp;
1107
1194
  private async _tryGetCredentials(options: CredentialsOptions.Required): Promise&lt;string&gt;;
@@ -1109,9 +1196,9 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
1109
1196
  private async _tryGetCredentials(options: CredentialsOptions.Omit): Promise&lt;undefined&gt;;
1110
1197
  private async _tryGetCredentials(options: CredentialsOptions): Promise&lt;string | undefined&gt;;
1111
1198
  private async _tryGetCredentials(options: CredentialsOptions): Promise&lt;string | undefined&gt; {
1112
- <span class="missing-if-branch" title="if path not taken" >I</span>if (options === CredentialsOptions.Omit) {
1199
+ if (options === CredentialsOptions.Omit) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1113
1200
  <span class="cstat-no" title="statement not covered" > return;</span>
1114
- }
1201
+ <span class="cstat-no" title="statement not covered" > }</span>
1115
1202
  &nbsp;
1116
1203
  let credentials: string | undefined = this._environmentCredential;
1117
1204
  &nbsp;
@@ -1148,103 +1235,103 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
1148
1235
  }
1149
1236
  );
1150
1237
  &nbsp;
1151
- <span class="missing-if-branch" title="if path not taken" >I</span>if (cacheEntry) {
1152
- const expirationTime: number | undefined = <span class="cstat-no" title="statement not covered" >cacheEntry.expires?.getTime();</span>
1153
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!expirationTime || expirationTime &gt;= Date.now()) {</span>
1238
+ if (cacheEntry) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1239
+ <span class="cstat-no" title="statement not covered" > const expirationTime: number | undefined = cacheEntry.expires?.getTime();</span>
1240
+ <span class="cstat-no" title="statement not covered" > if (!expirationTime || expirationTime &gt;= Date.now()) {</span>
1154
1241
  <span class="cstat-no" title="statement not covered" > return cacheEntry.credential;</span>
1155
- }
1156
- }
1242
+ <span class="cstat-no" title="statement not covered" > }</span>
1243
+ <span class="cstat-no" title="statement not covered" > }</span>
1157
1244
  }
1158
1245
  &nbsp;
1159
- private <span class="fstat-no" title="function not covered" >_getFailureType(</span>requestMethod: string, response: Response, isRedirect: boolean): FailureType {
1160
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (response.ok) {</span>
1246
+ private _getFailureType(requestMethod: string, response: Response, isRedirect: boolean): FailureType {
1247
+ if (response.ok) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
1161
1248
  <span class="cstat-no" title="statement not covered" > return FailureType.None;</span>
1162
- }
1249
+ <span class="cstat-no" title="statement not covered" > }</span>
1163
1250
  &nbsp;
1164
- <span class="cstat-no" title="statement not covered" > switch (response.status) {</span>
1165
- case 503: {
1166
- // We select 503 specifically because this represents "service unavailable" and
1167
- // "rate limit throttle" errors, which are transient issues.
1168
- //
1169
- // There are other 5xx errors, such as 501, that can occur if the request is
1170
- // malformed, so as a general rule we want to let through other 5xx errors
1171
- // so the user can troubleshoot.
1172
- &nbsp;
1173
- // Don't fail production builds with warnings for transient issues
1251
+ switch (response.status) {
1252
+ <span class="branch-0 cbranch-no" title="branch not covered" > case 503: {</span>
1253
+ <span class="cstat-no" title="statement not covered" > // We select 503 specifically because this represents "service unavailable" and</span>
1254
+ <span class="cstat-no" title="statement not covered" > // "rate limit throttle" errors, which are transient issues.</span>
1255
+ <span class="cstat-no" title="statement not covered" > //</span>
1256
+ <span class="cstat-no" title="statement not covered" > // There are other 5xx errors, such as 501, that can occur if the request is</span>
1257
+ <span class="cstat-no" title="statement not covered" > // malformed, so as a general rule we want to let through other 5xx errors</span>
1258
+ <span class="cstat-no" title="statement not covered" > // so the user can troubleshoot.</span>
1259
+ <span class="cstat-no" title="statement not covered" ></span>
1260
+ <span class="cstat-no" title="statement not covered" > // Don't fail production builds with warnings for transient issues</span>
1174
1261
  <span class="cstat-no" title="statement not covered" > return FailureType.Informational;</span>
1175
- }
1262
+ <span class="cstat-no" title="statement not covered" > }</span>
1176
1263
  &nbsp;
1177
- case 401:
1178
- case 403:
1179
- case 407: {
1180
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (requestMethod === 'GET' &amp;&amp; (isRedirect || response.redirected)) {</span>
1181
- // Cache misses for GET requests are not errors
1182
- // This is a workaround behavior where a server can issue a redirect and we fail to authenticate at the new location.
1183
- // We do not want to signal this as an authentication failure because the authorization header is not passed on to redirects.
1184
- // i.e The authentication header was accepted for the first request and therefore subsequent failures
1185
- // where it was not present should not be attributed to the header.
1186
- // This scenario usually comes up with services that redirect to pre-signed URLS that don't actually exist.
1187
- // Those services then usually treat the 404 as a 403 to prevent leaking information.
1264
+ <span class="branch-0 cbranch-no" title="branch not covered" > case 401:</span>
1265
+ <span class="branch-0 cbranch-no" title="branch not covered" > case 403:</span>
1266
+ <span class="branch-0 cbranch-no" title="branch not covered" > case 407: {</span>
1267
+ <span class="cstat-no" title="statement not covered" > if (requestMethod === 'GET' &amp;&amp; (isRedirect || response.redirected)) {</span>
1268
+ <span class="cstat-no" title="statement not covered" > // Cache misses for GET requests are not errors</span>
1269
+ <span class="cstat-no" title="statement not covered" > // This is a workaround behavior where a server can issue a redirect and we fail to authenticate at the new location.</span>
1270
+ <span class="cstat-no" title="statement not covered" > // We do not want to signal this as an authentication failure because the authorization header is not passed on to redirects.</span>
1271
+ <span class="cstat-no" title="statement not covered" > // i.e The authentication header was accepted for the first request and therefore subsequent failures</span>
1272
+ <span class="cstat-no" title="statement not covered" > // where it was not present should not be attributed to the header.</span>
1273
+ <span class="cstat-no" title="statement not covered" > // This scenario usually comes up with services that redirect to pre-signed URLS that don't actually exist.</span>
1274
+ <span class="cstat-no" title="statement not covered" > // Those services then usually treat the 404 as a 403 to prevent leaking information.</span>
1188
1275
  <span class="cstat-no" title="statement not covered" > return FailureType.None;</span>
1189
- }
1190
- &nbsp;
1276
+ <span class="cstat-no" title="statement not covered" > }</span>
1277
+ <span class="cstat-no" title="statement not covered" ></span>
1191
1278
  <span class="cstat-no" title="statement not covered" > return FailureType.Authentication;</span>
1192
- }
1279
+ <span class="cstat-no" title="statement not covered" > }</span>
1193
1280
  &nbsp;
1194
- case 404: {
1195
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (requestMethod === 'GET') {</span>
1196
- // Cache misses for GET requests are not errors
1281
+ <span class="branch-0 cbranch-no" title="branch not covered" > case 404: {</span>
1282
+ <span class="cstat-no" title="statement not covered" > if (requestMethod === 'GET') {</span>
1283
+ <span class="cstat-no" title="statement not covered" > // Cache misses for GET requests are not errors</span>
1197
1284
  <span class="cstat-no" title="statement not covered" > return FailureType.None;</span>
1198
- }
1199
- }
1285
+ <span class="cstat-no" title="statement not covered" > }</span>
1286
+ <span class="cstat-no" title="statement not covered" > }</span>
1200
1287
  }
1201
1288
  &nbsp;
1202
1289
  // Let dev builds succeed, let Prod builds fail
1203
- <span class="cstat-no" title="statement not covered" > return FailureType.Warning;</span>
1290
+ return FailureType.Warning;
1204
1291
  }
1205
1292
  &nbsp;
1206
- private <span class="fstat-no" title="function not covered" >_reportFailure(</span>
1293
+ private _reportFailure(
1207
1294
  terminal: ITerminal,
1208
1295
  requestMethod: string,
1209
1296
  response: Response,
1210
1297
  isRedirect: boolean,
1211
1298
  message: string
1212
1299
  ): void {
1213
- <span class="cstat-no" title="statement not covered" > switch (this._getFailureType(requestMethod, response, isRedirect)) {</span>
1214
- default: {
1300
+ switch (this._getFailureType(requestMethod, response, isRedirect)) {
1301
+ <span class="branch-0 cbranch-no" title="branch not covered" > default: {</span>
1215
1302
  <span class="cstat-no" title="statement not covered" > terminal.writeErrorLine(`${message}: HTTP ${response.status}: ${response.statusText}`);</span>
1216
1303
  <span class="cstat-no" title="statement not covered" > break;</span>
1217
- }
1304
+ <span class="cstat-no" title="statement not covered" > }</span>
1218
1305
  &nbsp;
1219
1306
  case FailureType.Warning: {
1220
- <span class="cstat-no" title="statement not covered" > terminal.writeWarningLine(`${message}: HTTP ${response.status}: ${response.statusText}`);</span>
1221
- <span class="cstat-no" title="statement not covered" > break;</span>
1307
+ terminal.writeWarningLine(`${message}: HTTP ${response.status}: ${response.statusText}`);
1308
+ break;
1222
1309
  }
1223
1310
  &nbsp;
1224
- case FailureType.Informational: {
1311
+ <span class="branch-0 cbranch-no" title="branch not covered" > case FailureType.Informational: {</span>
1225
1312
  <span class="cstat-no" title="statement not covered" > terminal.writeLine(`${message}: HTTP ${response.status}: ${response.statusText}`);</span>
1226
1313
  <span class="cstat-no" title="statement not covered" > break;</span>
1227
- }
1314
+ <span class="cstat-no" title="statement not covered" > }</span>
1228
1315
  &nbsp;
1229
- case FailureType.None: {
1316
+ <span class="branch-0 cbranch-no" title="branch not covered" > case FailureType.None: {</span>
1230
1317
  <span class="cstat-no" title="statement not covered" > terminal.writeDebugLine(`${message}: HTTP ${response.status}: ${response.statusText}`);</span>
1231
1318
  <span class="cstat-no" title="statement not covered" > break;</span>
1232
- }
1319
+ <span class="cstat-no" title="statement not covered" > }</span>
1233
1320
  &nbsp;
1234
- case FailureType.Authentication: {
1321
+ <span class="branch-0 cbranch-no" title="branch not covered" > case FailureType.Authentication: {</span>
1235
1322
  <span class="cstat-no" title="statement not covered" > throw new Error(</span>
1236
- [
1237
- `${this._url.href} responded with ${response.status}: ${response.statusText}.`,
1238
- `Credentials may be misconfigured or have expired.`,
1239
- `In CI, verify that RUSH_BUILD_CACHE_CREDENTIAL contains a valid Authorization header value.`,
1240
- ``,
1241
- `For local developers, run:`,
1242
- ``,
1243
- ` rush update-cloud-credentials --interactive`,
1244
- ``
1245
- ].join('\n')
1246
- );
1247
- }
1323
+ <span class="cstat-no" title="statement not covered" > [</span>
1324
+ <span class="cstat-no" title="statement not covered" > `${this._url.href} responded with ${response.status}: ${response.statusText}.`,</span>
1325
+ <span class="cstat-no" title="statement not covered" > `Credentials may be misconfigured or have expired.`,</span>
1326
+ <span class="cstat-no" title="statement not covered" > `In CI, verify that RUSH_BUILD_CACHE_CREDENTIAL contains a valid Authorization header value.`,</span>
1327
+ <span class="cstat-no" title="statement not covered" > ``,</span>
1328
+ <span class="cstat-no" title="statement not covered" > `For local developers, run:`,</span>
1329
+ <span class="cstat-no" title="statement not covered" > ``,</span>
1330
+ <span class="cstat-no" title="statement not covered" > ` rush update-cloud-credentials --interactive`,</span>
1331
+ <span class="cstat-no" title="statement not covered" > ``</span>
1332
+ <span class="cstat-no" title="statement not covered" > ].join('\n')</span>
1333
+ <span class="cstat-no" title="statement not covered" > );</span>
1334
+ <span class="cstat-no" title="statement not covered" > }</span>
1248
1335
  }
1249
1336
  }
1250
1337
  }
@@ -1255,7 +1342,7 @@ export class HttpBuildCacheProvider implements ICloudBuildCacheProvider {
1255
1342
  <div class='footer quiet pad2 space-top1 center small'>
1256
1343
  Code coverage generated by
1257
1344
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1258
- at 2023-04-27T17:14:25.422Z
1345
+ at 2023-06-02T22:03:36.947Z
1259
1346
  </div>
1260
1347
  <script src="prettify.js"></script>
1261
1348
  <script>