18
edits
(Creating the brainstorming page.) |
(Added an idea of something discussed at the all-hands that would make so much stuff so much nicer :)) |
||
Line 47: | Line 47: | ||
| | | | ||
| | | | ||
|} | |||
== Firefox / Servo integration == | |||
{| class="standard-table" border="1" style="border-collapse: collapse" | |||
|- | |||
! Title | |||
! Details | |||
! Skills Needed | |||
! Reporter | |||
! Mentor(s) | |||
! Comments | |||
|- | |||
| Autogeneration of style structs in Servo's style system | |||
| The idea would be to prototype how to run [https://github.com/rlhunt/cbindgen cbindgen] on Servo's style system [https://github.com/servo/servo/tree/master/components/style/values values module] to auto-generate style struct definitions for C++ and Rust, which would enable the removal of 5k+ [https://github.com/servo/servo/blob/master/components/style/properties/gecko.mako.rs lines] of unsafe and slow Rust <-> C++ conversion code. This can be done on a per-struct basis, so prototyping the general mechanism with a simple one like [https://github.com/servo/servo/blob/master/components/style/properties/longhand/color.mako.rs color] would be the first step, migrating more and more as time goes on. | |||
| Primarily Rust, probably Python for build system integration, and basic C++ since it needs to get generated. | |||
| [https://github.com/emilio emilio] | |||
| [https://github.com/emilio emilio] | |||
| Would like to check with other people with more experience about whether the duration / scope seems suitable. Also, will try to hunt some extra mentors :) | |||
|} | |} |
edits