Skip to content

Releases: fictive-kin/wireguard

v1.0.0

06 Nov 21:40
c6530b0
Compare
Choose a tag to compare

What's Changed

NOTE: This release contains a breaking change as all references to .config() need to be updated to be .config and any custom Config class needs to be either passed to the Peer or Server object at instantiation or will need to be set as .config_cls = MyCustomConfigClass at any later point in the Peer or Server objects' lifecycle.

Full Changelog: v0.4.0...v1.0.0

Peer dicts + bug fixes

07 Oct 15:33
0b0583c
Compare
Choose a tag to compare
  • Allows passing a list of peer dict info for the peers keyword during Peer/Server instantiation (#10)
  • Fixes a bug with passing a list of Pre/Post Up/Down directives, which was causing undesired nesting (#12). Thanks @UrfinJuice11 for identifying that problem.

IPv4/6 Simultaneously + JSON

23 Aug 02:15
c4f679a
Compare
Choose a tag to compare

What's Changed

Previously, IPv4 and IPv6 weren't cleanly handled, and you could arrive at situations where one was overriding the other. This cleans that up, handling each separately, but allowing the instantiation to have them combined, as WireGuard itself has them combined within config files.

Full Changelog: v0.2.5...v0.3.0

Config output cleanup

07 Jan 18:22
7270aa5
Compare
Choose a tag to compare

Fixes:

  • Adds a blank line between peer sections in outputted files for better readability: #4. Thanks, @kraysx7

Support for MTU and Table

16 Dec 21:44
d7eb722
Compare
Choose a tag to compare

Bug Fixes:

  • Empty config values should not output broken directives to the WireGuard config files. af03a8f
  • Keepalive was affecting the wrong config file. af03a8f
  • Preshared keys were not being put in both ends of a peer configuration. af03a8f
  • Not all appropriate options were being inherited by a peer in a server<->peer configuration. bd0dc73
  • Tuples were not being handled correctly where lists and sets were accepted. 75cf466

Enhancements:

  • Adds support for using the MTU and Table directives in the WireGuard config files. #3 Thanks @marneu!
  • Test suite has been expanded. 5b1561e
  • Better error messages for certain cases. 75cf466

Better line separator handling

30 Nov 22:00
a705043
Compare
Choose a tag to compare

Bug fixes:

  • Under certain conditions, generated config files might be missing some newlines which result in WireGuard syntax errors. Thanks @marneu

Enhancements:

  • Be explicit about which encoding to use when writing config files
  • Use None as default value for a method's argument and handle inside the method

Adds QR Code

31 Mar 17:48
93cf715
Compare
Choose a tag to compare

When configuring a peer, for certain types of peers, it is beneficial to have a QR code to scan during the setup process. This enables that in the core library. However, it is an optional dependency, and as such must be installed via pip install wireguard[qr]. Alternately, installing the qrcode[pil] library will allow the functionality to be used.

Major Refactor

31 Mar 02:25
fa7bccc
Compare
Choose a tag to compare

The object structure has been refactored to better represent the WireGuard config structure, which doesn't really have a server vs peer differentiation. Both are peers of each other.

Additionally, a Config class has been created to simplify the Peer and Server classes.

Better Routing Control

16 Mar 17:50
d6f41a3
Compare
Choose a tag to compare

Replaces use of upstream-only (ie: peer -> server) subnet routing to two values, to allow for distinct subnet routing in either direction.