asc-community / asc-community/AngouriMath

Static analyzer for development

Open
#283 1 comment 0 reactions 0 assignees View on GitHub
<hard> up-for-grabs Not now Proposal up-for-grabs
Dominant language
C#
Stars
831
Forks
79
Avg merge
3h 23m
Merged PRs (30d)
309

Description

Alright I feel like we finally need an analyzer for AngouriMath. It would include

- [x] Get back the vsix for debuggability

### Tasks for the analyzer

- [x] Producing warnings/errors for static non-readonly fields without [ThreadStatic]
- [x] Producing warnings/errors for thread static fields which have the default initialization
- [ ] Producing warnings/errors for private fields of records without `Equals` overriden
- [ ] Producing warnings for records which are neither sealed nor abstract
- [ ] Producing warnings for public static classes that are outside of `MathS`
- [ ] Producing warnings for records which are derived of `Entity` but don't have `ToString` overriden
- [ ] Producing warnings for thrown exceptions which don't have `AngouriMathBaseException` as their parent

Contributor guide

Open the contributing guide

Research direction

Start by inspecting the analyzer work associated with closed pull request #284 and the existing VSIX setup for debuggability. Compare the remaining unchecked analyzer tasks with what is already implemented, then verify that each requested warning or error is produced for the relevant C# construct.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.