Hello community,

here is the log from the commit of package rubygem-autoprefixer-rails for 
openSUSE:Factory checked in at 2018-08-02 14:58:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-autoprefixer-rails (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-autoprefixer-rails.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-autoprefixer-rails"

Thu Aug  2 14:58:27 2018 rev:18 rq:626667 version:9.0.2

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/rubygem-autoprefixer-rails/rubygem-autoprefixer-rails.changes
    2018-07-18 22:56:11.230513748 +0200
+++ 
/work/SRC/openSUSE:Factory/.rubygem-autoprefixer-rails.new/rubygem-autoprefixer-rails.changes
       2018-08-02 14:58:36.420324310 +0200
@@ -1,0 +2,12 @@
+Tue Jul 31 09:03:50 UTC 2018 - [email protected]
+
+- updated to version 9.0.2
+
+  * Show warning on Grid area names conflict (by Bogdan).
+  * Fix ExecJS warning (by Jan Kmet).
+
+- updated to version 9.0.1
+
+  * Fix nested at-rules in Grid prefixes (by Ivan Malov).
+
+-------------------------------------------------------------------

Old:
----
  autoprefixer-rails-9.0.0.gem

New:
----
  autoprefixer-rails-9.0.2.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-autoprefixer-rails.spec ++++++
--- /var/tmp/diff_new_pack.mPEv78/_old  2018-08-02 14:58:36.960325220 +0200
+++ /var/tmp/diff_new_pack.mPEv78/_new  2018-08-02 14:58:36.964325227 +0200
@@ -24,7 +24,7 @@
 #
 
 Name:           rubygem-autoprefixer-rails
-Version:        9.0.0
+Version:        9.0.2
 Release:        0
 %define mod_name autoprefixer-rails
 %define mod_full_name %{mod_name}-%{version}

++++++ autoprefixer-rails-9.0.0.gem -> autoprefixer-rails-9.0.2.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md    2018-07-16 23:55:17.000000000 +0200
+++ new/CHANGELOG.md    2018-07-30 21:53:08.000000000 +0200
@@ -1,5 +1,9 @@
 # Change Log
 
+## 9.0.2
+* Show warning on Grid area names conflict (by Bogdan).
+* Fix documentation (by Sven Wagner).
+
 ## 9.0 “A Mari Usque Ad Mare”
 * Remove Node.js 9 and Node.js 4 support.
 * Remove RubyRacer and Sprockets 3 support.
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/autoprefixer-rails/processor.rb 
new/lib/autoprefixer-rails/processor.rb
--- old/lib/autoprefixer-rails/processor.rb     2018-07-16 23:55:17.000000000 
+0200
+++ new/lib/autoprefixer-rails/processor.rb     2018-07-30 21:53:08.000000000 
+0200
@@ -146,8 +146,13 @@
     def runtime
       @runtime ||= begin
         if ExecJS.eval('typeof Uint8Array') != 'function'
-          raise "Current ExecJS runtime does't support ES6. " +
-                "Please install latest Node.js."
+          if ExecJS.runtime.is_a?(ExecJS::RubyRacerRuntime)
+            raise "ExecJS::RubyRacerRuntime is not supported. " +
+                  "Please replace therubyracer with mini_racer in your 
Gemfile."
+          else
+            raise "Current ExecJS runtime: '#{ExecJS.runtime.name}' does't 
support ES6. " +
+                  "Please update or replace your current ExecJS runtime."
+          end
         end
 
         ExecJS.compile(build_js)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/autoprefixer-rails/version.rb 
new/lib/autoprefixer-rails/version.rb
--- old/lib/autoprefixer-rails/version.rb       2018-07-16 23:55:17.000000000 
+0200
+++ new/lib/autoprefixer-rails/version.rb       2018-07-30 21:53:08.000000000 
+0200
@@ -1,3 +1,3 @@
 module AutoprefixerRails
-  VERSION = '9.0.0'.freeze unless defined? AutoprefixerRails::VERSION
+  VERSION = '9.0.2'.freeze unless defined? AutoprefixerRails::VERSION
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2018-07-16 23:55:17.000000000 +0200
+++ new/metadata        2018-07-30 21:53:08.000000000 +0200
@@ -1,14 +1,14 @@
 --- !ruby/object:Gem::Specification
 name: autoprefixer-rails
 version: !ruby/object:Gem::Version
-  version: 9.0.0
+  version: 9.0.2
 platform: ruby
 authors:
 - Andrey Sitnik
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2018-07-16 00:00:00.000000000 Z
+date: 2018-07-30 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: execjs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor/autoprefixer.js new/vendor/autoprefixer.js
--- old/vendor/autoprefixer.js  2018-07-16 23:55:17.000000000 +0200
+++ new/vendor/autoprefixer.js  2018-07-30 21:53:08.000000000 +0200
@@ -3519,7 +3519,7 @@
 var parser = require('postcss-value-parser');
 var range = require('normalize-range');
 
-var isDirection = /top|left|right|bottom/gi;
+var IS_DIRECTION = /top|left|right|bottom/gi;
 
 var Gradient = function (_Value) {
   _inherits(Gradient, _Value);
@@ -3674,8 +3674,8 @@
     if (params[0].value === 'to') {
       return params;
     }
-    isDirection.lastIndex = 0; // reset search index of global regexp
-    if (!isDirection.test(params[0].value)) {
+    IS_DIRECTION.lastIndex = 0; // reset search index of global regexp
+    if (!IS_DIRECTION.test(params[0].value)) {
       return params;
     }
 
@@ -4670,7 +4670,8 @@
     prefixTrackProp = _require.prefixTrackProp,
     prefixTrackValue = _require.prefixTrackValue,
     getGridGap = _require.getGridGap,
-    warnGridGap = _require.warnGridGap;
+    warnGridGap = _require.warnGridGap,
+    warnDuplicateNames = _require.warnDuplicateNames;
 
 function getGridRows(tpl) {
   return tpl.trim().slice(1, -1).split(/['"]\s*['"]?/g);
@@ -4746,6 +4747,9 @@
       result: result
     });
 
+    // warn if grid-template-areas has a duplicate area name
+    warnDuplicateNames({ decl: decl, result: result });
+
     var areas = parseGridAreas({
       rows: gridRows,
       gap: gap
@@ -4804,7 +4808,8 @@
     parseTemplate = _require.parseTemplate,
     insertAreas = _require.insertAreas,
     getGridGap = _require.getGridGap,
-    warnGridGap = _require.warnGridGap;
+    warnGridGap = _require.warnGridGap,
+    warnDuplicateNames = _require.warnDuplicateNames;
 
 var GridTemplate = function (_Declaration) {
   _inherits(GridTemplate, _Declaration);
@@ -4848,6 +4853,9 @@
       result: result
     });
 
+    // warn if grid-template has a duplicate area name
+    warnDuplicateNames({ decl: decl, result: result });
+
     if (hasRows && hasColumns || hasAreas) {
       decl.cloneBefore({
         prop: '-ms-grid-rows',
@@ -4886,6 +4894,7 @@
 'use strict';
 
 var parser = require('postcss-value-parser');
+var list = require('postcss').list;
 
 function convert(value) {
   if (value && value.length === 2 && value[0] === 'span' && parseInt(value[1], 
10) > 0) {
@@ -5045,6 +5054,94 @@
   return parser.stringify(result);
 }
 
+/**
+ * Parse grid areas from declaration
+ * @param Declaration [decl]
+ * @return Array<String>
+ */
+function parseGridTemplateStrings(decl) {
+  var template = parseTemplate({ decl: decl, gap: getGridGap(decl) });
+  return Object.keys(template.areas);
+}
+
+/**
+ * Walk through every grid-template(-areas)
+ * declaration and try to find non-unique area names (duplicates)
+ * @param  {Declaration} decl
+ * @param  {Result} result
+ * @return {void}
+ */
+function warnDuplicateNames(_ref6) {
+  var decl = _ref6.decl,
+      result = _ref6.result;
+
+  var rule = decl.parent;
+  var inMediaRule = !!getParentMedia(rule);
+  var areas = parseGridTemplateStrings(decl);
+  var root = decl.root();
+
+  // stop if no areas found
+  if (areas.length === 0) {
+    return false;
+  }
+
+  root.walkDecls(/grid-template(-areas)?$/g, function (d) {
+    var nodeRule = d.parent;
+    var nodeRuleMedia = getParentMedia(nodeRule);
+    var isEqual = rule.toString() === nodeRule.toString();
+    var foundAreas = parseGridTemplateStrings(d);
+    var maxIndex = Math.max(root.index(nodeRule), root.index(nodeRuleMedia));
+    var isLookingDown = root.index(rule) < maxIndex;
+
+    // skip node if no grid areas is found
+    if (foundAreas.length === 0) {
+      return true;
+    }
+
+    // abort if we outside media rule and walking below our rule
+    // (we need to check ONLY the rules that are above)
+    if (!inMediaRule && isLookingDown) {
+      return false;
+    }
+
+    // abort if we're in the same rule
+    if (isEqual) {
+      return false;
+    }
+
+    // if we're inside media rule, we need to compare selectors
+    if (inMediaRule) {
+      var selectors = list.comma(nodeRule.selector);
+      var selectorIsFound = selectors.some(function (sel) {
+        if (sel === rule.selector) {
+          // compare selectors as a comma list
+          return true;
+        } else if (nodeRule.selector === rule.selector) {
+          // compare selectors as a whole (e.g. ".i, .j" === ".i, .j")
+          return true;
+        }
+        return false;
+      });
+
+      // stop walking if we found the selector
+      if (selectorIsFound) {
+        return false;
+      }
+    }
+
+    var duplicates = areas.filter(function (area) {
+      return foundAreas.includes(area);
+    });
+    if (duplicates.length > 0) {
+      var word = duplicates.length > 1 ? 'names' : 'name';
+      decl.warn(result, ['', '  duplicate area ' + word + ' detected in rule: 
' + rule.selector, '  duplicate area ' + word + ': ' + duplicates.join(', '), ' 
 duplicate area names cause unexpected behavior in IE'].join('\n'));
+      return false;
+    }
+    return undefined;
+  });
+  return undefined;
+}
+
 // Parse grid-template-areas
 
 var DOTS = /^\.+$/;
@@ -5057,9 +5154,9 @@
   return line.trim().split(/\s+/g);
 }
 
-function parseGridAreas(_ref6) {
-  var rows = _ref6.rows,
-      gap = _ref6.gap;
+function parseGridAreas(_ref7) {
+  var rows = _ref7.rows,
+      gap = _ref7.gap;
 
   return rows.reduce(function (areas, line, rowIndex) {
     if (gap.row) rowIndex *= 2;
@@ -5108,9 +5205,9 @@
   return result;
 }
 
-function parseTemplate(_ref7) {
-  var decl = _ref7.decl,
-      gap = _ref7.gap;
+function parseTemplate(_ref8) {
+  var decl = _ref8.decl,
+      gap = _ref8.gap;
 
   var gridTemplate = parser(decl.value).nodes.reduce(function (result, node) {
     var type = node.type,
@@ -5225,8 +5322,13 @@
 
         if (next && next.type === 'atrule' && next.name === 'media' && 
next.params === parentMedia.params && next.first.type === 'rule' && 
next.first.selector && parentMedia.first.selector && 
/^-ms-/.test(next.first.first.prop)) return undefined;
 
+        var areaParentMedia = getParentMedia(gridArea.parent);
         var areaMedia = parentMedia.clone().removeAll().append(rules);
-        gridArea.parent.after(areaMedia);
+        if (areaParentMedia) {
+          areaParentMedia.after(areaMedia);
+        } else {
+          gridArea.parent.after(areaMedia);
+        }
       }
 
       return undefined;
@@ -5258,9 +5360,9 @@
 
   // try to find gap
   var testGap = /^(grid-)?((row|column)-)?gap$/;
-  decl.parent.walkDecls(testGap, function (_ref8) {
-    var prop = _ref8.prop,
-        value = _ref8.value;
+  decl.parent.walkDecls(testGap, function (_ref9) {
+    var prop = _ref9.prop,
+        value = _ref9.value;
 
     if (/^(grid-)?gap$/.test(prop)) {
       var _parser$nodes = parser(value).nodes,
@@ -5279,11 +5381,11 @@
   return gap;
 }
 
-function warnGridGap(_ref9) {
-  var gap = _ref9.gap,
-      hasColumns = _ref9.hasColumns,
-      decl = _ref9.decl,
-      result = _ref9.result;
+function warnGridGap(_ref10) {
+  var gap = _ref10.gap,
+      hasColumns = _ref10.hasColumns,
+      decl = _ref10.decl,
+      result = _ref10.result;
 
   var hasBothGaps = gap.row && gap.column;
   if (!hasColumns && (hasBothGaps || gap.column && !gap.row)) {
@@ -5302,10 +5404,11 @@
   prefixTrackProp: prefixTrackProp,
   prefixTrackValue: prefixTrackValue,
   getGridGap: getGridGap,
-  warnGridGap: warnGridGap
+  warnGridGap: warnGridGap,
+  warnDuplicateNames: warnDuplicateNames
 };
 
-},{"postcss-value-parser":582}],43:[function(require,module,exports){
+},{"postcss":599,"postcss-value-parser":582}],43:[function(require,module,exports){
 'use strict';
 
 var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === 
"symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj 
&& typeof Symbol === "function" && obj.constructor === Symbol && obj !== 
Symbol.prototype ? "symbol" : typeof obj; };
@@ -6490,7 +6593,7 @@
   return str.slice(0, 1).toUpperCase() + str.slice(1);
 }
 
-var names = {
+var NAMES = {
   ie: 'IE',
   ie_mob: 'IE Mobile',
   ios_saf: 'iOS',
@@ -6536,7 +6639,7 @@
     var name = parts[0];
     var version = parts[1];
 
-    name = names[name] || capitalize(name);
+    name = NAMES[name] || capitalize(name);
     if (versions[name]) {
       versions[name].push(version);
     } else {
@@ -8007,8 +8110,8 @@
 
 var n2f = require('num2fraction');
 
-var regexp = /(min|max)-resolution\s*:\s*\d*\.?\d+(dppx|dpi)/gi;
-var split = /(min|max)-resolution(\s*:\s*)(\d*\.?\d+)(dppx|dpi)/i;
+var REGEXP = /(min|max)-resolution\s*:\s*\d*\.?\d+(dppx|dpi)/gi;
+var SPLIT = /(min|max)-resolution(\s*:\s*)(\d*\.?\d+)(dppx|dpi)/i;
 
 var Resolution = function (_Prefixer) {
   _inherits(Resolution, _Prefixer);
@@ -8112,8 +8215,8 @@
         }
 
         var _loop = function _loop(prefix) {
-          var processed = query.replace(regexp, function (str) {
-            var parts = str.match(split);
+          var processed = query.replace(REGEXP, function (str) {
+            var parts = str.match(SPLIT);
             return _this3.prefixQuery(prefix, parts[1], parts[2], parts[3], 
parts[4]);
           });
           prefixed.push(processed);
@@ -10372,6 +10475,8 @@
 
 'use strict';
 
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === 
"symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj 
&& typeof Symbol === "function" && obj.constructor === Symbol && obj !== 
Symbol.prototype ? "symbol" : typeof obj; };
+
 var _extends = Object.assign || function (target) { for (var i = 1; i < 
arguments.length; i++) { var source = arguments[i]; for (var key in source) { 
if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = 
source[key]; } } } return target; };
 
 function _defaults(obj, defaults) { var keys = 
Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { 
var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); 
if (value && value.configurable && obj[key] === undefined) { 
Object.defineProperty(obj, key, value); } } return obj; }
@@ -10422,26 +10527,24 @@
 }
 
 Object.defineProperty(Buffer.prototype, 'parent', {
+  enumerable: true,
   get: function get() {
-    if (!(this instanceof Buffer)) {
-      return undefined;
-    }
+    if (!Buffer.isBuffer(this)) return undefined;
     return this.buffer;
   }
 });
 
 Object.defineProperty(Buffer.prototype, 'offset', {
+  enumerable: true,
   get: function get() {
-    if (!(this instanceof Buffer)) {
-      return undefined;
-    }
+    if (!Buffer.isBuffer(this)) return undefined;
     return this.byteOffset;
   }
 });
 
 function createBuffer(length) {
   if (length > K_MAX_LENGTH) {
-    throw new RangeError('Invalid typed array length');
+    throw new RangeError('The value "' + length + '" is invalid for option 
"size"');
   }
   // Return an augmented `Uint8Array` instance
   var buf = new Uint8Array(length);
@@ -10465,7 +10568,7 @@
   // Common case.
   if (typeof arg === 'number') {
     if (typeof encodingOrOffset === 'string') {
-      throw new Error('If encoding is specified then the first argument must 
be a string');
+      throw new TypeError('The "string" argument must be of type string. 
Received type number');
     }
     return allocUnsafe(arg);
   }
@@ -10473,7 +10576,7 @@
 }
 
 // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97
-if (typeof Symbol !== 'undefined' && Symbol.species && Buffer[Symbol.species] 
=== Buffer) {
+if (typeof Symbol !== 'undefined' && Symbol.species != null && 
Buffer[Symbol.species] === Buffer) {
   Object.defineProperty(Buffer, Symbol.species, {
     value: null,
     configurable: true,
@@ -10485,19 +10588,39 @@
 Buffer.poolSize = 8192; // not used by this implementation
 
 function from(value, encodingOrOffset, length) {
-  if (typeof value === 'number') {
-    throw new TypeError('"value" argument must not be a number');
+  if (typeof value === 'string') {
+    return fromString(value, encodingOrOffset);
+  }
+
+  if (ArrayBuffer.isView(value)) {
+    return fromArrayLike(value);
   }
 
-  if (isArrayBuffer(value) || value && isArrayBuffer(value.buffer)) {
+  if (value == null) {
+    throw TypeError('The first argument must be one of type string, Buffer, 
ArrayBuffer, Array, ' + 'or Array-like Object. Received type ' + (typeof value 
=== 'undefined' ? 'undefined' : _typeof(value)));
+  }
+
+  if (isInstance(value, ArrayBuffer) || value && isInstance(value.buffer, 
ArrayBuffer)) {
     return fromArrayBuffer(value, encodingOrOffset, length);
   }
 
-  if (typeof value === 'string') {
-    return fromString(value, encodingOrOffset);
+  if (typeof value === 'number') {
+    throw new TypeError('The "value" argument must not be of type number. 
Received type number');
   }
 
-  return fromObject(value);
+  var valueOf = value.valueOf && value.valueOf();
+  if (valueOf != null && valueOf !== value) {
+    return Buffer.from(valueOf, encodingOrOffset, length);
+  }
+
+  var b = fromObject(value);
+  if (b) return b;
+
+  if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null && typeof 
value[Symbol.toPrimitive] === 'function') {
+    return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, 
length);
+  }
+
+  throw new TypeError('The first argument must be one of type string, Buffer, 
ArrayBuffer, Array, ' + 'or Array-like Object. Received type ' + (typeof value 
=== 'undefined' ? 'undefined' : _typeof(value)));
 }
 
 /**
@@ -10523,7 +10646,7 @@
   if (typeof size !== 'number') {
     throw new TypeError('"size" argument must be of type number');
   } else if (size < 0) {
-    throw new RangeError('"size" argument must not be negative');
+    throw new RangeError('The value "' + size + '" is invalid for option 
"size"');
   }
 }
 
@@ -10638,20 +10761,16 @@
     return buf;
   }
 
-  if (obj) {
-    if (ArrayBuffer.isView(obj) || 'length' in obj) {
-      if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {
-        return createBuffer(0);
-      }
-      return fromArrayLike(obj);
-    }
-
-    if (obj.type === 'Buffer' && Array.isArray(obj.data)) {
-      return fromArrayLike(obj.data);
+  if (obj.length !== undefined) {
+    if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {
+      return createBuffer(0);
     }
+    return fromArrayLike(obj);
   }
 
-  throw new TypeError('The first argument must be one of type string, Buffer, 
ArrayBuffer, Array, or Array-like Object.');
+  if (obj.type === 'Buffer' && Array.isArray(obj.data)) {
+    return fromArrayLike(obj.data);
+  }
 }
 
 function checked(length) {
@@ -10672,12 +10791,14 @@
 }
 
 Buffer.isBuffer = function isBuffer(b) {
-  return b != null && b._isBuffer === true;
+  return b != null && b._isBuffer === true && b !== Buffer.prototype; // so 
Buffer.isBuffer(Buffer.prototype) will be false
 };
 
 Buffer.compare = function compare(a, b) {
+  if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength);
+  if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength);
   if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
-    throw new TypeError('Arguments must be Buffers');
+    throw new TypeError('The "buf1", "buf2" arguments must be one of type 
Buffer or Uint8Array');
   }
 
   if (a === b) return 0;
@@ -10738,7 +10859,7 @@
   var pos = 0;
   for (i = 0; i < list.length; ++i) {
     var buf = list[i];
-    if (ArrayBuffer.isView(buf)) {
+    if (isInstance(buf, Uint8Array)) {
       buf = Buffer.from(buf);
     }
     if (!Buffer.isBuffer(buf)) {
@@ -10754,15 +10875,16 @@
   if (Buffer.isBuffer(string)) {
     return string.length;
   }
-  if (ArrayBuffer.isView(string) || isArrayBuffer(string)) {
+  if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {
     return string.byteLength;
   }
   if (typeof string !== 'string') {
-    string = '' + string;
+    throw new TypeError('The "string" argument must be one of type string, 
Buffer, or ArrayBuffer. ' + 'Received type ' + (typeof string === 'undefined' ? 
'undefined' : _typeof(string)));
   }
 
   var len = string.length;
-  if (len === 0) return 0;
+  var mustMatch = arguments.length > 2 && arguments[2] === true;
+  if (!mustMatch && len === 0) return 0;
 
   // Use a for loop to avoid recursion
   var loweredCase = false;
@@ -10774,7 +10896,6 @@
         return len;
       case 'utf8':
       case 'utf-8':
-      case undefined:
         return utf8ToBytes(string).length;
       case 'ucs2':
       case 'ucs-2':
@@ -10786,7 +10907,9 @@
       case 'base64':
         return base64ToBytes(string).length;
       default:
-        if (loweredCase) return utf8ToBytes(string).length; // assume utf8
+        if (loweredCase) {
+          return mustMatch ? -1 : utf8ToBytes(string).length; // assume utf8
+        }
         encoding = ('' + encoding).toLowerCase();
         loweredCase = true;
     }
@@ -10933,16 +11056,17 @@
 Buffer.prototype.inspect = function inspect() {
   var str = '';
   var max = exports.INSPECT_MAX_BYTES;
-  if (this.length > 0) {
-    str = this.toString('hex', 0, max).match(/.{2}/g).join(' ');
-    if (this.length > max) str += ' ... ';
-  }
+  str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim();
+  if (this.length > max) str += ' ... ';
   return '<Buffer ' + str + '>';
 };
 
 Buffer.prototype.compare = function compare(target, start, end, thisStart, 
thisEnd) {
+  if (isInstance(target, Uint8Array)) {
+    target = Buffer.from(target, target.offset, target.byteLength);
+  }
   if (!Buffer.isBuffer(target)) {
-    throw new TypeError('Argument must be a Buffer');
+    throw new TypeError('The "target" argument must be one of type Buffer or 
Uint8Array. ' + 'Received type ' + (typeof target === 'undefined' ? 'undefined' 
: _typeof(target)));
   }
 
   if (start === undefined) {
@@ -11909,7 +12033,7 @@
       this[i] = val;
     }
   } else {
-    var bytes = Buffer.isBuffer(val) ? val : new Buffer(val, encoding);
+    var bytes = Buffer.isBuffer(val) ? val : Buffer.from(val, encoding);
     var len = bytes.length;
     if (len === 0) {
       throw new TypeError('The value "' + val + '" is invalid for argument 
"value"');
@@ -12051,13 +12175,14 @@
   return i;
 }
 
-// ArrayBuffers from another context (i.e. an iframe) do not pass the 
`instanceof` check
-// but they should be treated as valid. See: 
https://github.com/feross/buffer/issues/166
-function isArrayBuffer(obj) {
-  return obj instanceof ArrayBuffer || obj != null && obj.constructor != null 
&& obj.constructor.name === 'ArrayBuffer' && typeof obj.byteLength === 'number';
+// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not 
pass
+// the `instanceof` check but they should be treated as of that type.
+// See: https://github.com/feross/buffer/issues/166
+function isInstance(obj, type) {
+  return obj instanceof type || obj != null && obj.constructor != null && 
obj.constructor.name != null && obj.constructor.name === type.name;
 }
-
 function numberIsNaN(obj) {
+  // For IE11 support
   return obj !== obj; // eslint-disable-line no-self-compare
 }
 
@@ -18628,8 +18753,7 @@
    * //=> ['black', 'linear-gradient(white, black)']
    */
   comma: function comma(string) {
-    var comma = ',';
-    return list.split(string, [comma], true);
+    return list.split(string, [','], true);
   }
 };
 
@@ -19171,17 +19295,17 @@
   };
 
   /**
-   * Returns a clone of the node.
+   * Returns an exact clone of the node.
    *
-   * The resulting cloned node and its (cloned) children will have
-   * a clean parent and code style properties.
+   * The resulting cloned node and its (cloned) children will retain
+   * code style properties.
    *
    * @param {object} [overrides] New properties to override in the clone.
    *
    * @example
+   * decl.raws.before    //=> "\n  "
    * const cloned = decl.clone({ prop: '-moz-' + decl.prop })
-   * cloned.raws.before  //=> undefined
-   * cloned.parent       //=> undefined
+   * cloned.raws.before  //=> "\n  "
    * cloned.toString()   //=> -moz-transform: scale(0)
    *
    * @return {Node} Clone of the node.
@@ -19418,6 +19542,19 @@
     }return result;
   };
 
+  /**
+   * Clear the code style properties for the node and its children.
+   *
+   * @param {boolean} [keepBetween] Keep the raws.between symbols.
+   *
+   * @return {undefined}
+   *
+   * @example
+   * node.raws.before  //=> ' '
+   * node.cleanRaws()
+   * node.raws.before  //=> undefined
+   */
+
   Node.prototype.cleanRaws = function cleanRaws(keepBetween) {
     delete this.raws.before;
     delete this.raws.after;
@@ -20697,7 +20834,7 @@
      *   throw new Error('This plugin works only with PostCSS 6')
      * }
      */
-    this.version = '7.0.0';
+    this.version = '7.0.2';
     /**
      * Plugins added to this processor.
      *
@@ -20784,7 +20921,7 @@
     if (this.plugins.length === 0 && opts.parser === opts.stringifier) {
       if (process.env.NODE_ENV !== 'production') {
         if (typeof console !== 'undefined' && console.warn) {
-          console.warn('You did not set any plugins, parser, or stringifier. ' 
+ 'Right now PostCSS do nothing. Pick plugins for your case ' + 'on 
https://www.postcss.parts/ and usem them in postcss.config.js.');
+          console.warn('You did not set any plugins, parser, or stringifier. ' 
+ 'Right now PostCSS do nothing. Pick plugins for your case ' + 'on 
https://www.postcss.parts/ and use them in postcss.config.js.');
         }
       }
     }


Reply via email to