Skip to content

additional nullable annotation cleanup #384

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Oct 5, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ resharper_web_config_module_not_resolved_highlighting=warning
resharper_web_config_type_not_resolved_highlighting=warning
resharper_web_config_wrong_module_highlighting=warning

dotnet_diagnostic.VSTHRD200.severity = none

[*.{cs,cshtml}]
charset=utf-8
Expand Down
6 changes: 3 additions & 3 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<Authors>David Driscoll</Authors>
<LangVersion>preview</LangVersion>
<Features>strict</Features>
<!-- <Nullable>enable</Nullable> -->
<Nullable>enable</Nullable>
<SignAssembly>true</SignAssembly>
<DelaySign>false</DelaySign>
<PackageIcon>images/packageicon.png</PackageIcon>
Expand All @@ -24,7 +24,7 @@
</PropertyGroup>
<ItemGroup>
<None Include="$(MSBuildThisFileDirectory)/.tmp/packageicon.png" Condition="Exists('$(MSBuildThisFileDirectory)/.tmp/packageicon.png')" Pack="true" PackagePath="/images/"
Visible="false" />
<None Include="$(MSBuildThisFileDirectory)/LICENSE" Pack="true" PackagePath="/" Visible="false" />
Visible="false"/>
<None Include="$(MSBuildThisFileDirectory)/LICENSE" Pack="true" PackagePath="/" Visible="false"/>
</ItemGroup>
</Project>
12 changes: 6 additions & 6 deletions benchmarks/Pipeline/Class1.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,19 @@ namespace Pipeline
[SimpleJob(RuntimeMoniker.NetCoreApp21)]
public class ClassicVsPipelines
{
private const string sampleCommand =
private const string SampleCommand =
"Content-Length: 88\r\n\r\n{\"seq\":1,\"type\":\"response\",\"request_seq\":1,\"success\":true,\"command\":\"command\",\"body\":{}}";

private const string anotherPayload =
private const string AnotherPayload =
"Content-Length: 894\r\n\r\n{\"edit\":{\"documentChanges\":[{\"textDocument\":{\"version\":1,\"uri\":\"file:///abc/123/d.cs\"},\"edits\":[{\"range\":{\"start\":{\"line\":1,\"character\":1},\"end\":{\"line\":2,\"character\":2}},\"newText\":\"new text\"},{\"range\":{\"start\":{\"line\":3,\"character\":3},\"end\":{\"line\":4,\"character\":4}},\"newText\":\"new text2\"}]},{\"textDocument\":{\"version\":1,\"uri\":\"file:///abc/123/b.cs\"},\"edits\":[{\"range\":{\"start\":{\"line\":1,\"character\":1},\"end\":{\"line\":2,\"character\":2}},\"newText\":\"new text2\"},{\"range\":{\"start\":{\"line\":3,\"character\":3},\"end\":{\"line\":4,\"character\":4}},\"newText\":\"new text3\"}]},{\"kind\":\"create\",\"uri\":\"file:///abc/123/b.cs\",\"options\":{\"overwrite\":true,\"ignoreIfExists\":true}},{\"kind\":\"rename\",\"oldUri\":\"file:///abc/123/b.cs\",\"newUri\":\"file:///abc/123/c.cs\",\"options\":{\"overwrite\":true,\"ignoreIfExists\":true}},{\"kind\":\"delete\",\"uri\":\"file:///abc/123/c.cs\",\"options\":{\"recursive\":false,\"ignoreIfNotExists\":true}}]}}";


private ClassicHandler _classic;
private PipelinesBased _pipelines;
private ClassicHandler? _classic;
private PipelinesBased? _pipelines;

[Params(
sampleCommand,
anotherPayload
SampleCommand,
AnotherPayload
)]
public string Payload { get; set; }

Expand Down
6 changes: 3 additions & 3 deletions sample/SampleServer/TextDocumentHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
using OmniSharp.Extensions.LanguageServer.Protocol.Server.Capabilities;
using OmniSharp.Extensions.LanguageServer.Protocol.Server.WorkDone;
using OmniSharp.Extensions.LanguageServer.Protocol.Workspace;
#pragma warning disable CS0618

namespace SampleServer
{
Expand Down Expand Up @@ -154,17 +155,16 @@ CancellationToken cancellationToken

internal class MyWorkspaceSymbolsHandler : WorkspaceSymbolsHandler
{
private readonly IServerWorkDoneManager _manager;
private readonly IServerWorkDoneManager _serverWorkDoneManager;
private readonly IProgressManager _progressManager;
private readonly ILogger<MyWorkspaceSymbolsHandler> logger;
private readonly ILogger<MyWorkspaceSymbolsHandler> _logger;

public MyWorkspaceSymbolsHandler(IServerWorkDoneManager serverWorkDoneManager, IProgressManager progressManager, ILogger<MyWorkspaceSymbolsHandler> logger) :
base(new WorkspaceSymbolRegistrationOptions())
{
_serverWorkDoneManager = serverWorkDoneManager;
_progressManager = progressManager;
this.logger = logger;
this._logger = logger;
}

public override async Task<Container<SymbolInformation>> Handle(
Expand Down
1 change: 0 additions & 1 deletion src/Client/LangaugeClientRegistry.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using System;
using DryIoc;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.LanguageServer.Protocol.Client;
Expand Down
1 change: 0 additions & 1 deletion src/Client/LanguageClientServiceCollectionExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection.Extensions;
using Microsoft.Extensions.Options;
using Microsoft.Extensions.Primitives;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.LanguageServer.Client.Configuration;
using OmniSharp.Extensions.LanguageServer.Protocol.Client;
Expand Down
4 changes: 2 additions & 2 deletions src/Dap.Client/DebugAdapterClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -161,11 +161,11 @@ await DebugAdapterEventingHelper.Run(
_instanceHasStarted.Started = true;
}

async Task<Unit> IRequestHandler<InitializedEvent, Unit>.Handle(InitializedEvent request, CancellationToken cancellationToken)
Task<Unit> IRequestHandler<InitializedEvent, Unit>.Handle(InitializedEvent request, CancellationToken cancellationToken)
{
_initializedComplete.OnNext(request);
_initializedComplete.OnCompleted();
return Unit.Value;
return Unit.Task;
}

private void RegisterCapabilities(InitializeRequestArguments capabilities)
Expand Down
1 change: 0 additions & 1 deletion src/Dap.Client/DefaultDebugAdapterClientFacade.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
using DryIoc;
using OmniSharp.Extensions.DebugAdapter.Protocol;
using OmniSharp.Extensions.DebugAdapter.Protocol.Client;
using OmniSharp.Extensions.DebugAdapter.Protocol.Server;
using OmniSharp.Extensions.JsonRpc;

namespace OmniSharp.Extensions.DebugAdapter.Client
Expand Down
2 changes: 2 additions & 0 deletions src/Dap.Shared/DapResponseRouter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,9 @@ public async Task<TResponse> Returning<TResponse>(CancellationToken cancellation
cancellationToken.Register(
() => {
if (tcs.Task.IsCompleted) return;
#pragma warning disable VSTHRD110
_router.SendRequest(RequestNames.Cancel, new { requestId = nextId }).Returning<CancelArguments>(CancellationToken.None);
#pragma warning restore VSTHRD110
}
);
}
Expand Down
2 changes: 1 addition & 1 deletion src/JsonRpc.Generators/GenerateRequestMethodsGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ public Task<RichGenerationResult> GenerateRichAsync(TransformationContext contex
{
var requestType = GetRequestType(handlerInterface);
var responseType = GetResponseType(handlerInterface);
methods.AddRange(HandleRequests(handlerInterface, symbol, requestType, responseType, registry, additionalUsings));
methods.AddRange(HandleRequests(handlerInterface, symbol, requestType, responseType!, registry, additionalUsings));
}
}

Expand Down
2 changes: 2 additions & 0 deletions src/JsonRpc.Testing/JsonRpcServerTestBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,10 @@ Action<JsonRpcServerOptions> serverOptionsAction
);

await Task.WhenAll(clientTask, serverTask).ConfigureAwait(false);
#pragma warning disable VSTHRD103
_client = clientTask.Result;
_server = serverTask.Result;
#pragma warning restore VSTHRD103

Disposable.Add(_client);
Disposable.Add(_server);
Expand Down
1 change: 0 additions & 1 deletion src/JsonRpc/HandlerCollection.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
using System.Reflection;
using DryIoc;
using MediatR;
using Microsoft.Extensions.DependencyInjection;

namespace OmniSharp.Extensions.JsonRpc
{
Expand Down
2 changes: 0 additions & 2 deletions src/JsonRpc/JsonRpcHandlerCollectionExtensions.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
using System;
using System.Collections.Generic;
using DryIoc;
using Microsoft.Extensions.DependencyInjection;

namespace OmniSharp.Extensions.JsonRpc
{
Expand Down
2 changes: 1 addition & 1 deletion src/JsonRpc/JsonRpcServer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

namespace OmniSharp.Extensions.JsonRpc
{
public class JsonRpcServer : JsonRpcServerBase, IJsonRpcServer, IServiceProvider
public class JsonRpcServer : JsonRpcServerBase, IJsonRpcServer
{
private readonly Connection _connection;
private readonly IServiceProvider _serviceProvider;
Expand Down
3 changes: 2 additions & 1 deletion src/JsonRpc/RequestRouterBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,8 @@ ILogger logger
{
var property = typeof(Task<>)
.MakeGenericType(result.GetType().GetTypeInfo().GetGenericArguments()[0]).GetTypeInfo()
.GetProperty(nameof(Task<object>.Result), BindingFlags.Public | BindingFlags.Instance)!;
.GetProperty("Result"
, BindingFlags.Public | BindingFlags.Instance)!;

responseValue = property.GetValue(result);
if (responseValue?.GetType() == typeof(Unit))
Expand Down
4 changes: 0 additions & 4 deletions src/JsonRpc/ResponseRouter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -105,10 +105,6 @@ public async Task<TResponse> Returning<TResponse>(CancellationToken cancellation

return result.ToObject<TResponse>(_router.Serializer.JsonSerializer);
}
catch (ObjectDisposedException)
{
throw;
}
finally
{
_router.Requests.TryRemove(nextId, out _);
Expand Down
2 changes: 1 addition & 1 deletion src/JsonRpc/Server/ServerResponse.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ namespace OmniSharp.Extensions.JsonRpc.Server
{
public class ServerResponse : ResponseBase
{
public ServerResponse(object id, JToken result) : base(id) => Result = result;
public ServerResponse(object id, JToken? result) : base(id) => Result = result ?? JValue.CreateNull();

public JToken Result { get; set; }
}
Expand Down
2 changes: 1 addition & 1 deletion src/Protocol/AbstractHandlers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ public abstract class PartialResults<TParams, TResponse, TItem, TCapability, TRe
IJsonRpcRequestHandler<TParams, TResponse>,
IRegistration<TRegistrationOptions>, ICapability<TCapability>
where TParams : IPartialItemsRequest<TResponse, TItem>
where TResponse : IEnumerable<TItem>, new()
where TResponse : IEnumerable<TItem>?, new()
where TRegistrationOptions : class, new()
where TCapability : ICapability
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,7 @@ public class TextDocumentClientCapabilities : CapabilitiesBase
///
/// @since 3.16.0
/// </summary>
[Obsolete(Constants.Proposal)]
public Supports<MonikerCapability?> Moniker { get; set; }
}
}
1 change: 0 additions & 1 deletion src/Protocol/Client/ClientLanguageClient.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using System;
using DryIoc;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.LanguageServer.Protocol.Progress;
Expand Down
1 change: 0 additions & 1 deletion src/Protocol/Client/GeneralLanguageClient.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using System;
using DryIoc;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.LanguageServer.Protocol.Progress;
Expand Down
1 change: 0 additions & 1 deletion src/Protocol/Client/ILanguageClient.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
using System;
using System.Threading;
using System.Threading.Tasks;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.LanguageServer.Protocol.Client.WorkDone;

namespace OmniSharp.Extensions.LanguageServer.Protocol.Client
Expand Down
1 change: 0 additions & 1 deletion src/Protocol/Client/TextDocumentLanguageClient.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using System;
using DryIoc;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.LanguageServer.Protocol.Progress;
Expand Down
1 change: 0 additions & 1 deletion src/Protocol/Client/WindowLanguageClient.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using System;
using DryIoc;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.LanguageServer.Protocol.Progress;
Expand Down
1 change: 0 additions & 1 deletion src/Protocol/Client/WorkspaceLanguageClient.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using System;
using DryIoc;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.LanguageServer.Protocol.Progress;
Expand Down
4 changes: 2 additions & 2 deletions src/Protocol/Document/IDocumentLinkHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -480,7 +480,7 @@ public static ILanguageServerRegistry OnDocumentLink<T>(
);
}

private class DelegatingDocumentLinkHandler<T> : DocumentLinkHandlerBase<T>, ICanBeIdentifiedHandler where T : HandlerIdentity?, new()
private class DelegatingDocumentLinkHandler<T> : DocumentLinkHandlerBase<T> where T : HandlerIdentity?, new()
{
private readonly Func<DocumentLinkParams, DocumentLinkCapability, CancellationToken, Task<DocumentLinkContainer<T>>> _handleParams;
private readonly Func<DocumentLink<T>, DocumentLinkCapability, CancellationToken, Task<DocumentLink<T>>> _handleResolve;
Expand All @@ -502,7 +502,7 @@ protected override Task<DocumentLink<T>> HandleResolve(DocumentLink<T> request,
_handleResolve(request, Capability, cancellationToken);
}

private class DelegatingPartialDocumentLinkHandler<T> : PartialDocumentLinkHandlerBase<T>, ICanBeIdentifiedHandler where T : HandlerIdentity?, new()
private class DelegatingPartialDocumentLinkHandler<T> : PartialDocumentLinkHandlerBase<T> where T : HandlerIdentity?, new()
{
private readonly Action<DocumentLinkParams, IObserver<IEnumerable<DocumentLink<T>>>, DocumentLinkCapability, CancellationToken> _handleParams;
private readonly Func<DocumentLink<T>, DocumentLinkCapability, CancellationToken, Task<DocumentLink<T>>> _handleResolve;
Expand Down
3 changes: 1 addition & 2 deletions src/Protocol/Document/Proposals/IMonikerHandler.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using OmniSharp.Extensions.JsonRpc;
Expand Down Expand Up @@ -42,7 +41,7 @@ protected MonikerHandlerBase(MonikerRegistrationOptions registrationOptions)

[Obsolete(Constants.Proposal)]
public abstract class PartialMonikerHandlerBase :
AbstractHandlers.PartialResults<MonikerParams, Container<Moniker>, Moniker, MonikerCapability, MonikerRegistrationOptions>, IMonikerHandler
AbstractHandlers.PartialResults<MonikerParams, Container<Moniker>?, Moniker, MonikerCapability, MonikerRegistrationOptions>, IMonikerHandler
{
protected PartialMonikerHandlerBase(MonikerRegistrationOptions registrationOptions, IProgressManager progressManager) : base(
registrationOptions, progressManager,
Expand Down
14 changes: 0 additions & 14 deletions src/Protocol/Document/Proposals/ISemanticTokensHandler.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
using System;
using System.Reactive.Subjects;
using System.Threading;
using System.Threading.Tasks;
using MediatR;
using OmniSharp.Extensions.JsonRpc;
using OmniSharp.Extensions.JsonRpc.Generation;
using OmniSharp.Extensions.LanguageServer.Protocol.Client;
Expand Down Expand Up @@ -172,18 +170,6 @@ SemanticTokensRegistrationOptions registrationOptions
_getSemanticTokensDocument = getSemanticTokensDocument;
}

public DelegatingHandlerBase(
Func<SemanticTokensBuilder, ITextDocumentIdentifierParams, SemanticTokensCapability, Task> tokenize,
Func<ITextDocumentIdentifierParams, SemanticTokensCapability, Task<SemanticTokensDocument>> getSemanticTokensDocument,
SemanticTokensRegistrationOptions registrationOptions
) : this(
(s, t, c, ct) => tokenize(s, t, c),
(t, c, ct) => getSemanticTokensDocument(t, c),
registrationOptions
)
{
}

protected override Task Tokenize(SemanticTokensBuilder builder, ITextDocumentIdentifierParams identifier, CancellationToken cancellationToken)
=> _tokenize(builder, identifier, _capability, cancellationToken);

Expand Down
4 changes: 2 additions & 2 deletions src/Protocol/Document/Proposals/SemanticTokensBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -171,8 +171,8 @@ public void Push(Range range, int tokenType, int tokenModifiers)
/// </summary>
public SemanticTokensDocument Commit()
{
_document._dataLen = _dataLen;
_document._data = _data.ToImmutable();
_document.DataLen = _dataLen;
_document.Data = _data.ToImmutable();
return _document;
}
}
Expand Down
Loading