| Age | Commit message (Expand) | Author | Files | Lines |
| 2025-07-29 | WIP: arena-based packet buffer abstractionpush-tyyxlsmpmlvz | David Anderson | 3 | -0/+659 |
| 2025-07-29 | cmd/tailscale/cli: update message for disable service (#16705) | KevinLiang10 | 1 | -1/+1 |
| 2025-07-29 | ipn,net,tsnet,wgengine: make an eventbus mandatory where it is used (#16594) | M. J. Fromberger | 11 | -123/+133 |
| 2025-07-28 | build(deps): bump @babel/runtime from 7.23.4 to 7.26.10 in /client/web (#15299) | dependabot[bot] | 1 | -10/+3 |
| 2025-07-28 | util/syspolicy/setting: use a custom marshaler for time.Duration | Nick Khyl | 2 | -1/+32 |
| 2025-07-28 | wgengine/magicsock: fix magicsock deadlock around Conn.NoteRecvActivity (#16687) | Jordan Whited | 2 | -2/+6 |
| 2025-07-28 | net/portmapper: avert a panic when a mapping is not available (#16686) | M. J. Fromberger | 1 | -0/+7 |
| 2025-07-28 | build(deps): bump form-data from 4.0.0 to 4.0.4 in /client/web (#16623) | dependabot[bot] | 1 | -3/+102 |
| 2025-07-28 | .github: Bump github/codeql-action from 3.29.2 to 3.29.3 (#16615) | dependabot[bot] | 1 | -3/+3 |
| 2025-07-28 | k8s-operator: fix test flake (#16680) | Tom Proctor | 1 | -13/+23 |
| 2025-07-28 | k8s-operator: handle multiple WebSocket frames per read (#16678) | Tom Proctor | 5 | -52/+84 |
| 2025-07-28 | health: add an ETag to UnhealthyState for change detection | James Sanderson | 4 | -7/+215 |
| 2025-07-28 | k8s-operator: adding session type to cast header (#16660) | Tom Meadows | 1 | -3/+4 |
| 2025-07-25 | cmd/k8s-operator: Enhance DNS record handling for ProxyGroup egress services ... | Raj Singh | 2 | -98/+310 |
| 2025-07-25 | cmd/tailscaled: update installSystemDaemonWindows to set the correct system s... | Aaron Klotz | 1 | -0/+10 |
| 2025-07-25 | cmd/tailscale: allow SSH to IPs or DNS names without MagicDNS (#16591) | Danni Popova | 1 | -2/+61 |
| 2025-07-24 | VERSION.txt: this is v1.87.0v1.87.0-pre | Aaron Klotz | 1 | -1/+1 |
| 2025-07-23 | cmd/tailscale/cli: use DNS name instead of Location to hide Mullvad exit node... | Nick Khyl | 1 | -3/+4 |
| 2025-07-23 | wgengine/magicsock: update discoInfo docs (#16638) | Jordan Whited | 1 | -4/+10 |
| 2025-07-23 | ipn/ipnlocal: send Hostinfo after resolveExitNode for "auto:any" (#16632) | Simon Law | 2 | -43/+66 |
| 2025-07-23 | flake.lock/go.mod.sri: update flake version info (#16631) | Mike O'Driscoll | 5 | -7/+8 |
| 2025-07-22 | cmd/tailscale/cli: add advertise command to advertise a node as service proxy... | KevinLiang10 | 2 | -11/+36 |
| 2025-07-22 | tailcfg: add Hostinfo.ExitNodeID to report the selected exit node (#16625) | Simon Law | 6 | -16/+83 |
| 2025-07-22 | cmd/tailscale/cli: revert key for web config for services to FQDN (#16627) | KevinLiang10 | 7 | -45/+51 |
| 2025-07-22 | util/set: add IntSet (#16602) | Joe Tsai | 2 | -0/+346 |
| 2025-07-22 | cmd/{k8s-proxy,containerboot,k8s-operator},kube: add health check and metrics... | David Bond | 8 | -82/+196 |
| 2025-07-22 | cmd/{k8s-operator,k8s-proxy},kube: use consistent type for auth mode config (... | Tom Proctor | 10 | -47/+98 |
| 2025-07-22 | cmd/tailscale/cli: make configure kubeconfig accept Tailscale Services (#16601) | Tom Proctor | 2 | -13/+194 |
| 2025-07-21 | feature/relayserver: fix consumeEventbusTopics deadlock (#16618) | Jordan Whited | 2 | -119/+136 |
| 2025-07-21 | cmd/k8s-operator: Allow specifying cluster ips for nameservers (#16477) | David Bond | 7 | -73/+177 |
| 2025-07-21 | feature/tpm: log errors on the initial info fetch (#16574) | Andrew Lytvynov | 1 | -0/+4 |
| 2025-07-21 | wgengine/magicsock,all: allocate peer relay over disco instead of PeerAPI (#1... | Jordan Whited | 16 | -638/+1185 |
| 2025-07-21 | net/dns/recursive: set EDNS on queries | Brad Fitzpatrick | 1 | -0/+1 |
| 2025-07-21 | tstest/integration/testcontrol: include peer CapMaps in MapResponses | Raj Singh | 2 | -0/+151 |
| 2025-07-21 | all-kube: create Tailscale Service for HA kube-apiserver ProxyGroup (#16572) | Tom Proctor | 39 | -397/+2551 |
| 2025-07-18 | cmd/tailscale/cli: remove advertise command (#16592) | KevinLiang10 | 3 | -78/+1 |
| 2025-07-18 | cmd/tailscale/cli: Add clear subcommand for serve services (#16509) | KevinLiang10 | 1 | -1/+35 |
| 2025-07-18 | feature/tpm: try opening /dev/tpmrm0 before /tmp/tpm0 on Linux (#16600) | Andrew Lytvynov | 1 | -0/+4 |
| 2025-07-18 | client/systray: look for ubuntu gnome | Claus Lensbøl | 1 | -1/+1 |
| 2025-07-18 | Kevin/add drain sub command for serve services (#16502) | KevinLiang10 | 2 | -0/+96 |
| 2025-07-18 | client/local,cmd/tailscale/cli,ipn/localapi: expose eventbus graph (#16597) | Claus Lensbøl | 4 | -0/+125 |
| 2025-07-17 | types/geo: add geo.Point and its associated units (#16583) | Simon Law | 7 | -0/+1648 |
| 2025-07-16 | cmd/tailscale/cli: Add service flag to serve command (#16191) | KevinLiang10 | 9 | -144/+1573 |
| 2025-07-16 | wgengine/magicsock: add peer relay metrics (#16582) | Jordan Whited | 2 | -64/+151 |
| 2025-07-16 | ipn/ipnlocal: use rendezvous hashing to traffic-steer exit nodes | Simon Law | 2 | -71/+33 |
| 2025-07-16 | ipn/ipnlocal: sort tailscale debug peer-relay-servers slice (#16579) | Jordan Whited | 1 | -1/+4 |
| 2025-07-16 | go.mod: bump wireguard-go (#16578) | Jordan Whited | 2 | -3/+3 |
| 2025-07-16 | cmd/tailscale/cli,ipn/ipnlocal,wgengine/magicsock: implement tailscale debug ... | Jordan Whited | 6 | -0/+71 |
| 2025-07-16 | ssh/tailssh: fix path of "true" on Darwin (#16569) | M. J. Fromberger | 2 | -13/+16 |
| 2025-07-15 | net/udprelay: log socket read errors (#16573) | Jordan Whited | 1 | -0/+1 |