Closed mveytsman closed 7 years ago
link https://github.com/phoenixframework/phoenix_live_reload/issues/53
Thanks @mveytsman
I should say worry I haven't made exfswatch
a good project so far, because I'm always thinking about what should I do, what backend should I use, what will exfswatch
be, and so on.
After reading the reply of josevalim, I think fswatch
is the best backend for elixir, it support most OS, I think whitfin will make sentix the most popular filesystem monitor for elixir.
for exfswatch, my current plan is:
exfswatch
package and release a compatible version for elixir 1.5.fs
. do you have any other idea about the project?
Really hope there is spec for filesystem monitor in elixir world to make it easy to switch backend.
To be clear, I honestly prefer the approach taken by exfswatch, because it has a better out of the box experience. It should just work on Mac/Linux/Windows without a need to install something else. My only concern is the API. It could probably have a better name but that's not an issue at all.
So if you folks are interested in working together towards an API, I would love to see that. Especially because we would LOVE to get rid of the fs
dependency from Phoenix.
https://hex.pm/packages/file_system released, with both functional API and module API.
I have made it works for Mac/Linux/Windows/FreeBSD, will make a pull request to phoenix_live_reload
to replace fs
soon.
@falood thank you. I have added some comments to the latest commit with some places for improvement.
@josevalim Thank your for your comments, I have finished all issue in your comments, add more docs and tests, and make sure compile and start app always never fail.
But when I want to replace :fs
for phoenix_live_reload
, I check the code of phoenix 1.3, seems phoenix doesn't depend on phoenix_live_reload
anymore. Should I still need to working on this stuff?
Phoenix never depended on phoenix_live_reload but every application generated by Phoenix does. :) I will review the code once again today! Thanks for all of your work :heart:.
exfswatch isn't based on fswatch but instead of fs. I think this can be confusing, would you consider a namechange?