sass 3.2.18 → 3.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9f6abbc048da9f6709768f572ffc88afb98cfa0a
4
- data.tar.gz: 992bbcf163be9c207e31bdee3ba60dda859ce91c
3
+ metadata.gz: ee87925e31efa7b2b9f04b31651d51cda825569e
4
+ data.tar.gz: dd0e7f384e2a5625754529631f5b510757d1e0d5
5
5
  SHA512:
6
- metadata.gz: 0068a9022f76b5bdce37ffe7412435d339b9c54674d6433cbbbd578837408189065e00d3d70b115b0a3ce07b3d404b1ff468cb3e435d3792d73239a98fd01d5d
7
- data.tar.gz: dc16a831ca50b3b711c30069eda651b5cb4ab51c7b2eefd4260d7bff7611278ab1662835f8bd0fd89bcab71f1c7b8c0f06f80309652e58b63b906cc0352ce45e
6
+ metadata.gz: a865f9ebe4cc0a8f54d7f73679ff92c19401425f1f390d5b62e574decc98768a5e5fd96d54fa10e1daf701758c8532e555664e50fcb8664d9f489de7d413ab96
7
+ data.tar.gz: 09311860e8236dd537d391efa8e31dd2aaa8744932e4d2ca6a6e3d56174282b173bf614faeee4c4940b2c3ff465131ce783c408f3653ce53f7fc22d118ae90d7
data/Rakefile CHANGED
@@ -84,7 +84,7 @@ task :install => [:package] do
84
84
  end
85
85
 
86
86
  desc "Release a new Sass package to Rubyforge."
87
- task :release => [:package] do
87
+ task :release => [:check_release, :package] do
88
88
  name = File.read(scope("VERSION_NAME")).strip
89
89
  version = File.read(scope("VERSION")).strip
90
90
  # sh %{rubyforge add_release sass sass "#{name} (v#{version})" pkg/sass-#{version}.gem}
@@ -142,7 +142,7 @@ task :release_edge do
142
142
  sh %{git reset --hard origin/master}
143
143
  sh %{rake package}
144
144
  version = get_version
145
- sh %{rubyforge add_release sass sass "Bleeding Edge (v#{version})" pkg/sass-#{version}.gem}
145
+ # sh %{rubyforge add_release sass sass "Bleeding Edge (v#{version})" pkg/sass-#{version}.gem}
146
146
  sh %{gem push pkg/sass-#{version}.gem}
147
147
  end
148
148
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.2.18
1
+ 3.2.19
@@ -1 +1 @@
1
- 22 March 2014 23:08:14 UTC
1
+ 05 April 2014 19:55:56 UTC
@@ -107,18 +107,28 @@ module Sass
107
107
  # while the boolean represents whether or not the string
108
108
  # is following an interpolated segment.
109
109
  STRING_REGULAR_EXPRESSIONS = {
110
- [:double, false] => string_re('"', '"'),
111
- [:single, false] => string_re("'", "'"),
112
- [:double, true] => string_re('', '"'),
113
- [:single, true] => string_re('', "'"),
114
- [:uri, false] => /url\(#{W}(#{URLCHAR}*?)(#{W}\)|#\{)/,
115
- [:uri, true] => /(#{URLCHAR}*?)(#{W}\)|#\{)/,
110
+ :double => {
111
+ false => string_re('"', '"'),
112
+ true => string_re('', '"')
113
+ },
114
+ :single => {
115
+ false => string_re("'", "'"),
116
+ true => string_re('', "'")
117
+ },
118
+ :uri => {
119
+ false => /url\(#{W}(#{URLCHAR}*?)(#{W}\)|#\{)/,
120
+ true => /(#{URLCHAR}*?)(#{W}\)|#\{)/
121
+ },
116
122
  # Defined in https://developer.mozilla.org/en/CSS/@-moz-document as a
117
123
  # non-standard version of http://www.w3.org/TR/css3-conditional/
118
- [:url_prefix, false] => /url-prefix\(#{W}(#{URLCHAR}*?)(#{W}\)|#\{)/,
119
- [:url_prefix, true] => /(#{URLCHAR}*?)(#{W}\)|#\{)/,
120
- [:domain, false] => /domain\(#{W}(#{URLCHAR}*?)(#{W}\)|#\{)/,
121
- [:domain, true] => /(#{URLCHAR}*?)(#{W}\)|#\{)/,
124
+ :url_prefix => {
125
+ false => /url-prefix\(#{W}(#{URLCHAR}*?)(#{W}\)|#\{)/,
126
+ true => /(#{URLCHAR}*?)(#{W}\)|#\{)/
127
+ },
128
+ :domain => {
129
+ false => /domain\(#{W}(#{URLCHAR}*?)(#{W}\)|#\{)/,
130
+ true => /(#{URLCHAR}*?)(#{W}\)|#\{)/
131
+ }
122
132
  }
123
133
 
124
134
  # @param str [String, StringScanner] The source text to lex
@@ -253,7 +263,7 @@ module Sass
253
263
  end
254
264
 
255
265
  def string(re, open)
256
- return unless scan(STRING_REGULAR_EXPRESSIONS[[re, open]])
266
+ return unless scan(STRING_REGULAR_EXPRESSIONS[re][open])
257
267
  if @scanner[2] == '#{' #'
258
268
  @scanner.pos -= 2 # Don't actually consume the #{
259
269
  @interpolation_stack << re
@@ -954,10 +954,10 @@ MESSAGE
954
954
  end
955
955
 
956
956
  def _interp_string(type)
957
- return unless start = tok(Sass::Script::Lexer::STRING_REGULAR_EXPRESSIONS[[type, false]])
957
+ return unless start = tok(Sass::Script::Lexer::STRING_REGULAR_EXPRESSIONS[type][false])
958
958
  res = [start]
959
959
 
960
- mid_re = Sass::Script::Lexer::STRING_REGULAR_EXPRESSIONS[[type, true]]
960
+ mid_re = Sass::Script::Lexer::STRING_REGULAR_EXPRESSIONS[type][true]
961
961
  # @scanner[2].empty? means we've started an interpolated section
962
962
  while @scanner[2] == '#{'
963
963
  @scanner.pos -= 2 # Don't consume the #{
@@ -869,6 +869,10 @@ MSG
869
869
  end
870
870
  end
871
871
 
872
+ # @private
873
+ ATOMIC_WRITE_MUTEX = Mutex.new
874
+
875
+
872
876
  # This creates a temp file and yields it for writing. When the
873
877
  # write is complete, the file is moved into the desired location.
874
878
  # The atomicity of this operation is provided by the filesystem's
@@ -892,9 +896,12 @@ MSG
892
896
  rescue NotImplementedError
893
897
  # Not all OSes support fsync
894
898
  end
899
+ tmpfile.close # Windows cannot rename an open file.
895
900
  # Make file readable and writeable to all but respect umask (usually 022).
896
901
  File.chmod(perms & ~File.umask, tmpfile.path)
897
- File.rename tmpfile.path, filename
902
+ ATOMIC_WRITE_MUTEX.synchronize do
903
+ File.rename tmpfile.path, filename
904
+ end
898
905
  result
899
906
  ensure
900
907
  # close and remove the tempfile if it still exists,
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sass
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.18
4
+ version: 3.2.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Weizenbaum
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-03-22 00:00:00.000000000 Z
13
+ date: 2014-04-05 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: yard