Commit graph

  • ee7c2a0946
    Merge 3566399f05 into 048308511c Juan Font 2026-07-17 10:40:09 +02:00
  • 3566399f05 Update vouch version vouch Juan Font 2026-07-17 08:38:37 +00:00
  • 9d51a45093 Add vouched Juan Font 2026-07-17 08:37:40 +00:00
  • bb899c6aa5
    Merge 1dea4e452f into 048308511c Juan Font 2026-07-17 10:30:41 +02:00
  • 1dea4e452f Add link to AI policy ai-policy Juan Font 2026-07-17 08:30:36 +00:00
  • 88327a071f Add AI policy Juan Font 2026-07-17 08:27:16 +00:00
  • a4a37b17b4 types, dns: drop branded identifiers from comments and tests Mahmud 2026-07-17 10:21:53 +03:00
  • 033ef550f1 types: allow ldflags to override version info Mahmud 2026-07-17 10:20:22 +03:00
  • 0f3901844b types: expect default https_certs.provider in config tests Mahmud 2026-07-16 18:12:58 +03:00
  • 2f4094d318 fix: wait for public ACME TXT visibility before set-dns returns Mahmud 2026-07-16 17:27:31 +03:00
  • b0aa86efad feat: advertise CertDomains and publish ACME TXT via Azure DNS Mahmud 2026-07-16 17:00:09 +03:00
  • 9e3014e0fb
    Merge 8ef76fe866 into 048308511c fongryan 2026-07-16 03:52:29 +00:00
  • 8ef76fe866 build(nix): refresh vendor hash for runc bump Ryan Fong 2026-07-15 20:52:24 -07:00
  • 6927fe5634 build(deps): bump github.com/opencontainers/runc from 1.3.2 to 1.3.6 dependabot[bot] 2026-06-26 07:19:47 +00:00
  • fd8c1c208c
    Merge f5eafe86a4 into 048308511c Igor Serganov 2026-07-15 15:07:22 -07:00
  • f5eafe86a4 poll: do not cancel ephemeral GC until Connect succeeds Fixes #3382 The issue --------- With node.ephemeral.inactivity_timeout set (e.g. 15m), ephemeral nodes are usually deleted after they go offline, but under reconnect churn some departed nodes stay in the node list as disconnected indefinitely until they are removed manually or Headscale is restarted. The root cause -------------- Ephemeral cleanup is timer-based via EphemeralGarbageCollector, not a periodic LastSeen scan. serveLongPoll cancelled any pending GC timer at the very start of a long-poll attempt, and only rescheduled on a clean disconnect after Connect. If a reconnect cancelled the timer and then failed before Connect (for example UpdateNodeFromMapRequest error), the deferred cleanup saw connectGen == 0 and returned without Schedule. The node remained offline with no deletion timer and no reconciler to recover it. The fix ------- Move beforeServeLongPoll (GC Cancel) to after a successful Connect so a failed reconnect leaves an already-armed inactivity timer intact. Successful reconnects still cancel GC once the node is online; a later disconnect reschedules as before. Add TestFailedReconnectDoesNotCancelEphemeralGC to lock the ordering, plus IsScheduled and DeleteNodeFromStoreForTest helpers for the test. Igor Serganov 2026-07-15 15:04:17 -07:00
  • 255750a696 docs: add captain stack inheritance pointers Ryan Fong 2026-07-14 20:12:51 -07:00
  • 2be45b360c
    Merge 62279d469d into 048308511c maximilize 2026-07-13 23:31:06 +02:00
  • 62279d469d fix(policy): validate reauth tags against the authenticating user maximilize 2026-07-13 21:30:54 +00:00
  • 584f579da7
    Merge 39e7a53d7b into 048308511c Nihesh Rachakonda 2026-07-11 01:38:55 +05:30
  • 39e7a53d7b add Headtower to web interfaces Nihesh Rachakonda 2026-07-11 01:37:37 +05:30
  • 5fa3e261a1
    Merge 96c49fe02a into 048308511c Nelson Alex Jeppesen 2026-07-09 19:59:14 +00:00
  • 96c49fe02a
    types: cover split-DNS selectivity for use_with_exit_node Nelson Jeppesen 2026-07-09 12:35:44 -07:00
  • 4d85a7b2c1
    CHANGELOG: point use_with_exit_node entry at the PR Nelson Jeppesen 2026-07-09 12:29:58 -07:00
  • b2dd8e0a95
    integration: test DNS use_with_exit_node survives exit node Nelson Jeppesen 2026-07-09 12:27:45 -07:00
  • bc0d9ff6a6
    config: add dns.nameservers.use_with_exit_node Nelson Jeppesen 2026-07-09 08:58:43 -07:00
  • e23d9d92f4
    Merge ddaa04f573 into 048308511c Kristoffer Dalby 2026-07-09 15:52:47 +00:00
  • ddaa04f573 docs: add CLI redesign proposal Kristoffer Dalby 2026-07-09 15:35:46 +00:00
  • 8c501587c3
    Merge a0f1bc62a6 into 048308511c Shourya Gautam 2026-07-09 09:48:43 +00:00
  • 373f8bf989
    Merge 519a2b1d1a into 048308511c Kristoffer Dalby 2026-07-09 09:48:43 +00:00
  • 6f9e77437f
    Merge 84d2dfa41d into 048308511c maximilize 2026-07-07 19:09:20 +02:00
  • 84d2dfa41d state: clear stale expiry so tagged nodes can re-authenticate after logout max 2026-07-07 18:56:26 +02:00
  • 9ee69b9c55 docs(routes): note exit nodes are selected only via autogroup:internet max 2026-07-06 11:04:39 +02:00
  • ed7736d20f
    Merge 37abf44091 into 048308511c Kristoffer Dalby 2026-07-04 13:10:36 -04:00
  • 110cf35fe2
    Merge 733bbae0a5 into 048308511c Shourya Gautam 2026-07-04 13:10:36 -04:00
  • df78a97a1c
    Merge a6932e354c into 048308511c zlzheshi 2026-07-04 13:10:36 -04:00
  • 237fc9fc33
    Merge c64b7977c1 into 048308511c dependabot[bot] 2026-07-04 13:10:36 -04:00
  • a108f096af
    Merge 935483a52d into 048308511c Kristoffer Dalby 2026-07-04 13:10:36 -04:00
  • a77b333a21
    Merge 04e8fcda79 into 048308511c Kristoffer Dalby 2026-07-04 13:10:36 -04:00
  • 783f2c7411
    Merge e63dcfd207 into 048308511c Saleh 2026-07-04 13:29:45 +00:00
  • e63dcfd207
    fix: lowercase DNS extra record names Saleh 2026-07-04 16:02:56 +03:00
  • fd276311c6
    Merge 2e54969a51 into 048308511c Jacob 2026-07-03 21:07:49 +01:00
  • a9c604b1f3
    Merge e3e1f455ab into 048308511c maximilize 2026-07-03 21:07:32 +01:00
  • bbb324f92f
    Merge 85c2ec0ec9 into 048308511c Jörg Thalheim 2026-07-03 21:07:13 +01:00
  • 75532893d1
    Merge 6b01a81440 into 048308511c Matan Baruch 2026-07-03 11:14:57 -03:00
  • cbb7bb68b1
    Merge 4e8d1e64f3 into 048308511c maxpetrusenkoagent 2026-07-03 08:00:41 -04:00
  • 5636689e5f
    Merge 8c5b637278 into 048308511c maxpetrusenkoagent 2026-07-03 08:00:41 -04:00
  • 048308511c chore: fix function comment to match actual function name main alaningtrump 2026-07-03 11:00:06 +08:00
  • 28dd7831d3 chore: fix function comment to match actual function name alaningtrump 2026-07-03 11:00:06 +08:00
  • 6029b16a42 nix: batch integration checks so the VM matrix fits a shared builder Kristoffer Dalby 2026-07-01 17:54:10 +00:00
  • 2af4566b41 nix: restore 8 GB integration VMs; concurrency is a builder cap Kristoffer Dalby 2026-07-01 16:11:38 +00:00
  • 556f5e356b nix: shrink integration VMs to fit the builder's job concurrency Kristoffer Dalby 2026-07-01 15:07:42 +00:00
  • 0a2fbc13d5 Deployed 8eea8948 to 0.29.2 with ProperDocs 1.6.7 and mike 2.2.0 gh-pages github-actions 2026-07-01 14:51:06 +00:00
  • 8eea89488c CHANGELOG: drop unreleased 0.30.0 stub v0.29.2 kradalby/release-v0.29.2 Kristoffer Dalby 2026-07-01 14:41:40 +00:00
  • f885d87827 Fix invalid ip syntax Florian Preinstorfer 2026-06-24 08:00:57 +02:00
  • 3ac33cf1d5 CHANGELOG: shorten 0.29.2 invalid-name entry, set date Kristoffer Dalby 2026-07-01 13:35:10 +00:00
  • f708c5b010 CHANGELOG: note /ts2021 WebSocket GET fix Kristoffer Dalby 2026-07-01 08:40:47 +00:00
  • 8f4e69d2a6 integration: add TS2021 WebSocket tests to CI matrix Kristoffer Dalby 2026-07-01 08:39:21 +00:00
  • e7851ef881 integration: test /ts2021 WebSocket GET with a real WASM client Kristoffer Dalby 2026-07-01 08:39:12 +00:00
  • 1ec7b7fb72 hscontrol: register /ts2021 for WebSocket GET Kristoffer Dalby 2026-07-01 08:38:57 +00:00
  • 735742e3ee CHANGELOG: note 0.29.2 invalid-name map fix Kristoffer Dalby 2026-06-26 14:20:26 +00:00
  • fd154fdb66 state: log nodes with map-breaking data at startup Kristoffer Dalby 2026-06-26 14:19:55 +00:00
  • 9c9206a92b state: reject renames whose FQDN exceeds the hostname limit Kristoffer Dalby 2026-06-26 14:19:42 +00:00
  • 5fb76eb231 poll: return an HTTP error on long-poll setup failure Kristoffer Dalby 2026-06-26 14:19:33 +00:00
  • ec67197368 mapper: skip peers with invalid names instead of failing the map Kristoffer Dalby 2026-06-26 14:19:19 +00:00
  • 9d1327458f mapper,policy: add reconnect-storm and lock-concurrency regression tests Kristoffer Dalby 2026-07-01 09:40:28 +00:00
  • d4f2acf3ab policy: take RLock for reads so map generation runs concurrently Kristoffer Dalby 2026-07-01 09:40:21 +00:00
  • a84945f134 CHANGELOG: shorten 0.29.2 invalid-name entry, set date Kristoffer Dalby 2026-07-01 13:35:10 +00:00
  • 566a978aef integration: refresh the nix test matrix for the rebased main Kristoffer Dalby 2026-07-01 12:15:31 +00:00
  • 88bc7788c6 CHANGELOG: shorten 0.29.2 invalid-name entry, set date Kristoffer Dalby 2026-07-01 13:35:10 +00:00
  • fef80f3eb0 CHANGELOG: note /ts2021 WebSocket GET fix Kristoffer Dalby 2026-07-01 08:40:47 +00:00
  • 01ef350d5f integration: add TS2021 WebSocket tests to CI matrix Kristoffer Dalby 2026-07-01 08:39:21 +00:00
  • f4fba32dc6 integration: test /ts2021 WebSocket GET with a real WASM client Kristoffer Dalby 2026-07-01 08:39:12 +00:00
  • fc6f216b61 hscontrol: register /ts2021 for WebSocket GET Kristoffer Dalby 2026-07-01 08:38:57 +00:00
  • de9db9c811 CHANGELOG: note 0.29.2 invalid-name map fix Kristoffer Dalby 2026-06-26 14:20:26 +00:00
  • 4946d1c88d state: log nodes with map-breaking data at startup Kristoffer Dalby 2026-06-26 14:19:55 +00:00
  • c497612c99 state: reject renames whose FQDN exceeds the hostname limit Kristoffer Dalby 2026-06-26 14:19:42 +00:00
  • 4e4512c4b7 poll: return an HTTP error on long-poll setup failure Kristoffer Dalby 2026-06-26 14:19:33 +00:00
  • 08956d51a4 mapper: skip peers with invalid names instead of failing the map Kristoffer Dalby 2026-06-26 14:19:19 +00:00
  • 50d9abca29 CHANGELOG: note 0.29.2 invalid-name map fix Kristoffer Dalby 2026-06-26 14:20:26 +00:00
  • 814b33d938 state: log nodes with map-breaking data at startup Kristoffer Dalby 2026-06-26 14:19:55 +00:00
  • 708b44afa7 state: reject renames whose FQDN exceeds the hostname limit Kristoffer Dalby 2026-06-26 14:19:42 +00:00
  • 3455f8ae49 poll: return an HTTP error on long-poll setup failure Kristoffer Dalby 2026-06-26 14:19:33 +00:00
  • 62b7f90544 mapper: skip peers with invalid names instead of failing the map Kristoffer Dalby 2026-06-26 14:19:19 +00:00
  • 09bf0dd112 CHANGELOG: note /ts2021 WebSocket GET fix Kristoffer Dalby 2026-07-01 08:40:47 +00:00
  • 49740dabd7 integration: add TS2021 WebSocket tests to CI matrix Kristoffer Dalby 2026-07-01 08:39:21 +00:00
  • 985220b6ea integration: test /ts2021 WebSocket GET with a real WASM client Kristoffer Dalby 2026-07-01 08:39:12 +00:00
  • 9148c65d92 hscontrol: register /ts2021 for WebSocket GET Kristoffer Dalby 2026-07-01 08:38:57 +00:00
  • d528686f14 mapper,policy: add reconnect-storm and lock-concurrency regression tests Kristoffer Dalby 2026-07-01 09:40:28 +00:00
  • 6f317c7576 policy: take RLock for reads so map generation runs concurrently Kristoffer Dalby 2026-07-01 09:40:21 +00:00
  • 29bcd4e5c2
    Merge a4a3633670 into 518b497be9 Kristoffer Dalby 2026-07-01 12:15:37 +00:00
  • a4a3633670 integration: refresh the nix test matrix for the rebased main Kristoffer Dalby 2026-07-01 12:15:31 +00:00
  • 359127a800 ci: remove the CI jobs garnix now runs as flake checks Kristoffer Dalby 2026-07-01 12:09:11 +00:00
  • 4e5e538903 ci: replace the integration workflow with the flake checks and a legacy pipeline Kristoffer Dalby 2026-06-25 08:07:29 +00:00
  • 70b0c9208b nix: run each integration test as a NixOS-VM flake check Kristoffer Dalby 2026-06-25 08:07:22 +00:00
  • bdb9cc510c integration: support prebuilt images and the slow nix VM in the suite Kristoffer Dalby 2026-06-25 08:06:37 +00:00
  • a5152db397 nix: build the headscale and tailscale-HEAD test images Kristoffer Dalby 2026-06-25 08:06:34 +00:00
  • df6bb833dd ci: pin the integration tailscale versions, generated from capver Kristoffer Dalby 2026-06-25 08:05:46 +00:00
  • 8c08de537a mapper,policy: add reconnect-storm and lock-concurrency regression tests Kristoffer Dalby 2026-07-01 09:40:28 +00:00
  • 0b822cb821 policy: take RLock for reads so map generation runs concurrently Kristoffer Dalby 2026-07-01 09:40:21 +00:00