image_optim_rake 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 84728f800392a61350da662ec41f49e6bec4da69
4
- data.tar.gz: df42c824ced1eac1184341b0fcb432161d990403
3
+ metadata.gz: 3a9b21d065cdb780de237dcc5a4dda19a3c0adaf
4
+ data.tar.gz: d7ef6c39ef75a910f72b501771335fba5e2538ff
5
5
  SHA512:
6
- metadata.gz: 0519fa8492aa4732c0f617379ec510dfb9704a9af91b060e75ecc950e553cdf8c5fae6d831e425ecd9ef0b55292695f549354916a6810519c7e73ba712232d3f
7
- data.tar.gz: 3681ca06e36be77f62905249b047183b20aed6c46aa921fa4105b4780ee849f82fa3e8d8bb7cc8019ffa80ddfc22e27da20d8f6c3647e89d5c616ccf0145259c
6
+ metadata.gz: 91388b26e77d3b334772d5121247eded2598d597fa2f65eab149afa5ff2bd5042e85bc5b3d25ace622a4868a797a54f07a2378a7895aa3d154f1e3291e14562e
7
+ data.tar.gz: dc4f4158adef2aa910bc562d69112e7e3aaa17a5cec4691f35b3ccb0d631e13ae49cd7801a3035bdb10d8be998868010a8dee35052b4a0c7caf68ee700a6754a
@@ -2,5 +2,8 @@ language: ruby
2
2
  rvm:
3
3
  - "1.9.3"
4
4
  - "2.0.0"
5
- - jruby-19mode
6
5
  - rbx-19mode
6
+
7
+ before_install:
8
+ - sudo apt-get update -qq
9
+ - sudo apt-get install -qq -y advancecomp gifsicle jpegoptim libjpeg-progs optipng pngcrush
@@ -0,0 +1,37 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ image_optim_rake (0.0.3)
5
+ image_optim (~> 0.7.3)
6
+ powerbar (~> 1.0.11)
7
+ rake
8
+
9
+ GEM
10
+ remote: https://rubygems.org/
11
+ specs:
12
+ ansi (1.4.3)
13
+ fspath (2.0.4)
14
+ hashie (2.0.5)
15
+ image_optim (0.7.3)
16
+ fspath (~> 2.0.3)
17
+ image_size (~> 1.1.2)
18
+ in_threads (~> 1.1.1)
19
+ progress (~> 2.4.0)
20
+ image_size (1.1.2)
21
+ in_threads (1.1.1)
22
+ minitest (4.6.2)
23
+ powerbar (1.0.11)
24
+ ansi (~> 1.4.0)
25
+ hashie (>= 1.1.0)
26
+ progress (2.4.0)
27
+ rake (10.1.0)
28
+ testem (0.1.0)
29
+ minitest (>= 3)
30
+
31
+ PLATFORMS
32
+ ruby
33
+
34
+ DEPENDENCIES
35
+ image_optim_rake!
36
+ minitest
37
+ testem
@@ -17,7 +17,7 @@ Gem::Specification.new do |gem|
17
17
 
18
18
  gem.add_dependency "image_optim", "~> 0.7.3"
19
19
  gem.add_dependency "rake"
20
- gem.add_dependency "progressbar", "~> 0.20.0"
20
+ gem.add_dependency "powerbar", "~> 1.0.11"
21
21
 
22
22
  gem.add_development_dependency "minitest"
23
23
  gem.add_development_dependency "testem"
@@ -19,7 +19,7 @@ module ImageOptimRake
19
19
  def define
20
20
  namespace name do
21
21
  desc "Minify all images found under /app/assets/images and /public/images"
22
- task :minify do
22
+ task :minify => :environment do
23
23
  dirs = ENV["dirs"] ? ENV["dirs"].split(",") : self.class.dirs
24
24
  Minifier.new(dirs, self.class.config).process!
25
25
  end
@@ -1,6 +1,6 @@
1
1
  require "image_optim_rake/image"
2
+ require "image_optim_rake/progress"
2
3
  require "image_optim"
3
- require "progressbar"
4
4
 
5
5
  module ImageOptimRake
6
6
  class Minifier
@@ -34,14 +34,15 @@ module ImageOptimRake
34
34
  end
35
35
 
36
36
  def process_images!
37
- progress = ::ProgressBar.new("Miniying", total_size)
37
+ progress = Progress.new(:msg => "0/#{total_count}")
38
38
  processor = ::ImageOptim.new(config)
39
- dirs.values.flatten.each do |image_file|
39
+ dirs.values.flatten.each_with_index do |image_file, index|
40
+ number = index + 1
40
41
  processor.optimize_image!(image_file.path)
41
42
  image_file.reload_size!
42
- progress.inc
43
+ progress.show :msg => "#{number}/#{total_count}", :done => number, :total => total_count
43
44
  end
44
- progress.finish
45
+ progress.close
45
46
  end
46
47
 
47
48
  def log_images
@@ -0,0 +1,25 @@
1
+ require "powerbar"
2
+
3
+ module ImageOptimRake
4
+ class Progress < PowerBar
5
+ PROGRESS_TEMPLATE = "${<msg>} ${[<bar>] } \e[33;1m${<percent>%} \e[36;1m${<elapsed>}"
6
+
7
+ def initialize(options = {})
8
+ super(options).tap do |progress|
9
+ finite = progress.settings.tty.finite
10
+
11
+ finite.template.main = PROGRESS_TEMPLATE
12
+ finite.template.padchar = " "
13
+ finite.template.barchar = "="
14
+ finite.template.exit = "\e[?25h\e[0m"
15
+ finite.template.close = "\e[?25h\e[0m\n"
16
+ finite.output = lambda { |s| $stderr.print(s) }
17
+ end
18
+ end
19
+
20
+ def show(options, force = true)
21
+ super(options, force)
22
+ end
23
+
24
+ end
25
+ end
@@ -1,3 +1,3 @@
1
1
  module ImageOptimRake
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -23,7 +23,7 @@ class MinifierTest < Testem
23
23
  sizes[file] = open(file, "rb").size
24
24
  end
25
25
 
26
- minifier = ImageOptimRake::Minifier.new([dir], :threads => true)
26
+ minifier = ImageOptimRake::Minifier.new([dir], minify_options)
27
27
  minifier.process!
28
28
 
29
29
  Dir.glob(File.join(dir, "**/*.{jpg,png}")).each do |file|
@@ -31,4 +31,15 @@ class MinifierTest < Testem
31
31
  end
32
32
  end
33
33
  end
34
+
35
+ private
36
+
37
+ def minify_options
38
+ # we cannot use pngout on travis CI as this is a binary
39
+ # which cannot be included in the build process
40
+ {
41
+ :threads => true,
42
+ :pngout => !ENV['CI']
43
+ }
44
+ end
34
45
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: image_optim_rake
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonas Thiel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-03-04 00:00:00.000000000 Z
11
+ date: 2013-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: image_optim
@@ -39,19 +39,19 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: progressbar
42
+ name: powerbar
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ~>
46
46
  - !ruby/object:Gem::Version
47
- version: 0.20.0
47
+ version: 1.0.11
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ~>
53
53
  - !ruby/object:Gem::Version
54
- version: 0.20.0
54
+ version: 1.0.11
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: minitest
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -90,6 +90,7 @@ files:
90
90
  - .gitignore
91
91
  - .travis.yml
92
92
  - Gemfile
93
+ - Gemfile.lock
93
94
  - README.md
94
95
  - Rakefile
95
96
  - image_optim_rake.gemspec
@@ -97,6 +98,7 @@ files:
97
98
  - lib/image_optim_rake/image.rb
98
99
  - lib/image_optim_rake/image_optim_task.rb
99
100
  - lib/image_optim_rake/minifier.rb
101
+ - lib/image_optim_rake/progress.rb
100
102
  - lib/image_optim_rake/railtie.rb
101
103
  - lib/image_optim_rake/version.rb
102
104
  - test/fixtures/unprocessed.jpg
@@ -123,7 +125,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
125
  version: '0'
124
126
  requirements: []
125
127
  rubyforge_project:
126
- rubygems_version: 2.0.0
128
+ rubygems_version: 2.0.3
127
129
  signing_key:
128
130
  specification_version: 4
129
131
  summary: Provide a little helper command to minify images