New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 803687 link

Starred by 4 users

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 545318



Sign in to add a comment

[css-typed-om] Make attributes immutable when appropriate

Project Member Reported by shend@chromium.org, Jan 19 2018

Issue description

Some attributes like CSSNumericValue.values need to be immutable to prevent cyclic references etc.

See https://github.com/w3c/css-houdini-drafts/issues/513 and https://github.com/w3c/css-houdini-drafts/issues/494
 
Hi Darren,

Does that mean that in CSSNumericValue.idl we need to make the CSSNumericValue add(CSSNumberish... values); --> "values" readonly ? Can you please suggest me any example.

Thanks for your time.

Comment 2 by shend@chromium.org, Jan 20 2018

I think we need to make the value/values attribute of CSSMathSum/CSSMathProduct/CSSMathMax/CSSMathMin/CSSMathNegate/CSSMathInvert readonly in the IDL.

We also have to make CSSUnitValue.type readonly.

Comment 3 by shend@chromium.org, Jan 26 2018

Cc: nikhil.s...@samsung.com
Hi Nikhil, would you be interested in working on this bug? It should be quite simple (just need to add readonly to the attributes I mentioned above and delete some tests).

Comment 4 by shend@chromium.org, Jan 26 2018

Cc: hs1217....@samsung.com
Sorry actually, looks like your colleague is already working on this. Hwanseung, will you continue to work on this bug?
yes i will continue.
Project Member

Comment 6 by bugdroid1@chromium.org, Jan 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1b00af88cdc1535ea809c07ef2a2eba010caf796

commit 1b00af88cdc1535ea809c07ef2a2eba010caf796
Author: Hwanseung Lee <hs1217.lee@samsung.com>
Date: Sat Jan 27 05:53:36 2018

[css-typed-om] fallback attribute should be readonly attribute

According to below linked issue(#514), CSSVariableReferenceValue
should have a constructor.
and also fallback attribute should be readonly attribute.
constructor was already added in chromium. but readonly keyword
was not added. so add readonly keyword for fallback attribute.
(actually it is related with #513 to add readonly keyword)

https://github.com/w3c/css-houdini-drafts/pull/547
https://github.com/w3c/css-houdini-drafts/issues/514
https://github.com/w3c/css-houdini-drafts/issues/513

Bug:  803687 
Change-Id: I91b5d4f21b75cd5d27063bfceba0b39b30977be9
Reviewed-on: https://chromium-review.googlesource.com/881381
Reviewed-by: Darren Shen <shend@chromium.org>
Commit-Queue: Hwanseung Lee <hs1217.lee@samsung.com>
Cr-Commit-Position: refs/heads/master@{#532167}
[modify] https://crrev.com/1b00af88cdc1535ea809c07ef2a2eba010caf796/third_party/WebKit/LayoutTests/external/wpt/css/css-typed-om/stylevalue-subclasses/cssVariableReferenceValue.tentative-expected.txt
[modify] https://crrev.com/1b00af88cdc1535ea809c07ef2a2eba010caf796/third_party/WebKit/LayoutTests/external/wpt/css/css-typed-om/stylevalue-subclasses/cssVariableReferenceValue.tentative.html
[modify] https://crrev.com/1b00af88cdc1535ea809c07ef2a2eba010caf796/third_party/WebKit/LayoutTests/http/tests/worklet/webexposed/global-interface-listing-paint-worklet-expected.txt
[modify] https://crrev.com/1b00af88cdc1535ea809c07ef2a2eba010caf796/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/1b00af88cdc1535ea809c07ef2a2eba010caf796/third_party/WebKit/Source/core/css/cssom/CSSStyleVariableReferenceValue.h
[modify] https://crrev.com/1b00af88cdc1535ea809c07ef2a2eba010caf796/third_party/WebKit/Source/core/css/cssom/CSSVariableReferenceValue.idl

Comment 7 by shend@chromium.org, Jan 29 2018

Cc: -hs1217....@samsung.com
Owner: hs1217....@samsung.com
Status: Started (was: Available)
Project Member

Comment 8 by bugdroid1@chromium.org, Jan 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/37c5e5e604744c9efd4fa5a3abaca7e6b651054c

commit 37c5e5e604744c9efd4fa5a3abaca7e6b651054c
Author: Hwanseung Lee <hs1217.lee@samsung.com>
Date: Mon Jan 29 06:44:53 2018

[css-typed-om] values attribute should be readonly

values attribute should be immutable to prevent cyclic
references in CSSMathMax, CSSMathMin, CSSMathProduct,
CSSMathSum.

Bug:  803687 
Change-Id: Ibb93165ffd7a279a80febba0543ac186b67dbe56
Reviewed-on: https://chromium-review.googlesource.com/890558
Reviewed-by: Darren Shen <shend@chromium.org>
Commit-Queue: Hwanseung Lee <hs1217.lee@samsung.com>
Cr-Commit-Position: refs/heads/master@{#532336}
[modify] https://crrev.com/37c5e5e604744c9efd4fa5a3abaca7e6b651054c/third_party/WebKit/LayoutTests/http/tests/worklet/webexposed/global-interface-listing-paint-worklet-expected.txt
[modify] https://crrev.com/37c5e5e604744c9efd4fa5a3abaca7e6b651054c/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/37c5e5e604744c9efd4fa5a3abaca7e6b651054c/third_party/WebKit/Source/core/css/cssom/CSSMathMax.idl
[modify] https://crrev.com/37c5e5e604744c9efd4fa5a3abaca7e6b651054c/third_party/WebKit/Source/core/css/cssom/CSSMathMin.idl
[modify] https://crrev.com/37c5e5e604744c9efd4fa5a3abaca7e6b651054c/third_party/WebKit/Source/core/css/cssom/CSSMathProduct.idl
[modify] https://crrev.com/37c5e5e604744c9efd4fa5a3abaca7e6b651054c/third_party/WebKit/Source/core/css/cssom/CSSMathSum.idl
[modify] https://crrev.com/37c5e5e604744c9efd4fa5a3abaca7e6b651054c/third_party/WebKit/Source/core/css/cssom/CSSMathVariadic.h

Project Member

Comment 9 by bugdroid1@chromium.org, Jan 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6b19149b9403735a7429f39159c4e1418cc6ceeb

commit 6b19149b9403735a7429f39159c4e1418cc6ceeb
Author: Hwanseung Lee <hs1217.lee@samsung.com>
Date: Tue Jan 30 05:20:03 2018

[css-typed-om] value attribute should be readonly

value attribute should be immutable to prevent cyclic references
in CSSMathInvert, CSSMathNegate.

Bug:  803687 
Change-Id: Ic38936609f5233386c2f2f4fe8ce958d7b5ca904
Reviewed-on: https://chromium-review.googlesource.com/891202
Reviewed-by: Darren Shen <shend@chromium.org>
Commit-Queue: Hwanseung Lee <hs1217.lee@samsung.com>
Cr-Commit-Position: refs/heads/master@{#532770}
[modify] https://crrev.com/6b19149b9403735a7429f39159c4e1418cc6ceeb/third_party/WebKit/LayoutTests/external/wpt/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssMathValue.tentative.html
[modify] https://crrev.com/6b19149b9403735a7429f39159c4e1418cc6ceeb/third_party/WebKit/LayoutTests/http/tests/worklet/webexposed/global-interface-listing-paint-worklet-expected.txt
[modify] https://crrev.com/6b19149b9403735a7429f39159c4e1418cc6ceeb/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/6b19149b9403735a7429f39159c4e1418cc6ceeb/third_party/WebKit/Source/core/css/cssom/CSSMathInvert.h
[modify] https://crrev.com/6b19149b9403735a7429f39159c4e1418cc6ceeb/third_party/WebKit/Source/core/css/cssom/CSSMathInvert.idl
[modify] https://crrev.com/6b19149b9403735a7429f39159c4e1418cc6ceeb/third_party/WebKit/Source/core/css/cssom/CSSMathNegate.h
[modify] https://crrev.com/6b19149b9403735a7429f39159c4e1418cc6ceeb/third_party/WebKit/Source/core/css/cssom/CSSMathNegate.idl

I think the only one left is CSSUnitValue.unit.
Project Member

Comment 11 by bugdroid1@chromium.org, Feb 3 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a579775654ca99ed4b3c96d90cb10b448cac0375

commit a579775654ca99ed4b3c96d90cb10b448cac0375
Author: Hwanseung Lee <hs1217.lee@samsung.com>
Date: Sat Feb 03 01:57:37 2018

[css-typed-om] CSSUnitValue.unit should be readonly

CSSUnitValue.unit should be immutable to prevent cyclic references

Bug:  803687 
Change-Id: I35f79ec2491277fcb2d02ce85a2e9c6ecd8c3a07
Reviewed-on: https://chromium-review.googlesource.com/897177
Reviewed-by: Darren Shen <shend@chromium.org>
Commit-Queue: Hwanseung Lee <hs1217.lee@samsung.com>
Cr-Commit-Position: refs/heads/master@{#534237}
[modify] https://crrev.com/a579775654ca99ed4b3c96d90cb10b448cac0375/third_party/WebKit/LayoutTests/external/wpt/css/css-typed-om/stylevalue-serialization/cssUnitValue.tentative.html
[modify] https://crrev.com/a579775654ca99ed4b3c96d90cb10b448cac0375/third_party/WebKit/LayoutTests/external/wpt/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssUnitValue.tentative-expected.txt
[modify] https://crrev.com/a579775654ca99ed4b3c96d90cb10b448cac0375/third_party/WebKit/LayoutTests/external/wpt/css/css-typed-om/stylevalue-subclasses/numeric-objects/cssUnitValue.tentative.html
[modify] https://crrev.com/a579775654ca99ed4b3c96d90cb10b448cac0375/third_party/WebKit/LayoutTests/http/tests/worklet/webexposed/global-interface-listing-paint-worklet-expected.txt
[modify] https://crrev.com/a579775654ca99ed4b3c96d90cb10b448cac0375/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/a579775654ca99ed4b3c96d90cb10b448cac0375/third_party/WebKit/Source/core/css/cssom/CSSUnitValue.cpp
[modify] https://crrev.com/a579775654ca99ed4b3c96d90cb10b448cac0375/third_party/WebKit/Source/core/css/cssom/CSSUnitValue.h
[modify] https://crrev.com/a579775654ca99ed4b3c96d90cb10b448cac0375/third_party/WebKit/Source/core/css/cssom/CSSUnitValue.idl

Status: Fixed (was: Started)

Sign in to add a comment