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

IRC log for #mojo, 2018-02-06

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

All times shown according to UTC.

Time Nick Message
00:32 jberger so just for fun (and a little bit for $work) I decided to revisit the idea of expanders for Mojo::Pg
00:33 jberger here is a basic patch, passes all existing tests and adds new ones of course http://paste.debian.net/1008987/
00:33 jberger no docs yet
00:33 jberger I can also envision things like an add_expander method perhaps or automagic handling of array of types where the type is known
00:34 jberger and perhaps dynamically bound expanders ala Mojo::SQLite
00:35 jberger but for now, I have to go eat, so talk amongst yourselves
00:39 * Grinnz likes being able to specify expanders, mostly because sqlite and mysql generally don't tell you what types they return
00:40 Grinnz also, that way you could specify expanders that aren't based on being a specific type
00:40 Grinnz but dunno if anyone cares enough for that
01:36 dikim joined #mojo
02:04 dikim joined #mojo
04:22 nohuhu joined #mojo
04:31 nohuhu Is there a detailed explanation of the routing lifecycle?
04:44 maschine_ joined #mojo
05:04 dboehmer_ joined #mojo
06:43 polettix joined #mojo
07:06 tyldis NASA uses ordinal dates for everything, so I have to deal with it constantly...
07:12 dod joined #mojo
07:18 dod joined #mojo
07:20 CHYC jberger: Can I just say that's very unfair. I proposed the idea of expanders, wrote a patch, and now you've written one that (1) looks very similar to the patch I submitted when you could have asked me to fix issues with mine and (2) contains all the core issues for which my patch was originally rejected.
07:23 karjala_ joined #mojo
07:29 inokenty-w joined #mojo
07:34 Vandal joined #mojo
07:36 CHYC Here is my original proposal, written 2 years ago https://gist.github.com/chy-causer/cd1a151db9b21c278a10f8a2f363868b
07:45 AndrewIsh joined #mojo
07:48 McA joined #mojo
07:59 ashimema joined #mojo
08:32 sri CHYC: you did not address the issues raised, it's fair to assume you lost interest 2 years later
08:33 sri and jberger did make the code a lot cleaner
08:47 trone joined #mojo
08:53 CHYC sri: How did jberger address (1) that you're tying yourself to DBD:Pg's types and (2) the speed hit?
08:54 CHYC Never mind the fact that my initial implementation was faster than the pre submission code, and you patched the codebase to implement my speed optimizations
08:55 CHYC """After f854bdd it should not be possible for this patch to be faster than a JSON only solution.""" <- In the PR
08:55 CHYC If they're no longer an issue fine, but that's why I did not continue, because I have no control over those factors.
08:57 CHYC Nobody told me they were no longer blockers
09:04 Edward joined #mojo
09:05 sri CHYC: you might have misunderstood me there, i never expected a performance increase from your patch, just that the performance hit should be as minimal as possible
09:06 sri types are still a concern, and i've discussed that yesterday already with jberger, since he asked me
09:06 sri the code being clean is my main concern, and you never fixed the problem with non-blocking queries
09:07 sri mentioning underscore types in the docs is a blocker for me, since they are not official part of DBD::Pg
09:07 sri finding a workaround for handling them anyway, that is a different topic
09:07 sri and what i discussed with jberger
09:08 sri CHYC: also, just yesterday i brought up the feature here, and you gave no indication you were still interested in making it work
09:20 Afristar_ joined #mojo
09:21 sri CHYC: i'm sorry if our feedback has not been clear enough, but it's been 2 years
09:50 sri coolo: bitcoin is still dropping, when are you buying? :)
09:54 sri wonder at which point GPUs become affordable again
09:55 exp-innit sri: sorry about that, hectic as usual here
09:55 exp-innit ,meeting in 5 mins then i'll sort
09:55 exp-innit and eth is still quite profitable GPU wise
09:59 coolo sri: it's still higher than on nov 13 - it was 957 EUR one year ago, so 5200 EUR sounds still quite expensive :)
10:00 tyldis Still up 450% since I invested. But it was fun to see the 1000% increase for a while.
10:01 marcus Unless you maxed your credit cards to go all in in december :D
10:12 * exp-innit is personally quite excited about Lightning, but unrelated to bitcoin value
10:16 exp-innit quick mojo related question, in the logs, i get the address of my upstream proxy
10:16 exp-innit but I have X-Real-IP or similar headers
10:16 exp-innit can i have those included in the logs?
10:36 CHYC sri: The feedback was explicit. It's there on the PR. The performance impact was minimal and still was cited as a reason for rejection
10:38 sri CHYC: the rejection reason was votes, where did i say performance?
10:40 marty joined #mojo
10:42 exp-innit sri: i had another look, and I can't find any other uses of the cookie origin in CPAN, any suggestions for good ways to test this patch?
10:42 sri exp-innit: no
10:42 sri as i still don't actually know what the patch is about
10:43 exp-innit sri: you linked me to the only one i found the other day, it's about making sure domain is set on cookies even if the remote side doesn't pass one
10:43 exp-innit but i'm trying to do due dilligence to make sure no use of 'origin', the non-standard attribute, is broken by this
10:43 exp-innit the only one i have is Mojo::UserAgent::CookieJar::Role::Persistent which is fine with the changes
10:43 exp-innit as it correctly tests domain first
10:44 exp-innit oh damnit forgot my tea, brb
10:45 CHYC The rejection reason for the vote """ Some performance gain of things like a bool expander is nice but perhaps not worth the additional complexity (especially given that other existing expanders see a performance hit)"""
10:46 CHYC I really don't care if my code is incorporated or not, but given it seems to be a hot topic here at the moment, this may be an example of something that could be handled better.
10:46 sri that wasn't me though
10:47 CHYC I never accused you. My messages are to the mojo core devs.
10:48 sri whole review by jberger was sloppy, he was clearly preoccupied with the hackathon
10:48 sri and i would have considered that had my concerns been addressed
10:49 pink_mist . o O ( who reviews the reviewers? )
10:49 sri technically me
10:52 CHYC Any patch would still have the concern of tying yourself down to DBD::Pg types. As it so happens, I've come unstuck with that because psql extensions such as ipaddress (ironically something I wrote in the original proposal) come back as type "unknown".
10:53 sri and that's still a valid concern that needs to be discussed
10:54 sri we could theoretically just make json/jsonb special and assign other expanders like Mojo::SQLite does, if types become a blocker
10:55 pink_mist . o O ( is this something that could be resolved with roles? )
10:56 sri at which point a clean implementation becomes the main concern again
11:01 tchaves joined #mojo
11:21 Edward joined #mojo
12:53 orev joined #mojo
12:56 tcohen joined #mojo
13:04 mohawk i wonder whether "clean" is at all definable
13:26 exp-innit no joy in using grepcpan with .*mojo.* and origin\b
13:26 exp-innit it tells me:  Result: found more than 791 distributions - search limited to the first 2001 files matching your query ( run in 0.022634 )
13:26 exp-innit and then displays nothing
13:26 * exp-innit sighs
13:27 exp-innit their api returns is_incomplete: 1 and search_in_progress: 0
13:28 exp-innit right, cloning the entirety of metacpan but only getting ~13MiB/s
13:29 exp-innit uh, KiB/s
13:29 exp-innit so this will take some time
13:30 sri exp-innit: you don't have to go that far
13:30 exp-innit sri: it's only time
13:30 exp-innit i'll leave that running while i clear some bugs this afternoon
13:30 sri if you can't find it with https://grep.cpan.me it's prolly not on cpan
13:30 exp-innit oh interesting that's a different interface
13:31 exp-innit much faster too
13:31 exp-innit how is this better than metacpan idk
13:33 exp-innit right yes, even there: https://grep.cpan.me/?q=-%3Eorigin%5Cb
13:33 exp-innit the only one matching is persistent cookiejar
13:36 sri then it's prolly the only use on cpan
13:37 exp-innit yeah, if you're happy with me providing the origin but setting the domain by default i'll force push to my repo and update the PR after lunch
13:37 exp-innit is there anything else you'd like me to add? notes in changelogs? that sort of thing?
13:38 sri explain why we should make those changes exactly, quoting the right spec sections
13:38 sri and how the deprecation would work
13:39 exp-innit in the PR description i assume
13:39 sri yes
13:39 exp-innit roger, that's in the commit messages atm, i shall transfer
13:39 haarg grep.cpan.me has been around for a while and works well, but goes down occasionally and someone needs to be poked to fix it
13:39 exp-innit haarg: they've certainly got a better implementation than metacpan
13:39 haarg grep.metacpan.org is newer and has an entirely different implementation, and doesn't really work well imo
13:40 sri grep.cpan.me uses abandoned tech though
13:40 exp-innit sri: oh?
13:40 sri the old google code search stuff
13:40 exp-innit oh right
13:40 sri which google abandoned, as is tradition
13:40 exp-innit i hate tha tmeme
13:43 haarg how is it related to google code search?
13:44 haarg grep.metacpan.org just runs git grep
13:44 haarg it's a pretty silly implementation
13:44 sri https://grep.cpan.me/about
13:45 exp-innit haarg: adding to a big postgres fts index would be a potential option, but honestly it's not like there's much of a better choice there imo
13:45 haarg "Akin to" doesn't say anything about the tech
13:46 Zx3 joined #mojo
13:47 exp-innit https://github.com/dgl/cpangrep/blob/master/lib/WWW/CPANGrep/Search.pm#L135
13:47 exp-innit heh, it's backed by Redis
13:47 haarg it uses a redis queue
13:47 sri haarg: hmm, maybe i misunderstood, re2 seems to still be maintained
13:47 exp-innit redis is a poor choice for this IMHO, but so is everything not Postgres :)
13:48 haarg for a queue?
13:48 exp-innit haarg: for pretty much anything
13:49 haarg the searching is done by concatenating all the files sets of large slab files, which it then mmaps and runs regexes against
13:57 Edward joined #mojo
14:16 exp-innit dumb question, can i get rid of the "Rendering cached template" message? I include like 20 templates per page
14:16 exp-innit and god it loves to spam my terminal
14:16 karjala_ joined #mojo
14:16 sri raise the log level
14:17 exp-innit k, was hoping there was a bitmask or similar, cheers sri
14:18 sri or replace the logger with one that filters those messages out
14:19 exp-innit nah that's fine
14:19 exp-innit i just literally have to page up a few times for terminal debug messages
14:19 exp-innit it's me being lazy
14:25 Lee_ joined #mojo
14:26 Pyritic joined #mojo
14:36 Edward joined #mojo
15:00 jnap joined #mojo
15:04 da5id joined #mojo
15:07 tcohen joined #mojo
15:23 gryphon joined #mojo
15:51 karjala joined #mojo
15:57 Grinnz exp-innit: redis is clearly a great implementation for what grep.cpan.me uses it for (not the text search part) since it's never had performance issues
15:57 Grinnz and if metacpan wants to do text search they are already using elasticsearch for everything else, which blows postgres out of the water for text search ability
16:00 sri elasticsearch kinda sucks for code search i think
16:00 sri even github couldn't get that to work
16:02 exp-innit elasticsearch is just a rebranded ghetto Lucene
16:02 exp-innit and I'd not argue it 'blows it out of the water', but yes it is a capable product
16:03 exp-innit honestly Grinnz I don't have a problem with redis, mongo, memcached being used for a big mmapped cache
16:03 exp-innit I just dislike them intruding as databases
16:03 exp-innit also fwiw sri i'm just finishing off this PR for you
16:03 exp-innit adding tests to validate the deprecation
16:03 Grinnz you don't use it for the same things, you use it for what it does well
16:03 Grinnz which can be a database, but not what a relational one does
16:03 sh14 joined #mojo
16:04 exp-innit sri: want .t files perltidied as well i assume
16:04 sri we perltidy everything, but we do not test deprecations
16:04 Edward joined #mojo
16:05 exp-innit specifically i'm testing that 'origin' still works, not that it reports deprecated
16:05 exp-innit is that acceptable?
16:05 sri yea, we don't test that
16:05 exp-innit roger, i'll finish my tests locally then and not include them in the commit
16:05 sri we make sure the deprecation works, isolate the deprecated code so it's not touched again until the deprecation runs out and that's it
16:06 exp-innit ok, well I'll get back to you when I'm confident this is well rounded, well formatted, and works in all scenarios I can envisage
16:17 jberger CHYC: I didn't mean to offend
16:17 jberger and indeed in the almost 2 years since that PR I've started to change my opinion slightly
16:17 jberger I do use db-side type coercion a lot, especially my boolean -> json trick
16:18 jberger but it has come to the point where I do that so much I'd actually like to just set it once and forget it
16:18 jberger yes I understand that is likely where you were coming from
16:19 jberger as I noted in my review, I was at QAH, but even then all I asked for was a comment on performance and tidying up the code
16:19 jberger its hard to put myself back two years ago, but I'd assume that what I interested in was eliminating all of those added method calls
16:20 jberger yesterday after being reminded of the desire for expanders, I did look at your patch again, then decided to try my hand at my own patch
16:20 sri jberger: the point about types stands though, it's a mess
16:21 jberger I don't see them being especially similar, though perhaps they are under the hood with the indirection eliminated ... I'm not sure because I didn't delve that deeply into yours this time
16:21 sri i think we might have to make json/jsonb special and assign all others manually
16:21 Edward joined #mojo
16:21 jberger sri: for the sake of argument can we ignore the underscore types for the moment?
16:21 jberger without those, do you still object to referencing the types by name?
16:21 sri actually, underscore types and unknown type
16:22 jberger unknown type?
16:22 sri yes, as CHYC said, some come back as unknown
16:22 sri so yea, type mapping will always be flawed
16:24 ChmEarl joined #mojo
16:24 jberger ok, well that is disappointing, and yet, for those very common types I don't see why one ought to require mapping it manually each time
16:25 sri maybe reserve a few very common types for auto mapping
16:25 jberger I'm not arguing against also adding dynamic mappers ala Mojo::SQLite
16:25 sri but this is a tricky problem, and we need a definitive solution before a patch gets applied
16:26 jberger anyway, point taken
16:27 jberger and just to reiterate, all my patch was was an attempt at a quick implementation between work and dinner, just to see if a logjam could be broken
16:29 jberger my plan was then to make underscore types be handled transparently in a further commit which would at least abstract that detail from the user
16:29 jberger obviously "unknown" type cannot be handled
17:01 Edward joined #mojo
17:10 exp-innit is it just me or is perltidy broken, it's supposed to overwrite in place with `-b`, but does not, and the example given in the mojo wiki is without `-b` entirely
17:10 exp-innit which causes it just to go to stdout
17:10 exp-innit man it's been years since i've used this
17:10 Grinnz exp-innit: in mojo's perltidyrc it's set up to write to STDOUT so you'd do perltidy $filename > $filename.new
17:11 Grinnz though i prefer in place tbh, since it's all in git
17:11 exp-innit Grinnz: is it? i must be blind
17:12 Grinnz i think that is the default operation mode
17:13 exp-innit yeah, even with -b though, i assume it ignores command line args with ~/.perltidyrc
17:15 Grinnz it should use both: "If it finds one, it applies those options to the initial default values, and then it applies any that have been defined on the command line. "
17:16 * exp-innit shrugs
17:18 Grinnz aha, the -pbp prevents it
17:18 Grinnz last sentence in https://metacpan.org/pod/distribution/Perl-Tidy/bin/perltidy#-b,-backup-and-modify-in-place
17:18 exp-innit sri: right i'm gonna force push it and update the PR, i /think/ i've covered all the bases here
17:18 exp-innit but please be as critical as you can
17:18 CHYC jberger: No offence taken, but it would have been nice to have been asked if there was any development on the PR. As it so happens, I have updated it to incorporate mapping by column name (to get round the "unknown" type), but I wouldn't say that was appropriate for mojo core.
17:19 Grinnz exp-innit: that sounds like a challenge :P
17:19 exp-innit Grinnz: https://github.com/kraih/mojo/pull/1186
17:19 exp-innit feel free :)
17:19 exp-innit honestly mojo is a large, complex, interrelated framework
17:20 exp-innit and it's taken me some time to grok the code paths for certain tests and behaviours
17:20 exp-innit happy to be shown to be wrong
17:21 sri it's actualy not that large, 8k lines of code isn't that much
17:21 exp-innit sri: 'disparate'? :)
17:21 exp-innit 'spread over lots of files'?
17:22 exp-innit i don't mean it as an insult
17:22 exp-innit just that it's taken me some time to feel more comfortable with its internals
17:22 exp-innit CI failed so i guess I screwed something up
17:23 sri exp-innit: every use of ->origin needs to be separated from the surrounding code and marked with # DEPRECATED!
17:23 sri the way you use ->attr is very weird
17:23 exp-innit sri: ah right, i guess the deprecation example i was using was not acceptable
17:24 exp-innit sri: it is? aren't all 'has' attributes backed by that same function in that same manner? i thought so
17:24 Grinnz they are but ->attr is generally only used internally
17:24 exp-innit ah well, I can't do any more on it today, but i'm around tomorrow too so I will locate all uses of origin and mark them explicitly
17:24 exp-innit i see, would you prefer an explicit shift->{etc}?
17:25 exp-innit that felt a little weirder to me, as it's messing with object internals rather than its 'api'
17:25 Grinnz this is in the object itself, so it's messing with its own internals, mojo objects do that a lot
17:25 jberger CHYC: I guess I considered bringing it to attention here was making that comment
17:26 jberger and I don't care in the slightest who gets credit for things, if you like what you see in my patch, feel free to incorporate it into yours
17:26 jabberwok With Minion, does it make sense to only add worker tasks that make sense within the worker's queue? For example, I put a 'report' task in the 'defer' queue, and I want that to be handled by a task other than 'report' in the 'default' queue.
17:26 dod joined #mojo
17:26 jberger on the converse, I didn't ask if there were updates to a 2 year old patch because I didn't expect that there were any
17:26 jberger I'd be happy to see them, of course
17:27 Grinnz jabberwok: not sure if i follow, but they're all just names, it's easy to create more of them when you need new functionality
17:29 exp-innit Grinnz: fwiw could you please comment on the PR document itself? There's at least one ugly grammar error in there but I want to make sure it's clear
17:29 Grinnz havent really looked at the pr
17:30 exp-innit i'm leaving work momentarily so there's no rush, I am determined to meet all the requirements though and get this committed
17:31 exp-innit because it's the only really ugly hack that isn't related to html/css nonsense in my backend code
17:31 jabberwok True enough Grinnz. what I'm really trying to do is enqueue jobs that require manual user intervention, but there's no way now to enqueue a job with state='held' is there?
17:31 jabberwok (thinking of implementing printer queues, long ago)
17:31 Grinnz don't think so. you'd want to wait to enqueue it until its conditions are met
17:33 CandyAngel I've done something like that
17:36 mohawk god knows i tried
17:38 CandyAngel jabberwok: If I recall correctly, I think my solution was to have a 'taskname_HOLD' task (which would fail on the first attempt) and would schedule a 'taskname' when it was retried
17:38 Grinnz you can put it in a queue that no worker parses, and then use retry to change the queue when it's ready
17:39 CandyAngel But yeah, that was before queues
17:39 CandyAngel Or something :)
17:39 good_news_everyon joined #mojo
17:39 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAex5
17:39 good_news_everyon mojo/master d3044e9 Sebastian Riedel: we really want to discuss features
17:39 good_news_everyon left #mojo
17:40 jabberwok thanks CandyAngel, Grinnz.
17:40 Grinnz jberger/sri: thoughts on symlinking lib/Mojolicious/Guides/Contributing.pod to .github/CONTRIBUTING.pod so the user is linked directly?
17:41 sri Grinnz: i have no idea how that works
17:41 sri and how would that work for spin-off projects?
17:41 Grinnz it wouldn't work for those, since it doesn't exist in their repo
17:42 sri so much for that
17:43 good_news_everyon joined #mojo
17:43 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAepZ
17:43 good_news_everyon mojo/master 00cb1b2 Sebastian Riedel: complex bug fixes should be discussed too
17:43 good_news_everyon left #mojo
17:45 nohuhu joined #mojo
17:46 good_news_everyon joined #mojo
17:46 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAepy
17:46 good_news_everyon mojo/master d471608 Sebastian Riedel: Bitcoin are not useful anymore
17:46 good_news_everyon left #mojo
17:49 sri so, github doesn't acually show the yello wbox at the top anymore for CONTRIBUTING.md :(
17:50 anony joined #mojo
17:50 sri might as well not bother with that at all then
17:50 sri that tiny link on the side is useless
17:53 maschine joined #mojo
17:54 sri the individuals bugging members of the core team in private about making contribution rules more visible (you know who you are) can go bug GitHub, we use the features they give us, and they've just taken our ability to do that
17:55 sri i'll assume this suddenly became an issue because GitHub did that, and you've not been around long enough to know
17:57 sri for the record, CONTRIBUTING.md used to give a big yellow hint box atop the new issue form telling you to read stuff before opening an issue
17:58 sri Yes, you should feel a little bad about being so pushy with the issue
17:58 epiphero joined #mojo
18:01 trone joined #mojo
18:02 stephan48 sri: apparently i still get the info to the CONTRIBUTING.md file - the box says throu: "It looks like this is your first time opening an issue in this project!
18:02 stephan48 Be sure to review the contributing guidelines. "
18:02 stephan48 also since you apparently can include a issue template as repo owner - might it make sense to hint to the CONTRIBUTING file from there?
18:03 stephan48 maybe there is also a setting to always show the contributing hint?
18:03 purl okay, stephan48.
18:03 jberger purl: maybe there?
18:03 purl rumour has it maybe there is another bug or a setting to always show the contributing hint
18:03 jberger purl: forget maybe there
18:03 purl jberger: I forgot maybe there
18:04 stephan48 thanks, i was still trying to figure purl out :D
18:04 jberger :D
18:04 stephan48 its an annoying little bugger
18:04 stephan48 ... at times
18:04 jberger the closest I've found to online documentation for purl is http://www.infobot.org/guide-0.43.x.html
18:04 jberger but purl isn't exactly that same bot, just shared parentage
18:04 stephan48 yea
18:06 nohuhu left #mojo
18:15 Pyritic joined #mojo
18:26 good_news_everyon joined #mojo
18:26 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAvf5
18:26 good_news_everyon mojo/master 756b3cf Sebastian Riedel: improve Mojo::Log to use native systemd log levels
18:26 good_news_everyon left #mojo
18:33 tcohen joined #mojo
18:34 sri what it looks like on the console https://i.imgur.com/D1JDLly.png
18:34 sri seems fairly useful
18:35 Grinnz neat
18:37 sri and you can filter by level
18:37 sri journalctl -p err -b
18:38 sri just the mapping is sometimes a little awkward fatal -> crit
18:39 sri above err there are 3 more levels, crit, alert, emerg
18:39 sri crit seemed the most fitting for falat
18:43 epiphero joined #mojo
18:48 sri actually i wonder if i should shorten the level shown too
18:48 sri [d] some debug message
18:48 sri [e] some error
18:49 maschine [dbg], [nfo], [wrn], [err], [ftl]?
18:50 sri worst of both worlds? :P
18:50 maschine they're all the same length :p
18:58 good_news_everyon joined #mojo
18:58 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAvkz
18:58 good_news_everyon mojo/master b788beb Sebastian Riedel: shorten the level indicator too
18:58 good_news_everyon left #mojo
18:59 sri <7>[d] some debug message
19:00 tyldis Be sure to keep an eye on te Falcon Heavy launch tonight. It's supported by Perl :D
19:00 sri and mojo?
19:00 purl it has been said that mojo is http://mojolicio.us or shagadelic or a "flamework" or mijo or mijo or mojolixo
19:01 tyldis No Mojo, my contribution predates my Mojo days
19:03 jberger tyldis: you have code on the heavy?
19:03 jberger so cool
19:04 tyldis I have a snub running on all their ground stations
19:04 maschine neat - perl all the things!
19:04 jberger that sounds very impressive, but it makes me ask ... what's a snub? ;-P
19:04 tyldis It "converts" from TCP to UDP and coverts from bigendian to littlendian
19:05 jberger ah
19:05 jberger cool
19:05 tyldis converts^
19:05 jberger pack(unpack('ALL THE THINGS'))
19:06 maschine some of my favorite lines of code are pack(unpack(...)); :p
19:07 jabberwok pack unpack, pack unpack... sounds like my years as a consultant
19:07 jberger (btw, if my comment looked dismissive, it really really isn't)
19:07 tyldis When somebody finally get the basics of regex you show them a pack/unpack template...
19:07 jberger haha, I've tried a few times, its another whole language
19:07 jberger every now and again I've wondered how many sub languages exist in perl
19:08 tyldis I started with just H* and brute-forced from there. Now I do them properly and life is zen
19:08 jberger regex, printf, pack/unpack, strp/ftime (perhaps)
19:10 tyldis Luckily the number of devices still doing binary protocols is diminishing
19:11 Seth joined #mojo
19:11 maschine I have to use that often on my app but that's because I'm manipulating binary data..
19:11 tyldis I feel you
19:13 jberger tyldis: well, it was ... :-P
19:13 tyldis The latest device I had to incorporate was pure HATEOAS, so two loops with Mojo::UserAgent and it maps all 1000+ statusfields and 40+ command structures.
19:13 * jberger looks at HTTP/2
19:14 tyldis Slicker than writing unpakc templates based on a PDF. Usually scanned, so text is not selectable.
19:15 tyldis jberger: I am fortunate enough to not have to deal with HTTP/2. I just wait until Mojo can do it. Until then it's dead to me ;)
19:15 mishanti1 Ditto
19:15 dantti_laptop joined #mojo
19:15 jberger hahahaha
19:15 purl LOLCON 4 reached.
19:20 jabberwok nobody likes the Organization of American States (sigh)
19:22 jabberwok binary formats... in the 90s, writing code to translate raw Group 3/Group 4 fax data to TIFF and back.  now *that* was sheer loads of joy.
19:22 epiphero joined #mojo
19:26 tyldis All code is joy, eh?
19:33 Pyritic joined #mojo
19:38 tyldis Hmm... With EventEmitter, ss it a sane pattern to check if there are subscribers to 'error', and croak if you encounter an error and there are no subscribers? And just emit an error if there are subscribers?
19:39 pink_mist no, just emit an error always
19:39 pink_mist if that's what your design for errors is
19:39 pink_mist or always croak
19:39 pink_mist one or the other
19:39 purl the other! choose the OTHER!
19:40 pink_mist botsnack
19:40 purl thanks pink_mist :)
19:40 tyldis lol
19:47 dantti_laptop joined #mojo
19:48 jberger tyldis: the eventemitter already will already throw an exception if there are no subscribers to error when it is emitted
19:49 jberger http://mojolicious.org/perldoc/Mojo/EventEmitter#error
19:50 tyldis Oh dear, missed that.
19:50 tyldis Makes sense, so no wonder Mojo had it already ;)
19:51 jberger \o/
19:51 jberger probably you had read it before and had it in the back of your mind
19:54 tyldis Do not steal my brilliance away from me.
20:09 skingsbu joined #mojo
20:18 jberger :P
20:19 jberger dude, you have code for effing rockets! brilliance accomplished!
20:25 sri hmm, rockets, lasers... i hope you two never work on the same project :)
20:28 sri (as a supervillain i do see a lot of potential for synergy!)
20:28 jberger as a supervillain, wouldn't you need an R&D department?
20:29 sri we all have to make sacrifices in this economy :/
20:33 jabberwok ..."That's not my department" says Werner von Braun...
20:49 jberger DON'T PANIC
20:49 purl PANIC!!!
20:52 good_news_everyon joined #mojo
20:52 good_news_everyon [mojo] kraih pushed 1 new commit to master: https://git.io/vAvnZ
20:52 good_news_everyon mojo/master bedc440 Sebastian Riedel: bump version
20:52 good_news_everyon left #mojo
20:52 good_news_everyon joined #mojo
20:52 good_news_everyon [mojo] kraih tagged v7.63 at 6ce1615: https://git.io/vAvnn
20:52 good_news_everyon left #mojo
20:52 sri ninja release, since i want to deploy this tomorrow at $work :p
20:53 pink_mist heh
20:53 genio just damned insane
20:53 genio spacex has their stuff together
20:57 genio I wonder if the core made its landing safely
20:58 jberger that was unbelievable
20:58 jberger spacex++
20:59 genio watching the boosters land was pretty darn amazing
21:00 mishanti1 Goosebumps!
21:00 purl goosebumps are such a wierd thing.
21:05 pink_mist https://twitter.com/praprotnix/status/960981480309739520
21:05 genio no info on the core?
21:08 jberger I'm guessing they lost it
21:08 jberger no info on their twitter
21:08 jberger they have to know yes or no by now
21:08 jberger so no news is probably bad news
21:08 tyldis Puh. That was exciting
21:09 jberger but hey, once the payload is up, rocket recoveries are just gravy/profit
21:09 tyldis Yup
21:09 jberger no criticism here
21:09 genio jberger: even so, was still amazing to watch the payload go up and land the two first stage boosters.  those things are huge and they land upright like that...
21:09 jberger the simultaneous landing of the side boosters was stunning
21:09 tyldis And it's still not clear how much gravy they are in reality. There is a lot of work involved in refurbishing them
21:09 jberger genio: definitely
21:09 tyldis And some risk
21:10 jberger tyldis: you know, I thought about that
21:10 jberger but it must be worth it or they wouldn't do it
21:11 genio "Heralded by dual sonic booms that thundered across Cape Canaveral, both boosters touched down about eight minutes after liftoff. The central core landed on SpaceX's off-shore drone ship about 20 seconds later."
21:11 genio CBS
21:11 epiphero jberger: probably more worth the knowledge gained today to make be able to make it worthwhile in the long run.
21:11 tyldis There is a lot of PR involved. They must have credibility with their tech. While they launch cheap, their track record is too short so insurance for the payloads is rather expencive.
21:13 epiphero s/make//
21:20 jberger not sure why everyone thinks they need to justify it to me :-P
21:20 jberger i'm ecstatic
21:22 jberger https://youtu.be/-B_tWbjFIGI?t=2304
21:22 genio lost the core
21:23 genio unless that's just them talking about losing the feed
21:23 genio ?
21:24 jberger guess that depends on who is speaking
21:24 polettix joined #mojo
21:24 tyldis genio: My thoughts exactly
21:24 genio certainly nobody in the control room area looks excited :/
21:25 tyldis They could also still be focused on that thingy on it's way to Mars ;)
21:28 mishanti1 Still no core-news? Can't... hold.. breath.. much.. longer..
21:49 Jonis f core wasn't lost they would have said so already.
21:49 Jonis still, amazing to watch them land the two boosters
21:51 tcohen joined #mojo
21:57 mishanti1 And they managed to do it without infinite money.
22:04 sri hmm, re detecting systemd, shouldn't a parent pid check work?
22:05 Grinnz not for hypnotoad?
22:05 sri if you were to expect systemd everywhere
22:06 sri i mean, logging to stdout and parent pid
22:07 sri if we had say a $log->systemd(1) attribute
22:07 Grinnz i was thinking something like that when you had those changes to the short version for it
22:08 sri that should work well enough for having verbose logs for doing stuff from the console, and short logs in systemd
22:08 Grinnz though i dunno if anyone has been using short logs for anything other than systemd
22:32 sri exp-innit: in case you missed it, your pull request doesn't pass the tests
23:06 berov joined #mojo
23:30 tcohen joined #mojo
23:49 tcohen joined #mojo

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