New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use our mirror of the registry rather than the existing one #557

Merged
merged 1 commit into from Oct 9, 2016
Jump to file or symbol
Failed to load files and symbols.
+17 −3
Diff settings

Always

Just for now

Use our mirror of the registry rather than the existing one

  • Loading branch information...
kittens committed Oct 9, 2016
commit f867f76caf940f4d4f61a00caabdfbf066e16631
View
@@ -15,6 +15,8 @@ export const DEPENDENCY_TYPES = [
'peerDependencies',
];
export const YARN_REGISTRY = 'https://registry.yarnpkg.com';
// lockfile version, bump whenever we make backwards incompatible changes
export const LOCKFILE_VERSION = 1;
@@ -2,6 +2,7 @@
import type RequestManager from '../util/request-manager.js';
import type {ConfigRegistries} from '../config.js';
import {YARN_REGISTRY} from '../constants.js';
import NpmRegistry from './npm-registry.js';
import stringify from '../lockfile/stringify.js';
import parse from '../lockfile/parse.js';
@@ -12,7 +13,7 @@ const defaults = require('defaults');
const path = require('path');
const pkg = require('../../package.json');
const DEFAULTS = {
export const DEFAULTS = {
'version-tag-prefix': 'v',
'version-git-tag': true,
'version-git-sign': false,
@@ -24,7 +25,7 @@ const DEFAULTS = {
'save-prefix': '^',
'ignore-scripts': false,
'ignore-optional': true,
registry: 'http://registry.npmjs.org',
registry: YARN_REGISTRY,
'user-agent': [
`yarn/${pkg.version}`,
'npm/?',
@@ -7,10 +7,13 @@ import RegistryResolver from './registry-resolver.js';
import NpmRegistry from '../../registries/npm-registry.js';
import map from '../../util/map.js';
import * as fs from '../../util/fs.js';
import {YARN_REGISTRY} from '../../constants.js';
const invariant = require('invariant');
const path = require('path');
const NPM_REGISTRY = /http[s]:\/\/registry.npmjs.org/g;
type RegistryResponse = {
name: string,
versions: { [key: string]: Manifest },
@@ -122,6 +125,14 @@ export default class NpmResolver extends RegistryResolver {
}
}
cleanRegistry(url: string): string {
if (this.config.getOption('registry') === YARN_REGISTRY) {
return url.replace(NPM_REGISTRY, YARN_REGISTRY);
} else {
return url;
}
}
async resolve(): Promise<Manifest> {
// lockfile
const shrunk = this.request.getLocked('tarball');
@@ -146,7 +157,7 @@ export default class NpmResolver extends RegistryResolver {
if (info.dist && info.dist.tarball) {
info._remote = {
resolved: `${info.dist.tarball}#${info.dist.shasum}`,
resolved: `${this.cleanRegistry(info.dist.tarball)}#${info.dist.shasum}`,
type: 'tarball',
reference: info.dist.tarball,
hash: info.dist.shasum,