| Age | Commit message (Expand) | Author | Files | Lines |
| 2026-01-23 | all: remove AUTHORS file and references to it | Will Norris | 1 | -1/+1 |
| 2026-01-05 | ipn/ipnlocal: don't fail profile unmarshal due to attestation keys (#18335) | Andrew Lytvynov | 1 | -0/+38 |
| 2025-11-17 | ipn{,/local},cmd/tailscale: add "sync" flag and pref to disable control map poll | Brad Fitzpatrick | 1 | -2/+4 |
| 2025-10-31 | Revert "control/controlclient: back out HW key attestation (#17664)" (#17732) | Andrew Lytvynov | 1 | -0/+1 |
| 2025-10-27 | control/controlclient: back out HW key attestation (#17664) | Patrick O'Doherty | 1 | -1/+0 |
| 2025-10-10 | types/persist: add AttestationKey (#17281) | Patrick O'Doherty | 1 | -0/+1 |
| 2025-09-29 | feature/clientupdate: move clientupdate to a modular feature, disabled for tsnet | Brad Fitzpatrick | 1 | -2/+3 |
| 2025-09-16 | health,ipn/ipnlocal: introduce eventbus in heath.Tracker (#17085) | Claus Lensbøl | 1 | -12/+13 |
| 2025-04-25 | feature,ipn/ipnlocal: add profileManager.StateChangeHook | Nick Khyl | 1 | -0/+533 |
| 2025-04-10 | ipn, ipn/ipnlocal: reduce coupling between LocalBackend/profileManager and th... | Nick Khyl | 1 | -6/+6 |
| 2025-02-10 | ipn/ipnlocal: fix (*profileManager).DefaultUserProfileID for users other than... | Nick Khyl | 1 | -2/+2 |
| 2025-01-30 | ipn: generate LoginProfileView and use it instead of *LoginProfile where appr... | Nick Khyl | 1 | -22/+22 |
| 2024-08-28 | ipn/ipnlocal: refactor and cleanup profileManager | Nick Khyl | 1 | -6/+2 |
| 2024-05-20 | various: disable stateful filtering by default (#12197) | Andrew Lytvynov | 1 | -86/+0 |
| 2024-05-07 | ipn/ipnlocal: set default NoStatefulFiltering in ipn.NewPrefs (#12031) | Andrew Lytvynov | 1 | -1/+14 |
| 2024-05-06 | various: implement stateful firewalling on Linux (#12025) | Andrew Lytvynov | 1 | -0/+86 |
| 2024-05-03 | ipn/ipnlocal: plumb health.Tracker into profileManager constructor | Andrew Dunham | 1 | -11/+12 |
| 2024-04-22 | ipn/ipnlocal: reset auto-updates if unsupported on profile load (#11838) | Andrew Lytvynov | 1 | -0/+23 |
| 2023-11-17 | ipn/ipnlocal,cmd/tailscale: persist tailnet name in user profile | Marwan Sulaiman | 1 | -5/+5 |
| 2023-09-18 | ipn/ipnlocal: add tailnet MagicDNS name to ipn.LoginProfile | Sonia Appasamy | 1 | -5/+5 |
| 2023-08-28 | types/logger: add AsJSON | Brad Fitzpatrick | 1 | -5/+0 |
| 2023-08-08 | ipn/ipnlocal: fix profile duplication | Maisem Ali | 1 | -12/+3 |
| 2023-08-08 | ipn/ipnlocal: add test to find issues with profile duplication | Maisem Ali | 1 | -10/+187 |
| 2023-08-08 | types/persist: drop duplicated Persist.LoginName | Maisem Ali | 1 | -4/+0 |
| 2023-04-26 | ipn/ipnlocal: reenable profile tests on Windows | James Tucker | 1 | -20/+12 |
| 2023-04-14 | .github/workflows: reenable Windows CI, disable broken tests | James Tucker | 1 | -0/+15 |
| 2023-02-06 | ipn/ipnlocal: use presence of NodeID to identify logins | Maisem Ali | 1 | -0/+2 |
| 2023-01-30 | ipn/ipnlocal: drop not required StateKey parameter | Maisem Ali | 1 | -9/+9 |
| 2023-01-27 | all: update copyright and license headers | Will Norris | 1 | -3/+2 |
| 2023-01-04 | ipn/profiles: set default prefs based on Windows registry (#6803) | Kristoffer Dalby | 1 | -8/+8 |
| 2022-11-30 | ipn/ipnlocal: account for ControlURL when merging profiles | Maisem Ali | 1 | -2/+9 |
| 2022-11-25 | ipn/ipnlocal,ipnserver: rename {,Set}CurrentUser to {,Set}CurrentUserID | Maisem Ali | 1 | -12/+12 |
| 2022-11-23 | ipn/ipnlocal: handle case when selected profile is deleted | Maisem Ali | 1 | -0/+56 |
| 2022-11-22 | ipn/ipnlocal: account for currentUserID when iterating over knownProfiles | Maisem Ali | 1 | -0/+70 |
| 2022-11-18 | ipn/ipnlocal: handle untagging nodes better | Maisem Ali | 1 | -6/+27 |
| 2022-11-17 | ipn/ipnlocal: prevent duplicate profiles of the same user | Maisem Ali | 1 | -3/+39 |
| 2022-11-11 | ipn/ipnlocal: add support for multiple user profiles | Maisem Ali | 1 | -0/+221 |