--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/op.y632iwkkrbppqq%40cicero2.linkoping.osa.
If the problem is KURL in particular I think there should be a specific plan for that one since its layering today with GURL as the backend is artificial, and, I assume, a remnant of the WebKit in Chromium time. Last I checked it was also in need of work to become compliant with https://url.spec.whatwg.org, work that at the time was not worth it because of the layering.
Pulling out weborigin into its own library, as you tried, sounds like a good thing to do even if it requires some massaging of types.
On Mon, Sep 25, 2017 at 4:46 PM Daniel Bratell <bra...@opera.com> wrote:If the problem is KURL in particular I think there should be a specific plan for that one since its layering today with GURL as the backend is artificial, and, I assume, a remnant of the WebKit in Chromium time. Last I checked it was also in need of work to become compliant with https://url.spec.whatwg.org, work that at the time was not worth it because of the layering.Do you know what was missing? I think that it uses the same URL canonicalization routines under the hood, so in theory, the behavior should be the same. The main issues I would see with combining the implementation is that:- we assume that KURL is cheap to copy- we probably share the memory for the url spec with URLs returned via the v8 bindings
Can you remind me of what the vision is for the role of //third_party/WebKit/Source/platform in the post-BOS 2.0 world? I'm wondering what the right *conceptual* relationship between that directory and the services world is, before getting to the question of technical complexities.
Best,Colin
On Mon, Sep 25, 2017 at 9:46 AM Daniel Bratell <bra...@opera.com> wrote:
If the problem is KURL in particular I think there should be a specific plan for that one since its layering today with GURL as the backend is artificial, and, I assume, a remnant of the WebKit in Chromium time. Last I checked it was also in need of work to become compliant with https://url.spec.whatwg.org, work that at the time was not worth it because of the layering.Pulling out weborigin into its own library, as you tried, sounds like a good thing to do even if it requires some massaging of types./Daniel
I was doing some refactoring and I noticed that we have dependency cycles for some of the code in platform that uses Mojo. Today, there are several places in the code where:--1. //third_party/WebKit/Source/platform depends on a Mojo service.2. The Mojo service uses string or url.mojom.Url.3. Which causes the Blink variant to use WTF::String or KURL.4. Which are, of course, defined in platform.This is problematic: we get away with it today by inlining all the code in the header and just not declaring the dependency on //third_party/WebKit/Source/platform in the typemap: see KURL.typemap as an example. I tried moving some code in the KURL struct traits to a separate source file, and the build promptly exploded: https://chromium-review.googlesource.com/c/chromium/src/+/680255I would like to propose that:- //third_party/WebKit/Source/platform may not depend on Mojo services.- if code in //third_party/WebKit/Source/platform wants to use a Mojo service, it needs to be a separate build target.- existing code that uses Mojo services in //third_party/WebKit/Source/platform needs to be moved to separate targets to follow this rule. This requires updating graphics, instrumentation, loader, mojo, network, and text/hyphenation to be their own targets.An alternate strategy is to just pull weborigin into its own library; however, when I tried this, I ended up having to put WebString.cpp and runtime enabled features in yet another target, so that the weborigin library could depend on it. It felt pretty arbitrary to group WebString.cpp and runtime enabled features together like this just to get code to build.Daniel
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
----/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/op.y632iwkkrbppqq%40cicero2.linkoping.osa.
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAMGE5NG_vsMhHJTcNrP%2Bc--L5af-itBG8WxryNr_yN-1Uuni6Q%40mail.gmail.com.To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
On Mon, Sep 25, 2017 at 4:46 PM Daniel Bratell <bra...@opera.com> wrote:If the problem is KURL in particular I think there should be a specific plan for that one since its layering today with GURL as the backend is artificial, and, I assume, a remnant of the WebKit in Chromium time. Last I checked it was also in need of work to become compliant with https://url.spec.whatwg.org, work that at the time was not worth it because of the layering.Do you know what was missing? I think that it uses the same URL canonicalization routines under the hood, so in theory, the behavior should be the same. The main issues I would see with combining the implementation is that:- we assume that KURL is cheap to copy- we probably share the memory for the url spec with URLs returned via the v8 bindingsPulling out weborigin into its own library, as you tried, sounds like a good thing to do even if it requires some massaging of types.I had to run before I got it fully compiling, but I think that's actually what I'm going to do. There's too many interdependencies between things in platform to easily split it apart. For example, a lot of random files depend on the blob code which depends on Mojo.
Daniel
/DanielI was doing some refactoring and I noticed that we have dependency cycles for some of the code in platform that uses Mojo. Today, there are several places in the code where:1. //third_party/WebKit/Source/platform depends on a Mojo service.2. The Mojo service uses string or url.mojom.Url.3. Which causes the Blink variant to use WTF::String or KURL.4. Which are, of course, defined in platform.This is problematic: we get away with it today by inlining all the code in the header and just not declaring the dependency on //third_party/WebKit/Source/platform in the typemap: see KURL.typemap as an example. I tried moving some code in the KURL struct traits to a separate source file, and the build promptly exploded: https://chromium-review.googlesource.com/c/chromium/src/+/680255I would like to propose that:- //third_party/WebKit/Source/platform may not depend on Mojo services.- if code in //third_party/WebKit/Source/platform wants to use a Mojo service, it needs to be a separate build target.- existing code that uses Mojo services in //third_party/WebKit/Source/platform needs to be moved to separate targets to follow this rule. This requires updating graphics, instrumentation, loader, mojo, network, and text/hyphenation to be their own targets.An alternate strategy is to just pull weborigin into its own library; however, when I tried this, I ended up having to put WebString.cpp and runtime enabled features in yet another target, so that the weborigin library could depend on it. It felt pretty arbitrary to group WebString.cpp and runtime enabled features together like this just to get code to build.Daniel
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
--/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKrC8S06OfGxPLo5yiyx5o68ornczG2o6s0WjjVph7aNMQ%40mail.gmail.com.To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
On Mon, Sep 25, 2017 at 5:52 PM, Daniel Cheng <dch...@chromium.org> wrote:On Mon, Sep 25, 2017 at 4:46 PM Daniel Bratell <bra...@opera.com> wrote:If the problem is KURL in particular I think there should be a specific plan for that one since its layering today with GURL as the backend is artificial, and, I assume, a remnant of the WebKit in Chromium time. Last I checked it was also in need of work to become compliant with https://url.spec.whatwg.org, work that at the time was not worth it because of the layering.Do you know what was missing? I think that it uses the same URL canonicalization routines under the hood, so in theory, the behavior should be the same. The main issues I would see with combining the implementation is that:- we assume that KURL is cheap to copy- we probably share the memory for the url spec with URLs returned via the v8 bindingsPulling out weborigin into its own library, as you tried, sounds like a good thing to do even if it requires some massaging of types.I had to run before I got it fully compiling, but I think that's actually what I'm going to do. There's too many interdependencies between things in platform to easily split it apart. For example, a lot of random files depend on the blob code which depends on Mojo.Would you help me understand how this will work? Won't it create the following cycle?//third_party/WebKit/platform/ => //third_party/WebKit/weborigin///third_party/WebKit/weborigin/ => //third_party/WebKit/platform/ (because weborigin depends on WTF::String, which is defined in //third_party/WebKit/platform/wtf/)
Daniel
/DanielI was doing some refactoring and I noticed that we have dependency cycles for some of the code in platform that uses Mojo. Today, there are several places in the code where:1. //third_party/WebKit/Source/platform depends on a Mojo service.2. The Mojo service uses string or url.mojom.Url.3. Which causes the Blink variant to use WTF::String or KURL.4. Which are, of course, defined in platform.This is problematic: we get away with it today by inlining all the code in the header and just not declaring the dependency on //third_party/WebKit/Source/platform in the typemap: see KURL.typemap as an example. I tried moving some code in the KURL struct traits to a separate source file, and the build promptly exploded: https://chromium-review.googlesource.com/c/chromium/src/+/680255I would like to propose that:- //third_party/WebKit/Source/platform may not depend on Mojo services.- if code in //third_party/WebKit/Source/platform wants to use a Mojo service, it needs to be a separate build target.- existing code that uses Mojo services in //third_party/WebKit/Source/platform needs to be moved to separate targets to follow this rule. This requires updating graphics, instrumentation, loader, mojo, network, and text/hyphenation to be their own targets.An alternate strategy is to just pull weborigin into its own library; however, when I tried this, I ended up having to put WebString.cpp and runtime enabled features in yet another target, so that the weborigin library could depend on it. It felt pretty arbitrary to group WebString.cpp and runtime enabled features together like this just to get code to build.Daniel
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
--/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
On Mon, Sep 25, 2017 at 5:27 PM, Colin Blundell <blun...@chromium.org> wrote:Can you remind me of what the vision is for the role of //third_party/WebKit/Source/platform in the post-BOS 2.0 world? I'm wondering what the right *conceptual* relationship between that directory and the services world is, before getting to the question of technical complexities.After Onion Soup 2.0, //third_party/WebKit/Source/platform/ becomes a Blink-specific library. If a given library is used by Chromium and Blink, it should go to //base/, //cc/, //third_party/WebKit/common/ etc. If a given library is specific to Blink, it should go to //third_party/WebKit/Source/platform/.
Best,Colin
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
----/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/op.y632iwkkrbppqq%40cicero2.linkoping.osa.
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
On Mon, Sep 25, 2017 at 9:02 PM Kentaro Hara <har...@chromium.org> wrote:On Mon, Sep 25, 2017 at 5:52 PM, Daniel Cheng <dch...@chromium.org> wrote:On Mon, Sep 25, 2017 at 4:46 PM Daniel Bratell <bra...@opera.com> wrote:If the problem is KURL in particular I think there should be a specific plan for that one since its layering today with GURL as the backend is artificial, and, I assume, a remnant of the WebKit in Chromium time. Last I checked it was also in need of work to become compliant with https://url.spec.whatwg.org, work that at the time was not worth it because of the layering.Do you know what was missing? I think that it uses the same URL canonicalization routines under the hood, so in theory, the behavior should be the same. The main issues I would see with combining the implementation is that:- we assume that KURL is cheap to copy- we probably share the memory for the url spec with URLs returned via the v8 bindingsPulling out weborigin into its own library, as you tried, sounds like a good thing to do even if it requires some massaging of types.I had to run before I got it fully compiling, but I think that's actually what I'm going to do. There's too many interdependencies between things in platform to easily split it apart. For example, a lot of random files depend on the blob code which depends on Mojo.Would you help me understand how this will work? Won't it create the following cycle?//third_party/WebKit/platform/ => //third_party/WebKit/weborigin///third_party/WebKit/weborigin/ => //third_party/WebKit/platform/ (because weborigin depends on WTF::String, which is defined in //third_party/WebKit/platform/wtf/)wtf is a separate library, so weborigin will depend on that directly to avoid this dependency cycle.
Daniel
Daniel
/DanielI was doing some refactoring and I noticed that we have dependency cycles for some of the code in platform that uses Mojo. Today, there are several places in the code where:1. //third_party/WebKit/Source/platform depends on a Mojo service.2. The Mojo service uses string or url.mojom.Url.3. Which causes the Blink variant to use WTF::String or KURL.4. Which are, of course, defined in platform.This is problematic: we get away with it today by inlining all the code in the header and just not declaring the dependency on //third_party/WebKit/Source/platform in the typemap: see KURL.typemap as an example. I tried moving some code in the KURL struct traits to a separate source file, and the build promptly exploded: https://chromium-review.googlesource.com/c/chromium/src/+/680255I would like to propose that:- //third_party/WebKit/Source/platform may not depend on Mojo services.- if code in //third_party/WebKit/Source/platform wants to use a Mojo service, it needs to be a separate build target.- existing code that uses Mojo services in //third_party/WebKit/Source/platform needs to be moved to separate targets to follow this rule. This requires updating graphics, instrumentation, loader, mojo, network, and text/hyphenation to be their own targets.An alternate strategy is to just pull weborigin into its own library; however, when I tried this, I ended up having to put WebString.cpp and runtime enabled features in yet another target, so that the weborigin library could depend on it. It felt pretty arbitrary to group WebString.cpp and runtime enabled features together like this just to get code to build.Daniel
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsubsc...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
--/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsubsc...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKrC8S06OfGxPLo5yiyx5o68ornczG2o6s0WjjVph7aNMQ%40mail.gmail.com.
--Kentaro Hara, Tokyo, Japan
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKpP8vzG_eXBPgVK9dGDM904F-KTnvb1MSx2%3DWMjBZ%2BUKQ%40mail.gmail.com.To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsubsc...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
On Mon, Sep 25, 2017 at 8:59 PM Kentaro Hara <har...@chromium.org> wrote:On Mon, Sep 25, 2017 at 5:27 PM, Colin Blundell <blun...@chromium.org> wrote:Can you remind me of what the vision is for the role of //third_party/WebKit/Source/platform in the post-BOS 2.0 world? I'm wondering what the right *conceptual* relationship between that directory and the services world is, before getting to the question of technical complexities.After Onion Soup 2.0, //third_party/WebKit/Source/platform/ becomes a Blink-specific library. If a given library is used by Chromium and Blink, it should go to //base/, //cc/, //third_party/WebKit/common/ etc. If a given library is specific to Blink, it should go to //third_party/WebKit/Source/platform/.I think of platform as something of a glue layer between Blink and non-Blink code. In the past, it was to allow Blink to directly consume things from //content via a layer of indirection. Today, it is also a glue layer for using things like //net directly in Blink. I'm not sure what it will look like going forward: we're allowing more base dependencies in the rest of Blink now, but I think we probably still don't want to expose things like std::string to the rest of Blink?
Daniel
Best,Colin
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
----/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/op.y632iwkkrbppqq%40cicero2.linkoping.osa.
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAMGE5NG_vsMhHJTcNrP%2Bc--L5af-itBG8WxryNr_yN-1Uuni6Q%40mail.gmail.com.
--Kentaro Hara, Tokyo, Japan
On Mon, Sep 25, 2017 at 10:32 PM, Daniel Cheng <dch...@chromium.org> wrote:On Mon, Sep 25, 2017 at 9:02 PM Kentaro Hara <har...@chromium.org> wrote:On Mon, Sep 25, 2017 at 5:52 PM, Daniel Cheng <dch...@chromium.org> wrote:On Mon, Sep 25, 2017 at 4:46 PM Daniel Bratell <bra...@opera.com> wrote:If the problem is KURL in particular I think there should be a specific plan for that one since its layering today with GURL as the backend is artificial, and, I assume, a remnant of the WebKit in Chromium time. Last I checked it was also in need of work to become compliant with https://url.spec.whatwg.org, work that at the time was not worth it because of the layering.Do you know what was missing? I think that it uses the same URL canonicalization routines under the hood, so in theory, the behavior should be the same. The main issues I would see with combining the implementation is that:- we assume that KURL is cheap to copy- we probably share the memory for the url spec with URLs returned via the v8 bindingsPulling out weborigin into its own library, as you tried, sounds like a good thing to do even if it requires some massaging of types.I had to run before I got it fully compiling, but I think that's actually what I'm going to do. There's too many interdependencies between things in platform to easily split it apart. For example, a lot of random files depend on the blob code which depends on Mojo.Would you help me understand how this will work? Won't it create the following cycle?//third_party/WebKit/platform/ => //third_party/WebKit/weborigin///third_party/WebKit/weborigin/ => //third_party/WebKit/platform/ (because weborigin depends on WTF::String, which is defined in //third_party/WebKit/platform/wtf/)wtf is a separate library, so weborigin will depend on that directly to avoid this dependency cycle.Ah, I was misunderstanding this.When we moved wtf/ to platform/wtf/, we were talking about removing hacks around HeapVector and HeapHashTable that were needed because Oilpan and WTF existed in different link units. So I thought that platform/wtf/ was already merged to the platform/ link unit. (And now I realized that it's important to keep platform/wtf/ as a separate library.)
Do you think there's any option to move weborigin, KURL etc to platform/wtf/?
Daniel
Daniel
/DanielI was doing some refactoring and I noticed that we have dependency cycles for some of the code in platform that uses Mojo. Today, there are several places in the code where:1. //third_party/WebKit/Source/platform depends on a Mojo service.2. The Mojo service uses string or url.mojom.Url.3. Which causes the Blink variant to use WTF::String or KURL.4. Which are, of course, defined in platform.This is problematic: we get away with it today by inlining all the code in the header and just not declaring the dependency on //third_party/WebKit/Source/platform in the typemap: see KURL.typemap as an example. I tried moving some code in the KURL struct traits to a separate source file, and the build promptly exploded: https://chromium-review.googlesource.com/c/chromium/src/+/680255I would like to propose that:- //third_party/WebKit/Source/platform may not depend on Mojo services.- if code in //third_party/WebKit/Source/platform wants to use a Mojo service, it needs to be a separate build target.- existing code that uses Mojo services in //third_party/WebKit/Source/platform needs to be moved to separate targets to follow this rule. This requires updating graphics, instrumentation, loader, mojo, network, and text/hyphenation to be their own targets.An alternate strategy is to just pull weborigin into its own library; however, when I tried this, I ended up having to put WebString.cpp and runtime enabled features in yet another target, so that the weborigin library could depend on it. It felt pretty arbitrary to group WebString.cpp and runtime enabled features together like this just to get code to build.Daniel
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
--/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKrC8S06OfGxPLo5yiyx5o68ornczG2o6s0WjjVph7aNMQ%40mail.gmail.com.
--Kentaro Hara, Tokyo, Japan
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKpP8vzG_eXBPgVK9dGDM904F-KTnvb1MSx2%3DWMjBZ%2BUKQ%40mail.gmail.com.
--Kentaro Hara, Tokyo, Japan
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CABg10jy-n%3D0fsjwm%2BSErwzXKdC%3D0zE_ZAJzWfKAh%2BoXSQP%2BBjw%40mail.gmail.com.
On Mon, Sep 25, 2017 at 10:47 PM Kentaro Hara <har...@chromium.org> wrote:On Mon, Sep 25, 2017 at 10:32 PM, Daniel Cheng <dch...@chromium.org> wrote:On Mon, Sep 25, 2017 at 9:02 PM Kentaro Hara <har...@chromium.org> wrote:On Mon, Sep 25, 2017 at 5:52 PM, Daniel Cheng <dch...@chromium.org> wrote:On Mon, Sep 25, 2017 at 4:46 PM Daniel Bratell <bra...@opera.com> wrote:If the problem is KURL in particular I think there should be a specific plan for that one since its layering today with GURL as the backend is artificial, and, I assume, a remnant of the WebKit in Chromium time. Last I checked it was also in need of work to become compliant with https://url.spec.whatwg.org, work that at the time was not worth it because of the layering.Do you know what was missing? I think that it uses the same URL canonicalization routines under the hood, so in theory, the behavior should be the same. The main issues I would see with combining the implementation is that:- we assume that KURL is cheap to copy- we probably share the memory for the url spec with URLs returned via the v8 bindingsPulling out weborigin into its own library, as you tried, sounds like a good thing to do even if it requires some massaging of types.I had to run before I got it fully compiling, but I think that's actually what I'm going to do. There's too many interdependencies between things in platform to easily split it apart. For example, a lot of random files depend on the blob code which depends on Mojo.Would you help me understand how this will work? Won't it create the following cycle?//third_party/WebKit/platform/ => //third_party/WebKit/weborigin///third_party/WebKit/weborigin/ => //third_party/WebKit/platform/ (because weborigin depends on WTF::String, which is defined in //third_party/WebKit/platform/wtf/)wtf is a separate library, so weborigin will depend on that directly to avoid this dependency cycle.Ah, I was misunderstanding this.When we moved wtf/ to platform/wtf/, we were talking about removing hacks around HeapVector and HeapHashTable that were needed because Oilpan and WTF existed in different link units. So I thought that platform/wtf/ was already merged to the platform/ link unit. (And now I realized that it's important to keep platform/wtf/ as a separate library.)I think we could actually do this: basically, we'd have a "platform_base" that can't depend on Mojo, and foundational types like Oilpan, WTF, et cetera would all be in there.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKrc%3DpjJGX2aNdpM-k7d9x32T%2BDqMONCZ%2BFzutgf2jEkrg%40mail.gmail.com.
Daniel
Daniel
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
--/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKrC8S06OfGxPLo5yiyx5o68ornczG2o6s0WjjVph7aNMQ%40mail.gmail.com.
--Kentaro Hara, Tokyo, Japan
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKpP8vzG_eXBPgVK9dGDM904F-KTnvb1MSx2%3DWMjBZ%2BUKQ%40mail.gmail.com.
--Kentaro Hara, Tokyo, Japan--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CABg10jy-n%3D0fsjwm%2BSErwzXKdC%3D0zE_ZAJzWfKAh%2BoXSQP%2BBjw%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architecture-dev+unsub...@chromium.org.
To post to this group, send email to platform-architecture-dev@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKrc%3DpjJGX2aNdpM-k7d9x32T%2BDqMONCZ%2BFzutgf2jEkrg%40mail.gmail.com.
(I'm not planning to randomize this discussion but...) is there any option to make Mojo's Blink variant part of the platform link target?Conceptually it looks strange that non-Web-Platform code (i.e., things other than core/ and modules/) depends on platform/. Mojo's Blink variant is doing that and it seems like the root cause of the problem.
Daniel
Daniel
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKqoaSLkkZVrQkYyK2gS7ErJe1gzNBuO%2BxFhSPKgZGMDAw%40mail.gmail.com.
--/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKrC8S06OfGxPLo5yiyx5o68ornczG2o6s0WjjVph7aNMQ%40mail.gmail.com.
--Kentaro Hara, Tokyo, Japan
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKpP8vzG_eXBPgVK9dGDM904F-KTnvb1MSx2%3DWMjBZ%2BUKQ%40mail.gmail.com.
--Kentaro Hara, Tokyo, Japan--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CABg10jy-n%3D0fsjwm%2BSErwzXKdC%3D0zE_ZAJzWfKAh%2BoXSQP%2BBjw%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAF3XrKrc%3DpjJGX2aNdpM-k7d9x32T%2BDqMONCZ%2BFzutgf2jEkrg%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAP_mGKq_-gBaMg%3DA4kA0gbOfRtnXioA%3DrgTGWWVOdmsstUB8LQ%40mail.gmail.com.