Releases: SteveGilham/altcover
Releases · SteveGilham/altcover
Genbu series release 10
7.3.802
- Add a
-q
option for AltCover, given once suppresses informational messages, twice also suppresses warnings and thrice also suppresses errors. Away from the command line, the option is calledVerbosity
, and is based onSystem.Diagnostics.TraceLevel
-- the default level beingInfo
, withWarning
,Error
andOff
equivalent to-q
,-qq
and-qqq
respectively. For the monentVerbose
is the same asInfo
- Other minor build process improvements
Genbu series release 9
7.2.801
- [BUGFIX] Don't
ArgumentNullException
when running the--callContext
forasync
feature off the build machine - [BUGFIX] Refactor to avoid "System.ArgumentException: An item with the same key has already been added. Key: AltCover.Recorder.g/7.2.0.0" that could occur in some rare circumstances while instrumenting code.
- Other minor build process improvements
Genbu series release 8
7.2.800
- [BUGFIX] Don't produce invalid IL when
--callContext
indicates a method with a non-void
return (issue #105, and probably #26 too) - [BUGFIX] Restore application icons, even if they only show in the
.exe
forms (lost in 7.1.795 if not before) - [BUGFIX] Add
AltCover
prefix to MSBuild property namesNetCoreEngine
,NetStdEngine
(global),InputDirectory
andOutputDirectory
(target-scoped) in the injected.targets
file fordotnet test
integration. - [BUGFIX] Let the AvaloniaUI based visualizer roll forwards from netcoreapp2.1 onto later runtimes
- Finer-grained control of the coverage summary output
- When
--callContext
indicates anasync
method, then track all calls within the same async flow, and not just in the direct same-thread call stack. Note other out-of-thread calls (Thread.Start
,Parallel.Invoke
, explict Async-named method invocation, ...) are not tracked. - Build with net5.0 SDK (modulo work-round for dotnet/fsharp#10442) in net5-only environments
- Still build
AltCover.exe/.dll
againstnet472
for framework support,netcoreapp2.1
for the global tool andnetcoreapp2.0
for everywhere else - Still build the GTK2 visualizer against
net472
for consistency - Still build the recorder at
net20
and use that assembly everywhere (see F# compiler issue noted above) except where anet46
version is substituted for tracking throughasync
calls - Move unit tests to
net5.0
, as they are not public API
- Still build
Genbu series release 7
7.1.795
- [BUGFIX] Make LCov tracefile output follow what is actually generated, and not just what the
man
page says - As well as interfaces, hide other types with no non-abstract methods (e.g. plain enums) in the coverage
- Show the branch in
public int string Ternary(bool select) => !select ? Left : Right;
just like it is shown inpublic int Ternary (bool select, int left, int right) { return select ? left : right; }
. - For records, add
entry
andexit
attributes as semicolon separated lists of the UTC times in ticks at which the method was entered and returns - For
dotnet test ... /p:AltCoverXmlReport=...
, if the value for the report file path contains one of the following literals- $(ProjectName)
- $(SolutionDir)
- $([System.Guid]::NewGuid())
then substitute in the actual values of those build parameters where they haven't already been replaced by MSBuild.
Example: Using/p:AltCoverXmlReport=$(SolutionDir)/_Reports/solution.$(ProjectName).xml
withdotnet test
of a solution to place distinctly named report files in a common folder.
Also
- Rationalise .net versions to help speed up the build and ease the net5.0 transition
- Clear out some corner case differences between .net core and .net framework builds based on old work-arounds for symbol writing for the instrumented files
- Build the recorder at
net20
only and use the same assembly everywhere - Move all the core logic from
AltCover.exe/.dll
toAltCover.Engine.dll
- Unify the three different entry-point assembly instances into the now shim-like
AltCover.exe/.dll
- Build everything against
netstandard2.0
except executable shims and unit tests (tests atnetcoreapp3.0
by default) - Build
AltCover.exe/.dll
againstnet472
for framework support,netcoreapp2.1
for the global tool andnetcoreapp2.0
for everywhere else - Build the GTK2 visualizer against
net472
for consistency net472
debug builds for published libraries are retained purely for FxCop consumption
- Collect coverage from unit tests at build time too
Genbu series release 6a
7.1.783
- [Visualizer-global-tool]
- [BUGFIX] Don't NRE when cancelling a File Open dialog when Avalonia uses its GTK binding (Linux)
- Support font selection on Windows natively (monospace fonts only)
- On non-Windows platforms, if Tcl/Tk
wish
is present, use that to perform font selection (choose wisely)
Genbu series release 6
7.1.782
- [BUGFIX] Don't throw NRE when encountering an interface with a default method implementation
- Omit interfaces without default method implementations from coverage recording, to match the behaviour of OpenCover (Issue #91)
- [Visualizer-global-tool]
- Fix the display of branch information on the second and subsequent coverage file loaded in a session
- Fix the loading of the most recently accessed files list to prune ones that don't now exist
- other minor tidyings
- [Visualizer-GTK]
- Make this look more like the Avalonia version
- Tentative fix for the
About
dialog link-button on non-Windows platforms based partly on the Avalonia code. - Keep the GTK3 build in step, even though it's not packaged for release
Genbu series release 5a
7.1.780
- [Visualizer] Rewritten global tool based on the cross-platform AvaloniaUI toolkit (so no need for all the GTK3 set-up, including the
--schemadir[=path]
command-line parameter)- There's no font selection support yet as AvaloniaUI doesn't offer a cross-platform one
- The colour scheme differs as there's not yet support for selecting a different background brush for text ranges -- covered = blue text
- line numbers are shown, and are coloured according to any sequence point starting that line
Genbu series release 5
7.1.778
- [BUGFIX] Address problems revealed in issue #87
- The collection process now fails gracefully if the XML report is missing or broken
dotnet test
will halt after instrumentation fails, should it do so, rather than continuing to test and process the missing or broken XML report- Work round F# issue 9255 by replacing Newtonsoft as the JSON processor with one that can static link
Genbu series release 4
7.1.777
- [BUGFIX] Fix the GTK2/Framework Visualizer (broken since v6.8.761)
- Multi-monitor support for the Visualizer in all versions; the window will restore to its previous location even when placed on non-primary monitors
- Use integrated MSBuild error reporting in the data collector used by the
dotnet test
integration.
Genbu series release 3
7.1.776
- [BUGFIX] Set the
visited
attribute and CRAP score accordingly for methods with no sequence points, if the method is recorded as having been visted at all. - [BUGFIX] Exclude CRAP score for methods with no sequence points from the min/max summary values for the containing type and above (just as such methods aren't counted for the other roll-up quantities)
- Emit CRAP score values in the OpenCover style summary
- Distinguish between methods with source and no source in the threshold computations, the option to select the alternative measures (AM, AC) that include the no-source methods. Extend the
TypeSafe.Thresholds
record type with the coresponding extra fields. - On a threshold violation, always report that via return code by preference to any non-zero process value.