Bundler
If I were to explain bundler
to pythonista (like myself) I would say
Bundler in Ruby land is like
poetry
in python land, except it does not create sandbox environment
To explain it a little more. It tracks dependencies in a Gemfile
(and Gemfile.lock
) which then goes in your repo.
Other engineers sharing your code would then run bundle install
, and they get exact same Gems (including versions) on their machines.
In order to add entries to the Gemfile
one does bundle add
, which updates the Gemfile
and installs it locally
This is somewhat like poetry add
updating pyproject.toml
and poetry.lock
Gemfile
is like requirements.txt
which one updates manually.
(Just like poetry
) one needs to create base/empty Gemfile
via bundle init
As I found out, one can’t directly bundle add
(Although it might be a good enhancement to create Gemfile
if one is not found 🤔)
Also, I think the documentation should mention bundle add
much earlier.
If I had not used poetry
I could not have guessed about it.
Ref: Bundler documentation