Skip to content

Added tests and bug fixes for things found by tests. #183

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 1 commit into from
May 4, 2020

Conversation

smaillet
Copy link
Member

@smaillet smaillet commented May 4, 2020

  • Added new tests for DIBuilder (Biggest impact of nullability changes)
    • These tests have necessitated diving deep into the LLVM implementation to determine if null is truly allowed or not, with some surprising explicit allow cases.
  • Fixed bugs in nullability of parameter declarations and arg validation.
    • General pattern is for things to be not nullable if possible, and allow null for in params as needed but have a default for out or returns whenever plausible.
      • In particular, strings as out or return will be string.Empty instead of null, unless LLVM defines a semantic difference between the null and empty values. (So far there's no known case of that)
  • Simplified DOCFX projects by leveraging the under documented PackageReference 'GeneratePathProperty' to identify the root path of the package with a property

* Added new tests for DIBuilder (Biggest impact of nullability changes)
   - These tests have necessitated diving deep into the LLVM implementation to determine if null is truly allowed or not, with some surprising explicit allow cases.
* Fixed bugs in nullability of parameter declarations and arg validation.
   - General pattern is for things to be not nullable if possible, and allow null for in params as needed but have a default for out or returns whenever plausible.
      * In particular, strings as out or return will be string.Empty instead of null, unless LLVM defines a  semantic difference between the null and empty values. (So far there's no known case of that)
* Simplified DOCFX projects by leveraging the under documented PackageReference 'GeneratePathProperty' to identify the root path of the package with a property
@smaillet smaillet merged commit 60d4dad into UbiquityDotNET:develop May 4, 2020
@smaillet smaillet deleted the MoreUnitTests branch May 4, 2020 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant