00:37
djsell has quit [Ping timeout: 264 seconds]
00:48
cored has quit [Ping timeout: 256 seconds]
00:57
djsell has joined #rom-rb
01:13
dkubb has joined #rom-rb
01:18
<
mbj >
dkubb: BTW mutant is a littlebit slower than before
01:19
<
mbj >
You might notice, I can speed it up via reducing the amount of unparsing / parsing
01:19
<
mbj >
I can gut it by half
01:19
<
mbj >
But the port to parser was enough work to focus on
01:19
<
mbj >
Lets rip out the missing bugs and the unparser errors
01:19
<
mbj >
Than we can optimize it!
01:21
<
dkubb >
the speed is fine
01:21
<
dkubb >
accuracy is way more important
01:32
djsell has quit [Ping timeout: 246 seconds]
01:42
mbj has quit [Quit: leaving]
06:31
solnic_ has joined #rom-rb
06:32
solnic- has joined #rom-rb
06:33
solnic- has quit [Client Quit]
06:36
solnic_ has quit [Ping timeout: 268 seconds]
07:10
travis-ci has joined #rom-rb
07:10
<
travis-ci >
[travis-ci] rom-rb/devtools#7 (mutant-0.3 - 5606c70 : Dan Kubb): The build has errored.
07:10
travis-ci has left #rom-rb [#rom-rb]
07:41
_whitelogger has joined #rom-rb
08:56
travis-ci has joined #rom-rb
08:56
<
travis-ci >
[travis-ci] rom-rb/devtools#11 (master - 0aea94c : Piotr Solnica): The build has errored.
08:56
travis-ci has left #rom-rb [#rom-rb]
08:59
solnic has joined #rom-rb
08:59
<
solnic >
dkubb: awesome news
09:00
<
solnic >
dkubb: ps. we need cinchy :D
09:00
<
solnic >
I mean here
09:00
<
solnic >
also good morning
09:00
solnic_ has joined #rom-rb
09:00
solnic has quit [Read error: Connection reset by peer]
09:03
<
dkubb >
good morning
09:03
<
dkubb >
and yeah we do need it
09:03
<
solnic_ >
dkubb: I tried to find how to install it
09:03
<
solnic_ >
and got super confused
09:03
<
solnic_ >
it seems cinchy is a framework for building irc bots
09:03
<
solnic_ >
dkubb: is it ~2 am on your side?
09:13
<
dkubb >
it's pretty late here
09:13
<
dkubb >
I saw some gists on how to install it on heroku
09:14
<
solnic_ >
dkubb: I wanted to make sure one of my multi-tz clocks matches your TZ
09:14
<
solnic_ >
dkubb: yeah me too, I even tried
09:14
<
solnic_ >
but then I realized it's NOT what I needed (probably)
09:14
<
solnic_ >
got confused and gave up :)
09:14
<
solnic_ >
I believe there's a message bot in freenode anyway
09:15
<
solnic_ >
it's just less convenient to use than cinchy
09:17
solnic has joined #rom-rb
09:17
solnic_ has quit [Read error: Connection reset by peer]
09:19
<
dkubb >
I thought that cinchy provided all of those things we used ootb
09:19
<
solnic >
dkubb: ooh I see
09:19
<
solnic >
I will try again then :)
09:19
<
solnic >
although afair the installation on heroku failed (I used that gist you pointed me to IIRC)
09:24
<
dkubb >
holy crap travis is unstable
09:24
<
dkubb >
I wonder if we should just switch the gems to circleci
09:25
<
solnic >
it's getting worse and worse :(
09:25
<
dkubb >
I know right
09:25
<
solnic >
dkubb: circleci doesn't support OSS no?
09:25
<
dkubb >
I think it does now
09:25
<
solnic >
we could switch
09:26
<
dkubb >
I can't find any mention of it, but I started seeing circleci.yml files popping up in oss projects
09:26
<
dkubb >
maybe it was from people using a free trial
09:33
<
dkubb >
solnic: ok, I was wrong about circleci. no oss plans yet
09:33
<
dkubb >
solnic: ok, I'm going to hit bed now, good night!
09:33
<
solnic >
dkubb: yeah that's what I thought
09:35
<
solnic >
dkubb: night!
09:52
solnic_ has joined #rom-rb
09:52
solnic has quit [Read error: Connection reset by peer]
10:51
solnic_ has quit [Ping timeout: 248 seconds]
11:14
solnic has joined #rom-rb
11:21
cored has joined #rom-rb
11:21
cored has joined #rom-rb
11:21
cored has quit [Changing host]
11:28
solnic has quit [Quit: Leaving...]
11:29
cored has quit [Remote host closed the connection]
11:29
cored has joined #rom-rb
11:29
cored has quit [Changing host]
11:29
cored has joined #rom-rb
11:41
mbj has joined #rom-rb
11:46
solnic has joined #rom-rb
12:26
solnic has quit [Quit: Leaving...]
12:28
cored has quit [Ping timeout: 248 seconds]
13:01
_whitelogger has joined #rom-rb
13:04
postmodern has quit [Quit: Leaving]
15:39
solnic has joined #rom-rb
15:57
solnic has quit [Quit: Leaving...]
17:07
solnic has joined #rom-rb
17:13
mbj has quit [Ping timeout: 248 seconds]
17:59
mbj has joined #rom-rb
18:30
<
dkubb >
good morning
18:32
<
solnic >
dkubb: morning
18:34
<
solnic >
I'm about to try mutant 0.3 from master :)
18:38
<
solnic >
dkubb: hmm 100% - something must be broken :D
18:39
<
solnic >
oh ok I get it, it's doesn't mutate everything under a given namespace
18:42
<
solnic >
hmm I ran for all classes, 100% mutation coverage
18:42
<
solnic >
I don't believe this
18:43
<
dkubb >
you use * in the regexp
18:43
<
dkubb >
so it's now: ::MyClass*
18:43
<
dkubb >
I guess it's not a regexp, but the matching syntax
18:44
<
dkubb >
without the asterisk it will not recurse
18:45
<
dkubb >
solnic: I just ran mutant 0.3 against axiom and found one issue. going to try axiom-types in a sec, which was previously 100% covered
18:54
<
solnic >
lemme see with *
18:55
<
solnic >
mutant "ROM::Session::*" --rspec-unit
18:55
<
solnic >
No matchers given
18:57
<
solnic >
mbj: ^^^ what does that mean?
18:58
<
Gibheer >
solnic: I think you have to use ROM::Session
18:58
<
solnic >
tried that too
18:58
<
Gibheer >
same error message?
19:01
<
dkubb >
try Rom::Session*
19:02
<
solnic >
dkubb: starts but crashes
19:03
<
solnic >
I knew sth must be wrong
19:03
<
dkubb >
woo hoo, mutant found a bunch of new mutations in axiom-types
19:03
<
solnic >
my specs fail on rbx
19:03
<
dkubb >
aside from a couple of bugs
19:03
<
solnic >
hence 100% mutcov
19:03
<
dkubb >
the new mutant works on 1.9.3
19:03
<
solnic >
I know...but I can't use 1.9.3 atm
19:03
<
solnic >
my system is broken
19:04
<
solnic >
I can't compile a lot of stuff
19:04
<
solnic >
no, mavericks :P
19:04
<
dkubb >
I was thinking about building a vagrant setup for us
19:04
<
solnic >
yeah, I will do it
19:04
<
solnic >
I need to switch to vms until issues with compilation are resolved on mavericks
19:04
<
dkubb >
I did one for the project I'm on and it worked well. I kind of took the same ideas you started with on that other project we did a while ago
19:05
<
dkubb >
I think I will probably switch to using a vm all the time
19:05
<
dkubb >
I can install all the dbs and stuff on it and not worry about deps
19:05
<
solnic >
yeah it's a cool thing
19:05
<
dkubb >
mbj: good morning
19:05
<
mbj >
solnic: After I use option parsers the matcehrs mut come after the options
19:05
<
dkubb >
mbj: mutant 0.3 found some new mutations in axiom-types!
19:05
<
mbj >
mutant --rspec-foo ::Matcher::A ::Matcher::B
19:05
<
solnic >
I only need to figure out how to send notifications from a VM :)
19:05
<
solnic >
for guard...
19:05
<
solnic >
it should be possible with some trickery
19:05
<
mbj >
dkubb: I fixed some issues from yesterday already
19:05
<
dkubb >
mbj: I need to dig in and see if they are valid, but it found a ton of new stuff in what was previously 100% mutation covered
19:06
<
mbj >
dkubb: nice, I expected this
19:06
<
dkubb >
mbj: I saw that. I was able to do a run-through with axiom-types today
19:06
<
dkubb >
mbj: there was one case where unparser introduced a syntax error, which I am about to report
19:06
<
dkubb >
mbj: it had to do with a case statement, where the else branch was simply: else; super; end
19:06
<
solnic >
mbj, dkubb: please if you have a "moment" check out PR with rewritten rom-session
19:06
<
solnic >
I'd love to get feedback before I continue
19:07
<
solnic >
it's probably best to just read the sources
19:07
<
mbj >
solnic, dkubb: Have to participate with clothing :D
19:07
<
solnic >
it's not much to read actually
19:07
<
mbj >
Promised my GF to help, no way to avoid this.
19:07
<
solnic >
been there done that ;)
19:07
<
mbj >
Back in minutes....
19:07
<
solnic >
I gotta run, so ttyt
19:08
<
solnic >
dkubb: I'll set up a vm tomorrow...
19:08
<
solnic >
dkubb: oh one more thing, I tried drone.io today, it's cool but it doesn't support vm matrix so...not an option
19:10
<
dkubb >
solnic: kk. I think circleci doesn't support the matrix either :(
19:11
<
dkubb >
solnic: ttyl
19:12
solnic has quit [Quit: Leaving...]
19:19
<
mbj >
dkubb: circleci has an rvm setup, we can easily script our matrix
19:19
<
mbj >
We cann add that feature to devtools
19:20
<
dkubb >
interesting
19:22
<
dkubb >
mbj: do you want me to report this to mutant or unparser? I assume the former
19:23
<
dkubb >
mbj: or am I forgetting one of the switches? I noticed the -Ilib and -r axiom-types switches were no longer accepted
19:23
<
mbj >
dkubb: The 2nd mutation is: equal?(Set) => equal?
19:23
<
mbj >
This should not be a syntax error?
19:23
<
mbj >
Most likely I got you wrong.
19:23
<
mbj >
dkubb: -Ilib and -r something are not needed anymore
19:24
<
mbj >
We rely on the test frameworks to setup load path and require files correctly.
19:25
<
mbj >
dkubb: I need to update README and write a verbose Changelog
19:25
<
dkubb >
mbj: equal? should be a syntax error, shouldn't it? yet it's being treated as a valid mutation
19:26
<
dkubb >
mbj: or maybe I'm reading this report wrong?
19:26
<
mbj >
mbj@mbj ~/devel/unparser (master*) % bundle exec ruby-parse -e 'equal?'
19:26
<
mbj >
(send nil :equal?)
19:26
<
mbj >
It is valid ruby.
19:27
<
mbj >
dkubb: Can you show me the syntax error?
19:33
<
dkubb >
mbj: it's not valid according to irb
19:34
<
dkubb >
oh wait, I guess it's not a syntax error, but rather a runtime error
19:34
<
dkubb >
ArgumentError: wrong number of arguments(0 for 1)
19:34
<
dkubb >
but still, I would assume mutant would catch those issues
19:34
<
mbj >
dkubb: The mutation is NOT killed.
19:34
<
mbj >
For some reason.
19:34
<
mbj >
As it should result in an ArgumentError
19:35
<
mbj >
Making rspec CLI exiting nonzero
19:35
<
mbj >
So we have to find why this is not the case!
19:36
<
dkubb >
mbj: also, that first mutation does cause a spec failure too
19:36
<
dkubb >
mbj: but it's not killed
19:36
<
mbj >
dkubb: interesting
19:36
<
dkubb >
mbj: is it maybe because that's a private class method?
19:36
<
mbj >
dkubb: Mutant only cares if rspec returns nonzero exit status
19:37
<
mbj >
I'll preproduce
19:37
<
mbj >
Let me adjust to parser-2.0.0.beta7 first.
19:37
<
mbj >
Already ported unparser.
19:37
<
dkubb >
I can update devtool's mutant-0.3 branch to use it too
19:37
<
dkubb >
temporarily
19:39
zirni has joined #rom-rb
19:40
<
mbj >
dkubb: I fucked something up in unparser.
19:40
<
mbj >
Will take some time.
19:42
<
dkubb >
mbj: no worries
19:43
<
dkubb >
this is weird, I updated to use the latest parser from edge git and mutant says it is disabled now
19:43
<
dkubb >
I comment it out in my Gemfile and it runs
19:45
<
mbj >
dkubb: The rake task sais mutant is disabled.
19:45
<
mbj >
Mutant for it self never.
19:45
<
mbj >
Just explore mutant via the CLI, this is faster than dealing with devtools at this stage.
19:45
<
mbj >
(From feedback cycle point of view)
19:46
<
mbj >
Okay, that failures I saw where easy to reproduce.
19:46
<
mbj >
I'll use mutant from git source and track that failure down.
19:46
<
dkubb >
oh I see, parser doesn't have a valid gemspec in it's repo
19:47
travis-ci has joined #rom-rb
19:47
<
travis-ci >
[travis-ci] rom-rb/devtools#12 (mutant-0.3 - 8b7371a : Dan Kubb): The build has errored.
19:47
travis-ci has left #rom-rb [#rom-rb]
19:47
<
dkubb >
I don't know if that's whitequark's intention or not
19:47
<
mbj >
dkubb: Use the latest release from rubygems.
19:47
<
mbj >
dkubb: He released it some hours ago
19:49
<
dkubb >
yeah I know
19:49
<
dkubb >
I just use edge stuff when debugging sometimes
19:49
<
mbj >
With parser I'd suggest to use the latest release, it is very close to master and typically works.
19:51
<
mbj >
dkubb: In the equals case mutant does not execute the correct examples!
19:51
<
mbj >
mom, making my child to hit bed.
19:54
<
mbj >
spec selection is broken for private methods
19:55
<
dkubb >
good to know i'm not going crazy
19:55
<
dkubb >
I expected mutant to find a handful of new mutations in axiom-types, but not > 200
19:55
<
dkubb >
at best i was expecting 10-20
19:56
travis-ci has joined #rom-rb
19:56
travis-ci has left #rom-rb [#rom-rb]
19:56
<
travis-ci >
[travis-ci] rom-rb/devtools#14 (mutant-0.3 - ff82c4a : Dan Kubb): The build has errored.
19:56
<
mbj >
latest news, not spec selection is broken, our file nameing is
19:56
<
mbj >
"spec/unit/axiom/types/set/class_methods/base_predicate_spec.rb"
19:56
<
mbj >
That file is expected, but does not exist.
19:57
<
mbj >
Axiom::Types::Set.base? is public, hence we'd need a dedicated file.
19:58
<
dkubb >
it's made private I thought
19:58
<
dkubb >
there's a private_class_method :base?
20:00
<
mbj >
so public private detection is broken
20:00
<
mbj >
Trusted mutant here. mom.
20:01
<
mbj >
I'm up again for to much hours, pls excuse my unsharp debugging.
20:02
<
dkubb >
I figured you had very little sleep last night
20:02
<
dkubb >
I'm probably only going to be around for another 15-20 mins, and then I'll be back later tonight to do some stuff on axiom-memory-adapter
20:11
<
mbj >
ruby is such a broken language,....
20:12
<
mbj >
public private detection should be easy
20:12
<
mbj >
Worked perfectly for month.
20:16
<
dkubb >
yeah, the api around that stuff is confusing
20:16
<
dkubb >
imho there should be 3 methods for testing public/private/protected by name, and 3 methods for returning the public/private/protected methods
20:17
<
dkubb >
you can also implement the first 3 methods using the last 3, eg: object.public_methods.include?(method_name)
20:17
<
dkubb >
I suppose there's also the case of inherited/locally defined methods
20:18
<
dkubb >
I know that ruby is somewhat like this, but it's just inconsistent. too many methods that seem like they should do the same thing, but don't
20:18
<
mbj >
dkubb: doesnt work in this case :(
20:21
<
mbj >
mbj@mbj ~/devel/axiom-types (master*) % bundle exec irb -I lib -r axiom-types
20:21
<
mbj >
irb(main):001:0> Axiom::Types::Set.public_methods.include?(:base?)
20:21
<
mbj >
But inside mutant this returns true!
20:22
<
dkubb >
Axiom::Types::Set.public_methods(false).include?(:base) # => false
20:22
<
dkubb >
oh that's weird that it returns true inside mutant
20:23
<
dkubb >
mbj: what about just using respond_to? ?
20:23
<
dkubb >
mbj: Axiom::Types::Set.respond_to?(:base?)
20:24
<
mbj >
dkubb: maybe, but let me track down why there is a difference!
20:24
<
dkubb >
a class is just an object, and we basically only care if the method is publicly visible
20:25
<
dkubb >
mbj: could it be that you're running that method inside mutant using a different version of ruby? some rubies return the list of methods as an Array of Strings, while some do an Array of Symbols
20:25
<
dkubb >
mbj: I think MRI 1.9+ does an Array of Symbol objects consistently. I do recall writing cross-ruby impl code that used .map(&:to_sym) before testing it with #include?
20:26
<
dkubb >
mbj: ok, kids are home now. I will bbl
20:41
<
mbj >
dkubb: I dont think this is a Symbol vs String issue
20:46
zirni has quit [Ping timeout: 268 seconds]
20:54
zirni has joined #rom-rb
21:07
<
dkubb >
mbj: yeah, I was just throwing that out there
21:13
<
dkubb >
mbj: I see what you're talking about wrt the method becoming public. is it possible that a mutation changed it's visibility?
21:21
<
dkubb >
mbj: I don't know if this is significant, but the source_location for the method changes at some point before mutant parses the code
21:22
<
dkubb >
mbj: the class' object_id stays the same, but the source_location changes by about 3 lines.. which is odd. almost like something is rewriting the code
21:22
<
dkubb >
mbj: I would never expect source_location to ever change once a method was parsed, unless it was overwritten by something
21:24
mbj has quit [Read error: Connection reset by peer]
21:24
<
dkubb >
mbj: oh! what if the no-op step is overwriting the original source but forgetting the visibility?
21:24
zirni has quit [Ping timeout: 268 seconds]
21:25
<
dkubb >
I bet that's it. too bad mbj left :(
21:27
<
Gibheer >
you should get the bot to tell him
21:34
<
dkubb >
I did in #datamapper
21:34
<
dkubb >
we need to get cinchy setup here
21:47
<
dkubb >
heh, in writing the bug report I think I may have found the fix
22:18
zirni has joined #rom-rb
22:22
zirni has quit [Ping timeout: 268 seconds]
22:26
zekefast has joined #rom-rb
23:18
zirni has joined #rom-rb
23:22
zirni has quit [Ping timeout: 246 seconds]
23:30
postmodern has joined #rom-rb
23:48
zirni has joined #rom-rb
23:53
zirni has quit [Ping timeout: 246 seconds]