Compare commits

..

3 Commits

Author SHA1 Message Date
Priyagupta108
06003f6f37 Test macos-14-large x64 runner 2025-07-30 14:32:01 +05:30
dependabot[bot]
06a5327ecf Bump undici from 5.28.5 to 5.29.0 (#641)
* Bump undici from 5.28.5 to 5.29.0

Bumps [undici](https://github.com/nodejs/undici) from 5.28.5 to 5.29.0.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.28.5...v5.29.0)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 5.29.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Check failure fix

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: lmvysakh <lmvysakh@github.com>
2025-07-29 12:06:55 -05:00
dependabot[bot]
e8e5b8203e Bump eslint-config-prettier from 9.1.0 to 10.1.5 (#639)
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 9.1.0 to 10.1.5.
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v9.1.0...v10.1.5)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-version: 10.1.5
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-15 12:29:20 -05:00
8 changed files with 417 additions and 408 deletions

View File

@@ -6,7 +6,7 @@ on:
- '**.md' - '**.md'
push: push:
branches: branches:
- main - test-macos-x64-runner
- releases/* - releases/*
paths-ignore: paths-ignore:
- '**.md' - '**.md'
@@ -17,7 +17,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -61,7 +61,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -117,7 +117,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -165,7 +165,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large ]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -205,7 +205,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -253,7 +253,7 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: operating-system:
[ubuntu-latest, windows-latest, macos-13, macos-latest] [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -274,7 +274,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -321,7 +321,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -372,7 +372,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -422,7 +422,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -473,7 +473,7 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: operating-system:
[ubuntu-latest, windows-latest, macos-13, macos-latest] [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -495,7 +495,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
env: env:
NUGET_PACKAGES: ${{ github.workspace }}/.nuget/packages NUGET_PACKAGES: ${{ github.workspace }}/.nuget/packages
steps: steps:
@@ -557,7 +557,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
env: env:
NUGET_PACKAGES: ${{ github.workspace }}/.nuget/packages NUGET_PACKAGES: ${{ github.workspace }}/.nuget/packages
steps: steps:
@@ -616,7 +616,7 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: operating-system:
[ubuntu-latest, windows-latest, macos-13, macos-latest] [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -643,7 +643,7 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: operating-system:
[ubuntu-latest, windows-latest, macos-13, macos-latest] [macos-14-large]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -755,7 +755,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: [ubuntu-22.04, windows-latest, macos-13] operating-system: [macos-14-large]
lower-version: ['6.0.427'] lower-version: ['6.0.427']
higher-version: ['7.0.203'] higher-version: ['7.0.203']
steps: steps:

View File

@@ -6,7 +6,7 @@ on:
- '**.md' - '**.md'
push: push:
branches: branches:
- main - test-macos-x64-runner
- releases/* - releases/*
paths-ignore: paths-ignore:
- '**.md' - '**.md'
@@ -18,7 +18,7 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
operating-system: operating-system:
[ubuntu-latest, ubuntu-22.04, windows-latest, macos-13, macos-latest] [macos-14-large]
dotnet-version: ['6.0', '7.0', '8.0', '9.0'] dotnet-version: ['6.0', '7.0', '8.0', '9.0']
steps: steps:
- name: Checkout - name: Checkout

View File

@@ -1,6 +1,6 @@
--- ---
name: undici name: undici
version: 5.28.5 version: 5.29.0
type: npm type: npm
summary: An HTTP/1.1 client, written from scratch for Node.js summary: An HTTP/1.1 client, written from scratch for Node.js
homepage: https://undici.nodejs.org homepage: https://undici.nodejs.org

View File

@@ -64776,7 +64776,7 @@ module.exports = {
const { parseSetCookie } = __nccwpck_require__(4408) const { parseSetCookie } = __nccwpck_require__(4408)
const { stringify, getHeadersList } = __nccwpck_require__(3121) const { stringify } = __nccwpck_require__(3121)
const { webidl } = __nccwpck_require__(1744) const { webidl } = __nccwpck_require__(1744)
const { Headers } = __nccwpck_require__(554) const { Headers } = __nccwpck_require__(554)
@@ -64852,14 +64852,13 @@ function getSetCookies (headers) {
webidl.brandCheck(headers, Headers, { strict: false }) webidl.brandCheck(headers, Headers, { strict: false })
const cookies = getHeadersList(headers).cookies const cookies = headers.getSetCookie()
if (!cookies) { if (!cookies) {
return [] return []
} }
// In older versions of undici, cookies is a list of name:value. return cookies.map((pair) => parseSetCookie(pair))
return cookies.map((pair) => parseSetCookie(Array.isArray(pair) ? pair[1] : pair))
} }
/** /**
@@ -65287,14 +65286,15 @@ module.exports = {
/***/ }), /***/ }),
/***/ 3121: /***/ 3121:
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /***/ ((module) => {
"use strict"; "use strict";
const assert = __nccwpck_require__(9491) /**
const { kHeadersList } = __nccwpck_require__(2785) * @param {string} value
* @returns {boolean}
*/
function isCTLExcludingHtab (value) { function isCTLExcludingHtab (value) {
if (value.length === 0) { if (value.length === 0) {
return false return false
@@ -65555,31 +65555,13 @@ function stringify (cookie) {
return out.join('; ') return out.join('; ')
} }
let kHeadersListNode
function getHeadersList (headers) {
if (headers[kHeadersList]) {
return headers[kHeadersList]
}
if (!kHeadersListNode) {
kHeadersListNode = Object.getOwnPropertySymbols(headers).find(
(symbol) => symbol.description === 'headers list'
)
assert(kHeadersListNode, 'Headers cannot be parsed')
}
const headersList = headers[kHeadersListNode]
assert(headersList)
return headersList
}
module.exports = { module.exports = {
isCTLExcludingHtab, isCTLExcludingHtab,
stringify, validateCookieName,
getHeadersList validateCookiePath,
validateCookieValue,
toIMFDate,
stringify
} }
@@ -69583,6 +69565,7 @@ const {
isValidHeaderName, isValidHeaderName,
isValidHeaderValue isValidHeaderValue
} = __nccwpck_require__(2538) } = __nccwpck_require__(2538)
const util = __nccwpck_require__(3837)
const { webidl } = __nccwpck_require__(1744) const { webidl } = __nccwpck_require__(1744)
const assert = __nccwpck_require__(9491) const assert = __nccwpck_require__(9491)
@@ -70136,6 +70119,9 @@ Object.defineProperties(Headers.prototype, {
[Symbol.toStringTag]: { [Symbol.toStringTag]: {
value: 'Headers', value: 'Headers',
configurable: true configurable: true
},
[util.inspect.custom]: {
enumerable: false
} }
}) })
@@ -79312,6 +79298,20 @@ class Pool extends PoolBase {
? { ...options.interceptors } ? { ...options.interceptors }
: undefined : undefined
this[kFactory] = factory this[kFactory] = factory
this.on('connectionError', (origin, targets, error) => {
// If a connection error occurs, we remove the client from the pool,
// and emit a connectionError event. They will not be re-used.
// Fixes https://github.com/nodejs/undici/issues/3895
for (const target of targets) {
// Do not use kRemoveClient here, as it will close the client,
// but the client cannot be closed in this state.
const idx = this[kClients].indexOf(target)
if (idx !== -1) {
this[kClients].splice(idx, 1)
}
}
})
} }
[kGetDispatcher] () { [kGetDispatcher] () {
@@ -86644,28 +86644,27 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
}) : function(o, v) { }) : function(o, v) {
o["default"] = v; o["default"] = v;
}); });
var __importStar = (this && this.__importStar) || (function () { var __importStar = (this && this.__importStar) || function (mod) {
var ownKeys = function(o) { if (mod && mod.__esModule) return mod;
ownKeys = Object.getOwnPropertyNames || function (o) { var result = {};
var ar = []; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; __setModuleDefault(result, mod);
return ar; return result;
}; };
return ownKeys(o); var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
}; function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return function (mod) { return new (P || (P = Promise))(function (resolve, reject) {
if (mod && mod.__esModule) return mod; function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
var result = {}; function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
__setModuleDefault(result, mod); step((generator = generator.apply(thisArg, _arguments || [])).next());
return result; });
}; };
})();
var __importDefault = (this && this.__importDefault) || function (mod) { var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod }; return (mod && mod.__esModule) ? mod : { "default": mod };
}; };
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.run = run; exports.run = void 0;
const core = __importStar(__nccwpck_require__(2186)); const core = __importStar(__nccwpck_require__(2186));
const cache = __importStar(__nccwpck_require__(7799)); const cache = __importStar(__nccwpck_require__(7799));
const node_fs_1 = __importDefault(__nccwpck_require__(7561)); const node_fs_1 = __importDefault(__nccwpck_require__(7561));
@@ -86678,24 +86677,27 @@ process.on('uncaughtException', e => {
const warningPrefix = '[warning]'; const warningPrefix = '[warning]';
core.info(`${warningPrefix}${e.message}`); core.info(`${warningPrefix}${e.message}`);
}); });
async function run() { function run() {
try { return __awaiter(this, void 0, void 0, function* () {
if (core.getBooleanInput('cache')) { try {
await cachePackages(); if (core.getBooleanInput('cache')) {
yield cachePackages();
}
} }
} catch (error) {
catch (error) { core.setFailed(error.message);
core.setFailed(error.message); }
} });
} }
const cachePackages = async () => { exports.run = run;
const cachePackages = () => __awaiter(void 0, void 0, void 0, function* () {
const state = core.getState(constants_1.State.CacheMatchedKey); const state = core.getState(constants_1.State.CacheMatchedKey);
const primaryKey = core.getState(constants_1.State.CachePrimaryKey); const primaryKey = core.getState(constants_1.State.CachePrimaryKey);
if (!primaryKey) { if (!primaryKey) {
core.info('Primary key was not generated, not saving cache.'); core.info('Primary key was not generated, not saving cache.');
return; return;
} }
const { 'global-packages': cachePath } = await (0, cache_utils_1.getNuGetFolderPath)(); const { 'global-packages': cachePath } = yield (0, cache_utils_1.getNuGetFolderPath)();
if (!node_fs_1.default.existsSync(cachePath)) { if (!node_fs_1.default.existsSync(cachePath)) {
throw new Error(`Cache folder path is retrieved for .NET CLI but doesn't exist on disk: ${cachePath}`); throw new Error(`Cache folder path is retrieved for .NET CLI but doesn't exist on disk: ${cachePath}`);
} }
@@ -86703,12 +86705,12 @@ const cachePackages = async () => {
core.info(`Cache hit occurred on the primary key ${primaryKey}, not saving cache.`); core.info(`Cache hit occurred on the primary key ${primaryKey}, not saving cache.`);
return; return;
} }
const cacheId = await cache.saveCache([cachePath], primaryKey); const cacheId = yield cache.saveCache([cachePath], primaryKey);
if (cacheId == -1) { if (cacheId == -1) {
return; return;
} }
core.info(`Cache saved with the key: ${primaryKey}`); core.info(`Cache saved with the key: ${primaryKey}`);
}; });
run(); run();
@@ -86735,26 +86737,24 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
}) : function(o, v) { }) : function(o, v) {
o["default"] = v; o["default"] = v;
}); });
var __importStar = (this && this.__importStar) || (function () { var __importStar = (this && this.__importStar) || function (mod) {
var ownKeys = function(o) { if (mod && mod.__esModule) return mod;
ownKeys = Object.getOwnPropertyNames || function (o) { var result = {};
var ar = []; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; __setModuleDefault(result, mod);
return ar; return result;
}; };
return ownKeys(o); var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
}; function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return function (mod) { return new (P || (P = Promise))(function (resolve, reject) {
if (mod && mod.__esModule) return mod; function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
var result = {}; function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
__setModuleDefault(result, mod); step((generator = generator.apply(thisArg, _arguments || [])).next());
return result; });
}; };
})();
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getNuGetFolderPath = void 0; exports.isCacheFeatureAvailable = exports.getNuGetFolderPath = void 0;
exports.isCacheFeatureAvailable = isCacheFeatureAvailable;
const cache = __importStar(__nccwpck_require__(7799)); const cache = __importStar(__nccwpck_require__(7799));
const core = __importStar(__nccwpck_require__(2186)); const core = __importStar(__nccwpck_require__(2186));
const exec = __importStar(__nccwpck_require__(1514)); const exec = __importStar(__nccwpck_require__(1514));
@@ -86784,8 +86784,8 @@ const constants_1 = __nccwpck_require__(9042);
* } * }
* ``` * ```
*/ */
const getNuGetFolderPath = async () => { const getNuGetFolderPath = () => __awaiter(void 0, void 0, void 0, function* () {
const { stdout, stderr, exitCode } = await exec.getExecOutput(constants_1.cliCommand, undefined, { ignoreReturnCode: true, silent: true }); const { stdout, stderr, exitCode } = yield exec.getExecOutput(constants_1.cliCommand, undefined, { ignoreReturnCode: true, silent: true });
if (exitCode) { if (exitCode) {
throw new Error(!stderr.trim() throw new Error(!stderr.trim()
? `The '${constants_1.cliCommand}' command failed with exit code: ${exitCode}` ? `The '${constants_1.cliCommand}' command failed with exit code: ${exitCode}`
@@ -86806,7 +86806,7 @@ const getNuGetFolderPath = async () => {
} }
} }
return result; return result;
}; });
exports.getNuGetFolderPath = getNuGetFolderPath; exports.getNuGetFolderPath = getNuGetFolderPath;
function isCacheFeatureAvailable() { function isCacheFeatureAvailable() {
if (cache.isFeatureAvailable()) { if (cache.isFeatureAvailable()) {
@@ -86819,6 +86819,7 @@ function isCacheFeatureAvailable() {
core.warning('The runner was not able to contact the cache service. Caching will be skipped'); core.warning('The runner was not able to contact the cache service. Caching will be skipped');
return false; return false;
} }
exports.isCacheFeatureAvailable = isCacheFeatureAvailable;
/** /**
* Returns this action runs on GitHub Enterprise Server or not. * Returns this action runs on GitHub Enterprise Server or not.
*/ */

586
dist/setup/index.js vendored
View File

@@ -77025,7 +77025,7 @@ module.exports = {
const { parseSetCookie } = __nccwpck_require__(4408) const { parseSetCookie } = __nccwpck_require__(4408)
const { stringify, getHeadersList } = __nccwpck_require__(3121) const { stringify } = __nccwpck_require__(3121)
const { webidl } = __nccwpck_require__(1744) const { webidl } = __nccwpck_require__(1744)
const { Headers } = __nccwpck_require__(554) const { Headers } = __nccwpck_require__(554)
@@ -77101,14 +77101,13 @@ function getSetCookies (headers) {
webidl.brandCheck(headers, Headers, { strict: false }) webidl.brandCheck(headers, Headers, { strict: false })
const cookies = getHeadersList(headers).cookies const cookies = headers.getSetCookie()
if (!cookies) { if (!cookies) {
return [] return []
} }
// In older versions of undici, cookies is a list of name:value. return cookies.map((pair) => parseSetCookie(pair))
return cookies.map((pair) => parseSetCookie(Array.isArray(pair) ? pair[1] : pair))
} }
/** /**
@@ -77536,14 +77535,15 @@ module.exports = {
/***/ }), /***/ }),
/***/ 3121: /***/ 3121:
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /***/ ((module) => {
"use strict"; "use strict";
const assert = __nccwpck_require__(9491) /**
const { kHeadersList } = __nccwpck_require__(2785) * @param {string} value
* @returns {boolean}
*/
function isCTLExcludingHtab (value) { function isCTLExcludingHtab (value) {
if (value.length === 0) { if (value.length === 0) {
return false return false
@@ -77804,31 +77804,13 @@ function stringify (cookie) {
return out.join('; ') return out.join('; ')
} }
let kHeadersListNode
function getHeadersList (headers) {
if (headers[kHeadersList]) {
return headers[kHeadersList]
}
if (!kHeadersListNode) {
kHeadersListNode = Object.getOwnPropertySymbols(headers).find(
(symbol) => symbol.description === 'headers list'
)
assert(kHeadersListNode, 'Headers cannot be parsed')
}
const headersList = headers[kHeadersListNode]
assert(headersList)
return headersList
}
module.exports = { module.exports = {
isCTLExcludingHtab, isCTLExcludingHtab,
stringify, validateCookieName,
getHeadersList validateCookiePath,
validateCookieValue,
toIMFDate,
stringify
} }
@@ -81832,6 +81814,7 @@ const {
isValidHeaderName, isValidHeaderName,
isValidHeaderValue isValidHeaderValue
} = __nccwpck_require__(2538) } = __nccwpck_require__(2538)
const util = __nccwpck_require__(3837)
const { webidl } = __nccwpck_require__(1744) const { webidl } = __nccwpck_require__(1744)
const assert = __nccwpck_require__(9491) const assert = __nccwpck_require__(9491)
@@ -82385,6 +82368,9 @@ Object.defineProperties(Headers.prototype, {
[Symbol.toStringTag]: { [Symbol.toStringTag]: {
value: 'Headers', value: 'Headers',
configurable: true configurable: true
},
[util.inspect.custom]: {
enumerable: false
} }
}) })
@@ -91561,6 +91547,20 @@ class Pool extends PoolBase {
? { ...options.interceptors } ? { ...options.interceptors }
: undefined : undefined
this[kFactory] = factory this[kFactory] = factory
this.on('connectionError', (origin, targets, error) => {
// If a connection error occurs, we remove the client from the pool,
// and emit a connectionError event. They will not be re-used.
// Fixes https://github.com/nodejs/undici/issues/3895
for (const target of targets) {
// Do not use kRemoveClient here, as it will close the client,
// but the client cannot be closed in this state.
const idx = this[kClients].indexOf(target)
if (idx !== -1) {
this[kClients].splice(idx, 1)
}
}
})
} }
[kGetDispatcher] () { [kGetDispatcher] () {
@@ -98959,25 +98959,15 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
}) : function(o, v) { }) : function(o, v) {
o["default"] = v; o["default"] = v;
}); });
var __importStar = (this && this.__importStar) || (function () { var __importStar = (this && this.__importStar) || function (mod) {
var ownKeys = function(o) { if (mod && mod.__esModule) return mod;
ownKeys = Object.getOwnPropertyNames || function (o) { var result = {};
var ar = []; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; __setModuleDefault(result, mod);
return ar; return result;
}; };
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.configAuthentication = configAuthentication; exports.configAuthentication = void 0;
const fs = __importStar(__nccwpck_require__(7147)); const fs = __importStar(__nccwpck_require__(7147));
const path = __importStar(__nccwpck_require__(1017)); const path = __importStar(__nccwpck_require__(1017));
const core = __importStar(__nccwpck_require__(2186)); const core = __importStar(__nccwpck_require__(2186));
@@ -98990,6 +98980,7 @@ function configAuthentication(feedUrl, existingFileLocation = '', processRoot =
const tempNuGetConfig = path.resolve(processRoot, '../', 'nuget.config'); const tempNuGetConfig = path.resolve(processRoot, '../', 'nuget.config');
writeFeedToFile(feedUrl, existingNuGetConfig, tempNuGetConfig); writeFeedToFile(feedUrl, existingNuGetConfig, tempNuGetConfig);
} }
exports.configAuthentication = configAuthentication;
function isValidKey(key) { function isValidKey(key) {
return /^[\w\-.]+$/i.test(key); return /^[\w\-.]+$/i.test(key);
} }
@@ -99004,6 +98995,7 @@ function getExistingNugetConfig(processRoot) {
return defaultConfigName; return defaultConfigName;
} }
function writeFeedToFile(feedUrl, existingFileLocation, tempFileLocation) { function writeFeedToFile(feedUrl, existingFileLocation, tempFileLocation) {
var _a, _b;
core.info(`dotnet-auth: Finding any source references in ${existingFileLocation}, writing a new temporary configuration file with credentials to ${tempFileLocation}`); core.info(`dotnet-auth: Finding any source references in ${existingFileLocation}, writing a new temporary configuration file with credentials to ${tempFileLocation}`);
const sourceKeys = []; const sourceKeys = [];
let owner = core.getInput('owner'); let owner = core.getInput('owner');
@@ -99025,7 +99017,7 @@ function writeFeedToFile(feedUrl, existingFileLocation, tempFileLocation) {
if (typeof json.configuration === 'undefined') { if (typeof json.configuration === 'undefined') {
throw new Error(`The provided NuGet.config seems invalid.`); throw new Error(`The provided NuGet.config seems invalid.`);
} }
if (json.configuration?.packageSources?.add) { if ((_b = (_a = json.configuration) === null || _a === void 0 ? void 0 : _a.packageSources) === null || _b === void 0 ? void 0 : _b.add) {
const packageSources = json.configuration.packageSources.add; const packageSources = json.configuration.packageSources.add;
if (Array.isArray(packageSources)) { if (Array.isArray(packageSources)) {
packageSources.forEach(source => { packageSources.forEach(source => {
@@ -99155,23 +99147,22 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
}) : function(o, v) { }) : function(o, v) {
o["default"] = v; o["default"] = v;
}); });
var __importStar = (this && this.__importStar) || (function () { var __importStar = (this && this.__importStar) || function (mod) {
var ownKeys = function(o) { if (mod && mod.__esModule) return mod;
ownKeys = Object.getOwnPropertyNames || function (o) { var result = {};
var ar = []; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; __setModuleDefault(result, mod);
return ar; return result;
}; };
return ownKeys(o); var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
}; function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return function (mod) { return new (P || (P = Promise))(function (resolve, reject) {
if (mod && mod.__esModule) return mod; function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
var result = {}; function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
__setModuleDefault(result, mod); step((generator = generator.apply(thisArg, _arguments || [])).next());
return result; });
}; };
})();
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.restoreCache = void 0; exports.restoreCache = void 0;
const promises_1 = __nccwpck_require__(3977); const promises_1 = __nccwpck_require__(3977);
@@ -99181,9 +99172,9 @@ const core = __importStar(__nccwpck_require__(2186));
const glob = __importStar(__nccwpck_require__(8090)); const glob = __importStar(__nccwpck_require__(8090));
const cache_utils_1 = __nccwpck_require__(1678); const cache_utils_1 = __nccwpck_require__(1678);
const constants_1 = __nccwpck_require__(9042); const constants_1 = __nccwpck_require__(9042);
const restoreCache = async (cacheDependencyPath) => { const restoreCache = (cacheDependencyPath) => __awaiter(void 0, void 0, void 0, function* () {
const lockFilePath = cacheDependencyPath || (await findLockFile()); const lockFilePath = cacheDependencyPath || (yield findLockFile());
const fileHash = await glob.hashFiles(lockFilePath); const fileHash = yield glob.hashFiles(lockFilePath);
if (!fileHash) { if (!fileHash) {
throw new Error('Some specified paths were not resolved, unable to cache dependencies.'); throw new Error('Some specified paths were not resolved, unable to cache dependencies.');
} }
@@ -99191,8 +99182,8 @@ const restoreCache = async (cacheDependencyPath) => {
const primaryKey = `dotnet-cache-${platform}-${fileHash}`; const primaryKey = `dotnet-cache-${platform}-${fileHash}`;
core.debug(`primary key is ${primaryKey}`); core.debug(`primary key is ${primaryKey}`);
core.saveState(constants_1.State.CachePrimaryKey, primaryKey); core.saveState(constants_1.State.CachePrimaryKey, primaryKey);
const { 'global-packages': cachePath } = await (0, cache_utils_1.getNuGetFolderPath)(); const { 'global-packages': cachePath } = yield (0, cache_utils_1.getNuGetFolderPath)();
const cacheKey = await cache.restoreCache([cachePath], primaryKey); const cacheKey = yield cache.restoreCache([cachePath], primaryKey);
core.setOutput(constants_1.Outputs.CacheHit, Boolean(cacheKey)); core.setOutput(constants_1.Outputs.CacheHit, Boolean(cacheKey));
if (!cacheKey) { if (!cacheKey) {
core.info('Dotnet cache is not found'); core.info('Dotnet cache is not found');
@@ -99200,17 +99191,17 @@ const restoreCache = async (cacheDependencyPath) => {
} }
core.saveState(constants_1.State.CacheMatchedKey, cacheKey); core.saveState(constants_1.State.CacheMatchedKey, cacheKey);
core.info(`Cache restored from key: ${cacheKey}`); core.info(`Cache restored from key: ${cacheKey}`);
}; });
exports.restoreCache = restoreCache; exports.restoreCache = restoreCache;
const findLockFile = async () => { const findLockFile = () => __awaiter(void 0, void 0, void 0, function* () {
const workspace = process.env.GITHUB_WORKSPACE; const workspace = process.env.GITHUB_WORKSPACE;
const rootContent = await (0, promises_1.readdir)(workspace); const rootContent = yield (0, promises_1.readdir)(workspace);
const lockFile = constants_1.lockFilePatterns.find(item => rootContent.includes(item)); const lockFile = constants_1.lockFilePatterns.find(item => rootContent.includes(item));
if (!lockFile) { if (!lockFile) {
throw new Error(`Dependencies lock file is not found in ${workspace}. Supported file patterns: ${constants_1.lockFilePatterns.toString()}`); throw new Error(`Dependencies lock file is not found in ${workspace}. Supported file patterns: ${constants_1.lockFilePatterns.toString()}`);
} }
return (0, node_path_1.join)(workspace, lockFile); return (0, node_path_1.join)(workspace, lockFile);
}; });
/***/ }), /***/ }),
@@ -99236,26 +99227,24 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
}) : function(o, v) { }) : function(o, v) {
o["default"] = v; o["default"] = v;
}); });
var __importStar = (this && this.__importStar) || (function () { var __importStar = (this && this.__importStar) || function (mod) {
var ownKeys = function(o) { if (mod && mod.__esModule) return mod;
ownKeys = Object.getOwnPropertyNames || function (o) { var result = {};
var ar = []; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; __setModuleDefault(result, mod);
return ar; return result;
}; };
return ownKeys(o); var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
}; function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return function (mod) { return new (P || (P = Promise))(function (resolve, reject) {
if (mod && mod.__esModule) return mod; function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
var result = {}; function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
__setModuleDefault(result, mod); step((generator = generator.apply(thisArg, _arguments || [])).next());
return result; });
}; };
})();
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getNuGetFolderPath = void 0; exports.isCacheFeatureAvailable = exports.getNuGetFolderPath = void 0;
exports.isCacheFeatureAvailable = isCacheFeatureAvailable;
const cache = __importStar(__nccwpck_require__(7799)); const cache = __importStar(__nccwpck_require__(7799));
const core = __importStar(__nccwpck_require__(2186)); const core = __importStar(__nccwpck_require__(2186));
const exec = __importStar(__nccwpck_require__(1514)); const exec = __importStar(__nccwpck_require__(1514));
@@ -99285,8 +99274,8 @@ const constants_1 = __nccwpck_require__(9042);
* } * }
* ``` * ```
*/ */
const getNuGetFolderPath = async () => { const getNuGetFolderPath = () => __awaiter(void 0, void 0, void 0, function* () {
const { stdout, stderr, exitCode } = await exec.getExecOutput(constants_1.cliCommand, undefined, { ignoreReturnCode: true, silent: true }); const { stdout, stderr, exitCode } = yield exec.getExecOutput(constants_1.cliCommand, undefined, { ignoreReturnCode: true, silent: true });
if (exitCode) { if (exitCode) {
throw new Error(!stderr.trim() throw new Error(!stderr.trim()
? `The '${constants_1.cliCommand}' command failed with exit code: ${exitCode}` ? `The '${constants_1.cliCommand}' command failed with exit code: ${exitCode}`
@@ -99307,7 +99296,7 @@ const getNuGetFolderPath = async () => {
} }
} }
return result; return result;
}; });
exports.getNuGetFolderPath = getNuGetFolderPath; exports.getNuGetFolderPath = getNuGetFolderPath;
function isCacheFeatureAvailable() { function isCacheFeatureAvailable() {
if (cache.isFeatureAvailable()) { if (cache.isFeatureAvailable()) {
@@ -99320,6 +99309,7 @@ function isCacheFeatureAvailable() {
core.warning('The runner was not able to contact the cache service. Caching will be skipped'); core.warning('The runner was not able to contact the cache service. Caching will be skipped');
return false; return false;
} }
exports.isCacheFeatureAvailable = isCacheFeatureAvailable;
/** /**
* Returns this action runs on GitHub Enterprise Server or not. * Returns this action runs on GitHub Enterprise Server or not.
*/ */
@@ -99384,23 +99374,22 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
}) : function(o, v) { }) : function(o, v) {
o["default"] = v; o["default"] = v;
}); });
var __importStar = (this && this.__importStar) || (function () { var __importStar = (this && this.__importStar) || function (mod) {
var ownKeys = function(o) { if (mod && mod.__esModule) return mod;
ownKeys = Object.getOwnPropertyNames || function (o) { var result = {};
var ar = []; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; __setModuleDefault(result, mod);
return ar; return result;
}; };
return ownKeys(o); var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
}; function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return function (mod) { return new (P || (P = Promise))(function (resolve, reject) {
if (mod && mod.__esModule) return mod; function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
var result = {}; function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
__setModuleDefault(result, mod); step((generator = generator.apply(thisArg, _arguments || [])).next());
return result; });
}; };
})();
var __importDefault = (this && this.__importDefault) || function (mod) { var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod }; return (mod && mod.__esModule) ? mod : { "default": mod };
}; };
@@ -99423,22 +99412,25 @@ class DotnetVersionResolver {
this.inputVersion = version.trim(); this.inputVersion = version.trim();
this.resolvedArgument = { type: '', value: '', qualityFlag: false }; this.resolvedArgument = { type: '', value: '', qualityFlag: false };
} }
async resolveVersionInput() { resolveVersionInput() {
if (!semver_1.default.validRange(this.inputVersion) && !this.isLatestPatchSyntax()) { return __awaiter(this, void 0, void 0, function* () {
throw new Error(`The 'dotnet-version' was supplied in invalid format: ${this.inputVersion}! Supported syntax: A.B.C, A.B, A.B.x, A, A.x, A.B.Cxx`); if (!semver_1.default.validRange(this.inputVersion) && !this.isLatestPatchSyntax()) {
} throw new Error(`The 'dotnet-version' was supplied in invalid format: ${this.inputVersion}! Supported syntax: A.B.C, A.B, A.B.x, A, A.x, A.B.Cxx`);
if (semver_1.default.valid(this.inputVersion)) { }
this.createVersionArgument(); if (semver_1.default.valid(this.inputVersion)) {
} this.createVersionArgument();
else { }
await this.createChannelArgument(); else {
} yield this.createChannelArgument();
}
});
} }
isNumericTag(versionTag) { isNumericTag(versionTag) {
return /^\d+$/.test(versionTag); return /^\d+$/.test(versionTag);
} }
isLatestPatchSyntax() { isLatestPatchSyntax() {
const majorTag = this.inputVersion.match(/^(?<majorTag>\d+)\.\d+\.\d{1}x{2}$/)?.groups?.majorTag; var _a, _b;
const majorTag = (_b = (_a = this.inputVersion.match(/^(?<majorTag>\d+)\.\d+\.\d{1}x{2}$/)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.majorTag;
if (majorTag && if (majorTag &&
parseInt(majorTag) < LATEST_PATCH_SYNTAX_MINIMAL_MAJOR_TAG) { parseInt(majorTag) < LATEST_PATCH_SYNTAX_MINIMAL_MAJOR_TAG) {
throw new Error(`The 'dotnet-version' was supplied in invalid format: ${this.inputVersion}! The A.B.Cxx syntax is available since the .NET 5.0 release.`); throw new Error(`The 'dotnet-version' was supplied in invalid format: ${this.inputVersion}! The A.B.Cxx syntax is available since the .NET 5.0 release.`);
@@ -99449,56 +99441,62 @@ class DotnetVersionResolver {
this.resolvedArgument.type = 'version'; this.resolvedArgument.type = 'version';
this.resolvedArgument.value = this.inputVersion; this.resolvedArgument.value = this.inputVersion;
} }
async createChannelArgument() { createChannelArgument() {
this.resolvedArgument.type = 'channel'; return __awaiter(this, void 0, void 0, function* () {
const [major, minor] = this.inputVersion.split('.'); this.resolvedArgument.type = 'channel';
if (this.isLatestPatchSyntax()) { const [major, minor] = this.inputVersion.split('.');
this.resolvedArgument.value = this.inputVersion; if (this.isLatestPatchSyntax()) {
} this.resolvedArgument.value = this.inputVersion;
else if (this.isNumericTag(major) && this.isNumericTag(minor)) { }
this.resolvedArgument.value = `${major}.${minor}`; else if (this.isNumericTag(major) && this.isNumericTag(minor)) {
} this.resolvedArgument.value = `${major}.${minor}`;
else if (this.isNumericTag(major)) { }
this.resolvedArgument.value = await this.getLatestByMajorTag(major); else if (this.isNumericTag(major)) {
} this.resolvedArgument.value = yield this.getLatestByMajorTag(major);
else { }
// If "dotnet-version" is specified as *, x or X resolve latest version of .NET explicitly from LTS channel. The version argument will default to "latest" by install-dotnet script. else {
this.resolvedArgument.value = 'LTS'; // If "dotnet-version" is specified as *, x or X resolve latest version of .NET explicitly from LTS channel. The version argument will default to "latest" by install-dotnet script.
} this.resolvedArgument.value = 'LTS';
this.resolvedArgument.qualityFlag = }
parseInt(major) >= QUALITY_INPUT_MINIMAL_MAJOR_TAG ? true : false; this.resolvedArgument.qualityFlag =
parseInt(major) >= QUALITY_INPUT_MINIMAL_MAJOR_TAG ? true : false;
});
} }
async createDotnetVersion() { createDotnetVersion() {
await this.resolveVersionInput(); return __awaiter(this, void 0, void 0, function* () {
if (!this.resolvedArgument.type) { yield this.resolveVersionInput();
if (!this.resolvedArgument.type) {
return this.resolvedArgument;
}
if (utils_1.IS_WINDOWS) {
this.resolvedArgument.type =
this.resolvedArgument.type === 'channel' ? '-Channel' : '-Version';
}
else {
this.resolvedArgument.type =
this.resolvedArgument.type === 'channel' ? '--channel' : '--version';
}
return this.resolvedArgument; return this.resolvedArgument;
} });
if (utils_1.IS_WINDOWS) {
this.resolvedArgument.type =
this.resolvedArgument.type === 'channel' ? '-Channel' : '-Version';
}
else {
this.resolvedArgument.type =
this.resolvedArgument.type === 'channel' ? '--channel' : '--version';
}
return this.resolvedArgument;
} }
async getLatestByMajorTag(majorTag) { getLatestByMajorTag(majorTag) {
const httpClient = new hc.HttpClient('actions/setup-dotnet', [], { return __awaiter(this, void 0, void 0, function* () {
allowRetries: true, const httpClient = new hc.HttpClient('actions/setup-dotnet', [], {
maxRetries: 3 allowRetries: true,
maxRetries: 3
});
const response = yield httpClient.getJson(DotnetVersionResolver.DotnetCoreIndexUrl);
const result = response.result || {};
const releasesInfo = result['releases-index'];
const releaseInfo = releasesInfo.find(info => {
const sdkParts = info['channel-version'].split('.');
return sdkParts[0] === majorTag;
});
if (!releaseInfo) {
throw new Error(`Could not find info for version with major tag: "${majorTag}" at ${DotnetVersionResolver.DotnetCoreIndexUrl}`);
}
return releaseInfo['channel-version'];
}); });
const response = await httpClient.getJson(DotnetVersionResolver.DotnetCoreIndexUrl);
const result = response.result || {};
const releasesInfo = result['releases-index'];
const releaseInfo = releasesInfo.find(info => {
const sdkParts = info['channel-version'].split('.');
return sdkParts[0] === majorTag;
});
if (!releaseInfo) {
throw new Error(`Could not find info for version with major tag: "${majorTag}" at ${DotnetVersionResolver.DotnetCoreIndexUrl}`);
}
return releaseInfo['channel-version'];
} }
} }
exports.DotnetVersionResolver = DotnetVersionResolver; exports.DotnetVersionResolver = DotnetVersionResolver;
@@ -99538,11 +99536,13 @@ class DotnetInstallScript {
setupScriptBash() { setupScriptBash() {
(0, fs_1.chmodSync)(this.escapedScript, '777'); (0, fs_1.chmodSync)(this.escapedScript, '777');
} }
async getScriptPath() { getScriptPath() {
if (utils_1.IS_WINDOWS) { return __awaiter(this, void 0, void 0, function* () {
return (await io.which('pwsh', false)) || io.which('powershell', true); if (utils_1.IS_WINDOWS) {
} return (yield io.which('pwsh', false)) || io.which('powershell', true);
return io.which(this.escapedScript, true); }
return io.which(this.escapedScript, true);
});
} }
useArguments(...args) { useArguments(...args) {
this.scriptArguments.push(...args); this.scriptArguments.push(...args);
@@ -99561,12 +99561,14 @@ class DotnetInstallScript {
} }
return this; return this;
} }
async execute() { execute() {
const getExecOutputOptions = { return __awaiter(this, void 0, void 0, function* () {
ignoreReturnCode: true, const getExecOutputOptions = {
env: process.env ignoreReturnCode: true,
}; env: process.env
return exec.getExecOutput(`"${await this.getScriptPath()}"`, this.scriptArguments, getExecOutputOptions); };
return exec.getExecOutput(`"${yield this.getScriptPath()}"`, this.scriptArguments, getExecOutputOptions);
});
} }
} }
exports.DotnetInstallScript = DotnetInstallScript; exports.DotnetInstallScript = DotnetInstallScript;
@@ -99601,42 +99603,44 @@ class DotnetCoreInstaller {
this.version = version; this.version = version;
this.quality = quality; this.quality = quality;
} }
async installDotnet() { installDotnet() {
const versionResolver = new DotnetVersionResolver(this.version); return __awaiter(this, void 0, void 0, function* () {
const dotnetVersion = await versionResolver.createDotnetVersion(); const versionResolver = new DotnetVersionResolver(this.version);
/** const dotnetVersion = yield versionResolver.createDotnetVersion();
* Install dotnet runitme first in order to get
* the latest stable version of dotnet CLI
*/
const runtimeInstallOutput = await new DotnetInstallScript()
// If dotnet CLI is already installed - avoid overwriting it
.useArguments(utils_1.IS_WINDOWS ? '-SkipNonVersionedFiles' : '--skip-non-versioned-files')
// Install only runtime + CLI
.useArguments(utils_1.IS_WINDOWS ? '-Runtime' : '--runtime', 'dotnet')
// Use latest stable version
.useArguments(utils_1.IS_WINDOWS ? '-Channel' : '--channel', 'LTS')
.execute();
if (runtimeInstallOutput.exitCode) {
/** /**
* dotnetInstallScript will install CLI and runtime even if previous script haven't succeded, * Install dotnet runitme first in order to get
* so at this point it's too early to throw an error * the latest stable version of dotnet CLI
*/ */
core.warning(`Failed to install dotnet runtime + cli, exit code: ${runtimeInstallOutput.exitCode}. ${runtimeInstallOutput.stderr}`); const runtimeInstallOutput = yield new DotnetInstallScript()
} // If dotnet CLI is already installed - avoid overwriting it
/** .useArguments(utils_1.IS_WINDOWS ? '-SkipNonVersionedFiles' : '--skip-non-versioned-files')
* Install dotnet over the latest version of // Install only runtime + CLI
* dotnet CLI .useArguments(utils_1.IS_WINDOWS ? '-Runtime' : '--runtime', 'dotnet')
*/ // Use latest stable version
const dotnetInstallOutput = await new DotnetInstallScript() .useArguments(utils_1.IS_WINDOWS ? '-Channel' : '--channel', 'LTS')
// Don't overwrite CLI because it should be already installed .execute();
.useArguments(utils_1.IS_WINDOWS ? '-SkipNonVersionedFiles' : '--skip-non-versioned-files') if (runtimeInstallOutput.exitCode) {
// Use version provided by user /**
.useVersion(dotnetVersion, this.quality) * dotnetInstallScript will install CLI and runtime even if previous script haven't succeded,
.execute(); * so at this point it's too early to throw an error
if (dotnetInstallOutput.exitCode) { */
throw new Error(`Failed to install dotnet, exit code: ${dotnetInstallOutput.exitCode}. ${dotnetInstallOutput.stderr}`); core.warning(`Failed to install dotnet runtime + cli, exit code: ${runtimeInstallOutput.exitCode}. ${runtimeInstallOutput.stderr}`);
} }
return this.parseInstalledVersion(dotnetInstallOutput.stdout); /**
* Install dotnet over the latest version of
* dotnet CLI
*/
const dotnetInstallOutput = yield new DotnetInstallScript()
// Don't overwrite CLI because it should be already installed
.useArguments(utils_1.IS_WINDOWS ? '-SkipNonVersionedFiles' : '--skip-non-versioned-files')
// Use version provided by user
.useVersion(dotnetVersion, this.quality)
.execute();
if (dotnetInstallOutput.exitCode) {
throw new Error(`Failed to install dotnet, exit code: ${dotnetInstallOutput.exitCode}. ${dotnetInstallOutput.stderr}`);
}
return this.parseInstalledVersion(dotnetInstallOutput.stdout);
});
} }
parseInstalledVersion(stdout) { parseInstalledVersion(stdout) {
const regex = /(?<version>\d+\.\d+\.\d+[a-z0-9._-]*)/gm; const regex = /(?<version>\d+\.\d+\.\d+[a-z0-9._-]*)/gm;
@@ -99677,28 +99681,27 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
}) : function(o, v) { }) : function(o, v) {
o["default"] = v; o["default"] = v;
}); });
var __importStar = (this && this.__importStar) || (function () { var __importStar = (this && this.__importStar) || function (mod) {
var ownKeys = function(o) { if (mod && mod.__esModule) return mod;
ownKeys = Object.getOwnPropertyNames || function (o) { var result = {};
var ar = []; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; __setModuleDefault(result, mod);
return ar; return result;
}; };
return ownKeys(o); var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
}; function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return function (mod) { return new (P || (P = Promise))(function (resolve, reject) {
if (mod && mod.__esModule) return mod; function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
var result = {}; function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
__setModuleDefault(result, mod); step((generator = generator.apply(thisArg, _arguments || [])).next());
return result; });
}; };
})();
var __importDefault = (this && this.__importDefault) || function (mod) { var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod }; return (mod && mod.__esModule) ? mod : { "default": mod };
}; };
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.run = run; exports.run = void 0;
const core = __importStar(__nccwpck_require__(2186)); const core = __importStar(__nccwpck_require__(2186));
const installer_1 = __nccwpck_require__(2574); const installer_1 = __nccwpck_require__(2574);
const fs = __importStar(__nccwpck_require__(7147)); const fs = __importStar(__nccwpck_require__(7147));
@@ -99716,69 +99719,72 @@ const qualityOptions = [
'preview', 'preview',
'ga' 'ga'
]; ];
async function run() { function run() {
try { return __awaiter(this, void 0, void 0, function* () {
// try {
// dotnet-version is optional, but needs to be provided for most use cases. //
// If supplied, install / use from the tool cache. // dotnet-version is optional, but needs to be provided for most use cases.
// global-version-file may be specified to point to a specific global.json // If supplied, install / use from the tool cache.
// and will be used to install an additional version. // global-version-file may be specified to point to a specific global.json
// If not supplied, look for version in ./global.json. // and will be used to install an additional version.
// If a valid version still can't be identified, nothing will be installed. // If not supplied, look for version in ./global.json.
// Proxy, auth, (etc) are still set up, even if no version is identified // If a valid version still can't be identified, nothing will be installed.
// // Proxy, auth, (etc) are still set up, even if no version is identified
const versions = core.getMultilineInput('dotnet-version'); //
const installedDotnetVersions = []; const versions = core.getMultilineInput('dotnet-version');
const globalJsonFileInput = core.getInput('global-json-file'); const installedDotnetVersions = [];
if (globalJsonFileInput) { const globalJsonFileInput = core.getInput('global-json-file');
const globalJsonPath = path_1.default.resolve(process.cwd(), globalJsonFileInput); if (globalJsonFileInput) {
if (!fs.existsSync(globalJsonPath)) { const globalJsonPath = path_1.default.resolve(process.cwd(), globalJsonFileInput);
throw new Error(`The specified global.json file '${globalJsonFileInput}' does not exist`); if (!fs.existsSync(globalJsonPath)) {
} throw new Error(`The specified global.json file '${globalJsonFileInput}' does not exist`);
versions.push(getVersionFromGlobalJson(globalJsonPath)); }
}
if (!versions.length) {
// Try to fall back to global.json
core.debug('No version found, trying to find version from global.json');
const globalJsonPath = path_1.default.join(process.cwd(), 'global.json');
if (fs.existsSync(globalJsonPath)) {
versions.push(getVersionFromGlobalJson(globalJsonPath)); versions.push(getVersionFromGlobalJson(globalJsonPath));
} }
else { if (!versions.length) {
core.info(`The global.json wasn't found in the root directory. No .NET version will be installed.`); // Try to fall back to global.json
core.debug('No version found, trying to find version from global.json');
const globalJsonPath = path_1.default.join(process.cwd(), 'global.json');
if (fs.existsSync(globalJsonPath)) {
versions.push(getVersionFromGlobalJson(globalJsonPath));
}
else {
core.info(`The global.json wasn't found in the root directory. No .NET version will be installed.`);
}
} }
} if (versions.length) {
if (versions.length) { const quality = core.getInput('dotnet-quality');
const quality = core.getInput('dotnet-quality'); if (quality && !qualityOptions.includes(quality)) {
if (quality && !qualityOptions.includes(quality)) { throw new Error(`Value '${quality}' is not supported for the 'dotnet-quality' option. Supported values are: daily, signed, validated, preview, ga.`);
throw new Error(`Value '${quality}' is not supported for the 'dotnet-quality' option. Supported values are: daily, signed, validated, preview, ga.`); }
let dotnetInstaller;
const uniqueVersions = new Set(versions);
for (const version of uniqueVersions) {
dotnetInstaller = new installer_1.DotnetCoreInstaller(version, quality);
const installedVersion = yield dotnetInstaller.installDotnet();
installedDotnetVersions.push(installedVersion);
}
installer_1.DotnetInstallDir.addToPath();
} }
let dotnetInstaller; const sourceUrl = core.getInput('source-url');
const uniqueVersions = new Set(versions); const configFile = core.getInput('config-file');
for (const version of uniqueVersions) { if (sourceUrl) {
dotnetInstaller = new installer_1.DotnetCoreInstaller(version, quality); auth.configAuthentication(sourceUrl, configFile);
const installedVersion = await dotnetInstaller.installDotnet();
installedDotnetVersions.push(installedVersion);
} }
installer_1.DotnetInstallDir.addToPath(); outputInstalledVersion(installedDotnetVersions, globalJsonFileInput);
if (core.getBooleanInput('cache') && (0, cache_utils_1.isCacheFeatureAvailable)()) {
const cacheDependencyPath = core.getInput('cache-dependency-path');
yield (0, cache_restore_1.restoreCache)(cacheDependencyPath);
}
const matchersPath = path_1.default.join(__dirname, '..', '..', '.github');
core.info(`##[add-matcher]${path_1.default.join(matchersPath, 'csc.json')}`);
} }
const sourceUrl = core.getInput('source-url'); catch (error) {
const configFile = core.getInput('config-file'); core.setFailed(error.message);
if (sourceUrl) {
auth.configAuthentication(sourceUrl, configFile);
} }
outputInstalledVersion(installedDotnetVersions, globalJsonFileInput); });
if (core.getBooleanInput('cache') && (0, cache_utils_1.isCacheFeatureAvailable)()) {
const cacheDependencyPath = core.getInput('cache-dependency-path');
await (0, cache_restore_1.restoreCache)(cacheDependencyPath);
}
const matchersPath = path_1.default.join(__dirname, '..', '..', '.github');
core.info(`##[add-matcher]${path_1.default.join(matchersPath, 'csc.json')}`);
}
catch (error) {
core.setFailed(error.message);
}
} }
exports.run = run;
function getVersionFromGlobalJson(globalJsonPath) { function getVersionFromGlobalJson(globalJsonPath) {
let version = ''; let version = '';
const globalJson = json5_1.default.parse( const globalJson = json5_1.default.parse(

26
package-lock.json generated
View File

@@ -28,7 +28,7 @@
"@typescript-eslint/parser": "^7.3.0", "@typescript-eslint/parser": "^7.3.0",
"@vercel/ncc": "^0.38.1", "@vercel/ncc": "^0.38.1",
"eslint": "^8.57.0", "eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0", "eslint-config-prettier": "^10.1.5",
"eslint-plugin-jest": "^27.9.0", "eslint-plugin-jest": "^27.9.0",
"eslint-plugin-node": "^11.1.0", "eslint-plugin-node": "^11.1.0",
"husky": "^9.1.7", "husky": "^9.1.7",
@@ -37,7 +37,7 @@
"jest-each": "^29.7.0", "jest-each": "^29.7.0",
"prettier": "^3.2.5", "prettier": "^3.2.5",
"ts-jest": "^29.1.2", "ts-jest": "^29.1.2",
"typescript": "^5.8.3", "typescript": "^5.4.2",
"wget-improved": "^3.2.1" "wget-improved": "^3.2.1"
} }
}, },
@@ -3119,13 +3119,16 @@
} }
}, },
"node_modules/eslint-config-prettier": { "node_modules/eslint-config-prettier": {
"version": "9.1.0", "version": "10.1.5",
"resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.5.tgz",
"integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", "integrity": "sha512-zc1UmCpNltmVY34vuLRV61r1K27sWuX39E+uyUnY8xS2Bex88VV9cugG+UZbRSRGtGyFboj+D8JODyme1plMpw==",
"dev": true, "dev": true,
"bin": { "bin": {
"eslint-config-prettier": "bin/cli.js" "eslint-config-prettier": "bin/cli.js"
}, },
"funding": {
"url": "https://opencollective.com/eslint-config-prettier"
},
"peerDependencies": { "peerDependencies": {
"eslint": ">=7.0.0" "eslint": ">=7.0.0"
} }
@@ -5789,11 +5792,10 @@
} }
}, },
"node_modules/typescript": { "node_modules/typescript": {
"version": "5.8.3", "version": "5.4.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.2.tgz",
"integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", "integrity": "sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==",
"dev": true, "dev": true,
"license": "Apache-2.0",
"bin": { "bin": {
"tsc": "bin/tsc", "tsc": "bin/tsc",
"tsserver": "bin/tsserver" "tsserver": "bin/tsserver"
@@ -5803,9 +5805,9 @@
} }
}, },
"node_modules/undici": { "node_modules/undici": {
"version": "5.28.5", "version": "5.29.0",
"resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz", "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
"integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==", "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@fastify/busboy": "^2.0.0" "@fastify/busboy": "^2.0.0"

View File

@@ -45,7 +45,7 @@
"@typescript-eslint/parser": "^7.3.0", "@typescript-eslint/parser": "^7.3.0",
"@vercel/ncc": "^0.38.1", "@vercel/ncc": "^0.38.1",
"eslint": "^8.57.0", "eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0", "eslint-config-prettier": "^10.1.5",
"eslint-plugin-jest": "^27.9.0", "eslint-plugin-jest": "^27.9.0",
"eslint-plugin-node": "^11.1.0", "eslint-plugin-node": "^11.1.0",
"husky": "^9.1.7", "husky": "^9.1.7",
@@ -54,7 +54,7 @@
"jest-each": "^29.7.0", "jest-each": "^29.7.0",
"prettier": "^3.2.5", "prettier": "^3.2.5",
"ts-jest": "^29.1.2", "ts-jest": "^29.1.2",
"typescript": "^5.8.3", "typescript": "^5.4.2",
"wget-improved": "^3.2.1" "wget-improved": "^3.2.1"
}, },
"jest": { "jest": {

View File

@@ -2,7 +2,7 @@
"compilerOptions": { "compilerOptions": {
/* Basic Options */ /* Basic Options */
// "incremental": true, /* Enable incremental compilation */ // "incremental": true, /* Enable incremental compilation */
"target": "es2021", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */ "target": "es6", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */
"module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
"lib": [ "lib": [
"es6" "es6"