<    June 2018     >
Su Mo Tu We Th Fr Sa  
                1  2  
 3  4  5  6  7  8  9  
10 11 12 13 14 15 16  
17 _1_8 19 20 21 22 23  
24 25 26 27 28 29 30
00:08 Electrux joined
00:14 alexband joined
00:16 jeffro joined
00:18 Electrux joined
00:20 <jer> gem, yes, what's the question?
00:23 duane joined
00:24 <gem> jer: sorry for the late responce. I've been trying out alcove, prx and erlxc for working with lxc in elixir/erlang. I've been having a LOT of permission errors while using the libs. I set up all the sudoers files,ut for some reason, I still get errors. Do you know why/or how use lxc in elixir in general?
00:25 weird_error joined
00:25 <nickjj> gem, i've had success running phoenix under alpine, but that was through docker not lxc
00:28 <gem> nickjj: Hmm, I was thinking about using docker, but for my uses (distributing tasks throughout multiple computers), I feel like docker is not suited for the task - I have some weird dependency sharing and stuff
00:29 Electrux joined
00:30 akeating joined
00:31 dessm joined
00:33 <jer> gem, i don't use lxc, but docker
00:33 <jer> but agree with what nickjj said, alpine works good
00:33 <gem> jer: thanks, I'll look into alpine. Looks well made/documented
00:34 <dessm> Hi there. I'm working through some exercises and have come across a case where I need to check whether the tail of a list is '[]'. At the moment I'm simply using an 'if bla == [] do...', but it feels a bit clunky. Does anyone know of a better way to do this and also why pattern matching won't work for something like [a, []] = [1, []]?
00:35 alexband joined
00:35 <gem> dessm: [hd|tl] = lst
00:36 <nickjj> gem, it's one of the better minimal linux distros for containers
00:36 <nickjj> most things just work it seems, but that's in the context of web development
00:37 <dessm> gem, at the moment I'm using [hd|tl] and then use the if to check whether tl == [].
00:37 <nickjj> jer, speaking of docker, how much experience do you have dockerizing elixir apps?
00:37 <gem> nickjj: For me, I'm doing more of a distributed devolopment type thing though
00:37 <jer> nickjj, quite a bit, we've got 8 different production elixir apps running inside docker
00:38 <nickjj> jer, i just open sourced a repo that has a few popular dockerized web app examples and i just included phoenix today
00:38 <jer> gem, distributed in what sense?
00:38 <nickjj> would you mind looking at an issue i'm having when it comes to taming mix deps.get?
00:38 <jer> nickjj, neat; none of ours are phoenix apps
00:38 <jer> sure
00:39 <nickjj> https://github.com/nickjj/docker-web-framework-examples/issues/1
00:39 <nickjj> the phoenix app is at https://github.com/nickjj/docker-web-framework-examples/tree/master/phoenix
00:40 <gem> jer: I wrote something that brakes up a python, js, ruby, etc script into various small tasks which are then exec'd on many computers
00:40 Electrux joined
00:40 <jer> nickjj, so are you shipping elixir code in a docker container and then doing a deps.get and conceivably a run to run it?
00:41 <gem> dessm: maybe try a case statement? Im not sure
00:41 <jer> gem, sounds a lot like one of my production applications :) go on
00:41 <nickjj> jer, in development, you would typically mount in your app code through a volume
00:42 <nickjj> so if let's say your dockerfile does a deps.get, that gets built into the image -- but then if you volume mount in your app code, your old mix.lock is going to override what was built
00:42 <gem> jer: Ohh really? I'm a scientist who usually lacks proper resources for many calculations. So I thought, why not steal it from others **devil face**
00:42 <jer> nickjj, ah gotcha... i've not seen this kind of issue, we build our code inside a docker multistage pipeline, meaning we copy files into a container, build the code (including fetching dependencies) and then release it (i.e., use distillery to produce a tarball, which we then copy into another container and that end result of the distillery release, is what we deploy)
00:42 <nickjj> and running deps.get every time the container starts is grueling
00:42 vovs03 joined
00:42 <nickjj> so i hacked around that by only running it if there's no mix.lock file
00:43 <nickjj> yeah it sounds like you have a prod set up where you never bind mount in your app code
00:43 <gem> jer: what are you doing?
00:43 <jer> gem, so i'm the vp of engineering at a company called metis machine, we do a machine learning deployment system; much of our backend systems are elixir apps.
00:43 <jer> nickjj, yeah app code is never distributed in a container that leaves the build system at all
00:45 <gem> jer: looks intresting. Do you use containers/vm's for the prod project?
00:46 <jer> gem, yes
00:48 <gem> jer: Nice, I may just use your product in the future!
00:48 <jer> all of our prod elixir apps are built essentially the same way -- we've got some code that we've written to make building and deploying easier, but it's effectively a wrapper around docker
00:48 <jer> gem, sure, feel free to reach out whenever =]
00:49 <gem> jer: Cool! I love this work. Thanks for all the help
00:49 Electrux joined
00:49 <gem> nickjj: Same with you
00:49 <nickjj> np, good luck
00:50 <Nicd-> this chat is too damn happy
00:52 DSM joined
00:53 cagomez joined
00:53 nighty- joined
00:58 Electrux joined
00:59 jeffro joined
01:02 <jer> nickjj, no we're not, goddamnit!
01:02 <jer> err, my own damned fault for trying to make a joke, i typo the nickname =D
01:02 <jer> Nicd- ^
01:03 <nickjj> so many fails!
01:09 Electrux joined
01:10 <sms> Why when I query a many-to-many, I'll go query = from p in Category, preload: [:posts], select: [:name, posts: [:id, :title]], but the query keeps returning with an empty posts list
01:14 jeffro joined
01:19 Electrux joined
01:31 harfangk joined
01:36 alexband joined
01:38 TheNet joined
01:44 tomterl_ joined
01:46 sihui_io joined
01:56 Electrux joined
02:01 stephen_m joined
02:06 Electrux joined
02:15 Electrux joined
02:25 iamvery joined
02:26 Electrux joined
02:28 stephen_m joined
02:36 Electrux joined
02:44 dormiens joined
02:46 Electrux joined
02:50 dogweather joined
02:51 Electrux joined
02:57 sevenseacat joined
02:57 fantomik joined
03:03 dogweather joined
03:11 stephen_m joined
03:13 theWhisper_ joined
03:20 dogweather joined
03:25 sihui_io joined
03:28 <bind> Nicd- ... happy ... pff ... just spend 6 hours retrofitting a drupal theme :D talking about happy
03:29 <bind> luckily I have some elixir work just around the corner again
03:29 <bind> :)
03:36 <sms> No? No input on querying a simple many-to-many association
03:42 dogweather joined
03:45 jeffro joined
03:48 milisarge joined
03:48 kapil___ joined
03:50 dogweather joined
03:55 <Nicd-> bind: I only have Elixir on free time
03:56 Electrux joined
03:57 elixir-lang-repo joined
03:57 <elixir-lang-repo> [elixir] scomma opened pull request #7757: Fix DynamicSupervisor example code referencing a non-existent variable (master...patch-1) https://git.io/vhPPI
03:57 elixir-lang-repo left
04:02 stephen_m joined
04:09 <sms> So why aren't my associated categories showing up
04:09 <sms> When I'm preloading them
04:09 <sms> And queurying for them
04:09 <sevenseacat> without seeing your code, its impossible to say.
04:10 <sms> Why when I query a many-to-many, I'll go query = from p in Category, preload: [:posts], select: [:name, posts: [:id, :title]], but the query keeps returning with an empty posts list
04:17 lessless joined
04:28 stephen_m joined
04:30 akeating joined
04:45 iamvery joined
05:01 stephen_m joined
05:03 iamvery joined
05:05 sihui_io joined
05:06 sihui_io joined
05:13 _arkgil joined
05:14 mcspud joined
05:16 l14n joined
05:22 za1b1tsu joined
05:40 Hanonim joined
05:44 codestorm joined
05:46 jeffro joined
05:48 Electrux joined
05:50 iamvery joined
06:03 TinkerT joined
06:06 jerel joined
06:07 stephen_m joined
06:07 jegaxd26 joined
06:11 milisarge joined
06:19 zlei1 joined
06:23 ethan_ joined
06:27 <ethan_> In phoenixframework is there way to find the ip address a socket is getting created from? I see that conn has remote_ip field but its not exposed in user_socket.ex
06:32 jegaxd26 joined
06:34 iamvery joined
06:40 hauleth joined
06:41 <mahmudov> https://hexdocs.pm/ecto/getting-started.html#test-environment-setup below link i cant reach
06:41 <mahmudov> The test environment setup is described: https://hexdocs.pm/ecto/Testing%2520with%2520Ecto.md
06:44 PragTob joined
06:44 meh` joined
06:48 iamvery joined
06:49 DeadTrickster joined
06:50 elixir-lang-repo joined
06:50 <elixir-lang-repo> [elixir] josevalim closed pull request #7757: Fix DynamicSupervisor example code referencing a non-existent variable (master...patch-1) https://git.io/vhPPI
06:50 elixir-lang-repo left
06:52 betawaffle joined
06:53 akeating joined
06:53 milisarge joined
06:57 hypercore joined
07:03 dogweather joined
07:08 codestorm joined
07:13 Cthalupa joined
07:17 harfangk joined
07:17 stephen_m joined
07:18 dogweather joined
07:18 jegaxd26 joined
07:24 Phylock joined
07:28 dogweather joined
07:32 jegaxd26 joined
07:33 akeating joined
07:37 zakora joined
07:40 tuacker joined
07:46 gazler joined
07:47 codestorm joined
07:47 jeffro joined
07:55 work_ joined
08:05 goofansu joined
08:06 toothfairy_ joined
08:10 BitGonzo joined
08:13 goofansu joined
08:13 goofansu joined
08:19 akeating joined
08:25 akeating joined
08:32 Zaab1t joined
08:36 stephen_m joined
08:36 lexmag joined
08:36 iamvery joined
08:37 dogweather joined
08:40 codestorm joined
08:42 sihui_io joined
08:43 iamvery joined
08:59 akeating joined
09:01 PragTob joined
09:06 Hanonim joined
09:17 Guest9104 joined
09:26 _arkgil joined
09:28 netrino joined
09:30 stephen_m joined
09:32 Hanonim joined
09:33 elixir-lang-repo joined
09:33 <elixir-lang-repo> [elixir] michalmuskala opened pull request #7758: Remove rebar as a build dependency (master...mm/no-rebar) https://git.io/vhPhK
09:33 elixir-lang-repo left
09:35 proteusguy joined
09:40 jegaxd26 joined
09:48 jeffro joined
09:48 TarVanimelde joined
09:54 kuzyn joined
09:56 kapil___ joined
10:07 jerel joined
10:07 iamvery joined
10:14 averell joined
10:17 jeffro joined
10:20 iamvery joined
10:28 averell joined
10:28 codestorm joined
10:32 iamvery joined
10:34 KeyJoo joined
10:35 KeyJoo joined
10:47 _arkgil joined
10:53 iamvery joined
10:58 iamvery joined
11:01 _arkgil joined
11:03 dogweath_ joined
11:06 dogweath_ joined
11:08 _arkgil joined
11:17 _arkgil joined
11:21 dogweather joined
11:22 codestorm joined
11:26 stephen_m joined
11:32 PragTob joined
11:37 dogweather joined
11:45 _arkgil joined
11:46 duane joined
11:49 akeating joined
11:53 fmcgeough joined
11:56 demio joined
11:57 cagomez joined
11:58 stephen_m joined
11:59 akeating joined
12:01 Jetimon joined
12:08 dogweather joined
12:08 KeyJoo joined
12:11 elixir-lang-repo joined
12:11 <elixir-lang-repo> [elixir] michalmuskala closed pull request #7758: Remove rebar as a build dependency (master...mm/no-rebar) https://git.io/vhPhK
12:11 elixir-lang-repo left
12:16 alexband joined
12:16 codestorm joined
12:17 stephen_m joined
12:17 fxer joined
12:18 jeffro joined
12:20 lexmag joined
12:21 dogweather joined
12:23 _arkgil joined
12:26 __charly__ joined
12:33 dogweather joined
12:41 akeating joined
12:47 nighty- joined
12:47 erlehmann joined
12:48 umpc joined
12:51 _arkgil joined
12:53 akeating joined
13:03 jerel joined
13:03 milisarge joined
13:04 dogweather joined
13:04 philShaughnes joined
13:04 akeating joined
13:05 lexmag joined
13:07 duane joined
13:09 kapil___ joined
13:10 <kapil___> i have `:material_type` i want to convert it to `:material_type_id`
13:15 akeating joined
13:15 mitchellhenke joined
13:16 dogweather joined
13:18 <kapil___> sorry. i got it `Atom.to_string(:foo)`
13:30 dogweather joined
13:34 stephen_m joined
13:37 jeffro joined
13:39 iAmerikan joined
13:41 jeffro joined
13:43 dogweather joined
13:49 lexmag joined
13:55 maxbeizer joined
13:57 dimitarvp joined
14:00 philShaughnes joined
14:02 zakora joined
14:04 codestorm joined
14:12 inhortte joined
14:12 weird_error joined
14:13 dogweather joined
14:14 adkron joined
14:30 dogweather joined
14:37 nineczar joined
14:43 TheNet joined
14:47 <kapil___> i cant modify variable inside annonmyous function.
14:48 dogweather joined
14:48 <kapil___> I have function : `parameters_default(query, args) do` i cant modify query:
14:48 <kapil___> ```Enum.each(base_table_columns(), fn i ->
14:48 <kapil___> ..
14:48 <kapil___> query = where(query, ^where_argument)
14:48 <kapil___> ...
14:48 <kapil___> ```
14:52 <jeregrine> kapil___: you could Enum.reduce over the query
14:56 dogweather joined
14:57 take_flight joined
15:00 _arkgil joined
15:03 DSM joined
15:08 dogweather joined
15:09 <kapil___> jeregrine: thanks
15:10 <jeregrine> kapil___: no prob
15:10 <kapil___> jeregrine: i am reading this article: https://medium.com/everydayhero-engineering/elixir-variable-rebinding-342c5d0fd961
15:10 <jeregrine> yea?
15:10 <kapil___> thanks
15:11 <jeregrine> I find that if I'm reaching for Enum.each then MAYBE I need to rethink what I'm up too
15:11 <kapil___> thanks
15:15 <Nicd-> modifying the query in the each doesn't work because the function can't affect `query`'s value outside the function
15:16 <kapil___> can anyway i modify it directly?
15:16 <Nicd-> no
15:16 <kapil___> ok i will use Enum.reduce then
15:16 <Nicd-> you need to reduce to create a new query from the old one and return it
15:17 <kapil___> thanks
15:18 cagomez joined
15:22 tuacker joined
15:26 <dysfun> no function clause matching in Plug.HTML.html_escape/1 # how does Phoenix.Controller.redirect even cause this?
15:26 <gazler> dysfun: It writes the HTML for a 301
15:27 <gazler> "You are being redirected to..."
15:27 <dysfun> how could that fail?
15:27 <gazler> Plug.HTML not available?
15:27 <gazler> https://github.com/phoenixframework/phoenix/blob/eb5913ef2f31201ad727780e169c07855a5f4116/lib/phoenix/controller.ex#L394
15:27 <dysfun> well plug is there, so i don't see how Plug.HTML could not be
15:28 <gazler> Oh wait - I was confused with Phoenix.HTML, yeah, Plug.HTML should definitely be there.
15:28 <gazler> What are you passing to redirect?
15:28 <dysfun> let me dump it out to check it's correct
15:29 <gazler> I'd guess you aren't passing a binary to redirect
15:29 <dysfun> that's my guess too. i'm getting it from a library
15:29 <micmus> FunctionClauseError should have the value in a stacktrace
15:30 <micmus> (or have the extended error elixir provides with values pretty printed outside stacktrace)
15:31 dogweather joined
15:31 <gazler> Which library dysfun?
15:31 DSM joined
15:31 <dysfun> it's OAuth2
15:32 <dysfun> and apparently authorize_url does not return a binary...
15:32 <gazler> Which oauth2 library?
15:33 <dysfun> 'oauth2'
15:33 <dysfun> https://hexdocs.pm/oauth2/OAuth2.Strategy.AuthCode.html#authorize_url/2
15:34 <dysfun> i'm dumping the return of that and it's a...client struct
15:34 <gazler> authorize_url(...).authorize_url
15:35 <dysfun> yeah, that was my guess too, i'm just getting really confused by this library
15:37 fmcgeough joined
15:38 <dysfun> well, now i get a 404 on github, which is progress of a sort :)
15:43 nineczar joined
15:43 demio joined
15:44 dogweather joined
15:48 icecreamcohen joined
15:52 codestorm joined
15:54 internetfriend joined
15:57 demio joined
15:58 DeadTrickster_ joined
16:05 lauromoura_ joined
16:08 lexmag joined
16:11 dogweather joined
16:14 akeating joined
16:15 akeating joined
16:18 theWhisper_ joined
16:19 <OvermindDL1> o.O
16:19 <OvermindDL1> 404 on github?
16:24 dogweather joined
16:24 DSM joined
16:29 mitchellhenke joined
16:35 akeating joined
16:37 dogweather joined
16:38 nixpulvis joined
16:40 <nixpulvis> This might not be the right place to ask this but... I'm having trouble reproducing reliably, and thus fixing a bug. `exited in: :gen_server.call(...) ** (EXIT) time out`
16:40 <nixpulvis> Seems like it's timing out talking to the DB, but there's no reason I can see for that.
16:40 <nixpulvis> This is a pheonix app fwiw.
16:41 <chrismccord> nixpulvis THe timeout is the caller calling the server
16:42 <chrismccord> if the genserver is doing potentially long-running work in one of it's handlers, then that will block all other callers
16:42 <nixpulvis> there's no reason it's long running tho.
16:42 <chrismccord> so if you are hitting this server under any load, check first that you aren't exposing a betterneck
16:42 <nixpulvis> it's a quick query to the DB
16:42 <nixpulvis> on a local env
16:43 <chrismccord> nixpulvis "long running" could be something that reasonably fast, but imagine hitting it under load
16:43 <nixpulvis> my coworkers on macOS don't have this issue, I'm on linux.
16:43 <nixpulvis> chrismccord: as I said Im seeing this locally without any load.
16:43 <chrismccord> if 100 concurrency callers hit the server and the callback takes 50ms, you would be approaching the 5s timeout
16:43 <chrismccord> nixpulvis : have you isolated the exact call int he stacktrace
16:44 <chrismccord> what it is telling you is the call to GenServer.call(pid, :wahteer) is taking greater than 5s
16:44 <fishcakez> There's an issue open about a potential bug in gen tcp that's causing connection processes to hang forever
16:44 <fishcakez> So it's possible this is same thing
16:44 <chrismccord> nixpulvis : can you show more of the stacktrace?
16:44 <nixpulvis> sure one sec.
16:44 <chrismccord> what server is timing out? What message?
16:45 <nixpulvis> need to relog IRC on my laptop
16:45 nixpulvi1 joined
16:45 <nixpulvi1> Seems like DBConnection.execute(conn, query, params, opts) is in the stacktrace
16:46 codestorm joined
16:47 <fishcakez> It's likely the OTP bug I mentioned above where gen tcp hangs forever
16:47 <nixpulvis> do you have a link?
16:47 <fishcakez> But as Chris said you should show full stacktrace
16:47 <fishcakez> Well the first two entries on the stack would be enough likely to see where in the DB layer
16:48 <nixpulvis> fishcakez: yea sorry, the way this is setup atm I only get stackframes in the web UI, and they are hard to copy.
16:49 <kapil___> vey basic question: how to skip some values in `Enum.map`
16:49 <tristan__> fishcakez: in jira?
16:50 <zakora> The Elixir documentation states "There are 6 callbacks required to be implemented in a GenServer", but 7 callbacks are listed under "GenServer". Which one is not required? (just out of curiosity)
16:50 <nixpulvis> fishcakez: the top of the stacktrace is an error in poolboy inside a try/catch.
16:50 <fishcakez> nixpulvis: show exact
16:51 nixpulvi1 joined
16:51 <nixpulvi1> :poolboy.checkin(pool, worker)
16:51 <nixpulvi1> error
16:51 <nixpulvi1> catch
16:51 <nixpulvi1> :exit, reason ->
16:51 <nixpulvi1> :poolboy.checkin(pool, worker)
16:51 <micmus> kapil___: probably the simplest way might be to use `for` - `Enum.map(col, fun)` is the same as `for x <- col, do: fun.(x)` and there you can add filters - `for x <- col, fooable?(x), do: fun.(x)`
16:51 <nixpulvi1> exit(reason)
16:51 <nixpulvi1> end
16:52 <nixpulvi1> end
16:52 <nixpulvi1> end
16:52 <fishcakez> nixpulvis: the stacktrace, not the code
16:52 <nixpulvis> fishcakez: ok, brb figuring out how to enable those in my server :P
16:52 <fishcakez> Otherwise from what you said it sounds like what chrismccord said, and not this bug
16:52 <kapil___> micmus: thanks
16:53 <nixpulvis> fishcakez: all he said was my server was overloaded :/ which it's not.
16:53 <nixpulvis> am I missing something
16:53 <fishcakez> nixpulvis: no idea
16:54 <fishcakez> You have provided not enough information except to reach what Chris said
16:55 <nixpulvis> working on a stacktrace for you.
16:56 DSM joined
16:58 akeating joined
16:59 <nixpulvi1> No idea why I can't get the full stacktrace in my `mix phx.server` but.... ** (exit) exited in: :gen_server.call(#PID<0.342.0>, {:checkout, #Reference<0.882523631.3617587206.21474>, true, 15000}, 5000)
16:59 <nixpulvi1> ** (EXIT) time out
16:59 lexmag joined
17:00 <nixpulvi1> Here have a stacktrace image, https://imgur.com/a/hgcw3bZ
17:00 <josevalim> fishcakez: i am wondering if it is the same issue people are seeing on fedora?
17:00 <josevalim> fishcakez: the one in db_connection
17:04 <nixpulvis> josevalim: FWIW I've made a barebones app using the same database, and it doesn't seem to have this issue :/
17:04 jerel joined
17:04 <josevalim> nixpulvis: https://github.com/elixir-ecto/db_connection/issues/127
17:06 <nixpulvis> well that seems relevent, thanks.
17:07 <fishcakez> josevalim: from what nixpulvis said it looks no
17:07 <fishcakez> josevalim: I was also suggesting that bug and it is OTP bug, see my reply I just posted on there
17:07 <josevalim> fishcakez: "it looks so" or "it looks no"
17:07 <josevalim> ohhh
17:07 <josevalim> i see
17:09 <fishcakez> Yes looks so
17:09 <nixpulvis> Should I add myself to this thread? What system info would you want?
17:09 <fishcakez> We need to see the full exact error
17:09 <fishcakez> Your image isn't enough unfortunately
17:09 <nixpulvis> how do I get that?
17:10 <fishcakez> Console logs, or whatever is doing logging
17:10 <nixpulvis> yea, I already posted the 1 line I get in my logs.
17:10 <nixpulvis> I don't know why my logs aren't giving stacktraces.
17:10 <fishcakez> There should be multiple lines
17:11 <nixpulvis> nope, and `stacktrace_depth` is set to 20.
17:11 codestorm joined
17:11 <fishcakez> What do you use for logging?
17:12 <fishcakez> Oh I see it has error without stacktrace in logs
17:12 <nixpulvi1> config :logger, :console, format: "[$level] $message\n"
17:12 <fishcakez> I missed that one
17:12 <kapil___> micmus: ``` for i <- base_table_columns, do: fn i ->
17:12 <kapil___> val1_key = String.to_atom(i <> "_val1")```
17:12 <nixpulvi1> Sorry I'm new to the elixir/pheonix world, so this is painful atm.
17:12 <fishcakez> Can you post on that thread you get same error, and also call Process.info/1 on the process repoeted
17:12 <kapil___> micmus: how to filter if val1_key is `nil` or ""
17:13 <nixpulvi1> fishcakez: what system info should I post? OTP version, erlang version, elixir version...
17:13 dogweather joined
17:13 <fishcakez> nixpulvis: i.e. Process.info(pid(0, 342,0))
17:14 <fishcakez> where 0 342 0 are taken from #Pid<0.342.0>
17:14 <nixpulvi1> kk
17:15 <fishcakez> And Erlang/OTP version is only thing we should need apart from that. The Process.info/1 is to verify its same issue and the OTP version is to discover the scope of the bug :)
17:15 cagomez joined
17:15 <zakora> Is there a way to have 2 terminals talk to the same Elixir Application?
17:15 elasticdog joined
17:16 <zakora> Something like: 1. iex -S mix and 2. iex --connect -S mix
17:17 <zakora> If I run "iex -S mix" on two different terminals, they will each launch there own Application, which I am trying to avoid.
17:19 <micmus> zakora: start the first one using `iex --name "main@" -S mix` and then you can connect to the node remotely using `iex --name "debug@" --remsh "main@"`
17:20 <nixpulvis> wow why is it so hard to get the version of OTP/Erlang :/
17:20 HappMacDonald joined
17:20 <fishcakez> nixpulvi1: $ erl
17:20 <fishcakez> Erlang/OTP 20 [erts-9.2] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]
17:20 <fishcakez> ^ that is enough information
17:21 <HappMacDonald> Say, if I encounter a "elm-make: Type applications without concrete names should not get here." error, is there an easy way to check and see if it's a known issue already or anything?
17:21 <nixpulvis> ah nice, thanks
17:22 <kapil___> micmus: https://gist.github.com/kapilpipaliya/bd75a8905c890bdf95a632750c0ac674
17:22 <kapil___> how to add line 11 and 15 as a guard
17:23 <HappMacDonald> (woops nvm, wrong channel. hehe!)
17:23 <zakora> micmus, that worked perfectly, thanks!
17:32 dogweather joined
17:37 jerel joined
17:39 <kapil___> micmus: gist updated
17:46 mitchellhenke joined
17:49 dogweather joined
17:50 TheNet joined
17:50 jeffro joined
17:55 elasticdog joined
18:02 dogweather joined
18:04 TheNet joined
18:06 cagomez joined
18:09 jerel joined
18:09 milisarge joined
18:19 TheNet joined
18:24 squall joined
18:24 dogweather joined
18:28 wsieroci joined
18:28 Labu joined
18:29 <Labu> help
18:29 <Labu> oups
18:29 <Labu> sorry
18:30 erlehmann left
18:30 <OliverMT> ** (Postgrex.Error) ERROR 42P18 (indeterminate_datatype): could not determine data type of parameter $1
18:31 <OliverMT> no sign of it in stacktrace as I can see
18:31 <OliverMT> ohhh it's a GET, nevermind me rubber duckies
18:31 Labu joined
18:33 <dysfun> OliverMT: hey this is leather, not rubber
18:33 jerel joined
18:34 _arkgil joined
18:36 stephen_m joined
18:36 dogweather joined
18:41 TheNet joined
18:49 DSM joined
18:52 Phylock joined
18:55 aalmazan joined
18:59 _arkgil joined
19:04 Zaab1t joined
19:07 Hanonim joined
19:09 zakora joined
19:09 _arkgil joined
19:10 <fishcakez> nixpulvis: yes you effected too
19:11 codestorm joined
19:15 _arkgil joined
19:15 <nixpulvis> fishcakez: well at least now I can sleep better knowing I'm not just haunted. Thanks.
19:20 akeating joined
19:24 cagomez joined
19:27 DSM joined
19:30 <nickjj> does anyone know if you can configure mix's build_path and deps_path through mix config options or env variables?
19:31 <micmus> nickjj: you can configure them in mix.exs and since mix.exs is executable, you can run arbitrary code in there including, for example, System.get_env
19:31 <nickjj> micmus, but can it be done outside mix.exs? i see an env variable for the build path but not the deps path
19:32 <micmus> why do you want to do it outside mix.exs?
19:33 <nickjj> i'd like to customize both the build and deps path inside of a dockerfile , without having to always remember to customize the mix.exs file for every new project i make
19:33 <gamache> I just added the Erlang `fuse` library to my Elixir app, and now when I run tests there is a torrent of =PROGRESS REPORT===== output as various applications are started for each test. Any idea how I can make it shut up?
19:34 <nickjj> i could read them in with get_env and set those env vars in the dockerfile, but that would still require modifying the mix.exs file for every project
19:35 <Nicd-> gamache: maybe check: https://elixirforum.com/t/how-to-suppress-progress-report-statements-on-stdout/8196?u=nicd
19:36 akeating joined
19:36 <Zarathu> nickjj: don't you have to modify your mix.exs file for every project anyway?
19:36 <gamache> Nicd-: I saw that, I'd prefer to use something I can add to config.exs rather than ensuring I run elixir with a command line option
19:37 <DavidAntaramian> gamache: you can add that to config.exs, the notation is `config :sasl, sasl_error_logger: false`
19:37 <nickjj> Zarathu, you would, but it's just one of those things that's easy to forget, i suppose it's not too big of a deal
19:37 <nickjj> it just seemed weird to offer the build path as an ENV variable but not the deps or lockfile
19:38 <gamache> DavidAntaramian: you are the wind beneath my wings. Thanks!
19:39 <Nicd-> I will add that to the thread
19:39 rcdilorenzo joined
19:40 <DavidAntaramian> SASL logs _can_ be really helpful, though, so another option is to redirect them to a file. SASL logs in particular can be written to a binary format which can be read later on using the report browser
19:40 <DavidAntaramian> See http://erlang.org/doc/man/sasl_app.html for more details
19:41 rcdilorenzo joined
19:42 <DavidAntaramian> I believe fuse needs SASL (System Architecture Support Libraries) in particular because it uses the SASL alarm system
19:42 <kapil___> https://gist.github.com/kapilpipaliya/4d111f4fba603343c201c549d2d9cd5f
19:43 _arkgil joined
19:44 <kapil___> I want to generate where query from above data. first set and second set are joined with `or`
19:45 wsieroci joined
19:48 iAmerikan joined
19:52 akeating joined
19:57 duane joined
19:58 <jeregrine> DavidAntaramian the wind beneath many people's wings
19:59 <DavidAntaramian> <3
20:01 theWhisper_ joined
20:02 dogweather joined
20:03 duane joined
20:04 cagomez joined
20:09 stephen_m joined
20:12 dogweath_ joined
20:16 netrino__ joined
20:17 fmcgeough joined
20:20 <adkron> I need a package like URI that will parse URI, and URL. Does anyone know any?
20:20 <Nicd-> Elixir stdlib already has a URI parser
20:21 <adkron> Right, but it won't parse "example.com:80" because it is a URL and not a URI
20:21 <adkron> I need it to do both. I was hoping to find something that would.
20:21 <jeregrine> @adkron could append http:// to URI's and ignore it in parsed results
20:21 <Nicd-> that's not a URL either I think
20:22 <Nicd-> URLs are URIs
20:22 <adkron> I thought a URL was a URI with no scheme
20:22 <Nicd-> no
20:22 <OvermindDL1> URI.parse("example.com:80")
20:22 <OvermindDL1> %URI{ authority: nil, fragment: nil, host: nil, path: "80", port: nil, query: nil, scheme: "example.com", userinfo: nil}
20:22 <adkron> There is URI, URL, and URN. I never can remember what is what.
20:22 <Nicd-> http://google.fi./ <-- that is a URL
20:22 <Nicd-> OvermindDL1: see 80 is in "path", not "port"
20:22 <Nicd-> and domain is in scheme
20:23 <OvermindDL1> Correct, that's what it is for that location
20:23 <OvermindDL1> URI's start with a schema
20:23 <Nicd-> to get what adkron expects they need to add a scheme that they then ignore to make it a URL
20:23 <OvermindDL1> If you ^
20:23 <jeregrine> ^^
20:23 <adkron> jeregrine: Thanks.URI.parse "[::1]:80"
20:24 <adkron> oops
20:24 <adkron> URI.parse "[::1]:80" #=> path: "[::1]:80"
20:25 weaksauce joined
20:25 <OvermindDL1> URI.parse("unknown://[::1]:80")
20:25 <OvermindDL1> %URI{ authority: "[::1]:80", fragment: nil, host: "::1", path: nil, port: 80, query: nil, scheme: "unknown", userinfo: nil}
20:25 <OvermindDL1> Just add a scheme
20:25 <adkron> I guess I can add `ignore://` to the front, and add [] when I am given a bare address because people don't know better with ipv6
20:25 <OvermindDL1> I'm surprised elixir can't parse an empty scheme (just `://blah`) as most libraries I've tried will do so...
20:26 <jeregrine> maybe its a bug :-)
20:26 <Nicd-> PR time!
20:26 <OvermindDL1> Possible!
20:26 <Nicd-> I once wrote a URL parser with just pattern matching, but it was slower than URI.parse's regex :(
20:26 <Nicd-> fun exercise though
20:27 <OvermindDL1> Eh sub-binary matching and such is painful
20:28 <OvermindDL1> URI's is optimized about as much as you can do with the beam I'd wager
20:28 demio joined
20:30 <Nicd-> oh dear: https://gitlab.com/Nicd/Nurina/blob/master/lib/nurina.ex
20:32 <OvermindDL1> Wouldn't that parse `////////` as empty?
20:32 <Nicd-> 🤷
20:32 <OvermindDL1> Based on just this line alone: https://gitlab.com/Nicd/Nurina/blob/master/lib/nurina.ex#L37
20:33 <OvermindDL1> Oh wait, state machine in 3 argument
20:33 <Nicd-> don't judge
20:33 aeliton joined
20:33 <Nicd-> that was one of my first Elixir things
20:33 <OvermindDL1> Would be slightly faster if each state was a separate function name. :-)
20:34 <adkron> Thanks for the help. Looks like this is going to be a little work.
20:34 <adkron> I just didn't want to rewrite someone else's code if I didn't have to do it.
20:34 dogweather joined
20:34 aeliton joined
20:35 <OvermindDL1> Hmm, authority should always parse as the empty string?
20:36 <OvermindDL1> adkron: Could always use ranch or whatever it uses to parse URL's, can't get more complete than that?
20:36 <adkron> OvermindDL1: Thanks, I will look into that.
20:36 <Zarathu> Nicd-: defp nil_or(""), do: nil
20:37 <OvermindDL1> Empty string storing as a nil*
20:38 <Nicd-> Pls
20:38 <Nicd-> No hate
20:39 <OvermindDL1> Lol
20:42 mertonium joined
20:48 codestorm joined
20:53 wonko77 joined
20:59 za1b1tsu joined
21:01 dogweather joined
21:07 mertonium joined
21:15 ggVGc joined
21:15 ggVGc joined
21:17 icecreamcohen joined
21:18 aeliton joined
21:21 PHL joined
21:22 demio joined
21:29 fxer joined
21:29 fxer joined
21:30 stephen_m joined
21:34 akeating joined
21:42 Electrux joined
21:44 meh` joined
21:46 DSM joined
21:47 akeating joined
21:48 mertonium joined
21:52 Electrux joined
21:55 iAmerikan joined
21:57 icecreamcohen joined
21:58 _arkgil joined
22:07 __charly__ joined
22:12 Electrux joined
22:13 _arkgil joined
22:16 kuzyn joined
22:20 sihui_io joined
22:22 Electrux joined
22:32 Electrux joined
22:35 jerel joined
22:37 demio joined
22:40 Electrux joined
22:49 stephen_m joined
22:52 Electrux joined
22:53 demio joined
23:00 Electrux joined
23:02 TheNet joined
23:04 mertonium joined
23:11 Electrux joined
23:15 codestorm joined
23:16 <sms> How literal is a changeset?
23:17 <sms> Say for instance I have associations in my post called categories, and the post currently has [cat1, cat2], and then I update it to have [cat3, cat4]
23:17 <sms> Will I have to manually get rid of cat1 and cat2, or will it just assume I wanted those gone
23:22 Electrux joined
23:27 Electrux joined
23:38 sihui_io joined
23:42 Electrux joined
23:43 <Zarathu> sms: >then I update it to have [cat3, cat4]
23:43 <Zarathu> depends on how you make it "have" [cat3, cat4]
23:44 codestorm joined
23:44 <sms> Passing cast_assoc(:categories, [cat3, cat4]) for instance
23:46 <sms> Would that just append the two categories, or update the association entirely
23:47 akeating joined
23:50 <Zarathu> sms: https://hexdocs.pm/ecto/Ecto.Changeset.html#cast_assoc/3
23:50 <Zarathu> the docs answer this question in surprising detail :>
23:54 mertonium joined
23:54 Electrux joined
23:59 akeating joined