Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Warn when Tapioca is executed without Bundler #2075

Merged
merged 1 commit into from
Nov 25, 2024
Merged

Conversation

KaanOzkan
Copy link
Contributor

Motivation

Addresses the finding in #1934 (comment)

Implementation

Print a warning as early as possible. Looking at various env variables BUNDLER_VERSION felt like a safe bet.

Tests

Tested manually. I can add it if wanted.

@KaanOzkan KaanOzkan requested a review from a team as a code owner November 15, 2024 04:09
@KaanOzkan KaanOzkan force-pushed the ko/check-for-bundler branch from 43a5f86 to e9f5265 Compare November 15, 2024 04:09
exe/tapioca Outdated
Comment on lines 23 to 26
unless ENV["BUNDLER_VERSION"]
puts "Warning: You're running tapioca without Bundler. This isn't recommended and may cause issues."\
" Please use the provided binstub through `bin/tapioca` instead."
end
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ENV['BUNDLER_VERSION'] is not a reliable indicator of Bundler being active, as it may be unset even when running under Bundler. Two more reliable alternatives are:

  1. Check ENV['BUNDLE_GEMFILE'], which Bundler consistently sets
  2. Check defined?(Bundler) to detect if Bundler is loaded

Either approach would prevent false warnings in valid Bundler environments.

Spotted by Graphite Reviewer

Is this helpful? React 👍 or 👎 to let us know.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@egiurleo
Copy link
Contributor

Is it possible to create a CLI test for this?

@KaanOzkan KaanOzkan force-pushed the ko/check-for-bundler branch from e9f5265 to 2fc2054 Compare November 21, 2024 16:26
@KaanOzkan
Copy link
Contributor Author

Is it possible to create a CLI test for this?

I tried shelling to tapioca without bundle exec in the test but Bundler is still available so I'm not sure how to test this.

@KaanOzkan KaanOzkan force-pushed the ko/check-for-bundler branch from 2fc2054 to 489fb55 Compare November 25, 2024 18:18
@KaanOzkan KaanOzkan merged commit 62a468d into main Nov 25, 2024
28 checks passed
@KaanOzkan KaanOzkan deleted the ko/check-for-bundler branch November 25, 2024 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants