Bug 1243581 (stylo)

[meta] implement support for Servo's style system in Gecko

NEW
Unassigned

Status

()

enhancement
3 years ago
12 days ago

People

(Reporter: heycam, Unassigned)

Tracking

(Depends on 64 bugs, Blocks 3 bugs, {meta})

Trunk
Points:
---
1299250, 1331440, 1331843, 1334756, 1340224, 1347011, 1348869, 1354566, 1355668, 1374135, 1376082, 1382550, 1388949, 1391341, 1405633, 1413654, 1439440, 1532260, oxidation, 1234773, 1241373, 1241378, 1244068, 1244074, 1250377, 1250379, 1250767, 1250788, 1250790, 1251145, 1251496, 1252611, 1252980, 1253078, 1253149, 1258017, 1259802, 1260310, 1261552, 1261754, 1262357, 1264830, 1266249, 1266324, 1267560, 1267564, 1267833, 1268390, 1268392, 1268404, 1268748, 1268759, 1269901, 1269933, 1269936, 1270374, 1270696, 1270741, 1270956, 1271168, 1271510, 1271869, 1272537, 1273424, 1273771, 1273838, 1274339, 1274443, 1275452, 1275755, 1275766, 1277154, 1280578, 1280745, 1280746, 1280772, 1281082, 1281393, 1283620, 1283898, 1285235, 1286089, 1286483, 1286484, 1287382, 1287383, 1288046, 1288264, 1288265, 1288266, 1288272, 1288277, 1288283, 1288285, 1288302, 1288349, 1288350, 1289617, 1289620, 1289868, 1289973, 1290061, 1290189, 1290205, 1290209, 1290214, 1290218, 1290224, 1290228, 1290276, 1290285, 1291207, 1291376, 1291390, 1291513, 1291786, 1291863, 1291885, 1292272, 1292274, 1292275, 1292278, 1292279, 1292280, 1292281, 1292284, 1292285, 1292370, 1292609, 1292662, 1292729, 1293768, 1293809, 1293812, stylo-shadow, 1294742, stylo-static-analysis, 1295244, 1296149, 1296173, 1296212, 1296432, 1296477, 1296594, 1297235, 1297249, 1297322, 1297541, 1297857, 1297963, 1298558, 1298588, 1299020, 1299261, 1299392, 1299396, 1299629, 1300006, 1300049, stylo-incubator, 1300290, 1300505, 1300731, 1301316, 1302826, 1302945, 1303229, 1303235, 1304244, 1304621, 1304792, 1305141, 1307592, 1308404, 1309087, 1309090, 1309202, 1309848, 1310123, 1310463, 1310560, 1310885, 1310886, 1311598, 1311870, 1312338, 1314161, 1314200, 1314839, 1315157, 1315632, 1315851, 1315889, 1318200, 1318238, 1318611, 1319336, 1319484, 1319564, 1319568, 1319614, 1319633, 1320000, 1320812, 1321035, 1321150, 1321284, 1321725, 1321754, 1321766, 1321769, 1322094, 1322098, 1322185, 1322317, 1322446, 1322568, 1322570, 1322658, 1323372, 1323384, 1323404, 1323647, 1323657, 1323668, 1323672, 1323680, 1323689, 1323693, 1323697, 1323714, 1323716, 1323892, 1324250, 1324341, 1324618, 1324619, 1324624, 1324633, 1324634, 1324635, 1324636, 1324640, 1324643, 1324645, 1324646, 1324647, 1324658, 1324665, 1324669, 1324672, 1324677, 1324681, 1324682, 1324684, 1324689, 1324697, 1324699, 1324700, 1324701, 1324702, 1324703, 1324977, 1324983, 1325326, 1325529, 1325878, 1326015, 1326131, 1326242, 1328223, 1328319, 1328420, 1328487, 1328499, 1328503, 1328505, 1328507, 1328509, 1328511, 1328655, 1328825, 1328954, 1329054, 1329088, 1329093, 1329361, 1329876, 1329878, 1329882, 1330041, 1330051, 1330259, 1330260, stylo-nightly, 1330503, 1330550, 1330589, 1331047, 1331291, 1331316, 1331326, 1331533, 1331560, 1331578, 1331584, 1331844, 1331848, 1331860, 1332525, 1332633, 1332657, 1332915, 1333183, 1333311, 1334036, 1334330, 1334730, 1334732, 1334768, 1334938, 1335203, 1335312, 1335339, 1335340, 1335574, 1335998, 1336113, 1336863, 1336891, 1337068, 1337075, 1337185, 1337313, 1337612, 1337615, 1337643, 1337656, 1337657, 1337679, 1337695, 1337700, 1337703, 1337735, 1338007, 1338087, 1338388, 1338452, 1338761, 1338762, 1338763, 1338764, 1338872, 1338936, 1338964, 1339033, 1339075, 1339314, 1339316, 1339318, 1339345, 1339349, 1339396, 1339629, 1339656, 1339704, 1339711, 1339752, 1340005, 1340107, 1340404, 1340405, 1340445, 1340457, 1340484, 1340500, 1340506, 1340508, 1340509, 1340561, 1340607, 1340683, 1340696, 1340728, 1340866, 1340961, 1341003, stylo-bustage, 1341104, 1341194, 1341195, 1341348, 1341372, 1341642, 1341647, 1341648, 1341667, 1341697, 1341703, 1341712, 1341719, 1341721, 1341724, 1341725, 1341758, 1341761, 1341769, 1341802, 1341815, 1341973, 1342006, 1342106, 1342188, 1342289, 1342331, 1342493, 1342557, 1342559, 1342710, 1342738, 1342739, 1343153, 1343159, 1343362, 1343701, 1344131, 1344314, 1344507, 1344508, 1344581, 1344626, 1345882, 1346062, 1346170, 1346232, 1347053, 1348022, 1348030, 1348477, 1348486, 1348487, 1348689, 1348723, 1349479, 1349553, 1349909, 1350244, 1350401, 1351200, 1351356, 1351724, 1351737, 1351971, 1351973, 1351978, 1352277, 1352285, 1352291, 1352628, 1353240, 1353918, 1354404, 1354426, 1354772, 1354798, 1355017, 1355388, 1355464, 1355722, 1355761, 1355843, 1355900, 1356107, 1356148, 1356494, 1357350, 1357583, 1357716, 1357724, 1357732, 1358150, 1358634, 1358806, 1359217, 1359248, 1359313, 1360221, 1361013, 1361235, 1361303, 1361933, 1361981, 1362292, 1363000, 1363789, 1363968, 1363974, 1363984, 1364260, 1364799, 1365066, 1365100, 1365300, 1365370, 1365472, 1365488, 1365510, 1365822, 1366144, 1366162, 1366163, 1366422, 1366427, 1366636, 1366921, 1366961, 1367290, 1367291, 1367292, 1367299, 1367327, 1367374, 1367615, 1367620, 1367923, 1367947, 1368000, 1368589, 1369321, 1369867, 1370779, 1370782, 1370810, 1370830, 1371030, 1371034, 1371036, 1371112, 1371388, 1371393, 1371408, 1371410, 1371493, 1371708, 1372023, 1372056, 1372089, 1372762, 1373017, 1373155, 1373193, 1373325, 1373828, 1374062, 1374994, 1375150, 1375230, 1375336, 1375513, 1375550, 1375674, 1375902, 1377197, 1379425, 1379577, 1379606, 1379985, 1380259, 1380890, 1380945, 1380980, 1381017, 1381083, 1381665, 1381724, 1382288, 1382687, 1383319, 1383323, 1383933, 1384114, 1384398, 1384691, 1384789, 1384802, 1385469, 1385656, 1386964, 1387116, 1387531, 1387687, 1388378, 1388877, 1388904, 1389113, 1394586, 1394630, 1394696, 1394935, 1396044, 1396048, 1396093, 1397384, 1398479, 1399006, 1399349, 1399941, 1400926, 1401210, 1401801, 1403030, 1403073, 1403465, 1403839, 1404678, 1405544, 1405995, 1408672, 1410028, 1411250, 1415946, 1417991, 1428164, 1437662
1344139, 1345688, 1345694, 1346065, 1347852, 1348136, 1349100, 1349295, 1349297, 1350857, 1351662, 1352150, 1353592, 1353964, 1353967, 1354987, 1355101, 1355106, 1359615, 1361032, 1365475, 1365476, 1369329, 1370344, 1371512, 1372266, 1374021, 1375524, 1375971, 1377834, 1380257, 1381629, 1381693, 1383506, 1384681, stylo-crash-reports, 1388849, 1389742, 1400510, 1400771, 1408323, 1412441, 1413533, 1437785, 1440561, 1450903, stylo-bughunter, 1343753, 1343964, 1344104, 1344668, 1344914, 1345025, stylo-syntax, 1345204, 1345206, 1345207, 1345218, 1345498, 1345691, 1345695, 1345697, 1345699, 1345709, 1346018, 1346049, 1346052, 1346103, 1346256, 1346481, 1346493, 1346693, 1346988, 1347065, 1347250, 1347270, 1347408, 1347410, 1347828, 1347848, 1348165, 1348173, 1348481, 1348488, 1348489, 1348490, 1348491, 1348492, 1348587, 1348615, 1348802, 1348873, 1348935, 1349004, 1349332, 1349417, 1349438, 1349651, 1349885, 1350140, 1350147, 1350175, 1350739, 1350853, 1351015, 1351026, 1351262, 1351996, 1352275, 1352293, 1352306, 1352308, 1352487, 1352514, 1352565, 1352669, 1352743, 1352968, 1353177, 1353191, 1353202, 1353218, 1353239, 1353317, 1353628, 1353948, 1353960, 1353966, 1353994, 1354000, 1354215, 1354437, 1354439, 1354487, 1354565, 1354728, 1354876, 1354879, 1354886, 1354895, 1354947, 1354965, 1354975, 1354984, 1354990, 1354998, 1355001, 1355003, 1355005, 1355014, 1355343, 1355345, 1355364, 1355366, 1355368, 1355380, 1355394, 1355402, 1355408, 1355412, 1355427, 1355674, 1355707, 1355715, 1355716, 1355721, 1355723, 1355724, 1355758, 1355762, 1356072, 1356074, 1356085, 1356103, 1356104, 1356105, 1356124, 1356125, 1356134, 1356186, 1356953, 1356971, 1357357, 1357461, 1357671, stylo-inidomutils, stylo-devtools-tests, 1357906, 1357973, 1358362, 1358375, 1358688, 1358693, 1358694, 1358812, 1358968, 1358990, 1358993, 1359303, 1359323, 1359491, 1359603, 1359719, 1359787, 1359897, 1360088, 1360133, 1360144, 1360659, 1360767, 1360772, 1360805, 1360878, 1360991, 1361176, 1361297, 1361550, 1361618, 1361663, 1361843, 1361938, 1361994, 1362549, 1363244, 1363295, 1363531, 1363549, 1363576, 1363590, 1363592, 1363596, 1363640, 1363778, 1363971, 1363986, 1364009, 1364162, 1364206, 1364273, 1364286, 1364289, 1364303, 1364354, 1364361, 1364412, 1364824, 1364871, 1364873, 1364880, 1365159, 1365160, 1365162, 1365471, 1365629, 1365678, 1365855, 1365900, stylo-android, 1366157, 1366347, 1366454, 1366544, 1366709, 1366721, 1366914, 1366956, 1367118, 1367274, 1367275, 1367301, 1367306, 1367310, 1367312, 1367315, 1367523, 1367589, 1367592, 1367619, 1367996, 1368236, 1368240, 1368381, 1368986, 1369198, 1369228, 1369954, 1370358, 1370446, 1370461, 1370734, 1370802, 1371049, 1371130, 1371187, 1371395, 1371457, 1371478, 1371577, 1371722, 1371955, 1371963, 1371975, 1372041, 1372061, 1372335, 1372876, 1373159, 1374017, 1374019, stylo-release, 1374247, 1374357, 1374541, 1374752, 1374902, 1374996, 1375374, 1375536, 1375555, 1375812, 1376071, 1376073, 1376077, 1376352, 1376359, 1376640, 1376832, 1376964, 1377053, 1377068, 1377115, 1377469, 1378190, 1378275, 1378540, 1379299, 1379505, 1379830, 1379864, 1380086, 1380789, 1380938, 1381690, 1382017, 1382285, 1382369, 1382786, 1382812, 1382925, 1382956, 1382964, 1383075, 1383634, 1384656, 1385154, 1385529, 1385789, 1387992, 1388881, 1388941, 1388943, 1389871, 1390610, 1390650, 1390773, 1391120, 1392093, 1392844, 1392918, 1393603, 1393967, 1394035, 1396045, 1396664, 1396700, 1397052, 1400078, 1400084, 1401322, 1401792, 1404006, 1405881, 1407701, 1451956
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(URL)

Attachments

(3 obsolete attachments)

Comment hidden (empty)
Depends on: 1244068
Depends on: 1244074
Depends on: 1250377
Depends on: 1250379
Summary: support multiple style system backends → implement support for Servo's style system in Gecko
Depends on: 1250767
Depends on: 1250788
Depends on: 1250790
Depends on: 1251145
Depends on: 1251496
I think we're going to have a fair number of things like this, so I'd rather
put them all in one place, rather that defining them in the header for the first
consumer that uses the type.
Attachment #8723916 - Flags: review?(cam)
Comment on attachment 8723916 [details] [diff] [review]
Part 1 - Hoist existing RefPtrTraits into a ServoBindingHelpers.h. v1

Wrong bug.
Attachment #8723916 - Attachment is obsolete: true
Attachment #8723916 - Flags: review?(cam)
Attachment #8723917 - Attachment is obsolete: true
Attachment #8723917 - Flags: review?(cam)
Attachment #8723918 - Attachment is patch: false
Attachment #8723918 - Flags: review?(cam)
Attachment #8723918 - Attachment is obsolete: true
Attachment #8723918 - Attachment is patch: true
Depends on: 1252611
Depends on: 1252980
Depends on: 1253078
Depends on: 1253149
Depends on: 1258017
Depends on: 1259802
Depends on: 1260310
Depends on: 1261552
Depends on: 1261754
Because this doesn't seem to mentioned anywhere, the Servo side of this bug seems live in this folder: https://github.com/servo/servo/tree/master/ports/geckolib.
(In reply to Tom Schuster [:evilpie] from comment #5)
> Because this doesn't seem to mentioned anywhere, the Servo side of this bug
> seems live in this folder:
> https://github.com/servo/servo/tree/master/ports/geckolib.

Yeah. Instructions for building are here: https://public.etherpad-mozilla.org/p/stylo
Depends on: 1262357
Depends on: 1264830
Depends on: 1266249
Depends on: 1266324
Depends on: 1267560
Depends on: 1267564
Depends on: 1267833
Depends on: 1268390
Depends on: 1268392
Depends on: 1268404
Depends on: 1268748
Depends on: 1268759
Depends on: 1269901
Depends on: 1269933
Depends on: 1269936
Depends on: 1270374
Depends on: 1270696
Depends on: 1270741
Depends on: 1270956
Depends on: 1271168
Depends on: 1271510
Depends on: 1271869
Depends on: 1272537
Depends on: 1273424
Depends on: 1273771
Depends on: 1273838
Depends on: 1274339
Depends on: 1274443
Depends on: 1275452
Depends on: 1275755
Depends on: 1275766
Depends on: 1277154
Depends on: 1280745
Depends on: 1280746
Depends on: 1280772
Depends on: 1281082
Depends on: 1281393
Depends on: 1281964
Depends on: 1283620
Depends on: oxidation
Depends on: 1286089
Depends on: 1286483
Depends on: 1286484
Depends on: 1287049
Depends on: 1287382
Depends on: 1287383
Depends on: 1288046
Depends on: 1288264
Depends on: 1288265
Depends on: 1288266
Depends on: 1288272
Depends on: 1288277
Depends on: 1288280
Depends on: 1288283
Depends on: 1288285
Depends on: 1288302
Depends on: 1288349
Depends on: 1288350
Depends on: 1288352
No longer depends on: oxidation
Depends on: 1288857
Depends on: 1289587
Depends on: 1289617
Depends on: 1289620
Depends on: 1289622
Depends on: 1289624
Depends on: 1289860
Depends on: 1289863
Depends on: stylo-perf
No longer depends on: 1289863
No longer depends on: 1289860
No longer depends on: 1289587
Depends on: 1289916
Depends on: 1289935
Depends on: 1289973
Depends on: 1290205
Depends on: 1290209
Depends on: 1290214
Depends on: 1290218
Depends on: 1290224
Depends on: 1290228
Depends on: 1290237
Depends on: 1290276
Depends on: 1290285
Depends on: 1291207
Depends on: stylo-jemalloc
Depends on: 1291376
Depends on: 1291390
Depends on: 1291885
Depends on: 760345
Depends on: 1292272
Depends on: 1292274
Depends on: 1292275
Depends on: 1292278
Depends on: 1292279
Depends on: 1292280
Depends on: 1292281
Depends on: 1292283
Depends on: 1292284
Depends on: 1292285
Depends on: 1292370
Depends on: 1292609
Depends on: 1292618
No longer depends on: 1292609
No longer depends on: 1292618
No longer depends on: 1290335
No longer depends on: 1289916
No longer depends on: 1289622
No longer depends on: 1289624
No longer depends on: 1287951
No longer depends on: 1287542
No longer depends on: 1287049
No longer depends on: 1286445
No longer depends on: 1285474
Depends on: 1292662
Depends on: 1292729
No longer depends on: 1293399
Depends on: stylo-memory
Depends on: 1293809
Depends on: 1293812
Depends on: stylo-shadow
Depends on: stylo-chrome
Depends on: 1294742
Depends on: 1294893
No longer depends on: 1288280
No longer depends on: 1294893
Depends on: 1295244
Depends on: 1296149
Depends on: 1296173
Depends on: 1296212
Depends on: 1296594
Depends on: 1297235
Depends on: 1297249
Depends on: 1297322
Depends on: 1297541
Depends on: 1297817
Depends on: 1297963
Depends on: 1298558
Depends on: 1299261
Depends on: 1299629
Depends on: 1300287
No longer depends on: 1300287
No longer depends on: 1299971
No longer depends on: 1300379
Depends on: 1301001
Depends on: 1301258
Depends on: 1301316
Depends on: 1302028
Depends on: 1302945
Depends on: 1303229
No longer depends on: 1300372
Depends on: 1304621
Depends on: 1304792
Depends on: 1304797
Depends on: 1305141
Depends on: 1308404
Depends on: 1309087
Depends on: 1309090
Depends on: 1309202
Depends on: 1310123
Depends on: 1310463
Depends on: 1310560
Depends on: 1310885
Depends on: 1310886
Depends on: 1311598
Depends on: 1311870
Depends on: 1312338
No longer depends on: 1313392
No longer depends on: 1288857
No longer depends on: 1292370
Depends on: 1315157
Depends on: 1315632
Depends on: 1300290
Depends on: 1315851
Depends on: 1315889
Depends on: 1317211
Depends on: 1318107
Depends on: 1318187
Depends on: 1318200
Depends on: 1318238
Depends on: 1319336
Depends on: 1319484
Depends on: 1319564
Depends on: 1319568
Depends on: 1319614
Depends on: 1319633
Depends on: 1319968
Depends on: 1320000
Depends on: 1321035
Depends on: 1321150
Depends on: 1321284
Depends on: 1321725
Depends on: 1321754
Depends on: 1321766
Depends on: 1321769
Depends on: 1322098
Depends on: 1322185
Depends on: 1322317
Depends on: 1322568
Depends on: 1322570
Depends on: 1322656
Depends on: 1322658
Depends on: 1322769
Depends on: 1323140
Depends on: 1323145
Depends on: 1323146
Depends on: 1323372
Depends on: 1323384
Depends on: 1323404
Depends on: 1323643
Depends on: 1323668
Depends on: 1323714
Depends on: 1323892
Depends on: 1324341
Depends on: stylo-reftest
Depends on: 1324618
Depends on: 1324619
Depends on: 1324624
Depends on: stylo-perf-test
Depends on: 1324697
Depends on: 1324983
Depends on: 1325326
Depends on: 1325895
Depends on: 1326015
Depends on: 1328223
Depends on: 1328319
Depends on: 1328487
Depends on: stylo-codesize
Depends on: 1328509
Depends on: 1328765
Depends on: 1328825
Depends on: 1329054
Depends on: 1328420
Depends on: 1329878
Depends on: 1329882
No longer depends on: 1322769
No longer depends on: 1302028
No longer depends on: 1323140
No longer depends on: 1318107
No longer depends on: 1328765
No longer depends on: stylo-perf-test
No longer depends on: stylo-reftest
No longer depends on: 1323643
No longer depends on: 1323145
No longer depends on: stylo-devtools
No longer depends on: 1322656
No longer depends on: stylo-style-mochitest
No longer depends on: 1319968
No longer depends on: 1304797
No longer depends on: 1301001
No longer depends on: stylo-static-analysis
No longer depends on: stylo-chrome
No longer depends on: stylo-jemalloc
No longer depends on: stylo-reftest-crashes
No longer depends on: 1289935
No longer depends on: 1288352
Depends on: 1330550
No longer depends on: 1330550
Depends on: 1331326
Depends on: stylo-alexa
No longer depends on: stylo-alexa
Depends on: 1331578
No longer depends on: 1331578
Depends on: 1331844
Depends on: 1331860
Depends on: 1331874
No longer depends on: 1331874
Depends on: 1332633
Depends on: 1332657
Depends on: 1333183
Depends on: 1334036
Depends on: 1334768
Depends on: 1334938
Depends on: 1336013
Depends on: 1337068
Depends on: 1337166
Depends on: 1337313
Depends on: 1337656
Depends on: 1337657
Depends on: 1337667
Depends on: 1337679
Depends on: 1337695
Depends on: 1337735
Depends on: 1338087
Depends on: 1338762
Depends on: 1338763
Depends on: 1325529
Depends on: 1338872
Depends on: 1338964

Updated

2 years ago
Depends on: 1339033

Updated

2 years ago
Depends on: 1339075
Depends on: 1339314
Depends on: 1339316
Depends on: 1339396
Depends on: 1339704
Depends on: 1339752
No longer depends on: 1301258
Depends on: 1340445
Depends on: 1340484
Depends on: 1340500
Depends on: 1340506
Depends on: 1340508