bowerfresh 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 74736ff96d1adb8db443d6ce5da2c6fa579f2e51
4
+ data.tar.gz: 703042af67e2d0735d663df69c06efdcfaef8e51
5
+ SHA512:
6
+ metadata.gz: 6efc2efc29d730bf886466d04aa712541bf497ed9d6a03ad4a40e4028fb6586c7c8e26abd7056433606fa6703c959170c445dac4d2bf5ecda00c7c4ad1ff9ec5
7
+ data.tar.gz: 38ea8fb5eb5cc067dcfcf099281167e68f92e53c31689ff6c6816fb9ee319c39163b80a76e73d876a771bf9d2c9eeece7def0328458d180d8b77dc8747db0dee
data/.bowerrc ADDED
@@ -0,0 +1,3 @@
1
+ {
2
+ "directory": "bower_components"
3
+ }
data/.gitignore ADDED
@@ -0,0 +1,4 @@
1
+ bower_components/
2
+ node_modules/
3
+ .idea/
4
+ bowerfresh-*
data/README.md ADDED
@@ -0,0 +1,25 @@
1
+ bowerfresh
2
+ ==========
3
+
4
+ Purpose is to make sure some dependencies (especially gitrepo's (master)) are always fresh.
5
+ It does this by:
6
+
7
+ - cleaning bower cache
8
+ - uninstalling the dependencies
9
+
10
+ To uilize bowerfresh add the **sofresh** property. See [this bower file](./bower.json).
11
+ Then in your buidl routine (package.json or something), do a preinstall and run bowerfresh.
12
+
13
+ bower.json (add to)
14
+ ```
15
+ "sofresh": [
16
+ "dep1",
17
+ "dep2"
18
+ ]
19
+ ```
20
+ preinstall in package.json as an example
21
+ ```
22
+ "scripts": {
23
+ "preinstall": "bowerfresh",
24
+ },
25
+ ```
data/bin/bowerfresh ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ require('../index.js');
data/bin/bowerfreshrb ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require_relative '../index.rb'
data/bower.json ADDED
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "bowerfresh",
3
+ "main": "index.js",
4
+ "version": "0.0.0",
5
+ "homepage": "https://github.com/nmccready/bowerfresh",
6
+ "authors": [
7
+ "Nick McCready <nmccready@gmail.com>"
8
+ ],
9
+ "description": "test",
10
+ "license": "MIT",
11
+ "private": true,
12
+ "sofresh": [
13
+ "ns2"
14
+ ],
15
+ "dependencies": {
16
+ "ns2": "~1.0.3"
17
+ }
18
+ }
@@ -0,0 +1,13 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = 'bowerfresh'
3
+ s.version = '0.0.1'
4
+ s.summary = "keep bower dependencies fresh"
5
+ s.description = "keep bower dependencies fresh"
6
+ s.authors = ["Nick McCready"]
7
+ s.email = 'nemtcan@gmail.com'
8
+ s.files = `git ls-files`.split($\)
9
+ s.executables = ["bowerfreshrb"]
10
+ s.homepage = 'https://github.com/nmccready/bowerfresh'
11
+ s.license = 'MIT'
12
+ s.require_paths = ["/"]
13
+ end
data/index.js ADDED
@@ -0,0 +1,14 @@
1
+ var fs = require('fs');
2
+ var sh = require('execSync')
3
+
4
+ var str = fs.readFileSync('bower.json', 'utf8');
5
+ // console.log(str);
6
+ var bowerObj = JSON.parse(str);
7
+
8
+ commands = ["bower uninstall", "bower cache clean"];
9
+ bowerObj["sofresh"].forEach(function(dep) {
10
+ commands.forEach(function(cmd) {
11
+ run = cmd + ' ' + dep;
12
+ console.log(sh.exec(run).stdout);
13
+ });
14
+ });
data/index.rb ADDED
@@ -0,0 +1,13 @@
1
+ require 'json'
2
+
3
+ str = File.read 'bower.json'
4
+ # puts str
5
+ bowerObj = JSON.parse(str)
6
+
7
+ commands = ["bower uninstall","bower cache clean"]
8
+ bowerObj["sofresh"].each do |dep|
9
+ commands.each do |cmd|
10
+ run="#{cmd} #{dep}"
11
+ puts `#{run}`
12
+ end
13
+ end
data/package.json ADDED
@@ -0,0 +1,32 @@
1
+ {
2
+ "name": "bowerfresh",
3
+ "version": "0.0.1",
4
+ "description": "keep bower dependencies fresh",
5
+ "main": "./bin/bowerfresh",
6
+ "scripts": {
7
+ "start": "./bin/bowerfresh",
8
+ "test": "mocha spec/*_spec.js; rspec;",
9
+ "ruby": "./bin/bowerfreshrb"
10
+ },
11
+ "bin": {
12
+ "bowerfresh": "./bin/bowerfresh"
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "https://github.com/nmccready/bowerfresh.git"
17
+ },
18
+ "keywords": [
19
+ "bower",
20
+ "fresh",
21
+ "dependencies"
22
+ ],
23
+ "author": "Nicholas McCready",
24
+ "license": "MIT",
25
+ "bugs": {
26
+ "url": "https://github.com/nmccready/bowerfresh/issues"
27
+ },
28
+ "homepage": "https://github.com/nmccready/bowerfresh",
29
+ "dependencies": {
30
+ "execSync": "^1.0.2"
31
+ }
32
+ }
data/spec/main_spec.js ADDED
@@ -0,0 +1,19 @@
1
+ var fs = require('fs');
2
+ var sh = require('execSync');
3
+ var assert = require('assert');
4
+
5
+ describe('bowerfresh index.js', function() {
6
+ beforeEach(function() {
7
+ sh.run('bower install');
8
+ assert(fs.existsSync('bower_components/ns2/bower.json'));
9
+ });
10
+ it("should remove dependency", function() {
11
+ require('../index.js')
12
+ assert.notEqual(fs.existsSync('bower_components/ns2/bower.json'));
13
+ });
14
+ it("should remove dependency from cache", function() {
15
+ require('../index.js')
16
+ var out = sh.exec('bower cache list | grep ns2').stdout;
17
+ assert(out, '');
18
+ });
19
+ });
data/spec/main_spec.rb ADDED
@@ -0,0 +1,18 @@
1
+ describe 'bowerfresh index.rb' do
2
+ before do
3
+ puts `bower install`
4
+ expect( File.exist? 'bower_components/ns2/bower.json').to be
5
+ end
6
+
7
+ it "should remove dependency" do
8
+ `'./bin/bowerfreshrb'`
9
+ expect(File.exist? 'bower_components/ns2/bower.json').to_not be
10
+ end
11
+
12
+ it "should remove dependency from cache" do
13
+ `'./bin/bowerfreshrb'`
14
+ out = `bower cache list | grep ns2'1`
15
+ puts out
16
+ expect(out).to eql('')
17
+ end
18
+ end
metadata ADDED
@@ -0,0 +1,56 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: bowerfresh
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Nick McCready
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-10-16 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: keep bower dependencies fresh
14
+ email: nemtcan@gmail.com
15
+ executables:
16
+ - bowerfreshrb
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - ".bowerrc"
21
+ - ".gitignore"
22
+ - README.md
23
+ - bin/bowerfresh
24
+ - bin/bowerfreshrb
25
+ - bower.json
26
+ - bowerfresh.gemspec
27
+ - index.js
28
+ - index.rb
29
+ - package.json
30
+ - spec/main_spec.js
31
+ - spec/main_spec.rb
32
+ homepage: https://github.com/nmccready/bowerfresh
33
+ licenses:
34
+ - MIT
35
+ metadata: {}
36
+ post_install_message:
37
+ rdoc_options: []
38
+ require_paths:
39
+ - "/"
40
+ required_ruby_version: !ruby/object:Gem::Requirement
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
45
+ required_rubygems_version: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '0'
50
+ requirements: []
51
+ rubyforge_project:
52
+ rubygems_version: 2.2.2
53
+ signing_key:
54
+ specification_version: 4
55
+ summary: keep bower dependencies fresh
56
+ test_files: []