elm-pages-v3-beta/CHANGELOG-NPM.md

309 lines
13 KiB
Markdown
Raw Normal View History

2019-10-09 05:52:42 +03:00
# Changelog [![npm](https://img.shields.io/npm/v/elm-pages.svg)](https://npmjs.com/package/elm-pages)
All notable changes to
[the `elm-pages` npm package](https://www.npmjs.com/package/elm-pages)
will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
## [Unreleased]
2021-08-27 21:52:11 +03:00
## [2.1.9] - 2021-08-27
### Added
- Runs a special `elm-review` config to give better actionable errors for the user instead of error messages pointing to generated code. Note: this now requires `elm-review` to be on the PATH when running `elm-pages`.
2021-08-25 21:09:59 +03:00
## [2.1.8] - 2021-08-25
2021-08-25 20:59:01 +03:00
### Fixed
- `</script>` tags within DataSource's are now escaped correctly on the pre-rendered HTML. Thank you [@danmarcab](https://github.com/danmarcab) for the report and the fix! See [#207](https://github.com/dillonkearns/elm-pages/pull/207).
2021-08-18 04:45:07 +03:00
## [2.1.7] - 2021-08-17
### Fixed
- Check for `elm` and `elm-optimize-level-2` executables before running build step to report better error message.
- Removed `elm-optimize-level-2` as a dependency since the user needs to install it as a `devDependency` in their project anyway to make the binary available.
2021-08-15 21:58:13 +03:00
## [2.1.6] - 2021-08-15
### Fixed
- `undefined` errors that were printed in `elm-pages build` are now showing the correct error output.
## [2.1.4] - 2021-08-02
### Fixed
- Refer to latest NPM version in init template.
2021-08-03 03:39:48 +03:00
## [2.1.3] - 2021-08-02
### Fixed
- Cleaned up error printing in dev server and build to prevent some errors when presenting failure messages.
2021-02-16 21:59:35 +03:00
## [1.5.5] - 2020-02-16
### Fixed
- 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)!
2020-11-02 22:27:12 +03:00
## [1.5.4] - 2020-11-02
### Fixed
- Use a more reliable codegeneration order for the elm-pages dev server to make sure changes hot reload correctly.
2020-10-29 20:30:03 +03:00
## [1.5.3] - 2020-10-29
### Fixed
- 1.5.2 didn't end up fixing the infinite loop in `elm-pages develop`. It's now properly fixed.
- No more double-builds on changes for `elm-pages develop` webpack dev server, so page changes are faster.
2020-10-28 17:47:56 +03:00
## [1.5.2] - 2020-10-28
### Fixed
- Fixed infinite loop in `elm-pages develop` from the new generated beta code.
2020-10-28 01:50:21 +03:00
## [1.5.1] - 2020-10-27
### Fixed
- 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)).
2020-08-18 05:47:03 +03:00
## [1.4.3] - 2020-08-17
### Added
2020-10-28 01:50:21 +03:00
- `elm-pages build --skip-dist` option allows you to build the generated Elm code and
check for errors without running the pre-rendering steps. Thank you [@sparksp](https://github.com/sparksp)!
See https://github.com/dillonkearns/elm-pages/pull/123/files.
2020-08-18 05:47:03 +03:00
### Fixed
2020-10-28 01:50:21 +03:00
- Added headers to the dev server that prevent Safari from serving up stale data. Thank you
2020-08-18 05:47:03 +03:00
Kevin Yank for reporting the issue!
2020-07-14 21:56:00 +03:00
## [1.4.2] - 2020-07-14
### Added
2020-10-28 01:50:21 +03:00
2020-07-14 21:56:00 +03:00
- Added dimensions to static images: https://github.com/dillonkearns/elm-pages/pull/110.
2020-06-16 18:32:52 +03:00
## [1.4.1] - 2020-06-16
### Fixed
- 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).
2020-05-12 04:18:22 +03:00
## [1.4.0] - 2020-05-11
### Added
2020-10-28 01:50:21 +03:00
2020-05-12 04:18:22 +03:00
- 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.
### Changed
2020-10-28 01:50:21 +03:00
2020-05-12 04:18:22 +03:00
- 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
2020-10-28 01:50:21 +03:00
2020-05-12 04:18:22 +03:00
- 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
when you have unfinished `---` for your
2020-04-06 18:42:01 +03:00
## [1.3.0] - 2020-03-28
2020-03-29 02:21:14 +03:00
### Added
2020-10-28 01:50:21 +03:00
2020-03-29 02:21:14 +03:00
- 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.
2020-03-18 18:26:29 +03:00
## [1.2.11] - 2020-03-18
### Fixed
- 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!
## [1.2.10] - 2020-02-25
- Turn off offline service worker fallbacks for now. This will likely be revisited
in the future when I can give it a full treatment. It seemed to cause an issue
for at least one user of elm-pages, though it may have been related to some
a Netlify cloudflare plugin that modifies the HTML assets.
2020-02-18 20:57:32 +03:00
## [1.2.9] - 2020-02-18
- Fix an issue with the NPM bundle (see https://github.com/dillonkearns/elm-pages/issues/71).
Thank you for the fix [@icidasset](https://github.com/icidasset)! 🙏
2020-02-08 20:05:38 +03:00
## [1.2.8] - 2020-02-08
### Fixed
2020-03-18 18:26:29 +03:00
2020-02-08 20:05:38 +03:00
- Colorize elm make output for initial elm-pages build step. See [#66](https://github.com/dillonkearns/elm-pages/issues/66).
2020-03-18 18:26:29 +03:00
Note, this patch still hasn't propogated through to `elm-webpack-loader` (see https://github.com/elm-community/elm-webpack-loader/issues/166).
So there may still be non-colorized output for errors as you make changes while the dev server is running.
2020-02-08 20:05:38 +03:00
2020-02-04 07:28:22 +03:00
## [1.2.7] - 2020-02-03
### Fixed
2020-03-18 18:26:29 +03:00
2020-02-04 07:28:22 +03:00
- Don't serve fallback HTML from service worker when a page 404s... only when it fails to load (i.e. when
2020-03-18 18:26:29 +03:00
you're offline). 404s will go through from the server if you're online now.
2020-02-04 07:28:22 +03:00
2020-02-03 23:18:30 +03:00
## [1.2.6] - 2020-02-03
### Fixed
2020-03-18 18:26:29 +03:00
2020-02-03 23:18:30 +03:00
- Only serve up the root route's HTML as a fallback when you're offline. This fixes the flash of root page content
2020-03-18 18:26:29 +03:00
when you are online. When you're offline, you will currently still see the root page flash when you load a page,
but you will be able to navigate to any cached pages as long as their content.json is in the service worker cache.
2020-02-03 23:18:30 +03:00
2020-01-31 19:58:06 +03:00
## [1.2.5] - 2020-01-31
### Fixed
2020-03-18 18:26:29 +03:00
2020-01-31 19:58:06 +03:00
- Make sure that pre-render trigger event fires to fix pre-rendering hanging.
2020-01-30 22:17:36 +03:00
## [1.2.4] - 2020-01-30
2020-01-30 20:45:34 +03:00
### Fixed
2020-03-18 18:26:29 +03:00
2020-01-30 20:45:34 +03:00
- Don't pre-fetch content.json files for unknown paths: https://github.com/dillonkearns/elm-pages/pull/60.
- Fix race condition where pre-rendered content sometimes didn't have body: https://github.com/dillonkearns/elm-pages/pull/62.
2020-01-28 03:33:38 +03:00
## [1.2.2] - 2020-01-27
2020-01-28 03:14:25 +03:00
### Fixed
2020-03-18 18:26:29 +03:00
2020-01-28 03:14:25 +03:00
- Dev server only terminates with unrecoverable build errors, and now will
2020-03-18 18:26:29 +03:00
continue running with recoverable errors like metadata parsing errors.
See [#58](https://github.com/dillonkearns/elm-pages/pull/58).
2020-01-28 03:14:25 +03:00
2020-01-28 03:31:41 +03:00
### Added
2020-03-18 18:26:29 +03:00
2020-01-28 03:31:41 +03:00
- The `pagesInit` function that wraps the way you initialize your app in `index.js` now returns a Promise
2020-03-18 18:26:29 +03:00
so you can wire up ports to it once it's initialized. See [#50](https://github.com/dillonkearns/elm-pages/pull/50).
Thank you [@icidasset](https://github.com/icidasset)! 🙏
2020-01-28 03:31:41 +03:00
2020-01-26 08:39:38 +03:00
## [1.2.1] - 2020-01-20
### Fixed
2020-03-18 18:26:29 +03:00
2020-01-26 08:39:38 +03:00
- Removed a couple of debug console.log statements from the CLI.
2020-01-26 03:57:55 +03:00
## [1.2.0] - 2020-01-20
### Changed
2020-03-18 18:26:29 +03:00
2020-01-26 03:57:55 +03:00
- Changed the CLI generator to expect code from the new Elm package from the new
2020-03-18 18:26:29 +03:00
`generateFiles` hook in `Pages.Platform.application`.
2020-01-26 03:57:55 +03:00
2020-01-21 05:09:21 +03:00
## [1.1.8] - 2020-01-20
### Fixed
2020-03-18 18:26:29 +03:00
2020-01-21 05:09:21 +03:00
- "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).
2020-01-13 05:58:30 +03:00
## [1.1.7] - 2020-01-12
### Fixed
2020-03-18 18:26:29 +03:00
2020-01-13 05:58:30 +03:00
- 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)! 🎉🙏
2020-01-05 06:22:38 +03:00
## [1.1.6] - 2020-01-04
### Added
2020-03-18 18:26:29 +03:00
2020-01-05 06:22:38 +03:00
- Added hot reloading for code changes! That means that in dev mode (`elm-pages develop`),
2020-03-18 18:26:29 +03:00
you can change your code and the changes will be reloaded in your browser for you instantly.
Note that changing files in your `content` folder won't yet be instantly reloaded, that will
be a future task. See [#35](https://github.com/dillonkearns/elm-pages/pull/35).
2020-01-05 06:22:38 +03:00
2020-01-04 05:47:07 +03:00
## [1.1.5] - 2020-01-03
### Fixed
2020-03-18 18:26:29 +03:00
2020-01-04 05:47:07 +03:00
- 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).
2020-01-04 03:58:46 +03:00
## [1.1.4] - 2020-01-03
2020-01-04 02:13:33 +03:00
2020-01-04 03:58:21 +03:00
### Changed
2020-03-18 18:26:29 +03:00
2020-01-04 03:58:21 +03:00
- Updated `favicons-webpack-plugin` to latest version. Had to upgrade to `html-webpack-plugin@4.0.0-beta.11`
for this. See [#32](https://github.com/dillonkearns/elm-pages/issues/32).
## [1.1.3] - 2020-01-03
2020-03-18 18:26:29 +03:00
\*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.
2020-01-04 03:21:26 +03:00
2020-01-04 02:13:33 +03:00
### Changed
2020-03-18 18:26:29 +03:00
2020-01-04 02:13:33 +03:00
- Added `StaticHttp` requests in the CLI process (see the Elm package changelog).
2019-11-14 17:56:56 +03:00
## [1.0.41] - 2019-11-14
### Fixed
2020-03-18 18:26:29 +03:00
2019-11-14 17:56:56 +03:00
- Fixed a regression where elm-markup frontmatter was being incorrectly parsed as JSON
2020-03-18 18:26:29 +03:00
(fixes [#20](https://github.com/dillonkearns/elm-pages/issues/20)).
2019-11-14 17:56:56 +03:00
2019-11-04 21:37:44 +03:00
## [1.0.40] - 2019-11-04
2019-11-04 21:33:39 +03:00
### Fixed
2020-03-18 18:26:29 +03:00
2019-11-04 21:33:39 +03:00
- Generate files for extensions other than `.md` and `.emu` (fixes [#16](https://github.com/dillonkearns/elm-pages/issues/16)).
2020-03-18 18:26:29 +03:00
As always, be sure to also use the latest Elm package.
2019-11-04 21:33:39 +03:00
### Added
2020-03-18 18:26:29 +03:00
2019-11-04 21:33:39 +03:00
- 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)! 🎉)
2019-10-19 03:50:01 +03:00
## [1.0.39] - 2019-10-18
2019-10-19 03:45:05 +03:00
2019-10-09 05:52:42 +03:00
### Fixed
2020-03-18 18:26:29 +03:00
2019-10-09 05:52:42 +03:00
- Use hidden `<div>` to listen for Elm view renders instead of wrapping entire
2020-03-18 18:26:29 +03:00
page in an extra div. Fixes [#5](https://github.com/dillonkearns/elm-pages/issues/5).
### Changed
2020-03-18 18:26:29 +03:00
- Add `onPageChange : PagePath Pages.PathKey -> userMsg` field to `Pages.application` config record.
2020-03-18 18:26:29 +03:00
This is analagous to `onUrlChange` in `Browser.application`, except that you get a
type-safe `PagePath Pages.PathKey` because it is guaranteed that you will only
go to one of your static routes when this `Msg` is fired. Fixes [#4](https://github.com/dillonkearns/elm-pages/issues/4).