rails / tailwindcss-rails

Other
1.39k stars 170 forks source link

Add puma plugin #300

Closed npezza93 closed 8 months ago

npezza93 commented 8 months ago

This adds a puma plugin that runs watch mode only in development.

npezza93 commented 8 months ago

@brunoprietog Should have everything addressed! I also removed the bin/dev and procfile stuff. Let me know if you want to keep that around

brunoprietog commented 8 months ago

Nice! I have no further comments from me at least. Hopefully it will merge soon and we will have the same for the other gems that force us to use bin/dev.

flavorjones commented 8 months ago

I think I understand why adding Puma support is valuable; but what's the rationale for deleting lib/install/Procfile.dev and lib/install/dev? That will break the developer experience for people using foreman today.

brunoprietog commented 8 months ago

It won't break it, it would only be for new applications. bin/dev is horrible for debugging, and I personally don't like using foreman because it adds extra information that I don't need in the terminal. You should only need to run bin/rails server and that's it.

flavorjones commented 8 months ago

There is a developer workflow that is well-documented and expected to work. Unless the files prevent users from using a puma plugin, they should not be removed. And if they do, I want to understand why.

brunoprietog commented 8 months ago

How could you debug using bin/dev? Whenever I need to debug, I have to use rails server separately. That for me at least is quite annoying.

In my opinion, everything should just work in a single terminal. Why would you want to have two ways if one works better than the other? I don't understand why it would be better to use bin/dev.

I mean, why would you want to use foreman? That means adding one more dependency. It also means that in some cases, newvie developers have to use bin/dev and in others rails server. Explaining this to a newbie coming from node.js for example is not so easy, being that they can run everything in a single process there.

npezza93 commented 8 months ago

@flavorjones How would you feel about reverting all but the puma plugin and have the discussion around bin/dev in a separate PR?

flavorjones commented 8 months ago

@npezza93 Yup, that would be great, thank you!

npezza93 commented 8 months ago

@flavorjones Should be all set!

flavorjones commented 8 months ago

@npezza93 Thank you! I've squashed your commits to leave a clean history, and I've reworked the README a bit to feature the Puma plugin more prominently.

This is great work, thank you! Worked great for me when I tried it out on my local dev environment.

airblade commented 8 months ago

I mean, why would you want to use foreman?

@brunoprietog So you can spin up other processes too, such as Redis or Sidekiq.

brunoprietog commented 8 months ago

Redis can be started as a service just like PostgreSQL or MySQL. And Sidekiq you can also manage it with puma, so a single command is enough and you can easily debug.

hdittmar commented 7 months ago

I tried adding the plugin :tailwindcss... configuration line mentioned in the Readme into my puma.rb file and since then, puma crashes on launch, for more info see here: https://github.com/rails/tailwindcss-rails/issues/319

(Problem solved, happened due to a conflict with the sassc-rails gem)