Compare commits

..

26 Commits

Author SHA1 Message Date
Adam Stankiewicz
afc5f87cdc Fix tests on node 0.10 and 0.12 2019-12-10 00:14:10 +01:00
Adam Stankiewicz
f1aa650764 Try to resolve test issues 2019-12-10 00:04:31 +01:00
Adam Stankiewicz
837ed0861e Fix nock test 2019-12-09 23:50:07 +01:00
Adam Stankiewicz
1d8ddfa30a Fix all tests 2019-12-09 23:09:37 +01:00
Adam Stankiewicz
fa5e772b4b Try to fix tests 2019-12-09 23:00:09 +01:00
Adam Stankiewicz
65664f0808 Fix one test 2019-12-09 22:33:20 +01:00
Adam Stankiewicz
b495f4d141 Add tests for node 10 and 12 2019-12-09 22:17:12 +01:00
Adam Stankiewicz
997fb2b298 Create FUNDING.yml 2019-11-25 23:18:17 +01:00
Adam Stankiewicz
9c9f332ea0 Add sponsor slots 2019-08-29 17:19:21 +02:00
Adam Stankiewicz
1861fa4355 Add sponsor slots 2019-08-29 17:18:09 +02:00
Adam Stankiewicz
79a539ffb4 Add sponsor slots 2019-06-26 14:30:21 +02:00
Adam Stankiewicz
0608b26364 Add sponsors slots 2019-06-26 14:28:47 +02:00
Adam Stankiewicz
15e5b9709d Add some slots 2019-06-26 14:26:05 +02:00
Adam Stankiewicz
67741b4bfe Bump to 1.8.8 2019-01-23 22:15:30 +01:00
Adam Stankiewicz
45c6bfa86f Fix .tar.gz extract vulnerability 2019-01-23 22:14:48 +01:00
Adam Stankiewicz
4f68fc7daa Update decompress-zip and bump 2019-01-17 23:35:49 +01:00
Adam Stankiewicz
206046b271 Bump to 1.8.6 2019-01-17 14:44:28 +01:00
Adam Stankiewicz
43894f5149 Bump to 1.8.5 2019-01-17 14:19:04 +01:00
Adam Stankiewicz
6390815c5f Update decompress-zip 2019-01-17 13:03:49 +01:00
Adam Stankiewicz
e8b94ecbd0 Mention parcel 2018-06-23 18:06:56 +02:00
Adam Stankiewicz
51feb8f925 Fix release script 2018-04-19 11:07:03 +02:00
Adam Stankiewicz
1c15deadc0 Bump to 1.8.4 2018-03-28 20:43:29 +02:00
Adam Stankiewicz
2aa1f27367 Update publish script 2018-03-28 20:16:27 +02:00
Adam Stankiewicz
275601601a Bump to 1.8.3 2018-03-28 19:52:42 +02:00
Adam Stankiewicz
c22c09546e Disable testing per commit and update changelog 2018-03-28 19:33:16 +02:00
Adam Stankiewicz
6bc778df32 Format with prettier (#2510) 2018-03-28 19:28:43 +02:00
15 changed files with 1226 additions and 1515 deletions

3
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,3 @@
# These are supported funding model platforms
open_collective: bower

View File

@@ -13,7 +13,8 @@ env:
- TEST_NODE_VERSION="4"
- TEST_NODE_VERSION="6"
- TEST_NODE_VERSION="8"
- TEST_NODE_VERSION="9"
- TEST_NODE_VERSION="10"
- TEST_NODE_VERSION="12"
before_install:
- node --version

View File

@@ -1,5 +1,9 @@
# Changelog
## Newer releases
Please see: https://github.com/bower/bower/releases
## 1.8.0 - 2016-11-07
- Download tar archives from GitHub when possible (#2263)

View File

@@ -85,40 +85,12 @@ module.exports = function(grunt) {
if (npmMajor !== 3 || npmMinor < 5) {
grunt.log.writeln(
'You need to use at least npm@3.5 to publish bower.'
'You need to use at npm@3.5 to publish bower.'
);
grunt.log.writeln(
'It is because npm 2.x produces too long paths that Windows does not handle.'
'It is because npm 2.x produces too long paths that Windows does not handle and newer npm drops lib/node_modules'
);
grunt.log.writeln('Please upgrade it: npm install -g npm');
process.exit(1);
}
var version = jsonPackage.version;
var changelog = fs.readFileSync('./CHANGELOG.md');
if (changelog.indexOf('## ' + version) === -1) {
grunt.log.writeln(
'Please add changelog.md entry for this bower version (' +
version +
')'
);
var lastRelease = childProcess
.execSync('git tag | tail -1')
.toString()
.trim();
grunt.log.writeln(
'Commits since last release (' + lastRelease + '): \n'
);
grunt.log.writeln(
childProcess
.execSync('git log --oneline ' + lastRelease + '..')
.toString()
);
grunt.log.writeln('Please upgrade it: npm install -g npm@3');
process.exit(1);
}
@@ -137,12 +109,12 @@ module.exports = function(grunt) {
if (process.env.SKIP_TESTS !== '1') {
grunt.log.writeln('Reinstalling dependencies...');
childProcess.execSync('rm -rf node_modules && npm install', {
childProcess.execSync('rm -rf node_modules && yarn', {
stdio: [0, 1, 2]
});
grunt.log.writeln('Running test suite...');
childProcess.execSync('grunt test', { stdio: [0, 1, 2] });
childProcess.execSync('yarn test', { stdio: [0, 1, 2] });
}
var dir = tmp.dirSync().name;
@@ -155,7 +127,7 @@ module.exports = function(grunt) {
});
grunt.log.writeln('Installing production dependencies...');
childProcess.execSync('npm install --production --silent', {
childProcess.execSync('yarn --production', {
cwd: dir,
stdio: [0, 1, 2]
});
@@ -220,13 +192,6 @@ module.exports = function(grunt) {
message: 'Did you review all the changes with "git diff"?',
default: false
},
{
type: 'confirm',
name: 'changelog',
message:
'Are you sure the CHANGELOG.md contains all changes?',
default: false
},
{
type: 'confirm',
name: 'tests',
@@ -252,7 +217,6 @@ module.exports = function(grunt) {
inquirer.prompt(questions, function(answers) {
if (
!answers.review ||
!answers.changelog ||
!answers.tests ||
!answers.publish
) {
@@ -264,11 +228,14 @@ module.exports = function(grunt) {
}
grunt.log.writeln(
'\nPlease remember to tag this relese, and add a release on Github!'
'\nPlease remember to tag this release, and add a release with changelog on Github!'
);
grunt.log.writeln(
'\nAlso, please remember to test published Bower one more time!'
);
grunt.log.writeln(
'\nYou can promote this bower release with "npm dist-tag add bower@' + jsonPackage.version + ' latest'
);
grunt.log.writeln('\nPublishing Bower...');
childProcess.execSync('npm publish --tag beta', {

View File

@@ -3,7 +3,7 @@
[![Backers on Open Collective](https://opencollective.com/bower/backers/badge.svg)](#backers)
[![Sponsors on Open Collective](https://opencollective.com/bower/sponsors/badge.svg)](#sponsors)
> ..psst! While Bower is maintained, we recommend [yarn](https://yarnpkg.com/) and [webpack](https://webpack.js.org/) for new front-end projects!
> ..psst! While Bower is maintained, we recommend [yarn](https://yarnpkg.com/) and [webpack](https://webpack.js.org/) or [parcel](https://parceljs.org/) for new front-end projects!
[![Unix CI](https://img.shields.io/travis/bower/bower/master.svg?maxAge=2592000)](https://travis-ci.org/bower/bower)
[![Windows CI](https://img.shields.io/appveyor/ci/bower/bower/master.svg)](https://ci.appveyor.com/project/bower/bower)
@@ -155,7 +155,12 @@ Support us with a monthly donation and help us continue our activities. [[Become
<a href="https://opencollective.com/bower/backer/27/website" target="_blank"><img src="https://opencollective.com/bower/backer/27/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/28/website" target="_blank"><img src="https://opencollective.com/bower/backer/28/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/29/website" target="_blank"><img src="https://opencollective.com/bower/backer/29/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/30/website" target="_blank"><img src="https://opencollective.com/bower/backer/30/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/31/website" target="_blank"><img src="https://opencollective.com/bower/backer/31/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/32/website" target="_blank"><img src="https://opencollective.com/bower/backer/32/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/33/website" target="_blank"><img src="https://opencollective.com/bower/backer/33/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/34/website" target="_blank"><img src="https://opencollective.com/bower/backer/34/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/35/website" target="_blank"><img src="https://opencollective.com/bower/backer/35/avatar.svg"></a>
## Sponsors
@@ -191,7 +196,37 @@ Become a sponsor and get your logo on our README on Github with a link to your s
<a href="https://opencollective.com/bower/sponsor/27/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/27/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/28/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/28/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/29/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/29/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/30/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/30/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/31/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/31/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/32/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/32/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/33/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/33/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/34/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/34/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/35/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/35/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/36/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/36/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/37/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/37/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/38/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/38/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/39/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/39/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/40/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/40/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/41/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/41/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/42/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/42/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/43/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/43/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/44/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/44/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/45/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/45/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/46/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/46/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/47/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/47/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/48/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/48/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/49/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/49/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/50/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/50/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/51/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/51/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/52/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/52/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/53/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/53/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/54/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/54/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/55/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/55/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/56/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/56/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/57/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/57/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/58/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/58/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/59/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/59/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/60/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/60/avatar.svg"></a>
## License

View File

@@ -130,8 +130,8 @@ function extractGz(archive, dst) {
return deferred.promise;
}
function isSymlink(entry) {
return entry.type === 'SymbolicLink';
function isSymlink(_, entry) {
return entry.type === 'symlink';
}
function filterSymlinks(entry) {

View File

@@ -1,6 +1,6 @@
{
"name": "bower",
"version": "1.8.0",
"version": "1.8.8",
"description": "The browser package manager",
"author": "Twitter",
"license": "MIT",
@@ -26,7 +26,7 @@
"chalk": "^1.0.0",
"chmodr": "^1.0.2",
"configstore": "^2.0.0",
"decompress-zip": "^0.2.1",
"decompress-zip": "^0.2.2",
"destroy": "^1.0.3",
"findup-sync": "^0.3.0",
"fs-write-stream-atomic": "1.0.8",
@@ -79,11 +79,12 @@
"husky": "^0.14.3",
"in-publish": "^2.0.0",
"istanbul": "^0.4.3",
"lint-staged": "^7.0.0",
"lint-staged": "^9.5.0",
"load-grunt-tasks": "^3.5.0",
"mocha": "^2.5.3",
"multiline": "^1.0.2",
"nock": "^9.2.3",
"nock-legacy": "npm:nock@9.2.3",
"nock": "^11.7.0",
"node-uuid": "^1.4.7",
"prettier": "^1.11.1",
"proxyquire": "^1.7.9",
@@ -94,14 +95,13 @@
"test": "grunt test",
"ci": "grunt travis",
"coveralls": "coveralls",
"prepublish": "in-publish && echo 'You need to use \"grunt publish\" to publish bower' && false || not-in-publish",
"prepublishOnly": "in-publish && echo 'You need to use \"grunt publish\" to publish bower' && false || not-in-publish",
"format": "prettier --write --single-quote --tab-width 4 '**/*.js'",
"precommit": "lint-staged && npm test"
"precommit": "lint-staged"
},
"lint-staged": {
"*.js": [
"prettier --single-quote --tab-width 4",
"git add"
"prettier --single-quote --tab-width 4"
]
},
"files": [

View File

@@ -1,7 +1,7 @@
var expect = require('expect.js');
var path = require('path');
var helpers = require('../helpers');
var nock = require('nock');
var nock = require('../util/nock');
var rimraf = require('rimraf');
var fs = require('../../lib/util/fs');
var tar = require('tar-fs');
@@ -708,8 +708,8 @@ describe('bower install', function() {
cwd: tempDir.path
});
nock('http://dummy.local')
.get('http://github.com/yahoo/pure/archive/v0.6.0.tar.gz')
nock('http://dummy.local/')
.get(function(uri) { return true; })
.reply(500);
return helpers

View File

@@ -146,7 +146,7 @@ describe('GitFsResolver', function() {
var dir = path.join(testPackage, 'new-dir');
fs.writeFileSync(file, 'foo');
fs.mkdir(dir);
fs.mkdirSync(dir);
function cleanup(err) {
fs.unlinkSync(file);

View File

@@ -1,5 +1,5 @@
var path = require('path');
var nock = require('nock');
var nock = require('../../util/nock');
var fs = require('../../../lib/util/fs');
var expect = require('expect.js');
var Logger = require('bower-logger');

View File

@@ -1,7 +1,7 @@
var expect = require('expect.js');
var path = require('path');
var fs = require('../../../lib/util/fs');
var nock = require('nock');
var nock = require('../../util/nock');
var Q = require('q');
var rimraf = require('../../../lib/util/rimraf');
var mkdirp = require('mkdirp');

View File

@@ -15,7 +15,7 @@ var proxyquire = require('proxyquire')
.noPreserveCache();
var spawnSync = require('spawn-sync');
var config = require('../lib/config');
var nock = require('nock');
var nock = require('./util/nock');
var semver = require('semver');
// For better promise errors

View File

@@ -1,6 +1,6 @@
var expect = require('expect.js');
var helpers = require('../helpers');
var nock = require('nock');
var nock = require('../util/nock');
var path = require('path');
var Q = require('q');
@@ -13,13 +13,11 @@ describe('download', function() {
destination = tempDir.getPath('package.tar.gz');
function downloadTest(opts) {
var deferred = Q.defer();
tempDir.prepare();
opts.response(nock('http://bower.io', opts.nockOpts));
download(
return download(
opts.sourceUrl || 'http://bower.io/package.tar.gz',
opts.destinationPath || destination,
opts.downloadOpts
@@ -28,27 +26,20 @@ describe('download', function() {
function(result) {
if (opts.expect) {
opts.expect(result);
deferred.resolve();
} else {
deferred.reject(
new Error(
'Error expected. Got successful response.'
)
throw new Error(
'Error expected. Got successful response.'
);
}
},
function(error) {
if (opts.expectError) {
opts.expectError(error);
deferred.resolve();
} else {
deferred.reject(error);
throw error
}
}
)
.done();
return deferred.promise;
}
it('download file to directory', function() {

3
test/util/nock.js Normal file
View File

@@ -0,0 +1,3 @@
var NODE_MAJOR_VERSION = process.versions.node.split('.')[0];
module.exports = NODE_MAJOR_VERSION >= 12 ? require('nock') : require('nock-legacy')

2581
yarn.lock

File diff suppressed because it is too large Load Diff