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

IRC log for #mojo, 2017-06-06

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

All times shown according to UTC.

Time Nick Message
00:37 bwf joined #mojo
00:39 howitdo joined #mojo
01:10 aborazmeh joined #mojo
01:12 medgar591 joined #mojo
01:19 sivoais joined #mojo
01:44 tardisx joined #mojo
01:46 zivester joined #mojo
01:47 tardisx Hi, I can't seem to make Mojo::Pg abstract ->update work with a returning clause, as shown in the documentation
01:47 tardisx It's clear the RETURNING clause is not in the generated query
01:47 tardisx Example code and output here: https://pastebin.com/i15nJFrx
02:05 Grinnz tardisx: maybe your SQL::Abstract is too old? you need 1.82 for UPDATE RETURNING
02:08 kiwiroy joined #mojo
02:15 tardisx Ha, 1.81
02:15 tardisx I foolishly assumed it was Mojo::Pg that had pulled it in, obviously I did it earlier.
02:16 tardisx That fixed it - thanks Grinnz
02:44 noganex joined #mojo
02:57 Crisewng joined #mojo
02:57 Crisewng left #mojo
03:00 Crisewng joined #mojo
03:00 Crisewng left #mojo
03:16 Grinnz https://github.com/travis-ci/travis-ci/issues/7825#issuecomment-306363590
03:29 mib_28u6iw joined #mojo
03:40 cheako joined #mojo
04:04 dboehmer joined #mojo
04:18 dr_bibble joined #mojo
04:20 dr_bibble Hello. I'm getting connections to hypnotoad refused.
04:22 dr_bibble https://pastebin.com/P9xbcz8J
04:25 Peppard joined #mojo
05:37 kiwiroy joined #mojo
05:37 inokenty-w joined #mojo
06:11 dod joined #mojo
06:16 dod joined #mojo
06:35 dod joined #mojo
06:42 AndrewIsh joined #mojo
07:02 karjala_ joined #mojo
07:13 genio joined #mojo
07:16 howitdo joined #mojo
07:16 trone joined #mojo
07:39 Pyritic joined #mojo
07:49 salv0 joined #mojo
07:57 CandyAngel left #mojo
08:17 genio joined #mojo
08:36 genio joined #mojo
08:43 prg joined #mojo
09:08 rshadow joined #mojo
09:14 nic Grinnz++  # travis all the things
09:35 coolo joined #mojo
10:28 Lee joined #mojo
10:37 mrEriksson joined #mojo
10:39 mrEriksson Hi folks! I was looking to use Mojolicious::Plugin::Mail to send emails from a minion worker, but I'm having trouble finding a way to detect errors in sending the emails. Anyone able to point me in the right direction?
10:40 pink_mist errors?
10:40 purl errors is buggy? funny or bunnies
10:40 mrEriksson Well, errors like smtp server down, send failed for some reason etc
10:40 mrEriksson You know, all the bofh-related problems
10:42 pink_mist I've no idea about that plugin, but perhaps ask in #email which is where the perl email experts reside
10:45 mrEriksson It is not an "email" related issue. It is an issue of the plugin not returning anything useful as far as I can tell. After sending the email it just returns the content as a string, which doesn't really change if send was useful or not
10:45 pink_mist I'm not saying it's an email related issue. I'm saying use something that's useful, and they'll be able to give you the best options.
10:46 mrEriksson So all the Mojo docs seems to suggest Mojolicious::Plugin::Mail as the best way to send emails, but that would not be the recommended way you say?
10:47 pink_mist what docs say that?
10:47 mrEriksson Most of first page hits on google for that topic
10:48 pink_mist so no docs at all
10:49 mrEriksson Eh
10:49 bobkare mrEriksson: from a _very_ quick glance at the documentation it seems at least some of the mime::lite modes throw exceptions if something fails
10:53 rshadow joined #mojo
10:55 mrEriksson bobkare: Thanks, was looking in to that too, but it does not seem to throw exceptions when sending via smtp. send() in MIME::Lite returns the status, but the plugin throws that away
10:57 pink_mist in other words: don't use that plugin. ask in #email for something better to use.
10:58 rshadow joined #mojo
10:58 cheako joined #mojo
11:08 tchaves joined #mojo
11:45 nic mrEriksson: You could try Mojar::Message::Smtp (tho that might have the same defficiency)
11:49 cheako joined #mojo
11:55 CandyAngel joined #mojo
11:59 CandyAngel Are there any articles explaining how a request moves through ::IOLoop to ::Controller?
12:34 gryphon joined #mojo
12:41 mib_a3v1pm joined #mojo
12:45 ksn00b joined #mojo
12:46 ksn00b I'm getting connections to hypnotoad refused.
12:46 ksn00b https://pastebin.com/P9xbcz8J
12:47 sri that's a pid, not a port
12:48 sri CandyAngel: no
12:49 ksn00b sri: ah, ok. so how to know about the port?
12:51 CandyAngel sri: Okay, thankies. I'll have another look through to code to see if I can spot a mistake in my understanding
12:51 CandyAngel through the code*
12:53 pink_mist CandyAngel: my guess (though I have not looked at any code): IOLoop -> IOLoop::Server -> HTTP::Message -> HTTP::Transaction -> Router -> Controller
12:55 pink_mist and I probably misnamed a bunch of those things
12:56 ksn00b .. the port is 8080, got it.
13:10 tchaves joined #mojo
13:11 gizmomathboy joined #mojo
13:11 maschine joined #mojo
13:12 aborazmeh joined #mojo
13:15 sri Mojo::Server::Daemon glues it all together
13:18 gryphon joined #mojo
13:18 nic CandyAngel: not as useful as reading the code, but a low-tax route is to perl debug (stepping through) while doing a simple get against a simple app
13:28 marty joined #mojo
13:42 CandyAngel nic: That's true
13:44 CandyAngel At the moment, I have a ::Client which has a ::Connection which handles all the reading/writing to the server *and* handling of the packets from the server
13:44 CandyAngel I'm looking to move the packet handling out of ::Connection :)
13:45 CandyAngel (and the reason why ::Connection exists is because ::Client has to maintain several connections to servers speaking the same protocol)
13:47 CandyAngel So my plan is to make ::Connection break the stream into packets and call emit(packet) like Mojo does emit(request)
13:52 Intern42 joined #mojo
13:53 stryx` joined #mojo
14:02 tchaves joined #mojo
14:03 jberger So I got a little carried away: https://gist.github.com/jberger/102d2deb43bf325185c954afe18d2fa0
14:03 jberger CandyAngel ^^
14:04 CandyAngel Whaaat, you didn't need to do that!
14:04 jberger :D
14:05 CandyAngel But.. thank you, that's great
14:05 * CandyAngel has a read
14:05 jberger sri: weren't you threatening to give something like that as a talk at some point?
14:06 sri jberger: yes
14:06 jberger I think that would be so cool
14:07 CandyAngel Has anyone seen that marble machine song? Marble == request, tune == response :P
14:07 CandyAngel https://www.youtube.com/watch?v=IvUU8joBb1Q
14:08 CandyAngel Obviously, the crank is ::IOLoop
14:10 jberger that's pretty awesome
14:10 jberger I don't completely grok having to finger the bass manually, but the marbles hit the strings
14:11 CandyAngel This has links to all the places in the code it happens. Carried away indeed.
14:11 CandyAngel But super informative
14:13 sri jberger: i hope you turn that gist into a blog post! :)
14:13 jberger (not only links, but commit specific links)
14:13 jberger sri: already thinking about it :-P
14:13 tchaves joined #mojo
14:17 tchaves joined #mojo
14:17 Armen good morning
14:17 purl Lies!
14:18 Armen :(
14:18 jberger TRUTH!
14:20 CandyAngel Okay, I think I've got a decent idea how to structure my client in a similar way
14:20 CandyAngel The main difference being that it won't build a transaction until it has a ServerPacket..
14:20 maschine guten morgen
14:21 maschine Armen, see you can say it without Purl shutting you down. :p
14:22 Armen maschine: but then I'd have to go full Deutschland. Never go full Deutschland.
14:22 pink_mist good morning
14:22 purl Lies!
14:22 pink_mist damnit purl
14:22 purl damnit i am a bot!!!
14:22 pink_mist yes you are
14:27 Intern42 joined #mojo
14:28 CandyAngel jberger: Thank you for taking the time to write that up
14:28 jberger np
14:28 jberger I hope it helps
14:28 CandyAngel It definitely did!
14:29 PryMar56 joined #mojo
14:29 CandyAngel I need to repay the effort by writing a decent ::Client now :P
14:29 aborazmeh joined #mojo
14:30 jberger the lesson really is that control flow all passes around via events
14:30 gryphon joined #mojo
14:30 jberger (and hooks are really just events, but structured slightly differently)
14:45 CandyAngel Maybe I can finally make something worthy of the Mojolicious Hall of Fame!
14:49 dod joined #mojo
14:50 Armen there's a Hall of Fame?
14:51 mcsnolte joined #mojo
14:52 CandyAngel https://github.com/kraih/mojo/wiki/Projects-and-Companies-using-Mojolicious
14:54 Armen this is it, the exclusive club I should aspire to become a member of
14:54 * Armen has work to do!
14:54 CandyAngel Exactly!
14:55 Armen I'm still working on porting my paste site to mojolicious, it will be glorious
14:55 Armen maybe :P
14:55 CandyAngel You can do it!
14:56 Armen given time, no doubt
14:56 Armen but who has any of that, these days!
14:56 CandyAngel Does this paste site require javascript to use?
14:56 Armen haven't really built the front-end yet... it might
14:57 Armen the current version is so heavy on javascript, you might say it's 100% javascript (back-end on nodeJS)
14:57 Armen http://www.pastebeest.com/
14:58 CandyAngel Aw
14:58 * CandyAngel is going to end up making her own at this rate
14:58 disputin joined #mojo
14:58 Armen CandyAngel: how important do you feel it is to keep it usable without js?
14:58 CandyAngel 100%
14:58 purl 1
14:59 CandyAngel I can't think of any pastebin functionality that should *require* it. Use it to enhance? Sure.
14:59 Armen ok. I will keep that in mind when putting together the front-end
14:59 rshadow joined #mojo
15:00 jberger oh we'll have one more thing to add eventually
15:00 CandyAngel But it's a html form and some text on a web page with a link to the raw content. If you need javascript to do that, you're doing it wrong :|
15:00 Armen well, the very convenient codemirror module that allows you to edit syntax-highlighted code is very heavy on js
15:00 zivester joined #mojo
15:00 jberger http://blogs.perl.org/users/kenichi_ishigaki/2017/05/perl-toolchain-summit-2017-and-pause-on-mojolicious-in-progress.html
15:00 jberger I hope everyone saw that
15:00 Armen im not sure if I'll use codemirror for the next iteration though
15:01 CandyAngel I use codepad normally, but it is broken
15:01 Armen darn, I'm late for a meeting
15:01 Armen brb
15:02 jberger the read part of a paste site should certainly be usable with js IMO, at least in the raw form but better in the web form too
15:02 jberger if there is an edit facility then js is expected certainly
15:03 CandyAngel I don't expect it. If I click "edit", I expect it to give me a textara with the raw content so I can edit and resubmit it. None of that *needs* JS
15:03 pink_mist I completely agree
15:04 CandyAngel If the client has it enabled and it wants to delete the basic form and replace it with a fancy syntax highlighting one, that's fine
15:04 CandyAngel But a pastebin site should works in like.. links2 :P
15:06 CandyAngel For things that could only work with JS, it's fine. But people do things like using javascript for providing links, rather than using <a>
15:11 cheako joined #mojo
15:11 cheako joined #mojo
15:29 maschine jberger, that looks like a really good example of a mojolicious application - thanks.
15:30 maschine I really need to move all my helpers to a plugin, I saw how to do it in the documentation but practical examples are always helpful
15:32 Armen any other wants/needs for a paste site?
15:35 sivoais joined #mojo
15:38 CandyAngel A patch for wgetpaste to add support? :)
15:40 Armen hmm I had a cli tool with the old version, maybe I should write a new one in perl
15:42 CandyAngel inb4 you port wgetpaste to Mojolicious
15:43 Armen more like a wrapper around a curl call, really :P
15:47 jnbek joined #mojo
15:52 CandyAngel With the things I use Mojolicious/git-annex/$software for, I'm not judging if you use Mojolicious as a wrapper around a curl call
15:52 CandyAngel Whatever ACKs your SYNs
15:54 jberger so fyi, batman already wrote a paste site using mojo, not saying there can't be more than one
15:54 jberger also
15:54 jberger I wrote a nopaste command for mojo (that I use regularly)
15:54 CandyAngel ^_^
15:55 jberger https://metacpan.org/pod/Mojolicious::Command::nopaste
15:55 jberger which can accept additional services just by installing external dists or I'd consider adding them to the main dist via a PR
15:56 * CandyAngel makes a note to check it out
15:56 jberger here is batman's paste site: https://metacpan.org/pod/App::mojopaste
16:02 sivoais joined #mojo
16:13 karjala_ joined #mojo
16:20 Grinnz the one thing i've seen that does require JS on a paste site is password protected pastes, so you dont have to pass the password in the URLs
16:20 Grinnz but i havent needed such a thing, so
16:25 jberger Basic auth should work for that though, no?
16:26 pink_mist I think the point is not even the server should be able to decrypt the paste
16:27 jberger encrypted != password protected
16:27 Grinnz ugh, basic auth
16:27 Grinnz jberger: then you still have to put the password in the url to link it
16:28 Grinnz well i guess you dont
16:29 CandyAngel That's an acceptable use of JS.. you *can't* do it another way, so it's fine
16:30 jberger no more than you have to give someone a password for the js version
16:30 CandyAngel (I mean, client-side decrypt)
16:30 disputin joined #mojo
16:30 CandyAngel Maybe that should be added to HTML specification.. encrypted textareas :P
16:30 itaipu joined #mojo
16:31 Grinnz pls no
16:31 CandyAngel You know you're on a winner when the first reaction is "pls no"
16:31 CandyAngel :P
16:31 _Janos joined #mojo
16:34 sh14 joined #mojo
16:35 stephan48 i saw a paste software which allowed encryption
16:35 stephan48 when you had js enabled it allowed you to decrypt it on the page if not it showed you wget/curl+openssl instructions for decryption
16:35 stephan48 thats something i can support. sadly i don't remember where i saw that
16:36 CandyAngel Oh, that's really nice
16:37 stephan48 yea, it allows you the flexibility of both worlds.
16:38 stephan48 i think it showed both ways too so you could easily prepare a encrypted paste yourself via wget/curl
16:38 maschine struggling with Mojo::PG::Migrations - https://gist.github.com/bimmerlabs/c86c15aec76b2efca6f5ca9109dc850d
16:38 maschine I don't fully understand what it's doing, which is why I'm sure I'm having trouble. :p
16:39 maschine it works the first time (creates the table), but as long as the "name" is the same, it won't work again
16:39 Grinnz that's what it's supposed to do
16:39 maschine and I don't know what -- 1 up and -- 1 down mean (database version?)
16:40 Grinnz you don't apply it once, you apply the migrations every time in app startup
16:40 stephan48 that are the db versions
16:40 Grinnz it decides which need to be applied
16:40 stephan48 they are saves in a table called schema_version or something the like
16:40 stephan48 i don't remember the tablename atm
16:40 maschine right, but I want to use it to modify tables etc.
16:40 maschine mojo_migrations
16:40 Grinnz so create a new version, with the modifications you want
16:40 stephan48 you would create a new version set consisting of "-- 2 up / -- 2 down"
16:41 stephan48 and underneeth them the respectable changes
16:41 maschine ok, so I would increment the "version" every time I modify something?
16:41 stephan48 jup
16:41 maschine that's what I didn't understand.  thanks :)
16:41 maschine the rest looks easy..
16:41 Grinnz the existing versions should always stay as they are
16:41 stephan48 and based on the migrations table and your schema it would then automatically migrate to the latest version
16:42 stephan48 yes
16:42 Grinnz the database will know it's at version 1, and thus the version 1 changes should already be in effect
16:43 maschine so what's the difference between auto_migrate(1)-> and doing it at the end?
16:43 stephan48 (that also means that new databases will go throu all schema mutations)
16:43 Grinnz auto_migrate happens when you first make a connection to the database
16:43 stephan48 you would not need to call migrate
16:43 maschine ok so I wouldn't do that when modifying a table on the fly only at startup correct?
16:44 Grinnz modifying tables on the fly is probably not a good idea
16:44 stephan48 when you use migrations you should make sure that you use it for any change to the table. be it schema or data migrations
16:45 Grinnz changing database schema is essentially changing the API your app is using to communicate with the db
16:45 stephan48 otherwhise you get "interesting" results when you ever decide to init another database with migrations
16:45 stephan48 ^
16:46 sri auto_migrate is just convenience, for modules like Minion::Backend::Pg
16:48 maschine so something like this https://gist.github.com/bimmerlabs/dcf86bfa57a7dd25858539ceaacd81d3
16:48 Grinnz the 2 down would be undoing those changes
16:48 maschine I wouldn't want to do "on the fly"?
16:48 maschine ok so I don't need that?
16:49 Grinnz no, because your other code may be depending on what columns the table has
16:49 sri you also wouldn't split up the migrations
16:49 sri you're making it all way too complicated
16:49 Grinnz the migrations just go in one string, and you set it once in startup
16:49 maschine right, I was just thinking I could use it in a different way
16:50 Grinnz thats not really what migrations are for
16:50 sri Minion has a lot of migrations https://github.com/kraih/minion/blob/master/lib/Minion/Backend/Pg.pm#L783
16:51 maschine in my mind I was thinking about an admin front end for postgres
16:51 Grinnz you wouldn't use migrations for that, just run queries
16:51 Grinnz the purpose of migrations is to automate keeping your schema in a specific format
16:53 maschine I think I got that impression because the only examples I saw of say, creating a table, used migrations (such as the minion example a while back)
16:54 Grinnz yes, normally webapps don't have any use of dynamically changing schema, so migrations is the only thing needed
16:56 maschine yeah, I have specific reasons to be doing that
16:57 maschine I'd almost have enough code for what I'm doing to split it off into some sort of 'mojopgadmin' app
16:59 maschine one of the final straws for ditching mongodb was the fact that you couldn't tell if a table existed before you created it without some complicated queries (among many other reasons)
17:21 CandyAngel Hm, the packet handler in my client needs to know which type of server connection it came from. Any advice on the neatest way of doing this (for 2 types of server)?
17:22 CandyAngel Like.. attribute of the packet.. is_type1.. isa on the connection object maybe?
17:23 sh14 joined #mojo
17:24 kaare joined #mojo
17:25 sri there is precedent in Mojolicious
17:26 sri http://mojolicious.org/perldoc/Mojo/Asset/File#is_file
17:26 sri http://mojolicious.org/perldoc/Mojo/Asset#is_file
17:26 sri http://mojolicious.org/perldoc/Mojo/Content/MultiPart#is_multipart
17:26 CandyAngel Okie
17:26 Grinnz also, if you're using roles, it's a common pattern for a role to require something like 'is_file' and then different consumers defining that sub to return 1 or 0
17:27 sri http://mojolicious.org/perldoc/Mojo/Content#is_multipart
17:27 CandyAngel On the flipside, is_debug, is_info, is_warn, is_error and is_fatal all got removed. I guess that is because there was N types, rather than just 2?
17:27 Grinnz those aren't properties of the object, but checks on a specific attribute of the object
17:27 Grinnz bit different
17:28 CandyAngel Now I get to decide if I want to do is_type1 or is_type2 :D
17:30 sri very different use case
17:31 sri ->is_level('debug') turned out to be much more versatile
17:31 * CandyAngel nods
17:32 CandyAngel So I could do is_type('type1'), but it's pretty pointless with the 2 types
17:33 Grinnz you could always have both
17:33 CandyAngel Very true
17:35 CandyAngel How it is, there is are 2 servers and the session init packet you send to them is slightly different
17:39 CandyAngel "there is are".. I swear I can English :|
17:41 stephan48 sounds like gameservers. basically every kind of gameserver engine has the same remote management protocol. but in different games using the same engine you have subtle changes in this protocol causing incompatibilities or headaches
17:43 CandyAngel Yeah, kind of
17:44 CandyAngel It's not an incompatibility in this case, the servers have different roles
17:45 CandyAngel Like one is an lobby server and the other is a match server :)
17:45 stephan48 ah right
17:47 stephan48 you could believe the same developer company would use the same sort of base protocol for both then
17:47 Intern42 joined #mojo
17:49 stephan48 for what kind of project do you implement this if i may ask?
17:53 disputin joined #mojo
18:05 rshadow joined #mojo
18:08 CandyAngel It's some old chat software
18:08 CandyAngel the official client is really dated and can be a pain to get running
18:08 CandyAngel So these modules will allow for other clients to be made :)
18:08 stephan48 ah
18:09 stephan48 sounds fun. is the protocol documented?
18:10 CandyAngel Nope
18:10 CandyAngel it's pretty simple, seeing as it is like.. 15 years old?
18:16 howitdo joined #mojo
18:18 arcanez sadly, you could be talking about AIM or iCQ
18:19 cheako joined #mojo
18:19 pink_mist nah, ICQ is much much older than 15 years
18:20 pink_mist no idea about AIM
18:24 CandyAngel Hm, I could make this really close to how Mojolicious works if I make the equivalent of $tx->server_read return the "unused" bytes to put into the next $tx
18:29 itaipu joined #mojo
18:34 Pyritic joined #mojo
18:35 CandyAngel Oh, Mojolicious already does it
18:37 dod joined #mojo
18:42 Armen jberger: it's not a competition, I'm using the paste site as a vehicle to learn more about perl/mojolicious (and the nodejs version really needs to die anyway)
18:43 jberger Armen: yeah, I think I said something to that effect
18:43 dod joined #mojo
18:43 Armen about murdering nodejs? probably ;)
18:45 jberger hahaha, I meant about still going your own way if you want, but that too
18:48 dod1 joined #mojo
18:53 tyldis Hmm.. Writing tests is actually fun. And I learn far more about the Mojo way in the process than just hacking away on code.
19:14 cheako joined #mojo
19:27 CandyAngel Quickly, capture and clone tyldis
19:29 Armen Good idea, I could use a tyldis to keep up with writing tests for me
20:06 kamyl_ joined #mojo
20:06 rshadow joined #mojo
20:08 coolo joined #mojo
20:10 hobopancake joined #mojo
20:15 disputin joined #mojo
20:16 cheako joined #mojo
20:20 jberger tyldis++
20:23 _Janos joined #mojo
20:32 foursixnine joined #mojo
20:41 * CandyAngel is a little too lazy
20:54 cheako joined #mojo
21:00 jberger it is really hard to stay motivated to write tests, and I'm not as good as everyone at doing so, but man when you catch one of "those" because of tests ... it is just really worth it
21:02 jhawley031 joined #mojo
21:11 Grinnz aye
21:12 Grinnz my favorite is when i havent written a test for something yet, but an unrelated test catches a bug in it
21:27 jhawley031 joined #mojo
21:34 tyldis My problem today was writing test for a IOLoop::client. Being dependant on a server for testing, but it turned out to be trivial to write a test with an IOLoop::server that mocks the device I'm talking to.
21:35 Grinnz Test::TCP is super hacky but sometimes helpful when you need to run both a client and server for tests
21:35 Grinnz for mojo apps, you usually don't because you can use Test::Mojo
21:35 tyldis I often find myself looking at batman's Mojo::IRC as I'm working a lot with binary protocols rather than HTTP
21:37 tyldis Grinnz: Thanks for Test::TCP, looks like something that can come it handy
21:37 Grinnz I've used it for some dist, don't remember which
21:40 Grinnz oh yeah, author tests in WWW::OAuthhttps://metacpan.org/source/DBOOK/WWW-OAuth-0.006/xt/author/request_ua.t
21:41 Grinnz https://metacpan.org/source/DBOOK/WWW-OAuth-0.006/xt/author/request_ua.t event
21:42 Grinnz since it's testing useragents other than just mojo's, i need an actual local server to request from
21:43 tyldis Ah, gotcha
21:44 tyldis I find the trickery you need to do in tests very informative of how Mojo works
21:45 tyldis And helps a lot when I'm writing custom "drivers" for obscure hardware
21:48 tyldis Only one problem I haven't been able to solve, and that is a device that thinks 1 IP packet == 1 JSON payload. I cannot find any way to force Linux to flush each write to the socket as a seperate IP packet. Unless i do a microscopic sleep (which I really don't want to in Mojo) it will concatinate multiple small JSON strings into one pakcet.
21:49 tyldis Nagles is disabled, I tried using tcp corking...
22:15 kiwiroy joined #mojo
22:16 _Janos joined #mojo
22:45 jberger tyldis: wow that sucks
22:45 purl The rock is now off.
22:46 jberger wtf purl
22:46 purl I am a (modified) flooterbuck infobot, and my owner is perigrin.  Download source at http://flooterbuck.sourceforge.net/ or edenc's bitch or espertinho or bugado or stupid. or the mongodb of irc bots or Nuclear Biological Chemical or a big metal dummy. or he mongodb of irc bots or a big fat liar or my favorite robot or delightful today or a nasty woman
22:46 arcanez purl: literal that sucks
22:46 purl arcanez: that sucks =is= <reply>The rock is now off.
22:46 Grinnz must be a reference there somewhere...
22:47 arcanez it's been there as long as I can remember (going on 8 years?)
22:51 jberger hysterical raisins
22:51 purl hysterical raisins are hysterical
22:51 * jberger pats purl
22:51 * purl stabs
22:51 * pink_mist stabs purl
22:51 * purl falls on pink_mist.
22:51 pink_mist purl: don't bleed on me!
22:51 purl pink_mist: i'm not following you...
22:52 pink_mist as if I'll believe that, you stalker
23:02 stryx` joined #mojo
23:04 p1n34ppl3 joined #mojo
23:06 p1n34ppl3 Hello. I am using the second snippet from http://mojolicious.org/perldoc/Mojolicious/Guides/Cookbook#Non-blocking and I don't know how I could fetch two websites sequentially (they depend on each other) within the $ua->get($url => sub {}); Could you tell me what I could do?
23:06 p1n34ppl3 Without making the entire $fetch blocking.
23:10 p1n34ppl3 Basically to run more instances of $fetch = sub {}; in parallel... right now I put $tx = $ua->get($foo); inside the $ua->get($url => sub { HERE });, but it blocks the entire $fetch and doesn't run multiple instances of them in parallel
23:36 kiwiroy joined #mojo
23:48 itaipu joined #mojo
23:54 disputin joined #mojo

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