Today I did final rounds of testing of fast_ignore and saw how could it be implemented for further use.

First things first, the fast_ignore gem was itself using git :P This had to be fixed. So I raised a PR: robotdana/fast_ignore#9 \o/

Furthermore, whilst doing some further testing on different methods, like ignore_files, ignore_rules, et al, I discovered something unsual:

irb(main):001:0> require 'fast_ignore'
=> true
irb(main):002:0> FastIgnore.new(include_files: 'README.md', relative: true).to_a
=> ["bin/console", "bin/time", "bin/ls_seconds", "bin/ls"]

This has been reported as robotdana/fast_ignore.
I hope this is a bug and not a feature :P

I wondered what happens if I implement it in any of the gems.
So I committed this in batalert@6cc677d1.

Turns out, as David explains and I quote,

I wouldn’t expect it to work because bundler needs to evaluate the gemspec before it is able to setup the $LOAD_PATH and everything else so that you can require your dependency.

Hm, today I learned! I’ll fairly admit that I didn’t know this until today.
So it’s clear that we can’t use fast_ignore yet BUT we know of a workaround so far :)
(looks like the next step should be to convince the bundler maintainers? :P)

Anyway, I think I am done exploring the alternatives for now. I’ll shift my focus on writing an extension now.
I can worry about the alternatives thingy later.

:wq for today.