- Use `cross-spawn` in the beta build to support running on Windows. Thank you @Y0hy0h for fix [#161](https://github.com/dillonkearns/elm-pages/pull/161)!
- Add missing closing tag for `<head>` in beta build command output.
- Make sure to add `/` separator for `content.json` file requests in beta build's JS code.
## [1.5.0] - 2020-10-26
### Added
- Support for `elm-pages-beta` no-webpack build command (see Elm package [release notes for 7.0.0](https://github.com/dillonkearns/elm-pages/blob/master/CHANGELOG-ELM.md#700---2020-10-26)).
- Fix `static` folder behavior in Windows, see [#118](https://github.com/dillonkearns/elm-pages/pull/118) (thank you [Y0hy0h](https://github.com/Y0hy0h)!).
- Make sure that process exits with non-zero status on error so build fails when there are errors in the build. See [#121](https://github.com/dillonkearns/elm-pages/pull/121).
- Added hot content reloading to the dev server! That means that you no longer have to restart your dev server if you add/change a StaticHttp request. You don't even
have to reload your browser! It will automatically load in the new data, while keeping your application state. Your markdown (or other format) data, and metadata,
from the `content` folder will also load for you without having to restart the dev server or refresh your browser! You'll see a loading indicator to show you when
the dev server is loading a new change.
-`elm-pages` now uses an in-memory cache for `StaticHttp` requests. That means that the dev server won't redo requests that were already being performed as you change
code with the dev server running.
frontmatter in files in the `content/` folder and save with the dev server running.
- Files are re-generated as you change your Elm code. Just refresh the generated file URL while running your dev server, and you'll always see the latest version! Note:
there's still an issue where if you no longer generate a file, you'll need to restart your dev server to get a 404 when hitting that URL.
- Uses Terser instead of GoogleClosureCompiler to minify the JavaScript bundle in production. GoogleClosureCompiler was causing some issues for Windows users when
they ran `elm-pages build` because that dependency has known issues on Windows. See [#90](https://github.com/dillonkearns/elm-pages/pull/90). Thank you very much
to [Johannes Maas](https://github.com/Y0hy0h) for the PR!
- Fixed an issue with the dev server not noticing changes to `.emu` files. See [#78](https://github.com/dillonkearns/elm-pages/issues/78). `elm-markup` files, and files with
the `.emu` extension, are handled exactly like any other files in the `content/` folder now. This simplifies the API, and the internal logic is simpler and less error-prone.
- Decode errors now show error messages correctly for `StaticHttp.unoptimizedRequest`s.
-`elm-pages` will generate the `gen/Pages.elm` module whether or not there are any errors in the build. This was problematic before this fix because you often need
the generated file in order to get it compiling in the first place. So it can cause a chicken-and-egg problem.
-`elm-pages` is now more reslient to errors so you don't have to restart the dev server as often. There is still a known issue where a dev server restart is needed
- You can now host your `elm-pages` site in a sub-directory. For example, you could host it at mysite.com/blog, where the top-level mysite.com/ is hosting a different app.
This works using [HTML `<base>` tags](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base). The paths you get from `PagePath.toString` and `ImagePath.toString`
will use relative paths (e.g. `blog/my-article`) instead of absolute URLs (e.g. `/blog/my-article`), so you can take advantage of this functionality by just making sure you
use the path helpers and don't hardcode any absolute URL strings. See https://github.com/dillonkearns/elm-pages/pull/73.
- Triple quoted strings in content files are now escaped properly (see [#26](https://github.com/dillonkearns/elm-pages/issues/26)).
- Fixed a path delimiter bug for Windows. Dev server appears to work smoothly on Windows now. See [#82](https://github.com/dillonkearns/elm-pages/pull/82).
There's currently an issue with running a production build on windows because of Google Closure Compiler. We're investigating possible fixes.
A big thank you [@vViktorPL](https://github.com/vViktorPL) for these two fixes!
- "Missing content" message no longer flashes between pre-rendered HTML and the Elm app hydrating and taking over the page. See [#48](https://github.com/dillonkearns/elm-pages/pull/48).
- Newlines and escaped double quotes (`"`s) are handled properly in content frontmatter now. See [#41](https://github.com/dillonkearns/elm-pages/pull/41). Thank you [Luke](https://github.com/lukewestby)! 🎉🙏
- Fixed the bug that showed blank pages and failed page reloads when you change files in the `content` folder. Thank you so much [@danmarcab](https://github.com/danmarcab) for contributing the fix! See [#23](https://github.com/dillonkearns/elm-pages/pull/23).
\*Check out [this upgrade checklist](https://github.com/dillonkearns/elm-pages/blob/master/docs/upgrade-guide.md#upgrading-to-elm-package-110-and-npm-package-113) for more details and steps for upgrading your project.
- Ability to use a custom port for dev server ([#10](https://github.com/dillonkearns/elm-pages/pull/10); thank you [@leojpod](https://github.com/leojpod)! 🎉)