marcmarcdi Team

IHP Release: 16.10.2020

It's time for the next release of IHP: v20201016 🎉

Major Changes

  • Haskell Language Server Support: You can now get cool IDE features by using Haskell Language Server. It works mostly out of the box after updating to this IHP version. Check out the documentation on how to get it running with your fav editor.

    image

  • Updated NixPkgs Version: We're updating the IHP package set to a newer version. We're moving from da7ddd822e32aeebea00e97ab5aeca9758250a40 to 07e5844fdf6fe99f41229d7392ce81cfe191bcfc. This means some of your dependencies might get updated.

  • OFFSET Support: You can now easily use Postgres OFFSET with the query builder:

    query @User 
        |> limit 25
        |> offset 50
        |> fetch
    
  • New Form Helper: numberField: Similiar to textField, renders a <input type="number"/>.

    formFor project [hsx|
        {numberField #maxUsersLimit}
    |]
    
  • Automatic Troubleshooting: We've created a script that checks all common issues that often go wrong when setting up IHP (like direnv issues, .ghci permission issues, etc.). When you cannot run your IHP app anymore, run the troubleshooting to find out possible error conditions. You can find more in the Troubleshooting section.

  • Sending Emails: Support for sending mails has been added in this release. Use the new code generator to get started 🔥

Other Changes

Updating

This release requires a few more steps than usual. As we've changed the nixpkgs version, this will also require a lot of redownloading of all packages. Make sure you have good internet and can wait up to 30 minutes to complete the download. We highly suggest to make sure your coffee machine is working before starting the update.

First open default.nix and change the git commit in line 4 to the following:

rev = "49816c21d34fd7894a956bf7fd997e6ed5243acf";

Open Config/nix/nixpkgs-config.nix and replace the file with this new version: https://raw.githubusercontent.com/digitallyinduced/ihp-boilerplate/81518e9b66e1e9d3bdf40affa674a7d2cd63f414/Config/nix/nixpkgs-config.nix

After that run the following command to update your project:

# Be aware that this will redownload a lot of files and take lots of time
nix-shell -j auto --cores 0 --run 'make -B .envrc'
make -B build/ihp-lib

# This step is required to get the config files for haskell-language-server
make hie.yaml

Now you can start your project as usual with ./start.

Check out the docs to get started with haskell language server to get cool IDE features.


If you have any problems with updating, let us know on the IHP forum.

📧 To stay in the loop, subscribe to the IHP release emails. Or follow digitally induced on twitter..

📅 The next release is expected to be released on 30.10.2020.