juicer 1.0.18 → 1.0.19

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.
@@ -1,3 +1,6 @@
1
+ == 1.0.19 / 2013-02-21
2
+ * Fix UTF-8 issues
3
+
1
4
  == 1.0.18 / 2012-11-16
2
5
  * Download YUI Compressor via GitHub's CDN
3
6
 
@@ -3,7 +3,7 @@ require "logger"
3
3
  module Juicer
4
4
 
5
5
  # :stopdoc:
6
- VERSION = "1.0.18"
6
+ VERSION = "1.0.19"
7
7
  LIBPATH = ::File.expand_path(::File.dirname(__FILE__)) + ::File::SEPARATOR
8
8
  PATH = ::File.dirname(LIBPATH) + ::File::SEPARATOR
9
9
  LOGGER = Logger.new(STDOUT)
@@ -12,7 +12,7 @@ module Juicer
12
12
 
13
13
  private
14
14
  def parse(line, imported_file = nil)
15
- return $2 if line =~ @@import_pattern
15
+ return $2 if encoded_line(line) =~ @@import_pattern
16
16
 
17
17
  # At first sight of actual CSS rules we abort (TODO: This does not take
18
18
  # into account the fact that rules may be commented out and that more
@@ -58,6 +58,14 @@ module Juicer
58
58
  raise NotImplementedError.new
59
59
  end
60
60
 
61
+ def encoded_line(line)
62
+ if String.method_defined?(:encode)
63
+ line.encode!('UTF-8', 'UTF-8', :invalid => :replace)
64
+ else
65
+ line
66
+ end
67
+ end
68
+
61
69
  #
62
70
  # Carries out the actual work of resolve. resolve resets the internal
63
71
  # file list and yields control to _resolve for rebuilding the file list.
@@ -9,7 +9,7 @@ module Juicer
9
9
 
10
10
  private
11
11
  def parse(line, imported_file = nil)
12
- return $1 if line =~ @@depends_pattern
12
+ return $1 if encoded_line(line) =~ @@depends_pattern
13
13
 
14
14
  # If we have already skimmed through some @depend/@depends or a
15
15
  # closing comment we're done.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: juicer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.18
4
+ version: 1.0.19
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -351,7 +351,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
351
351
  version: '0'
352
352
  requirements: []
353
353
  rubyforge_project: juicer
354
- rubygems_version: 1.8.23
354
+ rubygems_version: 1.8.24
355
355
  signing_key:
356
356
  specification_version: 3
357
357
  summary: Command line tool for CSS and JavaScript developers