rails / tailwindcss-rails

MIT License
1.39k stars 171 forks source link

tailwindcss:watch terminates with exception #318

Closed ShadowCrafter011 closed 7 months ago

ShadowCrafter011 commented 9 months ago

I installed tailwindcss-rails into one of my existing projects and am currently trying to switch everything over. I currently have the issue that everytime I press ctrl + c to stop the webserver tailwindcss:watch throws an exception. I run the command with the --trace argument so I'm not sure if the error I receive is intended stop behaviour.

The trace is:

^C15:54:13 system | SIGINT received, starting shutdown
15:54:13 css.1  | bin/rails aborted!
15:54:13 css.1  | Interrupt:
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/tailwindcss-rails-2.3.0-x86_64-linux/lib/tasks/build.rake:17:in `system'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/tailwindcss-rails-2.3.0-x86_64-linux/lib/tasks/build.rake:17:in `block (2 levels) in <main>'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/task.rb:281:in `block in execute'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/task.rb:281:in `each'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/task.rb:281:in `execute'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/task.rb:219:in `block in invoke_with_call_chain'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/task.rb:199:in `synchronize'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/task.rb:199:in `invoke_with_call_chain'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/task.rb:188:in `invoke'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/application.rb:182:in `invoke_task'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/application.rb:138:in `block (2 levels) in top_level'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/application.rb:138:in `each'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/application.rb:138:in `block in top_level'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/application.rb:147:in `run_with_threads'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/application.rb:132:in `top_level'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/commands/rake/rake_command.rb:27:in `block (2 levels) in perform'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/application.rb:208:in `standard_exception_handling'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/commands/rake/rake_command.rb:27:in `block in perform'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/commands/rake/rake_command.rb:44:in `block in with_rake'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/rake-13.1.0/lib/rake/rake_module.rb:59:in `with_application'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/commands/rake/rake_command.rb:41:in `with_rake'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/commands/rake/rake_command.rb:20:in `perform'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/command.rb:156:in `invoke_rake'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/command.rb:73:in `block in invoke'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/command.rb:149:in `with_argv'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/command.rb:69:in `invoke'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/railties-7.1.2/lib/rails/commands.rb:18:in `<main>'
15:54:13 css.1  | <internal:/home/lukas/.rbenv/versions/3.1.2/lib/ruby/site_ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:38:in `require'
15:54:13 css.1  | <internal:/home/lukas/.rbenv/versions/3.1.2/lib/ruby/site_ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:38:in `require'
15:54:13 css.1  | /home/lukas/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/bootsnap-1.17.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
15:54:13 css.1  | bin/rails:4:in `<main>'
15:54:13 css.1  | Tasks: TOP => tailwindcss:watch
15:54:13 web.1  | - Gracefully stopping, waiting for requests to finish
15:54:13 web.1  | === puma shutdown: 2024-01-11 15:54:13 +0000 ===
15:54:13 web.1  | - Goodbye!
15:54:13 web.1  | Exiting
15:54:13 system | sending SIGTERM to all processes
15:54:13 web.1  | exited with code 0
15:54:13 css.1  | exited with code 1

My Procfile.dev:

web: bin/rails server -b 0.0.0.0 -p 3001
css: bin/rails tailwindcss:watch

bin/dev:

#!/usr/bin/env sh

if ! gem list foreman -i --silent; then
  echo "Installing foreman..."
  gem install foreman
fi

# Default to port 3000 if not specified
export PORT="${PORT:-3000}"

# Let the debug gem allow remote connections,
# but avoid loading until `debugger` is called
export RUBY_DEBUG_OPEN="true"
export RUBY_DEBUG_LAZY="true"

exec foreman start -f Procfile.dev "$@"
kesleymartins commented 8 months ago

Recently I on kida similar problem my application is dockerized when I run bin/dev, the container shutdown. Im using:

Do u find a solution?

flavorjones commented 8 months ago

@ShadowCrafter011 I can't reproduce this on my machine, can you help me by providing some more information about your system?

I'm running:

Is anything obviously different for you?

flavorjones commented 8 months ago

I also can't reproduce this with the same setup on MacOS ruby 3.2.3 (2024-01-18 revision 52bb2ac0a6) [arm64-darwin23]

kesleymartins commented 8 months ago

Just a followup, in my case adding tty: true on docker-compose.yml file solve the issue.

find the answer on here

davidcelis commented 7 months ago

I can reproduce this as well, and it's been like this for my app ever since I first generated it about a year and a half ago 😅

ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23] Rails 7.1.2 tailwindcss-rails 2.3.0

My Procfile.dev:

web: bin/rails server -p 3000
worker: bin/sidekiq -C config/sidekiq.yml
css: bin/rails tailwindcss:watch

My bin/dev:

#!/usr/bin/env bash

if ! command -v foreman &> /dev/null
then
  echo "Installing foreman..."
  gem install foreman
fi

foreman start -f Procfile.dev
davidcelis commented 7 months ago

In fact, I can reproduce this with a fresh Rails application without having to make any changes to it:

$ rails new tailwind_test -c tailwind
# snip
$ cd tailwind_test
$ bin/dev
09:51:56 web.1  | started with pid 79504
09:51:56 css.1  | started with pid 79505
09:51:56 web.1  | => Booting Puma
09:51:56 web.1  | => Rails 7.1.3.2 application starting in development 
09:51:56 web.1  | => Run `bin/rails server --help` for more startup options
09:51:56 web.1  | Puma starting in single mode...
09:51:56 web.1  | * Puma version: 6.4.2 (ruby 3.3.0-p0) ("The Eagle of Durango")
09:51:56 web.1  | *  Min threads: 5
09:51:56 web.1  | *  Max threads: 5
09:51:56 web.1  | *  Environment: development
09:51:56 web.1  | *          PID: 79504
09:51:56 web.1  | * Listening on http://127.0.0.1:3000
09:51:56 web.1  | * Listening on http://[::1]:3000
09:51:57 web.1  | Use Ctrl-C to stop
09:51:57 css.1  | 
09:51:57 css.1  | Rebuilding...
09:51:57 css.1  | 
09:51:57 css.1  | Done in 196ms.
^C09:51:59 system | SIGINT received, starting shutdown
09:51:59 css.1  | bin/rails aborted!
09:51:59 web.1  | - Gracefully stopping, waiting for requests to finish
09:51:59 css.1  | Interrupt: Interrupt
09:51:59 web.1  | === puma shutdown: 2024-02-23 09:51:59 -0800 ===
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/tailwindcss-rails-2.3.0-arm64-darwin/lib/tasks/build.rake:17:in `system'
09:51:59 web.1  | - Goodbye!
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/tailwindcss-rails-2.3.0-arm64-darwin/lib/tasks/build.rake:17:in `block (2 levels) in <main>'
09:51:59 web.1  | Exiting
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/task.rb:281:in `block in execute'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/task.rb:281:in `each'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/task.rb:281:in `execute'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/task.rb:219:in `block in invoke_with_call_chain'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/task.rb:199:in `synchronize'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/task.rb:199:in `invoke_with_call_chain'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/task.rb:188:in `invoke'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/application.rb:182:in `invoke_task'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/application.rb:138:in `block (2 levels) in top_level'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/application.rb:138:in `each'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/application.rb:138:in `block in top_level'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/application.rb:147:in `run_with_threads'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/application.rb:132:in `top_level'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/commands/rake/rake_command.rb:27:in `block (2 levels) in perform'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/application.rb:208:in `standard_exception_handling'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/commands/rake/rake_command.rb:27:in `block in perform'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/commands/rake/rake_command.rb:44:in `block in with_rake'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/rake-13.1.0/lib/rake/rake_module.rb:59:in `with_application'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/commands/rake/rake_command.rb:41:in `with_rake'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/commands/rake/rake_command.rb:20:in `perform'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/command.rb:156:in `invoke_rake'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/command.rb:73:in `block in invoke'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/command.rb:149:in `with_argv'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/command.rb:69:in `invoke'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/railties-7.1.3.2/lib/rails/commands.rb:18:in `<main>'
09:51:59 css.1  | /Users/davidcelis/Developer/tailwind_test/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.3/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
09:51:59 css.1  | Tasks: TOP => tailwindcss:watch
09:51:59 css.1  | (See full trace by running task with --trace)
09:52:00 system | sending SIGTERM to all processes
09:52:00 web.1  | exited with code 0
09:52:00 css.1  | exited with code 1
flavorjones commented 7 months ago

@davidcelis I know you're trying to help, so thank you. But without new information I can't reproduce this on my system, with either Ruby 3.2.3 or Ruby 3.3.0.

Here's `bundle env` from my system where I did the exact same thing as you. ## Environment ``` Bundler 2.5.3 Platforms ruby, arm64-darwin-23 Ruby 3.3.0p0 (2023-12-25 revision 5124f9ac7513eb590c37717337c430cb93caa151) [arm64-darwin-23] Full Path /Users/flavorjones/.rubies/3.3.0/bin/ruby Config Dir /Users/flavorjones/.rubies/3.3.0/etc RubyGems 3.5.3 Gem Home /Users/flavorjones/.gem/ruby/3.3.0 Gem Path /Users/flavorjones/.gem/ruby/3.3.0:/Users/flavorjones/.rubies/3.3.0/lib/ruby/gems/3.3.0 User Home /Users/flavorjones User Path /Users/flavorjones/.gem/ruby/3.3.0 Bin Dir /Users/flavorjones/.gem/ruby/3.3.0/bin Tools Git 2.39.2 RVM not installed rbenv not installed chruby not installed ``` ## Bundler Build Metadata ``` Built At 2024-02-23 Git SHA unknown Released Version false ``` ## Bundler settings ``` pkgs.shopify.io Set for the current user (/Users/flavorjones/.bundle/config): "token:[REDACTED]" set Set for the current user (/Users/flavorjones/.bundle/config): "jobs 2" ``` ## Gemfile ### Gemfile ```ruby source "https://rubygems.org" ruby "3.3.0" # Bundle edge Rails instead: gem "rails", github: "rails/rails", branch: "main" gem "rails", "~> 7.1.3", ">= 7.1.3.2" # The original asset pipeline for Rails [https://github.com/rails/sprockets-rails] gem "sprockets-rails" # Use sqlite3 as the database for Active Record gem "sqlite3", "~> 1.4" # Use the Puma web server [https://github.com/puma/puma] gem "puma", ">= 5.0" # Use JavaScript with ESM import maps [https://github.com/rails/importmap-rails] gem "importmap-rails" # Hotwire's SPA-like page accelerator [https://turbo.hotwired.dev] gem "turbo-rails" # Hotwire's modest JavaScript framework [https://stimulus.hotwired.dev] gem "stimulus-rails" # Use Tailwind CSS [https://github.com/rails/tailwindcss-rails] gem "tailwindcss-rails" # Build JSON APIs with ease [https://github.com/rails/jbuilder] gem "jbuilder" # Use Redis adapter to run Action Cable in production gem "redis", ">= 4.0.1" # Use Kredis to get higher-level data types in Redis [https://github.com/rails/kredis] # gem "kredis" # Use Active Model has_secure_password [https://guides.rubyonrails.org/active_model_basics.html#securepassword] # gem "bcrypt", "~> 3.1.7" # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem "tzinfo-data", platforms: %i[ windows jruby ] # Reduces boot times through caching; required in config/boot.rb gem "bootsnap", require: false # Use Active Storage variants [https://guides.rubyonrails.org/active_storage_overview.html#transforming-images] # gem "image_processing", "~> 1.2" group :development, :test do # See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem gem "debug", platforms: %i[ mri windows ] end group :development do # Use console on exceptions pages [https://github.com/rails/web-console] gem "web-console" # Add speed badges [https://github.com/MiniProfiler/rack-mini-profiler] # gem "rack-mini-profiler" # Speed up commands on slow machines / big apps [https://github.com/rails/spring] # gem "spring" end group :test do # Use system testing [https://guides.rubyonrails.org/testing.html#system-testing] gem "capybara" gem "selenium-webdriver" end ``` ### Gemfile.lock ``` GEM remote: https://rubygems.org/ specs: actioncable (7.1.3.2) actionpack (= 7.1.3.2) activesupport (= 7.1.3.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) actionmailbox (7.1.3.2) actionpack (= 7.1.3.2) activejob (= 7.1.3.2) activerecord (= 7.1.3.2) activestorage (= 7.1.3.2) activesupport (= 7.1.3.2) mail (>= 2.7.1) net-imap net-pop net-smtp actionmailer (7.1.3.2) actionpack (= 7.1.3.2) actionview (= 7.1.3.2) activejob (= 7.1.3.2) activesupport (= 7.1.3.2) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp rails-dom-testing (~> 2.2) actionpack (7.1.3.2) actionview (= 7.1.3.2) activesupport (= 7.1.3.2) nokogiri (>= 1.8.5) racc rack (>= 2.2.4) rack-session (>= 1.0.1) rack-test (>= 0.6.3) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) actiontext (7.1.3.2) actionpack (= 7.1.3.2) activerecord (= 7.1.3.2) activestorage (= 7.1.3.2) activesupport (= 7.1.3.2) globalid (>= 0.6.0) nokogiri (>= 1.8.5) actionview (7.1.3.2) activesupport (= 7.1.3.2) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) activejob (7.1.3.2) activesupport (= 7.1.3.2) globalid (>= 0.3.6) activemodel (7.1.3.2) activesupport (= 7.1.3.2) activerecord (7.1.3.2) activemodel (= 7.1.3.2) activesupport (= 7.1.3.2) timeout (>= 0.4.0) activestorage (7.1.3.2) actionpack (= 7.1.3.2) activejob (= 7.1.3.2) activerecord (= 7.1.3.2) activesupport (= 7.1.3.2) marcel (~> 1.0) activesupport (7.1.3.2) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) connection_pool (>= 2.2.5) drb i18n (>= 1.6, < 2) minitest (>= 5.1) mutex_m tzinfo (~> 2.0) addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) base64 (0.2.0) bigdecimal (3.1.6) bindex (0.8.1) bootsnap (1.18.3) msgpack (~> 1.2) builder (3.2.4) capybara (3.40.0) addressable matrix mini_mime (>= 0.1.3) nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) concurrent-ruby (1.2.3) connection_pool (2.4.1) crass (1.0.6) date (3.3.4) debug (1.9.1) irb (~> 1.10) reline (>= 0.3.8) drb (2.2.0) ruby2_keywords erubi (1.12.0) globalid (1.2.1) activesupport (>= 6.1) i18n (1.14.1) concurrent-ruby (~> 1.0) importmap-rails (2.0.1) actionpack (>= 6.0.0) activesupport (>= 6.0.0) railties (>= 6.0.0) io-console (0.7.2) irb (1.11.2) rdoc reline (>= 0.4.2) jbuilder (2.11.5) actionview (>= 5.0.0) activesupport (>= 5.0.0) loofah (2.22.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) mini_mime (>= 0.1.1) net-imap net-pop net-smtp marcel (1.0.2) matrix (0.4.2) mini_mime (1.1.5) minitest (5.22.2) msgpack (1.7.2) mutex_m (0.2.0) net-imap (0.4.10) date net-protocol net-pop (0.1.2) net-protocol net-protocol (0.2.2) timeout net-smtp (0.4.0.1) net-protocol nio4r (2.7.0) nokogiri (1.16.2-aarch64-linux) racc (~> 1.4) nokogiri (1.16.2-arm-linux) racc (~> 1.4) nokogiri (1.16.2-arm64-darwin) racc (~> 1.4) nokogiri (1.16.2-x86-linux) racc (~> 1.4) nokogiri (1.16.2-x86_64-darwin) racc (~> 1.4) nokogiri (1.16.2-x86_64-linux) racc (~> 1.4) psych (5.1.2) stringio public_suffix (5.0.4) puma (6.4.2) nio4r (~> 2.0) racc (1.7.3) rack (3.0.9.1) rack-session (2.0.0) rack (>= 3.0.0) rack-test (2.1.0) rack (>= 1.3) rackup (2.1.0) rack (>= 3) webrick (~> 1.8) rails (7.1.3.2) actioncable (= 7.1.3.2) actionmailbox (= 7.1.3.2) actionmailer (= 7.1.3.2) actionpack (= 7.1.3.2) actiontext (= 7.1.3.2) actionview (= 7.1.3.2) activejob (= 7.1.3.2) activemodel (= 7.1.3.2) activerecord (= 7.1.3.2) activestorage (= 7.1.3.2) activesupport (= 7.1.3.2) bundler (>= 1.15.0) railties (= 7.1.3.2) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest nokogiri (>= 1.6) rails-html-sanitizer (1.6.0) loofah (~> 2.21) nokogiri (~> 1.14) railties (7.1.3.2) actionpack (= 7.1.3.2) activesupport (= 7.1.3.2) irb rackup (>= 1.0.0) rake (>= 12.2) thor (~> 1.0, >= 1.2.2) zeitwerk (~> 2.6) rake (13.1.0) rdoc (6.6.2) psych (>= 4.0.0) redis (5.0.6) redis-client (>= 0.9.0) redis-client (0.17.1) connection_pool regexp_parser (2.9.0) reline (0.4.2) io-console (~> 0.5) rexml (3.2.6) ruby2_keywords (0.0.5) rubyzip (2.3.2) selenium-webdriver (4.18.1) base64 (~> 0.2) rexml (~> 3.2, >= 3.2.5) rubyzip (>= 1.2.2, < 3.0) websocket (~> 1.0) sprockets (4.2.1) concurrent-ruby (~> 1.0) rack (>= 2.2.4, < 4) sprockets-rails (3.4.2) actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) sqlite3 (1.7.2-aarch64-linux) sqlite3 (1.7.2-arm-linux) sqlite3 (1.7.2-arm64-darwin) sqlite3 (1.7.2-x86-linux) sqlite3 (1.7.2-x86_64-darwin) sqlite3 (1.7.2-x86_64-linux) stimulus-rails (1.3.3) railties (>= 6.0.0) stringio (3.1.0) tailwindcss-rails (2.3.0) railties (>= 6.0.0) tailwindcss-rails (2.3.0-aarch64-linux) railties (>= 6.0.0) tailwindcss-rails (2.3.0-arm-linux) railties (>= 6.0.0) tailwindcss-rails (2.3.0-arm64-darwin) railties (>= 6.0.0) tailwindcss-rails (2.3.0-x86_64-darwin) railties (>= 6.0.0) tailwindcss-rails (2.3.0-x86_64-linux) railties (>= 6.0.0) thor (1.3.0) timeout (0.4.1) turbo-rails (2.0.4) actionpack (>= 6.0.0) activejob (>= 6.0.0) railties (>= 6.0.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) web-console (4.2.1) actionview (>= 6.0.0) activemodel (>= 6.0.0) bindex (>= 0.4.0) railties (>= 6.0.0) webrick (1.8.1) websocket (1.2.10) websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) zeitwerk (2.6.13) PLATFORMS aarch64-linux arm-linux arm64-darwin x86-linux x86_64-darwin x86_64-linux DEPENDENCIES bootsnap capybara debug importmap-rails jbuilder puma (>= 5.0) rails (~> 7.1.3, >= 7.1.3.2) redis (>= 4.0.1) selenium-webdriver sprockets-rails sqlite3 (~> 1.4) stimulus-rails tailwindcss-rails turbo-rails tzinfo-data web-console RUBY VERSION ruby 3.3.0p0 BUNDLED WITH 2.5.3 ```
And here's the output from `bin/dev` ``` soho in tailwind_test_330 on  main [?] via � v3.3.0 $ bin/dev Installing foreman... Fetching foreman-0.87.2.gem Successfully installed foreman-0.87.2 1 gem installed 13:47:59 web.1 | started with pid 37888 13:47:59 css.1 | started with pid 37889 13:48:01 web.1 | => Booting Puma 13:48:01 web.1 | => Rails 7.1.3.2 application starting in development 13:48:01 web.1 | => Run `bin/rails server --help` for more startup options 13:48:01 web.1 | Puma starting in single mode... 13:48:01 web.1 | * Puma version: 6.4.2 (ruby 3.3.0-p0) ("The Eagle of Durango") 13:48:01 web.1 | * Min threads: 5 13:48:01 web.1 | * Max threads: 5 13:48:01 web.1 | * Environment: development 13:48:01 web.1 | * PID: 37888 13:48:01 web.1 | * Listening on http://127.0.0.1:3000 13:48:01 web.1 | * Listening on http://[::1]:3000 13:48:01 web.1 | * Listening on http://127.0.0.42:3000 13:48:01 web.1 | * Listening on http://127.0.2.2:3000 13:48:01 web.1 | * Listening on http://127.0.2.3:3000 13:48:02 web.1 | Use Ctrl-C to stop 13:48:03 css.1 | 13:48:03 css.1 | Rebuilding... 13:48:03 css.1 | 13:48:03 css.1 | Done in 209ms. ^C13:48:04 system | SIGINT received, starting shutdown 13:48:04 css.1 | bin/rails aborted! 13:48:04 css.1 | Interrupt: Interrupt 13:48:04 css.1 | 13:48:04 web.1 | - Gracefully stopping, waiting for requests to finish 13:48:04 css.1 | Tasks: TOP => tailwindcss:watch 13:48:04 css.1 | (See full trace by running task with --trace) 13:48:04 web.1 | === puma shutdown: 2024-02-23 13:48:04 -0500 === 13:48:04 web.1 | - Goodbye! 13:48:04 web.1 | Exiting 13:48:05 system | sending SIGTERM to all processes 13:48:05 css.1 | exited with code 1 13:48:05 web.1 | exited with code 0 ```

Can you help me by describing what's different about your system/setup/versions/dependencies? If you can provide more information that would be incredibly helpful.

davidcelis commented 7 months ago
Sure, here's the output of my `bundle env` ## Environment ``` Bundler 2.5.3 Platforms ruby, arm64-darwin-23 Ruby 3.3.0p0 (2023-12-25 revision 5124f9ac7513eb590c37717337c430cb93caa151) [arm64-darwin-23] Full Path /Users/davidcelis/.asdf/installs/ruby/3.3.0/bin/ruby Config Dir /Users/davidcelis/.asdf/installs/ruby/3.3.0/etc RubyGems 3.5.3 Gem Home /Users/davidcelis/.asdf/installs/ruby/3.3.0/lib/ruby/gems/3.3.0 Gem Path /Users/davidcelis/.gem/ruby/3.3.0:/Users/davidcelis/.asdf/installs/ruby/3.3.0/lib/ruby/gems/3.3.0 User Home /Users/davidcelis User Path /Users/davidcelis/.gem/ruby/3.3.0 Bin Dir /Users/davidcelis/.asdf/installs/ruby/3.3.0/bin Tools Git 2.43.0 RVM not installed rbenv not installed chruby not installed ``` ## Bundler Build Metadata ``` Built At 2024-02-23 Git SHA unknown Released Version false ``` ## Bundler settings ``` build.ffi Set for the current user (/Users/davidcelis/.bundle/config): "--enable-libffi-alloc" gem.changelog Set for the current user (/Users/davidcelis/.bundle/config): false gem.ci Set for the current user (/Users/davidcelis/.bundle/config): "github" gem.coc Set for the current user (/Users/davidcelis/.bundle/config): true gem.linter Set for the current user (/Users/davidcelis/.bundle/config): false gem.mit Set for the current user (/Users/davidcelis/.bundle/config): true gem.test Set for the current user (/Users/davidcelis/.bundle/config): "rspec" gemfile Set via BUNDLE_GEMFILE: "/Users/davidcelis/Developer/tailwind_test/Gemfile" ignore_messages Set for the current user (/Users/davidcelis/.bundle/config): true jobs Set for the current user (/Users/davidcelis/.bundle/config): 8 path Set for the current user (/Users/davidcelis/.bundle/config): "vendor/bundle" rubygems.pkg.github.com Set via BUNDLE_RUBYGEMS__PKG__GITHUB__COM: "x-access-token:[REDACTED]" ``` ## Gemfile ### Gemfile ```ruby source "https://rubygems.org" ruby "3.3.0" # Bundle edge Rails instead: gem "rails", github: "rails/rails", branch: "main" gem "rails", "~> 7.1.3", ">= 7.1.3.2" # The original asset pipeline for Rails [https://github.com/rails/sprockets-rails] gem "sprockets-rails" # Use sqlite3 as the database for Active Record gem "sqlite3", "~> 1.4" # Use the Puma web server [https://github.com/puma/puma] gem "puma", ">= 5.0" # Use JavaScript with ESM import maps [https://github.com/rails/importmap-rails] gem "importmap-rails" # Hotwire's SPA-like page accelerator [https://turbo.hotwired.dev] gem "turbo-rails" # Hotwire's modest JavaScript framework [https://stimulus.hotwired.dev] gem "stimulus-rails" # Use Tailwind CSS [https://github.com/rails/tailwindcss-rails] gem "tailwindcss-rails" # Build JSON APIs with ease [https://github.com/rails/jbuilder] gem "jbuilder" # Use Redis adapter to run Action Cable in production gem "redis", ">= 4.0.1" # Use Kredis to get higher-level data types in Redis [https://github.com/rails/kredis] # gem "kredis" # Use Active Model has_secure_password [https://guides.rubyonrails.org/active_model_basics.html#securepassword] # gem "bcrypt", "~> 3.1.7" # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem "tzinfo-data", platforms: %i[ windows jruby ] # Reduces boot times through caching; required in config/boot.rb gem "bootsnap", require: false # Use Active Storage variants [https://guides.rubyonrails.org/active_storage_overview.html#transforming-images] # gem "image_processing", "~> 1.2" group :development, :test do # See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem gem "debug", platforms: %i[ mri windows ] end group :development do # Use console on exceptions pages [https://github.com/rails/web-console] gem "web-console" # Add speed badges [https://github.com/MiniProfiler/rack-mini-profiler] # gem "rack-mini-profiler" # Speed up commands on slow machines / big apps [https://github.com/rails/spring] # gem "spring" end group :test do # Use system testing [https://guides.rubyonrails.org/testing.html#system-testing] gem "capybara" gem "selenium-webdriver" end ``` ### Gemfile.lock ``` GEM remote: https://rubygems.org/ specs: actioncable (7.1.3.2) actionpack (= 7.1.3.2) activesupport (= 7.1.3.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) actionmailbox (7.1.3.2) actionpack (= 7.1.3.2) activejob (= 7.1.3.2) activerecord (= 7.1.3.2) activestorage (= 7.1.3.2) activesupport (= 7.1.3.2) mail (>= 2.7.1) net-imap net-pop net-smtp actionmailer (7.1.3.2) actionpack (= 7.1.3.2) actionview (= 7.1.3.2) activejob (= 7.1.3.2) activesupport (= 7.1.3.2) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp rails-dom-testing (~> 2.2) actionpack (7.1.3.2) actionview (= 7.1.3.2) activesupport (= 7.1.3.2) nokogiri (>= 1.8.5) racc rack (>= 2.2.4) rack-session (>= 1.0.1) rack-test (>= 0.6.3) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) actiontext (7.1.3.2) actionpack (= 7.1.3.2) activerecord (= 7.1.3.2) activestorage (= 7.1.3.2) activesupport (= 7.1.3.2) globalid (>= 0.6.0) nokogiri (>= 1.8.5) actionview (7.1.3.2) activesupport (= 7.1.3.2) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) activejob (7.1.3.2) activesupport (= 7.1.3.2) globalid (>= 0.3.6) activemodel (7.1.3.2) activesupport (= 7.1.3.2) activerecord (7.1.3.2) activemodel (= 7.1.3.2) activesupport (= 7.1.3.2) timeout (>= 0.4.0) activestorage (7.1.3.2) actionpack (= 7.1.3.2) activejob (= 7.1.3.2) activerecord (= 7.1.3.2) activesupport (= 7.1.3.2) marcel (~> 1.0) activesupport (7.1.3.2) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) connection_pool (>= 2.2.5) drb i18n (>= 1.6, < 2) minitest (>= 5.1) mutex_m tzinfo (~> 2.0) addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) base64 (0.2.0) bigdecimal (3.1.6) bindex (0.8.1) bootsnap (1.18.3) msgpack (~> 1.2) builder (3.2.4) capybara (3.40.0) addressable matrix mini_mime (>= 0.1.3) nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) concurrent-ruby (1.2.3) connection_pool (2.4.1) crass (1.0.6) date (3.3.4) debug (1.9.1) irb (~> 1.10) reline (>= 0.3.8) drb (2.2.0) ruby2_keywords erubi (1.12.0) globalid (1.2.1) activesupport (>= 6.1) i18n (1.14.1) concurrent-ruby (~> 1.0) importmap-rails (2.0.1) actionpack (>= 6.0.0) activesupport (>= 6.0.0) railties (>= 6.0.0) io-console (0.7.2) irb (1.11.2) rdoc reline (>= 0.4.2) jbuilder (2.11.5) actionview (>= 5.0.0) activesupport (>= 5.0.0) loofah (2.22.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) mail (2.8.1) mini_mime (>= 0.1.1) net-imap net-pop net-smtp marcel (1.0.2) matrix (0.4.2) mini_mime (1.1.5) minitest (5.22.2) msgpack (1.7.2) mutex_m (0.2.0) net-imap (0.4.10) date net-protocol net-pop (0.1.2) net-protocol net-protocol (0.2.2) timeout net-smtp (0.4.0.1) net-protocol nio4r (2.7.0) nokogiri (1.16.2-aarch64-linux) racc (~> 1.4) nokogiri (1.16.2-arm-linux) racc (~> 1.4) nokogiri (1.16.2-arm64-darwin) racc (~> 1.4) nokogiri (1.16.2-x86-linux) racc (~> 1.4) nokogiri (1.16.2-x86_64-darwin) racc (~> 1.4) nokogiri (1.16.2-x86_64-linux) racc (~> 1.4) psych (5.1.2) stringio public_suffix (5.0.4) puma (6.4.2) nio4r (~> 2.0) racc (1.7.3) rack (3.0.9.1) rack-session (2.0.0) rack (>= 3.0.0) rack-test (2.1.0) rack (>= 1.3) rackup (2.1.0) rack (>= 3) webrick (~> 1.8) rails (7.1.3.2) actioncable (= 7.1.3.2) actionmailbox (= 7.1.3.2) actionmailer (= 7.1.3.2) actionpack (= 7.1.3.2) actiontext (= 7.1.3.2) actionview (= 7.1.3.2) activejob (= 7.1.3.2) activemodel (= 7.1.3.2) activerecord (= 7.1.3.2) activestorage (= 7.1.3.2) activesupport (= 7.1.3.2) bundler (>= 1.15.0) railties (= 7.1.3.2) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) minitest nokogiri (>= 1.6) rails-html-sanitizer (1.6.0) loofah (~> 2.21) nokogiri (~> 1.14) railties (7.1.3.2) actionpack (= 7.1.3.2) activesupport (= 7.1.3.2) irb rackup (>= 1.0.0) rake (>= 12.2) thor (~> 1.0, >= 1.2.2) zeitwerk (~> 2.6) rake (13.1.0) rdoc (6.6.2) psych (>= 4.0.0) redis (5.1.0) redis-client (>= 0.17.0) redis-client (0.20.0) connection_pool regexp_parser (2.9.0) reline (0.4.2) io-console (~> 0.5) rexml (3.2.6) ruby2_keywords (0.0.5) rubyzip (2.3.2) selenium-webdriver (4.18.1) base64 (~> 0.2) rexml (~> 3.2, >= 3.2.5) rubyzip (>= 1.2.2, < 3.0) websocket (~> 1.0) sprockets (4.2.1) concurrent-ruby (~> 1.0) rack (>= 2.2.4, < 4) sprockets-rails (3.4.2) actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) sqlite3 (1.7.2-aarch64-linux) sqlite3 (1.7.2-arm-linux) sqlite3 (1.7.2-arm64-darwin) sqlite3 (1.7.2-x86-linux) sqlite3 (1.7.2-x86_64-darwin) sqlite3 (1.7.2-x86_64-linux) stimulus-rails (1.3.3) railties (>= 6.0.0) stringio (3.1.0) tailwindcss-rails (2.3.0) railties (>= 6.0.0) tailwindcss-rails (2.3.0-aarch64-linux) railties (>= 6.0.0) tailwindcss-rails (2.3.0-arm-linux) railties (>= 6.0.0) tailwindcss-rails (2.3.0-arm64-darwin) railties (>= 6.0.0) tailwindcss-rails (2.3.0-x86_64-darwin) railties (>= 6.0.0) tailwindcss-rails (2.3.0-x86_64-linux) railties (>= 6.0.0) thor (1.3.0) timeout (0.4.1) turbo-rails (2.0.4) actionpack (>= 6.0.0) activejob (>= 6.0.0) railties (>= 6.0.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) web-console (4.2.1) actionview (>= 6.0.0) activemodel (>= 6.0.0) bindex (>= 0.4.0) railties (>= 6.0.0) webrick (1.8.1) websocket (1.2.10) websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) zeitwerk (2.6.13) PLATFORMS aarch64-linux arm-linux arm64-darwin x86-linux x86_64-darwin x86_64-linux DEPENDENCIES bootsnap capybara debug importmap-rails jbuilder puma (>= 5.0) rails (~> 7.1.3, >= 7.1.3.2) redis (>= 4.0.1) selenium-webdriver sprockets-rails sqlite3 (~> 1.4) stimulus-rails tailwindcss-rails turbo-rails tzinfo-data web-console RUBY VERSION ruby 3.3.0p0 BUNDLED WITH 2.5.3 ```

In your bin/dev output, though, I do see an Interrupt: Interrupt exception right there after you ^C to kill the server. Is it possible that you have some kind of configuration that's hiding the backtrace itself?

flavorjones commented 7 months ago

Is it possible that you have some kind of configuration that's hiding the backtrace itself?

Not that I am aware of.

flavorjones commented 7 months ago

336 has been merged! Will be in the next release.