00:00:29  * xaxxonquit (Read error: Connection reset by peer)
00:09:55  * plutoniixjoined
00:44:37  * xaxxonjoined
00:55:15  * joyeejoined
00:55:59  * joyeequit (Remote host closed the connection)
00:56:14  * joyeejoined
01:34:02  * ncthom91joined
01:34:09  * ncthom91quit (Max SendQ exceeded)
01:35:00  * ncthom91joined
01:35:22  * ncthom91quit (Max SendQ exceeded)
01:36:25  * ncthom91joined
01:36:32  * ncthom91quit (Max SendQ exceeded)
01:37:07  * ncthom91joined
01:38:08  * ncthom91quit (Client Quit)
01:39:26  * joyeequit (Remote host closed the connection)
01:46:10  * joyeejoined
03:15:00  * xaxxon_joined
03:16:41  * zvquit (Ping timeout: 240 seconds)
03:43:02  * bradleymeckquit (Quit: bradleymeck)
04:01:13  * xaxxon_quit (Quit: Leaving)
04:02:36  * rosseauxquit (Read error: Connection reset by peer)
04:03:39  * xaxxonquit (Quit: Leaving)
04:03:40  * rosseauxjoined
05:14:03  * bobmcw_joined
05:16:17  * bobmcwquit (Ping timeout: 260 seconds)
06:01:39  * BobGneujoined
06:16:07  * trungl-botquit (Remote host closed the connection)
06:16:22  * trungl-botjoined
06:22:59  * zvjoined
07:25:33  * zvquit (Quit: WeeChat 1.6)
08:22:38  * pinepainjoined
08:37:04  * trungl-botquit (Remote host closed the connection)
08:37:18  * trungl-botjoined
08:47:38  * trungl-botquit (Remote host closed the connection)
08:47:54  * trungl-botjoined
08:59:54  * trungl-botquit (Remote host closed the connection)
09:00:09  * trungl-botjoined
09:05:49  * BobGneuquit (Read error: Connection reset by peer)
09:07:56  * trungl-botquit (Remote host closed the connection)
09:08:14  * trungl-botjoined
09:36:52  * plutoniixquit (Quit: Leaving)
10:21:17  * joyeequit (Remote host closed the connection)
11:16:08  * pinepainquit (Quit: Connection closed for inactivity)
11:25:11  * mylesborinsquit (Quit: farewell for now)
11:25:41  * mylesborinsjoined
12:09:52  * joyeejoined
14:07:06  * bobmcw_quit (Read error: No route to host)
14:19:17  * bradleymeckjoined
14:26:21  <caitp>to be honest, I'm not very thrilled with gerrit
14:26:35  <caitp>I didn't think it was possible, but it actually is even worse on mobile than rietveld is
14:26:59  <caitp>I don't think it should become the default :(
14:28:26  * Guest59quit (Read error: Connection reset by peer)
14:29:03  * Guest59joined
14:34:12  * bobmcwjoined
14:38:34  * bradleymeckquit (Quit: bradleymeck)
14:59:35  * bradleymeckjoined
15:26:25  * bradleymeckquit (Read error: Connection reset by peer)
15:35:23  * bobmcwquit (Read error: Connection reset by peer)
15:35:49  * bobmcwjoined
15:35:49  * bobmcwquit (Changing host)
15:35:49  * bobmcwjoined
15:38:01  * bobmcwquit (Read error: Connection reset by peer)
15:38:02  * bobmcw_joined
15:41:15  * bradleymeckjoined
16:01:39  * bradleymeckquit (Read error: Connection reset by peer)
16:04:51  * bradleymeckjoined
16:04:56  * bradleymeckquit (Client Quit)
16:11:33  * bobmcwjoined
16:11:33  * bobmcw_quit (Read error: Connection reset by peer)
16:15:30  * bobmcw_joined
16:17:34  * bobmcwquit (Ping timeout: 268 seconds)
16:37:21  * RT|Chatzillaquit (Quit: ChatZilla [Firefox])
16:47:48  * bobmcw_changed nick to bobmcw
16:47:49  * bobmcwquit (Changing host)
16:47:49  * bobmcwjoined
17:03:11  * bradleymeckjoined
17:12:58  * bradleymeckquit (Ping timeout: 240 seconds)
17:30:03  * bradleymeckjoined
17:31:18  * seventhjoined
17:35:26  * bobmcwquit (Read error: Connection reset by peer)
17:35:56  * bobmcwjoined
17:56:09  * Kronuzquit (Quit: I'll be back...)
18:00:38  * Kronuzjoined
18:58:43  * seventhquit (Quit: ...)
19:44:22  * joyeequit (Remote host closed the connection)
19:44:54  * joyeejoined
19:48:00  <aklein>caitp: it is going to become the default, whether we like it or not (as Rietveld is effectively unmaintained). But it's still early. do you have actionable bugs you could file?
19:48:13  <aklein>I also sit near some of the infra team if there's stuff I should poke them about
19:52:11  <aklein>caitp: the good news is that gerrit has an actual team, so if we file bugs they can actually get worked on
20:03:30  * joyee_joined
20:07:37  * joyeequit (Ping timeout: 260 seconds)
20:58:52  * joyee_quit (Read error: Connection reset by peer)
20:59:23  * joyeejoined
21:45:31  * Guest59_joined
21:47:52  * Guest59quit (Ping timeout: 240 seconds)
22:07:26  * joyeequit (Remote host closed the connection)
22:37:50  * pinepainjoined
22:40:50  <pinepain>Hi. Is it technically possible to add feature to store embedded data in Object, like in Context with GetEmbedderData/SetEmbedderData?
22:41:07  <pinepain>and it this irc channel fits for this sort of questions?
22:41:21  <pinepain>s/it/is
23:09:09  * RT|Chatzillajoined
23:12:04  * joyeejoined
23:16:35  * joyeequit (Ping timeout: 255 seconds)
23:19:58  <aklein>pinepain: SetInternalField is the solution for objects created via ObjectTemplate: https://cs.chromium.org/chromium/src/v8/include/v8.h?type=cs&q=SetInternalField+package:%5Echromium$&l=3153
23:20:39  <aklein>pinepain: for arbitrary objects, SetPrivate is your best bet: https://cs.chromium.org/chromium/src/v8/include/v8.h?rcl=1ad4dcaa827c515f4e55370f2988db00c3d5f7ae&l=3063
23:21:54  <aklein>pinepain: ah did you just ask this question on v8-users by any chance? :)
23:22:36  <pinepain>yes, i did (lost my pswd from pinepain gmail so post from other one)
23:23:09  <aklein>Adding internal fields to every object in the system seems like it would have a ton of memory overhead
23:23:48  <pinepain>I know about setting internal fields count via template, but in php-v8 i deal with already constructed objects, so no luck there
23:24:48  <pinepain>what ton would result in real-life in my case? ftr, that a php, so for me even +- 100kb mostly doesn't matter
23:24:56  <pinepain>as long as it works - it fine
23:26:18  <pinepain>maybe the approach like with V8_ARRAY_BUFFER_INTERNAL_FIELD_COUNT could be an intermediate solution which could preserve current default behavior but also allows embedders to set default internal fields count?
23:28:24  <aklein>pinepain: is your experience with SetPrivate that it's too slow, or is it more about the ergonomics of using it?
23:29:33  <aklein>pinepain: V8_ARRAY_BUFFER_INTERNAL_FIELD_COUNT is definitely interesting, never noticed that before
23:30:25  <pinepain>I haven't measured performance impact per se, it's mostly about ergonomics
23:31:28  <pinepain>e.g. php_v8_object_store_self_ptr method, https://github.com/pinepain/php-v8/blob/master/src/php_v8_object.cc#L85-L113
23:32:33  <pinepain>the private key func is https://github.com/pinepain/php-v8/blob/master/src/php_v8_object.cc#L43
23:32:38  <aklein>pinepain: unrelatedly, I would recommend passing isolate->GetCurrentContext() as the context arg of SetPrivate
23:33:49  <pinepain>what if it would be different contexts at the time of repetitive calls?
23:34:26  <aklein>pinepain: well it's only used in case of an exception doing the SetPrivate, which I'm pretty sure should never happen
23:35:07  <aklein>pinepain: I think you should be able to store the return value of ForApi somewhere (in a v8::Global) and not go back through it every time
23:35:24  <pinepain>yeah, that's on my list
23:35:40  <pinepain>aklein: sry, don't get about exception
23:36:10  <aklein>pinepain: the only thing the context argument is used for is, which context should the exception be thrown in?
23:36:18  <aklein>and I'm saying I don't think you'll ever see an exception here
23:37:52  <pinepain>aklein: oh, good to know, thanks. What's the typical usage of CreationContext? Playing with modules today I got CreationContext() as nullptr today (mentioned that in https://bugs.chromium.org/p/v8/issues/detail?id=5979#c6)
23:38:31  <aklein>pinepain: I would recommend against using CreationContext; it has some use in Chrome's DOM, but it's not a generally useful concept in ECMAScript
23:38:39  <aklein>(Objects really aren't associated with a context)
23:39:40  <pinepain>aklein: so that was valid use case when CreationContext was null, right?
23:39:58  <aklein>pinepain: sort of, although I don't think it's supposed to return null (so thanks for the report!)
23:42:15  <aklein>pinepain: is this where you construct all the v8::Objects you're trying to put PHP pointers in? https://github.com/pinepain/php-v8/blob/master/src/php_v8_object.cc#L152
23:42:19  <pinepain>I also noticed that while ScriptCompile::CompileUnboundScript and ScriptCompile::CompileModule accepts only isolate, the call itself fails if no Context entered
23:42:52  <aklein>generally if you're calling into v8 and you don't know whether you're in a context, you need to use a v8::Context::Scope to enter that context
23:43:35  <aklein>the context args are there partially for reasons having to do with the inability to overload by return type in C++
23:43:44  <aklein>(they're from the transition from returning Locals to returning MaybeLocals)
23:44:21  <pinepain>here is the place where vast majority objects/values would comes from - https://github.com/pinepain/php-v8/blob/master/src/php_v8_value.cc#L311
23:45:12  <pinepain>can I then passing current context as method argument and hide that from end-user?
23:45:58  <aklein>pinepain: that's what seems cleanest to me, but clearly I haven't fully got my head around how this php-v8 thing works
23:46:25  <aklein>need to go read your README
23:47:24  <pinepain>aklein: it works a bit kludge, I store values as persistent and then under the hood enter isolate and context, get local from persistent, do all necessary work and then return correspondent PHP object back to userland
23:48:27  <pinepain>aklein: as typical use-case would be a single-isolate, single-context environment (at least for me), i'm thinking about entering isolate and context just once and then do not bother with persistent
23:49:18  <pinepain>aklein: based on short-lived nature of PHP it should not be a problem, for long-running scripts too
23:50:28  <pinepain>aklein: i'm not sure how good it would be to switch between isolates and contexts in multy-isolate and/or multy-context runtime
23:51:21  <aklein>pinepain: that makes sense, using multiple contexts is a pretty niche thing outside the web
23:52:34  <aklein>pinepain: if I rewrote your example to have the source string "{foo: 42}" (so it would return a v8::Object), would that be the place where it would have been nice to have an internal field in that object?
23:52:47  <aklein>since you have to associate some PHP "wrapper" with the {foo: 42} object?
23:55:35  <pinepain>yes, then get_or_create value will try to fetch/build correspondent PHP "wrapper" object for that js object. Note, that I use object even for scalars (numbers, bools) which doesn't make sense from the first glance, but I don't want to deal with all that converting on ext level and delegate everything to PHP userland, so php-v8 should be just a thin wrapper
23:56:40  <pinepain>I guess I'll be altering overall approach to move away from Persistent to Local handles, at least I'm thinking about that for 2 years now =)
23:59:25  <pinepain>aklein: another approach would be to maintain some map with v8 and php objects, but GetIdentityHash() is explicitly marked as one which doesn't guarantee unique hashes, so I don't even tried it