bower-vendor 0.0.4 → 0.0.5

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.
data/README.md CHANGED
@@ -46,10 +46,11 @@ The following generators are available:
46
46
  `rails generate bower_vendor:install [options]`
47
47
 
48
48
  Options:
49
- [--update] # Update bower assets (ie - `bower update`)
50
- [--skip-git-ignore] # Add vendored bower asset package directories to .gitignore
51
- [--force-clean] # Clean vendored bower assets without prompting
52
- [--skip-clean] # Skip cleaning vendored bower assets
49
+ [--update] # Update bower assets (ie - `bower update`)
50
+ [--skip-git-ignore] # Add vendored bower asset package directories to .gitignore
51
+ [--force-clean] # Clean vendored bower assets without prompting
52
+ [--skip-clean] # Skip cleaning vendored bower assets
53
+ [--include-dev-dependencies] # Include bower devDependencies
53
54
 
54
55
  Runtime options:
55
56
  -f, [--force] # Overwrite files that already exist
@@ -59,11 +60,11 @@ The following generators are available:
59
60
 
60
61
  Vendor bower assets based on bower.json
61
62
 
62
-
63
63
  `rails generate bower_vendor:clean [options]`
64
64
 
65
65
  Options:
66
- [--force] # Delete vendored bower assets without prompting
66
+ [--force] # Delete vendored bower assets without prompting
67
+ [--cached] # Delete only the bower cache from tmp/bower_components
67
68
 
68
69
  Runtime options:
69
70
  -p, [--pretend] # Run but do not make any changes
@@ -1,3 +1,3 @@
1
1
  module BowerVendor
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
@@ -2,18 +2,24 @@ class BowerVendor::CleanGenerator < Rails::Generators::Base
2
2
  attr_accessor :utils
3
3
 
4
4
  class_option :force, type: :boolean, desc: 'Delete vendored bower assets without prompting'
5
+ class_option :cached, type: :boolean, desc: "Delete only the bower cache from #{BowerVendor::BOWER_ROOT}"
5
6
  desc 'Cleans bower assets (CAUTION: Vendored asset directories for all bower packages will be deleted!)'
6
7
  def clean_packages
7
- @utils = BowerVendor::Utils.new
8
- utils.merged_paths.keys.each do |package|
9
- %w[javascripts stylesheets images].each do |prefix|
10
- path = File.join('vendor', 'assets', prefix, package)
11
- if Dir.exist? path
12
- if options.force? or yes?("Remove #{path}?", :cyan)
13
- remove_dir(path)
8
+ return false unless Dir.exist? BowerVendor::BOWER_ROOT
9
+ if !options.cached?
10
+ @utils = BowerVendor::Utils.new
11
+ utils.merged_paths.keys.each do |package|
12
+ %w[javascripts stylesheets images].each do |prefix|
13
+ path = File.join('vendor', 'assets', prefix, package)
14
+ if Dir.exist? path
15
+ if options.force? or yes?("Remove #{path}?", :cyan)
16
+ remove_dir(path)
17
+ end
14
18
  end
15
19
  end
16
20
  end
21
+ else
22
+ remove_dir(BowerVendor::BOWER_ROOT)
17
23
  end
18
24
  end
19
25
  end
@@ -10,19 +10,21 @@ class BowerVendor::InstallGenerator < Rails::Generators::Base
10
10
  class_option :include_dev_dependencies, type: :boolean, default: false, desc: 'Include bower devDependencies'
11
11
  desc 'Vendor bower assets based on bower.json'
12
12
  def bower_install
13
- if !options.skip_clean? and Dir.exist? BowerVendor::BOWER_ROOT
14
- generate options.force_clean? ? 'bower_vendor:clean --force' : 'bower_vendor:clean'
15
- end
13
+ generate 'bower_vendor:clean --cached' if !options.skip_clean?
16
14
 
17
15
  action = options.update? ? 'update' : 'install'
18
- action << ' --production' unless options.include_dev_dependencies?
16
+ action << ' --production' if !options.include_dev_dependencies?
19
17
  say_status :run, "bower #{action}"
20
18
  `bower #{action}`
21
19
 
20
+ if !options.skip_clean?
21
+ generate options.force_clean? ? 'bower_vendor:clean --force' : 'bower_vendor:clean'
22
+ end
23
+
22
24
  @utils = BowerVendor::Utils.new
23
25
 
24
26
  utils.merged_paths.each do |package, paths|
25
- append_file '.gitignore', "\n# Vendored bower package '#{package}'\n" unless options.skip_git_ignore?
27
+ append_file '.gitignore', "\n# Vendored bower package '#{package}'\n" if !options.skip_git_ignore?
26
28
  case paths
27
29
  when Hash
28
30
  paths.each do |source, dest|
@@ -38,6 +40,7 @@ class BowerVendor::InstallGenerator < Rails::Generators::Base
38
40
  raise Thor::Error, set_color("Paths must be either Hash, Array or String, received: #{paths.class}", :red, :bold)
39
41
  end
40
42
  end
43
+ generate 'bower_vendor:clean --cached' if !options.skip_clean?
41
44
  end
42
45
 
43
46
  private
@@ -74,7 +77,7 @@ class BowerVendor::InstallGenerator < Rails::Generators::Base
74
77
  else
75
78
  dest = utils.prefixed_dest(package, prefix, File.basename(source))
76
79
  end
77
- append_file '.gitignore', "/#{File.join('vendor', 'assets', prefix, package)}\n" unless options.skip_git_ignore?
80
+ append_file '.gitignore', "/#{File.join('vendor', 'assets', prefix, package)}\n" if !options.skip_git_ignore?
78
81
  copy_file(source, dest)
79
82
  end
80
83
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bower-vendor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -85,7 +85,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
85
85
  version: '0'
86
86
  segments:
87
87
  - 0
88
- hash: -1387996077343162464
88
+ hash: -388328633555544563
89
89
  requirements: []
90
90
  rubyforge_project:
91
91
  rubygems_version: 1.8.25