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

IRC log for #mojo, 2014-06-13

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

All times shown according to UTC.

Time Nick Message
00:05 kyshtynbai joined #mojo
00:05 basiliscos joined #mojo
00:08 russum joined #mojo
00:09 meshl joined #mojo
00:25 sri hmm, guess there is no interest in getting minion into core anymore
00:29 shmuel joined #mojo
00:29 sri wonder if there was only interest because folks misunderstood job queues
00:38 crab i'm still interested in minion, but i don't think it should be in core
00:38 crab or rather, i think it's fine as it is and won't be finer in core
00:38 kyshtynbai Guys, someone mentioned git here in the channel a couple of hours ago. How do you actually use it? I mean, you have local rep, cloned rep.git directory is uploaded to remote server and there on remote  server cloned back to normal repository? And then by git push you can write commits to remote rep?
00:39 tempura sri: There is!
00:40 tempura kyshtynbai: http://githowto.com/
00:40 tempura Shnikies
00:40 tempura http://www.usmarshals.gov/assets/2014/bitcoins/
00:40 tempura Let's have a collection
00:41 kyshtynbai tempura: tnx, looks clear enough so even I would understand).
00:43 sri crab: it was a hot topic at mojoconf, many specifically wanted minion in core with a file based backend
00:43 sri so we have a default way to deal with background tasks
01:05 laouji joined #mojo
01:20 firnsy i have filled out most of the missing parts of sri's Storable backend, just filling out the tests atm (adapted fromt he Mango backend)
01:21 sri firnsy: oh, should have said something, i've been doing a little more work on it as well :o
01:22 sri nowhere near done though
01:22 firnsy sri: well, i am not a perl native so it's highly likely most can be re-written in perl idioms
01:22 firnsy it's an exercise to improve my perl as wel
01:22 firnsy *well
01:23 firnsy i have everything "apparently" working but no tests yet, which is important
01:24 sri make a paste
01:24 firnsy roger
01:25 sri tests aren't too hard, i just figured out how to do the more complicated ones :)
01:26 sri just need a file attribute on the storable backend, then it's easy to poke into the file
01:26 sri basically the same we do for the mango backend
01:26 firnsy http://paste.fedoraproject.org/109429/22765140
01:26 firnsy go easy on me, i'm willing to learn ;)
01:27 sri that's not too bad actually
01:27 sri i can salvage a lot of that! :D
01:28 firnsy \o/
01:28 sri firnsy++
01:28 firnsy so the only think not implemented is correct sorting of stats and priorities on dequeue
01:28 hrupp joined #mojo
01:28 klapperl_ joined #mojo
01:29 firnsy sorting of stats is only based on the id atm, and would probably make sense to sort on the delay time
01:29 firnsy +instead
01:29 sri some of your code is better than my first attempt ;)
01:29 sri liek dequeue
01:29 * firnsy blushes
01:30 firnsy i found some scoping querks particularly with dequeue and list_jobs
01:30 Averna joined #mojo
01:31 firnsy when i set the local variable and then returned it seemed to make the guard go out of scope quicker (and thus write the file, and move the lock)
01:33 hrupp joined #mojo
01:34 sri you forgot a few things though, like sorting by priority and checking the task name
01:37 firnsy sri: ack, missed the task name check
01:39 hrupp joined #mojo
01:49 hrupp joined #mojo
01:51 firnsy sri: want me to wait out for some of your refactoring and updated tests?
01:53 russum left #mojo
01:53 sri firnsy: depends what you want to work on, i'm working through the tests atm making them work one by one
01:54 sri enqueue/dequeue and repair almost done now
01:55 sri tests can mostly stay the way they are, with a few small exceptions
01:56 hrupp joined #mojo
01:56 sshaw joined #mojo
01:59 sshaw render(text => get_some_text()) results in a 404 when get_some_text() returns undef
01:59 sshaw a little confusing
01:59 sri wohoo, repair working
01:59 sshaw though more so than a blank page with a 204..?
02:00 sri firnsy: you saved me a lot of time there :)
02:01 hrupp joined #mojo
02:02 sri your list_* methods are way off though ;p
02:03 sshaw but render(text => undef) doen't mean the resource can't be found
02:03 firnsy sri: lol
02:07 hrupp joined #mojo
02:10 firnsy haha, in my defence the list_* c&p shenanigans were a 3am artefact ... "workers don't have state, duh!"
02:11 sri also the @_ stuff ;)
02:12 kyshtynbai joined #mojo
02:13 sri oh, and you ignored $skip and $limit
02:13 hrupp joined #mojo
02:18 hrupp joined #mojo
02:24 hrupp joined #mojo
02:29 hrupp joined #mojo
02:32 laouji joined #mojo
02:33 btyler joined #mojo
02:35 jberger firnsy++
02:39 laouji joined #mojo
02:43 laouji joined #mojo
02:57 hrupp joined #mojo
03:04 laouji joined #mojo
03:06 laouji_ joined #mojo
03:07 hrupp joined #mojo
03:13 hrupp joined #mojo
03:22 sri and done
03:23 sri got a fully working storable backend passing all tests
03:25 sri https://gist.github.com/anonymous/316849040161875b9c5c # full implementation
03:26 sri if minion goes into core, i think that kind of backend is the only choice
03:28 * sri pokes firnsy, tempura and jberger
03:34 sri i guess throwing a gzip at it might make it a little more efficient, since disk will be the bottleneck here
03:34 kyshtynbai joined #mojo
03:44 hrupp joined #mojo
03:48 sri yea, it's very quickly worth it
03:50 sri https://gist.github.com/anonymous/1ba8b9dc95134bb6ab12 # version with gzip compression
03:50 sri with like 10 jobs it's already shrinking to 50%
03:52 sri if i made serialization pluggable it could use a different name
03:52 davido_ joined #mojo
03:53 sri it basically just dumps everything serialized into a file
03:55 sri guess a plain Minion::Backend::File would make sense
03:57 laouji joined #mojo
03:59 laouji joined #mojo
04:07 sri guess there need to be some checks so it doesn't rewrite the file for every operation, or it would be a pretty efficient ssd killer :o
04:13 firnsy the benefit of the Mango backend is that a minion worker can be setup on different machines ...
04:13 firnsy i think the File based backend can be leveraged by a lightweight mojo daemon that makes it network accessible and thus negates a shared filesystem for remote workers
04:13 * crab reads the patch
04:14 firnsy would also allow for a single controller which would become the guard of the file
04:14 sri https://gist.github.com/anonymous/8899b1f7e0b507664514 # yet another version, this one doesn't kill your ssd
04:14 firnsy i might ponder that a bit further to see if it's plausible
04:16 firnsy sri: +1 on that last patch, checking for writes will save a few ssds
04:27 kb3ien joined #mojo
04:40 sri not sure though if it will even make it into the Minion distribution
04:41 sri if Minion stays standalone it's better not to encourage this kind of backend
04:43 sri i know i'm going to use the Mango backend and it will therefore be maintained best
04:54 sri https://gist.github.com/anonymous/51149087b78e71831e75 # and the final version for today, File.pm with pluggable serializer
05:01 davido_ joined #mojo
05:53 laouji joined #mojo
06:01 irq joined #mojo
06:04 laouji joined #mojo
06:11 Eke- joined #mojo
06:16 hrupp joined #mojo
06:18 denis_boyun joined #mojo
06:27 tempura ::Storable is reasonable
06:32 * tempura is a fan of the pluggable serializer
06:32 * tempire too
06:36 jeff joined #mojo
06:36 Vandal joined #mojo
06:40 dod joined #mojo
06:45 tempire sri: Are you using mango-backed-minion for a fire and forget, or do you query mango after the fact?
07:02 eseyman joined #mojo
07:04 dexteruk joined #mojo
07:05 rawler joined #mojo
07:14 igorsutton joined #mojo
07:18 dpetrov_ joined #mojo
07:19 crab respond to ALL the posts!
07:20 mire joined #mojo
07:22 trone joined #mojo
07:33 SuperOSX joined #mojo
07:35 basiliscos joined #mojo
07:40 dexteruk_ joined #mojo
07:44 shmuel joined #mojo
07:47 mire joined #mojo
07:52 da5id joined #mojo
08:05 denis_boyun joined #mojo
08:25 fhelmber_ joined #mojo
08:51 Dandre joined #mojo
09:09 mire joined #mojo
09:33 arthas joined #mojo
09:37 laouji joined #mojo
09:43 laouji joined #mojo
09:46 cpan_mojo Mojo-Server-TCP 0.03 by Jan Henning Thorsen - http://metacpan.org/release/JHTHORSEN/Mojo-Server-TCP-0.03
09:48 marcus wow mom, someone talking about mojo at the French Perl Workshop.
09:50 cpan_mojo Mojolicious-Plugin-Logf 0.03 by Jan Henning Thorsen - http://metacpan.org/release/JHTHORSEN/Mojolicious-Plugin-Logf-0.03
09:57 cpan_mojo Mojolicious-Plugin-CGI 0.09 by Jan Henning Thorsen - http://metacpan.org/release/JHTHORSEN/Mojolicious-Plugin-CGI-0.09
09:58 batman marcus: what are they saying?
09:59 marcus After presenting Mojolicious @ framasky Lutim present, the application of images encoded with it mojolicious sharing. Perl # # fpw
10:07 cosimo joined #mojo
10:10 trone joined #mojo
10:19 laouji joined #mojo
10:21 Eke|| joined #mojo
10:23 laouji joined #mojo
10:29 laouji joined #mojo
10:33 irq_ joined #mojo
10:35 laouji joined #mojo
10:48 laouji joined #mojo
10:54 alnewkirk joined #mojo
11:41 trone joined #mojo
11:53 rem_lex|pivo joined #mojo
12:09 dexteruk joined #mojo
12:12 mire joined #mojo
12:13 r0b3rt joined #mojo
12:19 neilhwatson joined #mojo
13:10 sri marcus, tempire, jberger, crab: where do you stand on the future of minion? a) add it to core with the file backend and ship the mango one separately, b) ship minion with the mango backend and the file backend separately, c) ship minion with mango and file backends
13:13 mire joined #mojo
13:14 torbjorn joined #mojo
13:22 nic sri: I'd like to understand Renderer.pm better before pursuing a proposal for change
13:23 Lee_ joined #mojo
13:24 nic When going through a template chain, it ignores 'content' once it has some that matches /\S/
13:25 nic Is that for simplicity, or would accumulating 'content' break use cases?
13:30 crab sri: (a) followed by (c)
13:32 jberger_ joined #mojo
13:33 jberger_ sri I would say at least c and maybe a
13:34 jberger_ But then I can understand you not wanting to maintain the file backend
13:35 jberger_ But I think having a file backend will drive adoption
13:35 jberger_ Especially among those who don't already use mongo
13:37 batman won't adding minion make the core big?
13:37 batman me personally almost never require a worker backend...
13:38 jberger_ Certainly I would have an easier time writing tutorial posts
13:39 jberger_ batman fair point, that's a vote against a then right
13:39 jberger_ What about c?
13:39 batman my vote doesn't count though ;)
13:39 jberger_ I know
13:40 batman i think c) makes sense
13:40 crab umm
13:40 crab sorry. when i said (a) followed by (c), i meant (c) followed by (a).
13:41 crab wtf.
13:42 sri hmm, that's 3 votes for c) followed by a) already
13:53 crab http://n12v.com/2-way-data-binding/ <- i like the gif in the backbone section
13:58 Adurah sri, where'd you get the name for Minion from?
14:03 bjoernfan Adurah: "Despicable Me" I think, unless it was the other way around.
14:04 dexteruk joined #mojo
14:04 Adurah https://github.com/kohana/minion Someone as creative...!
14:04 btyler joined #mojo
14:05 go|dfish dungeon keeper!
14:06 Adurah I was looking at how Kohana did encryption and noticed that, heh.
14:09 sh4 joined #mojo
14:09 hummeleBop joined #mojo
14:10 kyshtynbai joined #mojo
14:14 sri i suppose maintaining the file backend for minion is not too bad, at least the tests can run everywhere
14:20 gryphon joined #mojo
14:20 disputin joined #mojo
14:34 nicomen if a controller is not found matching an url, it continues looking in the routes, but if it finds a controller but not an action, it doesn't, is there something I can do for the latter to work?
15:20 * lb gives go|dfish a slap to motivate him
15:22 ryozi joined #mojo
15:37 sri Minion::Backend::File is in master for now https://github.com/kraih/minion/commit/5895f797aeaf5c0d827f76e6d03fc4dd6c1176d8
15:47 beyondcreed joined #mojo
15:53 d4rkie joined #mojo
15:55 irq joined #mojo
16:18 d4rkie joined #mojo
16:29 * sri wonders if he should add a generic repair method to the Minion::Backend base class, which is possible now but not quite as efficient
16:36 sri oh well, it's done https://github.com/kraih/minion/commit/931f988d41ba59b45e1551c8b3805c981d2c34f8
16:43 bluescreen joined #mojo
17:09 basiliscos joined #mojo
17:10 tempire c
17:15 sri d
17:16 mad_hatter joined #mojo
17:17 mad_hatter Just so I'm not doing this the wrong way, is there a better method of formatting content such as that rendered by things like %= text_field or %= content etc. with stylesheets?
17:17 inokenty joined #mojo
17:22 gnephiak joined #mojo
17:30 moritz mad_hatter: better than what?
17:30 moritz mad_hatter: CSS remains CSS :-)
17:30 mad_hatter right, but i didn't know if there was a way I was supposed to be doing it via mojolicious
17:31 moritz (of course you could also use LESS or SASS or whatever that stuff is called)
17:32 crab mad_hatter: no, other than tagging things with the field-with-error class, mojo doesn't do a whole lot about css
17:32 mad_hatter ok cool
17:33 mad_hatter also as a sidebar, do you guys know how to space divs equally between browsers?
17:35 mad_hatter http://pastie.org/9287189
17:44 torbjorn is mojo often used for generic http client tests?
17:45 torbjorn i mean, with its minimalistic syntax it should be well suited
17:45 dod joined #mojo
17:49 dod joined #mojo
17:57 sri torbjorn: i see people do it every now and then
18:03 skiehn joined #mojo
18:06 hrupp joined #mojo
18:08 cpan_mojo Mojo-YR 0.04 by Marcus Ramberg - http://metacpan.org/release/MRAMBERG/Mojo-YR-0.04
18:10 sri interesting, Mango::BSON is more efficient than Storable
18:11 sri a little (10%) after compression and like 25% before compression for 10 documents
18:12 marty joined #mojo
18:13 sri oh, and json wins with gzip compression :o
18:13 sri another 6% smaller than compressed bson
18:14 sri i do wonder what should be the default
18:16 marty_ joined #mojo
18:21 sri oh, i missed a change in the new http rfc
18:21 sri continuation headers have been removed :o
18:26 hrupp joined #mojo
18:29 hummeleBop1 joined #mojo
18:31 Eke- joined #mojo
18:43 denis_boyun joined #mojo
18:58 good_news_everyon joined #mojo
18:58 good_news_everyon [mojo] kraih pushed 1 new commit to master: http://git.io/rhAfTQ
18:58 good_news_everyon mojo/master 79c941f Sebastian Riedel: fixed RFC 7230 compliance bugs in Mojo::Headers
18:58 good_news_everyon left #mojo
18:58 sri the new rules are surprisingly harsh
18:58 sri http://tools.ietf.org/html/rfc7230#section-3.2
18:59 sri i think it's best if we keep accepting continuation lines for now, but do not generate them
19:00 sri i've just seen that jetty is going to just not support them at all
19:02 sri guess the reality is that continuation lines already don't work very well on the web
19:07 kb3ien joined #mojo
19:09 hrupp joined #mojo
19:14 mad_hatter joined #mojo
19:22 hrupp joined #mojo
19:24 sri guess i'll release a minion with file backend to see how it goes
19:27 good_news_everyon joined #mojo
19:27 good_news_everyon [mojo] kraih tagged v5.07 at efbde79: http://git.io/_tU8rw
19:27 good_news_everyon left #mojo
19:27 cpan_mojo Minion 0.20 by Sebastian Riedel - http://metacpan.org/release/SRI/Minion-0.20 (depends on Mojolicious)
19:28 good_news_everyon joined #mojo
19:28 good_news_everyon [mojo] kraih pushed 1 new commit to master: http://git.io/aHvUcg
19:28 good_news_everyon mojo/master dba0f2a Sebastian Riedel: bump version
19:28 good_news_everyon left #mojo
19:28 cpan_mojo Mojolicious 5.07 by Sebastian Riedel - http://metacpan.org/release/SRI/Mojolicious-5.07
19:32 dod joined #mojo
19:51 tempire \o
19:51 bluescreen joined #mojo
19:53 bluescreen joined #mojo
19:55 bluescreen joined #mojo
19:56 bluescreen joined #mojo
19:57 mad_hatter is there an ajax tutorial in the mojolicious docs? I can't seem to find it if there is. Only thing I'm seeing about it is in the cookbooks
20:03 tempire mad_hatter: what are you trying to do?
20:04 hummeleBop joined #mojo
20:05 Foxcool joined #mojo
20:05 Eke- joined #mojo
20:07 marty joined #mojo
20:14 hrupp joined #mojo
20:18 dod joined #mojo
20:20 mad_hatter joined #mojo
20:21 sri o/
20:25 sri is the CGI thread getting more offensive or am i misinterpreting the last few messages?
20:27 neilhwatson I sense frustration, but not malice.
20:30 hrupp joined #mojo
20:30 genio I get out of it a sense of frustration in some that don't like change.  I don't see it as particularly offensive, just agonizingly slow moving.
20:32 genio I deal in these same environments they deal in (RHEL/CentOS) and could care less if CGI support is removed.  It might make an initial problem for me as some things haven't yet been updated, but in the end, I'd be better off for it
20:34 genio On every app we slowly get to in our updates, we mojo-ify them, run them on Hypnotoad as an un-privileged user and then front them with some minimal Apache configuration.  It's a process, but refusal to update only makes the process worse as time moves on
20:34 genio On new stuff, it's all basically the same, but with NginX instead
20:35 hrupp joined #mojo
20:36 genio RHEL 6 has been out for years, so any attempts to keep support for 5 should be laughed at.  RHEL 7 is now out, so people should be looking into efforts to refresh their old, busted junk anyway
20:37 neilhwatson RHEL 7 just came out :) Some orgs move so slow. I know some who are still depreciating rhel 4.
20:41 hrupp joined #mojo
20:41 basiliscos joined #mojo
20:48 mire joined #mojo
20:50 mport joined #mojo
21:04 hrupp joined #mojo
21:28 sri hmm, some kind of garbage collection mechanism might make sense for minion
21:29 sri maybe app->minion->clean_up_after(5) to get all finished jobs removed automatically that are older than 5 days
21:30 sri perhaps ->repair could do the actual work
21:30 sri it checks all jobs now anyway
21:36 stephan48 is there also a way to list all existent jobs?
21:37 stephan48 never mind the backend has ->list_jobs
21:50 Eke- joined #mojo
22:00 tomboh joined #mojo
22:03 firnsy sri++ #minion updates
22:04 denis_boyun joined #mojo
22:06 firnsy i would suggest seconds as the unit for garbage collection timings to maintain consistency
22:23 russum joined #mojo
22:26 tomboh joined #mojo
22:56 jberger neilhwatson: certainly there are users with ancient platforms
22:57 jberger But they are certainly using ancient versions of mojolicious too
22:58 jberger I always find the argument that the newest versions of a module should support platform-blound users is silly
22:58 jberger Those users do not run at the bleading edge of anything
23:21 sri hmm, merging the repair methods was wrong
23:21 meshl joined #mojo
23:21 sri way too inefficient
23:25 sri i need a better name for the cleanup attribute
23:25 sri clean_up_after() doesn't sound so great
23:26 sri firnsy: i guess that's right
23:33 sri also needs a default value
23:33 * sri tends towards 30 days

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