Skip to content

Conversation

@emreyigit
Copy link
Member

I believe we need a custom analyzers for more consistent development quality. Introduced the Hazelcast.Net.BuildAnalyzers with an initial rule. The project is an internal tool. It runs on compile time and not part of the release. Currently, disabled the analyzer since the first rule which checks the all public APIs whether they have NotNull or MayBeNull attributes. Since the attributes are not used widely enough, triggers a lot of warnings. When I find time, I'll fix the warnings with another PR.

@emreyigit emreyigit added the Type: Infra Infrastructure, build, etc. label Mar 14, 2025
Copy link

@gbarnett-hz gbarnett-hz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - though I would hold off merging until it's actually used.

What's the empty AnalyzerReleases.Unshipped.md for?

@emreyigit
Copy link
Member Author

Thanks @gbarnett-hz. It's used for version logging. The analyzer dependency requires these files before making the rule available. It's a kind a check point before making the rules available and for version history. The new added rule is reflected to the unshipped file and moved to shipped file manually.

Also, similar approach exists on the client as well. Public APIs are inserted to unshipped file by the IDE and it prevents the release if they are not moved to shipped file manually. It's a nice reminder checking the public APIs one last time.

The rule is disabled for now, so that we can merge the PR, IMO. We can enable it when we have resource to drain warnings. Otherwise, opening PR diverges from master by time :|

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you update the documentation or README about how a developer can try this rule since it is not on by default? The steps he/she needs to try it?

@devOpsHazelcast
Copy link
Contributor

PR closed by Hazelcast automation as no activity (>3 months). Please reopen with comments, if necessary. Thank you for using Hazelcast and your valuable contributions

@codecov
Copy link

codecov bot commented Jun 20, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 0.00%. Comparing base (c9523ec) to head (fcc47a9).
Report is 9 commits behind head on master.

Additional details and impacted files
@@      Coverage Diff      @@
##   master   #956   +/-   ##
=============================
=============================

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants