Repository: codecov/uploader
Pull request #332 (2021-08-23 19:58:15)

fix: nan pr handling 
-  #331 


Patch:
diff --git a/.circleci/config.yml b/.circleci/config.yml
index d01500e..8d401e5 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -11,7 +11,7 @@ jobs:
   build-linux-and-osx:
     docker:
       # specify the version you desire here
-      - image: circleci/node:16.6.2
+      - image: circleci/node:16.7.0
 
       # Specify service dependencies here if necessary
       # CircleCI maintains a library of pre-built images
@@ -133,15 +133,15 @@ jobs:
       - run:
           name: Run Alpine binary -f (dry run)
           command: |
-            NODE_DEBUG=vm out/codecov-alpine -f /root/project/coverage-alpine/cobertura-coverage.xml -F alpine -d -Z -e CIRCLE_BRANCH >> output_alpine.txt
+            NODE_DEBUG=vm out/codecov-alpine -v -f /root/project/coverage-alpine/cobertura-coverage.xml -F alpine -d -Z -e CIRCLE_BRANCH >> output_alpine.txt
       - run:
           name: Run Alpine binary auto-detect (dry run)
           command: |
-            out/codecov-alpine -F alpine -d -Z -e CIRCLE_BRANCH >> output_alpine.txt
+            out/codecov-alpine -F alpine -v -d -Z -e CIRCLE_BRANCH >> output_alpine.txt
       - run:
           name: Run Alpine binary (upload)
           command: |
-            out/codecov-alpine -F alpine -Z -e CIRCLE_BRANCH
+            out/codecov-alpine -F alpine -v -Z -e CIRCLE_BRANCH
 
       - store_artifacts:
           path: output_alpine.txt
@@ -183,7 +183,7 @@ jobs:
   test-linux:
     docker:
       # specify the version you desire here
-      - image: circleci/node:16.6.2
+      - image: circleci/node:16.7.0
     steps:
       - checkout
       - attach_workspace:
@@ -210,7 +210,7 @@ jobs:
 
   test-linux-without-git:
     docker:
-      - image: circleci/node:16.6.2
+      - image: circleci/node:16.7.0
     steps:
       - checkout
       - attach_workspace:
@@ -247,11 +247,11 @@ jobs:
       - run:
           name: Run MacOS binary auto-detect (dry-run)
           command: |
-            out/codecov-macos -F macos -d -Z -e CIRCLE_BRANCH >> output_osx.txt
+            out/codecov-macos -F macos -v -d -Z -e CIRCLE_BRANCH >> output_osx.txt
       - run:
           name: Run MacOS binary (upload)
           command: |
-            out/codecov-macos -F macos -Z -e CIRCLE_BRANCH
+            out/codecov-macos -F macos -v -Z -e CIRCLE_BRANCH
 
       - persist_to_workspace:
           root: .
@@ -298,12 +298,12 @@ jobs:
       - run:
           name: Run Windows binary auto-detect (dry-run)
           command: |
-            .\out\codecov.exe -F windows -d -Z -e CIRCLE_BRANCH >> output_win.txt
+            .\out\codecov.exe -F windows -v -d -Z -e CIRCLE_BRANCH >> output_win.txt
           shell: cmd.exe
       - run:
           name: Run Windows binary (upload)
           command: |
-            .\out\codecov.exe -F windows -Z -e CIRCLE_BRANCH
+            .\out\codecov.exe -F windows -v -Z -e CIRCLE_BRANCH
           shell: cmd.exe
 
       - persist_to_workspace:
@@ -339,7 +339,7 @@ jobs:
 
   review:
     docker:
-      - image: circleci/node:16.6.2
+      - image: circleci/node:16.7.0
     steps:
       - attach_workspace:
           at: .
@@ -370,7 +370,7 @@ jobs:
 
   deploy:
     docker:
-      - image: circleci/node:16.6.2
+      - image: circleci/node:16.7.0
     steps:
       - attach_workspace:
           at: .
diff --git a/README.md b/README.md
index d84ac8d..a20f96c 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,27 @@
 [![CircleCI](https://circleci.com/gh/codecov/uploader.svg?style=shield&circle-token=def755bf76a1d8c36436c3115530c7eac7fa30e0)](https://circleci.com/gh/codecov/uploader) [![codecov](https://codecov.io/gh/codecov/uploader/branch/master/graph/badge.svg?token=X1gImxfIya)](https://codecov.io/gh/codecov/uploader)
 [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fcodecov%2Fuploader.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fcodecov%2Fuploader?ref=badge_shield)
 
-## This is a work in progress.
+**Heads up!** This is a work in progress.
+
+> **!!! The project requires npm v7. You can check which version you have via `npm --version`. If you need to update it, run `npm install --global npm` (you should only need to do this once).**
+> 
+> - The project requires Node.js v16
+> - If `nvm` is installed, your `node` version should change to the development version the repository is set to automatically; `nvm` is by no means necessary, however
+> 
+> 1. Run `npm install` once you get in the repository and after every branch change, etc.
+> 
+> - `npm run test` to run the tests
+> - `npm run build` to verify the source code can be built
+> 
+> ---
+> 
+> - `npm run build-linux` to generate the final binary for use on Linux
+> - `npm run build-macos` to generate the final binary for use on macOS
+> - `npm run build-windows` to generate the final binary for use on Windows
+
+> Additionally, you can run the uploader without actually doing a full build via:
+> - `npm run build` which generates the final JavaScript
+> - `node dist/bin/codecov.js`
 
 ## Steps to develop
 
diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json
index 6f5f788..8db80ca 100644
--- a/npm-shrinkwrap.json
+++ b/npm-shrinkwrap.json
@@ -31,8 +31,8 @@
         "@types/superagent": "4.1.12",
         "@types/validator": "13.6.3",
         "@types/yargs": "17.0.2",
-        "@typescript-eslint/eslint-plugin": "4.29.2",
-        "@typescript-eslint/parser": "4.29.2",
+        "@typescript-eslint/eslint-plugin": "4.29.3",
+        "@typescript-eslint/parser": "4.29.3",
         "eslint": "7.32.0",
         "eslint-config-prettier": "8.3.0",
         "husky": "7.0.1",
@@ -40,7 +40,7 @@
         "jest-spec-reporter": "1.0.17",
         "lint-staged": "11.1.2",
         "mock-fs": "5.0.0",
-        "nock": "13.1.1",
+        "nock": "13.1.2",
         "pkg": "5.1.0",
         "prettier": "2.3.2",
         "testdouble": "3.16.1",
@@ -1303,13 +1303,13 @@
       "dev": true
     },
     "node_modules/@typescript-eslint/eslint-plugin": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.2.tgz",
-      "integrity": "sha512-x4EMgn4BTfVd9+Z+r+6rmWxoAzBaapt4QFqE+d8L8sUtYZYLDTK6VG/y/SMMWA5t1/BVU5Kf+20rX4PtWzUYZg==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.3.tgz",
+      "integrity": "sha512-tBgfA3K/3TsZY46ROGvoRxQr1wBkclbVqRQep97MjVHJzcRBURRY3sNFqLk0/Xr//BY5hM9H2p/kp+6qim85SA==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/experimental-utils": "4.29.2",
-        "@typescript-eslint/scope-manager": "4.29.2",
+        "@typescript-eslint/experimental-utils": "4.29.3",
+        "@typescript-eslint/scope-manager": "4.29.3",
         "debug": "^4.3.1",
         "functional-red-black-tree": "^1.0.1",
         "regexpp": "^3.1.0",
@@ -1334,15 +1334,15 @@
       }
     },
     "node_modules/@typescript-eslint/experimental-utils": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.2.tgz",
-      "integrity": "sha512-P6mn4pqObhftBBPAv4GQtEK7Yos1fz/MlpT7+YjH9fTxZcALbiiPKuSIfYP/j13CeOjfq8/fr9Thr2glM9ub7A==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.3.tgz",
+      "integrity": "sha512-ffIvbytTVWz+3keg+Sy94FG1QeOvmV9dP2YSdLFHw/ieLXWCa3U1TYu8IRCOpMv2/SPS8XqhM1+ou1YHsdzKrg==",
       "dev": true,
       "dependencies": {
         "@types/json-schema": "^7.0.7",
-        "@typescript-eslint/scope-manager": "4.29.2",
-        "@typescript-eslint/types": "4.29.2",
-        "@typescript-eslint/typescript-estree": "4.29.2",
+        "@typescript-eslint/scope-manager": "4.29.3",
+        "@typescript-eslint/types": "4.29.3",
+        "@typescript-eslint/typescript-estree": "4.29.3",
         "eslint-scope": "^5.1.1",
         "eslint-utils": "^3.0.0"
       },
@@ -1358,14 +1358,14 @@
       }
     },
     "node_modules/@typescript-eslint/parser": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.2.tgz",
-      "integrity": "sha512-WQ6BPf+lNuwteUuyk1jD/aHKqMQ9jrdCn7Gxt9vvBnzbpj7aWEf+aZsJ1zvTjx5zFxGCt000lsbD9tQPEL8u6g==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.3.tgz",
+      "integrity": "sha512-jrHOV5g2u8ROghmspKoW7pN8T/qUzk0+DITun0MELptvngtMrwUJ1tv5zMI04CYVEUsSrN4jV7AKSv+I0y0EfQ==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/scope-manager": "4.29.2",
-        "@typescript-eslint/types": "4.29.2",
-        "@typescript-eslint/typescript-estree": "4.29.2",
+        "@typescript-eslint/scope-manager": "4.29.3",
+        "@typescript-eslint/types": "4.29.3",
+        "@typescript-eslint/typescript-estree": "4.29.3",
         "debug": "^4.3.1"
       },
       "engines": {
@@ -1385,13 +1385,13 @@
       }
     },
     "node_modules/@typescript-eslint/scope-manager": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.2.tgz",
-      "integrity": "sha512-mfHmvlQxmfkU8D55CkZO2sQOueTxLqGvzV+mG6S/6fIunDiD2ouwsAoiYCZYDDK73QCibYjIZmGhpvKwAB5BOA==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.3.tgz",
+      "integrity": "sha512-x+w8BLXO7iWPkG5mEy9bA1iFRnk36p/goVlYobVWHyDw69YmaH9q6eA+Fgl7kYHmFvWlebUTUfhtIg4zbbl8PA==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "4.29.2",
-        "@typescript-eslint/visitor-keys": "4.29.2"
+        "@typescript-eslint/types": "4.29.3",
+        "@typescript-eslint/visitor-keys": "4.29.3"
       },
       "engines": {
         "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
@@ -1402,9 +1402,9 @@
       }
     },
     "node_modules/@typescript-eslint/types": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.2.tgz",
-      "integrity": "sha512-K6ApnEXId+WTGxqnda8z4LhNMa/pZmbTFkDxEBLQAbhLZL50DjeY0VIDCml/0Y3FlcbqXZrABqrcKxq+n0LwzQ==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.3.tgz",
+      "integrity": "sha512-s1eV1lKNgoIYLAl1JUba8NhULmf+jOmmeFO1G5MN/RBCyyzg4TIOfIOICVNC06lor+Xmy4FypIIhFiJXOknhIg==",
       "dev": true,
       "engines": {
         "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
@@ -1415,13 +1415,13 @@
       }
     },
     "node_modules/@typescript-eslint/typescript-estree": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.2.tgz",
-      "integrity": "sha512-TJ0/hEnYxapYn9SGn3dCnETO0r+MjaxtlWZ2xU+EvytF0g4CqTpZL48SqSNn2hXsPolnewF30pdzR9a5Lj3DNg==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.3.tgz",
+      "integrity": "sha512-45oQJA0bxna4O5TMwz55/TpgjX1YrAPOI/rb6kPgmdnemRZx/dB0rsx+Ku8jpDvqTxcE1C/qEbVHbS3h0hflag==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "4.29.2",
-        "@typescript-eslint/visitor-keys": "4.29.2",
+        "@typescript-eslint/types": "4.29.3",
+        "@typescript-eslint/visitor-keys": "4.29.3",
         "debug": "^4.3.1",
         "globby": "^11.0.3",
         "is-glob": "^4.0.1",
@@ -1442,12 +1442,12 @@
       }
     },
     "node_modules/@typescript-eslint/visitor-keys": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.2.tgz",
-      "integrity": "sha512-bDgJLQ86oWHJoZ1ai4TZdgXzJxsea3Ee9u9wsTAvjChdj2WLcVsgWYAPeY7RQMn16tKrlQaBnpKv7KBfs4EQag==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.3.tgz",
+      "integrity": "sha512-MGGfJvXT4asUTeVs0Q2m+sY63UsfnA+C/FDgBKV3itLBmM9H0u+URcneePtkd0at1YELmZK6HSolCqM4Fzs6yA==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "4.29.2",
+        "@typescript-eslint/types": "4.29.3",
         "eslint-visitor-keys": "^2.0.0"
       },
       "engines": {
@@ -5275,9 +5275,9 @@
       }
     },
     "node_modules/nock": {
-      "version": "13.1.1",
-      "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.1.tgz",
-      "integrity": "sha512-YKTR9MjfK3kS9/l4nuTxyYm30cgOExRHzkLNhL8nhEUyU4f8Za/dRxOqjhVT1vGs0svWo3dDnJTUX1qxYeWy5w==",
+      "version": "13.1.2",
+      "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.2.tgz",
+      "integrity": "sha512-BDjokoeGZnBghmvwCcDJ1yM5TDRMRAJfGi1xIzX5rKTlifbyx1oRpAVl3aNhEA3kGbUSEPD7gBLmwVdnQibrIA==",
       "dev": true,
       "dependencies": {
         "debug": "^4.1.0",
@@ -8209,13 +8209,13 @@
       "dev": true
     },
     "@typescript-eslint/eslint-plugin": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.2.tgz",
-      "integrity": "sha512-x4EMgn4BTfVd9+Z+r+6rmWxoAzBaapt4QFqE+d8L8sUtYZYLDTK6VG/y/SMMWA5t1/BVU5Kf+20rX4PtWzUYZg==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.3.tgz",
+      "integrity": "sha512-tBgfA3K/3TsZY46ROGvoRxQr1wBkclbVqRQep97MjVHJzcRBURRY3sNFqLk0/Xr//BY5hM9H2p/kp+6qim85SA==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/experimental-utils": "4.29.2",
-        "@typescript-eslint/scope-manager": "4.29.2",
+        "@typescript-eslint/experimental-utils": "4.29.3",
+        "@typescript-eslint/scope-manager": "4.29.3",
         "debug": "^4.3.1",
         "functional-red-black-tree": "^1.0.1",
         "regexpp": "^3.1.0",
@@ -8224,55 +8224,55 @@
       }
     },
     "@typescript-eslint/experimental-utils": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.2.tgz",
-      "integrity": "sha512-P6mn4pqObhftBBPAv4GQtEK7Yos1fz/MlpT7+YjH9fTxZcALbiiPKuSIfYP/j13CeOjfq8/fr9Thr2glM9ub7A==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.3.tgz",
+      "integrity": "sha512-ffIvbytTVWz+3keg+Sy94FG1QeOvmV9dP2YSdLFHw/ieLXWCa3U1TYu8IRCOpMv2/SPS8XqhM1+ou1YHsdzKrg==",
       "dev": true,
       "requires": {
         "@types/json-schema": "^7.0.7",
-        "@typescript-eslint/scope-manager": "4.29.2",
-        "@typescript-eslint/types": "4.29.2",
-        "@typescript-eslint/typescript-estree": "4.29.2",
+        "@typescript-eslint/scope-manager": "4.29.3",
+        "@typescript-eslint/types": "4.29.3",
+        "@typescript-eslint/typescript-estree": "4.29.3",
         "eslint-scope": "^5.1.1",
         "eslint-utils": "^3.0.0"
       }
     },
     "@typescript-eslint/parser": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.2.tgz",
-      "integrity": "sha512-WQ6BPf+lNuwteUuyk1jD/aHKqMQ9jrdCn7Gxt9vvBnzbpj7aWEf+aZsJ1zvTjx5zFxGCt000lsbD9tQPEL8u6g==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.3.tgz",
+      "integrity": "sha512-jrHOV5g2u8ROghmspKoW7pN8T/qUzk0+DITun0MELptvngtMrwUJ1tv5zMI04CYVEUsSrN4jV7AKSv+I0y0EfQ==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/scope-manager": "4.29.2",
-        "@typescript-eslint/types": "4.29.2",
-        "@typescript-eslint/typescript-estree": "4.29.2",
+        "@typescript-eslint/scope-manager": "4.29.3",
+        "@typescript-eslint/types": "4.29.3",
+        "@typescript-eslint/typescript-estree": "4.29.3",
         "debug": "^4.3.1"
       }
     },
     "@typescript-eslint/scope-manager": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.2.tgz",
-      "integrity": "sha512-mfHmvlQxmfkU8D55CkZO2sQOueTxLqGvzV+mG6S/6fIunDiD2ouwsAoiYCZYDDK73QCibYjIZmGhpvKwAB5BOA==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.3.tgz",
+      "integrity": "sha512-x+w8BLXO7iWPkG5mEy9bA1iFRnk36p/goVlYobVWHyDw69YmaH9q6eA+Fgl7kYHmFvWlebUTUfhtIg4zbbl8PA==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/types": "4.29.2",
-        "@typescript-eslint/visitor-keys": "4.29.2"
+        "@typescript-eslint/types": "4.29.3",
+        "@typescript-eslint/visitor-keys": "4.29.3"
       }
     },
     "@typescript-eslint/types": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.2.tgz",
-      "integrity": "sha512-K6ApnEXId+WTGxqnda8z4LhNMa/pZmbTFkDxEBLQAbhLZL50DjeY0VIDCml/0Y3FlcbqXZrABqrcKxq+n0LwzQ==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.3.tgz",
+      "integrity": "sha512-s1eV1lKNgoIYLAl1JUba8NhULmf+jOmmeFO1G5MN/RBCyyzg4TIOfIOICVNC06lor+Xmy4FypIIhFiJXOknhIg==",
       "dev": true
     },
     "@typescript-eslint/typescript-estree": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.2.tgz",
-      "integrity": "sha512-TJ0/hEnYxapYn9SGn3dCnETO0r+MjaxtlWZ2xU+EvytF0g4CqTpZL48SqSNn2hXsPolnewF30pdzR9a5Lj3DNg==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.3.tgz",
+      "integrity": "sha512-45oQJA0bxna4O5TMwz55/TpgjX1YrAPOI/rb6kPgmdnemRZx/dB0rsx+Ku8jpDvqTxcE1C/qEbVHbS3h0hflag==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/types": "4.29.2",
-        "@typescript-eslint/visitor-keys": "4.29.2",
+        "@typescript-eslint/types": "4.29.3",
+        "@typescript-eslint/visitor-keys": "4.29.3",
         "debug": "^4.3.1",
         "globby": "^11.0.3",
         "is-glob": "^4.0.1",
@@ -8281,12 +8281,12 @@
       }
     },
     "@typescript-eslint/visitor-keys": {
-      "version": "4.29.2",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.2.tgz",
-      "integrity": "sha512-bDgJLQ86oWHJoZ1ai4TZdgXzJxsea3Ee9u9wsTAvjChdj2WLcVsgWYAPeY7RQMn16tKrlQaBnpKv7KBfs4EQag==",
+      "version": "4.29.3",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.3.tgz",
+      "integrity": "sha512-MGGfJvXT4asUTeVs0Q2m+sY63UsfnA+C/FDgBKV3itLBmM9H0u+URcneePtkd0at1YELmZK6HSolCqM4Fzs6yA==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/types": "4.29.2",
+        "@typescript-eslint/types": "4.29.3",
         "eslint-visitor-keys": "^2.0.0"
       }
     },
@@ -11178,9 +11178,9 @@
       }
     },
     "nock": {
-      "version": "13.1.1",
-      "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.1.tgz",
-      "integrity": "sha512-YKTR9MjfK3kS9/l4nuTxyYm30cgOExRHzkLNhL8nhEUyU4f8Za/dRxOqjhVT1vGs0svWo3dDnJTUX1qxYeWy5w==",
+      "version": "13.1.2",
+      "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.2.tgz",
+      "integrity": "sha512-BDjokoeGZnBghmvwCcDJ1yM5TDRMRAJfGi1xIzX5rKTlifbyx1oRpAVl3aNhEA3kGbUSEPD7gBLmwVdnQibrIA==",
       "dev": true,
       "requires": {
         "debug": "^4.1.0",
diff --git a/package.json b/package.json
index 8fb9f47..8462b7c 100644
--- a/package.json
+++ b/package.json
@@ -48,8 +48,8 @@
     "@types/superagent": "4.1.12",
     "@types/validator": "13.6.3",
     "@types/yargs": "17.0.2",
-    "@typescript-eslint/eslint-plugin": "4.29.2",
-    "@typescript-eslint/parser": "4.29.2",
+    "@typescript-eslint/eslint-plugin": "4.29.3",
+    "@typescript-eslint/parser": "4.29.3",
     "eslint": "7.32.0",
     "eslint-config-prettier": "8.3.0",
     "husky": "7.0.1",
@@ -57,7 +57,7 @@
     "jest-spec-reporter": "1.0.17",
     "lint-staged": "11.1.2",
     "mock-fs": "5.0.0",
-    "nock": "13.1.1",
+    "nock": "13.1.2",
     "pkg": "5.1.0",
     "prettier": "2.3.2",
     "testdouble": "3.16.1",
diff --git a/src/helpers/web.ts b/src/helpers/web.ts
index 50dbb29..82c375f 100644
--- a/src/helpers/web.ts
+++ b/src/helpers/web.ts
@@ -111,7 +111,7 @@ export async function uploadToCodecov(
  */
 export function generateQuery(queryParams: IServiceParams): string {
   checkValueType('pr', queryParams.pr, 'number')
-  if (queryParams.pr === 0) {
+  if (queryParams.pr === 0  || isNaN(Number(queryParams.pr))) {
     queryParams.pr = ''
   }
   return Object.entries(queryParams)


Test patch:
diff --git a/test/helpers/web.test.ts b/test/helpers/web.test.ts
index 9ababdb..72af2bc 100644
--- a/test/helpers/web.test.ts
+++ b/test/helpers/web.test.ts
@@ -93,6 +93,25 @@ describe('Web Helpers', () => {
     )
   })
 
+  it('NaN PR numbers are not propagated to the query', () => {
+    const queryParams: IServiceParams  = {
+      branch: 'testBranch',
+      commit: 'commitSHA',
+      build: '4',
+      buildURL: 'https://ci-providor.local/job/xyz',
+      name: 'testName',
+      tag: 'tagV1',
+      slug: 'testOrg/testRepo',
+      service: 'testingCI',
+      flags: 'unit,uploader',
+      pr: NaN,
+      job: '6',
+    }
+    expect(generateQuery(queryParams)).toBe(
+      'branch=testBranch&commit=commitSHA&build=4&build_url=https://ci-providor.local/job/xyz&name=testName&tag=tagV1&slug=testOrg/testRepo&service=testingCI&flags=unit,uploader&pr=&job=6',
+    )
+  })
+
   it('can populateBuildParams() from args', () => {
     const result = populateBuildParams(
       { args: { flags: 'testFlag', tag: 'testTag' }, environment: {} },