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

IRC log for #mojo, 2015-03-30

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

All times shown according to UTC.

Time Nick Message
00:06 woz joined #mojo
00:18 sri oh no
00:18 sri ibm killed another perl company
00:18 sri blekko is now part of ibm watson Oo
00:18 jberger ?
00:19 sri http://blekko.com/
00:23 jberger oh yapc na schedule is up
00:23 jberger I'm on Monday
00:23 Zoffix joined #mojo
00:41 asarch joined #mojo
01:18 kaare joined #mojo
01:58 klapperl_ joined #mojo
02:20 noganex joined #mojo
02:27 melo joined #mojo
02:44 hshong joined #mojo
03:05 basic6 joined #mojo
03:22 davido_ joined #mojo
03:34 _dave_ argh china leave github alone :(
03:41 hshong joined #mojo
03:43 woz joined #mojo
04:18 jwang joined #mojo
04:37 howitdo joined #mojo
04:39 hshong joined #mojo
05:21 inokenty-w joined #mojo
05:30 vmbrasseur joined #mojo
05:36 vmbrasseur joined #mojo
05:54 dod joined #mojo
05:59 dod joined #mojo
06:16 Dandre joined #mojo
06:18 Lee joined #mojo
06:38 reneeb joined #mojo
06:57 woz joined #mojo
06:57 woz joined #mojo
06:57 McA joined #mojo
07:04 AndrewIsh joined #mojo
07:08 eseyman joined #mojo
07:14 trone joined #mojo
07:34 batman Zoffix: ah. that might be an issue... too bad github is so unstable :/
07:35 * Zoffix nods
07:39 * batman has two new releases waiting for github
07:52 odc joined #mojo
08:12 frederico joined #mojo
08:16 Vandal joined #mojo
08:25 jkramer left #mojo
08:37 juikuen joined #mojo
09:01 Zoffix So does "hot deployment" allow for updating the app itself?
09:02 Zoffix I re-ran hypnotoad MyApp.pl and it told me "Starting hot deployment for Hypnotoad server 28499.", but the content did not update (looking through the browser)
09:05 Lee Zoffix: did the log also say that hot deployment was successful?
09:05 Zoffix I've no idea where the log is
09:05 Lee defaults to your app dir/log/production.log
09:06 Lee if the log/ dir doesn't exist it will go to stdout (IIRC)
09:07 Zoffix Log dir isn't there and I did not see anything on stdout
09:07 Zoffix But the point is moot; I killed running hypnotoad and restarted from scratch
09:07 Zoffix And now if I modify the app and do the hot deployment it works.
09:08 Zoffix oh well
09:08 * Lee would suggest creating the log dir
09:08 jwang joined #mojo
09:12 arthas joined #mojo
09:15 meshl joined #mojo
09:46 batman Zoffix: that is exactly what hot deployment is: it reads in the new source code and starts over again, but without killing the previous process until a) all requests have been handled b) a timeout
09:47 batman Zoffix: http://mojolicio.us/perldoc/Mojo/Server/Hypnotoad#USR2
09:48 Zoffix Yeah, it's working now.
09:48 batman Zoffix: about the sass issue... could it be because you have a deep nested dependency tree of sass files? i just ran into an issue regarding that now
09:48 batman i've changed assetpack to check md5 sum recursively now (but won't make a release until github is up and running)
09:48 Zoffix I think the issue was due to my having local::lib together with perlbrew on the original hypnotoad and then fixing that issue and trying to hot deploy.
09:49 Zoffix I don't know what "a deep nested dependency tree of sass files" is.
09:49 batman aha. that makes sense. a change in the environment outside the process won't have any effect on the hot reloaded process.
09:49 Zoffix I've submitted two Issues BTW
09:49 batman example: PERL5LIB=/some/location hypnotoad app.pl # app.pl will only see PERL5LIB on the first run. not on hot deployment
09:51 arthas joined #mojo
09:52 amon joined #mojo
10:04 arthas joined #mojo
10:05 tianon joined #mojo
10:11 alnewkirk joined #mojo
10:14 riche joined #mojo
10:19 arthas joined #mojo
10:27 punter joined #mojo
10:33 tianon joined #mojo
10:56 Kripton joined #mojo
11:29 mattastrophe joined #mojo
11:45 jberger well goodbye and good riddance to my gallbladder
11:45 Zoffix 0.o
11:45 jberger I'm going in for the surgery
11:45 Zoffix Good luck
11:45 purl You'll need it.
11:45 jberger it's a simple one, but just in case I don't make it, batman gets all my modules
11:45 marcusr don't die, jberger.
11:45 jberger ;-P
11:46 marcusr will you be less of a man without your gallbladder?
11:46 batman jberger: be safe :)
11:47 Zoffix :D
11:47 jberger same man, just less gall
11:47 marcusr or more bile
11:47 jberger hmm perhaps
11:58 neilhwatson joined #mojo
11:59 GabrielVieira joined #mojo
12:10 ashimema_ joined #mojo
12:38 tianon joined #mojo
12:38 neilhwatson joined #mojo
12:39 neilhwatson joined #mojo
12:40 neilhwatson joined #mojo
12:42 batman sri: got explanation now: https://github.com/jhthorsen/mojo-mysql/pull/14
12:57 sivoais jberger: ever heard of TodoMVC? pdurbin over in #sourcefu is making one for backends and maybe you could make a Mojolicious example :-P <https://github.com/pdurbin/addressbookmvc/issues/1>
13:04 zivester joined #mojo
13:10 hshong joined #mojo
13:16 meshl joined #mojo
13:16 frederico joined #mojo
13:37 gryphon joined #mojo
13:49 frederico joined #mojo
13:55 fhelmber_ joined #mojo
14:11 jb360 joined #mojo
14:20 tianon joined #mojo
14:42 asarch joined #mojo
14:49 vmbrasseur joined #mojo
14:53 sri jberger: good luck!
14:53 purl You'll need it.
14:53 * sri kicks purl
14:53 purl NEWSFLASH: LAMER ATTACKS INFOBOT. FILM AT 11
14:54 riche today's @mojoconf tweets available for RT thanks!
14:55 sri hmm, i don't know what Mojo::Pg::PubSub is supposed to do on fork
14:55 sri i guess fresh start without any subscriptions might be sensible
14:56 zackiv31 joined #mojo
15:03 * sivoais just read the backlog... /o\
15:03 sivoais good luck jberger! :-)
15:12 batman sri: did you read the update on github?
15:15 tianon joined #mojo
15:16 fhelmber_ joined #mojo
15:27 cfedde Is there a way to increase the number of workers available to hypnotoad?
15:27 Grinnz_ https://metacpan.org/pod/Mojo::Server::Hypnotoad#workers
15:27 Grinnz_ (config)
15:27 cfedde thanks
15:49 sri looks like Mojo::Pg will depend on the private Mojo::Util::_global_destruction :(
15:49 Zoffix Make it public \o/
15:49 Grinnz_ could make it public :P
15:49 Grinnz_ hah
15:50 sri not as long as it doesn't have tests
15:50 Grinnz_ testing global destruction... right
15:50 cfedde in five, four, three
15:52 cfedde I'm getting a number of messages like: [Mon Mar 30 09:52:19 2015] [error] Worker 20720 has no heartbeat,
15:52 sri guess i can also just copypasta the idiom
15:53 cfedde does that mean I have some synch call that is blocking?
15:53 Grinnz_ https://metacpan.org/pod/Mojolicious::Guides::FAQ#What-does-Worker-31842-has-no-heartbeat-restarting-mean
15:53 Grinnz_ generally yes, something is blocking longer than the heartbeat timeout (defaults to 20s)
15:53 Grinnz_ even an async call that blocks that long could cause it
15:54 Grinnz_ (i.e. callback)
16:03 Quai joined #mojo
16:21 meshl joined #mojo
16:25 sri no clue if this is the correct behavior :S https://github.com/kraih/mojo-pg/commit/0d2333d3ef29c60e67ddaa77f73fa203b49d7de5
16:25 Grinnz_ i think it depends on what people expect that are forking
16:26 sri most common case will be hypnotoad/prefork
16:26 Grinnz_ regardless you need a new connection after a fork, right?
16:26 sri you subscribe to something in the manager process without thinking about what you're doing
16:27 Grinnz_ hmm
16:27 sri yes, you can't reuse a database handle in a forked process, ever
16:27 sri it's undefined behavior in DBI
16:27 Grinnz_ right
16:27 Grinnz_ yeah i would say just deleting existing connections and having the user resub if needed is sufficient
16:29 sri that's not what the commit does
16:29 dod joined #mojo
16:29 sri it resubscribes automatically
16:29 Grinnz_ huh? i don't see that
16:30 sri https://github.com/kraih/mojo-pg/commit/0d2333d3ef29c60e67ddaa77f73fa203b49d7de5#diff-a25d8eb7790fe7ef925d28b12419174dL45
16:30 Grinnz_ oh, it already did that when getting disconnected
16:31 Grinnz_ makes sense then
16:32 Zoffix isn't return $self->{db} if $self->{db}; pointless there?
16:32 Grinnz_ i guess it could be surprising in certain forks too.. dunno, would have to wait for a use case
16:32 Grinnz_ Zoffix: leaves the sub if the db exists
16:32 Zoffix but it gets deleted on the above that
16:32 Grinnz_ only in certain cases
16:32 Grinnz_ (particularly: if the process has forked)
16:32 Zoffix bah
16:33 Zoffix I totally ignored that unless :)
16:33 Grinnz_ its a syntax to get used to, but i've been using it more lately, i blame sri :P
16:34 Zoffix Funny thing, I use that syntax all the time...  :)
16:34 Zoffix (I'm just eating ATM :))
16:41 sri eating ATM? http://www.sprinkles.com/v3_images/splash-small/stores/atlanta/cupcake-atm.jpg
16:42 sri we need some of those around here
16:44 sh4 joined #mojo
16:45 Zoffix :D
16:48 Oleg joined #mojo
16:48 neilhwatson Want
17:33 bramirez joined #mojo
17:36 trone joined #mojo
17:53 berov joined #mojo
18:10 sri hmm
18:10 sri actually i guess the fork problem is much bigger
18:12 sri the event loops in both processes will be watching the same socket, and both might try to get notifications at the same time if the socket becomes readable
18:12 sri hmm
18:13 sri it may not crash, but only one process will get the notification
18:14 sri perhaps a $pg->pubsub->reconnect is necessary
18:14 sri so users can manually reconnect after forking
18:31 Grinnz_ right, the problem arises when the event loop is run in the child after forking (as always)
18:32 sri and most people run Mojo::IOLoop->reset before doing so
18:32 sri hmm
18:33 riche sri: may need to implement semaphores
18:37 disputin joined #mojo
18:40 sri might be best to reset all subscriptions after fork
18:41 sri it's a bit tricky, minion does call Mojo::IOLoop->reset, but hypnotoad/prefork do not
18:43 sri i guess no matter what... app->pg->pubsub->listen(foo => sub {...}) will not work correctly
18:43 sri (if you fork)
18:45 sri killing all existing subscriptions would make it a little more predictable i guess
18:46 sri otherwise it's just random who gets subscriptions, until one of the methods gets called
18:48 Grinnz_ yeah, definitely want to avoid splitting notifications
18:54 frederico joined #mojo
19:07 disputin joined #mojo
19:08 tianon joined #mojo
19:31 tianon joined #mojo
19:39 jberger batman: you're not going to get my modules that easily
19:39 jberger ;-P
19:40 jberger thanks everyone for all the well wishing
19:41 jberger now let's just hope that this fixes the stomach problems I've been having
19:42 Grinnz_ he lives!
19:43 jberger \o/ # but slowly
19:45 sri \o/
19:46 dotandimet joined #mojo
19:51 bwf joined #mojo
19:54 sri guess i'll reset everything after fork https://github.com/kraih/mojo-pg/commit/87d1bec2d35275b1fe1a5745f3cec6a0da0c2c92
19:56 sri hahahaha... ddos on github visualized http://i.imgur.com/xvrWZdK.gif
19:57 Grinnz_ if only it handled it that well the whole time :P
20:04 tianon joined #mojo
20:14 melo joined #mojo
20:23 sri not the worst perl sticker http://www.unixstickers.com/stickers/coding_stickers
20:24 Grinnz_ heh... i was like "what perl sticker?" but its at the top
20:24 Grinnz_ perl5 needs rebranding badly...
20:28 melo joined #mojo
20:28 meshl joined #mojo
20:33 jberger you think that's not the worst sticker?
20:33 jberger what would be?
20:34 sri http://act.yapc.eu/czpw2014/images/camelia-logo.png
20:34 jberger good point
20:34 purl nice and sharp
20:35 marcusr sri: Nice, I think I will buy one of those perl stickers.
20:36 marcusr maybe combine it with the localhost one.
20:37 jberger I kinda like the localhost one, I just wish that the perl one didn't look quite so much like it
20:39 punter joined #mojo
20:43 odin22 joined #mojo
20:47 marcusr I just ordered 12$ worth of stickers
20:53 Onigiri You're a nut
21:16 Grinnz_ lol
21:27 melo joined #mojo
21:29 mattastrophe joined #mojo
21:32 juikuen joined #mojo
21:35 * Grinnz_ needs a Mojo::Email with non-blocking SMTP
21:35 Grinnz_ there's AnyEvent::SMTP but... eugh
21:36 sri or minion jobs
21:36 Grinnz_ it's already kind of that... i could just run it in a forked process, but i shouldn't have to :P
21:36 sri unless you actually want a server
21:37 Grinnz_ no, client
21:39 Grinnz_ i guess if it's going to use sendmail, it's going to have to fork either way
21:39 Grinnz_ AnyEvent::SMTP does SMTP directly which... isn't useful
21:41 Zoffix I want Mojo::Email too
21:41 BinGOs and seems to consistently misspell "asynchronous"
21:41 Grinnz_ hah
21:43 Grinnz_ yeah.. looks like forked process try_sendmail is gonna be the way to go
21:43 mattastrophe joined #mojo
21:44 jberger use fork call if you need to wait to send before rendering a page
21:44 jberger use minion otherwise
21:44 Grinnz_ jberger: it's actually in a POE daemon, separate from the mojo app
21:45 Grinnz_ because of this :P
21:45 * jberger slaps Grinnz_ with a fish
21:45 ribasushi jberger: how were the drugs?
21:45 Grinnz_ hey, if minion was around back when i made these daemons, and if mojo had a Wheel::Run...
21:46 jberger what's the difference between fork call and wheel
21:46 jberger ?
21:46 Grinnz_ callbacks on stdout/stderr lines
21:46 jberger I really have never used poe
21:46 Grinnz_ we've been over this :P
21:46 jberger I'm a little high right now
21:47 Grinnz_ haha
21:47 ribasushi sri: wrt camelia - you could buy her 3d-printed (in similar quality as shown in https://www.flickr.com/photos/jessrobinson/15699186611/) for EUR20 :)
21:48 jberger if we weren't on a publicly logged channel I'd be offering to sell off my good meds ;-P
21:48 Grinnz_ <_<
21:48 Grinnz_ ribasushi: those appear to be onions
21:48 Grinnz_ oh, similar quality
21:48 Grinnz_ heh
21:48 ribasushi jberger: if we weren't on a publicly logged channel I'd be showing interest ;)
21:49 Grinnz_ ribasushi: somehow i don't think that logo would show up as well...
21:49 ribasushi Grinnz_: there: https://www.flickr.com/photos/80928012@N00/16169797916
21:49 jberger I did steal the kill logic from wheel, much more sane than ae util
21:49 Grinnz_ oh god its like a sticker for a VW beetle
21:50 Grinnz_ one of those lime green ones
21:50 jberger eeeeeep
21:50 Grinnz_ with the eyelashes
21:51 BinGOs need a '::1' sticker for proper dual-stack
21:52 Grinnz_ hahah
21:52 jberger no one would recognize an ipv6 address
21:53 * jberger weeps
21:53 Grinnz_ rip my ipv6 tunnel... i connected to like 3 irc networks with it, then eventually stopped it becuase i couldnt connect to "localhost" on ipv6
21:54 Grinnz_ which Mojo::IOLoop::Client insisted on doing :P
21:55 Grinnz_ (not the localhost thing, but the ipv6 thing)
21:55 BinGOs I spent an hour today proving an application didn't work with ipv6 and then the vendor confessed that the version we have indeed doesn't support it.
21:57 * Grinnz_ wonders how many more years it will be before "ipv6 day" is actually when everything uses ipv6
21:58 * Zoffix wonders what happened to the whole "ZOMFG we're running out of IPv4 addresses!"
21:58 ribasushi define everything?
21:58 Zoffix CIRD?
21:58 Zoffix *CIDR
21:58 BinGOs ipv4 address space is exhausted.
21:58 ribasushi Grinnz_: if you mean everything in the sense of "gofer" and "fidonet" - then 40 years *at the absolute minimum*
21:58 Grinnz_ heh
21:59 BinGOs its all allocated to RIRs
21:59 Grinnz_ "enough things where using ipv4 will be considered the outlier"
21:59 Grinnz_ i dont think my ISP does ipv6 yet
22:01 BinGOs Zoffix: http://en.wikipedia.org/wiki/IPv4_address_exhaustion
22:02 Grinnz_ there seems to be no comment from optimum (my ISP) on ipv6
22:02 Grinnz_ oh, here's a comment
22:02 Grinnz_ on facebook ~_~
22:02 Zoffix But how come I've got an IPv4 address then?
22:02 Zoffix If it's all exhausted
22:02 Grinnz_ the ISPs have enough to serve their needs already
22:02 Zoffix hm
22:03 Grinnz_ by exhausted, it means there's no address you can just go and claim, they're all owned by someone
22:03 Zoffix ah
22:03 Grinnz_ well except the private ranges
22:03 Grinnz_ "At this point in time we have no publicly announced timeline for supplying native IPv6 connectivity, sorry. Apart from the normal IPv6 barriers content/compatibility, we also need to replace equipment everyone would need DOCSIS 3 modems that wasn't available until last year. We do have a /32 block allocated to us, and we do have test labs. Information will be released as soon as it becomes available." my
22:03 Grinnz_ ISP, a year ago
22:04 Grinnz_ i'm pretty sure everyone has DOCSIS 3 modems now
22:07 cfedde Grinnz_: you might be surprised.
22:08 Grinnz_ ISPs have been forcing their customers to replace their modems, though i suppose that's what i get for having the "nice" ISP
22:08 cfedde there are a lot of "it aint broke! don't fixit" customers out there.
22:08 Grinnz_ in business, perhaps
22:36 cfedde also legacy customers.
22:52 frederico joined #mojo
23:16 k-man joined #mojo
23:17 k-man hi
23:20 jberger k-man: o/
23:31 k-man hi jberger
23:33 mattastrophe joined #mojo
23:35 k-man is there a way to automatically build html tables from result sets from sql?
23:35 k-man rather than hand coding the html in a template as such
23:45 Zoffix k-man, something like HTML::Table? Surely there are a gazillion modules on CPAN for that
23:46 k-man Zoffix, ok, I'll have a look
23:46 Zoffix I see HTML::Table::FromDatabase, if you're using DBI
23:47 k-man nice thanks
23:56 good_news_everyon joined #mojo
23:56 good_news_everyon [mojo] kraih pushed 1 new commit to master: http://git.io/j1zG
23:56 good_news_everyon mojo/master b4a5e31 Sebastian Riedel: use the same idiom everywhere
23:56 good_news_everyon left #mojo

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