<FromGitter>
<andrewc910> Hi, I have a problem. I am pulling some authentication code into a gem. My confirmable module generates a token. It requires the 'before_validation' callback from an orm. I figured requiring the module in my user class(which inherits from the orm) and mixing in the module to my user class would make that method available to my module.
<FromGitter>
<andrewc910> The dilemma is I can't just include the module like I thought I would be able to. I have to require it first(outside the class) which means I get an undefined error.
<FromGitter>
<andrewc910> How would you recommend I fix this?
<FromGitter>
<tenebrousedge> your module requires the orm?
<FromGitter>
<tenebrousedge> and extends the orm?
alexherbo22 has joined #crystal-lang
alex`` has quit [Ping timeout: 260 seconds]
alexherbo2 has quit [Ping timeout: 260 seconds]
alexherbo22 is now known as alexherbo2
alex`` has joined #crystal-lang
alex`` has quit [Ping timeout: 258 seconds]
alexherbo2 has quit [Ping timeout: 240 seconds]
<FromGitter>
<andrewc910> I did it with a macro!
<FromGitter>
<andrewc910> My module just makes a token when the user class is saved. It's like devise's confirmable module where it makes a token and emails the user the sign up link
ur5us has quit [Ping timeout: 260 seconds]
vitallium has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<repo>
quick question: where are the tuple type initializers defined like Deque{1,2,3}
<repo>
i'd like to define a struct that can use this initialization
hpyc9 has quit [Ping timeout: 258 seconds]
<FromGitter>
<lbarasti> @Blacksmoke16 @raz, I released v1 of diagnostic-logger two days ago XD
<raz>
it's based on LLVM, so i suppose support for other architectures may be added in the future
<ancorgs>
raz: yes, that's also my assumption. But I was curious to know whether someone out there (apart from myself) had showed enough interest
<ancorgs>
and maybe tried for real to get it working
<raz>
ah, sorry, don't know that (personally x86_64 on mac and linux has been all i needed so far)
<raz>
i also have on clue how much work it would be to add other archs (whether it's as easy as adding a few more compile flags or if it requires deeper changes)
<ancorgs>
raz: I don't know either. But experience has taught me that "it's never that easy" :-)
<raz>
yes, i can second that experience in general :D
<ancorgs>
raz: that's why I wanted to know whether it was at least on the roadmap somehow
<raz>
probably is somewhere, but wouldn't hold my breath for it, yet. i think the next bigger ticket in that general area would be windows support (but there's no clear timeline for that either yet)
<mps>
ancorgs: we have it on alpine linux aarch64 (arm64) but probably will drop it in few days because it can't work compiled with llvm8
<ancorgs>
mps: sad to hear that. We have a huge project written in Ruby. I would like to explore the idea of using Crystal. But multi-arch support is CRUCIAL for us
<mps>
there are efforts to make it work on arm32 also but never finished, afaik
<ancorgs>
And with "multi-arch" I really mean it. :-) We develop YaST: the installer and configuration tool for openSUSE and SUSE Linux
<mps>
you can use crystal 0.31.1 on alpine linux 3.11 (current stable) to build programs for arm64
<ancorgs>
which means whatever we do needs to run in everything from raspberry Pi 3 to mainframes (literally)
<mps>
would be nice, I agree
<ancorgs>
including PowerPC (little and big endian), s390, ARM, x86...
<ancorgs>
mps: the question is, as always, how much work it would be
<ancorgs>
and, as following question, whether there is someone willing to sponsor that effort
<mps>
I'm not crystal core develepor so I can't tell
<raz>
i'd be a bit concerned about the resource draw for crystal to support so many archs at this point (unless it's a one-time effort)
<ancorgs>
with an answer for the first question, I would be able to answer the second ;-)
<mps>
you can look at some pull requests for other archs, but afaik core devs are concentrated to port it to windows
<mps>
I have big dilemma for crystal in alpine linux, keep it with llvm5 on x86_64 and aarch64, or build with llvm8 but only on x86_64
<raz>
i'm not a fan of alpine myself. the ideas are sound, but their libc shenanigans are going too far imho
<mps>
I'm not musl advocate, but I prefer it because it is cleaner, smaller and faster than glibc
sagax has quit [Write error: Connection reset by peer]
<raz>
yea i can see the draw (been a fan of dietlibc for a while). but until people start using on their developer desktops there's always this uncomfortable risk for surprises :/
<raz>
and then working around these issues (like the alpine DNS problems) become a ball on a chain by themselves
<mps>
there are developers who uses musl system on their desktops and servers, I'm one of them
<mps>
and not only alpine, but also void linux, adelie linux and some other
<mps>
I run alpine on x86_64, arm32 and arm64 desktops, (and servers ofc)
<raz>
yea but it's so rare (in contrast to ol'glibc)
<raz>
anyway, tastes differ :)
<mps>
that reminds me when I was rare person who runs linux on desktop :)
<FromGitter>
<grkek> > How do we build to web assembly ?
<raz>
i did that for 10yrs. then i got lazy, now i'm on a mac :D
<FromGitter>
<grkek> How do I get the list of the classes in a module ?
<FromGitter>
<grkek> like classes which inherit some third party class
<FromGitter>
<pynixwang> different result with debug and release mode.
<FromGitter>
<grkek> What ? @pynixwang
<FromGitter>
<pynixwang> release flag cause a different result
<FromGitter>
<pynixwang> it's a c binding to quickjs
HumanGeek has quit [Remote host closed the connection]
HumanGeek has joined #crystal-lang
HumanGeek has quit [Remote host closed the connection]
HumanGeek has joined #crystal-lang
<FromGitter>
<grkek> weird
<FromGitter>
<grkek> @Blacksmoke16 What do you think about some swagger ui support out of the box ? also how did you add the decoration macros ?
<FromGitter>
<grkek> the @[things]
<FromGitter>
<grkek> thing
<FromGitter>
<grkek> annotations found it
<FromGitter>
<grkek> thx anyways
alexherbo2 has quit [Read error: Connection reset by peer]
alexherbo2 has joined #crystal-lang
JuanMiguel has joined #crystal-lang
JuanMiguel has quit [Client Quit]
<FromGitter>
<btihen> @lbarasti - cool thanks for the clarification. I'll update that.
<FromGitter>
<Blacksmoke16> @grkek yea they're documented in the book
<FromGitter>
<Blacksmoke16> Could be a nice feature
JuanMiguel has joined #crystal-lang
<FromGitter>
<PenguinOwl> im having some problems with `make spec` now, namely the linker command while building specs cant find the object files (e.g. `A-rray40A-rray40A-<somehexhash>.o`) any idea on where the directory gets mixed up or if there is an env variable that sets where it looks for the files
<raz>
hmm. so i was mentally flexing for the usual gymnastics to implement a bit of timeout handling around my networking. then i see crystal just has #read_timeout= and #write_timeout= on its FDs. ¯\_(ツ)_/¯
JuanMiguel has quit [Quit: This computer has gone to sleep]
<FromGitter>
<bew> @PenguinOwl try doing `make clean` and try again