| Age | Commit message (Expand) | Author | Files | Lines |
| 2025-07-10 | all: detect JetKVM and specialize a handful of things for it | Brad Fitzpatrick | 10 | -12/+89 |
| 2025-07-10 | ipn/ipnlocal: add traffic-steering nodecap (#16529) | Simon Law | 1 | -0/+4 |
| 2025-07-10 | wgengine/magicsock: resolve epAddr collisions across peer relay conns (#16526) | Jordan Whited | 3 | -12/+94 |
| 2025-07-10 | cmd/{k8s-operator,k8s-proxy}: apply accept-routes configuration to k8s-proxy ... | David Bond | 3 | -4/+20 |
| 2025-07-10 | cmd/{k8s-operator,k8s-proxy}: allow setting login server url (#16504) | David Bond | 3 | -0/+11 |
| 2025-07-10 | cmd/k8s-operator: allow letsencrypt staging on k8s proxies (#16521) | David Bond | 2 | -8/+20 |
| 2025-07-10 | ipn/localapi: do not break client on event marshalling errors (#16503) | Claus Lensbøl | 1 | -1/+15 |
| 2025-07-09 | wgengine/magicsock: don't peer relay if NodeAttrOnlyTCP443 is set (#16517) | Jordan Whited | 1 | -0/+1 |
| 2025-07-09 | cmd/tailscale/cli,ipn/ipnstate,wgengine/magicsock: label peer-relay (#16510) | Jordan Whited | 4 | -9/+16 |
| 2025-07-09 | tailcfg, wgengine/magicsock: disable all UDP relay usage if disable-relay-cli... | Dylan Bargatze | 2 | -9/+19 |
| 2025-07-09 | ipn/ipnlocal: change order of exit node refresh and netmap update so that cli... | Nick Khyl | 2 | -3/+64 |
| 2025-07-09 | ipn/ipnlocal: add test to verify handling of unknown auto exit node expressions | Nick Khyl | 2 | -0/+25 |
| 2025-07-09 | cmd/tailscale/cli: add support for tailscale {up,set} --exit-node=auto:any | Nick Khyl | 3 | -6/+34 |
| 2025-07-09 | ipn: move ParseAutoExitNodeID from ipn/ipnlocal to ipn | Nick Khyl | 4 | -134/+84 |
| 2025-07-09 | wgengine/magicsock: support self as candidate peer relay (#16499) | Jordan Whited | 2 | -63/+102 |
| 2025-07-09 | cmd/k8s-operator: don't require generation for Available condition (#16497) | Tom Proctor | 2 | -12/+31 |
| 2025-07-09 | cmd/{k8s-operator,k8s-proxy}: add kube-apiserver ProxyGroup type (#16266) | Tom Proctor | 31 | -350/+1787 |
| 2025-07-09 | cmd/k8s-operator/deploy: clarify helm install notes (#16449) | Tom Proctor | 1 | -1/+3 |
| 2025-07-08 | cmd/tailscale: format empty cities and countries as hyphens (#16495) | Simon Law | 2 | -21/+29 |
| 2025-07-08 | wgengine/magicsock: remove conn.InitiationAwareEndpoint TODO (#16498) | Jordan Whited | 1 | -5/+0 |
| 2025-07-08 | ipn/ipnlocal,util/syspolicy: add support for ExitNode.AllowOverride policy se... | Nick Khyl | 4 | -12/+434 |
| 2025-07-08 | ipn/ipnlocal: make applySysPolicy a method on LocalBackend | Nick Khyl | 2 | -21/+37 |
| 2025-07-08 | ipn/ipnlocal: refactor resolveExitNodeInPrefsLocked, setExitNodeID and resolv... | Nick Khyl | 1 | -55/+51 |
| 2025-07-08 | cmd/tailscale/cli,ipn/ipnlocal: restrict logout when AlwaysOn mode is enabled | Nick Khyl | 5 | -11/+22 |
| 2025-07-08 | go.mod,wgengine/magicsock: implement conn.InitiationAwareEndpoint (#16486) | Jordan Whited | 3 | -6/+34 |
| 2025-07-07 | net/udprelay: fix relaying between mixed address family sockets (#16485) | Jordan Whited | 2 | -40/+83 |
| 2025-07-07 | ipn/ipnlocal: fix missing defer in testExtension.Shutdown | Nick Khyl | 1 | -1/+1 |
| 2025-07-07 | ipn/{ipnauth,ipnlocal,localapi}: make EditPrefs return an error if changing e... | Nick Khyl | 5 | -79/+191 |
| 2025-07-07 | util/syspolicy: add HasAnyOf to check if any specified policy settings are co... | Nick Khyl | 1 | -0/+21 |
| 2025-07-07 | ipn/ipnlocal: add (*LocalBackend).reconcilePrefsLocked | Nick Khyl | 2 | -39/+76 |
| 2025-07-07 | ipn/ipnlocal,util/syspolicy/source: retain existing exit node when using auto... | Nick Khyl | 3 | -7/+125 |
| 2025-07-07 | ipn/ipnlocal: plumb nodeBackend into suggestExitNode to support delta updates... | Nick Khyl | 2 | -28/+22 |
| 2025-07-07 | ipn/ipnlocal: add (*LocalBackend).RefreshExitNode | Nick Khyl | 1 | -32/+45 |
| 2025-07-07 | wgengine/netstack: correctly proxy half-closed TCP connections | Naman Sood | 1 | -3/+40 |
| 2025-07-07 | wgengine/magicsock: fix lazyEndpoint DstIP() vs SrcIP() (#16453) | Jordan Whited | 1 | -10/+24 |
| 2025-07-07 | wgengine/magicsock: simplify Geneve-encapsulated disco.Ping handling (#16448) | Jordan Whited | 4 | -84/+61 |
| 2025-07-07 | wgengine/magicsock: make Conn.Send() lazyEndpoint aware (#16465) | Jordan Whited | 1 | -6/+15 |
| 2025-07-07 | cmd/k8s-operator: Allow custom ingress class names (#16472) | David Bond | 10 | -52/+83 |
| 2025-07-06 | .github: Bump github/codeql-action from 3.29.0 to 3.29.1 (#16423) | dependabot[bot] | 1 | -3/+3 |
| 2025-07-07 | cmd/k8s-operator: always set ProxyGroup status conditions (#16429) | Tom Proctor | 6 | -172/+212 |
| 2025-07-04 | tailcfg, feature/relayserver, wgengine/magicsock: invert UDP relay server nod... | Dylan Bargatze | 4 | -19/+23 |
| 2025-07-04 | Dockerfile,build_docker.sh: add a note on how to build local images (#16471) | Irbe Krumina | 2 | -0/+19 |
| 2025-07-04 | cmd/k8s-operator: Move login server value to top-level (#16470) | David Bond | 2 | -4/+4 |
| 2025-07-03 | cmd/tailscale/cli,ipn,ipn/ipnlocal: add AutoExitNode preference for automatic... | Nick Khyl | 8 | -90/+790 |
| 2025-07-03 | ipn/ipnlocal: update suggestExitNode to skip offline candidates and fix TestS... | Nick Khyl | 2 | -11/+15 |
| 2025-07-03 | ipn/ipnlocal: skip TestUpdateNetmapDeltaAutoExitNode | Nick Khyl | 1 | -8/+12 |
| 2025-07-03 | ipn/ipnlocal: simplify pickNewAutoExitNode | Nick Khyl | 1 | -9/+2 |
| 2025-07-03 | ipn/ipnlocal: rename setAutoExitNodeIDLockedOnEntry to pickNewAutoExitNode; d... | Nick Khyl | 1 | -25/+8 |
| 2025-07-03 | cmd/k8s-operator: Set login server on tsrecorder nodes (#16443) | David Bond | 5 | -11/+24 |
| 2025-07-02 | feature/relayserver,net/udprelay: add IPv6 support (#16442) | Jordan Whited | 3 | -111/+178 |