reitit/doc/development.md
2025-10-24 15:45:42 +03:00

61 lines
1.1 KiB
Markdown

# Development Instructions
## Building
```bash
./scripts/lein-modules do clean, install
```
## Running tests
```bash
./scripts/test.sh clj
./scripts/test.sh cljs
```
## Formatting
```bash
clojure-lsp format
clojure-lsp clean-ns
```
## Documentation
The documentation lives under `doc` and it is hosted on [cljdoc](https://cljdoc.org). See their
documentation for [library authors](https://github.com/cljdoc/cljdoc/blob/master/doc/userguide/for-library-authors.adoc)
## Updating deps
* `lein ancient upgrade`
* Mention non-dev non-test dep upgrades in CHANGELOG.md
* `npm update --save`
* Make a PR, run CI
## Making a release
We use [Break Versioning][breakver]. Remember our promise: patch-level bumps never include breaking changes!
[breakver]: https://github.com/ptaoussanis/encore/blob/master/BREAK-VERSIONING.md
```bash
# create a release commit
./scripts/set-version "1.0.0"
# !!! update the changelog
git add -u
git commit -m "Release 1.0.0"
# push the commit
git push
# !!! check that tests pass on CI
# Run automated release workflow by pushing a tag
git tag 1.0.0
git push --tags
```
* Announce the release at least on #reitit in Clojurians.