Releases: CXuesong/WikiClientLibrary
v0.8.0-int.3
- Fix NRE when trying to fetch for page content on MW 1.19. (#86)
v0.8.0-int.2
Bug fix
- Use more aggressive version expression truncation strategy in
MediaWikiVersion.Parse
(#86).
v0.8.0-int.1
- Bug fix:
RefreshAsync(PageQueryOptions.FetchContent)
does not fetch page content (#85)
v0.8.0-int.0
- Re-targeted WCL packages to .NET Standard 2.1 & .NET 5.0 (#82)
- Enabled Nullable Reference Type in a subset of the packages (noted below)
WikiClientLibrary
- Remove dependency on
CXuesong.AsyncEnumerableExtensions
since we have native async iterator function (async stream) support now. - Enable Nullable Reference Type support.
- Introduce implicit conversions on
WikiPageStub
. You can now implicitly convertWikiPage
instance, page title (string
) or page ID (int
) intoWikiPageStub
- Now
WikiPagePropertyList
and its dervied classes acceptWikiPageStub
instead of page title and page ID. You can leverage the implicit conversion above to pass in the page information. WikiSite.SearchApiEndpointAsync
is now cancellable.- Added
UploadResult.StashErrors
property. (MW 1.29+) - Added
WikiPage.CreateCategoriesGenerator
extension method. - Added
MediaWikiVersion.{In, Above}
methods for comparing version without instantiating one. - Rectified the constructor overloads of
MediaWikiVersion
. All the version segments should be ofshort
type. - Type fix:
EntityQueryOptions.SupressRedirects
-->EntityQueryOptions.SuppressRedirects
- Add (CSRF)
token
parameter inWikiSite.LogoutAsync
on earlier MW versions since security fix of phab:T25227 has been back-ported to- MW 1.27.6+
- MW 1.30.2+
- MW 1.31.2+
- MW 1.32.2+
- MW 1.33-rc.0+
- Now
PatrolAsync
can refresh CSRF token automatically if the cached token is invalid.
WikiClientLibrary.Cargo
- Enable Nullable Reference Type support.
- Bug fix: Endless loop when enumerating empty sequence from
CargoRecordQueryable
.
WikiClientLibrary.Flow
This package will not receive any feature updates.
WikiClientLibrary.Wikibase
- Enable Nullable Reference Type support.
- Added
Entity.IdFromSiteLinkAsync
to retrieve a single Wikibase entity ID from site link.
WikiClientLibrary.Wikia
For migrated FANDOM sites MW 1.33+ (See UCP migration post), you need to use Bot Password in order to login successfully.
Some of the Wikia API v1 is not working on UCP. We are still waiting for UCP migration to complete before we can start on revamp these APIs in WCL.
WikiaSite.LogoutAsync
: For migrated FANDOM sites (on MW 1.33+),action=logout
is now available now and we won't use the mitigation as described in #40
v0.7.5
This version of WCL release is intended to be the last version that targets .NET Standard 2.0 or below. That is, .NET Framework, .NET Core 2.1 or below are no longer supported since v0.8.x. (#82)
WikiClientLibrary
OperationFailedException
now also includes customized error message from MediaWiki site. (e.g. the details ofwikibase-api-permissiondenied
error).
WikiClientLibrary.Cargo
This is a new library for querying tables on MediaWiki sites with Cargo extension. (#77) This library also provides LINQ to Cargo support!
- Go to
CargoTests
inUnitTestProject1
or\Samples\LinqToCargo.csproj
to check it out!
WikiClientLibrary.Flow
There is no update in this release. This library will not receive feature updates in the near future as the development of StructuredDiscussion is stalled:
The StructuredDiscussions extension was developed by the Collaboration team at the Wikimedia Foundation. It is still being maintained to fix bugs, but no substantial development on the extension has been done since 2015, other than a rename to "StructuredDiscussions" in September 2017. Development may possibly start again in the future.
WikiClientLibrary.Wikia
There is no update in this release.
WikiClientLibrary.Wikibase
- Bug fix:
WbQuantity.ToString
throwsInvalidOperationException
whenWbQuantity.Unit
is unity (1
). - Improve error message for wrong snak dataValue type (#80; thanks @mormegil-cz ! )
v0.7.4
v0.7.3
v0.7.2
- Now any parsing failures in
MediaWikiVersion.Parse
will throwFormatException
instead ofArgumentException
. - Optionally allow truncating version suffix in
MediaWikiVersion.Parse
, if the dashed suffix does not fall in any of the standard MediaWiki dev channel. So MediaWiki versions like1.19.5-1+deb7u1
won't causeFormatException
. (#72)- This will make TFWiki contributors' day way better XD
SiteInfo.Version
now allows version suffix truncation.
v0.7.1
v0.7.0
For changes since v0.6.x, see the descriptions of
v0.7.0-int.x
pre-releases.
- Correctly handle
badvalue
error introduced since MW 1.35.0-wmf.19 (#65)- Added
BadValueException
for generalbadvalue
orunknown_*
errors. InvalidActionException
is now a derived class fromBadValueException
.
- Added
- Now WCL gives you more specific exception message if you are using TLS version that is incompatible with remote site's (#66)
- Fixed
ArgumentNullException
when the result list paginates if you specify multiple titles inWikiPagePropertyList<T>
(#67)
Wikibase
- Fixed incorrect implementation of
SerializableEntity.LoadAll
overload function. - Fixed the incorrect
WbQuantity
deserilization logic for unity (1) unit parsing.