Skip to content

Releases: juanfont/headscale

v0.23.0-alpha9

21 Apr 21:27
bd04792
Compare
Choose a tag to compare
v0.23.0-alpha9 Pre-release
Pre-release

Changelog

This release is mainly a code reorganisation and refactoring, significantly improving the maintainability of the codebase. This should allow us to improve further and make it easier for the maintainers to keep on top of the project.

Please remember to always back up your database between versions

Here is a short summary of the broad topics of changes:

Code has been organised into modules, reducing use of global variables/objects, isolating concerns and “putting the right things in the logical place”.

The new policy and mapper package, containing the ACL/Policy logic and the logic for creating the data served to clients (the network “map”) has been rewritten and improved. This change has allowed us to finish SSH support and add additional tests throughout the code to ensure correctness.

The “poller”, or streaming logic has been rewritten and instead of keeping track of the latest updates, checking at a fixed interval, it now uses go channels, implemented in our new notifier package and it allows us to send updates to connected clients immediately. This should both improve performance and potential latency before a client picks up an update.

Headscale now supports sending “delta” updates, thanks to the new mapper and poller logic, allowing us to only inform nodes about new nodes, changed nodes and removed nodes. Previously we sent the entire state of the network every time an update was due.

While we have a pretty good test harness for validating our changes, we have rewritten over 10000 lines of code and bugs are expected. We need help testing this release. In addition, while we think the performance should in general be better, there might be regressions in parts of the platform, particularly where we prioritised correctness over speed.

There are also several bugfixes that has been encountered and fixed as part of implementing these changes, particularly
after improving the test harness as part of adopting #1460.

BREAKING

  • Code reorganisation, a lot of code has moved, please review the following PRs accordingly #1473
  • Change the structure of database configuration, see config-example.yaml for the new structure. #1700
    • Old structure has been remove and the configuration must be converted.
    • Adds additional configuration for PostgreSQL for setting max open, idle conection and idle connection lifetime.
  • API: Machine is now Node #1553
  • Remove support for older Tailscale clients #1611
    • The latest supported client is 1.38
  • Headscale checks that at least one DERP is defined at start #1564
    • If no DERP is configured, the server will fail to start, this can be because it cannot load the DERPMap from file or url.
  • Embedded DERP server requires a private key #1611
  • Docker images are now built with goreleaser (ko) #1716 #1763
    • Entrypoint of container image has changed from shell to headscale, require change from headscale serve to serve
    • /var/lib/headscale and /var/run/headscale is no longer created automatically, see container docs
  • Prefixes are now defined per v4 and v6 range. #1756
    • ip_prefixes option is now prefixes.v4 and prefixes.v6
    • prefixes.allocation can be set to assign IPs at sequential or random. #1869

Changes

  • Use versioned migrations #1644
  • Make the OIDC callback page better #1484
  • SSH support #1487
  • State management has been improved #1492
  • Use error group handling to ensure tests actually pass #1535 based on #1460
  • Fix hang on SIGTERM #1492 taken from #1480
  • Send logs to stderr by default #1524
  • Fix TS-2023-006 security UPnP issue #1563
  • Turn off gRPC logging #1640 fixes #1259
  • Added the possibility to manually create a DERP-map entry which can be customized, instead of automatically creating it. #1565
  • Add support for deleting api keys #1702
  • Add command to backfill IP addresses for nodes missing IPs from configured prefixes. #1869

Commits

v0.23.0-alpha8

17 Apr 14:14
Compare
Choose a tag to compare
v0.23.0-alpha8 Pre-release
Pre-release

Changelog

This release is mainly a code reorganisation and refactoring, significantly improving the maintainability of the codebase. This should allow us to improve further and make it easier for the maintainers to keep on top of the project.

Please remember to always back up your database between versions

Here is a short summary of the broad topics of changes:

Code has been organised into modules, reducing use of global variables/objects, isolating concerns and “putting the right things in the logical place”.

The new policy and mapper package, containing the ACL/Policy logic and the logic for creating the data served to clients (the network “map”) has been rewritten and improved. This change has allowed us to finish SSH support and add additional tests throughout the code to ensure correctness.

The “poller”, or streaming logic has been rewritten and instead of keeping track of the latest updates, checking at a fixed interval, it now uses go channels, implemented in our new notifier package and it allows us to send updates to connected clients immediately. This should both improve performance and potential latency before a client picks up an update.

Headscale now supports sending “delta” updates, thanks to the new mapper and poller logic, allowing us to only inform nodes about new nodes, changed nodes and removed nodes. Previously we sent the entire state of the network every time an update was due.

While we have a pretty good test harness for validating our changes, we have rewritten over 10000 lines of code and bugs are expected. We need help testing this release. In addition, while we think the performance should in general be better, there might be regressions in parts of the platform, particularly where we prioritised correctness over speed.

There are also several bugfixes that has been encountered and fixed as part of implementing these changes, particularly
after improving the test harness as part of adopting #1460.

BREAKING

  • Code reorganisation, a lot of code has moved, please review the following PRs accordingly #1473
  • Change the structure of database configuration, see config-example.yaml for the new structure. #1700
    • Old structure has been remove and the configuration must be converted.
    • Adds additional configuration for PostgreSQL for setting max open, idle conection and idle connection lifetime.
  • API: Machine is now Node #1553
  • Remove support for older Tailscale clients #1611
    • The latest supported client is 1.38
  • Headscale checks that at least one DERP is defined at start #1564
    • If no DERP is configured, the server will fail to start, this can be because it cannot load the DERPMap from file or url.
  • Embedded DERP server requires a private key #1611
  • Docker images are now built with goreleaser (ko) #1716 #1763
    • Entrypoint of container image has changed from shell to headscale, require change from headscale serve to serve
    • /var/lib/headscale and /var/run/headscale is no longer created automatically, see container docs
  • Prefixes are now defined per v4 and v6 range. #1756
    • ip_prefixes option is now prefixes.v4 and prefixes.v6
    • prefixes.allocation can be set to assign IPs at sequential or random. #1869

Changes

  • Use versioned migrations #1644
  • Make the OIDC callback page better #1484
  • SSH support #1487
  • State management has been improved #1492
  • Use error group handling to ensure tests actually pass #1535 based on #1460
  • Fix hang on SIGTERM #1492 taken from #1480
  • Send logs to stderr by default #1524
  • Fix TS-2023-006 security UPnP issue #1563
  • Turn off gRPC logging #1640 fixes #1259
  • Added the possibility to manually create a DERP-map entry which can be customized, instead of automatically creating it. #1565
  • Add support for deleting api keys #1702
  • Add command to backfill IP addresses for nodes missing IPs from configured prefixes. #1869

Commits

v0.23.0-alpha7

17 Apr 10:47
Compare
Choose a tag to compare
v0.23.0-alpha7 Pre-release
Pre-release

Changelog

This release is mainly a code reorganisation and refactoring, significantly improving the maintainability of the codebase. This should allow us to improve further and make it easier for the maintainers to keep on top of the project.

Please remember to always back up your database between versions

Here is a short summary of the broad topics of changes:

Code has been organised into modules, reducing use of global variables/objects, isolating concerns and “putting the right things in the logical place”.

The new policy and mapper package, containing the ACL/Policy logic and the logic for creating the data served to clients (the network “map”) has been rewritten and improved. This change has allowed us to finish SSH support and add additional tests throughout the code to ensure correctness.

The “poller”, or streaming logic has been rewritten and instead of keeping track of the latest updates, checking at a fixed interval, it now uses go channels, implemented in our new notifier package and it allows us to send updates to connected clients immediately. This should both improve performance and potential latency before a client picks up an update.

Headscale now supports sending “delta” updates, thanks to the new mapper and poller logic, allowing us to only inform nodes about new nodes, changed nodes and removed nodes. Previously we sent the entire state of the network every time an update was due.

While we have a pretty good test harness for validating our changes, we have rewritten over 10000 lines of code and bugs are expected. We need help testing this release. In addition, while we think the performance should in general be better, there might be regressions in parts of the platform, particularly where we prioritised correctness over speed.

There are also several bugfixes that has been encountered and fixed as part of implementing these changes, particularly
after improving the test harness as part of adopting #1460.

BREAKING

  • Code reorganisation, a lot of code has moved, please review the following PRs accordingly #1473
  • Change the structure of database configuration, see config-example.yaml for the new structure. #1700
    • Old structure has been remove and the configuration must be converted.
    • Adds additional configuration for PostgreSQL for setting max open, idle conection and idle connection lifetime.
  • API: Machine is now Node #1553
  • Remove support for older Tailscale clients #1611
    • The latest supported client is 1.38
  • Headscale checks that at least one DERP is defined at start #1564
    • If no DERP is configured, the server will fail to start, this can be because it cannot load the DERPMap from file or url.
  • Embedded DERP server requires a private key #1611
  • Docker images are now built with goreleaser (ko) #1716 #1763
    • Entrypoint of container image has changed from shell to headscale, require change from headscale serve to serve
    • /var/lib/headscale and /var/run/headscale is no longer created automatically, see container docs
  • Prefixes are now defined per v4 and v6 range. #1756
    • ip_prefixes option is now prefixes.v4 and prefixes.v6
    • prefixes.allocation can be set to assign IPs at sequential or random. #1869

Changes

  • Use versioned migrations #1644
  • Make the OIDC callback page better #1484
  • SSH support #1487
  • State management has been improved #1492
  • Use error group handling to ensure tests actually pass #1535 based on #1460
  • Fix hang on SIGTERM #1492 taken from #1480
  • Send logs to stderr by default #1524
  • Fix TS-2023-006 security UPnP issue #1563
  • Turn off gRPC logging #1640 fixes #1259
  • Added the possibility to manually create a DERP-map entry which can be customized, instead of automatically creating it. #1565
  • Add support for deleting api keys #1702
  • Add command to backfill IP addresses for nodes missing IPs from configured prefixes. #1869

Commits

v0.23.0-alpha5

19 Feb 13:13
7a920ee
Compare
Choose a tag to compare
v0.23.0-alpha5 Pre-release
Pre-release

Changelog

This release is mainly a code reorganisation and refactoring, significantly improving the maintainability of the codebase. This should allow us to improve further and make it easier for the maintainers to keep on top of the project.

Please remember to always back up your database between versions

Here is a short summary of the broad topics of changes:

Code has been organised into modules, reducing use of global variables/objects, isolating concerns and “putting the right things in the logical place”.

The new policy and mapper package, containing the ACL/Policy logic and the logic for creating the data served to clients (the network “map”) has been rewritten and improved. This change has allowed us to finish SSH support and add additional tests throughout the code to ensure correctness.

The “poller”, or streaming logic has been rewritten and instead of keeping track of the latest updates, checking at a fixed interval, it now uses go channels, implemented in our new notifier package and it allows us to send updates to connected clients immediately. This should both improve performance and potential latency before a client picks up an update.

Headscale now supports sending “delta” updates, thanks to the new mapper and poller logic, allowing us to only inform nodes about new nodes, changed nodes and removed nodes. Previously we sent the entire state of the network every time an update was due.

While we have a pretty good test harness for validating our changes, we have rewritten over 10000 lines of code and bugs are expected. We need help testing this release. In addition, while we think the performance should in general be better, there might be regressions in parts of the platform, particularly where we prioritised correctness over speed.

There are also several bugfixes that has been encountered and fixed as part of implementing these changes, particularly
after improving the test harness as part of adopting #1460.

BREAKING

  • Code reorganisation, a lot of code has moved, please review the following PRs accordingly #1473
  • Change the structure of database configuration, see config-example.yaml for the new structure. #1700
    • Old structure has been remove and the configuration must be converted.
    • Adds additional configuration for PostgreSQL for setting max open, idle conection and idle connection lifetime.
  • API: Machine is now Node #1553
  • Remove support for older Tailscale clients #1611
    • The latest supported client is 1.38
  • Headscale checks that at least one DERP is defined at start #1564
    • If no DERP is configured, the server will fail to start, this can be because it cannot load the DERPMap from file or url.
  • Embedded DERP server requires a private key #1611
  • Docker images are now built with goreleaser (ko) #1716 #1763
    • Entrypoint of container image has changed from shell to headscale, require change from headscale serve to serve
    • /var/lib/headscale and /var/run/headscale is no longer created automatically, see container docs
  • Prefixes are now defined per v4 and v6 range. #1756
    • ip_prefixes option is now prefixes.v4 and prefixes.v6

Changes

  • Use versioned migrations #1644
  • Make the OIDC callback page better #1484
  • SSH support #1487
  • State management has been improved #1492
  • Use error group handling to ensure tests actually pass #1535 based on #1460
  • Fix hang on SIGTERM #1492 taken from #1480
  • Send logs to stderr by default #1524
  • Fix TS-2023-006 security UPnP issue #1563
  • Turn off gRPC logging #1640 fixes #1259
  • Added the possibility to manually create a DERP-map entry which can be customized, instead of automatically creating it. #1565
  • Add support for deleting api keys #1702

Commits

v0.23.0-alpha4

15 Feb 09:35
c42f25b
Compare
Choose a tag to compare
v0.23.0-alpha4 Pre-release
Pre-release

Changelog

This release is mainly a code reorganisation and refactoring, significantly improving the maintainability of the codebase. This should allow us to improve further and make it easier for the maintainers to keep on top of the project.

Please remember to always back up your database between versions

Here is a short summary of the broad topics of changes:

Code has been organised into modules, reducing use of global variables/objects, isolating concerns and “putting the right things in the logical place”.

The new policy and mapper package, containing the ACL/Policy logic and the logic for creating the data served to clients (the network “map”) has been rewritten and improved. This change has allowed us to finish SSH support and add additional tests throughout the code to ensure correctness.

The “poller”, or streaming logic has been rewritten and instead of keeping track of the latest updates, checking at a fixed interval, it now uses go channels, implemented in our new notifier package and it allows us to send updates to connected clients immediately. This should both improve performance and potential latency before a client picks up an update.

Headscale now supports sending “delta” updates, thanks to the new mapper and poller logic, allowing us to only inform nodes about new nodes, changed nodes and removed nodes. Previously we sent the entire state of the network every time an update was due.

While we have a pretty good test harness for validating our changes, we have rewritten over 10000 lines of code and bugs are expected. We need help testing this release. In addition, while we think the performance should in general be better, there might be regressions in parts of the platform, particularly where we prioritised correctness over speed.

There are also several bugfixes that has been encountered and fixed as part of implementing these changes, particularly
after improving the test harness as part of adopting #1460.

BREAKING

  • Code reorganisation, a lot of code has moved, please review the following PRs accordingly #1473
  • API: Machine is now Node #1553
  • Remove support for older Tailscale clients #1611
    • The latest supported client is 1.38
  • Headscale checks that at least one DERP is defined at start #1564
    • If no DERP is configured, the server will fail to start, this can be because it cannot load the DERPMap from file or url.
  • Embedded DERP server requires a private key #1611

Changes

  • Use versioned migrations #1644
  • Make the OIDC callback page better #1484
  • SSH support #1487
  • State management has been improved #1492
  • Use error group handling to ensure tests actually pass #1535 based on #1460
  • Fix hang on SIGTERM #1492 taken from #1480
  • Send logs to stderr by default #1524
  • Fix TS-2023-006 security UPnP issue #1563
  • Turn off gRPC logging #1640 fixes #1259
  • Added the possibility to manually create a DERP-map entry which can be customized, instead of automatically creating it. #1565
  • Change the structure of database configuration, see config-example.yaml for the new structure. #1700
    • Old structure is now considered deprecated and will be removed in the future.
    • Adds additional configuration for PostgreSQL for setting max open, idle conection and idle connection lifetime.
  • Add support for deleting api keys #1702

Commits

v0.23.0-alpha3

18 Jan 16:40
1e22f17
Compare
Choose a tag to compare
v0.23.0-alpha3 Pre-release
Pre-release

Changelog

This release is mainly a code reorganisation and refactoring, significantly improving the maintainability of the codebase. This should allow us to improve further and make it easier for the maintainers to keep on top of the project.

Please remember to always back up your database between versions

Here is a short summary of the broad topics of changes:

Code has been organised into modules, reducing use of global variables/objects, isolating concerns and “putting the right things in the logical place”.

The new policy and mapper package, containing the ACL/Policy logic and the logic for creating the data served to clients (the network “map”) has been rewritten and improved. This change has allowed us to finish SSH support and add additional tests throughout the code to ensure correctness.

The “poller”, or streaming logic has been rewritten and instead of keeping track of the latest updates, checking at a fixed interval, it now uses go channels, implemented in our new notifier package and it allows us to send updates to connected clients immediately. This should both improve performance and potential latency before a client picks up an update.

Headscale now supports sending “delta” updates, thanks to the new mapper and poller logic, allowing us to only inform nodes about new nodes, changed nodes and removed nodes. Previously we sent the entire state of the network every time an update was due.

While we have a pretty good test harness for validating our changes, we have rewritten over 10000 lines of code and bugs are expected. We need help testing this release. In addition, while we think the performance should in general be better, there might be regressions in parts of the platform, particularly where we prioritised correctness over speed.

There are also several bugfixes that has been encountered and fixed as part of implementing these changes, particularly
after improving the test harness as part of adopting #1460.

BREAKING

  • Code reorganisation, a lot of code has moved, please review the following PRs accordingly #1473
  • API: Machine is now Node #1553
  • Remove support for older Tailscale clients #1611
    • The latest supported client is 1.36
  • Headscale checks that at least one DERP is defined at start #1564
    • If no DERP is configured, the server will fail to start, this can be because it cannot load the DERPMap from file or url.
  • Embedded DERP server requires a private key #1611

Changes

Use versioned migrations #1644
Make the OIDC callback page better #1484
SSH support #1487
State management has been improved #1492
Use error group handling to ensure tests actually pass #1535 based on #1460
Fix hang on SIGTERM #1492 taken from #1480
Send logs to stderr by default #1524
Fix TS-2023-006 security UPnP issue #1563
Turn off gRPC logging #1640 fixes #1259
Added the possibility to manually create a DERP-map entry which can be customized, instead of automatically creating it. #1565

Commits

  • 7e8bf4b Add Customization Options to DERP Map entry of integrated DERP server (#1565)
  • 054b06d add 1.54 and 1.56 to integration tests (#1652)
  • 55ca078 embed (hidden) tailsql for debugging (#1663)
  • 65376e2 ensure renabled auto-approve routes works (#1670)
  • a592ae5 fix issue where advertise tags causes hang (#1669)
  • 3b10328 implement selfupdate and pass expiry (#1647)
  • 1e22f17 node selfupdate and fix subnet router when ACL is enabled (#1673)

v0.23.0-alpha2

10 Dec 14:53
6049ec7
Compare
Choose a tag to compare
v0.23.0-alpha2 Pre-release
Pre-release

Changelog

This release is mainly a code reorganisation and refactoring, significantly improving the maintainability of the codebase. This should allow us to improve further and make it easier for the maintainers to keep on top of the project.

Please remember to always back up your database between versions

Here is a short summary of the broad topics of changes:

Code has been organised into modules, reducing use of global variables/objects, isolating concerns and “putting the right things in the logical place”.

The new policy and mapper package, containing the ACL/Policy logic and the logic for creating the data served to clients (the network “map”) has been rewritten and improved. This change has allowed us to finish SSH support and add additional tests throughout the code to ensure correctness.

The “poller”, or streaming logic has been rewritten and instead of keeping track of the latest updates, checking at a fixed interval, it now uses go channels, implemented in our new notifier package and it allows us to send updates to connected clients immediately. This should both improve performance and potential latency before a client picks up an update.

Headscale now supports sending “delta” updates, thanks to the new mapper and poller logic, allowing us to only inform nodes about new nodes, changed nodes and removed nodes. Previously we sent the entire state of the network every time an update was due.

While we have a pretty good test harness for validating our changes, we have rewritten over 10000 lines of code and bugs are expected. We need help testing this release. In addition, while we think the performance should in general be better, there might be regressions in parts of the platform, particularly where we prioritised correctness over speed.

There are also several bugfixes that has been encountered and fixed as part of implementing these changes, particularly
after improving the test harness as part of adopting #1460.

BREAKING

  • Code reorganisation, a lot of code has moved, please review the following PRs accordingly #1473
  • API: Machine is now Node #1553
  • Remove support for older Tailscale clients #1611
    • The latest supported client is 1.32
  • Headscale checks that at least one DERP is defined at start #1564
    • If no DERP is configured, the server will fail to start, this can be because it cannot load the DERPMap from file or url.
  • Embedded DERP server requires a private key #1611

Changes

Use versioned migrations #1644
Make the OIDC callback page better #1484
SSH support #1487
State management has been improved #1492
Use error group handling to ensure tests actually pass #1535 based on #1460
Fix hang on SIGTERM #1492 taken from #1480
Send logs to stderr by default #1524
Fix TS-2023-006 security UPnP issue #1563
Turn off gRPC logging #1640 fixes #1259

Commits

v0.23.0-alpha1

25 Sep 22:53
01b85e5
Compare
Choose a tag to compare
v0.23.0-alpha1 Pre-release
Pre-release

Changelog

This release is mainly a code reorganisation and refactoring, significantly improving the maintainability of the codebase. This should allow us to improve further and make it easier for the maintainers to keep on top of the project.

Please remember to always back up your database between versions

Here is a short summary of the broad topics of changes:

Code has been organised into modules, reducing use of global variables/objects, isolating concerns and “putting the right things in the logical place”.

The new policy and mapper package, containing the ACL/Policy logic and the logic for creating the data served to clients (the network “map”) has been rewritten and improved. This change has allowed us to finish SSH support and add additional tests throughout the code to ensure correctness.

The “poller”, or streaming logic has been rewritten and instead of keeping track of the latest updates, checking at a fixed interval, it now uses go channels, implemented in our new notifier package and it allows us to send updates to connected clients immediately. This should both improve performance and potential latency before a client picks up an update.

Headscale now supports sending “delta” updates, thanks to the new mapper and poller logic, allowing us to only inform nodes about new nodes, changed nodes and removed nodes. Previously we sent the entire state of the network every time an update was due.

While we have a pretty good test harness for validating our changes, we have rewritten over 10000 lines of code and bugs are expected. We need help testing this release. In addition, while we think the performance should in general be better, there might be regressions in parts of the platform, particularly where we prioritised correctness over speed.

There are also several bugfixes that has been encountered and fixed as part of implementing these changes, particularly
after improving the test harness as part of adopting #1460.

BREAKING

  • Code reorganisation, a lot of code has moved, please review the following PRs accordingly #1473
  • API: Machine is now Node #1553

Changes

  • Make the OIDC callback page better #1484
  • SSH support #1487
  • State management has been improved #1492
  • Use error group handling to ensure tests actually pass #1535 based on #1460
  • Fix hang on SIGTERM #1492 taken from #1480
  • Send logs to stderr by default #1524

Commits

  • 56cf4b0 Add github stale action (#1559)
  • 084d1d5 Add initial test for mapresponse
  • 53a9e28 Add missing return in shutdown
  • 36c9b5c Adjust the template for the OIDC callback login page
  • 9c425a1 Finish SSH
  • 6567af7 Fix IP Address Order Bug
  • c72401a Fix IPv6 in ACLs
  • fb203a2 Format code
  • 1766e6b General fixups discovered by checking errors
  • b4a4d0f Handle errors in integration test setups
  • bce8427 Map route into machine
  • 3bef63b Remove LastSuccessfulUpdate from Machine
  • f9f6e15 Remove complicated testcase obsoleated by tailNode test
  • 387aa03 Remove database from Mapper
  • 725bbd7 Remove variables and leftovers of pregenerated ACL content
  • 0030af3 Rename Machine to Node (#1553)
  • 66ff1fc Replace the timestamp based state system
  • c957f89 Return simple responses immediatly
  • e3acc95 Send logs to stderr, rather than stdout
  • 64c0a65 Set online status in lite requests (#1555)
  • feb1536 Split code into modules
  • 4b65cf4 Split up MapResponse
  • 3b0749a Update packetfilter when peers change
  • 7edc953 Update tsic.go
  • 4c12c02 Upgrade go and debian in headscale docker
  • b27e8ab add 0.23.0 changelog entry (#1557)
  • b7c6e0e add annoying linter to golangci
  • 78268d7 add debug option to save all map responses
  • 665a3cc add generic logerr func to shorten code
  • f73172f add less/jq to hs debug container
  • 9ccf87c add lock around saving ts clients
  • 9c5301e add maprequest to all mapper calls
  • 84fbca9 add note about db backup to changelog (#1560)
  • 591ff8d add pprof endpoint
  • 13fe4ec add script to run integration tests
  • 47255d2 add script to run integration tests
  • e0ba325 additional debug logging, use mapper pointer
  • 14e29a7 create DB struct
  • a1a3ff4 disable online map by default for now
  • 699655a docs(README): update contributors
  • 6cd0f77 docs(README): update contributors (#1558)
  • 593b3ad filter out peers without endpoints
  • d36336a fix lint
  • 13a7285 fix lint
  • 12a04f9 fix relogin test, pass accept route flag
  • 056d3a8 format with prettier 3.0
  • ca4a48a gitignore infolder tailscale
  • 2434d76 give ci more tollerance for timeouts
  • 096ac31 handle route updates correctly
  • 217ccd6 improve debug logging, rw lock for notifier
  • f8a58aa introduce a version subset we must test against
  • f7f472a introduce mapper package
  • eff529f introduce rw lock for db, ish...
  • db6cf4a make GenerateFilterRules take machine and peers
  • 161243c make generateFilterRules take machine and peers
  • 2675ff4 make parse destination string into a func
  • 155cc07 migrate last acl tests away from database
  • 2289a2a move Config definitions into types
  • 432e975 move MapResponse peer logic into function and reuse
  • 8c4c4c8 move derp.go to derp module
  • 80ea87c move derp_server to derp server module
  • c1218ad move reminder of dns funcs to util
  • e55fe06 only send lite map responses when omitpeers
  • 88ca250 only send relevant filterrules to nodes
  • 14f8c1b order path
  • 2d87085 rearrange channel closing defers
  • a8079a2 rearrange poll, lock, notify
  • e2c08db reduce filter rules at the end, so we filter nodes correctly
  • 717abe8 remove "stripEmailDomain" argument
  • 5bad48a remove DB dependency of tailNode conversion, add test
  • 01b85e5 remove readonly case for mapresponse, dont think it is used (#1556)
  • fcdc7a6 remove redundant tests
  • e90a669 remove retries for pings in tsic
  • 19dc0ac rename acl "get" funcs to "expand" for consistency
  • 0562260 rename handler files
  • 63caf9a update flake, fix prettier lint
  • 3577027 upgrade tailscale
  • 23a3adf use cmp.Diff instead of reflect.DeepEqual
  • fe75b71 use nix caching and docker caching in CI

v0.22.3

12 May 08:26
Compare
Choose a tag to compare

Changelog

  • Added missing ca-certificates in Docker image #1463

v0.22.2

11 May 06:07
Compare
Choose a tag to compare

Changelog

  • Add environment flags to enable pprof (profiling) #1382
    • Profiles are continously generated in our integration tests.
  • Fix systemd service file location in .deb packages #1391
  • Improvements on Noise implementation #1379
  • Replace node filter logic, ensuring nodes with access can see eachother #1381
  • Disable (or delete) both exit routes at the same time #1428
  • Ditch distroless for Docker image, create default socket dir in /var/run/headscale #1450

Commits

  • 00c5146 Add IP forwarding requirement to documentation
  • 1a7ae11 Add basic testcases for Machine.canAccess
  • 56dd734 Add go profiling flag, and enable on integration tests (#1382)
  • f113cc7 Add missing GH releases page link
  • eacd687 Added DERP integration tests
  • 9478c28 Added missing file
  • 997e934 Added web ui section
  • 991ff25 Added workflow for embedded derp
  • f73354b Create default sock path in Docker
  • 02ab0df Disable and Delete route must affect both exit routes (IPv4 and IPv6)
  • 4c8f8c6 Ditch distroless for Docker image
  • b465592 Do not use host networking in embedded DERP tests
  • 549f5a1 Expand surface of hsic for better TLS support
  • bb07aec Expand tsic to offer PingViaDerp
  • df72508 Fix : Change master branch to main
  • 0f8d8fc Fix : Updating the doc path
  • a2b7608 Fix extra space
  • f60c5a1 Fix socket location in config.go
  • bab4e14 Further clarification on unsupported ranges in config example
  • 7338775 Give a warning when users have set an unsupported prefix
  • dcf2439 Improved website
  • 8077203 Improvements on Noise implementation (#1379)
  • a45777d Put systemd service file in proper location
  • 1d2b4bc Remove legacy DERP tests
  • 96f9680 Reuse Ping function for DERP ping
  • 5706f84 Revert "Revert unix_socket to default value"
  • ca54fb9 Revert unix_socket to default value
  • 57fd5cf Update CHANGELOG.md
  • 744e5a1 Update CHANGELOG.md
  • 3ea1750 Update CHANGELOG.md
  • 6c5723a Update CHANGELOG.md
  • 526e568 Update changelog
  • c7db99d Update changelog + prepare for 0.22.2
  • 9f38125 Update config.go
  • 493bcfc Update mkdocs.yml
  • 6043ec8 Update mkdocs.yml
  • 22e397e Use common path in unix_socket default setting
  • ccedf27 add a filter case with really large destination set #1372
  • 5bbbe43 clear up the acl function naming
  • 10320a5 lint and nolint tailscale borrowed func
  • 200e3b8 make generateFilterRule a pol struct func
  • 644be82 move matcher to separate file
  • d011373 optimize generateACLPeerCacheMap (#1377)
  • 1700a74 outline tests for full filter generate
  • ecd62fb remove terrible filter code
  • 6de53e2 simplify expandAlias function, move seperate logic out
  • 889d5a1 testing without that horrible filtercode
  • b23a915 trim dockerfiles, script to rebuild test images (#1403)
  • 0d24e87 update flake hash
  • 6215eb6 update flake hash (#1376)
  • ba45d7d update readme and templates to clarify scope (#1437)
  • 735b185 use IPSet in acls instead of string slice
  • 56b63c6 use netipx.IPSet for matcher