Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upMove surfman out of webxr-api #90
Conversation
381f5c4
to
f49c45a
|
You can see the Servo changes in servo/servo@master...jdm:less-rebuild. |
|
My attempt at doing this, which is very similar but avoids some issues with the orphan rule by putting the API in surfman-chains-api... https://github.com/asajeffrey/webxr/tree/split-surfman-chains-api-and-impl and https://github.com/asajeffrey/surfman-chains/tree/split-api-and-impl |
|
I've not done the matching changes to servo yet, but they should be pretty straightforward. |
|
The matching servo changes which are a lot like yours! https://github.com/asajeffrey/servo/tree/split-surfman-chains-api-and-impl |
|
I'm okay with both ways of doing it. Note that if we take Alan's approach, you will have to only patch on surfman-chains and not surfman-chains-api when using |
|
Submitted #91. |
|
|
|
Closing in favour of #91. Me me me it's my code by me! |
jdm commentedNov 14, 2019
Having surfman in the public api of webxr-api means that we rebuild some of the largest parts of Servo when changing surfman. These changes use generics to remove that dependency. It's not a perfect end result; it would be conceptually cleaner to push the Surface/SwapChains/SwapChain implementations into Servo itself, but that quickly runs into more complicated type shenanigans without actually yielding a significantly better compilation path.