-
Notifications
You must be signed in to change notification settings - Fork 1
Changes in v3
Aaron Sherber edited this page Apr 1, 2018
·
6 revisions
Although v2 of this library worked fine for most uses, there were some issues with the architecture, and it lacked a proper test suite. v3 adds in unit and integration tests, squashes some bugs, adds .NET Standard 2.0 compatibility, and makes some other significant changes. Many of these are breaking changes, although since the overall design remains the same, it shouldn't be very complicated to transition.
Among the visible changes are:
- All library options are now fully async. Non-async methods have been removed.
- The file format for saved configuration has been changed from XML to JSON.
-
MailmanClient
used to be a descendant ofRestClient
and exposed all of that class's public properties. It now has aRestClient
as a private field and exposes (and delegates) only certain properties, likeAuthenticator
andProxy
. - All value type properties are now nullable. This is because the library is kept up to date with the latest Mailman v2.1.x, but users may be running it against an older version that lacks some properties. Without nullable properties, doing a
ReadAsync()
would result in properties misleadingly being assigned a default value if the corresponding field doesn't exist in that version of Mailman. - v2 used to treat all
<textarea>
fields in Mailman asList<string>
, but v3 distinguishes between those which are really a string (likeGeneral.Info
) and those which are lists (likeGeneral.Moderator
).