Skip to content

Commit

Permalink
Added documentation about the new version branches (#1748)
Browse files Browse the repository at this point in the history
* Added documentation about the new version branches

Fixes #1740

* Update CONTRIBUTING.md

Co-authored-by: Lars Lillo Ulvestad <lars.lillo@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Lars Lillo Ulvestad <lars.lillo@gmail.com>

---------

Co-authored-by: Lars Lillo Ulvestad <lars.lillo@gmail.com>
  • Loading branch information
mpscholten and kodeFant authored Jul 16, 2023
1 parent 9d68c3b commit 6d43b2a
Showing 1 changed file with 35 additions and 0 deletions.
35 changes: 35 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,41 @@ main

After creating a new test you need to still call it from the `Main` module by adding it to `IHP/Test/Main.hs`.

## Branches

Since the switch to nix flakes with IHP v1.1 we're using release branches, to make it easy to upgrade IHP versions using `nix flake update`.

E.g. there's a [branch named `v1.1`](https://github.com/digitallyinduced/ihp/tree/v1.1) that contains the latest IHP v1.1.x release. When a new IHP v1.1.x release is made, we'll update the `v1.1` branch to point to the new release commit.

IHP apps have a `flake.nix` like this:

```nix
{
inputs.ihp.url = "github:digitallyinduced/ihp/v1.1";
}
```

This means that whenever someone runs `nix flake update`, they'll get the latest commit from the IHP v1.1 branch.

This will also lead to a change of the `flake.lock` file in the project. This file ensures that IHP is consistently reproduced across machines, so users should also make sure to check this change into git.

To upgrade to a newer minor version, the URL can be changed to use IHP from the e.g. `v1.2` branch:

```nix
{
inputs.ihp.url = "github:digitallyinduced/ihp/v1.2";
}
```

In the same way as with updating, running `nix flake update` after declaring a new version will update the `flake.lock` file to ensure consistency in all environments.

### New Releases

When we're preparing a new release, e.g. the IHP v1.2.0 release, we'll create a new branch `v1.2` and merge the current master into that branch.

Additionally every released version of IHP is tagged. [You can see a list of all tags on GitHub.](https://github.com/digitallyinduced/ihp/tags)


## Troubleshooting

### `can't satisfy package ihp`
Expand Down

0 comments on commit 6d43b2a

Please sign in to comment.