Merge pull request #12240 from atom/revert-12233-revert-11897-mkt-use-apm-with-npm3-and-node-4

Revert "Revert "Use apm@1.12.2 with Node v4 and npm v3 \o/""
This commit is contained in:
Nathan Sobo
2016-07-26 11:10:43 -06:00
committed by GitHub
9 changed files with 31 additions and 30 deletions

View File

@@ -9,18 +9,18 @@ env:
global:
- ATOM_ACCESS_TOKEN=da809a6077bb1b0aa7c5623f7b2d5f1fec2faae4
osx_image: xcode7.3
compiler: clang
matrix:
include:
- os: linux
env: NODE_VERSION=0.12
- os: linux
env: NODE_VERSION=4
- os: osx
env: ATOM_SPECS_TASK=core NODE_VERSION=0.12
env: ATOM_SPECS_TASK=core NODE_VERSION=4
- os: osx
env: ATOM_SPECS_TASK=packages NODE_VERSION=0.12
env: ATOM_SPECS_TASK=packages NODE_VERSION=4
sudo: false
@@ -28,16 +28,15 @@ install:
- git clone https://github.com/creationix/nvm.git /tmp/.nvm
- source /tmp/.nvm/nvm.sh
- nvm install $NODE_VERSION
- nvm use $NODE_VERSION
- nvm use --delete-prefix $NODE_VERSION
script: script/cibuild
cache:
directories:
- node_modules
- build/node_modules
- apm/node_modules
- $HOME/.atom/compile-cache
- build/node_modules
notifications:
email:
@@ -46,8 +45,11 @@ notifications:
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- build-essential
- git
- libgnome-keyring-dev
- fakeroot
- gcc-multilib

View File

@@ -2,7 +2,7 @@
# DESCRIPTION: Image to build Atom and create a .rpm file
# Base docker image
FROM fedora:21
FROM nodesource/fedora21:4.2.6
# Install dependencies
RUN yum install -y \
@@ -12,11 +12,9 @@ RUN yum install -y \
glibc-devel \
git-core \
libgnome-keyring-devel \
rpmdevtools \
nodejs \
npm
rpmdevtools
RUN npm install -g npm@1.4.28 --loglevel error
RUN npm install -g npm --loglevel error
ADD . /atom
WORKDIR /atom

View File

@@ -6,6 +6,6 @@
"url": "https://github.com/atom/atom.git"
},
"dependencies": {
"atom-package-manager": "1.10.0"
"atom-package-manager": "1.12.5"
}
}

View File

@@ -12,9 +12,10 @@ environment:
ATOM_DEV_RESOURCE_PATH: c:\projects\atom
ATOM_ACCESS_TOKEN:
secure: Q7vxmSq0bVCLTTRPzXw5ZhPTe7XYhWxX0tQV6neEkddTH6pZkOYNmSCG6VnMX2f+
ATOM_NOISY_BUILD: 1
matrix:
- NODE_VERSION: 0.10.35
- NODE_VERSION: 4.4.5
install:
- SET PATH=C:\Program Files\Atom\resources\cli;%PATH%

View File

@@ -32,7 +32,7 @@
"grunt-standard": "^2.0.0",
"legal-eagle": "~0.13.0",
"minidump": "~0.9",
"npm": "2.13.3",
"npm": "3.10.5",
"rcedit": "~0.3.0",
"request": "~2.27.0",
"rimraf": "~2.2.2",

View File

@@ -40,6 +40,8 @@ module.exports = (grunt) ->
continue if path.basename(moduleDirectory) is '.bin'
metadataPath = path.join(moduleDirectory, 'package.json')
continue unless fs.existsSync(metadataPath)
metadata = grunt.file.readJSON(metadataPath)
continue unless metadata?.engines?.atom?

View File

@@ -75,7 +75,7 @@ function bootstrap() {
var buildInstallCommand = initialNpmCommand + npmFlags + 'install';
var buildInstallOptions = {cwd: path.resolve(__dirname, '..', 'build')};
var apmInstallCommand = npmPath + npmFlags + '--target=0.10.40 ' + 'install';
var apmInstallCommand = npmPath + npmFlags + '--target=4.4.5 --global-style ' + 'install';
var apmInstallOptions = {cwd: apmInstallPath};
var moduleInstallCommand = apmPath + ' install' + apmFlags;
var dedupeApmCommand = apmPath + ' dedupe' + apmFlags;
@@ -97,7 +97,7 @@ function bootstrap() {
}
var moduleInstallOptions = {env: moduleInstallEnv};
if (process.argv.indexOf('--no-quiet') === -1) {
if (process.argv.indexOf('--no-quiet') === -1 || process.env.ATOM_NOISY_BUILD) {
buildInstallCommand += ' --loglevel error';
apmInstallCommand += ' --loglevel error';
moduleInstallCommand += ' --loglevel error';
@@ -122,11 +122,6 @@ function bootstrap() {
message: 'Installing apm...',
options: apmInstallOptions
},
{
command: apmPath + ' clean' + apmFlags,
message: 'Deleting old packages...',
options: moduleInstallOptions
},
{
command: moduleInstallCommand,
options: moduleInstallOptions

View File

@@ -7,10 +7,11 @@ export BUILD_ATOM_RELEASES_S3_KEY=$BUILD_ATOM_LINUX_RELEASES_S3_KEY
export BUILD_ATOM_RELEASES_S3_SECRET=$BUILD_ATOM_LINUX_RELEASES_S3_SECRET
export BUILD_ATOM_RELEASES_S3_BUCKET=$BUILD_ATOM_LINUX_RELEASES_S3_BUCKET
if [ -d /usr/local/share/nodenv ]; then
export NODENV_ROOT=/usr/local/share/nodenv
export PATH=/usr/local/share/nodenv/bin:/usr/local/share/nodenv/shims:$PATH
export NODENV_VERSION="v0.10.21"
fi
rm -rf /tmp/.atom-nvm
git clone https://github.com/creationix/nvm.git /tmp/.atom-nvm
source /tmp/.atom-nvm/nvm.sh
nvm install 4.4.7
nvm use 4.4.7
npm install -g npm
script/cibuild

View File

@@ -6,12 +6,14 @@ var fingerprintPath = path.resolve(__dirname, '..', '..', 'node_modules', '.atom
module.exports = {
fingerprint: function () {
var packageJson = fs.readFileSync(path.resolve(__dirname, '..', '..', 'package.json'))
var atomPackageJson = fs.readFileSync(path.resolve(__dirname, '..', '..', 'package.json'))
var apmPackageJson = fs.readFileSync(path.resolve(__dirname, '..', '..', 'apm', 'package.json'))
//Include the electron minor version in the fingerprint since that changing requires a re-install
var electronVersion = JSON.parse(packageJson).electronVersion.replace(/\.\d+$/, '')
var electronVersion = JSON.parse(atomPackageJson).electronVersion.replace(/\.\d+$/, '')
var apmVersion = JSON.parse(apmPackageJson).dependencies['atom-package-manager']
var body = electronVersion + process.platform + process.version
var body = electronVersion + apmVersion + process.platform + process.version
return crypto.createHash('sha1').update(body).digest('hex')
},