00:02:17  * michaelficarraquit (Quit: michaelficarra)
00:06:03  * douglasgordonjoined
00:06:03  * DTGjoined
00:06:52  * michaelficarrajoined
00:07:26  * michaelficarraquit (Client Quit)
00:12:47  * me1000quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:14:04  * keith_millerjoined
00:14:14  * michaelficarrajoined
00:24:15  * natashenkaquit (Ping timeout: 268 seconds)
00:26:34  * michaelficarraquit (Quit: michaelficarra)
00:29:01  * michaelficarrajoined
00:33:32  * sebmarkbagejoined
00:34:20  * douglasgordonquit (Remote host closed the connection)
00:38:15  * DTGquit (Ping timeout: 250 seconds)
00:40:18  * sebmarkbagequit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
00:55:29  * NilSetquit (Ping timeout: 246 seconds)
01:00:18  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
01:01:38  <devsnek>rwaldron: is eshost limited to the runtimes in `runtimes`
01:26:35  * michaelficarraquit (Quit: michaelficarra)
01:33:53  * msaboffquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
01:36:24  * brabquit (Ping timeout: 268 seconds)
01:41:08  * NilSetjoined
01:46:53  * augbogquit (Ping timeout: 268 seconds)
01:48:25  * iliastquit (Remote host closed the connection)
01:48:58  * iliastjoined
01:54:19  * augbogjoined
01:56:25  * ftangquit (Ping timeout: 256 seconds)
02:01:27  * iliastquit (Ping timeout: 240 seconds)
02:03:16  * iliastjoined
02:07:30  * iliastquit (Ping timeout: 250 seconds)
02:07:47  * augbogquit (Ping timeout: 240 seconds)
02:07:56  * NilSetquit (Ping timeout: 250 seconds)
02:38:29  * sebmarkbagejoined
03:06:40  * sebmarkbagequit (Quit: Textual IRC Client: www.textualapp.com)
04:04:09  * jmdyckquit (Ping timeout: 246 seconds)
04:04:43  * jmdyckjoined
04:21:24  * jmdyckquit (Ping timeout: 250 seconds)
04:22:16  * jmdyckjoined
04:23:21  * cloudshuquit (Quit: Connection closed for inactivity)
04:38:22  * jmdyckquit (Quit: Leaving.)
05:46:19  * iliastjoined
06:11:53  * jridgewellquit (Quit: Connection closed for inactivity)
07:03:15  * keith_millerjoined
08:19:45  * iliastquit (Remote host closed the connection)
08:20:12  * iliastjoined
08:24:33  * iliastquit (Ping timeout: 250 seconds)
08:31:05  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:43:48  * augbogjoined
08:48:36  * augbogquit (Ping timeout: 268 seconds)
09:45:37  * srl295quit (Quit: Connection closed for inactivity)
09:55:26  * jwaldenquit (Quit: ChatZilla 0.9.92-rdmsoft [XULRunner 35.0.1/20150122214805])
10:35:37  * iliastjoined
10:40:11  * iliastquit (Ping timeout: 250 seconds)
12:40:44  * DTGjoined
12:40:44  * douglasgordonjoined
12:44:32  * augbogjoined
12:44:56  * DTGquit (Ping timeout: 250 seconds)
12:44:56  * douglasgordonquit (Ping timeout: 250 seconds)
12:48:48  * augbogquit (Ping timeout: 246 seconds)
13:03:58  * jmdyckjoined
13:31:44  * DTGjoined
13:31:44  * douglasgordonjoined
13:36:04  * DTGquit (Ping timeout: 250 seconds)
13:36:04  * douglasgordonquit (Ping timeout: 250 seconds)
13:43:48  * augbogjoined
13:48:38  * augbogquit (Ping timeout: 272 seconds)
14:12:59  * DTGjoined
14:12:59  * douglasgordonjoined
14:16:54  * gibson042joined
14:26:58  * gibson042quit (Ping timeout: 244 seconds)
14:41:06  * gibson042joined
15:06:07  * kverrierquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
15:24:14  * cloudshujoined
15:30:39  <rwaldron>devsnek yes, a given engine must have an entry in "runtimes", as well as an Agent
15:31:07  <devsnek>rwaldron: i put this together https://github.com/bterlson/eshost/pull/73
15:31:32  <devsnek>and another change in eshost-cli
15:31:53  <rwaldron>devsnek oh rad! I had a local branch where I started working on implementing "default" runtime/Agent, but didn't invest much time into it.
15:32:00  <rwaldron>I will take a look at this now
15:32:24  <devsnek>this way you could do `{ id: 'x', custom: true, path: '/home/snek/some-weird-engine/eshost.js' }`
15:36:18  <devsnek>id: custom would be a better design now that i think about it
15:38:07  * kverrierjoined
15:38:34  <devsnek>that would also mean that you wouldn't need to modify eshost
15:38:40  <devsnek>eshost-cli*
15:39:59  <devsnek>rwaldron: btw the jsshell tests take ages to run
15:40:10  <devsnek>like each individual test takes about 45s-2m to run
15:42:37  * keith_millerjoined
15:43:09  * keith_millerquit (Remote host closed the connection)
15:43:59  * keith_millerjoined
15:45:24  <rwaldron>devsnek did you mean to close the PR on eshost-cli?
15:45:41  <devsnek>rwaldron: yeah i changed the api so there's no change required to eshost-cli now
15:45:48  <rwaldron>Got it
15:45:51  <devsnek>i realized you can make `id: custom`
15:45:55  <devsnek>and then just use hostPath
15:46:04  <devsnek>which works brilliantly
15:47:30  <rwaldron>devsnek do you have a smoke test I can follow?
15:47:39  <devsnek>i'm not sure what that means
15:48:09  <devsnek>like more tests?
15:48:21  <rwaldron>A step by step guide for testing the actual tool
15:48:26  * kverrierquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
15:48:34  <devsnek>eshost-cli or eshost
15:48:45  <devsnek>i put a test in the pr to eshost
15:49:05  <rwaldron>Yep, I saw that, but how do I use this feature?
15:49:10  <rwaldron>In practice
15:49:36  <devsnek>i have { id: 'custom', path: '/home/snek/engine262/eshost.js' } in my eshost-cli config
15:49:51  <devsnek>eshost.js exports a function which takes Agent
15:50:14  <devsnek>returns a class which extends agent and follows the normal agent api
15:50:17  <rwaldron>Can you share a minimal viable eshost.js?
15:50:34  <rwaldron>Could I use test/fixtures/custom-agent.js?\
15:50:46  <devsnek>the fixture doesn't actually do any evaluation
15:50:56  <devsnek>i suppose i could change it to use `eval`
15:57:56  <devsnek>rwaldron: is this more illustrative? https://github.com/bterlson/eshost/pull/73/files#diff-a277445daa0313250ee646a8e134f4b2R5
15:59:01  <rwaldron>lol, very nice
16:20:15  <rwaldron>devsnek are you still working on this PR?
16:20:24  <devsnek>rwaldron: should be done now
16:20:28  <rwaldron>Ok
16:20:39  <devsnek>i'm not 100% sure how the test suite output works but i think everything passed
16:30:28  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:37:44  * keith_millerjoined
16:39:24  <rwaldron>:|
16:39:25  <rwaldron>Nothing passes
16:43:22  <rwaldron>The way you've used `hostPath` in test/runify.js isn't correct. hostPath is a path to a binary.
16:54:27  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:11:05  <rwaldron>hostPath can't be re-purposed like this. Also, CustomAgent is missing a static `runtime` property.
17:14:34  <devsnek>rwaldron: hostPath has no semantics outside of the individual agent
17:15:09  * douglasgordonquit (Remote host closed the connection)
17:15:14  <devsnek>there might be some problem with the test but this does function properly https://gc.gy/11216706.png
17:15:25  <rwaldron>https://github.com/bterlson/eshost#documentation
17:17:43  <devsnek>it doesn't say how it has to be executed
17:19:13  * DTGquit (Ping timeout: 245 seconds)
17:22:01  * kverrierjoined
17:24:11  <rwaldron>Giving hostPath two meanings isn't on the table.
17:27:35  <rwaldron>hostPath is documented as "Path to host to execute.". We can certainly add a new option called "agentPath" to eshost and update eshost-cli accordingly.
17:32:06  <devsnek>i'm not convinced this changes the meaning
17:34:00  <devsnek>rwaldron: does the custom host fixture need to go with the rest of the hosts
17:34:14  <devsnek>like that's a lot of behaviour to be tested
17:34:23  <devsnek>it basically needs to be a clone of the node agent
17:34:32  <rwaldron>I'm not sure what you mean by "custom host"?
17:34:44  <devsnek>agent*
17:34:47  <devsnek>custom agent fixture
17:35:23  <devsnek>from what i can tell to make all this pass i need to set up vm contexts and such and it seems like a lot for verifying that an instance of an agent is returned from custom type
17:44:20  <rwaldron>I have a passing branch that corrects the testing issues and fully passes for custom agents. The problem that I've encountered is that you've assumed all custom agents will be a subclass of Agent. In order to make the tests pass, I had to make CustomAgent a subclass of ConsoleAgent, but that meant change the hard-coded "const A = createAgent(Agent);" in eshost.js
17:45:13  <devsnek>what's CustomAgent
17:45:22  <rwaldron>I'd really like to know more about this use case, ie. why you'd want to eval() code inside the same scope as the program that's executing
17:45:31  <devsnek>i don't want to
17:45:39  <devsnek>i just needed some dumb fixture to run tests on
17:45:45  <devsnek>the actual use case is running engine262
17:46:18  <devsnek>https://github.com/devsnek/engine262
17:47:03  <rwaldron>Ok, so then why don't we just add a proper Agent and runtime to eshost? I would be happy to do that.
17:47:55  <rwaldron>In fact, I would love to add another supported engine
17:48:22  <devsnek>i'm just worried about the api changing as things move along
17:48:32  <devsnek>engine262 isn't finished yet
17:49:01  * douglasgordonjoined
17:49:01  * DTGjoined
17:49:03  <devsnek>and then i would have to bug eshost with updates and wait for a release
17:49:21  <rwaldron>Does engine262 have a print() function?
17:49:22  <rwaldron>If not, can it?
17:49:30  <devsnek>it does
17:50:02  <devsnek>here's the custom agent script i've been using locally https://gist.github.com/devsnek/046f03be832d00f40d940ffc790a44bb
17:50:20  <devsnek>it overrides print to go to a virtual stdout instead of node's console
17:50:28  <rwaldron>Let me see if I can write an Agent and runtime for it. I think that would be an interesting exercise
17:50:35  <rwaldron>Are you game for that?
17:50:40  <devsnek>sure
17:53:27  <rwaldron>If you add support for one thing, this can be done.
17:53:39  <rwaldron>engine262 /path/to/file.js
17:53:45  <rwaldron>that should be a piece of cake
17:54:15  <rwaldron>This will unlock the ability to run all of test262 in your engine
17:54:37  <devsnek>rn the bin points to repl.js
17:54:43  <rwaldron>yep
17:54:54  <devsnek>so ConsoleAgent should be able to handle that right?
17:55:02  <devsnek>like with d8 and whatnot
17:56:12  <rwaldron>ConsoleAgent ultimately invokes `cp.spawn(this.hostPath, [file, [other args]], ...);`
17:56:20  * michaelficarrajoined
17:56:26  <devsnek>oh i assumed it was interacting with the repls all the engines have
17:56:32  <rwaldron>Nope
17:56:36  <devsnek>i'll see what i can do here
17:57:01  <rwaldron>This ensures a clean environment for every test run
17:57:42  * iliastjoined
17:58:25  <rwaldron>I think you can just upgrade your repl.js to look at process.argv before making an actual repl, if there's a file path somewhere in those args, open it and pass the contents to realm.evaluateScript().
17:58:32  <rwaldron>It looks like it's probably that easy
17:58:35  <devsnek>ye
17:58:38  <rwaldron>This is fun
17:58:56  <rwaldron>I have to step away, I'll ping you when I return
17:59:01  <devsnek>kk
18:07:17  <devsnek>rwaldron: it will run files now
18:13:49  * iliastquit (Quit: Leaving...)
18:25:48  * zenparsingjoined
18:27:23  * keith_millerjoined
18:29:09  * keith_millerquit (Client Quit)
18:31:19  * ystartsevquit (Remote host closed the connection)
18:31:19  * zbranieckiquit (Remote host closed the connection)
18:31:19  * tschneidereitquit (Remote host closed the connection)
18:31:19  * linclarkquit (Remote host closed the connection)
18:31:19  * annevkquit (Remote host closed the connection)
18:38:55  * michaelficarraquit (Quit: michaelficarra)
18:40:58  * douglasgordonquit (Remote host closed the connection)
18:41:38  * douglasgordonjoined
18:41:41  * michaelficarrajoined
18:41:42  * douglasgordonquit (Read error: Connection reset by peer)
18:41:43  * DTGquit (Read error: Connection reset by peer)
18:42:13  * douglasgordonjoined
18:42:13  * DTGjoined
18:44:32  * DTG_joined
18:44:32  * douglasg_joined
18:44:32  * DTGquit (Read error: Connection reset by peer)
18:44:32  * douglasgordonquit (Read error: Connection reset by peer)
18:48:00  * annevkjoined
18:48:26  * zbranieckijoined
18:48:36  * michaelficarraquit (Quit: michaelficarra)
18:48:55  * michaelficarrajoined
18:50:43  * linclarkjoined
18:55:00  * tschneidereitjoined
18:57:05  * keith_millerjoined
18:57:16  * keith_millerquit (Client Quit)
18:57:45  <rwaldron>rad
18:57:54  <rwaldron>(just getting back now)
18:59:05  * michaelficarraquit (Quit: michaelficarra)
19:02:16  * michaelficarrajoined
19:02:57  * ystartsevjoined
19:05:38  * michaelficarraquit (Client Quit)
19:07:51  * michaelficarrajoined
19:10:55  * michaelficarraquit (Client Quit)
19:11:03  <rwaldron>devsnek when I cloned engine262 locally, I ran `npm install && npm link`, however that wasn't enough: I still had to run `npm run build`. Should that be a "postinstall" or whatever?
19:11:15  <devsnek>unsure
19:11:24  * brabjoined
19:11:36  <devsnek>i thought npm automatically ran the `build` script
19:14:19  * michaelficarrajoined
19:15:30  * michaelficarraquit (Client Quit)
19:17:23  <rwaldron>I don't see that? https://docs.npmjs.com/misc/scripts
19:17:34  <rwaldron>or here https://docs.npmjs.com/cli/install
19:17:37  <rwaldron>¯\_(ツ)_/¯
19:17:52  <rwaldron>Anyway, I'm good for now
19:20:38  * michaelficarrajoined
19:21:32  <rwaldron>devsnek ok, next question: can you expose Realm to the runtime?
19:22:11  <rwaldron>will be used by $262 host API
19:22:55  <devsnek>rwaldron: like the same api used in test262?
19:23:06  <devsnek>i can copy it in from my test runner
19:23:30  <rwaldron>Oh, wait... let me look in your tests
19:24:03  <rwaldron>Ah, I see.
19:24:53  * DTG_quit (Read error: No route to host)
19:24:54  * douglasg_quit (Read error: No route to host)
19:25:28  * DTGjoined
19:25:28  * douglasgordonjoined
19:28:57  * jridgewelljoined
19:30:55  * michaelficarraquit (Quit: michaelficarra)
19:39:33  * brabquit (Ping timeout: 244 seconds)
19:40:34  * michaelficarrajoined
19:58:33  * douglasgordonquit (Remote host closed the connection)
19:59:51  * DTG_joined
19:59:51  * douglasgordonjoined
19:59:51  * DTGquit (Read error: Connection reset by peer)
20:01:15  * michaelficarraquit (Quit: michaelficarra)
20:02:16  * brabjoined
20:02:34  * douglasgordonquit (Read error: Connection reset by peer)
20:02:34  * DTG_quit (Read error: Connection reset by peer)
20:02:55  * douglasgordonjoined
20:02:55  * DTGjoined
20:42:31  * sebmarkbagejoined
20:42:41  * sebmarkbagequit (Client Quit)
20:43:47  * me1000joined
20:45:20  * me1000quit (Client Quit)
20:46:21  * itsangarisjoined
20:51:45  * me1000joined
20:55:41  * jwaldenjoined
20:56:31  * me1000quit (Client Quit)
20:58:35  * me1000joined
21:05:00  * keith_millerjoined
21:13:09  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:15:24  * zenparsingquit (Quit: Connection closed for inactivity)
21:16:32  * itsangarisquit (Quit: Leaving...)
21:17:03  * itsangarisjoined
21:21:34  * me1000quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:23:07  * me1000joined
21:27:52  * itsangarisquit (Remote host closed the connection)
21:28:27  * itsangarisjoined
21:33:22  * itsangarisquit (Remote host closed the connection)
21:33:55  * itsangarisjoined
21:34:11  * me1000quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:37:39  * michaelficarrajoined
21:38:21  * itsangarisquit (Ping timeout: 246 seconds)
21:54:02  * itsangarisjoined
21:58:18  * itsangarisquit (Ping timeout: 250 seconds)
21:59:27  * itsangarisjoined
22:21:13  * michaelficarraquit (Quit: michaelficarra)
22:23:38  * michaelficarrajoined
22:30:43  * michaelficarraquit (Quit: michaelficarra)
22:33:23  * michaelficarrajoined
22:37:03  * augbogjoined
22:45:16  * douglasgordonquit (Remote host closed the connection)
22:47:44  * augbogquit (Quit: leaving)
22:49:49  * DTGquit (Ping timeout: 268 seconds)
22:51:13  * michaelficarraquit (Quit: michaelficarra)
22:53:58  * michaelficarrajoined
22:55:43  * michaelficarraquit (Client Quit)
22:56:07  * itsangarisquit (Remote host closed the connection)
22:56:43  * itsangarisjoined
23:00:43  * michaelficarrajoined
23:01:13  * michaelficarraquit (Client Quit)
23:01:32  * itsangarisquit (Ping timeout: 268 seconds)
23:10:28  * michaelficarrajoined
23:27:01  * itsangarisjoined
23:34:12  * gibson042quit (Ping timeout: 246 seconds)
23:35:14  * msaboffjoined
23:44:00  * itsangarisquit (Ping timeout: 246 seconds)
23:52:02  * gibson042joined
23:55:24  * gibson042quit (Client Quit)
23:59:41  * michaelficarraquit (Quit: michaelficarra)