Skip to content

Commit c6e4795

Browse files
committed
Fix some NRT warnings.
1 parent 58a0558 commit c6e4795

File tree

5 files changed

+17
-19
lines changed

5 files changed

+17
-19
lines changed

WikiClientLibrary/AbuseFilters/AbuseFilterList.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public AbuseFilterList(WikiSite site) : base(site)
3737
/// <inheritdoc />
3838
protected override AbuseFilter ItemFromJson(JsonNode json)
3939
{
40-
return json.Deserialize<AbuseFilter>(MediaWikiHelper.WikiJsonSerializerOptions);
40+
return json.Deserialize<AbuseFilter>(MediaWikiHelper.WikiJsonSerializerOptions)!;
4141
}
4242

4343
}

WikiClientLibrary/Client/MediaWikiJsonResponseParser.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,9 @@ public override async Task<JsonNode> ParseResponseAsync(HttpResponseMessage resp
7373
var err = jobj["error"];
7474
if (err != null)
7575
{
76-
var errcode = (string)err["code"];
76+
var errcode = (string?)err["code"];
7777
// err["*"]: API usage.
78-
var errmessage = ((string)err["info"]).Trim();
78+
var errmessage = ((string?)err["info"])?.Trim();
7979
context.Logger.LogWarning("API error: {Code} - {Message}", errcode, errmessage);
8080
OnApiError(errcode, errmessage, err, jobj, context);
8181
}
@@ -141,7 +141,7 @@ public override async Task<JsonNode> ParseResponseAsync(HttpResponseMessage resp
141141
/// </item>
142142
/// </list>
143143
/// </remarks>
144-
protected virtual void OnApiError(string errorCode, string errorMessage,
144+
protected virtual void OnApiError(string? errorCode, string? errorMessage,
145145
JsonNode errorNode, JsonNode responseNode, WikiResponseParsingContext context)
146146
{
147147
var fullMessage = errorMessage;

WikiClientLibrary/Files/ChunkedUploadSource.cs

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -247,14 +247,15 @@ public async Task<UploadResult> StashNextChunkAsync(int chunkSize, CancellationT
247247
// Possible error: code=stashfailed, info=Invalid chunk offset
248248
// We will retry from the server-expected offset.
249249
var err = jresult["error"];
250-
if (err != null && (string)err["code"] == "stashfailed" && err["offset"] != null)
250+
if (err != null && (string?)err["code"] == "stashfailed" && err["offset"] != null)
251251
{
252+
var offset = (int)err["offset"]!;
252253
Site.Logger.LogWarning("Server reported: {Message}. Will retry from offset {Offset}.",
253-
(string)err["info"], (int)err["offset"]);
254-
UploadedSize = (int)err["offset"];
254+
(string?)err["info"], offset);
255+
UploadedSize = offset;
255256
goto RETRY;
256257
}
257-
result = jresult["upload"].Deserialize<UploadResult>(MediaWikiHelper.WikiJsonSerializerOptions);
258+
result = jresult["upload"].Deserialize<UploadResult>(MediaWikiHelper.WikiJsonSerializerOptions)!;
258259
// Ignore warnings, as long as we have filekey to continue the upload.
259260
if (result.FileKey == null)
260261
{
@@ -305,18 +306,15 @@ public override string ToString()
305306
private class ChunkedUploadResponseParser : MediaWikiJsonResponseParser
306307
{
307308

308-
public static new readonly ChunkedUploadResponseParser Default = new ChunkedUploadResponseParser();
309+
public static new readonly ChunkedUploadResponseParser Default = new();
309310

310311
/// <inheritdoc />
311-
protected override void OnApiError(string errorCode, string errorMessage, JsonNode errorNode, JsonNode responseNode,
312+
protected override void OnApiError(string? errorCode, string? errorMessage, JsonNode errorNode, JsonNode responseNode,
312313
WikiResponseParsingContext context)
313314
{
314315
// Possible error: code=stashfailed, info=Invalid chunk offset, offset=xxxx
315-
// We will try to recover.
316-
if (errorCode == "stashfailed" && errorNode["offset"] != null)
317-
{
318-
return;
319-
}
316+
// We will try to recover from the caller-side.
317+
if (errorCode == "stashfailed" && errorNode["offset"] != null) return;
320318
base.OnApiError(errorCode, errorMessage, errorNode, responseNode, context);
321319
}
322320

WikiClientLibrary/Files/UploadResult.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -230,11 +230,11 @@ public static string FormatWarning(string warningCode, JsonElement context)
230230
switch (warningCode)
231231
{
232232
case "duplicateversions":
233-
var timeStamps = context.EnumerateArray()
233+
var timestamps = context.EnumerateArray()
234234
.Select(v => MediaWikiHelper.ParseDateTime(v.GetProperty("timestamp").GetString()))
235235
.Take(4).ToList();
236-
contextString = string.Join(",", timeStamps.Take(3));
237-
if (timeStamps.Count > 3) contextString += ",…";
236+
contextString = string.Join(",", timestamps.Take(3));
237+
if (timestamps.Count > 3) contextString += ",…";
238238
break;
239239
case "duplicate":
240240
var titles = context.EnumerateArray()

WikiClientLibrary/Files/WikiSiteExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public static async Task<UploadResult> UploadAsync(this WikiSite site, string ti
7171
var request = new MediaWikiFormRequestMessage(requestFields, true);
7272
site.Logger.LogDebug("Start uploading.");
7373
var jresult = await site.InvokeMediaWikiApiAsync(request, cancellationToken);
74-
var result = jresult["upload"].Deserialize<UploadResult>(MediaWikiHelper.WikiJsonSerializerOptions);
74+
var result = jresult["upload"].Deserialize<UploadResult>(MediaWikiHelper.WikiJsonSerializerOptions)!;
7575
site.Logger.LogInformation("Uploaded. Result={Result}.", result.ResultCode);
7676
return result;
7777
}

0 commit comments

Comments
 (0)