Quentin McGaw
5d75bbc869
feat(config): only use port forwarding servers when port forwarding is enabled for ProtonVPN and PIA
2024-07-31 14:49:33 +00:00
Quentin McGaw
13ffffb157
feat(fastestvpn): Wireguard support ( #2383 )
...
Credits to @Zerauskire for the initial investigation and @jvanderzande for an initial implementation as well as reviewing the pull request
2024-07-31 16:16:50 +02:00
Quentin McGaw
ecc80a5a9e
chore(config): upgrade to gosettings v0.4.0
...
- drop qdm12/govalid dependency
- upgrade qdm12/ss-server to v0.6.0
- do not unset sensitive config settings (makes no sense to me)
2024-03-25 19:14:20 +00:00
Quentin McGaw
62007bf1a1
chore(config): provider name field as string instead of string pointer
2024-03-23 09:41:25 +00:00
Quentin McGaw
71201411f4
fix(portforward): rework run loop and fix deadlocks ( #1874 )
2023-09-23 12:57:12 +02:00
Quentin McGaw
0da2b6ad0b
chore(lint): add musttag linter and fix lint errors
...
Breaking change: JSON fields changed in the server API
2023-06-08 07:43:26 +00:00
Julio Gutierrez
07459ee854
feat(nordvpn): new API endpoint and wireguard support ( #1380 )
...
Co-authored-by: Quentin McGaw <quentin.mcgaw@gmail.com >
2023-06-08 09:39:07 +02:00
Quentin McGaw
a43973c093
chore(settings): use github.com/qdm12/gosettings
2023-05-25 12:08:43 +00:00
Julio Gutierrez
5200ee5722
chore(settings): use generics for helping functions ( #1427 )
2023-05-20 22:37:23 +02:00
Quentin McGaw
912b31cfc6
fix(settings): clarify Wireguard provider error
2023-05-01 08:00:25 +00:00
Quentin McGaw
f15dde6502
feat(providers): add AirVPN support ( #1145 )
2022-10-17 02:54:56 -04:00
Quentin McGaw
5989f29035
feat(surfshark): Wireguard support ( #587 )
2022-08-26 07:55:46 -07:00
Quentin McGaw
36b504609b
chore(all): memory and thread safe storage
...
- settings: get filter choices from storage for settings validation
- updater: update servers to the storage
- storage: minimal deep copying and data duplication
- storage: add merged servers mutex for thread safety
- connection: filter servers in storage
- formatter: format servers to Markdown in storage
- PIA: get server by name from storage directly
- Updater: get servers count from storage directly
- Updater: equality check done in storage, fix #882
2022-06-05 15:19:16 +00:00
Quentin McGaw
bd0868d764
chore(all): provider to servers map in allServers
...
- Simplify formatting CLI
- Simplify updater code
- Simplify filter choices for config validation
- Simplify all servers deep copying
- Custom JSON marshaling methods for `AllServers`
- Simplify provider constructor switch
- Simplify storage merging
- Simplify storage reading and extraction
- Simplify updating code
2022-05-27 16:17:53 +00:00
Quentin McGaw
934fafb64b
chore(constants): internal/constants/vpn package
2022-04-18 11:14:07 +00:00
Quentin McGaw
54b7e23974
chore(constants): internal/constants/providers
...
- New package to avoid package import cycles
2022-04-16 19:30:26 +00:00
Quentin McGaw
920ad8b54b
chore(errors): review all errors in codebase
2022-02-20 02:58:16 +00:00
Quentin McGaw
ae074dfb2b
hotfix(surfshark): REGION retro-compatibility
2022-01-06 19:16:14 +00:00
Quentin McGaw
7d824a5179
chore(settings): refactor settings processing ( #756 )
...
- Better settings tree structure logged using `qdm12/gotree`
- Read settings from environment variables, then files, then secret files
- Settings methods to default them, merge them and override them
- `DNS_PLAINTEXT_ADDRESS` default changed to `127.0.0.1` to use DoT. Warning added if set to something else.
- `HTTPPROXY_LISTENING_ADDRESS` instead of `HTTPPROXY_PORT` (with retro-compatibility)
2022-01-06 06:40:23 -05:00