<FromGitter>
<Blacksmoke16> is possible things aren't required in the right order
<FromGitter>
<Blacksmoke16> if you just arbitrarily require a file like that
<FromGitter>
<jrei:matrix.org> not sure to follow. If we want to test a file, the related spec will require it
<FromGitter>
<Blacksmoke16> oh really? I always just required everything into `spec_helper` then require that
<FromGitter>
<Blacksmoke16> seemed to be the easier way as theres only 1 place to update
<FromGitter>
<jrei:matrix.org> I don't like to require the world just to test a single, isolated piece inside my app/library :)
<FromGitter>
<syeopite:matrix.org> Plus doesn't that also increase compilation time?
<FromGitter>
<jrei:matrix.org> of course it is easy to just miss a necessary require inside this very source file if we are nearly always using just `crystal spec`
<FromGitter>
<jrei:matrix.org> it may, but only noticeable for huge code bases, like the Crystal stdlib
<FromGitter>
<jrei:matrix.org> @Blacksmoke16: for me it helps when I refactor, or some other major changes due the language or library. I test & modify only one module of my codebase at a time, instead of having lots of spec failing or worse, not compiling at all
<FromGitter>
<jrei:matrix.org> e.g. with crystalizer, each format spec require its `src`
<FromGitter>
<Blacksmoke16> is it not easier to just do like `crystal spec spec/file/i/want/to/run` or add `focus: true`?
<FromGitter>
<jrei:matrix.org> add focus is less practical, and if every spec file require the world, then the whole src should compile
<FromGitter>
<jrei:matrix.org> that's the biggest reason in fact
<FromGitter>
<Blacksmoke16> my assumption was crystal only compiles what's being used even if the code is required
<FromGitter>
<Blacksmoke16> so by virtue of only running a single spec id expect that to only compile what's needed for that spec
<FromGitter>
<jrei:matrix.org> ha right yes
<FromGitter>
<jrei:matrix.org> unless there is a syntax error ;)
<FromGitter>
<jrei:matrix.org> due to macro-fu, or WIP work