Releases: lydell/elm-watch
1.0.0-beta.8
- Fixed: All Elm programs except
Browser.application
works when served on thefile://
protocol (when you open an HTML file straight in the browser). However, elm-watch hot reloading code accidentally triggered theBrowser.application
runtime error forfile://
even on other program types, such asBrowser.element
. That is now fixed, so you can useBrowser.element
with a plain HTML file if you like. - Improved: Windows support. 80-90% of all tests pass. The example seems to work when playing around with it a little bit. You can definitely try it out on Windows, but I don’t dare promising there will be no problems.
1.0.0-beta.7
- Removed: The terminal resize listener added in 1.0.0-beta.5:
- I got the question if a rebuild really is triggered on resize. That’s an indication that it is too weird.
- I got feedback that it can be useful to keep the scrolling position (when having many compilation errors) and making the terminal larger to better see an error. This means we can’t re-render either.
- It’s not super bad without the resize listener. The target timings won’t be aligned and the separators won’t have the correct length.
- Everything will still be rendered correctly on the next cycle.
1.0.0-beta.6
- Improved: Running elm-watch in the (currently quite secret) debug mode now prints the
Project
data structure, which (among other things) shows the absolute paths of all interesting files in your project, such as whichelm.json
files elm-watch found and uses for your targets.
1.0.0-beta.5
- Fixed: elm-watch now reacts to you resizing the terminal window. Previously, the separators between error messages would be too long or too short, and the timings of each target wouldn’t be right-aligned correctly.
1.0.0-beta.4
- Fixed: When only type checking targets (because no Web Sockets are connected), the timing printed for parsing all
import
s of your code was wrong. Each target included the time of all previous targets instead of just timing itself.
1.0.0-beta.3
- Fixed: The previous version fixed a case where using for example
Browser.Dom.focus
ininit
caused elm-watch to always reload the page instead of hot reloading. It was an issue withTask
s. However, there’s more to the story.Http.task
returns a cancelable task. They still caused elm-watch to do full instead of hot reloads! This version fixes that problem.
1.0.0-beta.2
-
Fixed: Using
Task
s, such asBrowser.Dom.focus "my-id"
, ininit
used to cause elm-watch to always consider the return value ofinit
to have changed and therefore to reload the page instead of hot reloading. This was due to anull
vsundefined
oversight in some Elm kernel code. I’ve added a workaround for it in elm-watch (basically, considernull
andundefined
to be equal.) -
Fixed: You can now switch compilation mode if there are compilation errors. Example: You have some
Debug.log
in your code and switch to optimize mode. Now you get compilation errors becauseDebug.log
is not allowed in optimize mode. Previously, that resulted in a state where you had to remove allDebug.log
before you could do anything again. Now, elm-watch handles that case where the selected mode is one thing (optimize) but the running code has another mode (standard), and allows you to switch back to standard mode (or debug mode, if appropriate).
1.0.0-beta.1
Initial release.