mirror of
				https://gitea.com/actions/setup-python.git
				synced 2025-11-04 07:47:09 +00:00 
			
		
		
		
	Compare commits
	
		
			7 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					152ba7c4dd | ||
| 
						 | 
					da8703fb23 | ||
| 
						 | 
					accf675719 | ||
| 
						 | 
					614aa4aa1e | ||
| 
						 | 
					53d19faf05 | ||
| 
						 | 
					948e5343c7 | ||
| 
						 | 
					bdd6409dc1 | 
							
								
								
									
										127
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										127
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							@@ -1243,6 +1243,32 @@ class SemVer {
 | 
				
			|||||||
module.exports = SemVer
 | 
					module.exports = SemVer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/***/ }),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/***/ 82:
 | 
				
			||||||
 | 
					/***/ (function(__unusedmodule, exports) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					"use strict";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// We use any as a valid input type
 | 
				
			||||||
 | 
					/* eslint-disable @typescript-eslint/no-explicit-any */
 | 
				
			||||||
 | 
					Object.defineProperty(exports, "__esModule", { value: true });
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Sanitizes an input into a string so it can be passed into issueCommand safely
 | 
				
			||||||
 | 
					 * @param input input to sanitize into a string
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					function toCommandValue(input) {
 | 
				
			||||||
 | 
					    if (input === null || input === undefined) {
 | 
				
			||||||
 | 
					        return '';
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (typeof input === 'string' || input instanceof String) {
 | 
				
			||||||
 | 
					        return input;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return JSON.stringify(input);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					exports.toCommandValue = toCommandValue;
 | 
				
			||||||
 | 
					//# sourceMappingURL=utils.js.map
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/***/ }),
 | 
					/***/ }),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/***/ 87:
 | 
					/***/ 87:
 | 
				
			||||||
@@ -1252,6 +1278,42 @@ module.exports = require("os");
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
/***/ }),
 | 
					/***/ }),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/***/ 102:
 | 
				
			||||||
 | 
					/***/ (function(__unusedmodule, exports, __webpack_require__) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					"use strict";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// For internal use, subject to change.
 | 
				
			||||||
 | 
					var __importStar = (this && this.__importStar) || function (mod) {
 | 
				
			||||||
 | 
					    if (mod && mod.__esModule) return mod;
 | 
				
			||||||
 | 
					    var result = {};
 | 
				
			||||||
 | 
					    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
 | 
				
			||||||
 | 
					    result["default"] = mod;
 | 
				
			||||||
 | 
					    return result;
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					Object.defineProperty(exports, "__esModule", { value: true });
 | 
				
			||||||
 | 
					// We use any as a valid input type
 | 
				
			||||||
 | 
					/* eslint-disable @typescript-eslint/no-explicit-any */
 | 
				
			||||||
 | 
					const fs = __importStar(__webpack_require__(747));
 | 
				
			||||||
 | 
					const os = __importStar(__webpack_require__(87));
 | 
				
			||||||
 | 
					const utils_1 = __webpack_require__(82);
 | 
				
			||||||
 | 
					function issueCommand(command, message) {
 | 
				
			||||||
 | 
					    const filePath = process.env[`GITHUB_${command}`];
 | 
				
			||||||
 | 
					    if (!filePath) {
 | 
				
			||||||
 | 
					        throw new Error(`Unable to find environment variable for file command ${command}`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    if (!fs.existsSync(filePath)) {
 | 
				
			||||||
 | 
					        throw new Error(`Missing file at path: ${filePath}`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    fs.appendFileSync(filePath, `${utils_1.toCommandValue(message)}${os.EOL}`, {
 | 
				
			||||||
 | 
					        encoding: 'utf8'
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					exports.issueCommand = issueCommand;
 | 
				
			||||||
 | 
					//# sourceMappingURL=file-command.js.map
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/***/ }),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/***/ 120:
 | 
					/***/ 120:
 | 
				
			||||||
/***/ (function(module, __unusedexports, __webpack_require__) {
 | 
					/***/ (function(module, __unusedexports, __webpack_require__) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -2422,6 +2484,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
 | 
				
			|||||||
};
 | 
					};
 | 
				
			||||||
Object.defineProperty(exports, "__esModule", { value: true });
 | 
					Object.defineProperty(exports, "__esModule", { value: true });
 | 
				
			||||||
const os = __importStar(__webpack_require__(87));
 | 
					const os = __importStar(__webpack_require__(87));
 | 
				
			||||||
 | 
					const utils_1 = __webpack_require__(82);
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * Commands
 | 
					 * Commands
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
@@ -2476,13 +2539,13 @@ class Command {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
function escapeData(s) {
 | 
					function escapeData(s) {
 | 
				
			||||||
    return (s || '')
 | 
					    return utils_1.toCommandValue(s)
 | 
				
			||||||
        .replace(/%/g, '%25')
 | 
					        .replace(/%/g, '%25')
 | 
				
			||||||
        .replace(/\r/g, '%0D')
 | 
					        .replace(/\r/g, '%0D')
 | 
				
			||||||
        .replace(/\n/g, '%0A');
 | 
					        .replace(/\n/g, '%0A');
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
function escapeProperty(s) {
 | 
					function escapeProperty(s) {
 | 
				
			||||||
    return (s || '')
 | 
					    return utils_1.toCommandValue(s)
 | 
				
			||||||
        .replace(/%/g, '%25')
 | 
					        .replace(/%/g, '%25')
 | 
				
			||||||
        .replace(/\r/g, '%0D')
 | 
					        .replace(/\r/g, '%0D')
 | 
				
			||||||
        .replace(/\n/g, '%0A')
 | 
					        .replace(/\n/g, '%0A')
 | 
				
			||||||
@@ -2603,6 +2666,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
 | 
				
			|||||||
};
 | 
					};
 | 
				
			||||||
Object.defineProperty(exports, "__esModule", { value: true });
 | 
					Object.defineProperty(exports, "__esModule", { value: true });
 | 
				
			||||||
const command_1 = __webpack_require__(431);
 | 
					const command_1 = __webpack_require__(431);
 | 
				
			||||||
 | 
					const file_command_1 = __webpack_require__(102);
 | 
				
			||||||
 | 
					const utils_1 = __webpack_require__(82);
 | 
				
			||||||
const os = __importStar(__webpack_require__(87));
 | 
					const os = __importStar(__webpack_require__(87));
 | 
				
			||||||
const path = __importStar(__webpack_require__(622));
 | 
					const path = __importStar(__webpack_require__(622));
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
@@ -2625,11 +2690,21 @@ var ExitCode;
 | 
				
			|||||||
/**
 | 
					/**
 | 
				
			||||||
 * Sets env variable for this action and future actions in the job
 | 
					 * Sets env variable for this action and future actions in the job
 | 
				
			||||||
 * @param name the name of the variable to set
 | 
					 * @param name the name of the variable to set
 | 
				
			||||||
 * @param val the value of the variable
 | 
					 * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					// eslint-disable-next-line @typescript-eslint/no-explicit-any
 | 
				
			||||||
function exportVariable(name, val) {
 | 
					function exportVariable(name, val) {
 | 
				
			||||||
    process.env[name] = val;
 | 
					    const convertedVal = utils_1.toCommandValue(val);
 | 
				
			||||||
    command_1.issueCommand('set-env', { name }, val);
 | 
					    process.env[name] = convertedVal;
 | 
				
			||||||
 | 
					    const filePath = process.env['GITHUB_ENV'] || '';
 | 
				
			||||||
 | 
					    if (filePath) {
 | 
				
			||||||
 | 
					        const delimiter = '_GitHubActionsFileCommandDelimeter_';
 | 
				
			||||||
 | 
					        const commandValue = `${name}<<${delimiter}${os.EOL}${convertedVal}${os.EOL}${delimiter}`;
 | 
				
			||||||
 | 
					        file_command_1.issueCommand('ENV', commandValue);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else {
 | 
				
			||||||
 | 
					        command_1.issueCommand('set-env', { name }, convertedVal);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
exports.exportVariable = exportVariable;
 | 
					exports.exportVariable = exportVariable;
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
@@ -2645,7 +2720,13 @@ exports.setSecret = setSecret;
 | 
				
			|||||||
 * @param inputPath
 | 
					 * @param inputPath
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
function addPath(inputPath) {
 | 
					function addPath(inputPath) {
 | 
				
			||||||
    command_1.issueCommand('add-path', {}, inputPath);
 | 
					    const filePath = process.env['GITHUB_PATH'] || '';
 | 
				
			||||||
 | 
					    if (filePath) {
 | 
				
			||||||
 | 
					        file_command_1.issueCommand('PATH', inputPath);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else {
 | 
				
			||||||
 | 
					        command_1.issueCommand('add-path', {}, inputPath);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
    process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;
 | 
					    process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
exports.addPath = addPath;
 | 
					exports.addPath = addPath;
 | 
				
			||||||
@@ -2668,12 +2749,22 @@ exports.getInput = getInput;
 | 
				
			|||||||
 * Sets the value of an output.
 | 
					 * Sets the value of an output.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * @param     name     name of the output to set
 | 
					 * @param     name     name of the output to set
 | 
				
			||||||
 * @param     value    value to store
 | 
					 * @param     value    value to store. Non-string values will be converted to a string via JSON.stringify
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					// eslint-disable-next-line @typescript-eslint/no-explicit-any
 | 
				
			||||||
function setOutput(name, value) {
 | 
					function setOutput(name, value) {
 | 
				
			||||||
    command_1.issueCommand('set-output', { name }, value);
 | 
					    command_1.issueCommand('set-output', { name }, value);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
exports.setOutput = setOutput;
 | 
					exports.setOutput = setOutput;
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Enables or disables the echoing of commands into stdout for the rest of the step.
 | 
				
			||||||
 | 
					 * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					function setCommandEcho(enabled) {
 | 
				
			||||||
 | 
					    command_1.issue('echo', enabled ? 'on' : 'off');
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					exports.setCommandEcho = setCommandEcho;
 | 
				
			||||||
//-----------------------------------------------------------------------
 | 
					//-----------------------------------------------------------------------
 | 
				
			||||||
// Results
 | 
					// Results
 | 
				
			||||||
//-----------------------------------------------------------------------
 | 
					//-----------------------------------------------------------------------
 | 
				
			||||||
@@ -2707,18 +2798,18 @@ function debug(message) {
 | 
				
			|||||||
exports.debug = debug;
 | 
					exports.debug = debug;
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * Adds an error issue
 | 
					 * Adds an error issue
 | 
				
			||||||
 * @param message error issue message
 | 
					 * @param message error issue message. Errors will be converted to string via toString()
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
function error(message) {
 | 
					function error(message) {
 | 
				
			||||||
    command_1.issue('error', message);
 | 
					    command_1.issue('error', message instanceof Error ? message.toString() : message);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
exports.error = error;
 | 
					exports.error = error;
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * Adds an warning issue
 | 
					 * Adds an warning issue
 | 
				
			||||||
 * @param message warning issue message
 | 
					 * @param message warning issue message. Errors will be converted to string via toString()
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
function warning(message) {
 | 
					function warning(message) {
 | 
				
			||||||
    command_1.issue('warning', message);
 | 
					    command_1.issue('warning', message instanceof Error ? message.toString() : message);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
exports.warning = warning;
 | 
					exports.warning = warning;
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
@@ -2776,8 +2867,9 @@ exports.group = group;
 | 
				
			|||||||
 * Saves state for current action, the state can only be retrieved by this action's post job execution.
 | 
					 * Saves state for current action, the state can only be retrieved by this action's post job execution.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * @param     name     name of the state to store
 | 
					 * @param     name     name of the state to store
 | 
				
			||||||
 * @param     value    value to store
 | 
					 * @param     value    value to store. Non-string values will be converted to a string via JSON.stringify
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					// eslint-disable-next-line @typescript-eslint/no-explicit-any
 | 
				
			||||||
function saveState(name, value) {
 | 
					function saveState(name, value) {
 | 
				
			||||||
    command_1.issueCommand('save-state', { name }, value);
 | 
					    command_1.issueCommand('save-state', { name }, value);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -6325,7 +6417,7 @@ function binDir(installDir) {
 | 
				
			|||||||
// For example, PyPy 7.0 contains Python 2.7, 3.5, and 3.6-alpha.
 | 
					// For example, PyPy 7.0 contains Python 2.7, 3.5, and 3.6-alpha.
 | 
				
			||||||
// We only care about the Python version, so we don't use the PyPy version for the tool cache.
 | 
					// We only care about the Python version, so we don't use the PyPy version for the tool cache.
 | 
				
			||||||
function usePyPy(majorVersion, architecture) {
 | 
					function usePyPy(majorVersion, architecture) {
 | 
				
			||||||
    const findPyPy = tc.find.bind(undefined, 'PyPy', majorVersion.toString());
 | 
					    const findPyPy = tc.find.bind(undefined, 'PyPy', majorVersion);
 | 
				
			||||||
    let installDir = findPyPy(architecture);
 | 
					    let installDir = findPyPy(architecture);
 | 
				
			||||||
    if (!installDir && IS_WINDOWS) {
 | 
					    if (!installDir && IS_WINDOWS) {
 | 
				
			||||||
        // PyPy only precompiles binaries for x86, but the architecture parameter defaults to x64.
 | 
					        // PyPy only precompiles binaries for x86, but the architecture parameter defaults to x64.
 | 
				
			||||||
@@ -6345,6 +6437,10 @@ function usePyPy(majorVersion, architecture) {
 | 
				
			|||||||
    core.exportVariable('pythonLocation', pythonLocation);
 | 
					    core.exportVariable('pythonLocation', pythonLocation);
 | 
				
			||||||
    core.addPath(installDir);
 | 
					    core.addPath(installDir);
 | 
				
			||||||
    core.addPath(_binDir);
 | 
					    core.addPath(_binDir);
 | 
				
			||||||
 | 
					    // Starting from PyPy 7.3.1, the folder that is used for pip and anything that pip installs should be "Scripts" on Windows.
 | 
				
			||||||
 | 
					    if (IS_WINDOWS) {
 | 
				
			||||||
 | 
					        core.addPath(path.join(installDir, 'Scripts'));
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
    const impl = 'pypy' + majorVersion.toString();
 | 
					    const impl = 'pypy' + majorVersion.toString();
 | 
				
			||||||
    core.setOutput('python-version', impl);
 | 
					    core.setOutput('python-version', impl);
 | 
				
			||||||
    return { impl: impl, version: versionFromPath(installDir) };
 | 
					    return { impl: impl, version: versionFromPath(installDir) };
 | 
				
			||||||
@@ -6421,9 +6517,10 @@ function findPythonVersion(version, architecture) {
 | 
				
			|||||||
    return __awaiter(this, void 0, void 0, function* () {
 | 
					    return __awaiter(this, void 0, void 0, function* () {
 | 
				
			||||||
        switch (version.toUpperCase()) {
 | 
					        switch (version.toUpperCase()) {
 | 
				
			||||||
            case 'PYPY2':
 | 
					            case 'PYPY2':
 | 
				
			||||||
                return usePyPy(2, architecture);
 | 
					                return usePyPy('2', architecture);
 | 
				
			||||||
            case 'PYPY3':
 | 
					            case 'PYPY3':
 | 
				
			||||||
                return usePyPy(3, architecture);
 | 
					                // keep pypy3 pointing to 3.6 for backward compatibility
 | 
				
			||||||
 | 
					                return usePyPy('3.6', architecture);
 | 
				
			||||||
            default:
 | 
					            default:
 | 
				
			||||||
                return yield useCpythonVersion(version, architecture);
 | 
					                return yield useCpythonVersion(version, architecture);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										6
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										6
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							@@ -5,9 +5,9 @@
 | 
				
			|||||||
  "requires": true,
 | 
					  "requires": true,
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "@actions/core": {
 | 
					    "@actions/core": {
 | 
				
			||||||
      "version": "1.2.3",
 | 
					      "version": "1.2.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.2.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.2.6.tgz",
 | 
				
			||||||
      "integrity": "sha512-Wp4xnyokakM45Uuj4WLUxdsa8fJjKVl1fDTsPbTEcTcuu0Nb26IPQbOtjmnfaCPGcaoPOOqId8H9NapZ8gii4w=="
 | 
					      "integrity": "sha512-ZQYitnqiyBc3D+k7LsgSBmMDVkOVidaagDG7j3fOym77jNunWRuYx7VSHa9GNfFZh+zh61xsCjRj4JxMZlDqTA=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@actions/exec": {
 | 
					    "@actions/exec": {
 | 
				
			||||||
      "version": "1.0.3",
 | 
					      "version": "1.0.3",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -23,7 +23,7 @@
 | 
				
			|||||||
  "author": "GitHub",
 | 
					  "author": "GitHub",
 | 
				
			||||||
  "license": "MIT",
 | 
					  "license": "MIT",
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "@actions/core": "^1.2.3",
 | 
					    "@actions/core": "^1.2.6",
 | 
				
			||||||
    "semver": "^7.1.3"
 | 
					    "semver": "^7.1.3"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -51,8 +51,11 @@ function binDir(installDir: string): string {
 | 
				
			|||||||
// A particular version of PyPy may contain one or more versions of the Python interpreter.
 | 
					// A particular version of PyPy may contain one or more versions of the Python interpreter.
 | 
				
			||||||
// For example, PyPy 7.0 contains Python 2.7, 3.5, and 3.6-alpha.
 | 
					// For example, PyPy 7.0 contains Python 2.7, 3.5, and 3.6-alpha.
 | 
				
			||||||
// We only care about the Python version, so we don't use the PyPy version for the tool cache.
 | 
					// We only care about the Python version, so we don't use the PyPy version for the tool cache.
 | 
				
			||||||
function usePyPy(majorVersion: 2 | 3, architecture: string): InstalledVersion {
 | 
					function usePyPy(
 | 
				
			||||||
  const findPyPy = tc.find.bind(undefined, 'PyPy', majorVersion.toString());
 | 
					  majorVersion: '2' | '3.6',
 | 
				
			||||||
 | 
					  architecture: string
 | 
				
			||||||
 | 
					): InstalledVersion {
 | 
				
			||||||
 | 
					  const findPyPy = tc.find.bind(undefined, 'PyPy', majorVersion);
 | 
				
			||||||
  let installDir: string | null = findPyPy(architecture);
 | 
					  let installDir: string | null = findPyPy(architecture);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (!installDir && IS_WINDOWS) {
 | 
					  if (!installDir && IS_WINDOWS) {
 | 
				
			||||||
@@ -77,6 +80,10 @@ function usePyPy(majorVersion: 2 | 3, architecture: string): InstalledVersion {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  core.addPath(installDir);
 | 
					  core.addPath(installDir);
 | 
				
			||||||
  core.addPath(_binDir);
 | 
					  core.addPath(_binDir);
 | 
				
			||||||
 | 
					  // Starting from PyPy 7.3.1, the folder that is used for pip and anything that pip installs should be "Scripts" on Windows.
 | 
				
			||||||
 | 
					  if (IS_WINDOWS) {
 | 
				
			||||||
 | 
					    core.addPath(path.join(installDir, 'Scripts'));
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const impl = 'pypy' + majorVersion.toString();
 | 
					  const impl = 'pypy' + majorVersion.toString();
 | 
				
			||||||
  core.setOutput('python-version', impl);
 | 
					  core.setOutput('python-version', impl);
 | 
				
			||||||
@@ -186,9 +193,10 @@ export async function findPythonVersion(
 | 
				
			|||||||
): Promise<InstalledVersion> {
 | 
					): Promise<InstalledVersion> {
 | 
				
			||||||
  switch (version.toUpperCase()) {
 | 
					  switch (version.toUpperCase()) {
 | 
				
			||||||
    case 'PYPY2':
 | 
					    case 'PYPY2':
 | 
				
			||||||
      return usePyPy(2, architecture);
 | 
					      return usePyPy('2', architecture);
 | 
				
			||||||
    case 'PYPY3':
 | 
					    case 'PYPY3':
 | 
				
			||||||
      return usePyPy(3, architecture);
 | 
					      // keep pypy3 pointing to 3.6 for backward compatibility
 | 
				
			||||||
 | 
					      return usePyPy('3.6', architecture);
 | 
				
			||||||
    default:
 | 
					    default:
 | 
				
			||||||
      return await useCpythonVersion(version, architecture);
 | 
					      return await useCpythonVersion(version, architecture);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user