Previously you don't need to specify anything in BUILD.gn is because we are
downloading the whole "web_tests" folder. Now we want to run legacy tests
and wpt in different steps. Under "web_tests/virtual" we have baselines for
wpt and pure virtual legacy tests, we can list the folders under
"virtual/prefix" for each virtual test suite, which will make the
dependency very large(yes), and we need make such change each time when we
add new virtual suites. I don't think this is something blink devs want to
do.

The discussion is at the beginning of the crbug. So pls scroll back to #c1,
and read from there.

thanks, Weizhong

On Thu, Jun 2, 2022 at 12:29 PM Domenic Denicola <dome...@chromium.org>
wrote:

>
>
> On Thu, Jun 2, 2022 at 3:21 PM Weizhong Xia <weizh...@google.com> wrote:
>
>> Folks
>>
>> I'm sorry to see this has caused inconvenience, and sorry for being late
>> in response to this, due to the same reason Dom had.
>>
>
> Thanks for responding and listening to our concerns!
>
>
>>
>> The reason to move baselines to one central place at this point is to
>> make it possible to specify dependency in BUILD.gn.
>>
>
> I don't quite understand this. I've had to work with WPTs and WPT
> expectations my entire time working on Chromium. I've never had to "specify
> dependency in BUILD.gn"; I don't really know what that means. I'd love to
> hear more (or be referred to a doc explaining the issue), so that I
> understand why we're making the sacrifice we're making. (The linked bug
> isn't very understandable for me, unfortunately. I can't even understand
> enough to find the part you mentioned where you discussed different
> approaches.)
>
> I'm also unsure how the decision was weighed. Is the population of people
> specifying dependency in BUILD.gn very large, so that their needs are
> outweighing those of the Chromium developers working with web platform
> tests?
>
>
>> This is part of the work to use upstream wptrunner to run wpt tests. In
>> crbug/1299834 <https://crbug.com/1299834> we have tried to discuss some
>> different approaches. I would say this is the least disruptive way. For
>> blink engprod, I think to make blink devs happy is our top priority.
>>
>> For the long term, we can definitely move this back once we have separate
>> legacy tests and wpt into different folders. I can also reach out to you
>> guys to better understand your needs.
>>
>> For the folders Dom mentioned, I can check to see if any of that can be
>> removed. I understand the README is needed for virtual test suites.
>>
>> Cheers, Weizhong
>>
>> On Wednesday, June 1, 2022 at 6:06:56 AM UTC-7 yoav...@chromium.org
>> wrote:
>>
>>> +1 from me as well. I was similarly caught by surprise by this change
>>> (during reviews for webexposed changes), and am similarly not seeing the
>>> upside for this.
>>>
>>> While I'm sure this is a change that was meant to be a positive one, I'd
>>> love to better understand the reasoning, and whether the current situation
>>> is a temporary one, or one that is planned to be permanent even after the
>>> move to blink_wpt_tests is done.
>>>
>>> On Fri, May 27, 2022 at 6:10 PM Domenic Denicola <dom...@chromium.org>
>>> wrote:
>>>
>>>> +1. This was really unpleasantly surprising. When I first saw the
>>>> original blink-dev email, I thought "generic baselines" meant something
>>>> like "non-web platform test baselines", not "WPT expectation files that are
>>>> platform-agnostic".
>>>>
>>>> In addition to the context-switching cost, it's just much harder to
>>>> navigate between tests and their expectations, which is something I do
>>>> quite often. E.g., they are no longer grouped together in code reviews,
>>>> since their file paths are lexicographically far away from each other. And,
>>>> as someone maintaining and reviewing several WPT directories, moving these
>>>> crucial files out of the directories I commonly work in (and have metadata
>>>> marking me as the point-of-contact for) into separate directories dilutes
>>>> the cohesiveness of my projects.
>>>>
>>>>
>>>> On Fri, May 27, 2022 at 12:03 PM Dominic Farolino <d...@chromium.org>
>>>> wrote:
>>>>
>>>>> I write a lot of web platform tests as a Web Platform engineer;
>>>>> recently I wrote one in external/wpt/
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/external/wpt/>
>>>>> (the external web platform tests directory), and was shocked to find the
>>>>> eradication of `-expected.txt` files. I placed my expectations file next 
>>>>> to
>>>>> the source file as we've done for many years, and found that my test was
>>>>> "failing" because the test runner couldn't find my test expectations file.
>>>>>
>>>>> I dug deeper and found https://crrev.com/c/3603221 which was
>>>>> responsible for moving more than 21,000 *platform-agnostic* test
>>>>> expectations files away from their source files and into
>>>>> web_tests/platform/generic
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/platform/generic/>
>>>>> directory. I found more discussion in this email thread
>>>>> <https://groups.google.com/a/chromium.org/g/blink-dev/c/0WmmgEkqdOo> which
>>>>> I missed because blink-dev emails do not go directly in my inbox.
>>>>>
>>>>> I must say I find this change extraordinarily inconvenient as a Web
>>>>> Platform engineer, and I want to push back against this. A minority of web
>>>>> platform tests have platform-specific failures, which justifies the need
>>>>> for *some* platform-specific test expectations directories, but I
>>>>> believe a huge majority have generic baselines that are wildly convenient
>>>>> to have right next to the actual tests themselves. Putting them in a
>>>>> separate directory means I and others have to open a separate browser tab
>>>>> to view how many expectations there are for a given directory, and 
>>>>> requires
>>>>> a lot of unnecessary context switching. It is particularly confusing for
>>>>> clusters of tests whose names are all *very* similar and vary by only
>>>>> a few numbers or suffixes—this increases the cost of the context 
>>>>> switching.
>>>>>
>>>>> Furthermore, it renders tons of directories absolutely useless! All
>>>>> ~150 directories in web_tests/virtual
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/virtual/>
>>>>>  (for
>>>>> VirtualTestSuites) are just empty directories with README files—these used
>>>>> to house virtualtest-specific expectations. So now for fenced frames (the
>>>>> project I'm working on right now), we have the following test directories:
>>>>>
>>>>>    - web_tests/wpt_internal/fenced_frame/
>>>>>    
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/wpt_internal/fenced_frame/>
>>>>>    - web_tests/virtual/fenced-frame-mparch/
>>>>>    
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/virtual/fenced-frame-mparch/>
>>>>>    - web_tests/virtual/fenced-frame-shadow-dom/
>>>>>    
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/virtual/fenced-frame-shadow-dom/>
>>>>>    - web_tests/platform/generic/wpt_internal/fenced_frame/
>>>>>    
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/platform/generic/wpt_internal/fenced_frame/>
>>>>>    - web_tests/platform/generic/virtual/fenced-frame-mparch/
>>>>>    
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/platform/generic/virtual/fenced-frame-mparch/>
>>>>>    - web_tests/platform/generic/virtual/fenced-frame-shadow-dom/
>>>>>    
>>>>> <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/platform/generic/virtual/fenced-frame-shadow-dom/>
>>>>>    - + platform-specific directories, which are relatively rare for us
>>>>>
>>>>> This is so weird! Regardless of whether or not there are plans to
>>>>> clean this up, I can't see the upsides. The ousting of platform-agnostic
>>>>> expectations is only an inconvenience for WP engineers, while there
>>>>> might be some test-infra conveniences around BUILD.gn dependencies
>>>>> <https://bugs.chromium.org/p/chromium/issues/detail?id=1299834#:~:text=This%20way%20all%20the%20baselines%20will%20be%20in%20platform%20directory%2C%20make%20it%20a%20little%20bit%20easier%20to%20specify%20dependency%20in%20BUILD.gn.>
>>>>>  (maybe?).
>>>>> In any case, I am hard pressed to find justification in this move, and
>>>>> would love to see if we can reconsider this.
>>>>>
>>>>> Thoughts?
>>>>>
>>>>> Dom
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "blink-dev" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to blink-dev+...@chromium.org.
>>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAP-uykAN06y5o-WYznnicvm1YREbSsLbs6dM57LtL4vCWB%3Duzw%40mail.gmail.com
>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAP-uykAN06y5o-WYznnicvm1YREbSsLbs6dM57LtL4vCWB%3Duzw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "blink-dev" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to blink-dev+...@chromium.org.
>>>>
>>> To view this discussion on the web visit
>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra9jXeotZVYNKBMmW90x36%2BdOCqcqfZ-ZpPW0qJVUBptbQ%40mail.gmail.com
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra9jXeotZVYNKBMmW90x36%2BdOCqcqfZ-ZpPW0qJVUBptbQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADXrSiqTkd1ZmZRbhHpO0FnyJKMhRwEtBX7_0QX9ZQ054LKigA%40mail.gmail.com.

Reply via email to