havenwood changed the topic of #ruby to: Rules & more: https://ruby-community.com || Ruby 2.4.1, 2.3.4 & 2.2.7: https://www.ruby-lang.org || Paste >3 lines of text to: https://gist.github.com || Rails questions? Ask in: #RubyOnRails || Logs: https://irclog.whitequark.org/ruby || Books: https://goo.gl/wpGhoQ
jrabe has quit []
Psy-Q has quit [Read error: Connection reset by peer]
jrabe has joined #ruby
Psy-Q has joined #ruby
cschneid_ has joined #ruby
eckhardt has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
_sfiguser has quit [Quit: Leaving]
npgm has quit [Quit: Connection closed for inactivity]
eckhardt has joined #ruby
jphase has quit [Ping timeout: 246 seconds]
SeepingN has joined #ruby
brent__ has quit [Remote host closed the connection]
Bilge has quit [Ping timeout: 255 seconds]
frem has quit [Quit: Connection closed for inactivity]
cschneid_ has quit [Ping timeout: 246 seconds]
hkdsun has quit [Quit: ZNC 1.6.5 - http://znc.in]
funburn has quit [Ping timeout: 240 seconds]
edwardly has quit [Ping timeout: 240 seconds]
cagomez has quit [Remote host closed the connection]
eelster has quit [Quit: Textual IRC Client: www.textualapp.com]
eelster has joined #ruby
Bilge has joined #ruby
eelster has quit [Client Quit]
cschneid_ has joined #ruby
sylario has quit [Quit: Connection closed for inactivity]
K3rber0s has quit []
eelster has joined #ruby
chouhoul_ has joined #ruby
cschneid_ has quit [Ping timeout: 276 seconds]
Rodya_ has quit [Remote host closed the connection]
edwardly has joined #ruby
edwardly has joined #ruby
edwardly has quit [Changing host]
Rodya_ has joined #ruby
chouhoulis has quit [Ping timeout: 260 seconds]
chouhoul_ has quit [Ping timeout: 255 seconds]
bronson has joined #ruby
jphase has joined #ruby
bruno- has joined #ruby
hkdsun has joined #ruby
bronson has quit [Ping timeout: 240 seconds]
marxarelli has joined #ruby
ascarter has joined #ruby
runescape07rsps has quit [Quit: Leaving]
cschneid_ has joined #ruby
careta has quit [Ping timeout: 260 seconds]
edwardly has quit [Ping timeout: 240 seconds]
ascarter has quit [Ping timeout: 268 seconds]
Dimik has quit [Ping timeout: 255 seconds]
lxsameer has quit [Ping timeout: 268 seconds]
tvw has quit [Remote host closed the connection]
KeyJoo has quit [Read error: Connection reset by peer]
Kitty- has quit [Ping timeout: 248 seconds]
cadillac_ has quit [Ping timeout: 240 seconds]
cadillac_ has joined #ruby
jenrzzz has quit [Ping timeout: 255 seconds]
gusrub has quit [Remote host closed the connection]
jphase has quit [Remote host closed the connection]
goyox86__ has quit [Ping timeout: 248 seconds]
marr has quit [Ping timeout: 255 seconds]
HoloIRCUser has joined #ruby
hahuang65 has joined #ruby
aleph_ has quit [Ping timeout: 260 seconds]
ged has quit [Read error: Connection reset by peer]
m4rCsi has quit [Quit: No Ping reply in 180 seconds.]
m4rCsi has joined #ruby
ged has joined #ruby
marcellus has quit [Ping timeout: 255 seconds]
seggy has quit [Ping timeout: 276 seconds]
alnewkirk has quit [Ping timeout: 276 seconds]
vifino has quit [Ping timeout: 248 seconds]
sumobob has joined #ruby
marcellus has joined #ruby
hahuang65 has quit [Ping timeout: 248 seconds]
MrSparkle has quit [Ping timeout: 276 seconds]
Neptu has quit [Ping timeout: 276 seconds]
vifino has joined #ruby
Neptu has joined #ruby
snowcrshd has joined #ruby
MrSparkle has joined #ruby
eelster has quit [Quit: Textual IRC Client: www.textualapp.com]
funburn has joined #ruby
funburn has quit [Ping timeout: 240 seconds]
oliv_____ has quit [Quit: Leaving...]
oliv_____ has joined #ruby
cschneid_ has quit [Remote host closed the connection]
cschneid_ has joined #ruby
funburn has joined #ruby
jphase has joined #ruby
runescape07rsps has joined #ruby
cschneid_ has quit [Ping timeout: 246 seconds]
gizmore|2 has joined #ruby
jphase has quit [Remote host closed the connection]
jphase has joined #ruby
ecuanaso has joined #ruby
cagomez has joined #ruby
gizmore has quit [Ping timeout: 260 seconds]
edwardly has joined #ruby
edwardly has joined #ruby
edwardly has quit [Changing host]
jphase has quit [Remote host closed the connection]
cagomez has quit [Ping timeout: 246 seconds]
ramfjord has quit [Ping timeout: 240 seconds]
ascarter has joined #ruby
Kitty- has joined #ruby
uZiel has quit [Ping timeout: 248 seconds]
ramfjord has joined #ruby
Kitty- has quit [Ping timeout: 260 seconds]
funburn has quit [Quit: funburn]
oliv_____ has quit [Quit: Leaving...]
eckhardt has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
bruno- has quit [Ping timeout: 248 seconds]
ascarter has quit [Ping timeout: 276 seconds]
guardianx has joined #ruby
vuoto has quit [Ping timeout: 240 seconds]
jphase has joined #ruby
HoloIRCUser1 has joined #ruby
ramfjord has quit [Ping timeout: 240 seconds]
uZiel has joined #ruby
HoloIRCUser has quit [Ping timeout: 255 seconds]
cdg has joined #ruby
cagomez has joined #ruby
aurelien` has joined #ruby
aurelien has quit [Ping timeout: 240 seconds]
cagomez has quit [Ping timeout: 260 seconds]
astrobunny has joined #ruby
snowcrshd has quit [Remote host closed the connection]
kies has quit [Ping timeout: 240 seconds]
electrostat has quit [Quit: uwotm8]
jameser has joined #ruby
dcunit3d has joined #ruby
aurelien` has quit [Ping timeout: 276 seconds]
cagomez has joined #ruby
snowcrshd has joined #ruby
t-recx has quit [Quit: t-recx]
cagomez has quit [Ping timeout: 276 seconds]
_whitelogger has joined #ruby
Rodya_ has quit [Remote host closed the connection]
ecuanaso has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ecuanaso has joined #ruby
Kitty- has joined #ruby
digitalnomad has joined #ruby
ascarter has joined #ruby
ecuanaso has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
marxarelli is now known as marxarelli|afk
gusrub has joined #ruby
kies has joined #ruby
ascarter has quit [Ping timeout: 276 seconds]
guardianx has quit [Ping timeout: 240 seconds]
electrostat has joined #ruby
guardianx has joined #ruby
Emmanuel_Chanel has quit [Ping timeout: 240 seconds]
rahult has joined #ruby
hahuang65 has joined #ruby
cadillac_ has quit [Quit: I quit]
hahuang65 has quit [Ping timeout: 260 seconds]
elev___ has joined #ruby
sspreitz has quit [Ping timeout: 246 seconds]
jtd has quit [Remote host closed the connection]
jtd has joined #ruby
banisterfiend has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
jameser has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jameser has joined #ruby
elev____ has joined #ruby
uZiel has quit [Ping timeout: 248 seconds]
sspreitz has joined #ruby
elev___ has quit [Ping timeout: 268 seconds]
kies has quit [Quit: baaaaiiiiiiiiiii~]
kies has joined #ruby
elcontrastador has joined #ruby
elev____ has quit [Ping timeout: 240 seconds]
cdg has quit [Remote host closed the connection]
jameser has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
gusrub has quit [Remote host closed the connection]
jameser has joined #ruby
Rodya_ has joined #ruby
beilabs has quit [Remote host closed the connection]
snowcrshd has quit [Remote host closed the connection]
Rodya_ has quit [Ping timeout: 240 seconds]
jenrzzz has joined #ruby
jenrzzz has quit [Changing host]
jenrzzz has joined #ruby
kies has quit [Ping timeout: 260 seconds]
gix has quit [Ping timeout: 240 seconds]
gusrub has joined #ruby
dviola has quit [Quit: WeeChat 1.9]
Moosashi has quit [Quit: Moosashi]
cschneid_ has joined #ruby
gix has joined #ruby
Moosashi has joined #ruby
jamesaxl has quit [Ping timeout: 240 seconds]
__Yiota has quit [Ping timeout: 255 seconds]
cschneid_ has quit [Ping timeout: 246 seconds]
govg has quit [Ping timeout: 260 seconds]
ascarter has joined #ruby
edwardly has quit [Max SendQ exceeded]
edwardly has joined #ruby
edwardly has joined #ruby
edwardly has quit [Changing host]
Emmanuel_Chanel has joined #ruby
mooser has quit [Remote host closed the connection]
brendan- has quit [Read error: Connection reset by peer]
mooser has joined #ruby
bambanx has joined #ruby
BTRE has quit [Ping timeout: 255 seconds]
cschneid_ has joined #ruby
ascarter has quit [Ping timeout: 276 seconds]
mooser has quit [Ping timeout: 240 seconds]
kies has joined #ruby
cschneid_ has quit [Ping timeout: 255 seconds]
Moosashi has quit [Quit: Moosashi]
rahult has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
marxarelli|afk is now known as marxarelli
Moosashi has joined #ruby
Moosashi has quit [Client Quit]
rahult has joined #ruby
banisterfiend has joined #ruby
jenrzzz has quit [Ping timeout: 260 seconds]
brendan- has joined #ruby
anaeem1 has joined #ruby
digitalnomad has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
anaeem1__ has joined #ruby
rahult has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
anaeem1 has quit [Ping timeout: 276 seconds]
bronson has joined #ruby
ascarter has joined #ruby
Kitty- has quit [Ping timeout: 255 seconds]
cam27 has joined #ruby
bronson has quit [Ping timeout: 246 seconds]
BTRE has joined #ruby
ascarter has quit [Client Quit]
lexruee has quit [Remote host closed the connection]
Rodya_ has joined #ruby
digitalnomad has joined #ruby
naprimer2 has joined #ruby
Rodya_ has quit [Ping timeout: 258 seconds]
naprimer has quit [Ping timeout: 240 seconds]
sarbs has quit [Read error: Connection reset by peer]
jenrzzz has joined #ruby
dennisvennink has joined #ruby
sarbs has joined #ruby
jenrzzz has quit [Ping timeout: 255 seconds]
jenrzzz has joined #ruby
jenrzzz has joined #ruby
jenrzzz has quit [Changing host]
Moosashi has joined #ruby
jamesaxl has joined #ruby
meinside has joined #ruby
ascarter has joined #ruby
govg has joined #ruby
hahuang65 has joined #ruby
dlitvak has quit [Quit: Connection closed for inactivity]
guardianx has quit []
hahuang65 has quit [Ping timeout: 268 seconds]
ascarter has quit [Ping timeout: 255 seconds]
samlisl_ has quit [Quit: Leaving]
x|h has quit [Remote host closed the connection]
SeepingN has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
SeepingN has joined #ruby
SeepingN has quit [Client Quit]
patrontechnosoft has joined #ruby
ascarter has joined #ruby
Bock has joined #ruby
patrontechnosoft has quit [Remote host closed the connection]
bronson has joined #ruby
uZiel has joined #ruby
bronson has quit [Ping timeout: 260 seconds]
bambanx has quit [Quit: Leaving]
Rodya_ has joined #ruby
jamesaxl has quit [Ping timeout: 276 seconds]
Rodya_ has quit [Ping timeout: 276 seconds]
marxarelli is now known as marxarelli|afk
gusrub has quit [Remote host closed the connection]
oleo has quit [Quit: irc client terminated!]
jackjackdripper1 has joined #ruby
phinxy has quit [Quit: Leaving]
jackjackdripper has quit [Ping timeout: 255 seconds]
ta_ has quit [Remote host closed the connection]
nadir has quit [Quit: Connection closed for inactivity]
nadir has joined #ruby
Moosashi has quit [Quit: Moosashi]
anisha has joined #ruby
cam27 has left #ruby [#ruby]
jenrzzz has quit [Ping timeout: 276 seconds]
lexruee has joined #ruby
rahult has joined #ruby
Bhootrk_ has quit [Ping timeout: 268 seconds]
Moosashi has joined #ruby
Bhootrk_ has joined #ruby
Bhootrk_ has quit [Max SendQ exceeded]
Bhootrk_ has joined #ruby
rabajaj has joined #ruby
ascarter_ has joined #ruby
KeyJoo has joined #ruby
rahult has quit [Client Quit]
ur5us has quit [Remote host closed the connection]
ur5us has joined #ruby
jphase_ has joined #ruby
ur5us has quit [Ping timeout: 268 seconds]
jphase has quit [Ping timeout: 255 seconds]
ascarter_ has quit [Ping timeout: 240 seconds]
djbkd has joined #ruby
inoperable has joined #ruby
TomyLobo has quit [Ping timeout: 255 seconds]
bronson has joined #ruby
dionysus69 has joined #ruby
jphase_ has quit [Remote host closed the connection]
bronson has quit [Ping timeout: 276 seconds]
Rodya_ has joined #ruby
A124 has quit [Read error: Connection reset by peer]
cschneid_ has joined #ruby
FWTIKPNWBSRSHYOM has joined #ruby
Rodya_ has quit [Ping timeout: 258 seconds]
Dimik has joined #ruby
cschneid_ has quit [Ping timeout: 258 seconds]
ramfjord has joined #ruby
ramfjord has quit [Ping timeout: 240 seconds]
nofxxx has joined #ruby
jackjackdripper1 has quit [Quit: Leaving.]
hahuang65 has joined #ruby
nofxx has quit [Ping timeout: 276 seconds]
conta has joined #ruby
hahuang65 has quit [Ping timeout: 260 seconds]
DTZUZO has quit [Ping timeout: 246 seconds]
KeyJoo has quit [Ping timeout: 268 seconds]
ascarter_ has joined #ruby
TomyWork has joined #ruby
ramfjord has joined #ruby
ramfjord has quit [Ping timeout: 268 seconds]
high_fiver has joined #ruby
ascarter_ has quit [Ping timeout: 255 seconds]
bronson has joined #ruby
mark_66 has joined #ruby
shmoon_ has quit [Remote host closed the connection]
vondruch has joined #ruby
KeyJoo has joined #ruby
bronson has quit [Ping timeout: 240 seconds]
Rodya_ has joined #ruby
ta_ has joined #ruby
jamesaxl has joined #ruby
lele has quit [Ping timeout: 240 seconds]
Rodya_ has quit [Ping timeout: 258 seconds]
ascarter_ has joined #ruby
djbkd has quit [Remote host closed the connection]
dennisvennink has quit [Read error: Connection reset by peer]
vondruch has quit [Remote host closed the connection]
dennisvennink has joined #ruby
Silthias has joined #ruby
ascarter_ has quit [Ping timeout: 240 seconds]
leandrobighetti has joined #ruby
leandrobighetti has left #ruby [#ruby]
Silthias1 has quit [Ping timeout: 276 seconds]
ramfjord has joined #ruby
anaeem1 has joined #ruby
digitalnomad has quit [Quit: Textual IRC Client: www.textualapp.com]
minimalism has quit [Quit: minimalism]
anaeem1__ has quit [Ping timeout: 276 seconds]
X-tonic has joined #ruby
X-tonic has quit [Client Quit]
X-tonic has joined #ruby
dennisvennink has quit [Ping timeout: 276 seconds]
ramfjord has quit [Ping timeout: 248 seconds]
dennisvennink has joined #ruby
antgel has joined #ruby
ur5us has joined #ruby
dennisvennink has quit [Ping timeout: 276 seconds]
KeyJoo has quit [Ping timeout: 240 seconds]
Burgestrand has joined #ruby
nickjj has quit [Read error: Connection reset by peer]
HoloIRCUser2 has joined #ruby
Moosashi has quit [Quit: Moosashi]
HoloIRCUser2 has quit [Read error: Connection reset by peer]
17SABNWE0 has joined #ruby
HoloIRCUser1 has quit [Ping timeout: 260 seconds]
ams__ has joined #ruby
sysvalve has joined #ruby
vondruch has joined #ruby
Immune has joined #ruby
wnd has quit [Excess Flood]
wnd has joined #ruby
FWTIKPNWBSRSHYOM has quit [Ping timeout: 268 seconds]
funkycrunchy has joined #ruby
funkycrunchy has left #ruby [#ruby]
jenrzzz has joined #ruby
jenrzzz has joined #ruby
jenrzzz has quit [Changing host]
Silthias1 has joined #ruby
ramfjord has joined #ruby
Silthias has quit [Ping timeout: 260 seconds]
bronson has joined #ruby
jaruga has joined #ruby
Dimik has quit [Ping timeout: 255 seconds]
ramfjord has quit [Ping timeout: 240 seconds]
bronson has quit [Ping timeout: 255 seconds]
anisha has quit [Ping timeout: 260 seconds]
anisha has joined #ruby
Rodya_ has joined #ruby
Bhootrk_ has quit [Ping timeout: 268 seconds]
Bhootrk_ has joined #ruby
Beams has joined #ruby
high_fiver has quit [Quit: Leaving]
Rodya_ has quit [Ping timeout: 240 seconds]
ramfjord has joined #ruby
gix has quit [Ping timeout: 260 seconds]
ascarter_ has joined #ruby
ramfjord has quit [Ping timeout: 255 seconds]
jinie_ has quit [Ping timeout: 248 seconds]
marr has joined #ruby
gix has joined #ruby
jinie_ has joined #ruby
DTZUZO has joined #ruby
17SABNWE0 has quit [*.net *.split]
ta_ has quit [*.net *.split]
BTRE has quit [*.net *.split]
kies has quit [*.net *.split]
marcellus has quit [*.net *.split]
ged has quit [*.net *.split]
hkdsun has quit [*.net *.split]
danman has quit [*.net *.split]
evie_hammond has quit [*.net *.split]
bodie_ has quit [*.net *.split]
brucebag has quit [*.net *.split]
Guest38693 has quit [*.net *.split]
chrisarcand has quit [*.net *.split]
planigan has quit [*.net *.split]
Azure has quit [*.net *.split]
brw has quit [*.net *.split]
clemens3 has quit [*.net *.split]
priodev has quit [*.net *.split]
dysfigured has quit [*.net *.split]
Drakevr has quit [*.net *.split]
ByronJohnson has quit [*.net *.split]
dcluna has quit [*.net *.split]
zululee has quit [*.net *.split]
bauruine has quit [*.net *.split]
scottschecter has quit [*.net *.split]
timmow has quit [*.net *.split]
erlend has quit [*.net *.split]
jyaworski has quit [*.net *.split]
nekomune has quit [*.net *.split]
jericon has quit [*.net *.split]
kaspergrubbe has quit [*.net *.split]
SHyx0rmZ has quit [*.net *.split]
jhass has quit [*.net *.split]
Dry_Lips has quit [*.net *.split]
webhat has quit [*.net *.split]
heinrich5991 has quit [*.net *.split]
Archrove- has quit [*.net *.split]
zachary1- has quit [*.net *.split]
Cork has quit [*.net *.split]
tatey has quit [*.net *.split]
ikopico has quit [*.net *.split]
tabakhase has quit [*.net *.split]
linduxed has quit [*.net *.split]
jpterry has quit [*.net *.split]
thoraxe has quit [*.net *.split]
ericnw has quit [*.net *.split]
aloy has quit [*.net *.split]
bier has quit [*.net *.split]
brainslug has quit [*.net *.split]
mjuhl has quit [*.net *.split]
perry has quit [*.net *.split]
inukshuk has quit [*.net *.split]
veloutin has quit [*.net *.split]
michael_mbp has quit [*.net *.split]
gnarf has quit [*.net *.split]
staticfox has quit [*.net *.split]
roger_rabbit has quit [*.net *.split]
rapha has quit [*.net *.split]
ryotarai has quit [*.net *.split]
j416 has quit [*.net *.split]
DoubleMalt has joined #ruby
mtkd has quit [Ping timeout: 240 seconds]
ascarter_ has quit [Ping timeout: 246 seconds]
Psy-Q has quit [Ping timeout: 240 seconds]
sonne_ has quit [Ping timeout: 260 seconds]
unsymbol_ has quit [Ping timeout: 240 seconds]
jinie_ has quit [Ping timeout: 240 seconds]
jinie_ has joined #ruby
DTZUZO has quit [Ping timeout: 260 seconds]
aupadhye has joined #ruby
Psy-Q has joined #ruby
mtkd has joined #ruby
unsymbol has joined #ruby
sonne has joined #ruby
mooser has joined #ruby
j416 has joined #ruby
gix has quit [Ping timeout: 246 seconds]
jenrzzz has quit [Ping timeout: 260 seconds]
hahuang65 has joined #ruby
mooser has quit [Ping timeout: 255 seconds]
gix has joined #ruby
ur5us has quit [Remote host closed the connection]
dennisvennink has joined #ruby
charliesome has joined #ruby
hahuang65 has quit [Ping timeout: 255 seconds]
ur5us has joined #ruby
vuoto has joined #ruby
cagomez has joined #ruby
ramfjord has joined #ruby
cagomez has quit [Ping timeout: 240 seconds]
ramfjord has quit [Ping timeout: 276 seconds]
Bhootrk_ has quit [Ping timeout: 240 seconds]
mustaffa has joined #ruby
careta has joined #ruby
bronson has joined #ruby
jaruga has quit [Read error: Connection reset by peer]
jaruga has joined #ruby
jaruga has quit [Client Quit]
DTZUZO has joined #ruby
bronson has quit [Ping timeout: 255 seconds]
chrisarcand has joined #ruby
jericon has joined #ruby
ryotarai has joined #ruby
erlend has joined #ruby
veloutin has joined #ruby
marcellus has joined #ruby
zachary12 has joined #ruby
webhat has joined #ruby
dysfigured has joined #ruby
Dry_Lips has joined #ruby
ericnw has joined #ruby
thoraxe has joined #ruby
Dry_Lips has joined #ruby
Dry_Lips has quit [Changing host]
dcluna has joined #ruby
belmoussaoui has joined #ruby
jhass has joined #ruby
Archrover has joined #ruby
scottschecter has joined #ruby
brucebag has joined #ruby
planigan has joined #ruby
SHyx0rmZ has joined #ruby
brucebag has joined #ruby
brucebag has quit [Changing host]
brainslug has joined #ruby
BTRE has joined #ruby
kaspergrubbe has joined #ruby
ByronJohnson has joined #ruby
evie_hammond has joined #ruby
tabakhase has joined #ruby
inukshuk has joined #ruby
cydrobolt has joined #ruby
cydrobolt has quit [Changing host]
cydrobolt has joined #ruby
priodev has joined #ruby
clemens3 has joined #ruby
aloy has joined #ruby
Drakevr has joined #ruby
rapha has joined #ruby
tatey has joined #ruby
ged has joined #ruby
danman has joined #ruby
ta_ has joined #ruby
ikopico has joined #ruby
HoloIRCUser3 has joined #ruby
mjuhl has joined #ruby
roger_rabbit has joined #ruby
brw has joined #ruby
hkdsun has joined #ruby
bier has joined #ruby
Azure has joined #ruby
linduxed has joined #ruby
jyaworski has joined #ruby
Rodya_ has joined #ruby
perry has joined #ruby
perry has quit [Changing host]
perry has joined #ruby
zululee has joined #ruby
gnarf has joined #ruby
bokayio has quit [Ping timeout: 240 seconds]
charliesome_ has joined #ruby
charliesome has quit [Ping timeout: 240 seconds]
bodie_ has joined #ruby
bokayio has joined #ruby
michael_mbp has joined #ruby
Cork has joined #ruby
bauruine has joined #ruby
Rodya_ has quit [Ping timeout: 246 seconds]
timmow has joined #ruby
heinrich5991 has joined #ruby
Serpent7776 has joined #ruby
charliesome_ has quit [Ping timeout: 276 seconds]
ascarter has quit [Quit: My iMac has gone to sleep. ZZZzzz…]
InfinityFye has joined #ruby
cagomez has joined #ruby
ur5us has quit [Remote host closed the connection]
ascarter has joined #ruby
ramfjord has joined #ruby
cagomez has quit [Ping timeout: 260 seconds]
<darix> uhm
<darix> does trunk really need ruby to build itself?
dalpo has joined #ruby
nekomune has joined #ruby
ramfjord has quit [Ping timeout: 255 seconds]
<darix> hmm seems only when doing autoreconf. snapshot tarball works
ascarter has quit [Ping timeout: 255 seconds]
yuciyuar has joined #ruby
cagomez has joined #ruby
belmoussaoui has quit [Ping timeout: 240 seconds]
dennisvennink has quit [Read error: Connection reset by peer]
jenrzzz has joined #ruby
jenrzzz has joined #ruby
jenrzzz has quit [Changing host]
postmodern has quit [Quit: Leaving]
cagomez has quit [Ping timeout: 248 seconds]
ramfjord has joined #ruby
<dminuoso> darix: No.
runescape07rsps has quit [Ping timeout: 240 seconds]
<dminuoso> darix: It uses miniruby (which it bootstraps itself)
<darix> dminuoso: autoreconf -fi && ./configure
<darix> and it was trying to find ruby
<darix> :)
<darix> using snapshot.tar.gz it works
ramfjord has quit [Ping timeout: 276 seconds]
snowcrshd has joined #ruby
rgtk has joined #ruby
anaeem1 has quit [Quit: Leaving...]
rgr has quit [Quit: rgr]
jenrzzz has quit [Ping timeout: 255 seconds]
rgtk has quit [Ping timeout: 276 seconds]
catphish has joined #ruby
drcode has joined #ruby
bronson has joined #ruby
tomphp has joined #ruby
rgtk has joined #ruby
<catphish> my infinite sched_yield loop is still occurring: https://paste.ubuntu.com/25276100/
bronson has quit [Ping timeout: 260 seconds]
harryk has joined #ruby
<catphish> unfortunately i have no idea how to go about reproducing it in a controlled environment
astrobunny has quit [Remote host closed the connection]
rgtk has quit [Ping timeout: 240 seconds]
<matthewd> catphish: Other threads?
vuoto has quit [Quit: Lost terminal]
vuoto has joined #ruby
belmoussaoui has joined #ruby
tomphp has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
belmoussaoui has quit [Client Quit]
belmoussaoui has joined #ruby
ascarter has joined #ruby
sepp2k has joined #ruby
mikecmpbll has joined #ruby
hahuang65 has joined #ruby
ascarter has quit [Ping timeout: 248 seconds]
hahuang65 has quit [Ping timeout: 240 seconds]
nickjj has joined #ruby
tomphp has joined #ruby
jameser has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
xall has joined #ruby
tomphp has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<dminuoso> catphish: Can you describe the loop?
tomphp has joined #ruby
tomphp has quit [Client Quit]
tomphp has joined #ruby
bronson has joined #ruby
<dminuoso> Oh there was some gdb stuff at the bottom, I see.
tomphp has quit [Ping timeout: 248 seconds]
bronson has quit [Ping timeout: 248 seconds]
ahrs has quit [Remote host closed the connection]
ahrs has joined #ruby
lexruee has quit [Remote host closed the connection]
<catphish> dminuoso: i hope the step describes the loop, all i know for sure is that it repeatedly calls sched_yield()
lexruee has joined #ruby
xall has quit [Quit: xall]
<dminuoso> catphish: Yeah, I'm digging into the Ruby code. It looks like some unaccounted for race condition.
ldnunes has joined #ruby
<dminuoso> catphish: What OS are you on?
<catphish> thanks
<catphish> Linux 3.16.0-62-generic x86_64
<catphish> ubuntu 14.04
banisterfiend has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
lele has joined #ruby
<dminuoso> catphish: You're on a plain x86 architecture, right?
<dminuoso> I mean.. I know its implied in that kernel string, but I just wanna know whether that's a safe assumption to make.
<catphish> yes, just a regular install of ubuntu on a E5-2609 v2 @ 2.50GHz
vuoto has quit [Remote host closed the connection]
A124 has joined #ruby
<catphish> and ruby 2.3.4 built from source with everything default (you will find the line numbers are offset due to https://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_2_3/thread.c?r1=58289&r2=58288&pathrev=58289&view=patch
<dminuoso> catphish: Yeah Im using the git mirror
<dminuoso> catphish: So let's start with one thing. That particular loop is normal.
<catphish> that surprises me, i understood that kernel call was quite expensive
<dminuoso> catphish: Essentially it's just a spinlock.
<dminuoso> But it shouldn't spin indefinitely.
<dminuoso> (It's a spinlock around a semaphore)
ldnunes has quit [Ping timeout: 260 seconds]
<dminuoso> Kind of I guess.
<catphish> ok
<dminuoso> catphish: Does the problem trigger reliably on exit?
agent_white has quit [Quit: bbl]
<catphish> dminuoso: no, only randomly :(
<dminuoso> The code comments are mindnumbing..
<dminuoso> * send a signal to intent that a target thread return from blocking syscall.
<catphish> i have a job worker that fetches a job to be performed, forks, allows the job (which usually has many threads) to run in the fork, then when the child dies, it moves onto the next job
<catphish> this bug happens randomly across my whole app, but i usually see it on these worker children because they exit often
gizmore|2 is now known as gizmore
beilabs has joined #ruby
ldnunes has joined #ruby
c_3 has quit [Read error: Connection reset by peer]
c_3 has joined #ruby
<dminuoso> matthewd: The timer thread is just the thread that preempts non-cooperative thats that don't release/gil and yield right?
<dminuoso> *non-cooperative threads
<dminuoso> catphish: I would be very interested in what other threads are still running and where.
<catphish> i'll see if i can pull any more information
<catphish> about running threads specifically
synthroid has joined #ruby
ascarter has joined #ruby
<matthewd> dminuoso: I don't actually know what it does beyond "nothing particularly notable", tbh
BSAlb has joined #ruby
BSAlb has quit [Max SendQ exceeded]
<dminuoso> matthewd: Mmm. The code is really tough to read and has "japanese" written all over it. :|
BSAlb has joined #ruby
ramfjord has joined #ruby
BSAlb has quit [Max SendQ exceeded]
kev1n has joined #ruby
BSAlb has joined #ruby
<catphish> i'm just looking at a tangent mystery where one of the hung processes is a child created by open4 that shouldn't have been running ruby at all
BSaboia has quit [Ping timeout: 255 seconds]
BSAlb has quit [Max SendQ exceeded]
BSAlb has joined #ruby
BSAlb has quit [Read error: Connection reset by peer]
<dminuoso> The way I see it, the only way this could get stuck, is if this condition was constantly hit by another thread: https://github.com/ruby/ruby/blob/v2_3_3/thread_pthread.c#L1295
<dminuoso> Because it would have to get stuck inside one of these two: https://github.com/ruby/ruby/blob/v2_3_3/thread_pthread.c#L1312-L1327
ramfjord has quit [Ping timeout: 255 seconds]
<catphish> this one has just the one thread, the timer thread isn't running
DoubleMalt has quit [Ping timeout: 240 seconds]
ascarter has quit [Ping timeout: 260 seconds]
dennisvennink has joined #ruby
<catphish> i say "this one" because here's another that has both: https://paste.ubuntu.com/25276537/
<dminuoso> catphish: I can't fathom as to how that situation could end up.
<dminuoso> catphish: This is the only spot those ... wait
<dminuoso> a moment
<dminuoso> catphish: Please use gdb to tell me what timer_thread_pipe.writing actually is
<catphish> nb. your understanding of this far exceeds mine, so apologies if i'm just nodding and hoping you will find something
<catphish> dminuoso: gladly, how do i ask it?
kev1n has quit [Remote host closed the connection]
<catphish> (gdb) whatis timer_thread_pipe.writing
<catphish> type = rb_atomic_t
<catphish> i assume that's not terribly useful information?
<dminuoso> catphish: just use print :)
<catphish> (gdb) print timer_thread_pipe.writing
<catphish> $1 = 1
<dminuoso> Yeah and I dont see how that could be with no threads left.
<dminuoso> Unless the ATOMIC_INC/ATOMIC_DEC was buggy
<dminuoso> file a bug report.
<dminuoso> That is unless you have a native extension that fucks around with the timer directly
<catphish> this is in the process with
<catphish> oops
<catphish> Id Target Id Frame
<catphish> $1 = 1
<catphish> (gdb) print timer_thread_pipe.writing
<catphish> * 1 Thread 0x7f79872e8740 (LWP 15176) "ruby" 0x00007f7985f8c1d7 in sched_yield () at ../sysdeps/unix/syscall-template.S:81
<catphish> so, in the process with only one thread, that still occurs
aufi has joined #ruby
ldnunes has quit [Ping timeout: 255 seconds]
<dminuoso> catphish: File a bug report.
<catphish> it certainly could be a native extension making a mess, this app has a lot of dependencies
<dminuoso> catphish: Essentially there is a counter that is treated like this: atomic_inc_counter; do_stuff; atomic_dec_counter - that is the only place where that counter ever gets modified.
<dminuoso> catphish: It starts out with 0. If it ends up with anything but 0, there's something strangely fucked up.
<dminuoso> catphish: valgrind it perhaps
<catphish> is it possible that a thread increments it, then we fork, leaving it incremented
bronson has joined #ruby
sysvalve has quit [Ping timeout: 240 seconds]
sysvalve has joined #ruby
<catphish> can i see at a glance which gems i'm running have native code?
<catphish> i'd like to see if anything is obviously in common with this report: https://github.com/resque/resque/issues/578
<catphish> seemingly i'm not the first to have this bug, but it was never really resolved
ainieco has joined #ruby
<ainieco> hello, seems like modulo is broken in ruby
<matthewd> catphish: Check .so files in $" ?
<catphish> that's quite the accusation :)
<ainieco> (-2) % 8 == 6 but in reality it's -2
beilabs has quit [Remote host closed the connection]
<catphish> i'd be very unhappy if modulo returned a negative number
bronson has quit [Ping timeout: 240 seconds]
<catphish> i rather rely on it returning a repeating patters of 0 to n where n is a positive integer
<catphish> and i'd expect that to continue into negative number space
beilabs has joined #ruby
<catphish> ainieco: what makes you expect the result to be negative?
<herwin> ainieco: see https://en.wikipedia.org/wiki/Modulo_operation "Result has the same sign as"
jaruga has joined #ruby
<catphish> looks like ruby supports both!
t-recx has joined #ruby
<catphish> i had no idea it was so controversial :)
<ainieco> catphish: yeah, was confused by other languages
<catphish> yeah, makes sense, certainly looks like they vary
ldnunes has joined #ruby
<catphish> dminuoso: do you know off-hand what code is being run inside the block that increments that counter, if i can make it increment, then fork, i might have a chance of making a test case
spheric has quit [Quit: Textual IRC Client: www.textualapp.com]
antgel has quit [Quit: Lost terminal]
conta has quit [Remote host closed the connection]
conta has joined #ruby
<catphish> ominous :)
<catphish> /* must be safe inside sighandler, so no mutex */
conta has quit [Remote host closed the connection]
conta has joined #ruby
<dminuoso> catphish: For the purpose of the timer itself, it doesn't matter whether its mutex protected or not.
<dminuoso> *counter
jphase has joined #ruby
<dminuoso> catphish: Yup that's the commit that introduced the code.
<catphish> oh, my mistake
<catphish> i was misunderstanding something there
<catphish> am i right in my interpretation that a fork during that execution would lead to this situation?
marr has quit [Ping timeout: 246 seconds]
belmoussaoui has quit [Ping timeout: 248 seconds]
<dminuoso> catphish: Explain why
<catphish> dminuoso: if this code ran in a thread other than the main thread (which i assume is a possibility if someone has written code to spin and wait for it to unlock), then would a fork not cause the thread that incremented the value to be left behind (threads are not copied on fork) but the value would still remain incremented in the child
beilabs has quit [Remote host closed the connection]
hahuang65 has joined #ruby
<dminuoso> catphish: Agreed. You could trivially provoke this situation in fact.
charliesome has joined #ruby
<dminuoso> catphish: It does sound like a reasonable hypothesis. Test it. ;p
<dminuoso> However..
<catphish> any idea how i might do this?
belmoussaoui has joined #ruby
anisha has quit [Quit: This computer has gone to sleep]
uZiel has quit [Ping timeout: 248 seconds]
hahuang65 has quit [Ping timeout: 240 seconds]
ainieco has quit [Quit: leaving]
cpruitt has joined #ruby
belmoussaoui has quit [Client Quit]
belmoussaoui has joined #ruby
<dminuoso> catphish: Well here's what has to happen:
ascarter has joined #ruby
beilabs has joined #ruby
<dminuoso> catphish: There's 2 ways this wakeup call is triggered. a) whenever the gvl lock is acquired, and b) whenever a signal handler is called
rgtk has joined #ruby
aufi has quit [Quit: Leaving]
<catphish> ah i understand the loop now: while (ATOMIC_CAS(timer_thread_pipe.writing, (rb_atomic_t)0, 0)) native_thread_yield();
<catphish> so it's unquestionable that timer_thread_pipe.writing is being incremented and not decremented
funburn has joined #ruby
funburn has quit [Read error: Connection reset by peer]
ascarter has quit [Ping timeout: 260 seconds]
beilabs has quit [Read error: Connection reset by peer]
beilabs has joined #ruby
funburn has joined #ruby
uncle-bob has joined #ruby
funburn has quit [Read error: Connection reset by peer]
uncle-bob has quit [Remote host closed the connection]
aurelien has joined #ruby
_aeris_ has quit [Remote host closed the connection]
_aeris_ has joined #ruby
funburn has joined #ruby
naprimer2 has quit [Ping timeout: 260 seconds]
funburn has quit [Read error: Connection reset by peer]
DLSteve has joined #ruby
funburn has joined #ruby
funburn has quit [Read error: Connection reset by peer]
_aeris_ has quit [Remote host closed the connection]
bronson has joined #ruby
_aeris_ has joined #ruby
Bhootrk_ has joined #ruby
rgtk has quit [Ping timeout: 255 seconds]
funburn has joined #ruby
bronson has quit [Ping timeout: 240 seconds]
jamesaxl has quit [Read error: Connection reset by peer]
konsolebox has joined #ruby
naprimer2 has joined #ruby
jamesaxl has joined #ruby
tvw has joined #ruby
gr33n7007h has quit [Ping timeout: 240 seconds]
jameser has joined #ruby
Bhootrk_ has quit [Ping timeout: 276 seconds]
Bhootrk_ has joined #ruby
guardianx has joined #ruby
BSaboia has joined #ruby
t-recx has quit [Quit: t-recx]
mim1k has joined #ruby
<TheBrayn> I have an if call that I want to change: „if foo.bar? && baz = somefunction“ when will the second part fail?
<matthewd> TheBrayn: When it's false (or nil)?
<TheBrayn> ok
<TheBrayn> but this is an anti-pattern, right?
<matthewd> I'd say it's worth some caution (because people may misread it), but I personally don't avoid it too hard. (Assuming we're talking about the use of an assignment in the conditional.)
dionysus69 has quit [Ping timeout: 260 seconds]
mooser has joined #ruby
Dump_not has joined #ruby
<TheBrayn> ok I'll just wrap the second statement in parentheses
<catphish> IMO assigning in an if and ignoring the result is unnecessary and hence a bad idea for readability
<catphish> in this case, the second condition is *always* true, so there's no point having it in the conditional
<catphish> if(baz=true) << pointless if(baz=check_something()) << ok (in my opinion)
<dminuoso> catphish: and that ATOMIC_CAS must have been a brainfart.
<matthewd> catphish: Do you know something about `somefunction` that I don't?
<TheBrayn> yeah the result is used
dark_popara has joined #ruby
<catphish> matthewd: oh, totally misread, i saw the closing quote and thought somefunction was a string
<catphish> dminuoso: sorry, i don't follow
beilabs has quit [Remote host closed the connection]
mooser has quit [Ping timeout: 276 seconds]
ta_ has quit [Remote host closed the connection]
chouhoulis has joined #ruby
chouhoulis has quit [Remote host closed the connection]
<catphish> it does seem like while(!timer_thread_pipe.writing) would achieve the same thing
<dminuoso> catphish: No.
chouhoulis has joined #ruby
<dminuoso> catphish: The load could be teared.
<catphish> i'm afraid once again i don't understand
rgtk has joined #ruby
<dminuoso> catphish: Though considering what the code does, it probably really doesnt matter anyway. It's quite racey.
<catphish> oh, compare-and-swap is a safety for pointers
<dminuoso> catphish: Well while(!timer_thread_pipe.writing) is a load right? It loads some say 32 bit data. It's not guaranteed it does so in a single instruction.
<catphish> yeah, i think i understand
<catphish> so, i still need to work out why it's non-zero :(
mikecmpb_ has joined #ruby
truenito has joined #ruby
<catphish> i must admit i avoid shared memory between threads in c at all cost, so this is all quite new to me
__Yiota has joined #ruby
mikecmpbll has quit [Ping timeout: 258 seconds]
belmoussaoui has quit [Ping timeout: 260 seconds]
<dminuoso> catphish: the fork theory sounds reasonable.
<dminuoso> catphish: Well shared mutable state is the bane of all multithreading bugs :-)
beilabs has joined #ruby
Rodya_ has joined #ruby
Rapture has joined #ruby
<dminuoso> catphish: Turns out Ruby folks knew about this, and ensure the timer thread is stopped before fork...
<catphish> i was just looking for the before/aster fork code to check
chouhoul_ has joined #ruby
truenito has quit [Remote host closed the connection]
truenito has joined #ruby
<catphish> does stopping the timer thread actually prevent that code running though?
Rodya_ has quit [Ping timeout: 276 seconds]
<dminuoso> catphish: Yes.
ascarter has joined #ruby
stan has quit [Ping timeout: 240 seconds]
<dminuoso> From what I can tell
ResidentBiscuit has joined #ruby
stan has joined #ruby
chouhoulis has quit [Ping timeout: 240 seconds]
snowcrshd has quit []
beilabs has quit [Remote host closed the connection]
<catphish> sighandler() blindly calls rb_thread_wakeup_timer_thread() which blindly calls ATOMIC_INC(timer_thread_pipe.writing);
<catphish> i see no code to check if the timer thread exists
<dminuoso> catphish: In fact the timer stop code is empty for thread_pthread...
inoperable has quit [Quit: user rectified]
<catphish> i'm still not comprehending how this could be triggered in real life
nOwz has joined #ruby
<thuryn> dang. i missed the answer to my regexp question yesterday, and my client isn't logging.
<dminuoso> catphish: Each time the gvl lock is reacquired.
<catphish> oh, the call from ubf_select()
dark_popara has quit [Quit: WeeChat 1.9]
<dminuoso> catphish: no that one is irrelevant
GodFather has joined #ruby
<catphish> oh ok
<dminuoso> or wait..
<dminuoso> it calls the same function mmm
<catphish> i couldn't find any other calls to it
ascarter has quit [Ping timeout: 258 seconds]
<dminuoso> catphish: there's a call to rb_thread_wakeup_timer_thread_low from gvl_acquire_common
<catphish> oh gvl_acquire_common calls rb_thread_wakeup_timer_thread_low
<dminuoso> Yup
jameser has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<dminuoso> catphish: And that one in a multi-threaded environment is likely to be called whenever an effective context switch happens
apparition47 has joined #ruby
<catphish> i didn't believe my application was creating any threads pre-fork, but it's certainly seeming likely this is the cause
antgel has joined #ruby
antgel has quit [Client Quit]
<thuryn> does (^|\/) mean to match if the value of #{some_var} appears after the last / OR at the beginning of foo?
cam27 has joined #ruby
<thuryn> foo =~ /(^|\/)#{some_var}$/ <--- regarding this
mikecmpb_ has quit [Quit: inabit. zz.]
jameser has joined #ruby
<catphish> thuryn: ^ means the beginning of a line, $ means end of a line
<catphish> thuryn: so, it matches if some_var occurs at the end of a line following / or is both at the beginning and the end of a line
mikecmpbll has joined #ruby
<catphish> [beginning of line or /]some_var[end of line]
bronson has joined #ruby
<dminuoso> catphish: Well if there's any signal communication that could be a another
cam27 has left #ruby [#ruby]
hays has joined #ruby
hays has joined #ruby
hays has quit [Changing host]
<dminuoso> catphish: Im curious what ubf_select is about
<catphish> dminuoso: i wondered that, but signals don't make a thread do they? so the code would complete before a fork happened
<dminuoso> ubf means unblocking function supposedly
<hays> if i want to reuse code (like a class for example) without going all in on a gem is there a way to do this? require_relative maybe?
<dminuoso> catphish: technically signal handlers run outside normal thread flow but inside its process space
<hays> usecase: I have a directory of ruby scripts that all work together and share common aspects, and they are in my $PATH
banisterfiend has joined #ruby
<thuryn> catphish, okay, that's how i was reading it. thanks.
<dminuoso> catphish: assume a signal handler to behave like an injectd setjmp/longjmp/longjmp
hightower2 has joined #ruby
<hightower2> Hey, what's some good Ruby library for parsing a directory tree and finding files? (Some Find library/module, but not the one from standard lib)
<catphish> a line of code in native_reset_timer_thread() would probably fix this, but it might be hacky at best
<dminuoso> catphish: though. you are right.
<dminuoso> without creating a thread pre-fork its impossible to race.
<catphish> dminuoso: that's what i was thinking, however maybe i have a thread i'm not aware of, a stray timeout or similar
bronson has quit [Ping timeout: 240 seconds]
<dminuoso> because the only thread is blocked from executoin until the signal handler is executed
<catphish> dminuoso: that was my assessment
<dminuoso> catphish: well you can check if there's a thread if you just set a breakpoint into the appropriate c function and just run until fork :P
<dminuoso> catphish: But that thread would have to run basically during forking.
<dminuoso> catphish: considering it's the main thread that has the signal handlers, I don't think its signals we have to worry about
<dminuoso> its either the gvl_common_acquire or ubf_select
<hays> anyone have any insight to my question? really just trying to put together some quick commandline utilities and I hate having to copypaste my classes everywhere
cschneid_ has joined #ruby
bruno- has joined #ruby
<dminuoso> hays: require_relative is a thing :-)
<catphish> pthread's native_reset_timer_thread() does nothing right now, but it could tidy up this mess if it wanted to
<Silthias1> hays: cant comment on if its good practise or not, but i use require_relative for what your decribing
guardianx has quit []
<catphish> hays: put them in files, require them
<hays> and the relative part is relative to the script location not the current working directory right
<catphish> hays: correct
<dminuoso> catphish: I found something else...
<catphish> dminuoso: :)
belmoussaoui has joined #ruby
<dminuoso> Look at that... if only that had an effect. ;-)
<hays> thanks
hays has quit [Remote host closed the connection]
mim1k has quit [Ping timeout: 255 seconds]
belmoussaoui has quit [Remote host closed the connection]
<catphish> dminuoso: well it does stop the wakeups :)
<dminuoso> catphish: Everything here smells that it needs pthread_cond_wait
belmoussaoui has joined #ruby
cadillac_ has joined #ruby
<dminuoso> catphish: The problem is not the wakeup itself.
<dminuoso> It's the pieces of execution that trigger it.
gr33n7007h has joined #ruby
<dminuoso> catphish: fork needs to block rb_thread_wakeup_timer_thread and rb_thread_wakeup_timer_thread_low from having a side-effect
jamesaxl has quit [Ping timeout: 260 seconds]
<catphish> one option is simply to set writing=0 in native_reset_timer_thread()
<catphish> since this runs after fork, its purpose is to clean up the timer thread, currently it does nothing
<dminuoso> catphish: Great idea! While another thread is in the middle of rb_thread_wakeup_timer_thread
<dminuoso> catphish: then you end up with a non-0 counter again
<catphish> if that's possible, yes
<dminuoso> catphish: The thing is, rb_thread_wakeup_timer_thread is a critical section.
polysics has joined #ruby
<dminuoso> catphish: lack of mutex makes it hard to do anything sensible
polishdub has joined #ruby
<catphish> rb_thread_reset_timer_thread is only called by after_exec()
<catphish> so, as a hack, i suspect it's safe, but it's not clear to me what the correct solution is
<dminuoso> catphish: So you agree that we can't just introduce a mutex into rb_thread_wakeup_timer_thread, because since it's executed from signal handlers. Right?
charliesome has quit [Ping timeout: 240 seconds]
<catphish> if you put a mutex around it 1) it would potentially deadlock in signal handlers 2) it still wouldn't stop another thread forking
<catphish> should i go ahead and write this up as a bug somewhere?
<dminuoso> catphish: What you could do, is put a spinlock in rb_thread_wakeup_timer_thread
<dminuoso> Though.. no. That thing makes syscalls.
oleo has joined #ruby
rabajaj has quit [Quit: Leaving]
<dminuoso> catphish: What if fork simply reset the writer count?
<catphish> dminuoso: see 5 minutes ago ;)
<dminuoso> catphish: missed it, but had the same thought and reasoning :)
<catphish> rb_fork_ruby -> fork(); after_fork_ruby() -> after_exec() -> after_exec_non_async_signal_safe() -> rb_thread_reset_timer_thread()
<dminuoso> catphish: By the way, that stray label (it's removed in 2.4) is quite funny: https://github.com/ruby/ruby/blob/v2_3_3/thread_pthread.c#L1291
<catphish> it's like someone wrote a stub ready for this bug
sleepee has joined #ruby
<dminuoso> catphish: Oh indeed. There's quite a few stubs in there.
<dminuoso> catphish: Haha, let me blame this
<catphish> dminuoso: so basically the very first thing that gets run after a fork is rb_thread_reset_timer_thread() - this does nothing but is perfectly poised to reset everything related to the timer thread (ie the writing counter)
<dminuoso> catphish: Considering the size of that execution path, it should pretty darn hard to trigger this bug. So it's actually surprising that you got this bug repeatedly.
<catphish> dminuoso: i'd agree, but i'm apparantly not the only one
<catphish> there must be a particular pattern that makes this likely
<dminuoso> catphish: Wow, this was not just a second author adding a funny remark.
<dminuoso> catphish: This was actually a single change: https://github.com/ruby/ruby/commit/d074d0df9503b8df51c0ec5e5137c4729f511b17
nadir has quit [Quit: Connection closed for inactivity]
_main_ has joined #ruby
_main_ has quit [Read error: Connection reset by peer]
<catphish> oh yeah :)
_main_ has joined #ruby
forgot has quit [Remote host closed the connection]
__main__ has quit [Read error: Connection reset by peer]
Dump_not has quit [Remote host closed the connection]
mark_66 has quit [Remote host closed the connection]
<catphish> the question for me now is whether i test my timer_thread_pipe.writing = 0 fix on a production application server
<catphish> since i have no other way to reproduce this
truenito has quit [Ping timeout: 260 seconds]
_main_ is now known as __main__
hahuang65 has joined #ruby
camonz has joined #ruby
Rodya_ has joined #ruby
<catphish> i'll raise this as a bug with my proposed solution
Burgestrand has quit [Quit: Closing time!]
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
hahuang65 has quit [Ping timeout: 260 seconds]
chouhoul_ has quit [Remote host closed the connection]
chouhoulis has joined #ruby
Rodya_ has quit [Ping timeout: 258 seconds]
jameser has quit [Ping timeout: 240 seconds]
__Yiota has joined #ruby
jameser has joined #ruby
Bhootrk_ has quit [Read error: Connection reset by peer]
d10n-work has joined #ruby
TomyWork has quit [Ping timeout: 240 seconds]
<dminuoso> catphish: I wonder... does fork not lock the gvl?
HoloIRCUser has joined #ruby
<dminuoso> catphish: I mean in my mind, Im trying to sketch a scenario
<matthewd> s/not lock/release/
ascarter has joined #ruby
<catphish> dminuoso: i don't think it would matter, because rb_thread_wakeup_timer_thread_fd returns immediately before running any other code
jackjackdripper has joined #ruby
<catphish> even if it was run immediately before a fork, it would still return and decrement first
HoloIRCUser3 has quit [Ping timeout: 240 seconds]
<catphish> Eric Wong would be the man to ask about this
synthroid has quit [Remote host closed the connection]
digitalnomad has joined #ruby
cagomez has joined #ruby
cagomez has quit [Remote host closed the connection]
synthroid has joined #ruby
cagomez has joined #ruby
synthroid has quit [Remote host closed the connection]
synthroi_ has joined #ruby
<catphish> well i hope someone sees my bug :)
jameser has quit [Ping timeout: 240 seconds]
uZiel has joined #ruby
HoloIRCUser has quit [Read error: Connection reset by peer]
HoloIRCUser has joined #ruby
HoloIRCUser is now known as aleph_
bronson has joined #ruby
brw has quit [Read error: Connection reset by peer]
ascarter has quit [Ping timeout: 260 seconds]
wickedbloodfart has joined #ruby
brw has joined #ruby
synthroid has joined #ruby
jameser has joined #ruby
dionysus69 has joined #ruby
synthroi_ has quit [Ping timeout: 260 seconds]
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
digitalnomad has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
bronson has quit [Ping timeout: 276 seconds]
conta has quit [Ping timeout: 260 seconds]
digitalnomad has joined #ruby
<catphish> dminuoso: thanks for all the help, time to go now, but i'll keep an eye on my bug report, and try to test my proposed fix, i'm sure someone will come up with a better fix
catphish has quit [Quit: Leaving]
__Yiota has joined #ruby
brent__ has joined #ruby
brent__ has quit [Remote host closed the connection]
brent__ has joined #ruby
rikmen has joined #ruby
rikmen has left #ruby [#ruby]
brent__ has quit [Remote host closed the connection]
ahrs has quit [Remote host closed the connection]
ahrs has joined #ruby
brent__ has joined #ruby
mim1k has joined #ruby
dionysus69 has quit [Ping timeout: 260 seconds]
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
TomyLobo has joined #ruby
jameser has quit [Ping timeout: 240 seconds]
<dminuoso> matthewd: Mmm at what point though?
jameser has joined #ruby
mim1k has quit [Ping timeout: 248 seconds]
<matthewd> At all, I guess. My point was just that the lock will be held at the time the function is invoked, and it'd have to go out of its way to release it.
<dminuoso> matthewd: Well if the gvl was released after the forked process was prepared it wouldn't have an impact
<dminuoso> Oh well. I guess the critical point is when the actual process is syscall forked
[Butch] has joined #ruby
alnewkirk has joined #ruby
DoubleMalt has joined #ruby
Ishido has joined #ruby
jackjackdripper has quit [Quit: Leaving.]
npgm has joined #ruby
BSAlb has joined #ruby
jackjackdripper has joined #ruby
mim1k has joined #ruby
PaulCapestany has quit [Read error: Connection reset by peer]
cdg has joined #ruby
PaulCape_ has joined #ruby
BSaboia has quit [Ping timeout: 255 seconds]
cdg_ has joined #ruby
__Yiota has joined #ruby
mim1k has quit [Ping timeout: 240 seconds]
jphase has quit [Remote host closed the connection]
tvw has quit [Read error: Connection reset by peer]
jphase has joined #ruby
Rodya_ has joined #ruby
cdg has quit [Ping timeout: 260 seconds]
gusrub has joined #ruby
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
__Yiota has joined #ruby
Rodya_ has quit [Ping timeout: 258 seconds]
apparition47 has quit [Quit: Bye]
Serpent7776 has quit [Quit: Leaving]
sysvalve has quit [Quit: Leaving]
rgtk has quit [Ping timeout: 240 seconds]
yuciyuar has quit [Quit: Leaving]
sylario has joined #ruby
t-recx has joined #ruby
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
beilabs has joined #ruby
canton7 has quit [Quit: ZNC - http://znc.in]
canton7 has joined #ruby
ascarter has joined #ruby
mikecmpbll has quit [Quit: inabit. zz.]
bronson has joined #ruby
BSab has joined #ruby
BSab has quit [Max SendQ exceeded]
BSab has joined #ruby
bronson has quit [Ping timeout: 240 seconds]
danman has quit [Quit: danman]
s1kx has joined #ruby
BSab has quit [Max SendQ exceeded]
BSab has joined #ruby
BSAlb has quit [Ping timeout: 246 seconds]
dionysus69 has joined #ruby
ascarter has quit [Ping timeout: 255 seconds]
BSab has quit [Max SendQ exceeded]
BSab has joined #ruby
BSab has quit [Max SendQ exceeded]
rubylearner121 has joined #ruby
BSab has joined #ruby
jameser has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
belmoussaoui has quit [Ping timeout: 255 seconds]
eldebrim1 has joined #ruby
Beams has quit [Quit: .]
goyox86 has joined #ruby
yehowyada has joined #ruby
X-tonic has quit [Quit: Leaving.]
rgtk has joined #ruby
sumobob has quit [Ping timeout: 248 seconds]
HoloIRCUser2 has joined #ruby
alfie_ has joined #ruby
__Yiota has joined #ruby
conta has joined #ruby
aleph_ has quit [Ping timeout: 276 seconds]
ta_ has joined #ruby
uZiel has quit [Ping timeout: 248 seconds]
yehowyada has quit [Quit: Textual IRC Client: www.textualapp.com]
alfie_ is now known as alfiemax
hahuang65 has joined #ruby
HoloIRCUser2 has quit [Remote host closed the connection]
<alfiemax> hey everyone... :)
<alfiemax> i'm facing an issue where nokogiri isn't able to get all the a tags
<alfiemax> this is what is tried :
<alfiemax> doc = Nokogiri::HTML(open('http://www.cluelessapp.com')) ; links = doc.css('a')
<alfiemax> it returns 6 links, but i'm sure there are more, since the obvious facebook/twitter links are not returned
Rodya_ has joined #ruby
eckhardt has joined #ruby
<Papierkorb> alfiemax: more links (and what not) may actually be loaded later through javascript on the page
<alfiemax> but i do see it in the source of the page, so i doubt it's added via JS
hahuang65 has quit [Ping timeout: 240 seconds]
cagomez has quit [Remote host closed the connection]
<Papierkorb> Oh my god, that's super broken HTML
<Papierkorb> > <style=text-align: center><label> Your Name<br />
cagomez has joined #ruby
<Papierkorb> No, I didn't forget to copy the quotes. There are none.
Rodya_ has quit [Ping timeout: 246 seconds]
<alfiemax> one sec
cagomez has quit [Remote host closed the connection]
<alfiemax> yea, you are right
cagomez has joined #ruby
<alfiemax> so how did yo find it ?
<Papierkorb> Looking at the source
<Papierkorb> Or rather, being confused that my editor suddenly stopped doing proper highlighting of the document
jack298 has joined #ruby
<jack298> Hi! I'm trying to do some authentication with the Sinatra::Warden module, but I'm always getting NoMethod error for authenticated?. Here is my app.rb file: https://gist.github.com/anonymous/8c79d5d0bc123304845ba3004d9e7290 . Can somebody help me?
rippa has joined #ruby
uZiel has joined #ruby
dviola has joined #ruby
dennisvennink has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
goyox86 has quit [Read error: Connection reset by peer]
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
goyox86 has joined #ruby
jphase has quit [Remote host closed the connection]
mooser has joined #ruby
jphase has joined #ruby
<alfiemax> @Papierkorb thanks :)
goyox86 has quit [Ping timeout: 240 seconds]
kies has joined #ruby
ascarter has joined #ruby
agent_white has joined #ruby
DoubleMalt has quit [Read error: Connection reset by peer]
bronson has joined #ruby
polysics_ has joined #ruby
mikecmpbll has joined #ruby
ascarter has quit [Client Quit]
DoubleMalt has joined #ruby
polysics has quit [Ping timeout: 248 seconds]
beilabs has quit [Read error: Connection reset by peer]
aupadhye has quit [Ping timeout: 255 seconds]
BSab has quit [Quit: Leaving]
DoubleMalt has quit [Read error: Connection reset by peer]
beilabs has joined #ruby
ascarter has joined #ruby
bronson has quit [Ping timeout: 240 seconds]
polysics_ has quit [Remote host closed the connection]
polysics has joined #ruby
sneakerhax has joined #ruby
polysics has quit [Ping timeout: 240 seconds]
ascarter has quit [Ping timeout: 255 seconds]
ur5us has joined #ruby
mooser has quit [Remote host closed the connection]
Ishido has quit [Remote host closed the connection]
ur5us has quit [Ping timeout: 255 seconds]
polysics has joined #ruby
ascarter has joined #ruby
kies has quit [Ping timeout: 240 seconds]
TimAndLyle has joined #ruby
polysics has quit [Client Quit]
TimAndLyle has left #ruby [#ruby]
kies has joined #ruby
ryzokuken has joined #ruby
rgtk has quit [Ping timeout: 240 seconds]
frem has joined #ruby
uZiel has quit [Ping timeout: 248 seconds]
cdg_ has quit [Remote host closed the connection]
Guest24408 has joined #ruby
jaruga has quit [Quit: jaruga]
ascarter has quit [Ping timeout: 255 seconds]
cdg has joined #ruby
Guest24408 has quit [Quit: Leaving]
alfiemax has quit []
preyalone has joined #ruby
mooser has joined #ruby
HelloCode has joined #ruby
Rodya_ has joined #ruby
jackjackdripper has quit [Quit: Leaving.]
sumobob has joined #ruby
Rodya_ has quit [Ping timeout: 240 seconds]
ramfjord has joined #ruby
conta has quit [Ping timeout: 240 seconds]
bronson has joined #ruby
uZiel has joined #ruby
dcluna has quit [Ping timeout: 246 seconds]
anisha has joined #ruby
synthroi_ has joined #ruby
<zmo> hi!
dcluna has joined #ruby
ramfjord has quit [Ping timeout: 240 seconds]
workmad3 has quit [Ping timeout: 260 seconds]
ldnunes has quit [Ping timeout: 255 seconds]
<zmo> is there a ruby function like python's all() that will return true if all values of the list are true ?
careta has quit [Ping timeout: 255 seconds]
SeepingN has joined #ruby
synthroid has quit [Ping timeout: 260 seconds]
ramfjord has joined #ruby
<zmo> or, if not, to avoid the typical X-Y problem question: how, given an array of hashes that have a key => `[{'name':.., ...}, {'name':..,..}...]` how can I check in a one liner that a given name exists?
<zmo> aaargh
<zmo> l.all?
rippa has quit [Ping timeout: 276 seconds]
<zmo> still having a hard time to check the `?`
digitalnomad has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ramfjord has quit [Ping timeout: 258 seconds]
Rapture has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
rippa has joined #ruby
agent_white has quit [Quit: brb]
agent_white has joined #ruby
chouhoul_ has joined #ruby
ramfjord has joined #ruby
lxsameer has joined #ruby
nadir has joined #ruby
chouhou__ has joined #ruby
__Yiota has joined #ruby
polysics has joined #ruby
ldnunes has joined #ruby
polysics has quit [Client Quit]
Bock has quit [Ping timeout: 240 seconds]
chouhoulis has quit [Ping timeout: 258 seconds]
chouhoul_ has quit [Ping timeout: 248 seconds]
conta has joined #ruby
uZiel has quit [Ping timeout: 248 seconds]
cjk101010 has joined #ruby
ldnunes has quit [Ping timeout: 260 seconds]
conta has quit [Ping timeout: 260 seconds]
Rodya_ has joined #ruby
jackjackdripper has joined #ruby
eightlimbed has joined #ruby
vuoto has joined #ruby
marxarelli|afk has quit [Quit: Textual IRC Client: www.textualapp.com]
InfinityFye has quit [Quit: Leaving]
sumobob has quit [Ping timeout: 240 seconds]
alfie_ has joined #ruby
alfie_ is now known as alfiemax
alfiemax has quit [Client Quit]
alfiemax has joined #ruby
Rodya_ has quit [Ping timeout: 255 seconds]
<alfiemax> Hey
<alfiemax> a followup of the previous issue... using nokogiri
AxelAlex has joined #ruby
<alfiemax> doc = Nokogiri::XML(open('http://www.cluelessapp.com')) ; links = doc.css('a')
<alfiemax> this ignores the html issues it has and returns all the links on the page
<alfiemax> as compared to Nokogiri::HTML which doesn't because it's an invalid html, so how's HTML & XML parsing different?
postmodern has joined #ruby
jenrzzz has joined #ruby
ldnunes has joined #ruby
ShekharReddy has quit [Quit: Connection closed for inactivity]
conta has joined #ruby
Immune has quit [Read error: Connection reset by peer]
uZiel has joined #ruby
Immune has joined #ruby
ascarter has joined #ruby
Rapture has joined #ruby
uZiel has quit [Remote host closed the connection]
marr has joined #ruby
runescape07rsps has joined #ruby
uZiel has joined #ruby
jenrzzz has quit [Ping timeout: 255 seconds]
cagomez has quit [Remote host closed the connection]
hahuang65 has joined #ruby
cjk101010 has left #ruby ["Textual IRC Client: www.textualapp.com"]
chouhoulis has joined #ruby
ascarter has quit [Ping timeout: 276 seconds]
<alfiemax> no one?? :(
high_fiver has joined #ruby
ldnunes has quit [Ping timeout: 240 seconds]
chouhou__ has quit [Ping timeout: 240 seconds]
micah has joined #ruby
hahuang65 has quit [Ping timeout: 240 seconds]
<micah> if I say: unless scope[v].nil? and scope[v].false? -- does that mean "do the following, unless scope[v] is not nil, and scope[v] is not false?
chouhoulis has quit [Remote host closed the connection]
chouhoulis has joined #ruby
MarkBilk has joined #ruby
<havenwood> micah: Ruby doesn't have a #false? out of the box. You'd have to add one.
<havenwood> micah: You can do just `if scope[v]` and `unless scope[v]`.
<havenwood> micah: Only `false` and `nil` are falsey. Everything else is truthy.
<micah> havenwood: you mean put both 'if scope[v]' along with 'unless scope[v]' or are you saying I can use either one
nacsurte has quit [Ping timeout: 240 seconds]
<havenwood> micah: Either one, they're inverse of each other.
swills has quit [Ping timeout: 248 seconds]
<havenwood> alfiemax: Maybe give it a try with Oga.
MarkBilk__ has quit [Ping timeout: 255 seconds]
<micah> havenwood: well, if the value of scope[v] is false, I dont want to do the following thing
<havenwood> alfiemax: We could help you debug it better if you can give a working example. I see 10 elements with the code you gave. How many are expected? Which are missing?
<havenwood> micah: do_things if scope[v]
<alfiemax> doc = Nokogiri::HTML(open('http://www.cluelessapp.com')) ; links = doc.css('a')
<alfiemax> this gives 6
<alfiemax> doc = Nokogiri::XML(open('http://www.cluelessapp.com')) ; links = doc.css('a')
<alfiemax> this gives 10
nacsurte has joined #ruby
<alfiemax> missing one's are the social links, facebook, twitter, etc
<havenwood> alfiemax: Are the missing ones <a href=> tags?
<alfiemax> no
Burgestrand has joined #ruby
<havenwood> That's why they're missing.
<micah> havenwood: so if scope[v] is not defined, it wont fail?
<alfiemax> tags are not missing, the problem is that :
<havenwood> micah: it would be nil if undefined, which would be a no-op
<alfiemax> on line 281, 292 there are html violations
<havenwood> micah: if nil
<micah> i'm confused now
micah has left #ruby [#ruby]
ldnunes has joined #ruby
<alfiemax> but why the diff between XML vs HTML parsing?
<alfiemax> what does XML parsing skip?
planigan has quit [Quit: leaving]
planigan has joined #ruby
eckhardt has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<havenwood> >> 42 if nil # micah
<ruby[bot]> havenwood: # => nil (https://eval.in/843618)
eckhardt has joined #ruby
<havenwood> afisher: XML is stricter.
<havenwood> alfiemax: ^
<havenwood> afisher: sorry for the ping, misstell
eelster has joined #ruby
<alfiemax> :D
ams__ has quit [Quit: Connection closed for inactivity]
<alfiemax> seems like the other way round, since using XML it ignored those HTML violations
<afisher> havenwood: no worries
swills has joined #ruby
swills has joined #ruby
swills has quit [Changing host]
jordanm has quit [Quit: Konversation terminated!]
guacamole has joined #ruby
jpterry has joined #ruby
<mnemon> alfiemax: html parser doesn't like newlines inside the tags? :)
bronson has quit []
cagomez has joined #ruby
jordanm has joined #ruby
nacsurte has quit [Ping timeout: 240 seconds]
ramfjord has quit [Ping timeout: 248 seconds]
eelster has quit [Quit: My Mac Mini has gone to sleep. ZZZzzz…]
joast has quit [Ping timeout: 246 seconds]
nacsurte has joined #ruby
theRoUS` has left #ruby ["Off to another part of the maze of twisty little passages"]
eelster has joined #ruby
Burgestrand has quit [Quit: Closing time!]
eckhardt has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
mim1k has joined #ruby
mostlybadfly has joined #ruby
Burgestrand has joined #ruby
armando has quit [Ping timeout: 240 seconds]
wilbert has joined #ruby
alfiemax has quit [Remote host closed the connection]
jphase has quit [Remote host closed the connection]
jphase has joined #ruby
mim1k has quit [Ping timeout: 240 seconds]
jenrzzz has joined #ruby
jenrzzz has joined #ruby
jenrzzz has quit [Changing host]
digitalnomad has joined #ruby
alfiemax has joined #ruby
jphase has quit [Ping timeout: 240 seconds]
jenrzzz has quit [Ping timeout: 240 seconds]
dennisvennink has joined #ruby
eelster has quit [Quit: My Mac Mini has gone to sleep. ZZZzzz…]
eelster has joined #ruby
FastJack has quit [Read error: Connection reset by peer]
FastJack has joined #ruby
NeverTired has joined #ruby
conta has quit [Ping timeout: 240 seconds]
tomphp has joined #ruby
ramfjord has joined #ruby
FastJack has quit [Read error: Connection reset by peer]
ascarter has joined #ruby
Dimik has joined #ruby
vondruch has quit [Quit: vondruch]
FastJack has joined #ruby
vondruch has joined #ruby
tomphp has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ramfjord has quit [Ping timeout: 240 seconds]
wickedbloodfart has quit [Quit: wickedbloodfart]
jenrzzz has joined #ruby
jenrzzz has joined #ruby
jenrzzz has quit [Changing host]
vondruch has quit [Client Quit]
vondruch has joined #ruby
tomphp has joined #ruby
law has joined #ruby
<law> hey all, is there a way to tell rest-client to ONLY use ipv4? I'm dealing with a broken IPv6 config, and rest-client is preferring v6 addresses
Rodya_ has joined #ruby
ascarter has quit [Ping timeout: 255 seconds]
tomphp has quit [Client Quit]
<konsolebox> what does Ruby use to produce its API documentation?
<konsolebox> rdoc?
tirej has joined #ruby
tirej has joined #ruby
tirej has quit [Changing host]
tirej has quit [Client Quit]
tirej has joined #ruby
tirej has joined #ruby
tirej has quit [Changing host]
<konsolebox> anyone can tell how to produce the html files with the extracted ruby source?
tomphp has joined #ruby
tomphp has quit [Client Quit]
anisha has quit [Quit: This computer has gone to sleep]
ramfjord has joined #ruby
<konsolebox> hmm, nvm
sumobob has joined #ruby
<clemens3> konsolebox: you mean docs for ruby itself, or for your own code? personally i downloaded the ruby docs from the web locally, but rvm can create the docs, just dunno where to find it then..: https://rvm.io/rubies/docs
<konsolebox> clemens3: i already knew how to produce them. rdoc --op rdoc. i do use a local copy instead if i need a reference, but this is for knowing how ruby does it, because i'll also create a documentation for my own code.
<clemens3> konsolebox: seems rvm docs open is worth a try after docs creation... personally coming from java with javadoc, i am underwheelmed with ruby doc, thought they have some..
<clemens3> konsolebox: wait a second then
ramfjord has quit [Ping timeout: 240 seconds]
armando has joined #ruby
<clemens3> konsolebox: for example: cd myproject; rdoc --output nonexistentdocdir bin/myprog.rb lib/mylib.rb; open nonexistentdocdir/index.html
Rodya_ has quit [Ping timeout: 240 seconds]
swills has quit [Ping timeout: 260 seconds]
<konsolebox> clemens3: oh, that part is a bit obvious already ,but thanks
<konsolebox> clemens3: now i'm done generating the files, but i kind of don't like the html's theme
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
<konsolebox> gotta try 0.36.0
<clemens3> konsolebox: oki, but don't know how to use your own templates..
reber has joined #ruby
jphase has joined #ruby
hahuang65 has joined #ruby
<Mrgoose2> How can I use a protobuf binary in ruby?
eckhardt has joined #ruby
jokke has quit [Quit: WeeChat 1.7.1]
jphase has quit [Ping timeout: 255 seconds]
ramfjord has joined #ruby
MarkBilk_ has joined #ruby
jokke has joined #ruby
hahuang65 has quit [Ping timeout: 260 seconds]
MarkBilk has quit [Ping timeout: 260 seconds]
ta__ has joined #ruby
ta_ has quit [Read error: Connection reset by peer]
tirej has quit [Quit: leaving]
mjuszczak has joined #ruby
eightlimbed has quit [Ping timeout: 260 seconds]
sepp2k has quit [Quit: Leaving.]
zenspider_ is now known as zenspider
zenspider has quit [Changing host]
zenspider has joined #ruby
<zenspider> rawr
swills has joined #ruby
mjuszczak has quit []
<zenspider> clemens3: what part(s) of the doco do you object to?
_sfiguser has joined #ruby
eightlimbed has joined #ruby
Dimik has quit [Ping timeout: 276 seconds]
dennisvennink has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
synthroi_ has quit []
eelster has quit [Quit: Textual IRC Client: www.textualapp.com]
cpruitt has quit [Ping timeout: 240 seconds]
ur5us has joined #ruby
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
swistak35_ has quit [Quit: ZNC - http://znc.in]
__Yiota has joined #ruby
jack298 has quit [Ping timeout: 248 seconds]
sylario has quit [Quit: Connection closed for inactivity]
saintcajetan has joined #ruby
DLSteve has quit [Quit: All rise, the honorable DLSteve has left the channel.]
dennisvennink has joined #ruby
nopoliti1 has joined #ruby
KeyJoo has joined #ruby
nopolitica has quit [Ping timeout: 260 seconds]
<law> hey all, I'm trying to re-index a hash given to me from an API, and I'm having a heck of a time getting my iterator right
<adaedra> what do you have so far?
Burgestrand has quit [Quit: Closing time!]
ascarter has joined #ruby
<law> that. it gives me a newhash.length of 0
<adaedra> Hash#merge returns a new hash, it does not modify the current one
<adaedra> For changing just one key, just do `hash[key] = value`
<law> example?
ldnunes has quit [Quit: Leaving]
<adaedra> ?
<law> oh wait, here we go. Hash.merge! does what i want
<law> thanks for the tip, I forgot that Hash.merge was non-destructive
<law> is there a way to iterate over this so the structure of the source hash can be arbitrary?
digitalnomad has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<adaedra> you just want to have the value in `unique_string_id` as key?
brent__ has quit [Remote host closed the connection]
<law> correct
<adaedra> Just use `group_by`
<adaedra> Coupled with `delete` if you don't want the key in sub-hashes
<law> is that part of Hash, or something else?
<adaedra> I think it's from Enumerable
<adaedra> &ri Hash#group_by
<adaedra> yep
<zenspider> law: Enumerable... read the doco for that whole module and you'll be happier
<law> hell yes. thank you!
cpruitt has joined #ruby
Rodya_ has joined #ruby
ascarter has quit [Ping timeout: 255 seconds]
<konsolebox> second law: keep a local copy of the documentation, and bookmark the important classes/modules in a folder in bookmarks toolbar
SP|Scream has joined #ruby
sumobob has quit [Quit: WeeChat 1.7]
ecuanaso has joined #ruby
<law> +1
<adaedra> Or just use ri
<zenspider> this ^^^
digitalnomad has joined #ruby
<adaedra> Why make a copy of the documentation you already have?
alfiemax has quit [Remote host closed the connection]
<law> hrm. how do I want to structure this iterator? I must admit, I'm pretty light on this stuff
cpruitt has quit [Ping timeout: 240 seconds]
vuoto has quit [Remote host closed the connection]
Rapture has quit [Quit: Textual IRC Client: www.textualapp.com]
cpruitt has joined #ruby
GodFather has quit [Remote host closed the connection]
alfiemax has joined #ruby
_sfiguser has quit [Ping timeout: 240 seconds]
GodFather has joined #ruby
rgr has joined #ruby
alfiemax has quit [Ping timeout: 240 seconds]
hahuang65 has joined #ruby
GodFather has quit [Remote host closed the connection]
<havenwood> law: array.map { |hash| key = hash[:unique_string_id]; value = hash.reject { |k, _| k == :unique_string_id }; [key, value] }.to_h
<havenwood> law: array.each_with_object({}) { |hash, result| result[hash[:unique_string_id]] = hash.reject { |k, _| k == :unique_string_id } }
GodFather has joined #ruby
<havenwood> law: ^ those are two ways, there are plenty more
<zenspider> ew
<konsolebox> adaedra: what do you mean "why make a copy"?
careta has joined #ruby
GodFather has quit [Remote host closed the connection]
<adaedra> You were the one speaking of making a copy.
mustaffa has quit [Remote host closed the connection]
<konsolebox> adaedra: please be explicit about what i was speaking of
<adaedra> > konsolebox second law: keep a local copy of the documentation, and bookmark the important classes/modules in a folder in bookmarks toolbar
<konsolebox> adaedra: it depends on the system. i don't have it by default.
GodFather has joined #ruby
<konsolebox> `$ ri Class` -> Nothing known about Class
brent__ has joined #ruby
<adaedra> sad.
<konsolebox> not really.
<havenwood> law: don't name your variables `array` and `hash` for real - be more descriptive of what's in the collections
<zenspider> konsolebox: rvm? there's a command to generate the ri info. I wish they didn't turn it off by default
_sfiguser has joined #ruby
<konsolebox> nah. i just enabled the "doc" flag and it's already generating. but i doubt the html template would be same as the one i liked.
<zenspider> konsolebox: ri doesn't have an html template... which is why it is nice. :)
<zenspider> but if you have one you like, you can fire off rdoc w/ a flag to point at it
<law> havenwood: but of course, I'm just genericizing them
anisha has joined #ruby
<konsolebox> zenspider: i'm talking with respect to why a local copy of rdoc would be necessary. not really about ri.
<konsolebox> zenspider: do you have the html files of the rdoc as well?
<zenspider> konsolebox: probably not? I strictly use ri
<zenspider> (but maybe?)
<konsolebox> adaedra: well there's the difference ^
<adaedra> What? To have HTML docs?
<zenspider> apparently not.... just html generated for my core gems (because I want ri generated for them)
mim1k has joined #ruby
<konsolebox> yes. it's what i suggested. you asked "why a copy is necessary".
<adaedra> It's... still docs
<konsolebox> of course.
<konsolebox> and it's much better imo.
__Yiota has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<konsolebox> ri is good for immediate reference, but not for browsing.
<adaedra> Why?
jenrzzz_ has joined #ruby
<konsolebox> try using it some time.
GodFather has quit [Remote host closed the connection]
[Butch] has quit [Quit: I'm out . . .]
<adaedra> Wow, you seem to know my usage of docs way better than I do
GodFather has joined #ruby
<konsolebox> well you seem to not, to be honest
<zenspider> konsolebox & adaedra : one notch down on the snark
cdg has quit [Remote host closed the connection]
ryzokuken has quit [Quit: Leaving]
jenrzzz has quit [Ping timeout: 276 seconds]
<adaedra> >_>
guacamole has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
mim1k has quit [Ping timeout: 276 seconds]
cdg has joined #ruby
TomyLobo has quit [Ping timeout: 240 seconds]
jack298 has joined #ruby
workmad3 has joined #ruby
SP|Scream has quit [Quit: Ухожу я от вас (xchat 2.4.5 или старше)]
jphase has joined #ruby
catphish has joined #ruby
ecuanaso has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
guacamole has joined #ruby
jack298 has quit [Ping timeout: 255 seconds]
marr has quit [Ping timeout: 255 seconds]
reber has quit [Remote host closed the connection]
AgentVenom has quit [Quit: Textual IRC Client: www.textualapp.com]
workmad3 has quit [Ping timeout: 260 seconds]
mikecmpbll has quit [Quit: inabit. zz.]
polishdub has quit [Quit: leaving]
dionysus69 has quit [Ping timeout: 255 seconds]
GodFather has quit [Read error: No route to host]
GodFather has joined #ruby
ascarter has joined #ruby
segy_ has joined #ruby
alfiemax has joined #ruby
segy has quit [Ping timeout: 240 seconds]
segy_ is now known as segy
Rodya_ has quit [Remote host closed the connection]
anisha has quit [Quit: This computer has gone to sleep]
ascarter has quit [Ping timeout: 248 seconds]
digitalnomad has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jenrzzz_ has quit [Ping timeout: 260 seconds]
funburn has quit [Quit: funburn]
wilbert has quit [Ping timeout: 240 seconds]
digitalnomad has joined #ruby
chouhoul_ has joined #ruby
jenrzzz has joined #ruby
chouhoulis has quit [Ping timeout: 260 seconds]
<law> what am I missing when trying to pass a hash to a function here? https://paste.fedoraproject.org/paste/rOjvWUy0O4zYlvUnyb7xVQ
chouhoul_ has quit [Ping timeout: 240 seconds]
<law> nvm, sorted it. hashes need to be treated like hashes, not arrays. derp.
spiette has quit [Quit: :qa!]
brent__ has quit [Remote host closed the connection]
segy_ has joined #ruby
segy has quit [Ping timeout: 240 seconds]
segy_ is now known as segy
jphase has quit [Remote host closed the connection]
jphase has joined #ruby
TomyLobo has joined #ruby
jphase has quit [Ping timeout: 276 seconds]
jack298 has joined #ruby
mostlybadfly has quit [Quit: Connection closed for inactivity]
cschneid_ has quit [Remote host closed the connection]
cschneid_ has joined #ruby
jphase has joined #ruby
Moosashi has joined #ruby
graft has joined #ruby
cschneid_ has quit [Ping timeout: 240 seconds]
jack298 has quit [Ping timeout: 276 seconds]
sneakerhax has quit [Ping timeout: 260 seconds]
NeverTired has quit [Quit: Connection closed for inactivity]
GodFather has quit [Remote host closed the connection]
saintcajetan has quit [Quit: Connection closed for inactivity]
alfiemax has quit [Remote host closed the connection]
BSaboia has joined #ruby
code_zombie has joined #ruby
ecuanaso has joined #ruby
ascarter has joined #ruby
rahult has joined #ruby
careta has quit [Ping timeout: 276 seconds]
Moosashi has quit [Quit: Moosashi]
jenrzzz has quit [Ping timeout: 260 seconds]
ascarter has quit [Ping timeout: 260 seconds]
rgr has quit [Quit: rgr]
conta1 has joined #ruby
Moosashi has joined #ruby
jenrzzz has joined #ruby
jenrzzz has quit [Changing host]
jenrzzz has joined #ruby
conta1 has quit [Ping timeout: 260 seconds]
cdg_ has joined #ruby
<konsolebox> documentation has always been more difficult than writing code.
<SeepingN> ]^
<SeepingN> and "business logic"
<SeepingN> "I'll get the hard coding part done while you guys iron out the business logic"
digitalnomad has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
cdg has quit [Ping timeout: 248 seconds]
jack298 has joined #ruby
cdg_ has quit [Ping timeout: 248 seconds]
jenrzzz has quit [Ping timeout: 260 seconds]
mim1k has joined #ruby
lxsameer has quit [Ping timeout: 258 seconds]
Moosashi has quit [Quit: Moosashi]
ecuanaso has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jack298 has quit [Ping timeout: 248 seconds]
mim1k has quit [Ping timeout: 255 seconds]
eightlimbed has quit [Ping timeout: 260 seconds]
jenrzzz has joined #ruby
jenrzzz has joined #ruby
jenrzzz has quit [Changing host]
ecuanaso has joined #ruby
pb122 has joined #ruby
digitalnomad has joined #ruby