| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2025-11-03 | Add `mullvad debug rollout` command | Markus Pettersson | 1 | -1/+45 | |
| Define `get`, `reroll` and `seed` for quickly inspecting and debugging new app releases. | |||||
| 2025-10-23 | Change `mullvad reconnect` warns the user when issued in unsecured state | Markus Pettersson | 1 | -4/+6 | |
| Exit with non-zero exit code as well to make the command a bit more script-friendly. | |||||
| 2025-09-30 | Rename block_when_disconnected to lockdown_mode in mullvad crates | Tobias Järvelöv | 1 | -2/+2 | |
| 2025-09-25 | Add reset-settings command to CLI | David Lönnhager | 1 | -2/+17 | |
| 2025-09-08 | Fix lint `clippy::implicit_clone` | Markus Pettersson | 1 | -2/+2 | |
| 2025-07-15 | Run `crago +nightly clippy --fix` | Markus Pettersson | 1 | -22/+22 | |
| 2025-07-10 | Run `cargo fmt` | Sebastian Holmin | 12 | -32/+37 | |
| 2025-07-09 | Inline format arguments | Linus Färnstrand | 2 | -2/+2 | |
| 2025-07-08 | Inline variables in format string | Linus Färnstrand | 3 | -4/+4 | |
| A new clippy lint warns about this. A simple cargo clippy --fix solved it | |||||
| 2025-06-24 | Enable support for creating a custom list with locations | Jonatan Rhodin | 3 | -4/+4 | |
| 2025-06-09 | Add `AllowedIps` setting to CLI | Sebastian Holmin | 2 | -7/+41 | |
| 2025-05-28 | Implement new version check and app downloader | David Lönnhager | 1 | -17/+5 | |
| This also fixes 'latest_beta' being required in the API Co-authored-by: Sebastian Holmin <sebastian.holmin@mullvad.net> Co-authored-by: Markus Pettersson <markus.pettersson@mullvad.net> | |||||
| 2025-04-04 | Implement new debug commands: `relay disable` and `relay enable` | Markus Pettersson | 1 | -0/+25 | |
| Add two new `mullvad debug` subcommands: - mullvad debug relay enable <country|city|hostname|openvpn|wireguard> - mullvad debug relay disable <country|city|hostname|openvpn|wireguard> These commands are used to update the state of relays the current relay list. This is useful to mock relays going offline or coming online from an offline state. These new debug commands were conceived during the development of the feature for adding warnings for the upcoming OpenVPN deprecation, as there wasn't a convenient way of mocking this. | |||||
| 2025-03-18 | Replace to_owned with clone where that's implicitly what was going on | Linus Färnstrand | 1 | -2/+2 | |
| 2025-03-05 | Remove automatic tunnel type | David Lönnhager | 1 | -20/+11 | |
| Co-authored-by: Markus Pettersson <markus.pettersson@mullvad.net> | |||||
| 2025-02-12 | Format workspace | Sebastian Holmin | 1 | -22/+25 | |
| The 2024 edition contains new formatting rules. All of these are not compatible with the 2021 formatting style, but most of them are. To change the formatting to be as close to the new style as possible while remaining compatible with the 2021 edition, I first ran `cargo +beta fmt` with the edition set to 2024, then, with the edition set to 2021, I ran `cargo fmt`. | |||||
| 2025-02-12 | Run `cargo +beta fix --edition` | Sebastian Holmin | 1 | -4/+4 | |
| 2025-01-22 | Implement FromStr on GeographicLocationConstraint | Markus Pettersson | 1 | -1/+0 | |
| 2024-11-28 | Fix clippy warnings | Markus Pettersson | 1 | -1/+0 | |
| 2024-10-07 | Rename "smart routing" to "direct only" in the API | Sebastian Holmin | 1 | -9/+9 | |
| Also invert the behavior | |||||
| 2024-10-01 | Rename account "token" to account "number" | Joakim Hulthe | 1 | -17/+17 | |
| 2024-09-17 | Align Smart routing GUI with design spec | Joakim Hulthe | 1 | -8/+9 | |
| 2024-09-17 | Remove daita cfg from mullvad-cli | Joakim Hulthe | 2 | -12/+2 | |
| 2024-09-17 | Add daita.enabled and daita.use_anywhere rpc calls | Joakim Hulthe | 1 | -8/+17 | |
| 2024-09-17 | Remove Option from Relay::location | Joakim Hulthe | 1 | -14/+9 | |
| 2024-09-17 | Add `use_anywhere` daita setting | Joakim Hulthe | 1 | -2/+5 | |
| 2024-09-16 | Refactor `mullvad status listen` command | Sebastian Holmin | 2 | -40/+10 | |
| 2024-09-02 | Run `cargo +nightly clippy --fix` | Markus Pettersson | 1 | -6/+3 | |
| 2024-08-26 | Add CLI for Shadowsocks obfuscation | David Lönnhager | 1 | -4/+20 | |
| 2024-08-16 | Use range types for all port ranges | David Lönnhager | 1 | -1/+1 | |
| Breaks backwards compatibility with relays.json (which is acceptable) | |||||
| 2024-08-07 | Add --json flag to `mullvad status` | Joakim Hulthe | 1 | -20/+36 | |
| 2024-08-01 | Implement feature indicators in daemon | Joakim Hulthe | 1 | -3/+9 | |
| - Add a GetFeatureIndicators gRPC call that get's the current set of active "features" that should be shown in the UI. - Extend the TunnelState with a FeatureIndicators value. Clients who listens for TunnelState events will get updates automatically. | |||||
| 2024-07-18 | Fix burst daemon events being missed | Sebastian Holmin | 1 | -1/+2 | |
| The daemon event stream was reset between every item, which caused events that arrive while the previous item is being handled to be missed. | |||||
| 2024-07-04 | Trim custom list name and limit len to 30 in cli | Joakim Hulthe | 1 | -0/+19 | |
| 2024-06-25 | Add `daita` as a Cargo cfg variable | Markus Pettersson | 2 | -8/+8 | |
| Gate DAITA compilation on `"cargo::rustc-cfg=daita"` emitted in build files per platform. | |||||
| 2024-06-25 | Enable DAITA for linux in CLI and types | Sebastian Holmin | 2 | -8/+8 | |
| 2024-06-24 | Run `cargo +nightly fmt` | Sebastian Holmin | 1 | -4/+2 | |
| 2024-04-30 | Add initial split tunneling implementation for macOS | David Lönnhager | 2 | -1/+90 | |
| 2024-04-22 | Fix broken lints in rustdocs | Sebastian Holmin | 2 | -11/+11 | |
| I ran `cargo doc` and fixed as many broken links as I could find. | |||||
| 2024-04-16 | Add DAITA Windows client and updated tuncfg | David Lönnhager | 2 | -1/+30 | |
| 2024-04-03 | Enable single-use-lifetimes rustc lint | Linus Färnstrand | 3 | -3/+3 | |
| Removes superfluous lifetime definitions. Simplifying the code | |||||
| 2024-03-27 | Refactor `mullvad-relay-selector` | Markus Pettersson | 7 | -13/+19 | |
| Implement a system built on 'queries' for selecting appropriate relays. A query is a set of constraints which dictates which relay(s) that *can* be chosen by the relay selector. The user's settings can naturally be expressed as a query. The semantics of merging two queries in a way that always prefer user settings is defined by the new `Intersection` trait. Split `mullvad-relay-selector` into several modules: - `query.rs`: Definition of a query on different types of relays. This module is integral to the new API of `mullvad-relay-selector` - `matcher.rs`: Logic for filtering out candidate relays based on a query. - `detailer.rs`: Logic for deriving connection details for the selected relay. - `tests/`: Integration tests for the new relay selector. These tests only use the public APIs of `RelaySelector` and make sure that the output matches the expected output in different scenarios. | |||||
| 2024-02-28 | Make `block-connection` block even if disconnected | Joakim Hulthe | 1 | -0/+3 | |
| 2024-02-27 | Replace err_derive with thiserror | Joakim Hulthe | 1 | -3/+3 | |
| `err_derive` is unmaintained and will probably stop working with rust edition 2024. `thiserror` is almost a drop-in replacement. This commit simply replaces all occurences of `derive(err_derive::Error)` with `derive(thiserror::Error)` and fixes the attributes, but the Error and Display impls should be identical. | |||||
| 2024-01-22 | Move logic of toggling disabled access methods on use to the daemon | Markus Pettersson | 1 | -6/+1 | |
| 2024-01-18 | Update the tunnel state on lockdown mode change. | Sebastian Holmin | 1 | -8/+17 | |
| The printing of lockdown mode by `mullvad status` does not reflect the current setting unless the tunnel state has also been updated. | |||||
| 2024-01-18 | Print if lockdown mode is enabled when disconnected for `mullvad status` | Sebastian Holmin | 1 | -4/+7 | |
| Add `locked_down` field to disconnected tunnel state. | |||||
| 2024-01-12 | Validate SOCKS5 credentials | Markus Pettersson | 3 | -85/+70 | |
| Validate SOCKS credentials by checking that both `username` and `password` both have a length between 1 and 255 bytes. Link to RFC detailing SOCKS5 username/password authentication: https://datatracker.ietf.org/doc/html/rfc1929 | |||||
| 2024-01-11 | Simplify CLI patch module slightly | David Lönnhager | 1 | -25/+19 | |
| 2024-01-10 | Simplify JSON import and export in the CLI | David Lönnhager | 1 | -106/+20 | |
