2021-11-30 01:31:19 +08:00
# CHANGELOG
2022-03-20 22:07:22 +08:00
## 0.16.0 (2022-xx-xx)
2022-03-21 16:49:14 +08:00
### Changes
2022-04-08 02:21:26 +08:00
2022-04-07 05:41:13 +08:00
- Headscale fails to serve if the ACL policy file cannot be parsed [#537 ](https://github.com/juanfont/headscale/pull/537 )
2022-03-21 16:49:14 +08:00
- Fix labels cardinality error when registering unknown pre-auth key [#519 ](https://github.com/juanfont/headscale/pull/519 )
2022-04-11 04:47:35 +08:00
- Fix send on closed channel crash in polling [#542 ](https://github.com/juanfont/headscale/pull/542 )
2022-04-30 22:50:55 +08:00
- Fixed spurious calls to setLastStateChangeToNow from ephemeral nodes [#566 ](https://github.com/juanfont/headscale/pull/566 )
2022-05-01 21:47:34 +08:00
- Add command for moving nodes between namespaces [#362 ](https://github.com/juanfont/headscale/issues/362 )
2022-04-26 03:05:37 +08:00
- Added more configuration parameters for OpenID Connect (scopes, free-form paramters, domain and user allowlist)
2022-03-21 16:49:14 +08:00
2022-03-20 20:36:25 +08:00
## 0.15.0 (2022-03-20)
2021-12-24 23:46:04 +08:00
2022-03-01 06:50:35 +08:00
**Note:** Take a backup of your database before upgrading.
### BREAKING
2022-02-25 17:30:58 +08:00
- Boundaries between Namespaces has been removed and all nodes can communicate by default [#357 ](https://github.com/juanfont/headscale/pull/357 )
- To limit access between nodes, use [ACLs ](./docs/acls.md ).
2022-03-02 20:22:29 +08:00
- `/metrics` is now a configurable host:port endpoint: [#344 ](https://github.com/juanfont/headscale/pull/344 ). You must update your `config.yaml` file to include:
```yaml
metrics_listen_addr: 127.0.0.1:9090
```
2022-02-25 17:30:58 +08:00
2022-03-01 22:18:24 +08:00
### Features
2022-02-27 16:08:29 +08:00
- Add support for writing ACL files with YAML [#359 ](https://github.com/juanfont/headscale/pull/359 )
2022-03-02 04:16:33 +08:00
- Users can now use emails in ACL's groups [#372 ](https://github.com/juanfont/headscale/issues/372 )
2022-03-02 17:53:07 +08:00
- Add shorthand aliases for commands and subcommands [#376 ](https://github.com/juanfont/headscale/pull/376 )
2022-03-04 17:52:42 +08:00
- Add `/windows` endpoint for Windows configuration instructions + registry file download [#392 ](https://github.com/juanfont/headscale/pull/392 )
2022-03-20 19:36:30 +08:00
- Added embedded DERP (and STUN) server into Headscale [#388 ](https://github.com/juanfont/headscale/pull/388 )
2022-02-27 16:08:29 +08:00
2022-03-01 06:50:35 +08:00
### Changes
2022-02-25 16:44:16 +08:00
- Fix a bug were the same IP could be assigned to multiple hosts if joined in quick succession [#346 ](https://github.com/juanfont/headscale/pull/346 )
2022-03-01 06:11:31 +08:00
- Simplify the code behind registration of machines [#366 ](https://github.com/juanfont/headscale/pull/366 )
- Nodes are now only written to database if they are registrated successfully
2022-03-02 05:50:22 +08:00
- Fix a limitation in the ACLs that prevented users to write rules with `*` as source [#374 ](https://github.com/juanfont/headscale/issues/374 )
2022-03-02 16:15:21 +08:00
- Reduce the overhead of marshal/unmarshal for Hostinfo, routes and endpoints by using specific types in Machine [#371 ](https://github.com/juanfont/headscale/pull/371 )
2022-03-08 06:14:39 +08:00
- Apply normalization function to FQDN on hostnames when hosts registers and retrieve informations [#363 ](https://github.com/juanfont/headscale/issues/363 )
2022-03-18 16:34:18 +08:00
- Fix a bug that prevented the use of `tailscale logout` with OIDC [#508 ](https://github.com/juanfont/headscale/issues/508 )
2022-03-20 19:36:30 +08:00
- Added Tailscale repo HEAD and unstable releases channel to the integration tests targets [#513 ](https://github.com/juanfont/headscale/pull/513 )
2022-02-25 16:44:16 +08:00
2022-03-01 06:50:35 +08:00
## 0.14.0 (2022-02-24)
2022-02-21 03:47:12 +08:00
2022-03-01 06:50:35 +08:00
**UPCOMING ### BREAKING
From the **next\*\* version (`0.15.0`), all machines will be able to communicate regardless of
2022-02-21 23:06:20 +08:00
if they are in the same namespace. This means that the behaviour currently limited to ACLs
will become default. From version `0.15.0` , all limitation of communications must be done
2022-02-21 03:47:12 +08:00
with ACLs.
This is a part of aligning `headscale` 's behaviour with Tailscale's upstream behaviour.
2022-03-01 06:50:35 +08:00
### BREAKING
2022-02-14 21:02:18 +08:00
2022-02-21 03:47:12 +08:00
- ACLs have been rewritten to align with the bevaviour Tailscale Control Panel provides. **NOTE:** This is only active if you use ACLs
- Namespaces are now treated as Users
- All machines can communicate with all machines by default
2022-02-21 23:06:20 +08:00
- Tags should now work correctly and adding a host to Headscale should now reload the rules.
2022-02-21 03:47:12 +08:00
- The documentation have a [fictional example ](docs/acls.md ) that should cover some use cases of the ACLs features
2022-03-01 06:50:35 +08:00
### Features
2022-02-22 05:44:49 +08:00
2022-02-24 19:09:05 +08:00
- Add support for configurable mTLS [docs ](docs/tls.md#configuring-mutual-tls-authentication-mtls ) [#297 ](https://github.com/juanfont/headscale/pull/297 )
2022-03-01 06:50:35 +08:00
### Changes
2022-02-23 00:18:25 +08:00
- Remove dependency on CGO (switch from CGO SQLite to pure Go) [#346 ](https://github.com/juanfont/headscale/pull/346 )
2022-02-19 02:54:27 +08:00
**0.13.0 (2022-02-18):**
2022-01-30 16:21:11 +08:00
2022-03-01 06:50:35 +08:00
### Features
2022-01-30 16:25:49 +08:00
2022-01-30 16:21:11 +08:00
- Add IPv6 support to the prefix assigned to namespaces
2022-01-26 06:11:15 +08:00
- Add API Key support
- Enable remote control of `headscale` via CLI [docs ](docs/remote-cli.md )
- Enable HTTP API (beta, subject to change)
2022-02-24 20:34:36 +08:00
- OpenID Connect users will be mapped per namespaces
- Each user will get its own namespace, created if it does not exist
- `oidc.domain_map` option has been removed
- `strip_email_domain` option has been added (see [config-example.yaml ](./config_example.yaml ))
2022-01-30 16:21:11 +08:00
2022-03-01 06:50:35 +08:00
### Changes
2022-01-29 22:33:54 +08:00
2022-01-30 16:25:49 +08:00
- `ip_prefix` is now superseded by `ip_prefixes` in the configuration [#208 ](https://github.com/juanfont/headscale/pull/208 )
2022-02-11 16:45:02 +08:00
- Upgrade `tailscale` (1.20.4) and other dependencies to latest [#314 ](https://github.com/juanfont/headscale/pull/314 )
2022-02-11 18:56:46 +08:00
- fix swapped machine< - > namespace labels in `/metrics` [#312 ](https://github.com/juanfont/headscale/pull/312 )
2022-02-13 04:50:17 +08:00
- remove key-value based update mechanism for namespace changes [#316 ](https://github.com/juanfont/headscale/pull/316 )
2022-01-29 22:31:42 +08:00
2022-01-30 04:04:56 +08:00
**0.12.4 (2022-01-29):**
2022-03-01 06:50:35 +08:00
### Changes
2022-01-30 04:04:56 +08:00
2022-01-29 22:31:42 +08:00
- Make gRPC Unix Socket permissions configurable [#292 ](https://github.com/juanfont/headscale/pull/292 )
- Trim whitespace before reading Private Key from file [#289 ](https://github.com/juanfont/headscale/pull/289 )
2022-01-29 22:33:12 +08:00
- Add new command to generate a private key for `headscale` [#290 ](https://github.com/juanfont/headscale/pull/290 )
2022-01-29 05:00:13 +08:00
- Fixed issue where hosts deleted from control server may be written back to the database, as long as they are connected to the control server [#278 ](https://github.com/juanfont/headscale/pull/278 )
2022-01-29 22:31:42 +08:00
2022-03-01 06:50:35 +08:00
## 0.12.3 (2022-01-13)
2022-01-13 19:42:56 +08:00
2022-03-01 06:50:35 +08:00
### Changes
2022-01-13 19:42:56 +08:00
- Added Alpine container [#270 ](https://github.com/juanfont/headscale/pull/270 )
- Minor updates in dependencies [#271 ](https://github.com/juanfont/headscale/pull/271 )
2022-03-01 06:50:35 +08:00
## 0.12.2 (2022-01-11)
2022-01-11 22:45:13 +08:00
Happy New Year!
2022-03-01 06:50:35 +08:00
### Changes
2022-01-11 22:45:13 +08:00
- Fix Docker release [#258 ](https://github.com/juanfont/headscale/pull/258 )
- Rewrite main docs [#262 ](https://github.com/juanfont/headscale/pull/262 )
- Improve Docker docs [#263 ](https://github.com/juanfont/headscale/pull/263 )
2022-03-01 06:50:35 +08:00
## 0.12.1 (2021-12-24)
2021-12-24 23:39:22 +08:00
(We are skipping 0.12.0 to correct a mishap done weeks ago with the version tagging)
2021-11-30 01:31:19 +08:00
2022-03-01 06:50:35 +08:00
### BREAKING
2021-11-30 01:31:19 +08:00
2021-11-30 01:34:41 +08:00
- Upgrade to Tailscale 1.18 [#229 ](https://github.com/juanfont/headscale/pull/229 )
- This change requires a new format for private key, private keys are now generated automatically:
1. Delete your current key
2. Restart `headscale` , a new key will be generated.
3. Restart all Tailscale clients to fetch the new key
2021-11-30 01:31:19 +08:00
2022-03-01 06:50:35 +08:00
### Changes
2021-11-30 01:34:41 +08:00
2021-11-30 17:17:21 +08:00
- Unify configuration example [#197 ](https://github.com/juanfont/headscale/pull/197 )
2021-11-30 01:31:19 +08:00
- Add stricter linting and formatting [#223 ](https://github.com/juanfont/headscale/pull/223 )
2021-11-30 03:45:31 +08:00
2022-03-01 06:50:35 +08:00
### Features
2021-11-30 17:16:09 +08:00
2021-11-30 17:17:21 +08:00
- Add gRPC and HTTP API (HTTP API is currently disabled) [#204 ](https://github.com/juanfont/headscale/pull/204 )
- Use gRPC between the CLI and the server [#206 ](https://github.com/juanfont/headscale/pull/206 ), [#212 ](https://github.com/juanfont/headscale/pull/212 )
- Beta OpenID Connect support [#126 ](https://github.com/juanfont/headscale/pull/126 ), [#227 ](https://github.com/juanfont/headscale/pull/227 )
2021-11-30 17:16:09 +08:00
2022-03-01 06:50:35 +08:00
## 0.11.0 (2021-10-25)
2021-11-30 03:45:31 +08:00
2022-03-01 06:50:35 +08:00
### BREAKING
2021-11-30 03:45:31 +08:00
- Make headscale fetch DERP map from URL and file [#196 ](https://github.com/juanfont/headscale/pull/196 )