couchbaselabs / Linq2Couchbase

A Language Integrated Query (LINQ) provider for the Couchbase .NET SDK
Apache License 2.0
95 stars 47 forks source link

Enable nullable reference types #341

Closed brantburnett closed 3 years ago

brantburnett commented 3 years ago

Motivation

Reduce null reference exceptions in the codebase and provide nullability indicators to library consumers using C# 8 or later.

Modifications

Enable nullable reference types project wide, and disable on a few files that are too complicated to refactor right now (internal only).

Refactor existing code to include nullable indicators.

Remove the completely unused UnclaimedGroupJoin system (this was a holdover from the old non-ANSI join system).

Results

Nullable reference type annotations are included on all public members, and some internal code is cleaned up.