| Age | Commit message (Expand) | Author | Files | Lines |
| 2026-03-27 | tstest/{integration,natlab}: add test for async caching casecmol/natlab_tsmp_test | Claus Lensbøl | 3 | -7/+75 |
| 2026-03-27 | control/controlclient,ipn/ipnlocal,wgengine: avoid restarting wireguard when ... | Claus Lensbøl | 8 | -23/+308 |
| 2026-03-25 | net/dns: fix duplicate search line entries (OpenBSD, primarily) | Greg Steuck | 1 | -1/+8 |
| 2026-03-25 | tsnet: clean up state when Service listener is closed | Harry Harpham | 2 | -89/+420 |
| 2026-03-25 | tsnet: block rather than poll in setup for TestListenService | Harry Harpham | 1 | -20/+11 |
| 2026-03-25 | tsnet: use tstest.Shard in new tsnet tests | Harry Harpham | 1 | -0/+4 |
| 2026-03-25 | ipn/ipnlocal: debounce extra enqueues in ExtensionHost.AuthReconfigAsync | Michael Ben-Ami | 1 | -0/+11 |
| 2026-03-24 | ipn/ipnserver: use peercreds for actor.Username on freebsd (for Taildrive) | rtgnx | 1 | -1/+1 |
| 2026-03-24 | control/controlclient: handle errors in rememberLastNetmapUpdator (#19112) | Claus Lensbøl | 2 | -5/+11 |
| 2026-03-24 | types/key: use AvailableBuffer for WriteRawWithoutAllocating (#19102) | Mike O'Driscoll | 2 | -21/+80 |
| 2026-03-24 | derp: use AvailableBuffer for WriteFrameHeader, consolidate tests (#19101) | Mike O'Driscoll | 3 | -33/+119 |
| 2026-03-24 | ipn,ipn/local: broadcast ClientVersion if AutoUpdate.Check (#19107) | kari-ts | 3 | -3/+111 |
| 2026-03-24 | ipn: fix the typo causing NoSNAT always set to true (#19110) | KevinLiang10 | 1 | -1/+1 |
| 2026-03-24 | licenses: update license notices | License Updater | 4 | -12/+12 |
| 2026-03-24 | control/controlclient: allow multiple non-streaming map requests (#19106) | Claus Lensbøl | 1 | -8/+12 |
| 2026-03-24 | disco: remove experimental label from BindUDPRelayHandshakeState | Jordan Whited | 1 | -2/+1 |
| 2026-03-24 | net/udprelay: remove experimental label from package docs | Jordan Whited | 1 | -3/+3 |
| 2026-03-24 | feature/conn25: call AuthReconfigAsync after address assignment | Fran Bull | 2 | -7/+29 |
| 2026-03-24 | feature/*,net/tstun: add tundev_txq_drops clientmetric on Linux | Jordan Whited | 8 | -0/+604 |
| 2026-03-24 | feature/conn25: guard extension Init() and PeerAPI handler with opt-in env var | Michael Ben-Ami | 1 | -0/+12 |
| 2026-03-24 | cmd/tailscale/cli: add a debug command to print the statedir | Alex Chan | 2 | -0/+32 |
| 2026-03-24 | derp,types,util: use bufio Peek+Discard for allocation-free fast reads (#19067) | Mike O'Driscoll | 17 | -47/+231 |
| 2026-03-24 | all: use `bart.Lite` instead of `bart.Table` where appropriate | Alex Chan | 4 | -26/+16 |
| 2026-03-23 | tsnet: print state change in auth loop more responsively (#18048) | Tom Proctor | 1 | -0/+17 |
| 2026-03-23 | net/dns/resolver: treat DNS REFUSED responses as soft errors in forwarder rac... | Brendan Creane | 4 | -52/+198 |
| 2026-03-23 | ipn/ipnlocal: add a map for node public key to node ID lookups (#19051) | Amal Bansode | 2 | -43/+177 |
| 2026-03-23 | .github/workflows: limit vet to the tailscale.com module (#19084) | Tom Proctor | 1 | -1/+5 |
| 2026-03-23 | .github: Bump github/codeql-action from 4.32.6 to 4.34.1 | dependabot[bot] | 1 | -3/+3 |
| 2026-03-23 | feature/conn25: add packet filter allow functions | Fran Bull | 2 | -1/+117 |
| 2026-03-23 | cmd/tailscale/cli: fix a typo in the `whois` help text | Alex Chan | 1 | -1/+1 |
| 2026-03-23 | safesocket, ipn/ipnserver: use PeerCreds on solaris and illumos | Nahum Shalman | 2 | -2/+2 |
| 2026-03-23 | util/osdiag: fix typo in comment (reciever -> receiver) | Charlie Tonneslan | 1 | -1/+1 |
| 2026-03-23 | docs/windows/policy: add CheckUpdates key to tailscale.admx (#19044) | jpelchat | 2 | -0/+20 |
| 2026-03-23 | .github: Bump actions/cache from 5.0.3 to 5.0.4 | dependabot[bot] | 1 | -29/+29 |
| 2026-03-23 | cmd/tailscale: print a helpful error for Taildrive CLI on macOS GUI | Alex Chan | 2 | -0/+99 |
| 2026-03-20 | tsnet: fall back to 'tsnet' when os.Executable fails on darwin | Prakash Rudraraju | 1 | -3/+8 |
| 2026-03-20 | ipn/{ipnext,ipnlocal}: expose authReconfig in ipnext.Host as AuthReconfigAsync | Michael Ben-Ami | 4 | -3/+48 |
| 2026-03-20 | feature/conn25: guard against an index out of bounds panic (#19066) | Andrew Lytvynov | 1 | -0/+3 |
| 2026-03-20 | tka: use constant-time comparison of disablement secret (#19064) | Andrew Lytvynov | 1 | -1/+2 |
| 2026-03-20 | ipn: reject advertised routes with non-address bits set (#18649) | Brendan Creane | 4 | -0/+198 |
| 2026-03-20 | feature/conn25: implement IPMapper | Fran Bull | 1 | -15/+15 |
| 2026-03-20 | feature/conn25: implement IPMapper | Fran Bull | 2 | -32/+188 |
| 2026-03-20 | wgengine/magicsock,control/controlclient: do not overwrite discokey with old ... | Claus Lensbøl | 15 | -45/+345 |
| 2026-03-19 | ipn/ipnlocal: populate Groups field in profileFromView | Gesa Stupperich | 2 | -8/+14 |
| 2026-03-19 | feature/featuretags: skip TestAllOmitBuildTagsDeclared when not in a git repo | Brad Fitzpatrick | 1 | -9/+6 |
| 2026-03-19 | net/dns: use the correct separator for multiple servers in the same NRPT rule... | Nick Khyl | 1 | -1/+1 |
| 2026-03-18 | net/tstun: do not write when Wrapper is closed (#19038) | Claus Lensbøl | 1 | -3/+7 |
| 2026-03-18 | control,health,ipn: move IP forwarding check to health tracker (#19007) | Mike O'Driscoll | 10 | -79/+226 |
| 2026-03-18 | derp/derpserver: fix locking in a few expvar.Func metrics (#19031) | Brad Fitzpatrick | 1 | -3/+3 |
| 2026-03-18 | net/batching: eliminate gso helper func indirection | Jordan Whited | 2 | -45/+34 |