UNPKG

4.17 kBJavaScriptView Raw
1// import os from 'os';
2// import * as path from 'path';
3// import userHome from './util/user-home-dir.js';
4// import {getCacheDir, getConfigDir, getDataDir} from './util/user-dirs.js';
5export const DEPENDENCY_TYPES = ['devDependencies', 'dependencies', 'legacyDependencies'];
6// export const OWNED_DEPENDENCY_TYPES = ['devDependencies', 'dependencies', 'legacyDependencies'];
7export const RESOLUTIONS = 'resolutions';
8export const MANIFEST_FIELDS = [RESOLUTIONS, ...DEPENDENCY_TYPES];
9export const SUPPORTED_NODE_VERSIONS = '>=8.5.0';
10// export const PIKA_REGISTRY = 'https://registry.npmjs.org';
11// export const NPM_REGISTRY_RE = /https?:\/\/registry\.npmjs\.org/g;
12// export const PIKA_DOCS = 'https://yarnpkg.com/en/docs/cli/';
13// export const PIKA_INSTALLER_SH = 'https://yarnpkg.com/install.sh';
14// export const PIKA_INSTALLER_MSI = 'https://yarnpkg.com/latest.msi';
15// export const SELF_UPDATE_VERSION_URL = 'https://www.pikapkg.com/downloads/latest-version';
16// // cache version, bump whenever we make backwards incompatible changes
17// export const CACHE_VERSION = 3;
18// // lockfile version, bump whenever we make backwards incompatible changes
19// export const LOCKFILE_VERSION = 1;
20// // max amount of network requests to perform concurrently
21// export const NETWORK_CONCURRENCY = 8;
22// // HTTP timeout used when downloading packages
23// export const NETWORK_TIMEOUT = 30 * 1000; // in milliseconds
24// // max amount of child processes to execute concurrently
25export const CHILD_CONCURRENCY = 5;
26// export const REQUIRED_PACKAGE_KEYS = ['name', 'version', '_uid'];
27// function getPreferredCacheDirectories(): Array<string> {
28// const preferredCacheDirectories = [getCacheDir()];
29// if (process.getuid) {
30// // $FlowFixMe: process.getuid exists, dammit
31// preferredCacheDirectories.push(path.join(os.tmpdir(), `.pika-cache-${process.getuid()}`));
32// }
33// preferredCacheDirectories.push(path.join(os.tmpdir(), `.pika-cache`));
34// return preferredCacheDirectories;
35// }
36// export const PREFERRED_MODULE_CACHE_DIRECTORIES = getPreferredCacheDirectories();
37// export const CONFIG_DIRECTORY = getConfigDir();
38// export const DATA_DIRECTORY = getDataDir();
39// export const LINK_REGISTRY_DIRECTORY = path.join(DATA_DIRECTORY, 'link');
40// export const GLOBAL_MODULE_DIRECTORY = path.join(DATA_DIRECTORY, 'global');
41// export const NODE_BIN_PATH = process.execPath;
42export const NODE_MODULES_FOLDER = 'node_modules';
43export const NODE_PACKAGE_JSON = 'package.json';
44// export const PNP_FILENAME = '.pnp';
45// export const POSIX_GLOBAL_PREFIX = `${process.env.DESTDIR || ''}/usr/local`;
46// export const FALLBACK_GLOBAL_PREFIX = path.join(userHome, '.pika');
47// export const META_FOLDER = '.pika-meta';
48// export const INTEGRITY_FILENAME = '.pika-integrity';
49// export const LOCKFILE_FILENAME = 'pika.lock';
50// export const LEGACY_LOCKFILE_FILENAME = 'yarn.lock';
51// export const METADATA_FILENAME = '.pika-metadata.json';
52// export const TARBALL_FILENAME = '.pika-tarball.tgz';
53// export const CLEAN_FILENAME = '.pikaclean';
54// export const NPM_LOCK_FILENAME = 'package-lock.json';
55// export const NPM_SHRINKWRAP_FILENAME = 'npm-shrinkwrap.json';
56export const DEFAULT_INDENT = ' ';
57// export const SINGLE_INSTANCE_PORT = 31997;
58// export const SINGLE_INSTANCE_FILENAME = '.pika-single-instance';
59export const ENV_PATH_KEY = getPathKey(process.platform, process.env);
60export function getPathKey(platform, env) {
61 let pathKey = 'PATH';
62 // windows calls its path "Path" usually, but this is not guaranteed.
63 if (platform === 'win32') {
64 pathKey = 'Path';
65 for (const key in env) {
66 if (key.toLowerCase() === 'path') {
67 pathKey = key;
68 }
69 }
70 }
71 return pathKey;
72}
73// export const VERSION_COLOR_SCHEME: {[key: string]: VersionColor} = {
74// major: 'red',
75// premajor: 'red',
76// minor: 'yellow',
77// preminor: 'yellow',
78// patch: 'green',
79// prepatch: 'green',
80// prerelease: 'red',
81// unchanged: 'white',
82// unknown: 'red',
83// };
84// export type VersionColor = 'red' | 'yellow' | 'green' | 'white';
85// export type RequestHint = 'dev' | 'optional' | 'resolution' | 'workspaces';