eunice

introstructuredependenciescase studieslanguagesissueslicensingadvanced
C#

An analyzer for C#, that reads .NET assemblies, is no longer under development. It has been replaced by a .NET Compiler Platform ("Roslyn") based C# analyzer.

The following progress was made in the analyzer's pre-release development before it was cancelled:

2020-05-29

yield return

2020-05-26

added script to run spellcheck before push
running at this point will include git log for new commits

2020-05-25

added spellcheck

test case variable declaration class named to match more descriptive file name

2020-05-23

assembly paths in a directory are sorted
avoids inconsistencies between file and operating systems

analysis of directories

yaml output line by line

C# test projects built in parallel

assembly files are read asynchronously

2020-05-22

casting of classes

file analysis as an executable

field references
dependencies on the field added, but not its type

2020-05-19

dependencies on nested classes include parent

2020-05-16

Git log on website
publicly show development progress before first release

2020-05-15

dependencies don't specify type or namespace for calls within same class

2020-05-14

collect sequence replaced with more specific choose option

spaces before brackets
no unnecessary brackets around discriminated union cases

interface generic parameter constraints

method reference instructions
e.g. calls

2020-05-13

field test case warning suppression

file-system tests fail with full test case path, actual and expected

standardized on singular test case names

2020-05-12

fields of automatic events ignored

ignore fields of automatic properties

test case for operator overload of unary plus
readability of naming (e.g. op_UnaryPlus) could be improved

methods no longer depend on parent class

used expression body for test case

indexer test case

event items instead of add/remove methods

2020-05-11

property items instead of getter/setter methods

fields

added variables types and no duplicate types

generic parameter constraints

generic arguments

test cases for generic parameters on classes

specified display name for tests
shorter than inferred name with namespace

2020-05-10

removed namespaces from test cases where irrelevant
makes visual comparison of actual and expected easier

parameterized constructors

base interfaces

reordered f# files top-down
for readability and more type inference

base classes

2020-05-09

parameter and return types of class and interface methods

interface methods test case

alphabetically ordered namespace items and delegate types

delegate parameter types

dependencies for return type of delegates

2020-05-08

namespace grouping into hierarchy of items independent of the type items contained inside
for reuse grouping dependencies into namespaces

yaml key/value lines mapping separated from items
doesn't require exposing of private for specific tests

support for identifier only items move to yaml

2020-05-07

interface with nested class test case

moved method and nested test cases into class directory

methods

moved namespace test cases into a namespace directory

2020-05-06

yaml tests for empty child items

code coverage totals displayed e.g. when not 100%

test script coverage threshold errors raised from report generator instead of altcover
altcover was only measuring statement and its branch calculation is wrong

test results (trx) has same file name for each run

test script generates report even when code coverage lower than threshold

added test for interfaces

added test for yaml empty block sequences
pattern for empty cannot to be ignored in isolation from code coverage
not including pattern and suppressing F# warning still generates CIL that is detected by code coverage

test script set to exit on error

test for delegates

added test for enum

removed yaml sequence for single child items

2020-05-05

4 space indentation for readability

nested classes

2020-05-04

moved types into namespaces and separate files

test case for single class with no namespace

ancestor namespaces

2020-05-03

parent namespace

VS Code settings for whitespace

2020-05-02

deleted file that was never used

avoided package restore error for test case projects

namespaces as parent item
avoided type / namespace conflict of "File" between implementation and test projects
YAML serialization library no longer used as it nor an alternative has support for F# types and .NET Core

2020-04-30

Azure pipelines

test script added shebang and reformatted

single class without namespace