Compare commits

..

25 Commits

Author SHA1 Message Date
Adam Stankiewicz
febf300fdd Update travis badges and remove old files 2020-04-25 02:22:40 +02:00
Adam Stankiewicz
0eab022654 Last fixes 2020-04-25 01:59:53 +02:00
Adam Stankiewicz
c190c74df9 Remove unncecessary dev dependencies 2020-04-25 01:54:35 +02:00
Adam Stankiewicz
6137633412 Fix windows tests 2020-04-25 01:52:06 +02:00
Adam Stankiewicz
c2cb4f7c48 Add node 14.x 2020-04-25 01:04:15 +02:00
Adam Stankiewicz
225dc0b69f Do not check indent with eslint 2020-04-25 00:40:32 +02:00
Adam Stankiewicz
e0825d1f47 Fix tests 2020-04-25 00:38:06 +02:00
Adam Stankiewicz
b4ecfa5a96 Remove grunt 2020-04-25 00:26:18 +02:00
Adam Stankiewicz
3321382c62 Use existing grunt 2020-04-24 22:51:50 +02:00
Adam Stankiewicz
e4a4cd1ba0 Change order 2020-04-24 20:58:35 +02:00
Adam Stankiewicz
7901011d34 Add github workflows 2020-04-24 20:56:12 +02:00
Adam Stankiewicz
f313129e85 fix 2019-12-10 16:48:54 +01:00
Adam Stankiewicz
fb5a798920 fix 2019-12-10 16:38:50 +01:00
Adam Stankiewicz
6104718892 fix 2019-12-10 16:32:19 +01:00
Adam Stankiewicz
021736f7c5 Update 2019-12-10 16:23:09 +01:00
Adam Stankiewicz
66bd9d1fc4 Update appveyor tests 2019-12-10 16:15:20 +01:00
Adam Stankiewicz
07d40e7fbf Fix 2019-12-10 16:13:01 +01:00
Adam Stankiewicz
16b651139a Fix tests 2019-12-10 16:03:59 +01:00
Adam Stankiewicz
b47ce33e9e Fix 2019-12-10 15:41:29 +01:00
Adam Stankiewicz
4996448d68 Fix tests 2019-12-10 15:32:52 +01:00
Adam Stankiewicz
da1baa055f Fix initialization issue 2019-12-10 15:09:15 +01:00
Adam Stankiewicz
3e294789b5 Fix build 2019-12-10 15:04:54 +01:00
Adam Stankiewicz
45408e9589 Fix 2019-12-10 14:56:36 +01:00
Adam Stankiewicz
cbb9b4415e Try to fix build 2019-12-10 14:52:57 +01:00
Adam Stankiewicz
e3328a4034 Test subpackages on travis and appveyor 2019-12-10 13:01:45 +01:00
22 changed files with 1025 additions and 1126 deletions

View File

@@ -29,13 +29,13 @@ jobs:
- uses: actions/checkout@v2
- name: install
run: yarn && (cd packages/bower-json && yarn link) && yarn link bower-json
- name: lint
run: npm run lint
run: yarn
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: lint
run: npm run lint
- name: bower tests
run: npm test
env:

144
README.md
View File

@@ -97,11 +97,9 @@ Bower can be configured using JSON in a `.bowerrc` file. Read over available opt
## Support
You can ask questions on following channels in order:
* [Discord chat](https://discord.gg/0fFM7QF0KpZRh2cY)
* [StackOverflow](http://stackoverflow.com/questions/tagged/bower)
* [Issue Tracker](https://github.com/bower/bower/issues)
* team@bower.io
* [Mailinglist](http://groups.google.com/group/twitter-bower) - twitter-bower@googlegroups.com
## Contributing
@@ -159,88 +157,72 @@ Support us with a monthly donation and help us continue our activities. [[Become
<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>
<a href="https://opencollective.com/bower/backer/36/website" target="_blank"><img src="https://opencollective.com/bower/backer/36/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/37/website" target="_blank"><img src="https://opencollective.com/bower/backer/37/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/38/website" target="_blank"><img src="https://opencollective.com/bower/backer/38/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/39/website" target="_blank"><img src="https://opencollective.com/bower/backer/39/avatar.svg"></a>
<a href="https://opencollective.com/bower/backer/40/website" target="_blank"><img src="https://opencollective.com/bower/backer/40/avatar.svg"></a>
## Sponsors
Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/bower#sponsor)]
<a href="https://opencollective.com/bower/tiers/sponsors/0/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/0/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/1/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/1/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/2/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/2/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/3/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/3/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/4/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/4/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/5/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/5/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/6/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/6/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/7/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/7/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/8/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/8/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/9/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/9/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/10/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/10/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/11/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/11/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/12/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/12/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/13/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/13/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/14/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/14/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/15/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/15/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/16/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/16/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/17/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/17/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/18/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/18/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/19/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/19/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/20/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/20/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/21/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/21/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/22/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/22/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/23/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/23/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/24/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/24/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/25/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/25/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/26/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/26/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/27/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/27/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/28/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/28/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/29/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/29/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/30/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/30/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/31/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/31/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/32/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/32/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/33/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/33/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/34/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/34/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/35/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/35/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/36/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/36/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/37/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/37/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/38/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/38/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/39/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/39/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/40/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/40/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/41/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/41/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/42/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/42/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/43/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/43/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/44/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/44/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/45/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/45/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/46/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/46/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/47/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/47/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/48/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/48/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/49/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/49/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/50/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/50/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/51/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/51/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/52/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/52/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/53/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/53/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/54/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/54/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/55/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/55/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/56/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/56/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/57/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/57/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/58/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/58/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/59/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/59/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/60/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/60/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/61/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/61/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/62/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/62/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/63/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/63/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/64/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/64/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/65/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/65/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/66/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/66/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/67/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/67/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/68/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/68/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/69/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/69/avatar.svg"></a>
<a href="https://opencollective.com/bower/tiers/sponsors/70/website" target="_blank"><img src="https://opencollective.com/bower/tiers/sponsors/70/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/0/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/0/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/1/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/1/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/2/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/2/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/3/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/3/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/4/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/4/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/5/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/5/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/6/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/6/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/7/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/7/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/8/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/8/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/9/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/9/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/10/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/10/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/11/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/11/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/12/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/12/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/13/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/13/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/14/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/14/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/15/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/15/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/16/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/16/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/17/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/17/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/18/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/18/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/19/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/19/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/20/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/20/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/21/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/21/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/22/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/22/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/23/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/23/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/24/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/24/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/25/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/25/avatar.svg"></a>
<a href="https://opencollective.com/bower/sponsor/26/website" target="_blank"><img src="https://opencollective.com/bower/sponsor/26/avatar.svg"></a>
<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

@@ -1,3 +0,0 @@
# Security Policy
For critical security issues, please send an e-mail to team@bower.io instead of filing issue here.

View File

@@ -166,7 +166,7 @@ function pluginResolverFactory(resolverFactory, bower) {
})
.then(function() {
// We pass old _resolution (if hasNew has been called before contents).
// So resolver can decide whether use cached version of contents new one.
// So resolver can decide wheter use cached version of contents new one.
if (typeof resolver.fetch !== 'function') {
throw createError(
'Resolver does not implement the "fetch" method.'

View File

@@ -24,10 +24,11 @@ You can however run a command with sudo using "--allow-root" option';
var cli = require('./cli');
renderer = cli.getRenderer('', false, config);
renderer.error(
createError('Please do not run with sudo', 'ESUDO', {
createError('Cannot be run with sudo', 'ESUDO', {
details: errorMsg
})
);
process.exit(1);
}
}

View File

@@ -1,5 +1,4 @@
{
"private": true,
"name": "bower",
"version": "1.8.8",
"description": "The browser package manager",
@@ -18,14 +17,14 @@
"dependencies": {
"abbrev": "^1.0.5",
"archy": "1.0.0",
"bower-config": "file:packages/bower-config",
"bower-endpoint-parser": "file:packages/bower-endpoint-parser",
"bower-json": "file:packages/bower-json",
"bower-logger": "file:packages/bower-logger",
"bower-registry-client": "file:packages/bower-registry-client",
"bower-config": "^1.4.1",
"bower-endpoint-parser": "^0.2.2",
"bower-json": "^0.8.1",
"bower-logger": "^0.2.2",
"bower-registry-client": "^1.0.0",
"cardinal": "0.4.4",
"chalk": "^1.0.0",
"chmodr": "1.0.2",
"chmodr": "^1.0.2",
"configstore": "^2.0.0",
"decompress-zip": "^0.2.2",
"destroy": "^1.0.3",
@@ -50,7 +49,7 @@
"p-throttler": "0.1.1",
"promptly": "0.2.0",
"q": "^1.1.2",
"request": "2.76.0",
"request": "2.67.0",
"request-progress": "0.3.1",
"requireg": "^0.1.5",
"resolve": "^1.1.7",
@@ -69,12 +68,14 @@
"devDependencies": {
"arr-diff": "^2.0.0",
"chai": "^3.5.0",
"eslint": "^4.18.2",
"coveralls": "^2.11.9",
"eslint": "^2.0.0",
"expect.js": "^0.3.1",
"husky": "^0.14.3",
"in-publish": "^2.0.0",
"istanbul": "^0.4.3",
"lint-staged": "^9.5.0",
"mocha": "^3.5.3",
"mocha": "^2.5.3",
"multiline": "^1.0.2",
"nock": "^11.7.0",
"nock-legacy": "npm:nock@9.2.3",
@@ -99,13 +100,5 @@
"files": [
"bin",
"lib"
],
"resolutions": {
"deep-extend": "0.5.1"
},
"workspaces": {
"packages": [
"packages/*"
]
}
]
}

View File

@@ -1,13 +1,5 @@
# Changelog
## 1.4.2
- Prevent errors when expanded env variable does not exist
## 1.4.2
- Update minimist to 0.2.1 to fix security issue
## 1.4.0
- Change default shorthand resolver from git:// to https://

View File

@@ -33,7 +33,9 @@ function doEnvReplaceStr(f) {
esc = esc.length && esc.length % 2;
if (esc) return orig;
if (undefined === process.env[name]) {
return '${' + name + '}';
throw new Error(
'Environment variable used in .bowerrc is not defined: ' + orig
);
}
return process.env[name];

View File

@@ -1,6 +1,6 @@
var path = require('path');
var fs = require('graceful-fs');
var optimist = require('../vendor/optimist');
var optimist = require('optimist');
var osenv = require('osenv');
var object = require('mout/object');
var string = require('mout/string');

View File

@@ -1,358 +0,0 @@
var path = require('path');
var minimist = require('minimist');
var wordwrap = require('wordwrap');
/* Hack an instance of Argv with process.argv into Argv
so people can do
require('optimist')(['--beeble=1','-z','zizzle']).argv
to parse a list of args and
require('optimist').argv
to get a parsed version of process.argv.
*/
var inst = Argv(process.argv.slice(2));
Object.keys(inst).forEach(function(key) {
Argv[key] =
typeof inst[key] == 'function' ? inst[key].bind(inst) : inst[key];
});
var exports = (module.exports = Argv);
function Argv(processArgs, cwd) {
var self = {};
if (!cwd) cwd = process.cwd();
self.$0 = process.argv
.slice(0, 2)
.map(function(x) {
var b = rebase(cwd, x);
return x.match(/^\//) && b.length < x.length ? b : x;
})
.join(' ');
if (process.env._ != undefined && process.argv[1] == process.env._) {
self.$0 = process.env._.replace(
path.dirname(process.execPath) + '/',
''
);
}
var options = {
boolean: [],
string: [],
alias: {},
default: []
};
self.boolean = function(bools) {
options.boolean.push.apply(options.boolean, [].concat(bools));
return self;
};
self.string = function(strings) {
options.string.push.apply(options.string, [].concat(strings));
return self;
};
self.default = function(key, value) {
if (typeof key === 'object') {
Object.keys(key).forEach(function(k) {
self.default(k, key[k]);
});
} else {
options.default[key] = value;
}
return self;
};
self.alias = function(x, y) {
if (typeof x === 'object') {
Object.keys(x).forEach(function(key) {
self.alias(key, x[key]);
});
} else {
options.alias[x] = (options.alias[x] || []).concat(y);
}
return self;
};
var demanded = {};
self.demand = function(keys) {
if (typeof keys == 'number') {
if (!demanded._) demanded._ = 0;
demanded._ += keys;
} else if (Array.isArray(keys)) {
keys.forEach(function(key) {
self.demand(key);
});
} else {
demanded[keys] = true;
}
return self;
};
var usage;
self.usage = function(msg, opts) {
if (!opts && typeof msg === 'object') {
opts = msg;
msg = null;
}
usage = msg;
if (opts) self.options(opts);
return self;
};
function fail(msg) {
self.showHelp();
if (msg) console.error(msg);
process.exit(1);
}
var checks = [];
self.check = function(f) {
checks.push(f);
return self;
};
var descriptions = {};
self.describe = function(key, desc) {
if (typeof key === 'object') {
Object.keys(key).forEach(function(k) {
self.describe(k, key[k]);
});
} else {
descriptions[key] = desc;
}
return self;
};
self.parse = function(args) {
return parseArgs(args);
};
self.option = self.options = function(key, opt) {
if (typeof key === 'object') {
Object.keys(key).forEach(function(k) {
self.options(k, key[k]);
});
} else {
if (opt.alias) self.alias(key, opt.alias);
if (opt.demand) self.demand(key);
if (typeof opt.default !== 'undefined') {
self.default(key, opt.default);
}
if (opt.boolean || opt.type === 'boolean') {
self.boolean(key);
}
if (opt.string || opt.type === 'string') {
self.string(key);
}
var desc = opt.describe || opt.description || opt.desc;
if (desc) {
self.describe(key, desc);
}
}
return self;
};
var wrap = null;
self.wrap = function(cols) {
wrap = cols;
return self;
};
self.showHelp = function(fn) {
if (!fn) fn = console.error;
fn(self.help());
};
self.help = function() {
var keys = Object.keys(
Object.keys(descriptions)
.concat(Object.keys(demanded))
.concat(Object.keys(options.default))
.reduce(function(acc, key) {
if (key !== '_') acc[key] = true;
return acc;
}, {})
);
var help = keys.length ? ['Options:'] : [];
if (usage) {
help.unshift(usage.replace(/\$0/g, self.$0), '');
}
var switches = keys.reduce(function(acc, key) {
acc[key] = [key]
.concat(options.alias[key] || [])
.map(function(sw) {
return (sw.length > 1 ? '--' : '-') + sw;
})
.join(', ');
return acc;
}, {});
var switchlen = longest(
Object.keys(switches).map(function(s) {
return switches[s] || '';
})
);
var desclen = longest(
Object.keys(descriptions).map(function(d) {
return descriptions[d] || '';
})
);
keys.forEach(function(key) {
var kswitch = switches[key];
var desc = descriptions[key] || '';
if (wrap) {
desc = wordwrap(switchlen + 4, wrap)(desc).slice(switchlen + 4);
}
var spadding = new Array(
Math.max(switchlen - kswitch.length + 3, 0)
).join(' ');
var dpadding = new Array(
Math.max(desclen - desc.length + 1, 0)
).join(' ');
var type = null;
if (options.boolean[key]) type = '[boolean]';
if (options.string[key]) type = '[string]';
if (!wrap && dpadding.length > 0) {
desc += dpadding;
}
var prelude = ' ' + kswitch + spadding;
var extra = [
type,
demanded[key] ? '[required]' : null,
options.default[key] !== undefined
? '[default: ' + JSON.stringify(options.default[key]) + ']'
: null
]
.filter(Boolean)
.join(' ');
var body = [desc, extra].filter(Boolean).join(' ');
if (wrap) {
var dlines = desc.split('\n');
var dlen =
dlines.slice(-1)[0].length +
(dlines.length === 1 ? prelude.length : 0);
body =
desc +
(dlen + extra.length > wrap - 2
? '\n' +
new Array(wrap - extra.length + 1).join(' ') +
extra
: new Array(wrap - extra.length - dlen + 1).join(' ') +
extra);
}
help.push(prelude + body);
});
help.push('');
return help.join('\n');
};
Object.defineProperty(self, 'argv', {
get: function() {
return parseArgs(processArgs);
},
enumerable: true
});
function parseArgs(args) {
var argv = minimist(args, options);
argv.$0 = self.$0;
if (demanded._ && argv._.length < demanded._) {
fail(
'Not enough non-option arguments: got ' +
argv._.length +
', need at least ' +
demanded._
);
}
var missing = [];
Object.keys(demanded).forEach(function(key) {
if (!argv[key]) missing.push(key);
});
if (missing.length) {
fail('Missing required arguments: ' + missing.join(', '));
}
checks.forEach(function(f) {
try {
if (f(argv) === false) {
fail('Argument check failed: ' + f.toString());
}
} catch (err) {
fail(err);
}
});
return argv;
}
function longest(xs) {
return Math.max.apply(
null,
xs.map(function(x) {
return x.length;
})
);
}
return self;
}
// rebase an absolute path to a relative one with respect to a base directory
// exported for tests
exports.rebase = rebase;
function rebase(base, dir) {
var ds = path
.normalize(dir)
.split('/')
.slice(1);
var bs = path
.normalize(base)
.split('/')
.slice(1);
for (var i = 0; ds[i] && ds[i] == bs[i]; i++);
ds.splice(0, i);
bs.splice(0, i);
var p = path
.normalize(
bs
.map(function() {
return '..';
})
.concat(ds)
.join('/')
)
.replace(/\/$/, '')
.replace(/^$/, '.');
return p.match(/^[.\/]/) ? p : './' + p;
}

View File

@@ -1,6 +1,6 @@
{
"name": "bower-config",
"version": "1.4.3",
"version": "1.4.0",
"description": "The Bower config reader and writer.",
"author": "Twitter",
"license": "MIT",
@@ -12,17 +12,16 @@
},
"dependencies": {
"graceful-fs": "^4.1.3",
"minimist": "^0.2.1",
"mout": "^1.0.0",
"optimist": "^0.6.1",
"osenv": "^0.1.3",
"untildify": "^2.1.0",
"wordwrap": "^0.0.3"
"untildify": "^2.1.0"
},
"devDependencies": {
"expect.js": "^0.3.1",
"glob": "^4.5.3",
"mkdirp": "^0.5.0",
"mocha": "^3.5.3",
"mocha": "^2.5.3",
"node-uuid": "^1.4.3",
"q": "^1.2.0",
"rimraf": "^2.3.2"

View File

@@ -1,10 +0,0 @@
#!/usr/bin/env node
var path = require('path');
var bowerConfig = require('..');
var config = bowerConfig.read(path.join(__dirname + '/assets/env-variables'), {
foo: 'bar'
});
console.log(config);

View File

@@ -16,7 +16,7 @@
},
"devDependencies": {
"expect.js": "~0.2.0",
"mocha": "^3.5.3",
"mocha": "^2.5.3",
"mout": "~0.9.0"
},
"scripts": {

View File

@@ -1,15 +1,3 @@
# 0.8.4
- Update deep-extend (security fix)
# 0.8.3
- Fix requires
# 0.8.2
- Drop dependency on meow (vendor ext-name)
# 0.8.1
- Revert strict name validations and allow @, spaces and slashes

View File

@@ -1,4 +1,4 @@
var extName = require('../vendor/ext-name');
var extName = require('ext-name');
function isAsset(filename) {
var info = extName(filename);

View File

@@ -1,19 +0,0 @@
'use strict';
var endsWith = require('ends-with');
var extList = require('ext-list');
var sortKeysLength = require('sort-keys-length');
module.exports = function(str) {
var obj = sortKeysLength.desc(extList());
var ext = Object.keys(obj).filter(endsWith.bind(null, str));
if (!ext.length) {
return;
}
return {
ext: ext[0],
mime: obj[ext[0]]
};
};

View File

@@ -1,6 +1,6 @@
{
"name": "bower-json",
"version": "0.8.4",
"version": "0.8.1",
"description": "Read bower.json files with semantics, normalisation, defaults and validation",
"author": "Twitter",
"license": "MIT",
@@ -10,17 +10,15 @@
"node": ">=0.10.0"
},
"dependencies": {
"deep-extend": "^0.5.1",
"ends-with": "^0.2.0",
"ext-list": "^2.0.0",
"sort-keys-length": "^1.0.0",
"deep-extend": "^0.4.0",
"ext-name": "^3.0.0",
"graceful-fs": "^4.1.3",
"intersect": "^1.0.1"
},
"devDependencies": {
"expect.js": "^0.3.1",
"mocha": "^3.5.3",
"request": "2.76.0",
"mocha": "^2.5.3",
"request": "^2.64.0",
"underscore.string": "^3.0.3"
},
"scripts": {

View File

@@ -162,9 +162,7 @@ describe('.read', function() {
return done(err);
}
expect(file).to.equal(
path.resolve(__dirname + '/pkg-bower-json/bower.json')
);
expect(file).to.equal(path.resolve(__dirname + '/pkg-bower-json/bower.json'));
done();
});
});

View File

@@ -16,7 +16,7 @@
},
"devDependencies": {
"expect.js": "~0.2.0",
"mocha": "^3.5.3"
"mocha": "^2.5.3"
},
"scripts": {
"test": "mocha -R spec"

View File

@@ -13,7 +13,7 @@
"async": "^0.2.8",
"graceful-fs": "^4.0.0",
"lru-cache": "^2.3.0",
"request": "2.76.0",
"request": "^2.51.0",
"request-replay": "^0.2.0",
"rimraf": "^2.2.0",
"mkdirp": "^0.3.5"
@@ -21,7 +21,7 @@
"devDependencies": {
"bower-config": "^1.1.2",
"expect.js": "~0.2.0",
"mocha": "^3.5.3",
"mocha": "^2.5.3",
"nock": "9.2.3"
},
"scripts": {

View File

@@ -692,7 +692,7 @@ describe('bower install', function() {
});
});
it('recognizes proxy option in config', function() {
it('recognizes proxy option in config', function(done) {
this.timeout(10000);
tempDir.prepare({
@@ -722,6 +722,7 @@ describe('bower install', function() {
])
.fail(function(error) {
expect(error.message).to.equal('Status code of 500');
done();
});
});

1511
yarn.lock

File diff suppressed because it is too large Load Diff