on jb-ignore-package-environment help sign in
obelisk/ChangeLog.md
49 lines 3.8 kB history raw
1# Revision history for obelisk
3This project's release branch is `master`. This log is written from the perspective of the release branch: when changes hit `master`, they are considered released, and the date should reflect that release.
5## Unreleased
7* Generalised pathSegmentEncoder, added pathFieldEncoder.
8* Added some Prisms to the encoder library for manipulating DSums (perhaps they should get moved to dependent-sum before release?)
9* Add "ob doc" command, which lists paths to haddock documentation for specified packages
10* Bump reflex-platform so that obelisk now uses GHC 8.6.5 and the nixos-19.03 nixpkgs set
11* Add support in obelisk-route for single parameters in URL paths
12* Bump reflex-platform so that obelisk now uses reflex-dom 0.5.2.0
13* Use a `--pure` nix shell in `ob run` for parity with `ob repl` and more resilience against "works on my machine".
14* Use `--keep NIX_PATH` for all pure shells so references to `<nixpkgs>` continues to work.
15* Backport ACMEv2 support in obelisk server to regain LetsEncrypt account creation.
16* Enable https in `ob run`
17* `ob run` now handles ghci errors better, and includes a custom ghcid
18 version. As a result, you no longer need to have ghcid installed to
19 use `ob run`, as we provide one for you.
20* `ob` commands now complain less on systems with umasks other than `0022`.
21* Ignore package environment files in `ob run` and `ob repl`
23## v0.2.0.0 - 2019-8-17
25* Configs become ByteStrings.
26* FrontendConfigsT has been changed into ConfigsT and configs are made available via getConfig/getConfigs
27 * The frontend will still only have access to configs that are placed in config/frontend and config/common, while the backend has access to the entire contents of the config directory via `Obelisk.ExecutableConfig.Lookup.getConfigs`.
28* The backend no longer runs in BackendConfigsT.
29* Add tabulation package. See Data.Tabulation for details.
30* Add encoders for `DMap`, `HasFields` (cf. Data.Tabulation), and JSON.
31* Use IP address for nginx proxy pass instead of localhost
33## v0.1.1.0 - 2019-05-17
35* Fix crashes of Android apps on 32-bit ARM devices.
36* Provide a way to indicate acceptance of the Android SDK license by passing `config.android_sdk.accept_license = true;` in the arguments to the import of `.obelisk/impl` in the project's `default.nix`.
37* Add `COMPLETE` pragma to `(:/)`. Using this pattern synonym should no longer generate spurious warnings about non-exhaustive pattern matching.
38* Make asset path hashing strict (see `Obelisk.Asset.Gather`)
39* Add the `ob shell` command to enter a nix shell for an obelisk project
40* Allow skeleton's obelisk to be overridden. This changes the skeleton's default.nix interface: the arguments that it used to take are now part of the new "obelisk" argument.
41* Removed `MonadIO` from `ObeliskWidget` to prevent accidental IO during prerendering. If you need to do IO in a widget it should be on the right hand side of a `prerender`.
42* Significantly changed the interface to the "executable config" packages. `obelisk-executable-config-lookup` is a new internal package which looks up all configs in a platform-specific way. `obelisk-executable-frontend` and `obelisk-executable-backend` provide MTL-style monad classes (`HasFrontendConfigs` and `HasBackendConfigs`) which the frontend and backend, respectively, can use to look up configs. This replaces the old `get` function which ran in `IO`.
43* Add a flag to force thunk packing even if there are unpushed changes in the unpacked thunk.
46## v0.1.0.0 - 2019-03-29
48* Use reflex-dom's `HydrationDomBuilder` to "hydrate" statically rendered DOM served by the Obelisk backend (rather than re-creating DOM and replacing it all).
49* Add `HasCookies` and `CookiesT` to allow `ObeliskWidget`s to access cookies during static and "hydrated" DOM rendering.