<    April 2017    >
Su Mo Tu We Th Fr Sa  
 2  3  4  5  6  7  8  
 9 10 11 12 13 14 15  
16 17 18 19 20 21 22  
23 24 25 26 27 _2_8 29  
00:03 jeramyRR joined
00:06 PaReeOhNos joined
00:10 jkreeftmeijer joined
00:23 webdev007 joined
00:29 jkreeftmeijer joined
00:31 lexmag joined
00:34 nighty-- joined
00:35 jkreeftmeijer joined
00:36 ultra|lazer joined
00:37 <havenwood> iFire: There's also Stream.interval/1: https://hexdocs.pm/elixir/Stream.html#interval/1
00:37 nighty-- joined
00:39 lexmag joined
00:39 scythe__ joined
00:42 <scythe__> So I figured out my docker issue...but I have one last one. I setup clustering using teamon's guide but in setting it up so that all nodes see each other in the network I had to explicitly set the node to a number other than @ when I do so I'm unable to run my migrations using distillery. I believe it may have something to do with rpc but I have no idea what. Does anyone here have a phoenix cluster setup using distillery and knows
00:42 <scythe__> how rpc is being used in order to run migrations? Since mix isn't available I'm unable to run mix run migrations... which leaves me confused as how to proceed
00:44 <scythe__> I also asked on the distillery github although I'm not sure where the problem really is. https://github.com/bitwalker/distillery/issues/29#issuecomment-296485132
00:44 cemilowski joined
00:45 jkreeftmeijer joined
00:49 <bitwalker> scythe__: I'll try and respond in a little bit
00:50 <scythe__> Thanks bitwalker!
00:53 codestorm joined
00:56 jkreeftmeijer joined
00:57 dimitarvp` joined
01:01 jkreeftmeijer joined
01:02 codestorm joined
01:02 InternetFriend joined
01:03 jeramyRR joined
01:10 chrismccord joined
01:10 chrismcc_ joined
01:12 jkreeftmeijer joined
01:16 elgenie joined
01:22 gvaughn_ joined
01:23 jkreeftmeijer joined
01:28 PaReeOhNos joined
01:33 jkreeftmeijer joined
01:34 gvaughn joined
01:39 tomterl joined
01:43 jkreeftmeijer joined
01:47 MotherFlojo joined
01:49 jkreeftmeijer joined
01:52 sfbw joined
01:54 sfbw_ joined
01:57 steffkes joined
01:59 jkreeftmeijer joined
02:03 MotherFlojo joined
02:03 jeramyRR joined
02:04 InternetFriend joined
02:09 jkreeftmeijer joined
02:18 codestorm joined
02:20 jkreeftmeijer joined
02:26 jkreeftmeijer joined
02:30 MotherFlojo joined
02:30 pocketpotato joined
02:32 alchemist joined
02:34 gvaughn joined
02:36 jkreeftmeijer joined
02:37 codestorm joined
02:46 jkreeftmeijer joined
02:49 willyk joined
02:52 jkreeftmeijer joined
02:59 webdev007 joined
03:02 jkreeftmeijer joined
03:03 craigger joined
03:13 jkreeftmeijer joined
03:15 MotherFlojo joined
03:15 nii236 joined
03:18 jkreeftmeijer joined
03:21 isaiah joined
03:29 jkreeftmeijer joined
03:39 jkreeftmeijer joined
03:44 codestorm joined
03:46 imack joined
03:46 iFire joined
03:49 jkreeftmeijer joined
03:52 northfurr joined
03:55 jkreeftmeijer joined
03:57 steffkes joined
03:59 gvaughn joined
04:00 northfurr joined
04:01 nepiktaz joined
04:02 sfbw joined
04:03 nepiktaz joined
04:05 northfurr joined
04:05 northfurr joined
04:05 jkreeftmeijer joined
04:10 codestorm joined
04:11 refriedchicken joined
04:16 jkreeftmeijer joined
04:19 Antiarc joined
04:21 jkreeftmeijer joined
04:23 Antiarc joined
04:29 scythe__ joined
04:32 osieln joined
04:32 jkreeftmeijer joined
04:34 josevalim joined
04:40 northfurr joined
04:42 jkreeftmeijer joined
04:52 gvaughn joined
04:52 jkreeftmeijer joined
04:59 refriedchicken66 joined
05:03 sfbw joined
05:03 jkreeftmeijer joined
05:03 codestorm joined
05:09 jkreeftmeijer joined
05:11 milad joined
05:12 gvaughn joined
05:13 justelex_ joined
05:14 nii236 joined
05:18 northfurr joined
05:19 milad joined
05:19 jkreeftmeijer joined
05:29 jkreeftmeijer joined
05:32 robinsjdotcom joined
05:35 jkreeftmeijer joined
05:42 imack joined
05:43 proteusguy joined
05:47 jkreeftmeijer joined
05:52 Tica2 joined
05:52 icanhazbroccoli joined
05:53 jkreeftmeijer joined
05:58 steffkes joined
05:58 steffkes joined
06:04 jkreeftmeijer joined
06:05 InternetFriend joined
06:05 sfbw joined
06:07 sumi joined
06:09 gvaughn joined
06:14 jkreeftmeijer joined
06:15 milad joined
06:20 jkreeftmeijer joined
06:22 dignifiedquire joined
06:26 josevalim joined
06:28 voltone joined
06:29 ilkka_ joined
06:30 jkreeftmeijer joined
06:30 elgenie joined
06:31 icanhazbroccoli joined
06:32 jkreeftmeijer joined
06:32 mhutter joined
06:33 mikker joined
06:35 robinsjdotcom joined
06:37 hbraun joined
06:43 tuacker joined
06:52 vaultin joined
06:54 colrack joined
07:01 asabil joined
07:01 justelex_ joined
07:02 bigkevmcd joined
07:04 blahdodo joined
07:05 gvaughn joined
07:06 sfbw joined
07:06 vaultin joined
07:07 sumi joined
07:10 johanw joined
07:11 mattyw joined
07:13 bigkevmcd joined
07:16 Guest67 joined
07:27 mark_66 joined
07:30 vmoravec joined
07:32 gokr joined
07:33 cemilowski joined
07:33 marr joined
07:38 steffkes joined
07:38 steffkes joined
07:44 stephen_m joined
07:52 dastagg joined
08:00 robinsjdotcom joined
08:01 gvaughn joined
08:05 ZippoWeb2 joined
08:07 sfbw joined
08:07 robinsjdotcom joined
08:08 gazler joined
08:36 stephen_m joined
08:37 gvaughn joined
08:39 odogono joined
08:41 codestorm joined
08:55 ZippoWeb2 joined
08:56 Ayey_ joined
08:58 gvaughn joined
08:59 <m1dnight_> Hey guys, im writing a library that automatically starts slaves on the hosts in the erlang hosts file
08:59 <m1dnight_> It also allows me to start slaves on any given ip
09:00 <m1dnight_> My question is, from a library point of view, what would be the best way to allow the user how to do this?
09:00 <m1dnight_> E.g., you import th elibrary and want to automatically start slaves on all hosts in the erlang hosts file, you dont want any slaves spawned automatically, or you want to specify your own list
09:00 <m1dnight_> Should I look for an entry in a config file?
09:13 hbraun joined
09:13 akeating joined
09:14 akeating_ joined
09:20 <OliverMT> I wonder if it would be beneficial to use MQTT as a phoenix channel backend
09:20 <OliverMT> now that aws has the iot service which is basically a managed mqtt broker
09:22 flaviodesousa joined
09:27 mikker joined
09:32 elgenie joined
09:35 codestorm joined
09:38 gmcabrita joined
09:39 craigp joined
09:40 lexmag joined
09:47 sfbw joined
09:54 gvaughn joined
09:55 akeating joined
10:06 InternetFriend joined
10:25 milad joined
10:29 jkreeftmeijer joined
10:29 gvaughn joined
10:29 codestorm joined
10:34 jkreeftmeijer joined
10:41 dch_ joined
10:49 robinsjdotcom joined
10:58 sumi joined
11:04 nighty-- joined
11:06 jkreeftmeijer joined
11:13 codestorm joined
11:14 <vhf> cemilowski: thanks, nope I don't have :serve_endpoints, true in my config
11:14 <vhf> but somehow I fixed my issue
11:14 mikker_ joined
11:14 <vhf> by removing some processes I was supervising
11:14 <cemilowski> vhf: I see.
11:15 <vhf> I'm still an OTP noob so I don't know exactly
11:15 <vhf> in my app I was putting worker(Some.Agent) in the children list
11:15 <vhf> the app was working well, but this prevented the app from giving control back to the repl ?
11:16 <vhf> now I'm trying to understand how I'm supposed to supervise tasks to have at most one concurrent task, but have it restart when it dies
11:17 <vhf> this doesn't feel that hard, the hard part is that I have different tasks and I want the same behaviour for all of them, except with different implementations
11:17 <vhf> of the actual work being done by the task
11:18 lexmag_ joined
11:21 <cemilowski> vhf: You mean supervising dynamically or as a background task?
11:22 <vhf> cemilowski: background task :)
11:23 justelex_ joined
11:24 <cemilowski> vhf: I had written this: https://github.com/ertgl/oblservice/blob/master/lib/oblservice/workers/delay_detector.ex P.S: This was my second Phoenix project so please don't disdain. : )
11:24 hbraun joined
11:24 <vhf> haha cemilowski I'm really not in a position to judge
11:25 <vhf> thanks, that's the kind of example I wanted to see
11:25 <cemilowski> Neither I.
11:25 <cemilowski> You're welcome vhf. : )
11:27 <gazler> Just so you know, GenServer responses take an optional timeout parameter which will trigger a :timeout message.
11:28 <gazler> So you can do {:noreply, state, 30_000) to trigger the timeout message after 30 seconds.
11:29 <cemilowski> Hmm. This is a very helpful detail. Thanks gazler.
11:31 jkreeftmeijer joined
11:31 elgenie joined
11:34 cevado joined
11:34 steffkes joined
11:34 steffkes joined
11:39 duane joined
11:44 duane_ joined
11:44 gvaughn joined
11:47 sfbw joined
11:49 proteusguy joined
11:55 jkreeftm_ joined
11:57 bturnbull joined
12:01 cristianR_ joined
12:02 akeating joined
12:03 akeating_ joined
12:08 <benwilson512> micmus: hey quick question related to your optimizations
12:08 codestorm joined
12:08 <benwilson512> if I have some map `foo` and in several places in the code call `foo.bar`
12:08 <benwilson512> without ever rebinding `foo`
12:09 <benwilson512> does it do the equivalent of is_map(foo) checks and has_key(foo, :bar) checks each time?
12:09 <benwilson512> or just the first time?
12:09 sfbw joined
12:09 <micmus> benwilson512: unfortunately, every time
12:09 <benwilson512> given immutability and all that you'd think it could at least elide the checks, or even just reuse the result of getting it
12:09 <benwilson512> hm
12:09 <benwilson512> is that an intrinsic limitation?
12:09 <benwilson512> or just how it happens to be at the moment?
12:10 akeating joined
12:10 <micmus> nope, it's just not optimised
12:11 <micmus> benwilson512: the problem I faced with merging all x.foo, x.bar, etc into a single instruction, is that they all emit a different error
12:12 <benwilson512> for different keys I can see that
12:12 <benwilson512> I guess I was referring to when you do the same key multiple times
12:12 <benwilson512> sometimes for example for context it is more readable to do `person.name` in several places
12:13 hbraun joined
12:13 <micmus> outside of hot paths, I don't think that matters much, but if we're going for emiting best code possible, there's a lot of opportunities for optimisations
12:13 <micmus> it's a bit better on erlang master, but still could be much better
12:14 <benwilson512> cool
12:14 <benwilson512> good to know
12:15 <micmus> currently the optimizer throws away all information on any map operation :(
12:15 <micmus> so that's probably the biggest improvement on master, right now - it doesn't do that anymore
12:17 voltone joined
12:26 rodolfojcj joined
12:35 akeating joined
12:40 gvaughn joined
12:43 asabil joined
12:56 dimitarvp joined
12:59 sumi joined
13:02 ramortegui joined
13:03 bvcosta joined
13:06 jgpawletko joined
13:08 justelex_ joined
13:13 JEG2 joined
13:14 sfbw joined
13:22 bitmod joined
13:22 duane joined
13:22 willyk joined
13:23 mhr_here joined
13:23 harfangk joined
13:27 chrismccord joined
13:27 egis joined
13:31 ZippoWeb2 joined
13:32 codestorm joined
13:33 elgenie joined
13:36 robinsjdotcom joined
13:38 MarioBranco joined
13:41 willykaram joined
13:42 jkreeftmeijer joined
13:43 jkreeftm_ joined
13:45 bpmcd joined
13:46 InternetFriend joined
13:46 willykaram joined
13:47 mijoharas_ joined
13:50 rschmukler joined
13:56 wyzzard joined
14:00 rschmukler joined
14:08 bpmcd joined
14:09 gvaughn joined
14:12 jkreeftmeijer joined
14:23 gvaughn joined
14:24 gvaughn_ joined
14:25 RexM joined
14:26 codestorm joined
14:26 rschmukler joined
14:29 asabil joined
14:50 tuacker joined
14:51 tuacker joined
14:53 Ayey_ joined
14:54 bpmcd_ joined
14:55 wsieroci joined
14:56 kwrooijen joined
14:56 cdg joined
14:57 tuacker joined
14:58 hbraun joined
14:58 akeating joined
15:01 asabil joined
15:02 willyk joined
15:04 sfbw joined
15:07 asabil joined
15:10 akeating joined
15:14 gvaughn_ joined
15:16 cevado joined
15:20 akeating joined
15:20 codestorm joined
15:28 tuacker joined
15:29 wyzzard joined
15:31 steffkes joined
15:31 steffkes joined
15:34 isaiah joined
15:34 willyk joined
15:37 ejpcmac joined
15:42 willyk joined
15:45 akeating joined
15:46 sfbw joined
15:46 Ayey_ joined
15:46 sumi joined
15:48 stephen_m joined
15:52 codestorm joined
15:54 Ayey_ joined
15:56 subetei joined
15:56 icecreamcohen joined
15:56 amclain joined
15:58 gmcabrita joined
15:59 isaiah_ joined
15:59 akeating joined
16:01 davidw joined
16:02 bloosi joined
16:09 rozap joined
16:10 gem joined
16:10 cevado joined
16:12 meandi_2 joined
16:14 Ayey_ joined
16:17 jkreeftmeijer joined
16:25 dch_ joined
16:25 dch_ joined
16:27 jadlr joined
16:28 gem joined
16:30 chrismccord joined
16:30 aleandros joined
16:37 kronicdeth joined
16:40 <kronicdeth> With Ecto, how do I do `WHERE primary.foreign_key IN (SELECT id FROM foreign_table WHERE ...)` if I already have `SELECT id FROM foreign_table WHERE ...` in an Ecto.Query? I'm trying to reuse the queries from the foreign table in the primary table this way.
16:45 dch_ joined
16:46 mika__ joined
16:50 jeffweiss joined
16:52 rozap joined
16:52 racycle joined
16:57 bitmod_ joined
16:57 willyk joined
16:58 codestorm joined
17:07 lexmag joined
17:10 ejpcmac left
17:15 cevado joined
17:17 Ayey_ joined
17:18 franco joined
17:18 mr_bmt joined
17:21 wsieroci_ joined
17:22 OtherAllan joined
17:25 <racycle> set irc.look.display_host_quit off
17:25 rschmukler joined
17:26 rschmukler joined
17:26 asabil joined
17:28 whharris joined
17:30 rozap joined
17:32 steffkes joined
17:33 rschmukl_ joined
17:36 mr_bmt joined
17:37 akeating joined
17:38 chrismccord joined
17:40 jkreeftmeijer joined
17:41 willyk joined
17:44 gem joined
17:46 cevado joined
17:52 wyzzard joined
18:00 meh` joined
18:06 bpmcd joined
18:09 Ayey_ joined
18:10 icanhazbroccoli joined
18:18 mr_bmt joined
18:26 nd____ joined
18:32 willyk joined
18:35 MarioBranco joined
18:38 <thread> Anyone ever thought about defining some extra data with their router so they could easily build navigation? seems like a good idea if you have a complex sitemap and want to build an elaborate navigation and don't want a maintenance difficulty . .
18:38 fxn joined
18:39 nd___ joined
18:42 jkreeftmeijer joined
18:45 ZippoWeb3 joined
18:45 Ayey_ joined
18:47 codestorm joined
18:47 asabil joined
18:49 ejpcmac joined
19:03 <thread> The big question is ... how can I build a data structure at the same time that I define the routes inside a scope? I would need to remember the data somehow so it could be queried against at runtime.. Not quite sure how I could do this yet.
19:04 chrismccord joined
19:05 <thread> oh wow, I can define a function right inside a scope and it's available on the router module. I think this might be the ticket. I can make my macro call set up the actual route AND define a function somehow to make the data available to the view.
19:05 <thread> I would simply love any sort of thought on if this is a good approach or if there could be a better one..
19:08 dimitarvp joined
19:11 fernandomm joined
19:14 <Nicd-> thread: you could also look at how phoenix.routes works
19:14 <Nicd-> I don't know if it could help
19:15 <chrismccord> thread : I dont' have full context, but sounds like a bad idea that would be better suited with a plug
19:15 Tica2 joined
19:15 <thread> Nicd-: thanks for the reply. Yeah, I'm reading router.ex... I'm now thinking maybe I can append to a data structure kept in an @attribute that is built over the course of the router being built, then exposed at the end?
19:16 <chrismccord> defining a function "inside a scope" really has nothing to do with the scope. It would be a plain old function. If you can describe what you're wanting to do I can point yo in the proper direction
19:16 <Nicd-> chrismccord to the rescue!
19:17 icanhazbroccoli joined
19:17 <thread> chrismccord: I basically want to define page titles along with the routes so that a view could iterate over the data structure and build the navigation, setting any "active" classes needed, etc. It's for maintainability -- don't want to have to maintain the router 1:1 with a nest of li's (nav) in another file.
19:18 <thread> I want to capture the router as data (but with a couple extra bits per route) and have this full data structure available.
19:19 willyk joined
19:19 vmoravec joined
19:20 <thread> chrismccord: i'm thinking i want to call a macro from inside the scope and define the matcher, but also "log" everything somewhere so I can get to it. (I imagine I can pull the router data out of the router somehow, but I want to also persist the section title for the nav as well)
19:20 <chrismccord> thread : you can set assigns on the scope, ie
19:20 <thread> ooh! what about each page within the scope, though?
19:20 <chrismccord> `scope "/orders", Foo.Bar, assigns: %{title: ...} do`
19:21 <chrismccord> not per route though
19:22 <thread> so i'd need a different scope per route or something weird... also, while I'm sure I could access that data from the route action, I'm not so sure I could query anywhere for a big list of everything.
19:22 <chrismccord> thread : just kidding, you can indeed do it per route
19:23 <thread> :]
19:23 <chrismccord> get "/orders", OrderController, :index, assigns: %{title: ...}
19:24 <thread> oh awesome. next I think I'd just need a dump of all the routes..
19:24 <chrismccord> thread why do you need. dump of the routes?
19:24 Ven joined
19:25 codestorm joined
19:25 rschmukler joined
19:25 <thread> because I want to pull out some bits and loop an li block in my template to build some gnarly-long navigation, setting any active classes as needed etc
19:25 steffkes joined
19:25 steffkes joined
19:26 <thread> for maintainability. now, to add a new page, you just set it up in the router and don't have to worry about editing a giant blob of navigation markup.
19:26 <thread> this is my idea, anyway
19:26 <thread> feel free to suggest why it's dumb, too :)
19:29 vendethiel joined
19:30 <Nicd-> in most cases your navigation probably won't be 1:1 with your routes
19:30 <thread> Nicd-: great point... I'll have to filter out only routes with certain metadata to be included, true. It could be by scope somehow, as well.
19:32 rschmukler joined
19:33 <thread> ah, seems I can flip through @phoenix_routes ... This plus the route assigns might be all I need!
19:34 <thread> let's see how this works out for me...
19:34 <thread> at any rate, thank you sooo much chrismccord & Nicd-. Really appreciate the help!
19:34 wsieroci joined
19:34 milad joined
19:36 apotry joined
19:36 Ayey_ joined
19:38 josevalim joined
19:40 icanhazbroccoli joined
19:43 rozap joined
19:45 justelex joined
19:47 jkreeftmeijer joined
19:49 gem joined
19:50 <rschmukler> Hey all! I have a map (wrapped in a genserver) where I need to dynamically load keys into it at run-time without starting an OTP application. ie. my library allows other libraries to register with the map at compile time to register handlers for keys in the map
19:50 <rschmukler> ie. GenServer has a map of binary => module, I want libraries to register with those maps at runtime without being an OTP application themselves. Alternatively they could also modify the map at compile time (but I'm unaware if that is possible)
19:51 keathley joined
19:53 <rschmukler> alternatively if there's any way to specify runtime code to be called mixfile without it being an OTP application, that'd also be okay...
19:54 milad joined
19:55 <mloy> out of curiosity, why is it important that it isn't an OTP application?
19:57 <josevalim> it is always an OTP application
19:57 <josevalim> maybe you don't want to have a supervision tree
19:57 <josevalim> but it is still a otp app
19:57 <josevalim> rschmukler: ping me in 1h if nobody replied yet :)
19:57 <josevalim> bbl
19:58 <rschmukler> mloy: apologies, I mean just not an otp application callback module... ie I don't want a supervision tree and start/2
19:59 <mloy> ahh
19:59 <rschmukler> The answer might be that it has to be, but I hope not.
19:59 Gasher joined
20:05 Ven_ joined
20:07 squallstter joined
20:08 rodolfojcj joined
20:13 cdg joined
20:16 robinsjd_ joined
20:18 Ayey_ joined
20:18 codestorm joined
20:23 milad joined
20:24 rodolfojcj joined
20:26 jkreeftmeijer joined
20:28 hahuang65 joined
20:30 rschmukler joined
20:32 dastagg joined
20:33 <fishcakez> rschmukler: remove the mod: {Mod, _} entry in def applications
20:34 <rschmukler> fishcakez: I know, but I need a way to run some code at BEAM startup. ie. I want to invoke something like the Application.start/2 callback but I don't want to have a PID lingering around (there is no process necessary).
20:35 <rschmukler> I could potentially create a process that shuts itself down normally shortly after startup... but that seems a big hacky
20:35 <fishcakez> rschmukler: ah, then you could do Supervisor.start_link([], strategy: :one_for_one) or potentially do {:ok, self()} but that last one is very hacky and unsure what'll happen
20:35 m_m joined
20:36 <rschmukler> `{:ok, self()}` is clever. Definitely hacky, but it hadn't even occurred to me. Do you know what process `self()` is in that instance?
20:37 <fishcakez> its the process that supervises the application
20:37 <fishcakez> there is one for each application
20:37 <fishcakez> really you shouldnt be worried about starting emty supervisor
20:37 <rschmukler> `Process.monitor(self())` works...
20:38 <rschmukler> It's not that I'm worried about it... I realize it's only 2Kb... but its the semantics / wanting to know if this is possible.
20:39 <fishcakez> then no :)
20:39 <rschmukler> It could potentially happen at compile time... Is that possible?
20:39 <rschmukler> ie. can a library modify a module attribute of its dependencies at compile time?
20:39 <rschmukler> The use case: https://github.com/urbint/cloudfile
20:40 <fishcakez> thats likely private repo?
20:40 rodolfojcj joined
20:41 <fishcakez> but a module attribute change would require recompile
20:41 <fishcakez> it is possible to set the default Application.get_env values at compile time
20:41 <rschmukler> https://github.com/urbint/cloudfile
20:41 <fishcakez> e.g. def application(), do: [env: MyApp.generate_env]
20:41 <rschmukler> Try again
20:42 <fishcakez> the readme doesnt make it clear why you need it
20:42 <rschmukler> We want the drivers to be individual libraries (ie. s3, gcs, http, box, etc). There is a DriverRegistry which handles a mapping of protocol (eg. `"s3"`) to module implementing `Driver`.
20:43 <rschmukler> So those are technically all known at compile time and so it'd be nice if the drivers could register themselves with the registry
20:43 elgenie joined
20:43 willyk joined
20:44 <fishcakez> unfortunately the drivers depend on the main lib so no
20:44 <rschmukler> if they didn't?
20:45 <fishcakez> still no :P
20:45 <rschmukler> :P
20:45 <rschmukler> Alright
20:45 <rschmukler> Thanks for taking a look :)
20:45 <fishcakez> you could look an URI.default_port is very similar issue
20:48 <rschmukler> fishcakez: Might be nice to add an additional response to the Application.start/2 callback that allows something like `:ignore` seen in GenServer. Not sure if Elixir takes such liberties in differing from OTPs `application` callback behaviour...
20:48 <fishcakez> we have to use built for applications
20:48 <rschmukler> built?
20:48 <fishcakez> built in
20:49 <fishcakez> i mean we have to use OTPs implementation
20:49 <rschmukler> Ah, sure...
20:49 Ven joined
20:49 <rschmukler> What about a mix extension then?
20:49 <rschmukler> (Just thinking outloud of how it could be done, not saying it should)
20:49 <fishcakez> unfortunately i dont think it can be achieved without patching OTP
20:49 InternetFriend joined
20:53 <rschmukler> `@on_load` also seemed promising but is evaluated at compile time. Maybe I could match off of naming pattern at run time? ie. Elixir.Cloudfile.Drivers.* get registered?
20:53 <fishcakez> on_load is evaluated when loaded ;)
20:53 <rschmukler> Sure, which in my time is before compile time?
20:53 <rschmukler> my case*
20:54 <fishcakez> it cant be before compile time because the module must be compiled to be loaded
20:54 <fishcakez> on_load is when the beam file is loaded
20:54 <rschmukler> Ah
20:54 <fishcakez> however in a release that wont work as everything is loaded up front
20:54 <fishcakez> well i say wont..
20:55 <rschmukler> It doesn't work in iex, blocking local dev... at the least...
20:55 <rschmukler> Are the functions that Iex uses for tab completion exposed? Can go read the source if you don't know off the top of your head...
20:55 <fishcakez> it depends
20:56 <fishcakez> its functions arent but the functions it uses are
20:56 <fishcakez> well it depends what you try to do on_load :)
20:56 <fishcakez> and its very risky because an error would cause it not to load
20:57 icecreamcohen joined
20:58 <rschmukler> Is there a function to get all atoms registered? Then filter those based off the pattern matching?
20:58 <rschmukler> ie. does elixir have it... erlang has some hacky ways to do it
21:00 <fishcakez> well modules might not be loaded
21:01 <fishcakez> any erlang works in elixir
21:01 ejpcmac left
21:05 mattyw joined
21:06 Ayey_ joined
21:07 gvaughn__ joined
21:13 codestorm joined
21:19 icecreamcohen joined
21:24 MarioBranco joined
21:27 jkreeftmeijer joined
21:27 akeating joined
21:27 cschneid_ joined
21:28 proteus-guy joined
21:31 rodolfojcj joined
21:34 asabil joined
21:38 sgarciapdx joined
21:43 rodolfojcj joined
21:49 rschmukler joined
21:51 m_m joined
21:57 asabil joined
21:58 <adamkittelson> I see `datetime_add/3` as part of Ecto.Query.API so you can do stuff like query for anything older than 10 minutes ago etc, but if you call it directly outside of a query it raises the error `** (RuntimeError) the functions in Ecto.Query.API should not be invoked directly, they serve for documentation purposes only`, so if one wanted to set a datetime value
21:58 <adamkittelson> to say, 10 minutes in the future in a Repo.update_all would one need to use a library like calendar or timex to adjust the time?
22:01 Ayey_ joined
22:02 rschmukler joined
22:06 trivialcase joined
22:07 codestorm joined
22:08 NeverDie joined
22:19 mika__ joined
22:20 <tristan__> https://content.nanobox.io/elixir-app-deployment-with-nanobox/
22:20 <tristan__> another article suggesting you use 'mix phoenix.server'...
22:20 rschmukler joined
22:20 <tristan__> is there at least a way to configure the vm arguments when people do that?
22:21 <fishcakez> tristan__: elixir --erl " ..." -S mix phoenix.server
22:23 <tristan__> ok. may be good if Phoenix docs mentioned that and some of the usual configs people tend to do when running in production, stuff you'd tend to run into when going to releases anyway but won't if not
22:23 duane joined
22:24 <tristan__> like the async thread pool size, max number of processes, etc
22:26 laut joined
22:38 davidw joined
22:49 Vez left
22:50 zetashift joined
22:56 mika__ joined
23:01 codestorm joined
23:03 ultralazer joined
23:09 steffkes joined
23:10 Ayey_ joined
23:28 felideon joined
23:28 jkreeftmeijer joined
23:33 adgtl joined
23:36 sfbw joined
23:46 mika__ joined
23:50 rschmukler joined
23:55 codestorm joined