00:00:05  * reallocquit (Quit: realloc)
00:00:29  * Kkirojoined
00:00:29  * Kkiroquit (Changing host)
00:00:29  * Kkirojoined
00:01:34  * orbyt_joined
00:01:47  * bitmaskquit (Quit: Gone to sleep...)
00:03:39  * sgen_quit (Ping timeout: 248 seconds)
00:05:49  * falafelquit (Ping timeout: 255 seconds)
00:06:12  * edge563quit (Quit: edge563)
00:07:48  * carifquit (Ping timeout: 258 seconds)
00:08:11  * Chuguniyquit (Ping timeout: 258 seconds)
00:12:44  * mezodjoined
00:14:46  * Sharaaljoined
00:15:55  * cnsvcjoined
00:17:00  * nnyk_joined
00:18:58  * nnykquit (Ping timeout: 268 seconds)
00:19:06  * Sharaalquit (Ping timeout: 252 seconds)
00:19:10  * heyitsramaquit (Remote host closed the connection)
00:20:25  * carifjoined
00:21:51  * piyerquit (Remote host closed the connection)
00:22:49  * zhallaquit (Ping timeout: 258 seconds)
00:22:58  * armdalequit (Ping timeout: 245 seconds)
00:23:19  * Nes173quit (Quit: Leaving)
00:23:40  * piyerjoined
00:24:59  * duderonomyjoined
00:25:00  * armdalejoined
00:26:06  * heyitsramajoined
00:26:33  * heyitsramaquit (Remote host closed the connection)
00:27:41  * cnsvcquit (Ping timeout: 256 seconds)
00:30:11  * platonicjoined
00:30:15  * ponyride1joined
00:31:26  * ponyriderquit (Ping timeout: 244 seconds)
00:33:06  * slajaxquit (Ping timeout: 258 seconds)
00:34:34  * bitmaskjoined
00:35:13  * bitmaskquit (Read error: Connection reset by peer)
00:35:47  * carifquit (Ping timeout: 258 seconds)
00:36:46  * al-damirijoined
00:37:09  * orbyt_quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:37:19  * cnsvcjoined
00:37:52  * platonicquit (Ping timeout: 246 seconds)
00:38:17  * keith_millerjoined
00:40:56  * duderonomyquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:42:17  * hemstockquit
00:42:59  * cnsvcquit (Ping timeout: 256 seconds)
00:45:06  * gambl0r3joined
00:47:23  * gambl0requit (Ping timeout: 248 seconds)
00:48:26  * carifjoined
00:48:41  * duderonomyjoined
00:49:55  * falafeljoined
00:50:42  * cnsvcjoined
00:52:07  * kakashiA1joined
00:52:08  * AbedBhutyjoined
00:56:25  * kakashiA1quit (Ping timeout: 246 seconds)
00:56:40  * duderonomyquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:56:43  * feelextraquit (Ping timeout: 245 seconds)
00:57:42  * falafelquit (Ping timeout: 246 seconds)
00:59:27  * renlojoined
00:59:54  * tkore1joined
01:02:08  * carifquit (Ping timeout: 245 seconds)
01:03:40  * ferlzcjoined
01:04:02  * ferlzcquit (Read error: Connection reset by peer)
01:04:28  * tkore1quit (Ping timeout: 246 seconds)
01:05:16  * wbddwokl2joined
01:05:46  * ffx__joined
01:06:02  * lemoinemquit (Killed (livingstone.freenode.net (Nickname regained by services)))
01:06:03  * lemoinemjoined
01:07:28  * ffx__quit (Client Quit)
01:07:36  * ffx__joined
01:07:56  * Montrosequit (Read error: Connection reset by peer)
01:08:33  * ffx_quit (Ping timeout: 246 seconds)
01:08:49  * wbddwoklquit (Ping timeout: 255 seconds)
01:08:54  * buttsanchezjoined
01:10:40  * spinningCatquit (Ping timeout: 258 seconds)
01:15:48  * carifjoined
01:16:10  * orbyt_joined
01:16:36  * ferlzcjoined
01:16:42  * spillere_quit (Ping timeout: 245 seconds)
01:16:57  * ferlzcquit (Read error: Connection reset by peer)
01:17:33  * spillerejoined
01:17:33  * spillerequit (Changing host)
01:17:33  * spillerejoined
01:18:20  * InFlamesjoined
01:19:00  * Kestrel1232joined
01:19:16  <Kestrel1232>Hi, anybody here familiar with MongoDB commands? :)
01:19:21  * ferlzcjoined
01:19:28  * hussamquit (Quit: Connection closed for inactivity)
01:20:00  * ed209quit (Remote host closed the connection)
01:20:07  * ed209joined
01:20:37  * srnty_quit (Quit: ZNC 1.7.3 - https://znc.in)
01:20:54  <mordof>familiar isn't really the right word - but what do you need?
01:21:40  * ferlzcquit (Client Quit)
01:22:25  * srntyjoined
01:22:33  * srntyquit (Remote host closed the connection)
01:23:29  * srntyjoined
01:25:55  * carifquit (Ping timeout: 255 seconds)
01:29:10  * ffx__quit (Remote host closed the connection)
01:30:42  * plutoniixquit (Quit: Leaving)
01:30:42  * piyerquit (Remote host closed the connection)
01:31:20  * piyerjoined
01:32:47  <Kestrel1232>mordof pretty trivial thing but as I'm new to MongoDB I'm unsure of what it is -- given that MongoDB returns a JSON object eg. { name: "Michael" }, if I only want a query to return "Michael", how can I do this?
01:32:58  <Kestrel1232>tried googling but keep getting irrelevant answers
01:33:21  <mordof>ooh like postgres select name you mean
01:33:29  <Kestrel1232>I got the hang of the query, I just don't know what function I need to attach to it to return only the field value without the field itself
01:33:35  <Kestrel1232>kind of I suppose
01:34:00  <mordof>Kestrel1232: https://stackoverflow.com/questions/25589113/how-to-select-a-single-field-for-all-documents-in-a-mongodb-collection
01:34:00  * plutoniixjoined
01:34:33  * platonicjoined
01:34:57  <mordof>oh you want JUST the value
01:35:02  * tomru_joined
01:35:13  <mordof>not sure that's a thing mongodb does
01:35:17  <mordof>but that's not hard
01:35:22  <mordof>Object.values()
01:35:28  <mordof>(if you're in node)
01:35:30  * arooni_team_bquit (Ping timeout: 244 seconds)
01:35:39  * goodenoughjoined
01:35:40  <Kestrel1232>yes I am in node
01:36:00  <Kestrel1232>mordof and yeah that solution is what I already have but it still returns the field name which is what I don't want :)
01:36:08  <Kestrel1232>I'll try .values one sec
01:36:09  * KempfCreativejoined
01:36:32  <mordof>Kestrel1232: are you using the Object.values() on the array of objects it is returning, or a map, then Object.values?
01:36:43  <mordof>.values on an object will not return the field name
01:37:11  <Kestrel1232>yeah it didn't work
01:37:19  <Kestrel1232>I don't have an array of objects
01:37:21  <Kestrel1232>only a single object
01:37:49  <Kestrel1232>as I mentioned, I have a JSON object such as { name: "Michael" } that is returned by my MongoDB query
01:38:03  <Kestrel1232>and I want to pass "Michael" as a variable string to an EJS view
01:38:06  <mordof>n> Object.values({ name: "Michael" })
01:38:07  <jellobot>(okay) [ 'Michael' ]
01:38:27  <mordof>there's something you're not setting up right if you're still getting the field names through an `Object.values`
01:38:28  * tomruquit (Ping timeout: 264 seconds)
01:38:29  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
01:38:34  * aroonijoined
01:38:44  <mordof>i won't be able to help identify what without a code snippet though
01:39:21  * platonicquit (Ping timeout: 246 seconds)
01:39:25  * carifjoined
01:40:49  * Kkiroquit (Read error: Connection reset by peer)
01:44:02  * antsmartianjoined
01:44:07  * userxquit (Quit: userx)
01:45:50  * Kkirojoined
01:45:50  * Kkiroquit (Changing host)
01:45:50  * Kkirojoined
01:48:14  * renloloquit (Ping timeout: 258 seconds)
01:50:06  * duderonomyjoined
01:50:44  * xcesarioxjoined
01:54:14  * tkore1joined
01:55:08  * carifquit (Ping timeout: 258 seconds)
01:56:14  * plonkjoined
01:56:31  * bokchoyquit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
01:58:19  * plonkquit (Changing host)
01:58:19  * plonkjoined
01:58:28  <plonk>Hi! Is this the right channel to ask about napi C addon development?
01:58:48  * tkore1quit (Ping timeout: 245 seconds)
01:58:49  * i1nfusionquit (Remote host closed the connection)
01:59:18  * i1nfusionjoined
01:59:18  <mordof>plonk: you can try. i know i likely can't help
01:59:37  * soflyquit (Quit: Ping timeout (120 seconds))
02:00:03  <plonk>I'm creating two classes using napi_create_class, Foo, and Bar. In the constructor of Foo, I create an instance of Bar, and am now unsure whether I save the actual instance or a reference in the backing struct.
02:00:16  * soflyjoined
02:00:21  * Kestrel1232quit (Quit: Page closed)
02:00:47  <plonk>I do want the Bar held by Foo to be garbage collected once no other references to it exist
02:01:31  * KempfCreative1joined
02:01:46  * KempfCreativequit (Ping timeout: 252 seconds)
02:01:47  * KempfCreative1changed nick to KempfCreative
02:01:59  * falafeljoined
02:03:00  * Sharaaljoined
02:03:20  * orbyt_quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:03:22  * alfonjoined
02:05:33  * bokchoyjoined
02:06:18  * nnyk_quit (Ping timeout: 245 seconds)
02:07:20  * Sharaalquit (Ping timeout: 246 seconds)
02:07:33  <plonk>or should the struct just hold both the value and a reference?
02:07:54  * carifjoined
02:07:55  <mordof>definitely can't help, sorry. maybe someone will be around in a bit who can
02:08:10  * alfonquit (Ping timeout: 246 seconds)
02:08:35  * piyerquit (Remote host closed the connection)
02:09:18  * piyerjoined
02:15:59  * girayjoined
02:17:43  * keith_millerjoined
02:18:42  * marthinaljoined
02:20:46  * cyberjpnquit (Ping timeout: 246 seconds)
02:20:58  * renloquit (Ping timeout: 244 seconds)
02:21:03  * piyerquit (Remote host closed the connection)
02:22:24  * bradfordli123joined
02:22:58  * plutoniixquit (Quit: Leaving)
02:23:11  * marthinalquit (Ping timeout: 258 seconds)
02:23:40  * piyerjoined
02:23:56  * Roughyquit (Quit: Meadow Fresh milk)
02:24:58  * Jessidhiaquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:25:25  * sgen_joined
02:26:41  * cnsvcquit (Ping timeout: 256 seconds)
02:27:07  * bradfordli123quit (Ping timeout: 250 seconds)
02:27:12  * trevorquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:28:53  * cnsvcjoined
02:29:55  * goodenoughquit (Read error: Connection reset by peer)
02:30:33  * slajaxjoined
02:30:34  * piyerquit (Remote host closed the connection)
02:30:50  * goodenoughjoined
02:31:03  * piyerjoined
02:31:29  * Jessidhiajoined
02:32:43  * m00n_urnjoined
02:32:50  * m00n_urnquit (Client Quit)
02:33:11  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:33:52  * aerexquit (Ping timeout: 255 seconds)
02:35:28  * piyerquit (Remote host closed the connection)
02:35:41  * platonicjoined
02:35:53  * deadbeatquit (Remote host closed the connection)
02:35:55  * aerexjoined
02:38:04  * cyberjpnjoined
02:39:12  * Anthaasquit (Ping timeout: 246 seconds)
02:39:39  * versatiletechjoined
02:40:10  * platonicquit (Ping timeout: 255 seconds)
02:41:29  * goodenoughquit (Read error: Connection reset by peer)
02:41:29  * Kkiroquit (Read error: Connection reset by peer)
02:42:09  * Anthaasjoined
02:43:54  * renlojoined
02:46:04  * Kkirojoined
02:46:09  * Kkiroquit (Changing host)
02:46:09  * Kkirojoined
02:46:24  * goodenoughjoined
02:47:02  * antsmartianquit (Remote host closed the connection)
02:48:27  * tkore1joined
02:48:49  * renloquit (Ping timeout: 268 seconds)
02:49:20  * Jessidhiaquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:49:28  * carifquit (Ping timeout: 246 seconds)
02:50:28  * cyberjpnquit (Ping timeout: 245 seconds)
02:51:43  * Jessidhiajoined
02:51:58  * glijoined
02:52:30  * Jessidhiaquit (Client Quit)
02:53:24  * tkore1quit (Ping timeout: 258 seconds)
02:54:06  * Jessidhiajoined
02:55:04  * piyerjoined
02:55:25  * goodenoughquit (Read error: Connection reset by peer)
02:55:58  * piyerquit (Remote host closed the connection)
02:56:42  * goodenoughjoined
03:00:39  * promethquit (Quit: 🤤🛌💤)
03:02:59  * slajaxquit (Ping timeout: 258 seconds)
03:03:00  * carifjoined
03:05:36  * keith_millerjoined
03:05:52  * braincrashquit (Quit: bye bye)
03:09:36  * braincrashjoined
03:11:53  * goodenoughquit (Remote host closed the connection)
03:12:57  * carifquit (Ping timeout: 258 seconds)
03:14:42  * ephysthosquit (Ping timeout: 244 seconds)
03:17:18  * xcesarioxquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:19:30  * xcesarioxjoined
03:21:28  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:21:50  * xcesarioxquit (Client Quit)
03:22:11  * xcesarioxjoined
03:23:46  * lucid-lullabyquit (Read error: Connection reset by peer)
03:24:06  * lucid-lullabyjoined
03:25:55  * carifjoined
03:26:50  * xcesarioxquit (Ping timeout: 252 seconds)
03:31:38  * Cabanossiquit (Ping timeout: 252 seconds)
03:32:31  * AbedBhutyquit (Ping timeout: 258 seconds)
03:34:54  * renlojoined
03:35:28  * dmartzoljoined
03:36:06  * kakashiA1joined
03:36:22  * Cabanossijoined
03:36:25  * platonicjoined
03:40:00  * carifquit (Ping timeout: 268 seconds)
03:40:28  * kakashiA1quit (Ping timeout: 245 seconds)
03:40:53  * platonicquit (Ping timeout: 245 seconds)
03:41:34  * carifjoined
03:42:10  * dustinmquit (Quit: Leaving)
03:42:37  * tkore1joined
03:43:41  * deadbeatjoined
03:43:41  * al-damiriquit (Quit: Connection closed for inactivity)
03:44:17  * dustinmjoined
03:47:08  * tkore1quit (Ping timeout: 245 seconds)
03:48:08  * keith_millerjoined
03:50:01  * renloquit (Ping timeout: 246 seconds)
03:50:15  * girayquit (Quit: Leaving)
03:51:14  * Sharaaljoined
03:54:11  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:55:54  * Sharaalquit (Ping timeout: 258 seconds)
03:57:28  * sctskwjoined
03:58:18  * shushquit (Remote host closed the connection)
03:58:39  * sgen_quit (Remote host closed the connection)
03:59:07  * sgen_joined
04:01:15  * kakashiA1joined
04:01:55  * sctskwquit (Ping timeout: 246 seconds)
04:02:56  * renlojoined
04:03:24  * piyerjoined
04:03:31  * keith_millerjoined
04:04:10  * shushjoined
04:07:08  * buttsanchezquit (Ping timeout: 268 seconds)
04:08:09  * carifquit (Ping timeout: 258 seconds)
04:08:31  * shushquit (Ping timeout: 250 seconds)
04:09:49  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
04:11:07  * sgen_quit (Ping timeout: 250 seconds)
04:11:49  * fatalhaltjoined
04:14:23  * marthinaljoined
04:16:13  * keith_millerjoined
04:16:58  * KempfCreativequit (Ping timeout: 258 seconds)
04:17:25  * keith_millerquit (Client Quit)
04:17:38  * KempfCreativejoined
04:21:46  * barkerjajoined
04:21:57  * OKTAVIUSjoined
04:22:03  * tkore1joined
04:23:07  * barkerjaquit (Client Quit)
04:23:30  * keith_millerjoined
04:26:31  * Kkiroquit (Read error: Connection reset by peer)
04:27:28  * carifjoined
04:27:29  * tkore1quit (Ping timeout: 268 seconds)
04:28:20  * cyberjpnjoined
04:29:22  * plutoniixjoined
04:29:49  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
04:30:12  * Kkirojoined
04:30:12  * Kkiroquit (Changing host)
04:30:12  * Kkirojoined
04:31:21  * cnsvcquit (Ping timeout: 256 seconds)
04:35:22  * renlolojoined
04:35:52  * carifquit (Ping timeout: 246 seconds)
04:36:08  * shushjoined
04:37:02  * stylesquit (Remote host closed the connection)
04:37:19  * platonicjoined
04:38:04  * renloquit (Ping timeout: 255 seconds)
04:40:39  * renloloquit (Ping timeout: 246 seconds)
04:40:49  * fatalhaltquit (Quit: fatal halt)
04:41:53  * platonicquit (Ping timeout: 258 seconds)
04:42:03  * KempfCreativequit (Ping timeout: 248 seconds)
04:43:46  * shushquit (Remote host closed the connection)
04:44:03  * shushjoined
04:44:31  * goodenoughjoined
04:45:04  * piyerquit (Remote host closed the connection)
04:49:25  * carifjoined
04:58:35  * dustinmquit (Quit: Leaving)
04:59:04  * carifquit (Ping timeout: 244 seconds)
05:00:20  * led_dark_1quit (Quit: led_dark_1)
05:00:28  * slajaxjoined
05:00:55  * dustinmjoined
05:03:10  * nnyk_joined
05:03:19  * led_dark_1joined
05:04:37  * kakashiA1quit (Ping timeout: 255 seconds)
05:07:36  * nnyk_quit (Ping timeout: 246 seconds)
05:08:38  * wookiehangoverquit (Quit: i'm out)
05:09:50  * cnsvcjoined
05:10:01  * sauvinjoined
05:10:42  * envexjoined
05:13:19  * versatiletechquit (Quit: versatiletech)
05:13:35  * lpinjoined
05:14:34  * kjartanquit (Read error: Connection reset by peer)
05:15:46  * keith_millerjoined
05:16:44  * carifjoined
05:19:32  * kjartanjoined
05:24:10  * carifquit (Ping timeout: 252 seconds)
05:24:52  * Mitarquit (Ping timeout: 246 seconds)
05:25:23  * shushquit (Remote host closed the connection)
05:25:28  * Kestrel-029quit (Ping timeout: 245 seconds)
05:25:55  * Kkiroquit (Read error: Connection reset by peer)
05:26:10  * Mitarjoined
05:26:41  * Nicmavrjoined
05:26:45  * shushjoined
05:26:55  * shushquit (Remote host closed the connection)
05:27:13  * shushjoined
05:28:33  * Lauvenjoined
05:30:33  * Kkirojoined
05:30:33  * Kkiroquit (Changing host)
05:30:33  * Kkirojoined
05:32:26  * slajaxquit (Ping timeout: 246 seconds)
05:39:31  * Sharaaljoined
05:44:00  * Sharaalquit (Ping timeout: 246 seconds)
05:44:20  * bradford_joined
05:45:04  * Lauvenquit (Quit: leaving)
05:46:15  * carifjoined
05:47:28  * AbedBhutyjoined
05:48:19  * goodenoughquit (Read error: Connection reset by peer)
05:49:33  * goodenoughjoined
05:50:09  * reberjoined
05:53:43  * goodenoughquit (Remote host closed the connection)
05:58:02  * Anthaas_joined
05:58:10  * Anthaasquit (Ping timeout: 255 seconds)
05:58:11  * m1dnight_quit (Ping timeout: 258 seconds)
05:58:45  * Chuguniyjoined
05:59:46  * keepLearning512joined
06:00:22  * GreenJelloquit (Quit: My iMac has gone to sleep. ZZZzzz…)
06:02:59  * buttsanchezjoined
06:03:08  * dmartzolquit (Quit: dmartzol)
06:03:36  * slajaxjoined
06:05:29  * AbedBhutyquit (Read error: Connection reset by peer)
06:05:31  * hoijuijoined
06:07:01  * AbedBhutyjoined
06:07:47  * slajaxquit (Ping timeout: 244 seconds)
06:09:22  * kakashiA1joined
06:13:48  * kakashiA1quit (Ping timeout: 245 seconds)
06:14:16  * carifquit (Ping timeout: 258 seconds)
06:15:33  * bradford_quit (Remote host closed the connection)
06:15:50  * mynickjoined
06:16:14  * mynickchanged nick to Guest21216
06:16:39  * bradfordli123joined
06:16:40  * cyberjpnquit (Ping timeout: 246 seconds)
06:16:42  * Guest21216quit (Read error: Connection reset by peer)
06:17:31  * Scionwestquit (Quit: Connection closed for inactivity)
06:20:14  <Lewix>hey guys, how are you
06:20:45  <Lewix>syntaxError: Unexpected identifier => import express from 'express';
06:20:58  <Lewix>im using babel , not sure what im missing
06:21:07  * bradfordli123quit (Ping timeout: 250 seconds)
06:21:09  * cyberjpnjoined
06:21:14  <Lewix>https://www.irccloud.com/pastebin/7uTV1rt2/
06:21:33  * ahmed_elgabrijoined
06:21:56  * buttsanchezquit (Ping timeout: 258 seconds)
06:23:52  * Notijoined
06:30:54  * groomjoined
06:32:25  * cyberjpnquit (Ping timeout: 246 seconds)
06:33:07  * AlolaPikachuquit (Ping timeout: 258 seconds)
06:34:51  * truthseeker1990joined
06:34:58  * Anticomjoined
06:35:32  * cyberjpnjoined
06:38:31  * carifjoined
06:38:38  * platonicjoined
06:38:55  * spinningCatjoined
06:39:35  * kakashiA1joined
06:41:53  * truthseeker1990quit (Ping timeout: 258 seconds)
06:42:48  * platonicquit (Ping timeout: 246 seconds)
06:43:09  * gloomyjoined
06:43:51  * carifquit (Ping timeout: 258 seconds)
06:44:11  * ahmed_elgabriquit (Quit: WeeChat 2.4)
06:46:34  * carifjoined
06:47:12  * sozubajoined
06:48:50  * gxtquit (Ping timeout: 258 seconds)
06:51:21  * m1dnight_joined
06:52:55  * chargenjoined
06:54:21  * nnyk_joined
06:54:28  * Venemojoined
06:54:50  * pd09041999joined
06:54:52  * falafelquit (Ping timeout: 255 seconds)
06:54:59  * basiclaser_joined
06:56:01  * tkore1joined
06:59:33  * sarafjoined
07:00:00  * Reveritequit (Quit: bbl)
07:00:36  * Reveritejoined
07:02:16  * sozubaquit (Ping timeout: 268 seconds)
07:02:22  * ahmedelgabrijoined
07:02:58  * userxjoined
07:03:48  * sozubajoined
07:05:50  * userxquit (Client Quit)
07:06:02  * kakashiA1quit (Ping timeout: 258 seconds)
07:06:30  * userxjoined
07:10:03  * sozubaquit (Ping timeout: 245 seconds)
07:11:00  * Kkiroquit (Read error: Connection reset by peer)
07:11:03  * userxquit (Ping timeout: 252 seconds)
07:11:30  * ahmedelgabriquit (Ping timeout: 246 seconds)
07:11:43  * Nicmavrquit (Ping timeout: 245 seconds)
07:11:43  * Kestrel-029joined
07:12:12  * sozubajoined
07:13:41  * carifquit (Ping timeout: 258 seconds)
07:15:35  * Ergojoined
07:15:42  * Kkirojoined
07:15:43  * Kkiroquit (Changing host)
07:15:43  * Kkirojoined
07:16:24  * tockajoined
07:18:44  * truthseeker1990joined
07:22:26  * reberquit (Remote host closed the connection)
07:25:49  * saladjoined
07:25:58  * TikityTikquit (Ping timeout: 246 seconds)
07:26:24  * carifjoined
07:27:37  * Sharaaljoined
07:28:25  * tkore1quit (Ping timeout: 246 seconds)
07:30:22  * antsmartianjoined
07:30:24  * plutoniixquit (Quit: Leaving)
07:32:09  * Anticomquit (Ping timeout: 246 seconds)
07:32:13  * Sharaalquit (Ping timeout: 255 seconds)
07:35:06  * antsmartianquit (Ping timeout: 244 seconds)
07:36:18  * cyberjpnquit (Ping timeout: 258 seconds)
07:36:41  * carifquit (Ping timeout: 258 seconds)
07:38:22  * Metalsuttonjoined
07:38:49  * ahmedelgabrijoined
07:39:32  * platonicjoined
07:40:24  * tkore1joined
07:41:33  * kakashiA1joined
07:41:42  * Nicmavrjoined
07:41:43  * Kestrel-029quit (Ping timeout: 245 seconds)
07:42:53  * cnsvcquit (Ping timeout: 256 seconds)
07:43:49  * ahmedelgabriquit (Ping timeout: 246 seconds)
07:44:22  * platonicquit (Ping timeout: 255 seconds)
07:44:40  * Anticomjoined
07:46:09  * kakashiA1quit (Ping timeout: 246 seconds)
07:48:15  * Arcaelyxquit (Ping timeout: 258 seconds)
07:48:41  * gambl0r3quit (Remote host closed the connection)
07:49:08  * gambl0r3joined
07:49:10  * mynickjoined
07:49:33  * mynickchanged nick to Guest58349
07:49:46  * InFlamesquit (Quit: Konversation terminated!)
07:50:32  * leizyjoined
07:52:50  * cyberjpnjoined
07:52:58  * truthseeker1990quit (Ping timeout: 245 seconds)
07:53:30  * Guest58349quit (Ping timeout: 246 seconds)
07:56:43  * Anthaas_quit (Ping timeout: 245 seconds)
07:56:48  * Kestrel-029joined
07:57:06  * Anthaasjoined
07:57:08  * Nicmavrquit (Ping timeout: 245 seconds)
07:59:05  * sctskwjoined
08:00:56  * carifjoined
08:03:13  * floppydhjoined
08:03:31  * sctskwquit (Ping timeout: 244 seconds)
08:03:39  * gambl0r3quit (Ping timeout: 248 seconds)
08:03:43  * slajaxjoined
08:04:28  * dadinnquit (Ping timeout: 246 seconds)
08:05:16  * setpilljoined
08:05:53  * kpattich__joined
08:08:23  * cyberjpnquit (Ping timeout: 245 seconds)
08:09:11  * keepLearning512quit (Remote host closed the connection)
08:09:21  * hoijuiquit (Remote host closed the connection)
08:10:49  * Kkiroquit (Read error: Connection reset by peer)
08:11:44  * wonko7quit (Ping timeout: 252 seconds)
08:12:07  * mezodquit (Remote host closed the connection)
08:12:53  * mezodjoined
08:15:48  * m1dnight_quit (Ping timeout: 258 seconds)
08:16:10  * Kkirojoined
08:16:10  * Kkiroquit (Changing host)
08:16:10  * Kkirojoined
08:16:18  * Sharaaljoined
08:16:20  * eckonpart ("Rejoining")
08:16:21  * eckonjoined
08:24:07  * m1dnight_joined
08:25:17  * AbedBhutyquit (Read error: Connection reset by peer)
08:27:10  * AbedBhutyjoined
08:27:51  * plutoniixjoined
08:28:23  * bothoquit (Quit: ZNC - https://znc.in)
08:29:09  * erriettachanged nick to erry
08:29:14  * bothojoined
08:29:41  * kpattich_joined
08:30:22  * kpattich__quit (Ping timeout: 246 seconds)
08:30:41  * bothoquit (Client Quit)
08:30:54  * carifquit (Ping timeout: 244 seconds)
08:31:30  * bothojoined
08:33:01  * AlolaPikachujoined
08:33:31  * nnyk_quit (Ping timeout: 246 seconds)
08:33:47  * Guest24985joined
08:37:06  * slajaxquit (Ping timeout: 244 seconds)
08:41:05  * platonicjoined
08:41:18  * Kestrel-029quit (Ping timeout: 245 seconds)
08:41:37  * Nicmavrjoined
08:41:52  * pd09041999quit (Ping timeout: 258 seconds)
08:42:19  * spinningCatquit (Remote host closed the connection)
08:43:24  * renlojoined
08:43:39  * carifjoined
08:43:51  * pmartjoined
08:44:55  * renloljoined
08:45:22  * platonicquit (Ping timeout: 244 seconds)
08:46:42  * lundibundijoined
08:48:20  * renloquit (Ping timeout: 268 seconds)
08:48:56  * pmartquit (Remote host closed the connection)
08:49:07  * pmartjoined
08:50:39  * ShalokShalomjoined
08:52:01  * cnsvcjoined
08:54:34  * KnownSyntaxquit (Ping timeout: 258 seconds)
08:54:38  * mynickjoined
08:54:58  * ffl^quit
08:55:02  * mynickchanged nick to Guest85794
08:55:16  * keepLearning512joined
08:55:17  * Guest85794quit (Read error: Connection reset by peer)
08:55:44  * renlolquit (Ping timeout: 268 seconds)
08:56:10  * KnownSyntaxjoined
08:56:35  * vs^joined
08:57:06  * temhaajoined
08:57:10  <temhaa>Hello
08:57:18  <temhaa>I hope you are doing great
08:57:40  <temhaa>I have web app which serves on nodejs express
08:57:41  * ahmedelgabrijoined
08:57:58  <temhaa>but I have "server directory traversal" attack
08:58:16  <temhaa>is there any module or solution to prevent directory traversal attack
08:59:30  * carifquit (Ping timeout: 258 seconds)
09:00:14  * eckonquit (Quit: The Lounge - https://thelounge.chat)
09:01:31  * kpattich_quit (Ping timeout: 246 seconds)
09:02:26  * kakashiA1joined
09:02:31  * ShalokShalomquit (Read error: Connection reset by peer)
09:03:36  <joepie91>temhaa: how do you know that this is the case?
09:03:56  * eckonjoined
09:04:54  * ahmedelgabriquit (Ping timeout: 246 seconds)
09:05:01  <temhaa>joepie91: the case?.. result of security scan
09:05:03  * ShalokShalomjoined
09:05:32  <joepie91>temhaa: okay, which 'security scan' is it? and can you provide a pastebin or a screenshot with the details?
09:05:42  <joepie91>because there's a good chance that it's a false positive
09:06:01  <joepie91>(and otherwise, more details are needed to know how to fix it)
09:07:18  <Hrtlnd>Directory traversal is because your public folders, like your image directory, js directory, css directory, etc, do not have an index.html file inside it
09:07:35  <joepie91>no, that's not what 'directory traversal attack' generally means
09:07:49  <joepie91>it generally refers to the ability to 'break out' of a particular root folder by using ..
09:07:55  <joepie91>or absolute paths
09:08:34  <Hrtlnd>If it's metasploit, that's what it is.
09:09:20  <temhaa>joepie91: https://i.ibb.co/m8b12rp/security-ss.png
09:09:53  <joepie91>Hrtlnd: assuming you mean https://github.com/rapid7/metasploit-framework/blob/master//modules/auxiliary/scanner/http/http_traversal.rb -- it's definitely about .., note the 'trigger string' setting
09:10:15  * eckonpart ("Rejoining")
09:10:15  * paulcarrotyjoined
09:10:15  * eckonjoined
09:10:17  <joepie91>temhaa: oh, Acunetix.
09:10:21  <Hrtlnd>you're right.
09:10:43  <joepie91>temhaa: that looks like a false positive at a glance
09:10:52  <joepie91>temhaa: are you using `express.static` for serving up static files?
09:10:59  <joepie91>or something custom?
09:11:05  * petercpwjoined
09:11:32  * ShalokShalomquit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
09:11:47  <temhaa>joepie91: express.static: my code part is something like that: app.use(express.static(config.get("serve-directory")), morgan("tiny"), bodyParser.urlencoded({ extended: true }));
09:12:01  * harryhquit (Read error: Connection reset by peer)
09:12:30  * j0hjoined
09:12:31  <joepie91>temhaa: okay, that looks correct, the security scan warning is very likely a false positive then (which Acunetix is kind of known for)
09:12:36  <joepie91>temhaa: I do see a potential *other* security issue though
09:12:47  <joepie91>what is your 'serve-directory' setting set to? the root of your project, where package.json also is?
09:13:05  <joepie91>or a special 'public' or 'static' folder or something, that's dedicated to static files?
09:13:13  <j0h>Hi, I recall seeing a gist about what hash libs to use for each purpose linked here before, I can't seem to find the link, anyone know what it is?
09:13:38  <joepie91>j0h: this one, by any chance? https://gist.github.com/tqbf/be58d2d39690c3b366ad
09:13:42  <j0h>I've been using bcrypt for old apps which are no longer used but looking at Argon2id to generate a hash for a new backend I'm working on
09:13:56  <temhaa>joepie91: my package.json is out of serve-directory which configured in conf. file
09:14:00  <j0h>yes, that was it, thanks joepie91!
09:14:02  * wonko7joined
09:14:25  <joepie91>j0h: also, argon2id is a good choice
09:14:33  <joepie91>(for password hashes)(
09:14:47  * powerbitjoined
09:15:01  <j0h>great, I've been reading up and seems to be one that's generally recommended
09:15:09  <joepie91>may or may not be in that gist, it's a fairly new option
09:15:13  <joepie91>huh
09:15:16  <joepie91>surprising
09:15:27  <joepie91>in a good way, mind, but I would've expected most advice to still be stuck on bcrypt
09:16:28  <temhaa>joepie91: my project folder structure.... I run "ui-node.js". express is defined here... and my serve-directory is "src" https://i.ibb.co/DYXnyBK/uinodejs.png
09:17:36  <joepie91>temhaa: okay, then yes, that is a security issue - you should only expose a dedicated public/static folder, because otherwise people can get access to *anything* in your project, including eg. configuration files with passwords
09:19:02  * Sharaalquit (Ping timeout: 258 seconds)
09:19:17  <temhaa>joepie91: actullay I didnt understand because I was thinking that my serve-directory was my static folder and I just expose that one.
09:19:35  * Guest24985quit
09:19:39  <temhaa>joepie91: I ask a lot because I wanna learn the truth. thanks :()
09:19:54  <joepie91>temhaa: src/ contains a package.json, though?
09:20:08  <joepie91>that doesn't look like a static folder
09:20:23  <joepie91>hm, actually, now that I look at the structure again, you have an odd division
09:20:28  * carifjoined
09:20:35  <temhaa>joepie91: no.. as you can see package.json is out of "src" directory
09:20:35  <joepie91>in this case eg. the config/ folder wouldn't be exposed, but that package.json would be
09:20:50  <joepie91>oh! sorry, I misread
09:21:02  <joepie91>nevermind then, everything is fine :)
09:21:43  <temhaa>joepie91: ohhh :/ nop. but still have security issue. bad things :(
09:21:46  * kpattich_joined
09:22:15  <joepie91>temhaa: I mean, I obviously can't say that you *don't* have any security issues, but the one you screenshotted 100% looks like a false positive, ie. not actually an issuue
09:22:24  <joepie91>it looks like an Acunetix scan, and Acunetix is somewhat infamous for wrong results
09:22:39  <joepie91>("security scans" in general are fairly useless)
09:25:10  <deepy>(with the exception of checking your dependencies for known vulnerabilities, those are awesome)
09:26:11  * RusAlexquit (Ping timeout: 244 seconds)
09:27:30  * kjartanquit (Read error: Connection reset by peer)
09:28:21  * carifquit (Ping timeout: 246 seconds)
09:28:53  * RusAlexjoined
09:31:22  <joepie91>heh, that's not really the kind of thing I meant :D
09:32:09  * keepLearning512quit (Remote host closed the connection)
09:32:22  * kjartanjoined
09:33:57  * cnsvcquit (Ping timeout: 256 seconds)
09:34:04  * enoqjoined
09:35:40  * Miajoined
09:35:42  * Parsec301quit (Ping timeout: 252 seconds)
09:37:44  * ahmedelgabrijoined
09:39:56  * paulcarrotyquit (Quit: Leaving)
09:41:57  * platonicjoined
09:42:49  * ahmedelgabriquit (Ping timeout: 258 seconds)
09:43:03  * littlebear_quit (Read error: Connection reset by peer)
09:45:45  * carifjoined
09:45:55  * gliquit (Quit: Leaving)
09:46:14  * ShalokShalomjoined
09:46:55  * platonicquit (Ping timeout: 268 seconds)
09:48:19  * Miaquit (Read error: Connection reset by peer)
09:50:28  * ZeroWalkerjoined
09:51:19  * b44joined
09:51:40  * sz0_joined
09:52:49  * pd09041999joined
09:54:36  * goodenoughjoined
09:55:05  * kpattich_quit (Remote host closed the connection)
09:55:15  * vs^quit
09:56:17  * Kkiroquit (Read error: Connection reset by peer)
09:56:19  * kpattichajoined
09:57:01  * abaiste^joined
09:58:13  * carifquit (Ping timeout: 244 seconds)
09:58:48  * goodenoughquit (Ping timeout: 252 seconds)
10:00:24  * sctskwjoined
10:00:42  * Kkirojoined
10:00:42  * Kkiroquit (Changing host)
10:00:42  * Kkirojoined
10:00:47  * keepLearning512joined
10:01:08  * TrueMedianquit (Read error: Connection reset by peer)
10:04:39  * sctskwquit (Ping timeout: 258 seconds)
10:04:51  * Gustavo6046quit (Ping timeout: 252 seconds)
10:05:58  * Furaiquit (Quit: WeeChat 2.4)
10:09:54  * Sharaaljoined
10:11:10  * carifjoined
10:11:43  * pd09041999quit (Ping timeout: 245 seconds)
10:13:52  * Furaijoined
10:13:55  * lundibundiquit (Ping timeout: 257 seconds)
10:14:12  * Sharaalquit (Ping timeout: 246 seconds)
10:17:31  * Metalsuttonquit (Quit: Leaving)
10:20:00  * ed209quit (Remote host closed the connection)
10:20:07  * ed209joined
10:22:43  * slajaxjoined
10:23:55  * nnyk_joined
10:25:00  * chowmeinedquit (Read error: Connection reset by peer)
10:25:03  * carifquit (Ping timeout: 246 seconds)
10:25:40  * plutoniixquit (Quit: Leaving)
10:27:39  * slajaxquit (Ping timeout: 258 seconds)
10:27:53  * Aquazijoined
10:27:55  <c-c>So what do #Node.js think of Deno?
10:29:10  <Hrtlnd>deno.land? or Deno Driz?
10:29:17  * marthinalquit (Remote host closed the connection)
10:29:38  * marthinaljoined
10:30:38  <joepie91>c-c: it has a heavily flawed security model (and "secure" is consequently quite a misnomer), and import-from-URL is a terrible idea. other than that, I frankly don't really see any convincing reasons to care about it :)
10:31:14  * b44quit (Remote host closed the connection)
10:31:23  <joepie91>I might be more interested in it if it implemented capability-based security
10:33:17  <Hrtlnd>I agree with joepie91. I can't really take it seriously outside of a gimmicky playthrough. I certainly wouldn't use it for any commercial applications.
10:35:42  <c-c>wow whats capability based security
10:35:55  <joepie91>c-c: http://joeduffyblog.com/2015/11/10/objects-as-secure-capabilities/ has a pretty good explanation of it
10:37:56  <joepie91>c-c: the general high-level idea is that each part of an application gets handed a pile of 'capabilities', think of them a bit like access tokens, and it can use those to access *specific* resources that it has been granted access to by the code that's calling it (which itself would need to have access to those resources or a superset of them, etc. etc)
10:38:23  <joepie91>so you might call a function, and give that function access to "everything in this particular folder" - and it can't open any files or whatever outside of that folder, that folder is the only thing it can 'see' and access
10:38:24  * carifjoined
10:38:25  <c-c>hm, I wonder if we have discussed this before
10:38:39  <c-c>its like file system permissions to certain places
10:39:02  <joepie91>and that function can subdivide its access to that folder into access to specific files in that folder, for example, and call two other functions and give each of those functions access to only that specific file
10:39:31  <joepie91>the general idea being that you only give access to whatever resources are strictly needed, to a given chunk of code
10:39:47  <joepie91>and if that chunk of code wants access to more stuff, it has to ask the 'parent code' for access to it
10:40:00  <joepie91>which may allow or deny that, based on whatever rules
10:40:08  <joepie91>c-c: we may have, dunno :P
10:40:19  <c-c>I suppose thats something that might be later in the implementation
10:40:36  <joepie91>c-c: this is something you need to build into a language/runtime from the start, it's not something you can tack on later
10:40:39  <c-c>last I checjed it was still a one man project
10:40:44  <joepie91>it's a fundamentally different model
10:40:57  <c-c>joepie91: kek I was thinking of a way to add it as a library
10:41:20  <joepie91>not really possible, because you need to start from 'no access to anything' and add to that
10:41:31  <joepie91>if you start with ambient access to ~everything, you already can't implement it anymore
10:41:52  <c-c>well
10:42:01  <joepie91>the best you can do is have something like "execute this specific piece of code in an environment that has access to nothing, and then gradually hand out access to stuff", but then the entire ecosystem will be incompatible with it
10:42:09  <joepie91>because the entire ecosystem is built around having access to stuff
10:42:35  <c-c>also, IME the security is often implemented outside the app runtime. Firewalls and user permissions.
10:42:35  * platonicjoined
10:42:49  <joepie91>yes, that is the problem :)
10:43:02  <joepie91>and it's why security mechanisms regularly fail
10:43:12  <c-c>so, you want to run your Deno engine on top of a hypervisor, not an OS?
10:43:20  <joepie91>no?
10:43:26  <joepie91>that has nothing to do with what I'm describing
10:43:33  <joepie91>what I'm describing requires actual changes to (the usage of) the language
10:43:34  <c-c>I'm just making a point
10:43:41  <joepie91>it has nothing to do with VMs
10:43:48  <joepie91>it has to do with a different access model
10:43:53  * cnsvcjoined
10:44:01  <c-c>about how poeple think about this type of access model in most places
10:44:19  <joepie91>I mean, I know that, that's part of my complaint
10:44:50  <joepie91>a significant part of the 'security industry' is dedicated to working around the consequences of having ambient authority
10:45:08  <joepie91>when it /should/ be working on removing the ambient authority that's causing the problem
10:45:17  <c-c>if we really want "secure", the next Ecmascript engine must be written in Rust.
10:45:33  <joepie91>writing something in Rust doesn't magically make it secure
10:46:19  <c-c>no. but does prevent couple of classes of errors that would otherwise give you a way in
10:46:33  <joepie91>yes, but no more than that
10:46:54  <joepie91>it's just part of the picture
10:46:58  * Metalsuttonjoined
10:46:58  <joepie91>it's an important part, but still just a part
10:47:10  <joepie91>and it's the part that, more or less, people already agree about
10:47:21  * platonicquit (Ping timeout: 268 seconds)
10:47:33  <joepie91>I'm more concerned about the part that people /don't/ agree about :)
10:47:38  <joepie91>but that is also important
10:48:15  <c-c>I think its a super idea, being able to lock down aspects of your runtime
10:48:26  * Parsec300joined
10:48:41  <c-c>traditionally I guess js isn't perceived as secure, and not as the place where you'd be "locking things down"
10:48:46  <joepie91>my point here is that 'locking down' isn't enough
10:48:54  <joepie91>it still assumes "default access to anything, selectively restrict it"
10:49:03  <joepie91>ie. the blacklist approach to security, which is notoriously ineffective
10:49:15  <c-c>but practical?
10:49:18  <joepie91>what you want is the opposite, "default access to nothing, selectively grant it", ie. the whitelist approach -- that's what capabilities are about
10:49:28  <c-c>joepie91: ever write an app in lisp?
10:49:39  <joepie91>see also: https://en.wikipedia.org/wiki/Principle_of_least_privilege
10:49:46  <joepie91>no
10:49:47  <c-c>joepie91: you have to bring everything in... it gets to be quite bit of work
10:49:47  * ffx_joined
10:50:04  <c-c>so in that sense the inverse is nice
10:50:17  <joepie91>I mean, if you use parametric modules in JS, then you're already 90% of the way to writing applications with capabilities
10:50:22  <c-c>And *that* is the secret sauce for js.
10:50:27  <joepie91>it's entirely possible to make this ergonomic
10:50:31  * feelextrajoined
10:50:39  * kakashiA1quit (Ping timeout: 258 seconds)
10:50:40  <c-c>Just Write, Worry Later 8)
10:50:48  <joepie91>and considering the significant security benefits, there's no reason not to do that
10:50:50  <c-c>presto! million npm packages!
10:50:53  <joepie91>c-c: if that's what you're doing, you're doing it wrong :)
10:51:02  <c-c>Oh I'm just a spectator
10:51:30  <c-c>- but don't say I didn't tell you so ;)
10:51:45  <joepie91>not sure what you're going on about
10:51:48  * carifquit (Ping timeout: 258 seconds)
10:52:29  <c-c>joepie91: just finishing up the convo. Have a good one 8)
10:55:49  * bsanford_joined
10:55:50  * Kkiroquit (Read error: Connection reset by peer)
10:55:56  * bsanford_quit (Remote host closed the connection)
10:59:40  * apparitionjoined
11:00:11  * Kkirojoined
11:00:12  * Kkiroquit (Changing host)
11:00:12  * Kkirojoined
11:00:19  * tkore2joined
11:01:13  * tkore1quit (Ping timeout: 246 seconds)
11:03:28  * ShalokShalomquit (Read error: Connection reset by peer)
11:03:34  * ShalokShalom_joined
11:04:10  * ffx_quit (Ping timeout: 255 seconds)
11:04:27  * carifjoined
11:04:28  * hollusionjoined
11:05:15  <hollusion>when storing custom data/object to make it available in all routes
11:05:22  <hollusion>shall i use the req or the res object?
11:05:53  <hollusion>is there any recommended way of doing so? i used req.socket = ... to store the current socket connection and use it in each router
11:06:11  <hollusion>but that lead to a bug because express seems to already use req.socket
11:06:29  <joepie91>right, doesn't it even already contain that very same thing?
11:06:37  <joepie91>anyway, you can avoid that by storing everything inside of an object, like
11:06:41  <joepie91>req.yourAppStuff.foo
11:06:59  <hollusion>what would be the difference if i used res.youAppStuff ?
11:07:20  <joepie91>functionally, none (other than that eg. express-ws only gives you the `req` object)
11:07:28  <joepie91>semantically, `req` probably makes more sense
11:07:34  <joepie91>req and res are both just objects
11:07:49  <hollusion>alright, ill restructure the code, thank you very much
11:08:37  <hollusion>what exactly is res.socket?
11:08:45  <hollusion>because ive implemented socket.io into the app
11:08:59  <hollusion>are those 2 different websocket libs?
11:09:13  <hollusion>or did socket.io create req.socket?
11:09:26  * kpattichaquit (Ping timeout: 258 seconds)
11:09:31  * ShalokShalom_changed nick to ShalokShalom
11:09:32  * hemstockjoined
11:09:32  <joepie91>hollusion: the properties on the `req` object are listed in the Express docs
11:09:37  <joepie91>in the API reference
11:09:43  <joepie91>and no, it's nothing to do with websockets
11:09:57  <joepie91>also, socket.io isn't a "websocket lib", it just *uses* a websocket lib
11:10:23  <joepie91>it's a socket-y abstraction that uses a bunch of different transports, but I recommend against it due to its bugginess and bad docs
11:10:29  <joepie91>and generally badly designed abstractions
11:10:47  <joepie91>the websocket library that it uses is `ws` (Node-side) and the browser's native websocket implementation (browser-side)
11:10:47  * pmartquit (Ping timeout: 268 seconds)
11:11:09  <hollusion>hmmm it worked and was pretty straight forward but im willing to use a better alternative
11:11:13  * kpattichajoined
11:11:17  <hollusion>you recommending to just use the basic ws module?
11:12:05  <joepie91>yes, with optionally an auto-reconnect wrapper thing (there are a few on npm afaik), or if you need fallbacks, something like SockJS
11:12:24  <joepie91>anyhow, I need to get to work :P
11:12:27  * bsanfordquit (Read error: Connection reset by peer)
11:13:35  <hollusion>thank you once more, have a great day
11:14:37  * b44joined
11:14:37  * bsanfordjoined
11:14:44  * bsanfordquit (Client Quit)
11:16:31  * cnsvcquit (Ping timeout: 256 seconds)
11:16:38  * bradfordli123joined
11:18:49  * kakashiA1joined
11:19:25  * carifquit (Ping timeout: 268 seconds)
11:21:51  * bradfordli123quit (Ping timeout: 252 seconds)
11:23:31  * kakashiA1quit (Ping timeout: 255 seconds)
11:23:47  * basiclaser_quit (Quit: Connection closed for inactivity)
11:24:11  * gloomyquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:24:37  * OKTAVIUSquit (Remote host closed the connection)
11:27:12  * keepLearning512quit (Remote host closed the connection)
11:27:15  * trevorjoined
11:31:59  * carifjoined
11:34:48  * kpattichaquit (Ping timeout: 258 seconds)
11:37:25  * mgoljoined
11:38:52  * ahmedelgabrijoined
11:40:45  * gloomyjoined
11:41:43  * kpattichajoined
11:42:48  * carifquit (Ping timeout: 258 seconds)
11:43:30  * platonicjoined
11:45:01  * KempfCreativejoined
11:45:11  * keepLearning512joined
11:45:25  * keepLearning512quit (Read error: Connection reset by peer)
11:45:41  * keepLearning512joined
11:47:58  * platonicquit (Ping timeout: 245 seconds)
11:48:07  * ahmedelgabriquit (Ping timeout: 246 seconds)
11:51:58  * cnsvcjoined
11:53:47  * kakashiA1joined
11:55:24  * carifjoined
11:56:23  * Abedjoined
11:56:35  * ffx_joined
11:57:36  * ffx_quit (Client Quit)
11:57:59  * Sharaaljoined
11:58:16  * kakashiA1quit (Ping timeout: 246 seconds)
11:58:32  * ffx_joined
11:59:33  * AbedBhutyquit (Ping timeout: 246 seconds)
12:00:59  * sctskwjoined
12:02:20  * Sharaalquit (Ping timeout: 258 seconds)
12:02:47  * keepLearning512quit (Remote host closed the connection)
12:05:49  * sctskwquit (Ping timeout: 255 seconds)
12:07:04  * keepLearning512joined
12:09:26  <sozuba>joepie91, how are you? haven't chat with you in a while ;)
12:10:19  * CarlenWhitejoined
12:11:54  * carifquit (Ping timeout: 252 seconds)
12:17:20  * slajaxjoined
12:20:30  * Metalsuttonquit (Quit: Leaving)
12:21:43  * Parsec300quit (Ping timeout: 245 seconds)
12:22:03  * kakashiA1joined
12:22:04  * slajaxquit (Ping timeout: 246 seconds)
12:24:39  * lundibundijoined
12:24:49  * pd09041999joined
12:25:19  * __xorquit (Quit: Leaving)
12:25:33  * __xorjoined
12:25:46  * __xorquit (Client Quit)
12:26:10  * keepLearning512quit (Remote host closed the connection)
12:26:13  * _xorjoined
12:28:15  * keepLearning512joined
12:28:37  * R0b0t-Xjoined
12:33:10  * mquy90joined
12:35:00  * R0b0t-Xquit (Ping timeout: 252 seconds)
12:36:54  * Anticomquit (Read error: Connection reset by peer)
12:39:20  * ahmedelgabrijoined
12:40:02  * mezodquit (Read error: Connection reset by peer)
12:40:20  * zfigzjoined
12:40:22  * mezodjoined
12:40:43  * mezodquit (Remote host closed the connection)
12:40:43  * Kkiroquit (Read error: Connection reset by peer)
12:41:00  * carifjoined
12:41:14  * abbiyajoined
12:41:19  <abbiya>hi
12:41:26  <abbiya>is there a equivalent to https://docs.python.org/3/library/urllib.parse.html#urllib.parse.quote
12:41:30  <abbiya>in node ?
12:41:48  * Kestrel-029joined
12:42:08  * Nicmavrquit (Ping timeout: 245 seconds)
12:42:47  <avu>abbiya: encodeURIComponent()
12:43:08  <joepie91>sozuba: ohai, busy busy busy :P
12:44:23  * platonicjoined
12:44:56  * danecandojoined
12:45:33  * Kkirojoined
12:45:33  * Kkiroquit (Changing host)
12:45:33  * Kkirojoined
12:45:37  <abbiya>thanks
12:45:50  <abbiya>how to encode a string to utf-8
12:46:44  * ahmedelgabriquit (Ping timeout: 252 seconds)
12:47:04  * mezodjoined
12:47:31  * CoffeeBreakfastjoined
12:48:07  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
12:48:43  * duderonomyquit (Ping timeout: 244 seconds)
12:48:56  * platonicquit (Ping timeout: 252 seconds)
12:48:57  * Parsec300joined
12:49:37  * marthinalquit (Remote host closed the connection)
12:50:35  * cnsvcquit (Ping timeout: 256 seconds)
12:51:37  * R0b0t-Xjoined
12:52:11  * lundibundiquit (Ping timeout: 258 seconds)
12:52:33  * EyePulpjoined
12:52:44  * hyperiscojoined
12:52:51  * Anticomjoined
12:53:37  <joepie91>abbiya: what encoding is the string currently in?
12:54:34  * Kevin_joined
12:54:52  * trevorquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
12:57:25  * AbedBhutyjoined
13:00:05  * Abedquit (Ping timeout: 244 seconds)
13:00:12  * duderonomyjoined
13:01:21  * lundibundijoined
13:02:11  * promethjoined
13:02:23  * dadinnjoined
13:02:52  * kpattichaquit (Ping timeout: 252 seconds)
13:03:08  * adam_joined
13:03:39  * adam_quit (Client Quit)
13:06:28  * leatherface416joined
13:07:16  * VirusCthulhujoined
13:08:18  * kpattichajoined
13:09:28  * carifquit (Ping timeout: 252 seconds)
13:09:58  * TikityTikjoined
13:11:43  * Kestrel-029quit (Ping timeout: 245 seconds)
13:11:47  * Nicmavrjoined
13:12:12  * hpeinarjoined
13:13:07  * hpeinarquit (Quit: Page closed)
13:14:01  * hpeinarjoined
13:15:26  <hpeinar>Does someone know how can I run unit tests for knex.js? I've tried npm test but this runs the full suite (including integration tests). npm run test:cli seems to run only somekind of migration tests.
13:15:35  * VX86joined
13:16:29  * R0b0t-Xquit (Remote host closed the connection)
13:17:20  * hoijuijoined
13:17:33  * AJTJquit (Ping timeout: 245 seconds)
13:18:09  * motoBotquit (Quit: Ping timeout (120 seconds))
13:18:12  <samsch>hyperisco, Try `npm run tape`
13:18:16  * cnsvcjoined
13:18:40  * motoBotjoined
13:18:49  <hyperisco>samsch, I don't want to
13:19:07  <samsch>lol, whoops
13:19:16  <samsch>hpeinar
13:19:28  * AJTJjoined
13:19:43  * pd09041999quit (Ping timeout: 250 seconds)
13:19:54  <hpeinar>lol, they don't have tape defined, but seems like "plaintest" is something I'm looking for
13:20:06  * nnyk_quit (Ping timeout: 252 seconds)
13:20:30  <hpeinar>Thanks still @samsch
13:20:58  <samsch>Oh, yeah that looks right lol
13:21:26  * voidbergjoined
13:21:40  <samsch>Might have been some leftovers in the random 0.16.4 pre-release version of the package I'm looking at >_>
13:21:52  * Roughyjoined
13:22:31  * realiesjoined
13:22:44  <realies>are you having any trouble with sqlite3@4.0.8?
13:22:48  <realies>getting segmentation fault here
13:23:20  * djddutyquit (Ping timeout: 244 seconds)
13:23:28  <joepie91>realies: segmentation faults are always bugs
13:23:45  <joepie91>make sure you're updated to the latest version of sqlite3, and if it still occurs, file an issue
13:24:02  <realies>joepie91, this is the latest version
13:24:12  <realies>https://github.com/mapbox/node-sqlite3/issues/1164
13:24:38  <joepie91>that's not a segfault
13:24:49  <realies>sure, but my issue is
13:24:59  <joepie91>then I'm not sure why you're linking that :)
13:25:12  <realies>not sure if I can do anything that would output more verbose information on why it segfaults
13:25:53  <joepie91>you could have it produce a coredump and look at that, but that's very much 'deep into the weeds' and I can't really help you with the exact process of that (though possibly somebody else here can!)
13:26:43  * Kestrel-029joined
13:27:08  * Nicmavrquit (Ping timeout: 245 seconds)
13:27:25  * reberjoined
13:28:44  * djddutyjoined
13:29:14  * carifjoined
13:29:31  * antsmartianjoined
13:30:21  * def_jamjoined
13:30:26  * eb0t_joined
13:31:05  * eblipquit (Ping timeout: 244 seconds)
13:31:46  * eb0tquit (Ping timeout: 255 seconds)
13:32:54  <realies>joepie91, that is the same issue :)
13:33:04  <realies>ldd node_sqlite3.node \ ./node_sqlite3.node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./node_sqlite3.node)
13:33:17  * pd09041999joined
13:34:38  * MatrixBot1quit (Ping timeout: 245 seconds)
13:34:55  * altigraphquit (Ping timeout: 255 seconds)
13:35:56  * Klumbenquit (Ping timeout: 258 seconds)
13:35:56  * akfarrellquit (Ping timeout: 258 seconds)
13:36:03  * akfarrelljoined
13:36:57  * MatrixBot1joined
13:37:11  * R0b0t-Xjoined
13:38:08  * trevorjoined
13:38:45  * abbiyapart
13:39:50  * ahmedelgabrijoined
13:39:55  * Nataliepart ("Leaving")
13:40:27  * kjartanquit (Read error: Connection reset by peer)
13:40:49  * VX86quit (Quit: Leaving)
13:40:50  * Kkiroquit (Read error: Connection reset by peer)
13:41:14  * VX86joined
13:41:16  * hyperiscoquit (Disconnected by services)
13:41:17  * hyperisco_joined
13:41:45  * hyperiscojoined
13:42:36  * hyperisco_quit (Client Quit)
13:43:34  * VX86quit (Client Quit)
13:44:08  * VX86joined
13:45:14  * kjartanjoined
13:45:20  * dadinn`joined
13:45:46  * Kkirojoined
13:45:46  * Kkiroquit (Changing host)
13:45:46  * Kkirojoined
13:45:56  * Sharaaljoined
13:46:05  * dadinn`part
13:46:17  * VX86quit (Client Quit)
13:46:39  * VX86joined
13:48:09  * dadinn`joined
13:48:24  * VX86quit (Client Quit)
13:48:42  * VX86joined
13:49:01  * j0hquit (Ping timeout: 256 seconds)
13:49:09  * Firasjoined
13:49:18  * VX86quit (Client Quit)
13:49:41  * shokyquit (Ping timeout: 244 seconds)
13:49:57  <Firas>Hey. I'm using the following to get the body (which will always be JSON) from a POST request: https://gist.github.com/firasdib/73a2415ac91ba102850c5750f5ab1558 -- I'm just covering all grounds here: will the events be garbage collected along with the request object when the processing of it has finished?
13:50:14  <Firas>Or do I need to perform any cleanup to ensure I don't have any leaks?
13:50:24  * marthinaljoined
13:50:30  * Sharaalquit (Ping timeout: 268 seconds)
13:51:13  * cnsvcquit (Ping timeout: 256 seconds)
13:51:38  * hpeinarquit (Quit: Page closed)
13:52:12  * kerrangjoined
13:53:06  * Klumbenjoined
13:54:58  * dadinn`quit (Read error: Connection reset by peer)
13:55:38  * dadinn`joined
13:55:47  * dadinn`part
14:01:49  * sctskwjoined
14:02:24  * greggerzjoined
14:03:06  * carifquit (Ping timeout: 258 seconds)
14:03:37  * ffx_quit (Quit: Leaving...)
14:03:44  <dadinn>hi all
14:04:43  <dadinn>Is anyone here uses Emacs with Indium for JS development?
14:05:53  * Chuguniyquit (Ping timeout: 245 seconds)
14:06:32  * sctskwquit (Ping timeout: 258 seconds)
14:06:33  * ffx_joined
14:06:44  <joepie91>Firas: I would strongly recommend using Express + body-parser for this sort of thing. aside from that, event emitters are just objects, and 'events' don't really exist other than as a conceptual thing, so the same garbage collection rules apply as for everything: if you stop referencing it from anywhere, it'll be garbage-collected eventually
14:09:01  <Firas>joepie91: why express + body-parser? Seems excessive.
14:09:05  * KempfCreative1joined
14:09:15  * ffx_quit (Client Quit)
14:09:58  * KempfCreativequit (Ping timeout: 252 seconds)
14:09:58  * KempfCreative1changed nick to KempfCreative
14:10:05  * apparitionquit (Quit: Bye)
14:10:21  * CoffeeBreakfastquit (Ping timeout: 244 seconds)
14:11:10  <joepie91>Firas: because if you don't, you will just end up reimplementing them poorly :) the inherent cost of a dependency in JS is extremely low, and Express only does very little, so there's not really any reason to avoid using it if you're writing a HTTP server thingem of any kind
14:11:35  <Firas>Whats wrong with the code I pasted?
14:11:56  <joepie91>the benefit in dependencies is primarily that you benefit from the ecosystem's collective experience with a usecase and how to handle it correctly, edge cases included
14:12:18  <joepie91>including edgecases that neither you nor me are aware of right now
14:13:00  <Firas>This is copied from the docs, and wrapped in a promise to avoid the callback.
14:13:57  <joepie91>look, I really don't have time right now for an extensive discussion on this topic, and this is shaping up to be one of those endless yes/no arguments, so I'll leave it at that
14:14:05  <joepie91>it was just a piece of advice to save you headaches down the road
14:14:43  <Firas>o_o
14:15:17  * ffx_joined
14:15:19  * ffx_quit (Read error: Connection reset by peer)
14:15:57  * carifjoined
14:16:18  * nodzjoined
14:16:28  * antsmartianquit (Remote host closed the connection)
14:18:36  * slajaxjoined
14:19:25  * nodzquit (Remote host closed the connection)
14:20:32  * R0b0t-Xquit (Remote host closed the connection)
14:21:07  * Anticomquit (Ping timeout: 258 seconds)
14:22:08  * AbedBhutyquit (Read error: Connection reset by peer)
14:22:12  * nodzjoined
14:23:33  <joepie91>Firas: sorry, that came across a little more harshly than I'd intended. it's just that discussions around dependency usage tend to get really drawn out in my experience, and I've had too many of them with too many people already :)
14:23:56  * heyitsramajoined
14:24:04  * cnsvcjoined
14:24:23  <Firas>Its ok. I'm just trying to keep the code base lean, because performance is very important for us. We have very specific use cases, and don't need anything beyond that which might slow things down.
14:24:39  <Firas>A simple node http server is much faster, for our use case, than express for example.
14:24:42  <prometh>dependencies get maintained without you having to do it
14:25:11  <prometh>reinventing the wheel is a waste
14:25:28  * feelextraquit (Ping timeout: 245 seconds)
14:25:29  <prometh>unless, of course, you have some kind of major improvement
14:25:56  <Firas>I agree with you. I would not be re-writing things if it did not show substantial performance improvement.
14:25:58  * ahmedelgabriquit (Ping timeout: 246 seconds)
14:26:12  <Kaivo>I kinda like the keep it minimal approach when starting something, with a design that allows to change it to another lib when it makes sens. If it's just 50 lines for something on the side, why not? If it's for a core fonctionnality though, lib all the way.
14:26:57  <prometh>Firas: do you actually need that performance? if so, why aren't you writing in Go or Rust?
14:27:20  <Firas>prometh: Because management does not allow me to spend the necessary time to rewrite it in Go right now.
14:27:30  <Firas>It is something I plan to do in the future, though.
14:27:40  <prometh>Firas: then i would just get it working without reinventing mutliple times
14:28:07  <Firas>That was the initial approach, which proved to be too slow.
14:28:18  * Anticomjoined
14:28:28  <prometh>express is slow?
14:28:28  * carifquit (Ping timeout: 255 seconds)
14:28:47  <Firas>Yes
14:29:08  <prometh>do you need to support 100,000 concurrent connections?
14:29:17  <Firas>Yes
14:29:45  <prometh>and yet management won't allot you the time to write soemthign with enough performance? sounds very prototype'ish
14:29:46  * wonko7quit (Ping timeout: 252 seconds)
14:30:18  * trevorquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:30:22  <Kaivo>Could claiming it can't be done be used to convince them to make the rewrite happen sooner?
14:30:24  <prometh>in which case, i disagree with your approach... i'd just get it working to prove that the design works
14:31:11  <Kaivo>(In my book, can't be done means can't be done or can be done but I don't want to support that type of code ever)
14:31:17  * trevorjoined
14:32:11  <Firas>I have something that is working well enough, after reinventing the wheel. However, I have messed something up, and it looks like I have a memory leak somewhere. I don't know if its a dependency or my own code.
14:32:18  * keepLearning512quit (Read error: Connection reset by peer)
14:32:40  <Firas>To make it clear, I'm not re-inventing every wheel. I've just selected those things the profiler said were the biggest offenders.
14:33:09  <joepie91>Firas: have you verified that it's actually a memory leak - ie. your heap size is growing - and not just a bunch of working memory being kept around unused by V8?
14:33:21  <joepie91>as V8 is pretty slow to give back memory
14:34:03  <Firas>joepie91: My method is currently to run a stress test, run the GC, and collect a dump. Then repeat this, and compare the dumps.
14:34:17  <Firas>Some items seem to linger, but I'm unable to see anything obvious. Perhaps you are correct.
14:34:48  <joepie91>Firas: https://www.npmjs.com/package/memwatch-next may be useful
14:35:03  <Firas>The reason I'm concerned is because the memory usage seems to steadily go up in production. It was at 1.5GB this morning (out of the total 2GB on the machine), before it was restarted (due to another reason).
14:35:10  * MarkyCjoined
14:35:14  <joepie91>right, that is not necessarily a problem
14:35:28  <Firas>I would have thought it would have ran a major GC a couple of times, but perhaps thats an incorrect assumption?
14:35:37  <joepie91>the RSS will generally represent the largest amount of memory that the process needed at once at some point in the recent past
14:35:49  <joepie91>that can be very, very far off from actual heap usage
14:36:12  <joepie91>especially in stress-testing scenarios
14:36:24  <joepie91>even a major GC won't necessarily return working memory to the system
14:36:28  * R0b0t-Xjoined
14:36:43  <Firas>Interesting.
14:36:58  <Firas>Perhaps the only conclusive evidence would be if the server crashes because of OOM?
14:37:15  <joepie91>Firas: well, I'd recommend looking at that memwatch-next module :)
14:37:33  <joepie91>it monitors heap usage
14:37:43  <Firas>I've seen it. I'll try it out locally, thanks.
14:37:52  <Firas>I don't think I'd want that in production, though.
14:40:20  * bodzjoined
14:40:28  * Kestrel-029quit (Ping timeout: 245 seconds)
14:41:15  * wsierocijoined
14:41:36  * Nicmavrjoined
14:41:51  * carifjoined
14:42:17  * vatican__joined
14:42:36  * Dbuggerjoined
14:43:10  * bodzquit (Read error: Connection reset by peer)
14:43:46  * lundibundiquit (Ping timeout: 255 seconds)
14:43:55  * tombusbyquit (Remote host closed the connection)
14:43:59  * bodzjoined
14:44:09  * nodzquit (Ping timeout: 268 seconds)
14:44:16  * tombusbyjoined
14:46:08  * R0b0t-Xquit (Read error: Connection reset by peer)
14:47:23  <prometh>joepie91: is mozilla ethical?
14:47:57  * vatican__quit (Ping timeout: 258 seconds)
14:48:30  * ffx_joined
14:48:33  * icarusfactorjoined
14:49:45  * paulcarrotyjoined
14:50:39  * factorquit (Ping timeout: 244 seconds)
14:50:49  * duderonomyquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:50:53  * obensourcequit (Ping timeout: 245 seconds)
14:51:46  * slajaxquit (Ping timeout: 252 seconds)
14:53:01  * sarafquit (Quit: Leaving)
14:53:25  * grnjoined
14:53:46  * temhaaquit (Quit: Page closed)
14:54:28  <samsch>prometh, Are you asking relative to something, or absolutely?
14:54:38  * carifquit (Ping timeout: 245 seconds)
14:54:41  <prometh>samsch: whichever
14:55:48  * ahmedelgabrijoined
14:56:57  * cnsvcquit (Ping timeout: 256 seconds)
14:57:20  * kevireilly_joined
14:57:27  * vatican__joined
15:00:12  * goodenoughjoined
15:01:18  * bodzquit (Ping timeout: 245 seconds)
15:02:51  * groomquit (Quit: Leaving.)
15:03:16  * ahmedelgabriquit (Ping timeout: 268 seconds)
15:04:12  <Firas>joepie91: unfortunately I am unable to install the package you linked.
15:04:24  * kraucrowquit (Remote host closed the connection)
15:04:26  * obensourcejoined
15:04:58  * kraucrowjoined
15:06:22  * rikt0rjoined
15:06:31  * keepLearning512joined
15:06:55  * R0b0t-Xjoined
15:08:19  * carifjoined
15:09:14  * AlexPortablejoined
15:11:12  * Notiquit (Ping timeout: 252 seconds)
15:11:42  * Kestrel-029joined
15:11:43  * Nicmavrquit (Ping timeout: 245 seconds)
15:14:42  * aananevquit (Read error: Connection reset by peer)
15:16:39  * hollusionquit (Quit: Leaving)
15:16:59  * egijoined
15:17:16  * egiquit (Client Quit)
15:18:06  * vatican__quit (Read error: Connection reset by peer)
15:19:06  * bradfordli123joined
15:19:51  * arunkumar413joined
15:20:35  * carifquit (Ping timeout: 258 seconds)
15:21:53  <rikt0r>Hi all. Quick question. I have a package (package 1) which contains a base class whose constructor needs to read a package.json file. In a second package (package 2), I require and *extend* the class from package 1. I'd like the constructor to load the package.json from package 2 without supplying a path manually. Any thoughts on how to accomplish that?
15:23:29  * floppydhquit (Quit: WeeChat 2.4)
15:23:33  * aananevjoined
15:23:39  * bradfordli123quit (Ping timeout: 248 seconds)
15:24:31  <TikityTik>What is recommended to use for sessions?
15:25:37  <ljharb>TikityTik: cookies
15:25:39  * Kkiroquit (Read error: Connection reset by peer)
15:25:41  <ljharb>TikityTik: or do you mean like, passport
15:25:44  <TikityTik>i mean express?
15:25:48  * ShalokShalomquit (Read error: Connection reset by peer)
15:25:50  <fastman>or maybe jazz sessions? :)
15:25:54  <ljharb>rikt0r: what do you mean
15:26:08  <ljharb>rikt0r: `require('foo/package.json')` should work
15:26:46  * Nicmavrjoined
15:27:08  * Kestrel-029quit (Ping timeout: 245 seconds)
15:27:45  <TikityTik>ljharb: should i use express for managing and giving sessions?
15:27:50  * led_dark_1quit (Quit: led_dark_1)
15:27:53  <TikityTik>also i thought cookies and sessions are different things?
15:28:06  * ShalokShalom_joined
15:28:37  <ljharb>TikityTik: cookies are how you store the session token in the browser
15:28:43  <ljharb>TikityTik: and yes, you can use passport with express for that
15:29:04  <TikityTik>is that recommended over just using express?
15:30:24  * kpattichaquit (Ping timeout: 268 seconds)
15:30:55  * Kkirojoined
15:31:00  <ljharb>you can use express by itself just for the session part, but presumably you want auth too
15:31:05  * Kkiroquit (Changing host)
15:31:05  * Kkirojoined
15:31:22  * ShalokShalom_changed nick to ShalokShalom
15:31:32  * led_dark_1joined
15:32:45  * ffx_quit (Remote host closed the connection)
15:33:32  <TikityTik>auth meaning a login page made already?
15:33:37  * trevorquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
15:34:00  * cnsvcjoined
15:34:15  * carifjoined
15:34:54  * duderonomyjoined
15:35:02  * feelextrajoined
15:35:27  * piyerjoined
15:35:55  * duderonomyquit (Client Quit)
15:36:51  <TikityTik>also the strategies page is broken on this i think. http://www.passportjs.org/features/
15:37:59  * ffx_joined
15:38:32  * MarkyCquit (Read error: Connection reset by peer)
15:40:34  * wbddwokl2quit (Remote host closed the connection)
15:41:22  * wbddwokl2joined
15:42:04  * wbddwokl2quit (Remote host closed the connection)
15:43:12  * shokyjoined
15:44:37  * Kevin_quit (Ping timeout: 256 seconds)
15:45:32  * balestrinojoined
15:45:49  * carifquit (Ping timeout: 268 seconds)
15:50:45  <joepie91>TikityTik: Express doesn't do anything with sessions, but express-session does
15:50:59  <joepie91>TikityTik: use Passport if you need to support multiple auth mechanisms, use express-session if you don't
15:51:21  <joepie91>prometh: more ethical than most, but not as ethical as their reputation would suggest :)
15:51:32  <TikityTik>thanks
15:51:34  <prometh>thanks
15:51:37  <joepie91>prometh: Mozilla definitely isn't beyond saving though
15:51:37  * zumba_addictjoined
15:51:45  <joepie91>their business model isn't fundamentally bad or anything
15:51:46  * enoqquit (Quit: enoq)
15:51:59  <prometh>as a research company, i'd have thought they'd be the most ethical
15:52:17  <joepie91>there's just bits here and there where they're not behaving as ethically as they should be, and seemingly some specific teams making questionable decisions
15:52:34  <zumba_addict>Morning all. How do you name modules/libraries that are meant for beta/alpha testing?
15:53:10  <joepie91>zumba_addict: a common convention is to stick with <1.0.0 versions until a first stable version is done
15:53:26  <joepie91>for alpha/beta versions of new major versions (ie. a 1.x already exists), there are semver prefixes
15:53:36  <joepie91>(see npm docs)
15:53:40  <zumba_addict>will do
15:53:40  <joepie91>err, sorry, suffixes
15:53:49  <zumba_addict>thank you sir
15:53:52  <joepie91>you commonly see those in the form of rc.whatever :)
15:53:57  <zumba_addict>got it
15:53:58  <joepie91>stuff like 2.0.0-rc.4
15:53:59  <zumba_addict>rc1
15:54:01  <joepie91>yeah
15:54:03  <zumba_addict>ah with a dot
15:54:04  * R0b0t-Xquit (Remote host closed the connection)
15:54:10  <joepie91>varies, I think
15:54:20  * R0b0t-Xjoined
15:54:25  <joepie91>I think npm just treats anything that's not x.x.x as a pre-release version and the exact scheme is up to you
15:54:39  <joepie91>but make sure to double-check that
15:54:45  <joepie91>because I'm not totally certain
15:55:10  <zumba_addict>cool, will do
15:55:37  * Gustavo6046joined
15:55:50  * wbddwokljoined
15:57:58  * srl295joined
15:58:31  * carifjoined
16:00:30  * AtumTjoined
16:01:12  * gloomyquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:02:10  * Arcaelyxjoined
16:08:38  * carifquit (Ping timeout: 268 seconds)
16:10:41  * cnsvc_joined
16:11:14  * cnsvcquit (Remote host closed the connection)
16:12:34  * bradfordli123joined
16:12:38  <TikityTik>what do I use to sanitize user input?
16:14:39  * chargenquit (Quit: BBL)
16:16:00  <joepie91>TikityTik: what do you mean with 'sanitize' exactly?
16:16:26  <TikityTik>for login forms
16:16:46  <joepie91>that doesn't really answer my question :)
16:17:49  <TikityTik>where people can't do SQL or code injections
16:17:53  * chargenjoined
16:18:00  <TikityTik>throug the login fields
16:18:09  * chargenquit (Client Quit)
16:18:35  <joepie91>TikityTik: so as for SQL injections: if you use parameterized queries instead of inserting values into a string-based query, SQL injections cannot occur by design, and 'sanitizing' is unnecessary
16:18:45  <joepie91>if you're using Knex, then this will automatically be the case for stuff like .where
16:18:59  * R0b0t-Xquit (Read error: Connection reset by peer)
16:19:01  * pd09041999quit (Ping timeout: 246 seconds)
16:19:04  <joepie91>if you're using a DB library directly, you'll want to specify the query itself, and the values to use in it, separately
16:19:11  * mezodquit (Read error: Connection reset by peer)
16:19:15  * R0b0t-Xjoined
16:19:17  <joepie91>usually that's something like db.query(query, [ arrayOfValues ])
16:19:20  <joepie91>using placeholders in the query
16:19:26  * pd09041999joined
16:19:29  <joepie91>(see your DB library's documentation for details)
16:19:37  <joepie91>as for 'code injections', do you mean XSS?
16:19:41  * mezodjoined
16:19:50  * bradfordli123quit (Remote host closed the connection)
16:20:11  <TikityTik>yeah but serversided
16:20:28  <joepie91>that doesn't really make any sense, XSS is inherently browser-side
16:20:33  <TikityTik>not sure if they could escape strings and execute node.js code
16:20:34  <joepie91>so what do you mean exactly?
16:20:36  <joepie91>no
16:20:41  <joepie91>not unless you start eval'ing things
16:20:45  <joepie91>(don't use eval)
16:20:47  <TikityTik>lol
16:20:51  <TikityTik>i see
16:21:09  * groomjoined
16:21:10  <TikityTik>thank you
16:21:12  <joepie91>the only real risk in that sense is if you use the child_process module to run an external application
16:21:40  <joepie91>*always* use execFile or spawn from that module, never `exec`, and make sure to very carefully confirm that you can't pass weird arguments into the application to make it do something different than what was intended
16:21:44  <joepie91>ideally avoid child processes entirely
16:22:01  * cthulchujoined
16:22:10  <joepie91>other than that, code execution isn't likely unless you do really weird stuff
16:22:21  <joepie91>as for XSS, your templater should take care of that by automatically escaping variables in templates
16:22:28  * reberquit (Remote host closed the connection)
16:22:58  <joepie91>the general rule of thumb is that if you need to escape something, that's usually a sign that you're using the wrong API (namely, one that only takes 'flat' strings), and should be looking for a better API instead
16:23:12  * bradfordli123joined
16:23:13  <joepie91>like how for SQL queries you should use parameterized queries instead of string interpolatioin
16:23:18  <joepie91>interpolation*
16:23:21  * Ergoquit (Remote host closed the connection)
16:24:08  * GreenJellojoined
16:24:33  <joepie91>TikityTik: anyway, does that answer that? :P
16:24:59  <TikityTik>yes, a lot
16:25:40  * Kkiroquit (Read error: Connection reset by peer)
16:25:53  * Nicmavrquit (Ping timeout: 245 seconds)
16:25:57  * alexge50joined
16:26:02  * Kestrel-029joined
16:27:39  * bradfordli123quit (Ping timeout: 248 seconds)
16:28:49  * tkore2quit (Ping timeout: 258 seconds)
16:29:05  * carifjoined
16:29:19  * promethquit (Quit: ✌️👋)
16:30:25  * trevorjoined
16:31:05  * Kkirojoined
16:31:11  * Kkiroquit (Changing host)
16:31:11  * Kkirojoined
16:31:12  * promethjoined
16:31:39  * piyerquit (Remote host closed the connection)
16:32:19  * piyerjoined
16:33:17  * cnsvc_quit (Ping timeout: 256 seconds)
16:33:23  * trevorquit (Read error: Connection reset by peer)
16:33:26  * jjrabbitjoined
16:33:39  <jjrabbit>hey guys
16:33:56  * trevorjoined
16:34:05  <jjrabbit>do the dependencies inside package.json get updated automatically every time you do an npm install?
16:34:26  * altabjoined
16:34:27  * trevorquit (Client Quit)
16:34:30  * AlolaPikachuquit (Ping timeout: 244 seconds)
16:35:06  * dskwlkrquit (Remote host closed the connection)
16:35:27  <GreenJello>jjrabbit, only if you don't have a package-lock.json file
16:37:26  * gambl0r3joined
16:38:41  <jjrabbit>GreenJello: hm i have both
16:38:58  * mat001joined
16:39:17  * trevorjoined
16:39:18  <jjrabbit>and it looks like package.json has all the dependencies even though i never touch either json file
16:39:26  <jjrabbit>so was just wondering
16:39:30  * jimleijoined
16:39:48  <GreenJello>jjrabbit, you can run `npm update` to get the latest compatible version of your deps, direct and indirect
16:40:29  <GreenJello>the idea is that `npm install` gets anyone that runs it at any time the same exact versions of the deps
16:44:56  * Notijoined
16:44:57  * tkore2joined
16:45:20  * Roughyquit (Quit: Meadow Fresh milk)
16:45:21  * userxjoined
16:45:54  <jjrabbit>GreenJello: ok doing npm update seems to have pulled all the dependecies from my package.json
16:46:00  <jjrabbit>GreenJello: ty!
16:46:20  * paulcarrotyquit (Quit: Leaving)
16:46:45  <ThePendulum>I have been staring at the word 'cache' for too long, it just sounds german to me now
16:47:05  <ThePendulum>konst loch kache = neue NooddeKache();
16:47:54  * netametajoined
16:49:57  * keepLearning512quit (Remote host closed the connection)
16:52:35  * Notiquit (Ping timeout: 244 seconds)
16:52:40  * slajaxjoined
16:56:24  * ahmedelgabrijoined
16:57:55  * mgolquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:58:40  * carifquit (Ping timeout: 258 seconds)
16:58:54  * b44quit
16:59:37  * zumba_addictquit (Ping timeout: 246 seconds)
16:59:38  * mquy90quit (Ping timeout: 245 seconds)
17:00:28  * balestrinoquit (Ping timeout: 252 seconds)
17:00:41  * cnsvc_joined
17:01:01  * Roughyjoined
17:01:54  * nnykjoined
17:03:25  * Roughyquit (Client Quit)
17:03:43  * Roughyjoined
17:05:49  * renlolojoined
17:05:54  * led1joined
17:07:24  <Lindrian>joepie91: Would it be sane to start a node process with the `max-old-space-size` flag and run a stress test against that instance? My idea is that if I limit the process to say 200mb, I should be able to see a leak fairly quick if there is one, by having the process crash.
17:07:32  <Lindrian>Can you see an error with my methodology?
17:08:19  * zedsjoined
17:08:42  * zedspart
17:08:47  * led1quit (Client Quit)
17:10:12  * keepLearning512joined
17:10:55  * grnquit (Ping timeout: 255 seconds)
17:11:27  * carifjoined
17:11:41  * danecandoquit (Ping timeout: 258 seconds)
17:12:57  * Anticomquit (Quit: Leaving)
17:13:02  * gloomyjoined
17:13:47  * renn0xtk9joined
17:14:59  * Forsaken87joined
17:15:52  * tkore2quit (Ping timeout: 255 seconds)
17:16:57  * zhallajoined
17:16:57  * zhallaquit (Changing host)
17:16:57  * zhallajoined
17:17:04  * sillysluxjoined
17:20:11  * keith_millerjoined
17:20:19  * Venemoquit (Quit: Communi 3.5.0 - http://communi.github.com)
17:21:32  <jjrabbit>does anybody here have a publicly facing express server serving content?
17:21:47  <jjrabbit>have you faced any issues?
17:22:10  * slajaxquit (Ping timeout: 255 seconds)
17:22:20  <joepie91>Lindrian: sure, that'd work, though make sure you set *all* the necessary
17:22:22  * dadinnquit (Ping timeout: 246 seconds)
17:22:22  <joepie91>necessary flags *(
17:22:24  * gxtjoined
17:22:36  <Lindrian>Which other flags do I need?
17:22:51  * eb0t_changed nick to eblip
17:22:55  <joepie91>Lindrian: node --v8-options | grep space_size
17:23:03  <joepie91>exact flags vary by Node/V8 version
17:23:39  <Lindrian>I see two more, max-semi-space-size and -internal-old-space-size
17:23:59  * def_jamchanged nick to eb0t
17:24:00  * carifquit (Ping timeout: 246 seconds)
17:24:07  <joepie91>right, google around for the exact meanings :)
17:24:15  <joepie91>I don't recall from memory
17:24:18  <joepie91>(pun not intended)
17:24:24  <Lindrian>Thanks for the help
17:25:25  * kapilpjoined
17:25:54  * icarusfactorquit (Quit: Leaving)
17:29:47  * dretnxjoined
17:31:03  <Lindrian>joepie91: I have currently only set the max old size to 200mb, but the process is still hovering around 220-250mb -- is there a way to set a hard limit?
17:31:29  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:32:43  * d3x0rquit (Read error: Connection reset by peer)
17:33:10  * d3x0rjoined
17:33:21  * cnsvc_quit (Ping timeout: 256 seconds)
17:33:40  <TikityTik>how do i handle user logged in sessions properly? do I st res.session.loggedIn = true or something?
17:34:03  * Ultrasaucequit (Quit: Ultrasauce)
17:34:12  <TikityTik>s/st/set/
17:34:44  <joepie91>Lindrian: the total memory usage is composed of a few different 'memory spaces' (that's what those various flags are about), so if you set all the flags, that should result in a hard limit
17:34:50  <joepie91>the exact combination, I'm unsure of
17:34:57  <Lindrian>ah, okay
17:34:59  <Lindrian>Thanks.
17:34:59  <TikityTik>what's the danger of using req.session to see if users are valid or not? can users edit their sessions and trick the server that they're logged in?
17:35:17  <joepie91>Lindrian: basically the total memory usage will be all the allocation spaces + some internal overhead
17:35:20  <joepie91>(at most)
17:35:20  * Ultrasaucejoined
17:35:21  <joepie91>TikityTik: https://gist.github.com/joepie91/cf5fd6481a31477b12dc33af453f9a1d
17:35:40  <joepie91>and no, users cannot edit session data
17:35:46  <joepie91>but you probably want to track *who* they are logged in as :)
17:35:49  <joepie91>as explained in that gist
17:35:53  <TikityTik>thank you
17:39:33  * bradfordli123joined
17:40:11  * bradfordli123quit (Read error: Connection reset by peer)
17:40:13  * keith_millerjoined
17:41:00  * bradfordli123joined
17:41:20  * groomquit (Quit: Leaving.)
17:41:37  * gloomyquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:44:19  * carifjoined
17:44:21  * dretnxquit (Quit: Page closed)
17:45:11  * kevireilly_quit (Quit: kevireilly_)
17:46:22  <gajus>anyone know an open-source project or SaaS that would allow me to create updatable SQL views?
17:46:37  <sozuba>joepie91, sorry i was afk for a long time, just saw your message
17:46:41  <sozuba>;)
17:46:46  <gajus>so, SELECT id, name FROM person; draws a table where I can update values `id`, `name` using custom rules
17:46:53  <sozuba>enjoy your day
17:47:00  * sozubaquit (Quit: bye bye)
17:48:34  * EREVANjoined
17:49:25  * carifquit (Ping timeout: 244 seconds)
17:49:49  * SingleBoy5580joined
17:49:58  * zhallaquit (Ping timeout: 252 seconds)
17:50:12  * keith_millerquit (Remote host closed the connection)
17:50:27  * keith_millerjoined
17:53:21  * kjartanquit (Read error: Connection reset by peer)
17:53:31  * carifjoined
17:53:33  * kakashiA1quit (Ping timeout: 244 seconds)
17:54:00  * pihentagy[m]quit (Quit: Idle kick: User has been idle for 30 days.)
17:54:33  <jjrabbit>apparently json has a max value of 5GB
17:54:44  <prometh>not big enough
17:54:48  <jjrabbit>that's like sending a dvd lmao
17:56:21  * tkore2joined
17:56:51  <joepie91>jjrabbit: "json"?
17:57:10  <joepie91>what do you mean?
17:57:24  * praneliusjoined
17:57:34  <jjrabbit>like how big of a json you can send
17:57:43  <jjrabbit>of data
17:57:53  * SingleBoy5580quit
17:58:08  <joepie91>to what? over what? using what?
17:58:18  <joepie91>JSON is just a serialization format, it doesn't have a maximum anything
17:58:34  * kjartanjoined
17:59:09  <jjrabbit>well according to the ibm site the largest json you can parse is 5gb
17:59:16  <jjrabbit>so that's what i was referring to
17:59:20  <joepie91>that makes no sense
17:59:32  <joepie91>there's not even one singular JSON parser
17:59:37  <joepie91>and the format specifies no limits
17:59:39  * hoijuiquit (Ping timeout: 250 seconds)
17:59:45  <joepie91>are they talking about specific JSON parser or environment or something?
17:59:50  <joepie91>a specific*
18:00:18  <jjrabbit>not sure
18:00:25  <joepie91>link?
18:00:40  * mgoljoined
18:00:52  * leatherface416quit (Ping timeout: 268 seconds)
18:01:03  * zhallajoined
18:01:08  * zhallaquit (Changing host)
18:01:08  * zhallajoined
18:01:10  * zhallaquit (Read error: Connection reset by peer)
18:01:11  * leatherface416joined
18:01:15  <jjrabbit>i just googled json max limit
18:01:26  <joepie91>okay, but you're quoting a specific site
18:01:30  <joepie91>can you link me to that specific page?
18:01:59  <jjrabbit>ok
18:02:04  <jjrabbit>it was the second result
18:02:10  <jjrabbit>https://www.ibm.com/support/knowledgecenter/en/SS9H2Y_7.6.0/com.ibm.dp.doc/json_parserlimits.html
18:02:48  <joepie91>jjrabbit: okay, so that is documentation for a specific IBM product
18:02:50  <joepie91>and *its* limits
18:02:50  * ShalokShalomquit (Read error: Connection reset by peer)
18:02:53  <GreenJello>jjrabbit, if you're not using "DataPower Gateways 7.6" then this doesn't apply to you
18:03:08  * sctskwjoined
18:03:36  <jjrabbit>so i guess i'm just interested in the web browser parser limit
18:03:50  <jjrabbit>that doesn't have a limit?
18:04:08  <GreenJello>jjrabbit, it's like saying there's a limit to the number of words in a book. There isn't, but some readers might refuse to read a book of a certain size
18:04:08  * AbedBhutyjoined
18:04:10  <joepie91>"the web browser parser limit" -- you mean JSON.parse in browser JS?
18:04:15  * ShalokShalomjoined
18:04:27  * tkore2quit (Ping timeout: 252 seconds)
18:04:27  <srl295>datapower is a specific product yes. I'd think you would mostly be constrained by available memory.
18:04:34  <ljharb>jjrabbit: why on earth would you need 5 gigs of data in the browser
18:04:48  * zhallajoined
18:04:48  * zhallaquit (Changing host)
18:04:48  * zhallajoined
18:04:52  <jjrabbit>ljharb: ask ibm
18:04:56  <ljharb>no matter how much work you want done, you'll want to do it in many small chunks, for better parallelization and bandwith usage
18:05:24  * zhallaquit (Read error: Connection reset by peer)
18:05:25  <jjrabbit>joepie91: yea
18:05:32  <ljharb>that ibm stuff looks like something on their platform
18:05:44  <ljharb>for incoming json docs that get turned into "jsonx" docs
18:07:29  <GreenJello>jjrabbit, I don't think you could normally have 5gb of JSON in memory in the browser, but if you could, then parsing it would require extra memory and you'd very likely run out
18:07:51  * sctskwquit (Ping timeout: 264 seconds)
18:07:52  * lpinquit (Quit: Textual IRC Client: www.textualapp.com)
18:08:09  <GreenJello>jjrabbit, the limit isn't related to a specific parser, it's just the resources the browser lets your JS program use
18:08:39  * cnsvc_joined
18:09:02  * Vonorjoined
18:09:08  * b44joined
18:09:11  * praneliusquit (Quit: ZNC 1.7.3 - https://znc.in)
18:09:27  <GreenJello>as ljharb said, you should find a way to process smaller amounts of JSON at any given time, even if you eventually process GBs of data.
18:09:55  <GreenJello>details depend on your requirements
18:10:10  * zhallajoined
18:10:10  * zhallaquit (Changing host)
18:10:10  * zhallajoined
18:10:40  * Kkiroquit (Read error: Connection reset by peer)
18:11:41  * zhallaquit (Read error: Connection reset by peer)
18:12:00  * marthinalquit (Remote host closed the connection)
18:12:08  * carifquit (Ping timeout: 245 seconds)
18:12:48  * marthinaljoined
18:13:11  * keith_mi_joined
18:13:13  * tkore2joined
18:13:29  <Vonor>anyone good with commander? I got programm.command('foo <arg>').option('-o --option').action(somefunction()).parse(process.argv) if i now run the app without any arguments the help-menu is printed and shows '-o' as a global option. but i want it to be an option only for the 'foo' command
18:13:42  * keith_millerquit (Ping timeout: 244 seconds)
18:14:38  <jjrabbit>GreenJello: yea i don't actually need to send 5gb i was just looking up the limit
18:14:51  * richchurcher[m]quit (Quit: Idle kick: User has been idle for 30 days.)
18:15:10  * altabquit (Read error: Connection reset by peer)
18:15:46  * Kkirojoined
18:15:46  * Kkiroquit (Changing host)
18:15:46  * Kkirojoined
18:16:07  <GreenJello>jjrabbit, on my system with plenty of RAM, chrome has the limit set to 2gb for the JS heap
18:16:19  <jjrabbit>cool
18:16:20  <GreenJello>you can put this in the console: window.performance.memory.jsHeapSizeLimit
18:17:01  <jjrabbit>so you probably wouldn't want to go over that
18:17:09  * hoijuijoined
18:17:14  * petercpwquit (Quit: Leaving)
18:17:33  <GreenJello>jjrabbit, you can't go over that for the total memory usage of your entire program
18:17:47  * zhallajoined
18:17:47  * zhallaquit (Changing host)
18:17:47  * zhallajoined
18:18:05  * jottrjoined
18:18:24  <jjrabbit>ok so you actually have less than that to work with
18:18:25  * zhallaquit (Read error: Connection reset by peer)
18:19:23  <GreenJello>jjrabbit, so if you have a JSON string, you're looking at around two bytes per character (JS uses a string format similar to utf-16), and then if you parse the string you have memory usage for all of the objects/arrays/strings/etc
18:19:56  * marthinalquit (Ping timeout: 258 seconds)
18:21:25  <GreenJello>if you're downloading the data from an API, you can use 'fetch' to make the request, which allows you to ask the browser to parse JSON for you while downloading the response... which I assume won't use the JS heap.
18:21:54  <GreenJello>won't put the JSON string in the heap, I mean
18:22:14  * tkore2quit (Ping timeout: 258 seconds)
18:23:15  * kakashiA1joined
18:25:23  * trevorquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:25:29  * hemstockquit (Read error: Connection reset by peer)
18:25:51  * carifjoined
18:26:33  * trevorjoined
18:26:37  <ljharb>jjrabbit: lol it's super weird to be wondering about the limit if you have no plans to do something absurd that even comes close to it
18:27:05  <ljharb>jjrabbit: like if you go into a pharmacy and ask "just curious - really no reason - but exactly how many boxes of sudafed can i buy before you have to call the cops?" it's super sus
18:27:24  * hemstockjoined
18:27:58  * kakashiA1quit (Ping timeout: 258 seconds)
18:28:50  * zhallajoined
18:28:50  * zhallaquit (Read error: Connection reset by peer)
18:28:51  <jjrabbit>ljharb: how do you know if it comes close to the limit if you have no idea what the limit is
18:29:48  * keepLearning512quit (Remote host closed the connection)
18:29:52  * bradfordli123quit
18:29:53  <jjrabbit>i guess it's no surprise that's the best analogy you could come up with
18:30:35  <ljharb>lol
18:30:41  <ljharb>you don't have to know
18:30:44  <ljharb>you wait til it's a problem
18:32:08  * sauvinquit (Ping timeout: 252 seconds)
18:32:12  * tkore2joined
18:32:19  <jjrabbit>wow
18:32:23  <jjrabbit>haha
18:32:57  * shushquit (Remote host closed the connection)
18:33:12  <jjrabbit>that's your actual methodology
18:33:25  * Nuggernoggerquit (Ping timeout: 246 seconds)
18:34:21  * praneliusjoined
18:36:35  * zhallajoined
18:36:35  * zhallaquit (Changing host)
18:36:35  * zhallajoined
18:36:40  * carifquit (Ping timeout: 264 seconds)
18:36:51  * zactsjoined
18:36:54  * zhallaquit (Read error: Connection reset by peer)
18:37:05  * EREVAN_joined
18:37:06  * eckonquit (Remote host closed the connection)
18:37:16  * tkore2quit (Ping timeout: 264 seconds)
18:37:17  * shushjoined
18:37:37  <ljharb>for something that's not a real problem? sure
18:37:55  * b44quit (Remote host closed the connection)
18:38:13  * EREVANquit (Ping timeout: 255 seconds)
18:40:04  * zhallajoined
18:40:04  * zhallaquit (Changing host)
18:40:04  * zhallajoined
18:40:20  * eckonjoined
18:40:49  * zhallaquit (Read error: Connection reset by peer)
18:41:27  * setpillquit (Quit: o/)
18:41:45  * eckonpart
18:41:45  * eckonjoined
18:42:04  * shushquit (Ping timeout: 264 seconds)
18:42:36  * carifjoined
18:43:23  * b44joined
18:43:45  * trevorquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:44:44  * i1nfusionquit (Remote host closed the connection)
18:45:11  * i1nfusionjoined
18:45:13  * b44quit (Remote host closed the connection)
18:45:40  * gxtquit (Ping timeout: 246 seconds)
18:45:53  * zhallajoined
18:45:58  * keith_mi_quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:46:05  * zhallaquit (Changing host)
18:46:05  * zhallajoined
18:46:09  <jjrabbit>wait for the not real problem to become a problem
18:46:12  <jjrabbit>ok ljharb
18:46:16  * zhallaquit (Read error: Connection reset by peer)
18:46:56  <ljharb>what i mean is, "you have too much json to parse" is never going to be the thing blocking your progress - if it happens, it's an indicator of serious architectural flaws that, once addressed, will ensure you don't have too much json
18:47:12  * VirusCthulhuquit (Remote host closed the connection)
18:47:19  <jjrabbit>ok
18:47:44  * Roughyquit (Ping timeout: 268 seconds)
18:48:15  * zhallajoined
18:48:15  * zhallaquit (Changing host)
18:48:15  * zhallajoined
18:48:36  * zhallaquit (Read error: Connection reset by peer)
18:50:10  * AtumT_joined
18:50:34  * Parsec300quit (Ping timeout: 246 seconds)
18:51:19  * trevorjoined
18:51:55  * LouisTquit (Read error: Connection reset by peer)
18:52:21  * LouisTjoined
18:52:41  * cnsvc_quit (Ping timeout: 256 seconds)
18:52:45  * rikt0rquit (Ping timeout: 256 seconds)
18:52:54  * AtumTquit (Ping timeout: 258 seconds)
18:53:09  * Roughyjoined
18:54:00  * zhallajoined
18:54:00  * zhallaquit (Changing host)
18:54:00  * zhallajoined
18:54:12  * zhallaquit (Read error: Connection reset by peer)
18:55:54  <realies>can you exit with a particular code when you do throw new Error('sth')
18:56:10  <realies>right now echo $? says 0 when I have a new error thrown
18:57:20  <ljharb>realies: it should exit with 1 if it's due to an error
18:57:30  <realies>weird
18:57:35  * Parsec300joined
18:57:41  <ljharb>you can override it with `process.exitCode = whatever`
18:57:58  <realies>having many instances of throw new Error, wanted to sort of have a code for them all
18:58:14  <realies>it actually dies with UnhandledPromiseRejectionWarning as it is in a promise
18:58:25  <ljharb>ah, that's different. that won't crash the process by default.
18:58:33  <realies>but it does
18:58:33  <ljharb>(which it shouldn't)
18:59:04  <realies>oh, maybe some handling in .catch could work
18:59:23  * b44joined
18:59:27  <ljharb>sure
18:59:34  <ljharb>no, it doesn't :-)
18:59:38  <ljharb>the process is just *ending*
18:59:40  <ljharb>not erroring and exiting
18:59:50  <ljharb>unhandled rejections aren't necessarily errors.
18:59:51  * dadinnjoined
18:59:57  <prometh>ljharb: opinions on https://github.com/stevenvachon/scrolling-menu ?
19:00:22  * jottrquit (Ping timeout: 252 seconds)
19:00:32  <realies>cool, fixed
19:00:37  <ljharb>prometh: didn't you already ask me about this one?
19:00:40  * carifquit (Ping timeout: 264 seconds)
19:00:50  <prometh>ljharb: yes, but there've been changes and there's a better working demo
19:01:09  <prometh>ljharb: now i'm just checking if the readme is clear enough
19:01:17  <ljharb>why is node 10 required?
19:01:38  <ljharb>what's the ? mark for on "find in page"
19:01:38  <prometh>ljharb: because node 8 will be dead in ~6 months... no one is using it for building frontend
19:01:43  <ljharb>that's totally false
19:01:49  <ljharb>people are still using node 0.10 for building frontend
19:01:55  <prometh>ljharb: "find in page" hasn't been implemented yet and i'm questioning it
19:01:58  * jottrjoined
19:02:03  <ljharb>ah. it's critical to have imo, if possible.
19:02:04  <prometh>ljharb: oh........ well, fu** them :)
19:02:07  <ljharb>lol
19:02:09  <ljharb>ok well then, close tab
19:02:15  <prometh>you care about node 0.10 ??
19:02:24  * zhallajoined
19:02:25  * zhallaquit (Changing host)
19:02:25  * zhallajoined
19:02:29  <ljharb>my packages all work on node 0.6
19:02:36  <samsch>Who is still using .10 for building frontends?
19:02:42  <prometh>i'm not going to do that, man
19:02:42  * zhallaquit (Read error: Connection reset by peer)
19:02:46  <ljharb>if there's a good reason why it can't work on any node version, then cool, but "fuck them" is not a good reason
19:02:52  <prometh>my time is finite
19:02:58  <ljharb>sure but it takes no time to support older nodes.
19:02:59  * AtumTjoined
19:03:04  <prometh>it slows CI
19:03:09  <ljharb>slap babel and eslint on there, and some travis lines, and you're done
19:03:12  <prometh>and some npm features don't work in 0.6
19:03:12  <ljharb>no it doesn't, they run in parallel
19:03:18  <ljharb>`nvm install-latest-npm`
19:03:21  * emsjessecjoined
19:03:31  <prometh>latest npm runs on node 0.6 ?
19:03:32  <ljharb>i'll admit 0.6 requires some extra steps
19:03:34  <ljharb>no
19:03:38  <ljharb>but that installs the latest one that does
19:03:38  <emsjessec>anyone know of ways of speeding up puppeteer for node.js?
19:03:40  * AtumT_quit (Ping timeout: 252 seconds)
19:03:43  * Dbuggerquit (Remote host closed the connection)
19:03:46  <prometh>i use prepublishOnly
19:03:47  <ljharb>and you don't need eg `npm audit` on more than one CI job
19:03:59  <ljharb>nor should you be running the linter or build on more than one node version/CI job
19:04:08  * jjrabbitquit (Quit: leaving)
19:04:10  <prometh>node 6 is EOL.. node 8 will be soon
19:04:11  <ljharb>nor do you need to care about the dev workflow on older nodes
19:04:16  <ljharb>EOL is irrelevant
19:04:23  <prometh>do you support windows 95?
19:04:24  <ljharb>support as much as is practical, as long as people are using it
19:04:30  <ljharb>i would, if people used it. they don't.
19:04:36  <prometh>tehy don't?
19:04:42  * shushjoined
19:04:47  <ljharb>nope
19:04:55  <prometh>i'm sure someone does for some obscure reason
19:04:58  <ljharb>no browser that can access most of the web runs on windows 95
19:05:07  <ljharb>this isn't a pedantic argument you can poke holes in
19:05:11  * shushquit (Remote host closed the connection)
19:05:13  <prometh>so? they use ie5
19:05:14  <ljharb>i said, as much as is practical
19:05:18  <samsch>I actually know about people using Win95 or older, but I can't say I know about anyone using Node 4 still, let alone .10.
19:05:21  <prometh>node 10 is practical to me
19:05:25  <ljharb>and i said, dropping support with a good reason is fine
19:05:28  * shushjoined
19:05:31  <ljharb>prometh: node 4 would be practical too
19:05:34  * lundibundijoined
19:05:42  <prometh>i'm just not concerned with EOL produts
19:05:50  <ljharb>ok then you're not supporting 8, which is in LTS
19:05:52  * kakashiA1joined
19:05:58  <ljharb>"EOL soon" is "not EOL" which means bad code doesn't support it
19:06:00  <ljharb>by any metric
19:06:07  <prometh>yes, and 8 will be EOL soon.... this is a new package, not one with millions of consumers
19:06:12  <ljharb>so even if you want to be hostile to people on node 6, your code is trash if it doesn't support node 8 right now
19:06:18  <ljharb>again, soon matters less than nothing
19:06:29  <prometh>no one is using my lib
19:06:30  <ljharb>your argument holds some water if you want to only support maintained platforms
19:06:32  <ljharb>lol
19:06:47  * zactsquit (Ping timeout: 252 seconds)
19:06:48  <ljharb>nor should they, with that user-hostile a support strategy ¯\_(ツ)_/¯
19:06:49  * jottrquit (Ping timeout: 250 seconds)
19:06:50  <prometh>i won't even have a final released any time soon.. i'm going to release an alpha as a proof-of-concept
19:06:53  <ljharb>you asked for my thoughts
19:06:58  <prometh>yes
19:07:01  <prometh>any other thoughts?
19:07:03  <ljharb>my thoughts are that no code is worth using if it's got a shitty support philosophy
19:07:06  * Gazooojoined
19:07:12  * tkore2joined
19:07:12  <ljharb>hence, close tab
19:07:27  <prometh>i chose node 10 because no one will be using my lib until node 8 is EOL
19:07:39  * gloomyjoined
19:07:45  * zhallajoined
19:07:45  * zhallaquit (Read error: Connection reset by peer)
19:07:46  * slajaxjoined
19:08:31  * Notijoined
19:09:44  * lundibundiquit (Remote host closed the connection)
19:09:55  * zhallajoined
19:09:55  * zhallaquit (Changing host)
19:09:55  * zhallajoined
19:10:24  * arunkumar413quit (Read error: Connection reset by peer)
19:10:24  * zhallaquit (Read error: Connection reset by peer)
19:10:32  * goodenoughquit (Remote host closed the connection)
19:10:51  * kakashiA1quit (Ping timeout: 248 seconds)
19:10:51  * Kkiroquit (Read error: Connection reset by peer)
19:11:00  * Sharaaljoined
19:11:10  * goodenoughjoined
19:11:27  * cnsvc_joined
19:11:51  * piyerquit (Remote host closed the connection)
19:11:55  * tkore2quit (Ping timeout: 248 seconds)
19:12:34  * piyerjoined
19:12:53  * slajaxquit (Ping timeout: 250 seconds)
19:14:23  * tkore2joined
19:15:08  * renloloquit (Ping timeout: 258 seconds)
19:15:29  * goodenoughquit (Ping timeout: 250 seconds)
19:15:40  * Sharaalquit (Ping timeout: 264 seconds)
19:15:50  * Kkirojoined
19:15:51  * Kkiroquit (Changing host)
19:15:51  * Kkirojoined
19:15:59  * duderonomyjoined
19:16:11  * zactsjoined
19:16:20  * zhallajoined
19:16:20  * zhallaquit (Changing host)
19:16:20  * zhallajoined
19:16:21  * chargenjoined
19:16:26  * zhallaquit (Read error: Connection reset by peer)
19:16:37  * piyerquit (Remote host closed the connection)
19:16:37  * wonko7joined
19:16:51  * piyerjoined
19:16:59  * sz0_quit (Quit: Connection closed for inactivity)
19:17:19  * keepLearning512joined
19:17:40  * zhallajoined
19:17:40  * zhallaquit (Changing host)
19:17:40  * zhallajoined
19:17:53  * zhallaquit (Read error: Connection reset by peer)
19:18:57  * tkore2quit (Ping timeout: 250 seconds)
19:19:08  * korzqquit (Quit: ZNC - http://znc.in)
19:19:38  * EREVAN_quit
19:19:47  * korzqjoined
19:19:47  * korzqquit (Changing host)
19:19:47  * korzqjoined
19:20:49  * tockaquit (Quit: Connection closed for inactivity)
19:20:55  * zhallajoined
19:20:55  * zhallaquit (Changing host)
19:20:55  * zhallajoined
19:21:09  * slajaxjoined
19:21:33  * zhallaquit (Read error: Connection reset by peer)
19:21:59  * renlolojoined
19:26:46  <ThePendulum>hmm is there a way to clear a console without exiting the programming running in it
19:27:38  <bline>ctrl-z; clear; fg
19:27:47  <ljharb>ThePendulum: command-K?
19:27:57  * carifjoined
19:28:13  * ahmedelgabriquit (Quit: WeeChat 2.4)
19:28:31  * zhallajoined
19:28:31  * zhallaquit (Changing host)
19:28:31  * zhallajoined
19:28:32  <ThePendulum>ctrl-k doet nothing
19:28:47  <ThePendulum>other than print ^K into it
19:28:57  * alexge50quit (Ping timeout: 246 seconds)
19:29:01  <ThePendulum>I suppose ctrl z clearworks indeed heh
19:29:16  * zhallaquit (Read error: Connection reset by peer)
19:29:30  * keith_millerjoined
19:29:47  * slajaxquit (Ping timeout: 250 seconds)
19:31:35  * slajaxjoined
19:31:58  * plexigras2joined
19:34:06  * pd09041999quit (Ping timeout: 252 seconds)
19:34:19  * zhallajoined
19:34:19  * zhallaquit (Changing host)
19:34:19  * zhallajoined
19:34:41  * zhallaquit (Read error: Connection reset by peer)
19:34:53  * Notiquit (Quit: Konversation terminated!)
19:35:21  * jottrjoined
19:37:14  * gxtjoined
19:38:10  * slajaxquit (Ping timeout: 246 seconds)
19:39:19  * slajaxjoined
19:39:29  * emsjessecquit (Read error: Connection reset by peer)
19:40:28  * userxquit (Quit: userx)
19:40:42  * zactsquit (Quit: WeeChat 2.4)
19:40:50  * zhallajoined
19:40:50  * zhallaquit (Changing host)
19:40:50  * zhallajoined
19:41:16  * tkore2joined
19:41:59  * alexge50joined
19:44:28  * slajaxquit (Ping timeout: 264 seconds)
19:46:55  * jottrquit (Ping timeout: 246 seconds)
19:46:56  * marthinaljoined
19:47:15  * Dbuggerjoined
19:47:25  * Dbuggerquit (Remote host closed the connection)
19:47:36  * Dbuggerjoined
19:47:36  * slajaxjoined
19:48:33  * marthinalquit (Remote host closed the connection)
19:49:13  * marthinaljoined
19:49:21  * marthinalquit (Remote host closed the connection)
19:49:45  * Roughyquit (Quit: Meadow Fresh milk)
19:49:55  * platonicjoined
19:50:09  * tkore2quit (Ping timeout: 250 seconds)
19:50:54  * zhallaquit (Read error: Connection reset by peer)
19:52:19  * slajaxquit (Ping timeout: 258 seconds)
19:53:19  * cnsvc_quit (Ping timeout: 256 seconds)
19:53:43  * ismailhozzaquit (Ping timeout: 252 seconds)
19:53:47  * Nuggernoggerjoined
19:53:54  * carifquit (Ping timeout: 252 seconds)
19:54:12  * leatherface416quit (Quit: leatherface416)
19:54:40  * platonicquit (Ping timeout: 264 seconds)
19:54:49  * slajaxjoined
19:54:50  * wsierociquit (Remote host closed the connection)
19:55:09  * userxjoined
19:56:01  * zhallajoined
19:56:01  * zhallaquit (Changing host)
19:56:01  * zhallajoined
19:56:38  * tkore2joined
19:56:41  * Nicmavrjoined
19:56:44  * zhallaquit (Read error: Connection reset by peer)
19:57:08  * Kestrel-029quit (Ping timeout: 245 seconds)
19:58:07  * nnykquit (Ping timeout: 246 seconds)
19:59:08  * r1chjoined
19:59:13  * mrz121quit (Ping timeout: 255 seconds)
19:59:23  * slajaxquit (Ping timeout: 248 seconds)
19:59:43  * b44quit (Remote host closed the connection)
20:01:20  * kakashiA1joined
20:01:25  * tkore2quit (Ping timeout: 252 seconds)
20:01:47  * slajaxjoined
20:01:56  * zhallajoined
20:01:56  * zhallaquit (Read error: Connection reset by peer)
20:03:00  * mrz121joined
20:04:18  * bitmaskjoined
20:04:34  * sctskwjoined
20:05:15  * gxtquit (Ping timeout: 248 seconds)
20:05:41  * jottrjoined
20:06:29  * slajaxquit (Ping timeout: 258 seconds)
20:07:13  * slajaxjoined
20:07:27  * gxtjoined
20:07:51  * hussamjoined
20:08:15  * b44joined
20:08:58  * sctskwquit (Ping timeout: 246 seconds)
20:10:05  * chargenquit (Quit: BBL)
20:11:46  * slajaxquit (Ping timeout: 246 seconds)
20:12:25  * goodenoughjoined
20:12:51  * trevorquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:13:28  * slajaxjoined
20:14:39  * mrz121quit (Read error: Connection reset by peer)
20:14:41  * mrz121_joined
20:16:24  * keith_millerquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:18:07  * slajaxquit (Ping timeout: 255 seconds)
20:19:44  * carifjoined
20:19:56  * cnsvc_joined
20:20:00  * ed209quit (Remote host closed the connection)
20:20:06  * ed209joined
20:21:31  * mezodquit (Read error: Connection reset by peer)
20:22:10  * mezod_joined
20:24:12  * kapilpquit (Quit: Connection closed for inactivity)
20:24:41  * FozzWorthjoined
20:26:28  * Dbuggerquit (Ping timeout: 264 seconds)
20:26:42  * Kestrel-029joined
20:26:43  * Nicmavrquit (Ping timeout: 245 seconds)
20:28:27  * tombusbyquit (Ping timeout: 256 seconds)
20:28:54  * slajaxjoined
20:29:07  * tombusbyjoined
20:30:35  * kerrangquit (Remote host closed the connection)
20:30:58  * saladquit (Quit: salad)
20:31:19  * userxquit (Quit: userx)
20:32:00  * userxjoined
20:33:30  * slajaxquit (Ping timeout: 252 seconds)
20:33:33  * cnsvc_quit (Ping timeout: 256 seconds)
20:37:09  * lorfdsjoined
20:37:54  * s00pcanquit (Ping timeout: 252 seconds)
20:38:19  * keith_mi_joined
20:38:29  <lorfds>i'm trying to install node and npm on windows and i can't make it work
20:39:02  <lorfds>https://pastebin.com/pRx6pjvG
20:39:17  * trevorjoined
20:39:19  <lorfds>i'm out of ideas...but i'm not a node guru
20:39:40  <lorfds>this is my attempt to run an "out of the box" file i pulled off github
20:39:46  <GreenJello>lorfds, what did you do to get this error?
20:39:51  * s00pcanjoined
20:40:20  <lorfds>https://github.com/ndx-search/docs
20:40:32  <lorfds>trying to run this
20:40:39  <lorfds>and another project like it
20:40:44  <lorfds>just using the out of the box examples
20:41:00  <lorfds>also this one
20:41:00  <lorfds>https://github.com/bvaughn/js-search
20:41:16  <lorfds>i do npm install js-search
20:41:23  <lorfds>then copy the example into index.js
20:41:28  <lorfds>then try to run it
20:41:31  <lorfds>and i get that error
20:42:02  <GreenJello>the example there uses import syntax, which node doesn't have stable support for yet
20:42:17  <GreenJello>const JsSearch = require('js-search')
20:42:18  <lorfds>cool...so what's the best way to fix it?
20:42:23  <lorfds>ok let me try that
20:42:34  * kakashiA1quit (Ping timeout: 246 seconds)
20:43:18  * Aquaziquit (Quit: Connection closed for inactivity)
20:44:36  * zactsjoined
20:45:09  * piyerquit (Remote host closed the connection)
20:45:34  * carifquit (Ping timeout: 255 seconds)
20:45:37  <lorfds>so that fixed the errors...but example returned no data...but not sure it was supposed to
20:45:42  <lorfds>testing the other one now
20:45:46  <lorfds>but i get this error
20:45:46  <lorfds>https://pastebin.com/cY7Z44PZ
20:45:55  * marthinaljoined
20:46:02  <lorfds>do i have to do npm init?
20:46:05  * piyerjoined
20:46:09  * zactsquit (Client Quit)
20:46:26  * zactsjoined
20:46:36  <ljharb>lorfds: yes
20:46:36  * piyerquit (Read error: Connection reset by peer)
20:46:50  * piyerjoined
20:47:20  * reberjoined
20:47:37  * jottrquit (Ping timeout: 252 seconds)
20:49:12  <GreenJello>lorfds, if you mean nothing was printed to screen, the examples are just showing the return values, but you need to pass values to console.log for them to be printed
20:49:21  * zfigzquit (Quit: Leaving.)
20:49:26  * marthinalquit (Remote host closed the connection)
20:50:59  * platonicjoined
20:51:30  <lorfds>thanks GreenJello
20:51:48  <lorfds>how do i replicate this syntax with require: import { createIndex, addDocumentToIndex } from ndx;
20:52:07  <joepie91>let {createIndex, addDocumentToIndex} = require("ndx")
20:52:11  <joepie91>or const
20:52:33  <joepie91>though it's often a better idea to just do `const ndx = require("ndx");` and then use ndx.createIndex, etc.
20:52:44  <joepie91>then you can see exactly where each method is coming from at the place where it is used
20:52:48  <joepie91>without having to crossreference anything
20:53:09  * b44quit (Remote host closed the connection)
20:53:43  * j0hjoined
20:54:14  <lorfds>ok rock on...thanks guys working perfect now
20:55:33  * platonicquit (Ping timeout: 258 seconds)
20:55:34  * Kkiroquit (Read error: Connection reset by peer)
20:57:08  * edge563joined
20:57:41  * marthinaljoined
20:58:14  * slajaxjoined
20:58:51  * carifjoined
20:59:04  * Sharaaljoined
21:00:03  * versatiletechjoined
21:00:51  * trevorquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:00:54  * julian_duquejoined
21:00:56  * shushquit (Remote host closed the connection)
21:00:59  * hemstockquit
21:00:59  * Kkirojoined
21:01:06  * Kkiroquit (Changing host)
21:01:06  * Kkirojoined
21:01:49  * mantidquit (Ping timeout: 246 seconds)
21:02:53  * duderonomyquit (Read error: Connection reset by peer)
21:03:31  * hemstockjoined
21:03:36  * duderonomyjoined
21:03:45  * Sharaalquit (Ping timeout: 252 seconds)
21:03:55  * slajaxquit (Ping timeout: 246 seconds)
21:04:41  * shushjoined
21:06:32  * marthinalquit (Remote host closed the connection)
21:07:02  * shushquit (Remote host closed the connection)
21:07:21  * shushjoined
21:07:55  * slajaxjoined
21:08:36  * skylitejoined
21:08:54  * cnsvc_joined
21:09:56  * reberquit (Remote host closed the connection)
21:10:40  * julian_duquechanged nick to mantid
21:10:55  * carifquit (Ping timeout: 246 seconds)
21:10:58  * piyerquit (Remote host closed the connection)
21:11:18  * Kestrel-029quit (Ping timeout: 245 seconds)
21:11:41  * Nicmavrjoined
21:11:49  * piyerjoined
21:12:09  * j0hquit (Ping timeout: 256 seconds)
21:12:27  * slajaxquit (Ping timeout: 248 seconds)
21:12:44  * flying_sausagesquit (Quit: You just lost the game. Peace Out.)
21:13:38  * piyerquit (Remote host closed the connection)
21:13:54  * piyerjoined
21:14:12  * al-damirijoined
21:15:02  * flying_sausagesjoined
21:15:08  * zactsquit (Quit: WeeChat 2.4)
21:15:34  * kakashiA1joined
21:16:05  * renn0xtk9quit (Quit: Konversation terminated!)
21:17:16  * bitmaskquit (Quit: Gone to sleep...)
21:18:17  * Nes173joined
21:18:18  * Nes173quit (Changing host)
21:18:18  * Nes173joined
21:18:51  * gambl0r3quit (Ping timeout: 246 seconds)
21:19:20  * Arcaelyxquit (Quit: Textual IRC Client: www.textualapp.com)
21:20:19  * slajaxjoined
21:20:28  * kakashiA1quit (Ping timeout: 258 seconds)
21:21:03  * jottrjoined
21:22:27  * Lucas_Grayjoined
21:22:50  * edge563quit (Remote host closed the connection)
21:22:55  * marthinaljoined
21:23:52  * edge563joined
21:23:56  * skylitequit (Read error: Connection reset by peer)
21:24:19  * carifjoined
21:24:38  * skylitejoined
21:24:42  * tkore2joined
21:25:05  * slajaxquit (Ping timeout: 258 seconds)
21:26:26  * cnsvcjoined
21:26:29  * keepLearning512quit (Remote host closed the connection)
21:28:00  * aaronm04quit (Quit: WeeChat 2.4)
21:28:13  * Arcaelyxjoined
21:29:13  * tkore2quit (Ping timeout: 255 seconds)
21:31:00  * nnyk_joined
21:31:06  * nnyk_quit (Changing host)
21:31:06  * nnyk_joined
21:31:13  * hdonjoined
21:32:08  * jottrquit (Ping timeout: 245 seconds)
21:35:04  * s00pcanquit (Ping timeout: 246 seconds)
21:35:17  <hdon>hi all :) the npm docs say "package-lock.json is automatically generated for any operations where npm modifies either the node_modules tree, or package.json" but when i run `npm install` i'm not getting a `package-lock.json`. running npm 6.2.0. any guess what could be the issue?
21:35:38  * edwardlyquit (Read error: Connection reset by peer)
21:36:12  * plexigras2quit (Ping timeout: 252 seconds)
21:36:30  * keepLearning512joined
21:38:23  * ffx_quit (Remote host closed the connection)
21:38:58  * ffx_joined
21:39:11  * brandonkaljoined
21:39:13  * marthinalquit (Remote host closed the connection)
21:39:16  * ffx_quit (Remote host closed the connection)
21:39:25  <hdon>ah i found it. `.npmrc` has `package-lock=false`
21:39:56  <ljharb>that's what you want. only apps should have lockfiles, not packages.
21:40:02  * carifquit (Ping timeout: 258 seconds)
21:40:02  * R0b0t-Xquit (Ping timeout: 258 seconds)
21:41:05  * keepLearning512quit (Ping timeout: 250 seconds)
21:41:42  * Kestrel-029joined
21:41:43  * Nicmavrquit (Ping timeout: 245 seconds)
21:41:54  * edwardlyjoined
21:41:54  * edwardlyquit (Changing host)
21:41:54  * edwardlyjoined
21:42:39  * cnsvcquit (Remote host closed the connection)
21:43:21  * dlwickselljoined
21:43:49  * cnsvc_quit (Ping timeout: 256 seconds)
21:44:46  <prometh>ljharb: webpack and babel both use package-lock along with dep bots... for some reason
21:46:47  * keepLearning512joined
21:46:53  * keepLearning512quit (Remote host closed the connection)
21:47:31  * pokkquit (Remote host closed the connection)
21:47:37  * tkore2joined
21:48:45  * gloomyquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:50:09  * s00pcanjoined
21:51:31  * b44joined
21:51:42  * platonicjoined
21:52:17  * tkore2quit (Ping timeout: 258 seconds)
21:52:54  * carifjoined
21:53:49  * Sharaaljoined
21:55:14  * gambl0r3joined
21:56:13  * platonicquit (Ping timeout: 255 seconds)
21:56:13  * Kkiroquit (Read error: Connection reset by peer)
21:58:02  * Sharaalquit (Ping timeout: 258 seconds)
21:58:03  * greggerzquit (Quit: Leaving)
21:58:19  * Akinatorjoined
22:00:43  * Kkirojoined
22:00:43  * Kkiroquit (Changing host)
22:00:43  * Kkirojoined
22:04:26  * carifquit (Ping timeout: 252 seconds)
22:05:10  * sctskwjoined
22:05:44  * hoijuiquit (Remote host closed the connection)
22:06:00  * kjartanquit (Read error: Connection reset by peer)
22:08:13  * kakashiA1joined
22:08:33  * mgolquit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:09:49  * sctskwquit (Ping timeout: 244 seconds)
22:10:54  * kjartanjoined
22:11:21  * s00pcanquit (Read error: Connection reset by peer)
22:11:42  * s00pcanjoined
22:12:55  * kakashiA1quit (Ping timeout: 244 seconds)
22:14:14  * Akinatorquit (Remote host closed the connection)
22:14:35  * Akinatorjoined
22:15:43  * r1chquit (Quit: Bye!)
22:18:13  * carifjoined
22:18:36  * s00pcanquit (Ping timeout: 244 seconds)
22:19:42  * tkore2joined
22:21:42  * userxquit (Quit: userx)
22:23:26  * laravel7joined
22:23:43  * cnsvc_joined
22:24:10  <Akinator>How should I name folders? Currently, for script files, I'm using the name of the default export, and for folders with an index.js inside them, the name of what that index.js exports.
22:24:12  <Akinator>But what about other folders which don't have an index.js?
22:24:15  <Akinator>I'm afraid camelCase/PascalCase would be very slightly confusing if there's no index.js inside, should I use something else, like dashes or underscores, in those situations?
22:24:16  <Akinator>Or if there's some style guide describing this that I might consider?
22:24:25  * tkore2quit (Ping timeout: 246 seconds)
22:26:03  * Soopamanjoined
22:26:18  * Kestrel-029quit (Ping timeout: 245 seconds)
22:26:22  * s00pcanjoined
22:26:46  * Nicmavrjoined
22:27:01  * Roughyjoined
22:27:03  * piyerquit (Remote host closed the connection)
22:27:53  * enoqjoined
22:28:27  * piyerjoined
22:29:58  * Soopamanquit (Client Quit)
22:31:52  * Nes173quit (Quit: Leaving)
22:32:46  * userxjoined
22:33:07  * piyerquit (Ping timeout: 255 seconds)
22:34:01  * carifquit (Ping timeout: 255 seconds)
22:35:58  * weijunlijoined
22:38:21  <misterhat>Akinator: i use whatever-case-this-is
22:38:23  <misterhat>forgot the name
22:38:34  <misterhat>dashes is the usual convention for filenames and directories
22:38:34  * ningujoined
22:39:05  <misterhat>you don't really distinguish between them since you'd usually have an index.js anyway
22:39:21  <misterhat>so what used to be a file can turn into a directory seamlessly if you don't put .js in the require string
22:40:52  * nnyk_quit (Ping timeout: 264 seconds)
22:42:01  * tsglovequit (Read error: Connection reset by peer)
22:42:12  * mattmcaljoined
22:42:46  * tkore2joined
22:43:20  * kakashiA1joined
22:43:23  * jlippsjoined
22:43:44  * skylite_joined
22:46:10  * skylitequit (Ping timeout: 255 seconds)
22:47:03  * carifjoined
22:47:08  * tkore2quit (Ping timeout: 245 seconds)
22:49:29  * jlippsquit (Quit: goodbye)
22:50:11  * ASEV_quit (Ping timeout: 258 seconds)
22:57:16  * deviantferojoined
22:57:35  * keith_mi_quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:57:41  <deviantfero>hey guys I have to store some signature images on my backend, I was wondering, should I save a base64 string
22:57:54  <deviantfero>or have the image uploaded somewhere like an s3 and just reference that URL somewhere in my db?
22:58:01  * carifquit (Ping timeout: 246 seconds)
22:58:07  <deviantfero>should I save a base64 string in my db
22:58:11  <deviantfero>that's what I meant
23:00:07  * cthulchuquit (Ping timeout: 255 seconds)
23:00:33  * odejoined
23:00:46  * odequit (Client Quit)
23:02:08  * trevorjoined
23:05:10  <nortonandrews>deviantfero: if you want to put them in a database, ideally you'd use a binary blob type
23:05:11  <nortonandrews>not string
23:05:22  * hyperiscoquit (Ping timeout: 246 seconds)
23:05:25  * Roughyquit (Quit: Meadow Fresh milk)
23:05:40  * goodenoughquit (Remote host closed the connection)
23:06:16  * Roughyjoined
23:07:08  * weijunliquit (Ping timeout: 245 seconds)
23:11:18  * Lucas_Grayquit (Ping timeout: 245 seconds)
23:11:23  * carifjoined
23:11:50  * tkore2joined
23:14:14  * Akinatorquit (Remote host closed the connection)
23:14:35  * Akinatorjoined
23:15:07  * userxquit (Ping timeout: 248 seconds)
23:15:34  * eb0tquit (Ping timeout: 252 seconds)
23:15:59  * userxjoined
23:16:13  * tkore2quit (Ping timeout: 246 seconds)
23:17:12  * piyerjoined
23:17:12  * piyerquit (Remote host closed the connection)
23:17:27  * piyerjoined
23:17:44  <deviantfero>do you recommend using the s3 instead?
23:18:03  <deviantfero>it's not like they're gonna be visible, or it's not like that table is frequently requested
23:18:16  <deviantfero>so that's why I thought I might save myself the halssle
23:18:19  * Forsaken87quit (Ping timeout: 248 seconds)
23:18:20  <deviantfero>hassle*
23:18:42  * mezod_quit (Remote host closed the connection)
23:19:13  * eb0tjoined
23:19:14  * gambl0r3quit (Ping timeout: 252 seconds)
23:20:54  * plutoniixjoined
23:21:13  * slajaxjoined
23:21:54  * Roughyquit (Quit: Meadow Fresh milk)
23:22:09  * versatiletechquit (Quit: versatiletech)
23:22:31  * carifquit (Ping timeout: 246 seconds)
23:22:48  <ningu>either would work
23:24:07  * devcquit (Ping timeout: 256 seconds)
23:24:17  <deviantfero>i figured, I'm dealing with a 4500 line database.js file
23:24:37  <deviantfero>where people define methods to interact with Node.js and then import those methods into GraphQL mutations
23:24:43  <deviantfero>it sucks tbh
23:24:45  * devcjoined
23:24:46  <ningu>I'd say a more relevant consideration is availability, redundancy, etc
23:24:55  <deviantfero>I mean, the file
23:24:57  <ningu>also cost I suppose
23:25:12  <deviantfero>I'll consider those points
23:25:35  <deviantfero>it's easy baccking them up along with the DB, but I don't know how much of a toll that would take on the server storage
23:25:46  <deviantfero>they shouldn't be big images
23:25:50  <deviantfero>in kb definetly
23:25:53  * Nicmavrquit (Ping timeout: 245 seconds)
23:25:55  * keith_mi_joined
23:26:41  * Nicmavrjoined
23:27:57  <nortonandrews>that's already probably orders of magnitude bigger than the other kinds of data on the db
23:28:09  * hyperiscojoined
23:28:14  <nortonandrews>but honestly I don't know what would work out better in your case
23:28:14  * ZeroWalkerquit (Quit: Leaving)
23:28:56  * jottrjoined
23:30:39  <ningu>yeah, without knowing requirements it's really hard to say
23:32:10  * keith_mi_quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
23:35:57  * carifjoined
23:37:23  * slajaxquit (Ping timeout: 258 seconds)
23:39:07  * dadinnquit (Ping timeout: 248 seconds)
23:39:09  * fatalhaltjoined
23:39:41  * marthinaljoined
23:40:43  * Kkiroquit (Read error: Connection reset by peer)
23:41:42  * Sharaaljoined
23:41:53  * carifquit (Ping timeout: 268 seconds)
23:42:34  * carifjoined
23:42:49  * jottrquit (Ping timeout: 246 seconds)
23:44:20  * hyperiscoquit (Remote host closed the connection)
23:44:21  * marthinalquit (Ping timeout: 268 seconds)
23:44:36  * hyperiscojoined
23:45:19  * Kkirojoined
23:45:25  * Kkiroquit (Changing host)
23:45:25  * Kkirojoined
23:45:58  * Sharaalquit (Ping timeout: 246 seconds)
23:46:17  * laravel7quit (Ping timeout: 256 seconds)
23:47:05  * yakizajoined
23:47:29  * piyerquit (Remote host closed the connection)
23:49:04  * Llama052quit (Quit: Connection closed for inactivity)
23:50:11  <yakiza>Hello everyone, i have a table on my postgres database with more than 100 columns(all relevant) and i want to map objects that i get from google analytics those objects might have 4-100 attributes and i want to insert them approprietly in my database my question is would i use orm ? and also ivre read about orm and i dont see the diference between inserting data by writing INSERT INTO VALUES than with the orm or perhaps i am
23:52:26  * versatiletechjoined
23:52:41  <ningu>I generally do not use ORMs anymore, instead I use query builders like knex
23:52:57  <ningu>also, for postgresql, it's better to use COPY for bulk insert rather than INSERT
23:53:14  * platonicjoined
23:54:14  * EyePulpquit (Remote host closed the connection)
23:55:29  <yakiza> ningu i see honestly i dont undestand what orm has to offer
23:55:55  <ningu>yakiza: theoretically it saves you from having to worry about sql, it generates all the queries for you
23:56:25  <ningu>although that can be problematic because it doesn't always do those queries efficiently, or let you do the ones you want
23:56:43  <yakiza>pff i see
23:56:49  * keith_mi_joined
23:56:57  <yakiza>ningu: when you say bulk insert you mean a lot of data?
23:57:06  <ningu>yes, inserting many rows
23:57:10  <ningu>into a single table
23:57:24  * platonicquit (Ping timeout: 246 seconds)
23:57:38  <yakiza> 1 insert will be 1 row would that still class as bulk?(1 row of 4-100 ) but its usually around 14 but it can be anything
23:57:44  * AlexPortablequit (Quit: Connection closed for inactivity)
23:57:55  <ningu>no, number of columns is not relevant
23:57:57  <ningu>I mean number of rows
23:58:11  <yakiza> oh then i wont do copy i have set upa writing streas as i am reading live
23:58:19  <ningu>ok
23:58:21  * gambl0rejoined
23:58:23  * EyePulpjoined
23:58:32  * piyerjoined
23:58:34  <yakiza>you think insert is alright as i have steram?
23:58:39  <yakiza> or i should use copy?
23:59:14  <ningu>I assume you want each new row to be available immediately?
23:59:34  <ningu>or do you want it all committed in one big transaction?