The web in a box - a next generation web framework for the Perl programming language

IRC log for #mojo, 2018-02-10

| Channels | #mojo index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:13 CandyAngel Always nice when your new servers aren't as loud as you thought they were going to be :)
00:17 maschine you got your own server?  *jealous* :p
00:19 CandyAngel Only at home :P
00:20 maschine haha, well, still!
00:21 CandyAngel I have 2 DQ45EK's in a 2U rackmount. Nothing special, but should be good for intended use
00:21 CandyAngel And the boards were like.. 20 GBP with CPU and 2GB of RAM..
00:21 CandyAngel (each)
00:21 maschine I just picked up four 19" LCD monitors for $5 from work.. pretty stoked about that.
00:21 CandyAngel Nice!
00:22 maschine want to build some machines for the kids - the primary cost is usually the monitor..
00:22 CandyAngel Mhm
00:23 maschine My oldest wants to learn to program.  So, err, Perl5?  :p
00:23 CandyAngel Gets my vote
00:24 maschine He has one of those Kano kid's computers - he LOVES it.
00:29 nefarious joined #mojo
00:37 CandyAngel They look pretty neat
00:52 nefarious joined #mojo
00:57 nefarious joined #mojo
01:14 ghenry joined #mojo
01:20 aborazmeh joined #mojo
01:33 nefarious joined #mojo
02:07 bpmedley joined #mojo
02:07 nefarious joined #mojo
02:22 nefarious joined #mojo
02:27 aborazmeh joined #mojo
02:35 genioweb joined #mojo
02:43 mr_pants joined #mojo
02:55 orev joined #mojo
02:57 ilbot2 joined #mojo
02:57 Topic for #mojo is now 🍩 nom nom | http://mojolicious.org | http://irclog.mojolicious.org | http://code-of-conduct.mojolicious.org
03:44 mtw_ joined #mojo
03:45 mtw_ _      ____  _____  ______   _____            _____ _____ ____    _    _  ____  _    _ _____
03:45 mtw_ | |    / __ \|  __ \|  ____| |  __ \     /\   |  __ \_   _/ __ \  | |  | |/ __ \| |  | |  __ \
03:45 mtw_ | |   | |  | | |  | | |__    | |__) |   /  \  | |  | || || |  | | | |__| | |  | | |  | | |__) |
03:45 mtw_ | |   | |  | | |  | |  __|   |  _  /   / /\ \ | |  | || || |  | | |  __  | |  | | |  | |  _  /
03:45 mtw_ | |___| |__| | |__| | |____  | | \ \  / ____ \| |__| || || |__| | | |  | | |__| | |__| | | \ \
03:45 mtw_ |______\____/|_____/|______| |_|  \_\/_/    \_\_____/_____\____/  |_|  |_|\____/ \____/|_|  \_\
03:45 mtw_ https://www.youtube.com/watch?v=JfinBRO_pVc&feature=youtu.be
03:45 mtw_ orev genioweb bpmedley ghenry Eke dikim saorge ChmEarl maschine dantti_laptop|2 Grinnz gizmomathboy skaji mrallen1 sri polettix jamesaxl Dandre bouncy dboehmer mohawk gordonfish bwf noganex Sebbe kaare Repaster Peppard ashimema mtths klapperl epiphero karjala da5id jnap Lee Zx3 Afristar
03:45 mtw_ dustinm eseyman jacoby reetp mishanti1 bobkare zach mikegrb S preaction geheimnis` CHYC dotan_convos dabudabu purl kubrat jnbek hahainternet hkclark_ pirateFinn coolo vicash sivoais cromedome Ralesk omega sjn Gedge mtj tianon cng xdg kgoess diegok suede tyldis elik ribasushi tinita abracadaniel
03:46 mtw_ pink_mist Kundun [0xAF] zen mgrimes stokachu Jonis mfontani haarg Diddi plicease Xyem CandyA mbudde michael_ vinnix_ ranguard eday_ a6502_ chansen go|dfish kivilahtio odc phillipadsmith garu mrEriksson lari_ TBSliver BinGOs stein mattp irqq__ batman saki caeles_ crab stefan salva cpan_mojo jberger
03:46 mtw_ left #mojo
03:46 orev how can anyone possibly think that advertising on irc is useful
03:50 Grinnz it's not advertisement, they're trying to get people mad at the radio show
03:58 marty joined #mojo
04:41 nefarious joined #mojo
05:02 aborazmeh joined #mojo
05:04 dboehmer_ joined #mojo
06:01 Leffe joined #mojo
06:01 Leffe Hi
06:01 Leffe More doubts
06:02 Leffe I'm using Mojo::UserAgent and I wonder if it's possible to send a file with it
06:03 nefarious joined #mojo
06:26 Leffe joined #mojo
06:52 Grinnz yes, https://metacpan.org/pod/Mojolicious::Guides::Cookbook#Large-file-upload
06:53 Grinnz https://metacpan.org/pod/Mojo::UserAgent::Transactor#tx describes the ways a file can be uploaded in multipart/form-data
06:56 tyldis jamesaxl: Let's Encrypt (topic discussed not too long prior)
07:00 nefarious joined #mojo
07:04 nefarious joined #mojo
07:07 nefarious joined #mojo
07:09 nefariou_ joined #mojo
07:13 nefarious joined #mojo
07:25 nefarious joined #mojo
07:54 nefarious joined #mojo
07:59 nefarious joined #mojo
08:01 nefariou_ joined #mojo
08:07 Leffe Thanks Grinnz!
08:26 Vandal joined #mojo
08:31 Leffe joined #mojo
08:38 nefarious joined #mojo
08:41 nefariou_ joined #mojo
08:45 nefarious joined #mojo
08:48 nefarious joined #mojo
08:51 anon joined #mojo
09:00 nefarious joined #mojo
09:09 nefariou_ joined #mojo
09:11 nefario__ joined #mojo
09:13 sh14 joined #mojo
09:18 nefarious joined #mojo
09:20 polettix_ joined #mojo
09:21 nefariou_ joined #mojo
09:25 nefarious joined #mojo
09:33 berov joined #mojo
09:38 nefarious joined #mojo
10:07 dod joined #mojo
10:11 Leffe joined #mojo
10:13 dod joined #mojo
10:16 nefarious joined #mojo
10:29 nefarious joined #mojo
10:31 nefariou_ joined #mojo
10:36 nefarious joined #mojo
10:41 Leffe joined #mojo
11:41 polettix \quit
12:39 nefarious joined #mojo
12:40 huddler joined #mojo
12:58 sri so, nginx is going into the app server business and perl is one of the first languages supported https://unit.nginx.org
12:59 genioweb joined #mojo
14:09 noganex joined #mojo
14:15 mbudde joined #mojo
14:57 polettix joined #mojo
15:17 Guest69 joined #mojo
15:30 jberger interesting, looks like psgi specific though
15:30 jberger it is nice that Perl got included in the first cut
15:37 pirateFinn_ joined #mojo
15:41 nefarious joined #mojo
15:54 karjala_ joined #mojo
16:01 jberger Grinnz https://letsencrypt.org/docs/expiration-emails/
16:30 fromv joined #mojo
16:43 Leffe joined #mojo
16:59 mishantil joined #mojo
17:01 mohawk jberger, which perl? #trolling
17:01 jberger if it is PSGI then technically it doesn't matter :-
17:01 jberger :-P
17:01 jberger (is that true?)
17:01 jberger maybe not
17:03 * jberger has his head in acme v2
17:03 jberger and watching luge
17:04 nefarious joined #mojo
17:04 mishanti1 joined #mojo
17:05 mishanti1 So, I discovered that my keyboard has a button to power off the computer. What a wretched useless thing that is.
17:06 mishanti1 Credit goes to one of my cats for bringing it to my attention.
17:10 Leffe joined #mojo
17:11 tchaves joined #mojo
17:15 jberger I like your passive-aggressive cat
17:31 mishanti1 It is good having balls of fur around, except when they induce mayhem.
18:09 ChmEarl joined #mojo
18:21 sri server timing api is interesting https://blog.chromium.org/2018/02/chrome-65-beta-css-paint-api-and.html
18:22 sri uses the new Server-Timing header to pass timing information from the server to the browser
18:22 sri Server-Timing: app;desc=Application;dur=0.000964
18:23 sri pasting "$res->headers->header('Server-Timing' => "app;desc=Application;dur=$elapsed") if $app->mode eq 'development';" into Mojolicious::Controller::rendered, where we make the debug log message with timing data
18:36 coolo for rails exists a plugin that will even show the SQL queries done for a request within the browser - very useful :)
18:36 coolo (and of course also very fragile)
18:36 sri that kind of plugin really sucks
18:37 sri the web is too dynamic for that these days
18:38 sri which is why the Server-Timing header is so good, it's integrated into chrome dev tools, and you can see it for all the individual requests required by a page
18:38 sri you can include timing data for sql queries if you like
18:38 sri it's arbitrary data
18:39 sri and chrome dev tools draw you the waterfall graph for it
18:40 coolo well, see https://github.com/dejan/rails_panel
18:40 sri ajax requests, dynamic assets, main page, every request can have its own dynamic timing data
18:41 sri that's a chrome extension though
18:41 sri but yea, that's obsolete now
18:42 sri i do wonder how we'll support it in core mojo
18:42 sri https://w3c.github.io/server-timing/
18:44 sri like, do we just include the header with the timing data we already have in development mode
18:44 trone joined #mojo
18:45 sri Server-Timing: app;desc=Mojolicious;dur=0.00000932
18:47 sri and if you want to add your own custom data $c->res->headers->append('Server-Timing' => 'sql;desc="select * from foo";dur=0.000000000123');
18:48 sri if it becomes popular a helper method might be reasonable
18:53 sri and i wonder what kind of hook Mojo::Pg would need for collecting timing data on queries
18:53 Grinnz wait development mode is already timing requests?
18:53 * Grinnz could use this
18:53 sri how else would we get the timing data in log messages
18:53 Grinnz true heh
18:54 sri https://github.com/kraih/mojo/blob/master/lib/Mojolicious/Controller.pm#L203
18:54 sri https://github.com/kraih/mojo/blob/master/lib/Mojolicious.pm#L125
18:54 sri you can't actually use it
18:54 sri it's hidden
18:55 Grinnz ah ok
18:55 Grinnz now that i think about it we need it for production mode too anyway
18:55 sri this would be a good chance to formalize a public api though
18:55 sri more reusable
18:58 sri $c->timer->start('foo'); my $seconds = $c->timer->elapsed('foo'); $c->timer->server_timing(foo => 'app', desc => 'Mojolicious');
18:58 sri now that we have helper namespaces it's fairly easy to think of something good looking
18:58 Grinnz mmm, something like that would be nice
18:59 sri ->timer->server_timing(...) would make the header, or append more values to it
19:06 sri wonder how bad new events would affect Mojo::Pg
19:06 nefarious joined #mojo
19:06 sri are there DBI hooks for collecting timing data?
19:09 Grinnz i don't know about anything general but sqlite has
19:09 Grinnz https://metacpan.org/pod/DBD::SQLite#$dbh->sqlite_profile(-$code_ref-)
19:09 Grinnz that links to https://metacpan.org/pod/DBI::Profile which is apparently core dbi
19:09 Grinnz but looks like more of a debugging tool
19:10 Grinnz ah you can set it per handle though
19:12 sri for DBD::Pg i only see https://metacpan.org/pod/DBD::Pg#Profile-(inherited)
19:14 sri that DBD::SQLite hook looks perfect for Server-Timing actually -.-
19:15 Grinnz yeah i am a big fan of all the DBD::SQLite hooks
19:28 polettix joined #mojo
19:34 mib_nkt6iq joined #mojo
20:02 ghenry joined #mojo
20:12 good_news_everyon joined #mojo
20:12 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAtOp
20:12 good_news_everyon mojo/master 1e5b53b Sebastian Riedel: add EXPERIMENTAL support for Server-Timing header
20:12 good_news_everyon left #mojo
20:12 sri it's been some time since we last added an experimental feature, seems like a good opportunity
20:19 good_news_everyon joined #mojo
20:19 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAtsy
20:19 good_news_everyon mojo/master 972cfc0 Sebastian Riedel: show some examples for how to use the profile->* helpers
20:19 good_news_everyon left #mojo
20:22 sri i have a feeling Server-Timing will get quite a bit of use in the future https://w3c.github.io/server-timing/#examples
20:23 sri they've included many use cases
20:24 sri you need chrome 65 though, which should be released in 2 weeks or so
20:28 good_news_everyon joined #mojo
20:28 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAtGu
20:28 good_news_everyon mojo/master 80bd976 Sebastian Riedel: just call it metric
20:28 good_news_everyon left #mojo
20:31 jamesaxl joined #mojo
20:34 Leffe joined #mojo
20:38 * sri wonders if profile->* or timing->* looks better
20:39 sri $c->timing->start('foo'); $c->timing->server_timing('foo');
20:39 sri $c->profile->start('foo'); $c->profile->server_timing('foo');
20:40 Grinnz profile seems more likely to conflict with future names
20:46 good_news_everyon joined #mojo
20:46 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAtnH
20:46 good_news_everyon mojo/master 99e86e7 Sebastian Riedel: rename profile->* to timing->*
20:46 good_news_everyon left #mojo
20:46 sri yea
20:51 good_news_everyon joined #mojo
20:51 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAtce
20:51 good_news_everyon mojo/master 45e46fe Sebastian Riedel: more consistent examples
20:51 good_news_everyon left #mojo
20:56 Leffe joined #mojo
20:58 ghenry joined #mojo
21:14 Leffe joined #mojo
21:24 anony joined #mojo
21:40 zivester joined #mojo
21:56 sri i wish we had another log level between debug and info
21:58 sri there are two types of built in log messages currently, debug that spam a lot of information, and info that rarely happen but contain more important information
21:59 sri what sucks is that we have no level for our users to disable all of them and just rely on their own
21:59 sri the next level up is already warn
22:00 sri maybe we need a notice level
22:02 sri or i lower all built-in messages from info to debug
22:02 sri some messages like this one have been quite useful in production too though https://github.com/kraih/mojo/blob/master/lib/Mojo/Server/Prefork.pm#L126
22:04 sri guess it's also a philosophical question
22:04 sri maybe the user should not actually take over server level logging
22:05 sri just request/connection level
22:09 karjala_ joined #mojo
22:09 nefarious joined #mojo
22:28 Leffe joined #mojo
22:57 genioweb joined #mojo
23:21 pink_mist when I thought the new feature was only for the new header I wasn't very interested in it, but then I looked at the code changes and saw that it was a whole profiling framework
23:21 pink_mist sri++
23:21 pink_mist awesome
23:23 Grinnz pink_mist: the new header showing up in chrome's network timeline is pretty interesting too i think
23:23 pink_mist not for me, I don't use chrome :P
23:23 Grinnz a visualization of not only how long each request took but how long they took on the server
23:23 sri i'm sure firefox will get it too
23:23 pink_mist I'm not going to get an updated firefox either :P
23:24 pink_mist since version 57 it became completely unusable
23:24 sri ¯\_(ツ)_/¯

| Channels | #mojo index | Today | | Search | Google Search | Plain-Text | summary