rubygems / rubygems-test

An attempt to replace the testing facility in rubygems via a test plugin.
Other
48 stars 11 forks source link

Installing development dependencies #33

Open afeld opened 13 years ago

afeld commented 13 years ago

Running a gem's tests will usually require its development dependencies, so it would be great if there were an additional command to do so.

capoferro commented 13 years ago

It should install them automatically. Do you want to do it manually sometimes?

afeld commented 13 years ago

It gives me back a "Please run 'bundle install'", and then prompts to submit my test results (even though they didn't successfully run). The gem I was trying is magickly, btw. Thanks!

capoferro commented 13 years ago

Ah ok. Bundler isn't supported in rubygems-test, as it's not the preferred method of managing dependencies in a gem. Rubygems has built in support for managing development dependencies.

afeld commented 13 years ago

Ah ok I have a theory... my installed gem versions meet the requirements listed in the gemfile (as well as the Gemfile), but not the versions in the Gemfile.lock.

erikh commented 13 years ago

Let us know what resolves this; I'm preparing a faq in my free time for users of bundler, rspec and other tools that aren't as obvious of how to set rubygems-test up.

afeld commented 13 years ago

Ok, so for v1.1.3 of magickly, I didn't have a version of rake set explicitly in my Gemfile, and the dependencies I explicitly listed only had 'rake' (without a version) in their dependencies. Bundler did, however freeze rake v0.9.0 into my Gemfile.lock, and my rake test uses Bundler, so it was looking for that version, even though I only had v0.8.7 installed. I am using Jeweler for the gem, but since I don't have rake in the Gemfile, it didn't put it in the generated gemspec.

Not sure the optimal path here - basically, the difficulty is the difference in how Bundler and Rubygems handle requirements.

erikh commented 13 years ago

Sorry to get back to you so late on this, it's been a busy month. The rake issue is one we need to address and, well, I'm not quite sure how to handle that just yet, namely how rake is run from the command line.

So to summarize, the issue here is:

afeld commented 13 years ago

Right - since I don't want to force the users of my gem to use a particular version of rake, I don't have it explicitly specified in the gemspec.