def inject(gemfile_path, lockfile_path)
if Bundler.settings[:frozen]
Bundler.definition.ensure_equivalent_gemfile_and_lockfile(true)
frozen = Bundler.settings.delete(:frozen)
end
builder = Dsl.new
builder.eval_gemfile(gemfile_path)
@new_deps -= builder.dependencies
builder.eval_gemfile("injected gems", new_gem_lines) if @new_deps.any?
definition = builder.to_definition(lockfile_path, {})
definition.resolve_remotely!
append_to(gemfile_path) if @new_deps.any?
definition.lock(Bundler.default_lockfile)
return @new_deps
ensure
Bundler.settings[:frozen] = '1' if frozen
end