diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8a9625ca..26493fdd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: strategy: fail-fast: false matrix: - nodeVersion: [14, 16, 18] + nodeVersion: [18, 20] arch: [x64] os: [macos-11, windows-2019, ubuntu-22.04] include: @@ -27,18 +27,18 @@ jobs: friendlyName: Windows - os: windows-2019 friendlyName: Windows - nodeVersion: 16 + nodeVersion: 18 arch: x86 npm_config_arch: ia32 - os: ubuntu-22.04 friendlyName: Linux timeout-minutes: 10 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: recursive - name: Install Node.js ${{ matrix.nodeVersion }} (${{ matrix.arch }}) - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.nodeVersion }} architecture: ${{ matrix.arch }} diff --git a/lib/git-process.ts b/lib/git-process.ts index c7ba0fb3..81e978d1 100644 --- a/lib/git-process.ts +++ b/lib/git-process.ts @@ -60,7 +60,7 @@ export interface IGitExecutionOptions { * The encoding to use when writing to stdin, if the stdin * parameter is a string. */ - readonly stdinEncoding?: string + readonly stdinEncoding?: BufferEncoding /** * The size the output buffer to allocate to the spawned process. Set this diff --git a/package.json b/package.json index 78f4b4e7..224506c9 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "update-embedded-git": "node ./script/update-embedded-git.js" }, "engines": { - "node": ">= 14" + "node": ">= 18" }, "repository": { "type": "git", @@ -38,12 +38,10 @@ }, "devDependencies": { "@types/jest": "^28.1.7", - "@types/mkdirp": "^0.5.2", - "@types/node": "^11.9.0", + "@types/node": "18", "@types/progress": "^2.0.1", "@types/rimraf": "2.0.2", "@types/tar": "^6.1.2", - "byline": "^5.0.0", "cross-env": "^5.2.0", "find-git-exec": "^0.0.4", "jest": "^28.1.3", @@ -51,6 +49,6 @@ "rimraf": "^2.5.4", "temp": "^0.9.0", "ts-jest": "^28.0.8", - "typescript": "^4.7.4" + "typescript": "^5.4.5" } } diff --git a/tsconfig.json b/tsconfig.json index e7360edf..6a472269 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,8 +1,8 @@ { "compilerOptions": { - "module": "commonjs", - "moduleResolution": "node", - "target": "es6", + "module": "Node16", + "moduleResolution": "Node16", + "target": "ES2022", "noImplicitReturns": true, "noFallthroughCasesInSwitch": true, "noUnusedLocals": true, diff --git a/yarn.lock b/yarn.lock index 2b088227..87576792 100644 --- a/yarn.lock +++ b/yarn.lock @@ -638,28 +638,23 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== -"@types/mkdirp@^0.5.2": - version "0.5.2" - resolved "https://registry.yarnpkg.com/@types/mkdirp/-/mkdirp-0.5.2.tgz#503aacfe5cc2703d5484326b1b27efa67a339c1f" - integrity sha512-U5icWpv7YnZYGsN4/cmh3WD2onMY0aJIiTE6+51TwJCttdHvtCYmkBNOobHlXwrJRL0nkH9jH4kD+1FAdMN4Tg== - dependencies: - "@types/node" "*" - "@types/node@*": version "18.7.6" resolved "https://registry.yarnpkg.com/@types/node/-/node-18.7.6.tgz#31743bc5772b6ac223845e18c3fc26f042713c83" integrity sha512-EdxgKRXgYsNITy5mjjXjVE/CS8YENSdhiagGrLqjG0pvA2owgJ6i4l7wy/PFZGC0B1/H20lWKN7ONVDNYDZm7A== +"@types/node@18": + version "18.19.33" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.33.tgz#98cd286a1b8a5e11aa06623210240bcc28e95c48" + integrity sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A== + dependencies: + undici-types "~5.26.4" + "@types/node@^10.14.22": version "10.17.60" resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b" integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== -"@types/node@^11.9.0": - version "11.15.54" - resolved "https://registry.yarnpkg.com/@types/node/-/node-11.15.54.tgz#59ed60e7b0d56905a654292e8d73275034eb6283" - integrity sha512-1RWYiq+5UfozGsU6MwJyFX6BtktcT10XRjvcAQmskCtMcW3tPske88lM/nHv7BQG1w9KBXI1zPGuu5PnNCX14g== - "@types/prettier@^2.1.5": version "2.7.0" resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.0.tgz#ea03e9f0376a4446f44797ca19d9c46c36e352dc" @@ -865,11 +860,6 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -byline@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" - integrity sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q== - callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -2300,10 +2290,15 @@ type-fest@^0.21.3: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -typescript@^4.7.4: - version "4.7.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.4.tgz#1a88596d1cf47d59507a1bcdfb5b9dfe4d488235" - integrity sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ== +typescript@^5.4.5: + version "5.4.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" + integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== + +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== update-browserslist-db@^1.0.5: version "1.0.5"