Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set real values for various Chromium + Safari CSS @rules #4368

Merged
merged 3 commits into from
Jun 28, 2019

Conversation

queengooborg
Copy link
Contributor

@queengooborg queengooborg commented Jun 24, 2019

This PR is to assist in the efforts of #3710, or more specifically, #4294. I've browsed through WebKit and Blink to identify the exact versions where features were added/removed (if supported at all). Based on the following data, this sets versions within Chrome, Chrome Android, Safari, Safari iOS, Opera, Opera Android, Samsung Internet, and WebView:

css.at-rules.font-face.SVG_fonts
  1. Having a hard time finding the exact source code
  2. CanIUse lists Safari 3.2
  3. Chrome had support, but was removed in Chrome 38: http://www.chromestatus.com/feature/5930075908210688
  4. Safari 3.2, Chrome 1-38
css.at-rules.font-face.font-display
  1. Safari implemented in WebKit bb5b5cf8885540d1e1370247da6ddd4bdf75ec48, Tue Aug 15 00:03:56 2017 +0000
  2. Commit not present in 11.0.3 or earlier, exists in 11.1
  3. CanIUse lists Safari 11.1
  4. Chrome implemented in https://chromium.googlesource.com/chromium/src/+/5d39943cf7bd8db8aa1f874f3444affca39e408f/third_party/blink/renderer/core/css/font_display.h, initially landed in 72
  5. Safari 11.1, Chrome 72
css.at-rules.font-face.unicode-range
  1. Implemented in WebKit 648b73b1f8f531ff5a7d7b390e5391abeb7660c3, Mon Jan 7 23:32:55 2008 +0000
  2. File WebCore/css/CSSUnicodeRangeValue.cpp defines property, first introduced in WebKit 525.3
  3. Safari 3.2, Chrome 1
css.at-rules.import
  1. CSSImportRule.cpp created in WebKit 13a64221676d62dba11dd220a03d7dca35609fc3
  2. Initial definition in WebCore/css/css_ruleimpl.cpp
  3. css_ruleimpl.cpp defined in WebKit bb0c24b55183dc12fee06166f24714471286db70, Fri Aug 24 14:24:40 2001 +0000
  4. Commit was before Safari 1.0, defaulting to Safari + Chrome 1
css.at-rules.keyframes (-webkit- prefix)
  1. CSSKeyframesRule.cpp created in WebKit a001d32fd3d96bcb4368e91b892622edebbdc333, commit message states the implementation of the property, Tue Aug 5 23:01:41 2008 +0000
  2. https://bugs.webkit.org/show_bug.cgi?id=20088
  3. File does not exist in Safari 3.2.1 (https://trac.webkit.org/browser/webkit/releases/Apple/Safari%203.2.1/WebCore/css), but exists in Safari 4.0 (https://trac.webkit.org/browser/webkit/releases/Apple/Safari%204.0/WebCore/css/WebKitCSSKeyframesRule.cpp).
  4. Safari 4, Chrome 2
css.at-rules.keyframes.ignore_important_declarations
  1. Chrome 45 already specified in BCD, Safari is null
  2. Safari is true
  3. SauceLabs testing: 9.1 + 10 do not ignore !important, 10.1 does
  4. Safari 10.1, Chrome 45
css.at-rules.media.-moz-device-pixel-ratio
  1. Implied `false` as it's a Firefox-based prefix
css.at-rules.page.size
  1. Manually tested in latest browsers (native OS)
  2. No Support in Chrome or Safari

Note: all commit hashes are for the WebKit Git mirror.

I have requested @jpmedley’s review on all the Chrome versions, but any and all reviews are welcome!

@queengooborg queengooborg added the data:css Compat data for CSS features. https://developer.mozilla.org/docs/Web/CSS label Jun 24, 2019
@queengooborg queengooborg requested a review from jpmedley June 24, 2019 05:46
@ddbeck
Copy link
Collaborator

ddbeck commented Jun 24, 2019

Hi @vinyldarkscratch. Would you update your description to link to the bugs and changes mentioned here? It'll be a lot easier to review this without copying and pasting everything

@queengooborg
Copy link
Contributor Author

Oh sorry! I forgot GitHub doesn’t automatically generate links inside of HTML tags. Certainly, I’ll update this one, as well as my other similar PR!

@ddbeck ddbeck self-requested a review June 25, 2019 08:48
Copy link
Collaborator

@ddbeck ddbeck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a few issues of note here. Great start on this, @vinyldarkscratch!

css/at-rules/font-face.json Outdated Show resolved Hide resolved
css/at-rules/import.json Outdated Show resolved Hide resolved
Copy link
Collaborator

@ddbeck ddbeck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Thank you! 🎉

@ddbeck ddbeck merged commit 706ef38 into mdn:master Jun 28, 2019
@queengooborg queengooborg deleted the real-values/safari-chrome/at-rules-1 branch June 28, 2019 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
data:css Compat data for CSS features. https://developer.mozilla.org/docs/Web/CSS
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants