« Back to channel list

#elixir-lang - 07 March 2019

« Back 1 day Forward 1 day »
[00:35:04] griffinbyatt: has joined #elixir-lang
[00:45:44] Zarathu: 14:49:00 < chrismccord> ideally 0.1 goes out this month
[00:46:02] Zarathu: OliverMT: that's 25 days
[00:46:05] Zarathu: START THE COUNTDOWN BOYS
[00:57:15] lauromoura: has joined #elixir-lang
[01:05:53] carldd: has joined #elixir-lang
[01:28:58] Avinash: has joined #elixir-lang
[01:42:31] k1nd0f: has joined #elixir-lang
[01:45:34] MononcQc: has joined #elixir-lang
[02:15:14] Avinash: has joined #elixir-lang
[02:18:56] nighty-: has joined #elixir-lang
[02:47:54] tomterl: has joined #elixir-lang
[02:48:46] kiltzman: has joined #elixir-lang
[02:51:59] sevenseacat: has joined #elixir-lang
[03:21:19] carldd: has joined #elixir-lang
[03:40:29] ariedler_: has joined #elixir-lang
[04:01:14] duane: has joined #elixir-lang
[04:03:28] gvaughn: has joined #elixir-lang
[04:08:22] achromat: has joined #elixir-lang
[04:09:28] achromat: has joined #elixir-lang
[04:09:41] achromat: has left #elixir-lang: ()
[04:11:54] ur5us: has joined #elixir-lang
[04:12:54] ur5us_: has joined #elixir-lang
[04:20:36] obfusk: has joined #elixir-lang
[04:28:09] helpa: has joined #elixir-lang
[04:31:39] Axsuul: has joined #elixir-lang
[04:45:13] DTZUZO: has joined #elixir-lang
[04:53:42] dtzuzu: has joined #elixir-lang
[04:53:42] nageV: has joined #elixir-lang
[04:53:42] ryotsu: has joined #elixir-lang
[04:53:42] tgrk: has joined #elixir-lang
[04:53:42] codewaffle: has joined #elixir-lang
[04:53:42] kaptin: has joined #elixir-lang
[04:53:42] irclogger_com: has joined #elixir-lang
[04:53:42] minus: has joined #elixir-lang
[04:53:42] MuffinPimp: has joined #elixir-lang
[04:53:42] freedrul1: has joined #elixir-lang
[04:53:42] andersju: has joined #elixir-lang
[04:53:43] Jam666: has joined #elixir-lang
[04:53:43] riddle: has joined #elixir-lang
[04:53:43] universa1: has joined #elixir-lang
[04:53:43] Hawkheart: has joined #elixir-lang
[04:53:43] wirem0n: has joined #elixir-lang
[04:53:43] comstar: has joined #elixir-lang
[04:53:43] dormiens: has joined #elixir-lang
[04:53:43] balo: has joined #elixir-lang
[04:53:43] ngr: has joined #elixir-lang
[04:53:43] baweaver: has joined #elixir-lang
[04:53:43] meredith: has joined #elixir-lang
[04:53:43] terinjokes: has joined #elixir-lang
[04:53:43] w1gz: has joined #elixir-lang
[04:53:43] cytryna: has joined #elixir-lang
[04:53:43] rhbvkleef: has joined #elixir-lang
[04:53:43] justinmcp: has joined #elixir-lang
[04:53:43] Fire-Dragon-DoL: has joined #elixir-lang
[04:53:43] Liothen: has joined #elixir-lang
[04:57:05] Avinash: has joined #elixir-lang
[04:58:31] notzmv: has joined #elixir-lang
[05:21:26] mbuf: has joined #elixir-lang
[05:35:40] __charly__: has joined #elixir-lang
[05:36:40] __charly__: has joined #elixir-lang
[06:13:45] DTZUZO: has joined #elixir-lang
[06:19:02] Nikkel: has joined #elixir-lang
[06:24:44] gvaughn: has joined #elixir-lang
[06:31:56] ariedler_: has joined #elixir-lang
[06:47:46] Promasu: has joined #elixir-lang
[07:03:36] Nikkel: has joined #elixir-lang
[07:25:56] carb0n: has joined #elixir-lang
[07:31:49] thurloat2: has joined #elixir-lang
[07:32:03] gvaughn: has joined #elixir-lang
[07:35:40] Jetimon: has joined #elixir-lang
[07:47:47] ur5us: has joined #elixir-lang
[08:01:31] tomaz_b: has joined #elixir-lang
[08:06:58] isHavvy: has joined #elixir-lang
[08:07:42] zakora: has joined #elixir-lang
[08:25:40] ariedler: has joined #elixir-lang
[08:25:53] Avinash: has joined #elixir-lang
[08:28:44] rbino: has joined #elixir-lang
[08:29:51] lexmag: has joined #elixir-lang
[08:33:41] Avinash: has joined #elixir-lang
[08:34:25] Avinash: has joined #elixir-lang
[08:39:01] netrino: has joined #elixir-lang
[08:42:20] tgrk: has joined #elixir-lang
[08:43:05] PragTob: has joined #elixir-lang
[08:50:50] Avinash: has joined #elixir-lang
[08:51:14] amitchellbullard: has joined #elixir-lang
[08:51:16] stiang: has joined #elixir-lang
[08:51:18] zeeshanlakhani: has joined #elixir-lang
[09:00:13] zakora: has joined #elixir-lang
[09:02:02] lexmag_: has joined #elixir-lang
[09:07:43] zakora: has joined #elixir-lang
[09:07:52] Promasu: has joined #elixir-lang
[09:14:09] ur5us: has joined #elixir-lang
[09:20:22] wonko7: has joined #elixir-lang
[09:26:45] Avinash: has joined #elixir-lang
[09:37:01] k1nd0f: has joined #elixir-lang
[09:45:47] keden: has joined #elixir-lang
[09:56:41] Tobico: has joined #elixir-lang
[10:09:07] Havvy: has joined #elixir-lang
[10:11:50] PragTob: has joined #elixir-lang
[10:16:12] Promasu: has joined #elixir-lang
[10:20:27] Tobico: has joined #elixir-lang
[10:21:28] isHavvy: has joined #elixir-lang
[10:26:10] ps: has joined #elixir-lang
[10:33:37] ariedler_: has joined #elixir-lang
[10:39:13] lexmag: has joined #elixir-lang
[10:51:23] mdbm: has joined #elixir-lang
[11:09:59] Avinash: has joined #elixir-lang
[11:17:35] Jetimon: has joined #elixir-lang
[11:28:19] lexmag: has joined #elixir-lang
[11:41:13] hypercore: has joined #elixir-lang
[11:41:23] hypercore: how do i create a new elixir project in the current directory?
[11:41:45] hypercore: i.e. put the files into . instead of my_app
[11:42:50] DanielI: hypercore: `mix new .`
[11:43:10] DanielI: for details, check `mix help new`
[11:43:57] hypercore: danieli: doesn't work
[11:44:53] Nicd-: define "doesn't work"
[11:45:04] DanielI: yes, that's not very helpful - which part doesn't work?
[11:45:21] DanielI: https://hastebin.com/raw/aselixicom i just tested it
[11:46:41] lexmag: has joined #elixir-lang
[11:55:31] ariedler: has joined #elixir-lang
[11:57:21] nox: Doesn't it fail if . isn't empty? In which case it would tell you so?
[11:57:47] ariedler: has joined #elixir-lang
[11:59:55] hypercore: ah might've been because . wasn't empty
[11:59:58] hypercore: thanks guys
[12:00:21] rbino: I've just discovered that iex prompt keeps being usable even if you're spamming the terminal with IO.puts, I never noticed it and that's neat
[12:00:57] dysfun: what do you mean usable?
[12:01:03] dysfun: that it reprints the prompt?
[12:02:52] rbino: yep, that you can type and stuff it doesn't get broken by the stuff that IO.puts is spitting out
[12:04:00] rbino: these are all the little details that make Elixir a joy to work with
[12:04:24] DanielI: i just hit enter a few times
[12:04:45] DanielI: if it keeps asking for more input (unfinished statement), i type "#iex:break" and hit return
[12:15:11] uncle_phil: has joined #elixir-lang
[12:16:51] lauromoura__: has joined #elixir-lang
[12:35:57] Avinash: has joined #elixir-lang
[12:39:31] thurloat22: has joined #elixir-lang
[12:41:17] lexmag: has joined #elixir-lang
[12:42:11] thurloat22: has joined #elixir-lang
[12:50:54] drincruz: has joined #elixir-lang
[12:52:56] keden: has joined #elixir-lang
[12:56:12] tnez: has joined #elixir-lang
[13:13:31] lexmag: has joined #elixir-lang
[13:19:56] MissingNoIOI: has joined #elixir-lang
[13:28:03] hypercore: guys is there a way of installing a mix package and saving it to mix.exs?
[13:28:18] hypercore: i.e. the elixir equivalent of npm install --save
[13:28:43] Nicd-: not currently
[13:29:22] dysfun: it's not trivial to do properly because mix.exs is just an elixir script
[13:30:37] hypercore: would it be implemented as part of mix (i.e. running locally) or on the hex.pm backend?
[13:32:07] Nicd-: the backend does not have access to your mix.exs :)
[13:33:52] hypercore: ok thanks guys
[13:34:05] hypercore: also, is credo worth using in CI tests?
[13:34:34] Avinash: has joined #elixir-lang
[13:34:52] gvaughn: has joined #elixir-lang
[13:35:29] dysfun: depends what you do with it i guess
[13:35:36] ariedler_: has joined #elixir-lang
[13:36:47] hypercore: dysfun: i guess as more of a general habit than anything specific
[13:37:06] hypercore: as part of a CI/CD pipeline
[13:37:35] hypercore: (that's also why i was asking if mix add an "install" type function, so that i could run it in my CI file)
[13:38:02] dysfun: you can do what you like obviously, but i think it's perhaps better just during dev. particularly because you can ignore it easier that way
[13:38:58] knack: has joined #elixir-lang
[13:40:53] hypercore: great, thanks
[13:42:51] proteusguy: has joined #elixir-lang
[13:45:30] za1b1tsu: has joined #elixir-lang
[13:48:52] keden: has joined #elixir-lang
[13:53:30] lexmag: has joined #elixir-lang
[13:53:50] tomaz_b: has joined #elixir-lang
[13:53:59] PragTob: has joined #elixir-lang
[13:59:13] keden: has joined #elixir-lang
[14:00:26] Rovanion: has joined #elixir-lang
[14:01:22] kapil____: has joined #elixir-lang
[14:17:51] __charly__: has joined #elixir-lang
[14:22:59] proteusguy: has joined #elixir-lang
[14:24:01] shmink: has joined #elixir-lang
[14:24:09] shmink: Maybe off topic but it is an elixir project I’m working with. When it comes to tags on, lets say, news articles. Then if you search for news articles with the tags `"football"` and `"final"`. Should you return all the news articles that have EITHER `"football"` OR `"final"`. _Or_ news articles that have both the tags `"football"` AND `"final"`?
[14:25:34] dysfun: lol, i had a huge fight about that at one job. i arbitrarily chose one and they ended up wanting the other and felt strongly about it
[14:27:39] shmink: I'm tempted to return both the same way I think Google does it. The top results are the ones closest to what you searched for and after that it's anything related.
[14:28:02] dysfun: no, google has proper ranking
[14:28:41] zdsmith: Basically when you get more than a little down that rabbit whole you want to be thinking about a boosting-based system like elastic search
[14:29:44] dysfun: "a robust search engine"
[14:30:01] shmink: dysfun: what was the one that "they ended up wanting the other and felt strongly about it"?
[14:30:10] gvaughn: has joined #elixir-lang
[14:30:27] dysfun: keywords for finding videos
[14:31:07] Saukk: has joined #elixir-lang
[14:31:13] dysfun: the idea was that the content was quite niche so if you added more than one word, you're indicating an intent to narrow down further
[14:31:18] nox: If there is any Italian who fancies Rust here, now that I'll do my first talk ever at RustLab in June.
[14:31:34] nighty-: has joined #elixir-lang
[14:31:35] dysfun: but the content set wasn't big enough to support more than one term that way at the start, so they were quite upset
[14:32:25] dysfun: and i'd argued against deploying a proper search engine because the project was already well behind schedule when i was parachuted in, so i got quite a lot of anger directed at me
[14:33:24] Avinash: has joined #elixir-lang
[14:33:34] Cthalupa: has joined #elixir-lang
[14:33:57] shmink: dysfun: yeah I've been leaning towards the AND. approach for the same reason. If you just want "football" you would search for that. IF it's both of the words I would assume that they are looking for pieces of content that have both of them. Turns my work into a bigger task though :|
[14:34:17] shmink: ACTION slams head on desk
[14:34:18] dysfun: haha, let me teach you a trick then
[14:35:04] shmink: dysfun: I'm all ears.
[14:35:23] dysfun: you can use sets to do the hard work for you
[14:36:01] dysfun: assuming your data are relatively small
[14:36:22] dysfun: (in number)
[14:36:55] samrose: has joined #elixir-lang
[14:37:17] shmink: which sets is that you're referring too sorry?
[14:37:35] samrose: has anyone ever done an HTTP CONNECT method tunnel to a phoenix application?
[14:37:48] shmink: yes the data is going to be relatively small. Sites that aren't going to be adding masses of content.
[14:38:44] dysfun: the things that are like maps?
[14:38:51] thurloat22: has joined #elixir-lang
[14:39:24] dysfun: i wrote about the trick quite in depth, but i can't seem to find it now
[14:39:32] thurloat22: has joined #elixir-lang
[14:39:49] dysfun: as an example, yes
[14:39:50] shmink: I'd love to have a read.
[14:40:21] samrose: hmm actually it looks like it is supported! https://github.com/phoenixframework/phoenix/blob/master/lib/phoenix/router.ex#L191
[14:44:39] mdbm: has joined #elixir-lang
[14:44:54] shmink: dysfun: any luck on finding that indepth trick post thingy majiggy?
[14:45:05] ericmj: phoenix supports all HTTP methods, but only some have the convenience macros
[14:46:53] samrose: ericmj: hmm ok thanks
[14:48:26] duane: has joined #elixir-lang
[14:48:45] dysfun: shmink: no. i found that i emailed it, but i did so as a pastebin link which is now expired :/
[14:49:43] shmink: dysfun: ah well no worries. Hopefully I work something out.
[14:52:03] shmink: I'm feeling lucky though. My bluetooth headphones have an aux jack. I decided to just plug my earphones into and now I have wireless wired earphones. My audio set up has evolved.
[14:52:16] shmink: ACTION my power has no limits
[14:52:35] shmink: ACTION has great power with great responsibilties
[14:52:44] samrose: ericmj: I guess I could understand why phoenix team did not make macros for HTTP CONNECT for instance.
[14:53:08] ericmj: there are macros for CONNECT, that's what you linked :)
[14:53:27] samrose: still learning elixir/phoenix over here
[15:01:14] samrose: ok, cool I see https://hexdocs.pm/phoenix/Phoenix.Router.html#summary
[15:03:16] gvaughn: has joined #elixir-lang
[15:05:16] johnhamelink: has joined #elixir-lang
[15:09:41] nineczar: has joined #elixir-lang
[15:12:25] md54short: has joined #elixir-lang
[15:14:07] paxis: has joined #elixir-lang
[15:15:45] jimmyrcom: has joined #elixir-lang
[15:16:57] shmink: Is there a function to check if another function exists?
[15:17:30] shmink: for example maybe something like `Function.exists?(Enum.map)` returns `true`
[15:18:25] ericmj: `function_exported?(Enum, :map, 2)`
[15:19:41] shmink: ericmj: perfect <3
[15:24:56] mandric: has joined #elixir-lang
[15:27:24] wsieroci: has joined #elixir-lang
[15:35:08] shmink: ericmj: I'm struggling to get it work for my needs. `function_exported?(Profiles.get, :member?, 1)
[15:35:42] shmink: The error keeps assuming I'm looking for `Profiles.get/0`
[15:36:47] shmink: I've also looked at `is_function` with no luck either. I'm surprised it's not actually `is_function?` instead as it returns a boolean.
[15:38:58] shmink: for `function_exported?` from the docs example it looks like it checks if there is ANY function with a certain arity. But the description mentions a function specifically.
[15:39:04] josevalim: Profiles.get is already running a function
[15:39:58] josevalim: Elixir is not assuming anything, there is literally a Profiles.get in your code
[15:40:14] josevalim: Elixir is not like JS where Foo.bar returns a function
[15:42:58] Gazler: shmink: What is your function called?
[15:43:45] shmink: gazler: Profiles.get
[15:44:21] shmink: I think using Profiles.__info__(:functions) will work for me and just check my `get` function is in there will do the trick.
[15:44:22] Gazler: `function_exported?(Profiles, :get, 0)`?
[15:45:14] shmink: ACTION high-fives gazler
[15:45:48] Gazler: What did you think (..., :member?, 1) did?
[15:46:44] Gazler: Or I guess a better question is why did you end up where you did with `function_exported?(Profiles.get, :member?, 1)` - maybe there's a documentation PR in there somewhere.
[15:46:47] shmink: Essentially, that it will look to see, is that a function that exists.
[15:47:13] shmink: Yeah I'll go ahead and do that.
[15:47:53] shmink: Also, how come is_function doesn't end with `?`, it returns a boolean right?
[15:47:59] shmink: Isn't that the general rule?
[15:48:14] Gazler: Yeah, except when it is allowed in a guard.
[15:48:20] Gazler: Where is_* is used
[15:48:51] shmink: oh yeah, that must have flew over my head.
[15:49:27] Gazler: https://github.com/elixir-lang/elixir/blob/master/lib/elixir/pages/Naming%20Conventions.md#is_-prefix-is_foo
[15:54:20] lexmag: has joined #elixir-lang
[15:54:43] shmink: gazler: aaah now the docs make sense, I thought that atom `:member?` was simply an option that was passed as opposed to an actual function.
[15:55:21] shmink: I don't know how I didn't see it before but I'll do a PR with something perhaps more unique to avoid confusion?
[15:57:14] Gazler: Sure, if it threw you, it might throw others too.
[15:57:23] mandric: has joined #elixir-lang
[15:59:03] wonko7: has joined #elixir-lang
[15:59:21] Avinash: has joined #elixir-lang
[16:00:32] davidw__: has joined #elixir-lang
[16:04:33] milisarge: has joined #elixir-lang
[16:14:52] lexmag: has joined #elixir-lang
[16:16:53] mandric: has joined #elixir-lang
[16:25:07] mbuf: has joined #elixir-lang
[16:41:18] mandric: has joined #elixir-lang
[16:53:48] wsieroci: has joined #elixir-lang
[16:55:58] wsieroci_: has joined #elixir-lang
[16:56:09] mandric_: has joined #elixir-lang
[17:00:18] assemblyman: has joined #elixir-lang
[17:08:04] Zarathu: micmus: this PersistentEts lib you made is amazing
[17:08:09] toothfairy_: has joined #elixir-lang
[17:09:20] Zarathu: mind bumping the hex version though?
[17:15:35] defstryker: has joined #elixir-lang
[17:28:21] ariedler_: has joined #elixir-lang
[17:32:09] ariedler_: has joined #elixir-lang
[17:40:04] thurloat: can a genserver created with start_child send a message to its parent?
[17:40:16] thurloat: or would the parent pid have to be passed in via init?
[17:50:26] mercxry: has joined #elixir-lang
[18:01:24] hypercore: guys how do you recommend implementing comments?
[18:01:45] gamache: hypercore: how do you mean "implementing"?
[18:01:52] lexmag: has joined #elixir-lang
[18:02:37] hypercore: gamache: as in is there a well-known package that people use for this, or do most just build it from scratch?
[18:03:18] gamache: Oh, do you mean like comments on a blog? I assumed you meant code comments, which I implement using trusty ol' #
[18:03:53] Nicd-: my suggestion: don't bother, use something like Disqus instead :P
[18:04:28] mercxry: Yeah Disqus will do it, then if you get pissed at it, you can implement comments by yourself later
[18:06:29] hypercore: gamache: comments like on reddit
[18:06:38] Nicd-: I use Disqus because I don't want to deal with spam. of course my comments are held hostage in their service, but it's a trade off
[18:06:54] hypercore: only problem is i want to be able to make topics/threads, and i can't with disqus
[18:07:34] Nicd-: you want the users to be able to make threads? or just you?
[18:11:34] jeffro: has joined #elixir-lang
[18:15:07] mercxry: Can I sync a mnesia db to multiple instance of a project?
[18:15:25] thurloat: meh since i'm using a single supervisor to parent these genservers i'll just send(modulename, :msg)
[18:16:15] mercxry: These instances are on different servers
[18:17:13] hypercore: Nicd-: the users
[18:17:23] Nicd-: that's a forum then
[18:17:43] hypercore: Nicd-: hmmm honestly i'm not totally sure on this part, maybe one comment section per topic is enough
[18:17:54] Nicd-: there is this at least, dunno how complete it is: https://www.firestormforum.org/
[18:18:05] Nicd-: if you yourself make the "topics", then it sounds more like a blog to me :P
[18:20:49] wsieroci: has joined #elixir-lang
[18:24:54] ankhers: There is an ecto function that takes the output of Ecto.Adapters.SQL.query/4 and gives you a list of schemas. What is that function? I can't seem to find it right now.
[18:29:57] hypercore: Nicd-: looks pretty good, might end up using this. thanks!
[18:30:36] hypercore: guys, i'm trying to use an npm package in my app (1.3 w brunch), but the object isn't being defined)
[18:30:52] ankhers: Which package?
[18:31:49] Net: Ankhers: https://hexdocs.pm/ecto/3.0.7/Ecto.Repo.html#c:load/2 maybe
[18:32:47] ankhers: Net: Thanks. I believe that is it.
[18:33:26] squalloster: has joined #elixir-lang
[18:56:08] drincruz: has joined #elixir-lang
[18:57:09] dimitarvp: has joined #elixir-lang
[19:08:30] toothfairy_: has joined #elixir-lang
[19:11:07] lauromoura_: has joined #elixir-lang
[19:20:21] hypercore: Ankhers:figured it out, the package didn't have a dist/ directory
[19:27:36] za1b1tsu: has joined #elixir-lang
[19:30:24] jeffro: has joined #elixir-lang
[19:34:20] keden: has joined #elixir-lang
[19:36:58] mandric: has joined #elixir-lang
[19:38:54] mandric: has joined #elixir-lang
[19:39:23] assemblyman: has joined #elixir-lang
[19:50:38] mandric: has joined #elixir-lang
[19:53:01] thurloat: I'm having trouble figuring out where a receive block can live
[19:53:43] thurloat: I can't do a send() to a genserver, since it'll use handle_call instead of the receive handling it
[19:54:10] thurloat: all of the examples I've found seem to use the iex shell as the receiver
[19:57:12] mandric: has joined #elixir-lang
[19:57:51] k1nd0f: has joined #elixir-lang
[20:03:59] jeffro: has joined #elixir-lang
[20:08:01] k1nd0f: has joined #elixir-lang
[20:15:19] DavidAntaramian: thurloat: A receive block can technically be in any code; it causes the process running that code to check the message box based on the receive block you've given it (possibly preventing the process from moving forward at all).
[20:17:37] mercxry: has joined #elixir-lang
[20:18:06] DavidAntaramian: Normally, you don't use a receive block in a GenServer, since a GenServer abstracts the process messaging behavior.
[20:18:38] thurloat: yeah i didn't think so, it was just logically sort of attached to that module
[20:19:53] thurloat: i'm finding it hard to think through where the receive block belongs such that it can be `send`'d from another part of the system
[20:21:03] thurloat: could you just supervise a module with a single function with a receive block in it? then send(modulename, :message) and have the receive block find it?
[20:21:26] thurloat: or does it need to be spawned dynamically? the whole picture just isn't super clear for me
[20:24:55] mandric: has joined #elixir-lang
[20:25:23] DavidAntaramian: There's a lot to unpack in that question alone, but it might help to step back and recognize that modules and processes are completely separate. A process is an isolated unit of execution that runs the instructions in modules.
[20:27:19] thurloat: DavidAntaramian i completely follow that, what I'm looking to accomplish is have a single process set up (supervised?) that has a function with a receive block in it. used in a similar pattern to Task.await
[20:28:45] DavidAntaramian: If you use a DynamicSupervisor and have the function that your process calls enter a receive block, yes, that should accomplish what you want
[20:29:49] thurloat: the plumbing behind System.do_cmd for example. https://github.com/elixir-lang/elixir/blob/master/lib/elixir/lib/system.ex#L775 is what confuses me, I'm not sure what the plumbing is behind it.
[20:29:50] DavidAntaramian: Although actually a DynamicSupervisor still requires an OTP-compliant process, so even that might be difficult to get what you want. Does it absolutely need to be supervised?
[20:30:32] thurloat: not at all, but I'd essentially like a singleton to hook into
[20:31:42] thurloat: and with my limited experienc,e that usually means using a genserver or something supervised
[20:33:17] DavidAntaramian: do_cmd uses Erlang ports which rely on port drivers. In that case, outputs from the spawned executable are captured and turned into messages which are returned to the process that originally opened the port.
[20:38:30] ur5us: has joined #elixir-lang
[20:40:32] toothfairy_: has joined #elixir-lang
[20:45:26] thurloat: DavidAntaramian maybe what I'm doing can be accomplished without a receive block in the end. I have a genserver that I need to wait until it receives a message. The plan was to have the running genserver do a send() to whatever is running the receive block -- but maybe there's a different approach to blocking using the genserver instead?
[20:47:40] mahmudov: has joined #elixir-lang
[20:49:47] DavidAntaramian: thurloat: Your GenServer isn't going to be doing anything until it receives a message
[20:50:02] thurloat: thats what I'm waiting for
[20:50:29] DavidAntaramian: Sorry, I read the second half of that wrong
[20:52:19] DavidAntaramian: I still think you could (and probably should) accomplish it without using an explicit receive block. It depends on the business logic that you are running. It's not common but still possible to enter a receive block inside of a `handle_*` callback.
[20:53:07] DavidAntaramian: You just want to be careful in a situation where the GenServer process messages _itself_
[20:53:52] DavidAntaramian: I also think I still misunderstand the problem. Sorry about that
[20:53:56] netrino: has joined #elixir-lang
[20:54:23] thurloat: no problem, I can tell I'm not articulating it very well
[20:58:58] thurloat: DavidAntaramian I think that last tidbit helped though, going to try and hack it in quick
[21:01:54] hahuang65: has joined #elixir-lang
[21:04:01] thurloat: DavidAntaramian you are a saint
[21:04:19] hahuang65_: has joined #elixir-lang
[21:04:21] thurloat: thanks so much, got it all figured with an inline receive and self() passed to the genesrver on init
[21:19:37] hahuang65: has joined #elixir-lang
[21:21:10] ankhers: What are my options to find out which query/process/function is holding a connection for more than 15 seconds? I'm just getting crash reports, but nothing is really sticking out.
[21:21:20] keden: has joined #elixir-lang
[21:29:24] toothfairy_: has joined #elixir-lang
[21:30:30] ankhers: Okay, is there an option I can pass Repo.all to allow owning a connection for longer than 15s?
[21:32:40] OliverMT: I think its timeout: <integer of milliseconds>
[21:32:41] ankhers: I'm only seeing the timeout option, which does nothing.
[21:32:51] ankhers: Nothing in this case*
[21:32:59] OliverMT: works for me, so I dunno
[21:35:17] ankhers: I also don't understand why this process is holding onto the connection for so long. It is complaining on a simple query that should only return MAYBE a dozen records, simple query too.
[21:39:52] ericmj: what error do you get?
[21:41:18] ankhers: Postgrex.Protocol (#PID<0.441.0>) disconnected: ** (DBConnection.ConnectionError) owner #PID<0.443.0> timed out because it owned the connection for longer than 15000ms
[21:42:18] ericmj: are you inside a transaction?
[21:42:21] praveenperera: has joined #elixir-lang
[21:45:59] nox: Aren't we all?
[21:49:17] mandric_: has joined #elixir-lang
[21:51:34] netrino: has joined #elixir-lang
[21:51:56] ankhers: If it makes a difference, I am in a couple nested Enum.each. But I don't really think that would matter. No streams, all done with Repo.all.
[21:55:39] ankhers: This project is still on ecto 2.1, if that makes a difference too.
[22:06:44] OliverMT: ACTION commits nox
[22:07:04] OliverMT: time to show your code in a gist I think anh
[22:07:08] OliverMT: oh, he quits
[22:07:16] OliverMT: no, Ankhers
[22:07:22] OliverMT: I cant spell apparently
[22:08:31] ankhers: Yeah, Let me try to come up with a project that has the same issue.
[22:08:38] nox: OliverMT: You can't spell?
[22:08:43] nox: Maybe you were silenced!
[22:08:44] OliverMT: I bad at speling
[22:10:12] ariedler_: has joined #elixir-lang
[22:18:31] haste: writy hard
[22:19:54] hypercore: anyone implementeda comment system here?
[22:24:43] orbyt_: has joined #elixir-lang
[22:26:11] aalmazan: has joined #elixir-lang
[22:29:41] __charly__: has joined #elixir-lang
[22:50:26] craigp_: has joined #elixir-lang
[23:10:55] duane: has joined #elixir-lang
[23:12:01] ariedler: has joined #elixir-lang
[23:12:36] movonw: has joined #elixir-lang
[23:14:04] ariedler_: has joined #elixir-lang
[23:26:49] toothfairy_: has joined #elixir-lang
[23:32:51] ariedler: has joined #elixir-lang
[23:49:41] Cloudflare: hypercore: in general, yes
[23:49:44] Cloudflare: Not in Elixir though
[23:59:20] duane: has joined #elixir-lang