diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6cae5c260..781f0b1c7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,8 @@ All notable changes to this project will be documented in this file. This
project adheres to [Semantic Versioning][SemVer].
## [Unreleased]
+
+## [1.9.0] - 2022-07-07
### Added
- Publish Docker images and provide configuration examples for Docker/Kubernetes
(many thanks to Saarko) (#20).
@@ -327,7 +329,8 @@ project adheres to [Semantic Versioning][SemVer].
### Added
- Initial (pre-)release of the eturnal STUN/TURN server.
-[Unreleased]: https://github.com/processone/eturnal/compare/1.8.3...HEAD
+[Unreleased]: https://github.com/processone/eturnal/compare/1.9.0...HEAD
+[1.9.0]: https://github.com/processone/eturnal/releases/tag/1.9.0
[1.8.3]: https://github.com/processone/eturnal/releases/tag/1.8.3
[1.8.2]: https://github.com/processone/eturnal/releases/tag/1.8.2
[1.8.1]: https://github.com/processone/eturnal/releases/tag/1.8.1
diff --git a/INSTALL.md b/INSTALL.md
index 13169ee57..df2cc1c4f 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -20,11 +20,11 @@ and `openssl-devel`.
> (`chmod +x rebar3`), first. On Erlang/OTP 21.x and 22.x, you need an [older
> Rebar3][6] version.
- curl https://eturnal.net/download/eturnal-1.8.3.tar.gz | tar -C /tmp -xzf -
- cd /tmp/eturnal-1.8.3
+ curl https://eturnal.net/download/eturnal-1.9.0.tar.gz | tar -C /tmp -xzf -
+ cd /tmp/eturnal-1.9.0
./rebar3 as prod tar
-This generates the archive file `_build/prod/rel/eturnal/eturnal-1.8.3.tar.gz`.
+This generates the archive file `_build/prod/rel/eturnal/eturnal-1.9.0.tar.gz`.
The default installation prefix is set to `/opt/eturnal`, and it's assumed the
server will be executed by a user named `eturnal`. To change these defaults,
edit the [build.config][7] file, re-run `./rebar3 as prod tar`, and adapt the
@@ -47,7 +47,7 @@ or `sudo -i`, first.
2. Extract the archive generated [above](#compilation):
cd /opt/eturnal
- tar -xzf /tmp/eturnal-1.8.3/_build/prod/rel/eturnal/eturnal-1.8.3.tar.gz
+ tar -xzf /tmp/eturnal-1.9.0/_build/prod/rel/eturnal/eturnal-1.9.0.tar.gz
chown eturnal /opt/eturnal/etc/eturnal.yml
3. Copy the `eturnal.yml` file to `/etc` (optional):
@@ -71,6 +71,6 @@ configuration and usage instructions.
[4]: https://gcc.gnu.org
[5]: https://s3.amazonaws.com/rebar3/rebar3
[6]: https://github.com/erlang/rebar3/releases/download/3.15.2/rebar3
-[7]: https://github.com/processone/eturnal/blob/1.8.3/build.config
-[8]: https://github.com/processone/eturnal/blob/1.8.3/README.md
+[7]: https://github.com/processone/eturnal/blob/1.9.0/build.config
+[8]: https://github.com/processone/eturnal/blob/1.9.0/README.md
[9]: https://eturnal.net/documentation/
diff --git a/README.md b/README.md
index 8b899de50..2c76267b1 100644
--- a/README.md
+++ b/README.md
@@ -91,13 +91,13 @@ free to (ab)use it for usage questions as well. If you happen to be using
[5]: https://software.opensuse.org/download/?package=eturnal&project=devel:languages:erlang
[6]: https://eturnal.net/documentation/#Installation
[7]: https://eturnal.net/windows/
- [8]: https://github.com/processone/eturnal/blob/1.8.3/INSTALL.md
+ [8]: https://github.com/processone/eturnal/blob/1.9.0/INSTALL.md
[9]: https://en.wikipedia.org/wiki/YAML
-[10]: https://github.com/processone/eturnal/blob/1.8.3/config/eturnal.yml
+[10]: https://github.com/processone/eturnal/blob/1.9.0/config/eturnal.yml
[11]: https://www.freedesktop.org/software/systemd/man/systemctl.html
-[12]: https://github.com/processone/eturnal/blob/1.8.3/scripts/eturnal.init
+[12]: https://github.com/processone/eturnal/blob/1.9.0/scripts/eturnal.init
[13]: https://www.freedesktop.org/software/systemd/man/systemd-journald.service.html
[14]: https://eturnal.net/documentation/
-[15]: https://github.com/processone/eturnal/blob/1.8.3/CHANGELOG.md
+[15]: https://github.com/processone/eturnal/blob/1.9.0/CHANGELOG.md
[16]: https://github.com/processone/eturnal/issues
[17]: https://xmpp.org
diff --git a/doc/overview.edoc b/doc/overview.edoc
index 2de19f2d3..e36edfe05 100644
--- a/doc/overview.edoc
+++ b/doc/overview.edoc
@@ -19,7 +19,7 @@ limitations under the License.
--------------------------------------------------------------------------------
@title eturnal Documentation
-@version 1.8.3 ({@date})
+@version 1.9.0 ({@date})
@copyright 2020-2022 ProcessOne, SARL
@author Holger Weiss
@@ -33,7 +33,7 @@ clients receive temporary TURN credentials where the user name is comprised of
the (Unix) expiry timestamp and the password is derived from a {@section secret}
shared between the service generating those credentials and eturnal. The service
offering the credentials performs
+href="https://github.com/processone/eturnal/blob/1.9.0/scripts/examples/make-credentials">performs
a `Base64(HMAC-SHA1($secret, $timestamp))' operation to generate the ephemeral
password, and eturnal does the same to verify it.
@@ -51,18 +51,18 @@ Linux/x64 and Linux/arm64 systems, the binary release can be
installed as described in this section. For building eturnal from source, see
the INSTALL.md
+href="https://github.com/processone/eturnal/blob/1.9.0/INSTALL.md">INSTALL.md
file shipped with eturnal's source code
+href="https://eturnal.net/download/eturnal-1.9.0.tar.gz">source code
archive.
The binary release is installed using the following commands (on AArch64
systems, `x64' must be replaced with `arm64'):
```
-curl -O https://eturnal.net/eturnal-1.8.3-linux-x64.run
-chmod +x eturnal-1.8.3-linux-x64.run
-sudo ./eturnal-1.8.3-linux-x64.run
+curl -O https://eturnal.net/eturnal-1.9.0-linux-x64.run
+chmod +x eturnal-1.9.0-linux-x64.run
+sudo ./eturnal-1.9.0-linux-x64.run
'''
The installer extracts the release archive into `/opt/eturnal' and creates a
diff --git a/scripts/get-version b/scripts/get-version
index 288d650a3..82c10b5e5 100755
--- a/scripts/get-version
+++ b/scripts/get-version
@@ -5,7 +5,7 @@
set -e
set -u
-rel_vsn='1.8.3'
+rel_vsn='1.9.0'
( git describe --tags --match '[0-9]*' 2>'/dev/null' || echo "$rel_vsn" ) \
| sed -e 's/-g.*//' -e 's/-/+/' | tr -d '[:space:]'