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 - mschnitzer@suse.com
+
+- 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 '