Manage your application's gem dependencies with less pain
Ruby
Latest commit 6904ac6 Jul 26, 2016 @homu homu Auto merge of #4811 - NickLaMuro:dots_for_compact_index_logger, r=seg…
…iddins

Fix random string printing inconsistencies and formatting

Add dot output for CompactIndex fetcher
---------------------------------------

The `Bundler::Fetcher::CompactIndex`'s logging was missing the "dot logging" when not in debug mode, which is an assumed behavior based on the code in `lib/bundler/source/rubygems.rb`:

```ruby
api_fetchers.each do |f|
  Bundler.ui.info "Fetching gem metadata from #{f.uri}", Bundler.ui.debug?
  idx.use f.specs_with_retry(dependency_names, self)
  Bundler.ui.info "" unless Bundler.ui.debug? # new line now that the dots are over
end
```

While this isn't critical for `bundler` function properly by any stretch of the imagination, it provides a small bit of user feedback that requests are still continuing to be processed and `bundler` hasn't stalled.  It also maintains logging consistency between the different fetcher models.

Add newlines for `Bundler::Retry`
---------------------------------

This is very pedantic, but it makes it so that retry warning messages that used to look like this:

```
Fetching gem metadata from https://rubygems.org/....Retrying fetcher due to error (2/4): Error::OMGWatHappened LOL, no idea
.....
```

Now will look like this:

```
Fetching gem metadata from https://rubygems.org/....
Retrying fetcher due to error (2/4): Error::OMGWatHappened LOL, no idea.....
```

I think this reads a bit better and puts context to the "dots" so they now match up with the original attempt and the retries

Remove unneeded if statement
----------------------------

Ran across this while failing at writing tests for the above (for longer than I want to admit in public), but basically the `if` statement to determine whether or not to print "name" in the `Bundler.ui.warn` was not needed, as it never could be reached because of a short circuiting return statement prior to the print

```ruby
return true unless name
```

Have no idea how to test it anymore than we already are, so instead of embarrassing myself further, I moved on.

README.md

Version     Build Status Code Climate Inline docs

Bundler: a gem to bundle gems

Bundler makes sure Ruby applications run the same code on every machine.

It does this by managing the gems that the application depends on. Given a list of gems, it can automatically download and install those gems, as well as any other gems needed by the gems that are listed. Before installing gems, it checks the versions of every gem to make sure that they are compatible, and can all be loaded at the same time. After the gems have been installed, Bundler can help you update some or all of them when new versions become available. Finally, it records the exact versions that have been installed, so that others can install the exact same gems.

Installation and usage

gem install bundler
bundle init
echo 'gem "rspec"' >> Gemfile
bundle install
bundle exec rspec

See bundler.io for the full documentation.

Troubleshooting

For help with common problems, see ISSUES.

Other questions

To see what has changed in recent versions of Bundler, see the CHANGELOG.

Feel free to chat with the Bundler core team (and many other users) on IRC in the #bundler channel on Freenode, or via email on the Bundler mailing list.

Contributing

If you'd like to contribute to Bundler, that's awesome, and we <3 you. There's a guide to contributing to Bundler (both code and general help) over in DEVELOPMENT.

Code of Conduct

Everyone interacting in the Bundler project’s codebases, issue trackers, chat rooms, and mailing lists is expected to follow the Bundler code of conduct.