[09:01:46] timmywil gibson042 rwaldron gnarf m_gol orkel jaubourg mikesherov core meeting time! [09:02:03] boosh [09:02:24] hey timmywil howya doon? [09:02:37] doin good [09:02:44] and doon good [09:02:47] . [09:02:54] thanks for cleaning up the new tix this morning [09:03:00] hey orkel [09:03:01] np [09:03:03] hey! [09:03:30] so i think we're in pretty good shape for both 1.10 and 2.0.1 [09:03:33] present [09:03:47] marked a few tix that need to be wrapped up but i don't think they're hard ones [09:04:14] anything else you guys think should be in 1.10 or 2.01? [09:04:49] i keep meeting to verify with rwaldron that his perf fix for the .data() stuff landed, don't think it did [09:05:21] ha, right [09:05:45] DaveMethvin|away no, not yet [09:05:56] I've been tied up with mozilla/b2g stuff [09:06:00] sorry :( [09:06:24] definitely wanted that in 2.0.1 but i think it was pretty much ready wasnt it? I can just find your branch and land it i think rwaldron [09:06:48] will this: http://jsperf.com/jquery-1-9-1-vs-2-0-0-beta/5 be faster in 2.x after this fix? [09:07:17] i seem to recall it was a lot better [09:07:33] honestly i think we should look at attaching the data to dom elements again in 2.x [09:07:45] it would save a lot of the cleanData costs [09:07:49] At the price of eliminating all of the Data rewrite maintainability wins [09:08:29] when i do profiler runs on real code, cleanData ends up near the top relatively often [09:08:45] that's the time when it's worthwhile to look at perf [09:08:49] we can't use dataset bc of IE, right? [09:08:53] DaveMethvin the problem with attaching data to DOM elements is that now you're asking for two different code paths [09:08:59] m_gol right ie9 [09:09:13] rwaldron for jquery 2.0? [09:09:38] you're forgetting the plain object use case [09:09:56] that should work tooo.. i think? [09:10:15] if someone loses all refs to the plain object, they'll lose the attached data [09:10:21] Sure, if you don't mind dumping our data properties onto user objects [09:10:35] DaveMethvin: IE10 doesn't support it either :/ [09:10:38] well the only complaint we got in the past was boris [09:10:41] and we can't guarantee non-enumerability thanks to old android webkit [09:11:00] so now we'll be doing this: [09:11:07] var mine = {}; [09:11:08] plain objects behavior shouldn't be the tail that wags the dog [09:11:23] jQuery(mine).data({foo: "bar"}) [09:11:46] mine { jQuery394093458039456094586094856: { user: {foo: "bar"}, priv: {...} } } [09:11:51] yep [09:12:00] has nothing to do with tails or dogs [09:12:07] it has to do with breaking code that does this: [09:12:18] for (var p in mine) { .... } [09:12:44] sure, i understand taht [09:12:55] but i also know that $(plain_object) is relatively rare [09:13:00] compared to $(anything else) [09:13:23] and we've actually changed that behavior at least 3 or 4 times in the past [09:13:24] already [09:13:34] so it's not like behavior on plain objs has been consistent [09:13:52] it will break our own tests and data() will become incompatible with 1.x [09:13:55] so anyway, on the perf regression here, is that code ready? i think it was [09:14:33] I haven't looked in a very long time [09:14:44] if 2.0 were faster i'd be good with it but it's slower and that doesn't seem good since this does turn out to be an issue for code that does a lot of dom manip [09:14:53] oh this [09:14:54] http://jsperf.com/jquery-1-9-1-vs-2-0-0-beta/7 [09:15:32] i think that was it, or something similar [09:15:40] no, that's not anything [09:15:43] well, here it's faster on Chrome [09:15:48] but on /5 not [09:15:49] all i did was remove all the other operations [09:16:02] and reduced it to _just_ the data() operation from /5 [09:16:43] so we have other perf regressions then, outside of data [09:17:07] remember tho that removing an event calls data apis several times [09:17:36] DaveMethvin let me look for it and see how bit rotted it is [09:17:40] back in a few [09:17:52] ok if it seems fine just let me know and I can grab it and land it [09:19:13] so on 13789 any objections to that? Seems like an extra insurance policy but not really critical [09:20:12] I'd be for landing it just in case [09:20:48] at least until ES6 comes ;) [09:20:58] so, about 20 years :) [09:21:02] :D [09:21:35] okay, so how about a ship date for 1.10 and 2.0.1? [09:22:01] i think they're both pretty much done unless someone has stuff that need to go in [09:22:13] I'm interested in what other perf regressions could be there in http://jsperf.com/jquery-1-9-1-vs-2-0-0-beta/5 [09:22:22] did we get a "go" on the line-height fix? [09:22:28] since http://jsperf.com/jquery-1-9-1-vs-2-0-0-beta/7 shows .data() isn't the most significant one, apparently [09:22:29] (for 1.10) [09:22:34] yeah, that looked good to me gibson042 [09:23:18] m_gol could you do some poking around there to see if you can figure out the perf regression? [09:23:29] yup, will do [09:23:35] just started ;) [09:24:22] i'll be traveling early next week, so for me I'd rather do the releases either late this week or late next [09:24:35] if we have everything wrapped up then this thursday would be fine with me [09:24:45] otherwise we could wait a week [09:25:35] seems OK for me unless this 1.x/2.x comparison shows us a major perf regression that's not so easy to fix [09:25:53] it'd be good to be able to send a clear message that 2.0.1 is faster than 1.10 [09:25:58] yeah and we can decide later this week on that based on the results [09:26:00] or not slower [09:26:12] without introducing delaying code into 1.x :P [09:26:15] right, if they're basically equal that's fine [09:26:18] lol [09:26:50] "Ticket 12345, add more slow to 1.10 (assigned, m_gol)" [09:27:50] everything seems in good shape for now, anybody have anything else? [09:28:22] I don't see anything else in Trac [09:28:38] yep, looks pretty clean [09:29:00] which reminds me, we should come up with a complete wish list for 1.11/2.1 soon [09:29:23] is there any draft somewhere? [09:29:26] i don't know if i'll make the monday meeting next week, but perhaps the following week we can talk about a few possiblities [09:29:33] none other than tickets [09:29:44] DaveMethvin https://github.com/jquery/jquery/pull/1268 [09:29:45] i wanted to add the ability to let build leave out promise/callbacks [09:29:52] rebased [09:30:00] awesome thanks rwaldron [09:30:16] it could be even faster if you agreed to one thing [09:30:21] wazzat [09:30:28] a small addition to events [09:31:10] keep track of how many properties are in `priv { events: {} }` [09:31:29] oh just a counter of event names in there? [09:31:32] yes [09:31:36] pretty minor [09:31:40] doesn't it disappear when it reaches 0? [09:31:56] naw, leave it at 0 [09:32:15] It will save a call to Object.keys(), which i'm using to determine if a given path even needs to be taken [09:32:38] i'll take a look [09:32:40] there is _alot_ of conditional execution there now [09:32:45] oh, I did find one: http://bugs.jquery.com/ticket/13835 ought to make 1.10 too [09:32:57] DaveMethvin I have to get back to moz/b2g [09:33:03] np thanks rwaldron [09:33:06] but the PR is there for you to land and tweak [09:33:13] rwaldron mind if I grab the hasClass one? [09:33:17] that's the one that i got the most benefit out of [09:33:34] gibson042 please do [09:33:35] gibson042 that one is already on the agenda, agreed [09:34:40] ok awesome [09:34:48] so anything else? [09:35:49] jQuery 2.1/1.11 changes :Add tickets for issues you think should be addressed [09:36:10] we can discuss in two weeks [09:36:17] k [09:36:31] alrighty then, lets move it over to -dev [09:36:36] thanks guys!