Releases: SteveGilham/altcover
Releases · SteveGilham/altcover
Habu series release 15
Habu series release 14
8.3.838
- [GTK-VISUALIZER] Fix off-by-one error in markup for the very last line of the file
- [BUGFIX] -- Out-of-process APIs generating
dotnet test
: fix to allow activating ZipFile, MethodPoint, SingleVisit and SourceLink - [BUGFIX] -- Issue #156: Out-of-process APIs generating
dotnet test
: fix/p:AltCoverDependencyList
to work around the behaviour ofdotnet test
with an argument ending.dll
or.exe
. Users rolling their own command lines, note that the assembly list is separated and terminated with'|'
characters. The--dependency
command line argument for the tool is not affected. - [BUGFIX] -- Issue #156: Make explicit dependencies through
--dependency
have priority over other assembly resolution lookup. This works around a Mono.Cecil misfeature (Mono.Cecil issue #863) where thenetstandard2.0
Cecil binaries do not consider the GAC for Framework system assemblies, but instead will find stubs indotnet/shared/Microsoft.NETCore.App
for e.g. .net Framework WPF related assemblies - [BUGFIX] -- Improve selection of non-embedded symbol files (between location in assembly debug header, the same directory as the assembly and any
--symbolDirectory
values) to avoid symbol mismatch when there are multiple possible files on offer - Add a
--verbose
option for AltCover, the converse of-q
. Away from the command line, adds meaning to theVerbosity
option valueSystem.Diagnostics.TraceLevel.Verbose
. CurrentlyVerbose
output shows more of the selection of files for instrumentation, noting when files are excluded from the process, symbol file selection etc. - Add a matching field,
ILoggingOptions.Verbose
, to the API as a sink to capture verbose output. - Other minor build process adjustments for SDK 6.0.300/F# 6.0.4, 6.0.5
Habu series release 13
8.2.837
- [VISUALIZER] Critical bug fixes for GTK and Avalonia : mismatched new icon names causing crashes
- [VISUALIZER] Use new coverage data icon for the coverage report file, not a generic report icon
Habu series release 12
8.2.836
- [BUGFIX] Fix project file path handling in Cake support
- [BUGFIX] Improve heuristic to recognise (and ignore) state-machine injected branches in
async
methods; this may cause subtle changes, up or down, in branch detection for other generated code ("hidden" sequence points) contexts with branches - Use VS2022 icons in the Visualizer
Habu series release 11
8.2.835
- [BUGFIX] Fix tracked methods in the
Merge-OpenCover
cmdlet - [BUGFIX] Fix blocking issue in Cake support; and add operational test
- Move Fake.Build support to 5.21 as minimum; updating other supporting libraries
Habu series release 10
8.2.833
- [BUGFIX] Work-round more (problems with ill-formed debug data)[https://github.com/jbevain/cecil/issues/816] (issue #135)
- [BUGFIX] An infinite loop while instrumenting when faced with an inner function that is also a closure (also issue #135)
- [BUGFIX] Address issue #71 by pre-allocating storage for each instrumented assembly; rather than allocating on demand, with any timing related issues not adequately dealt with subject to catch-and-ignore
- For instrumented assemblies, write embedded debug symbols, independent of the input choice.
- Improved release note formatting
- Some overhaul and updating of neglected parts of the build and test script
- Reduce to a minimum the differences in the source between the net20 and net46-for-async versions of the recorder; then just rewrite the net20 version with the delta on demand.
- Some minor improvements to the data collector for
dotnet test
use, with example of how to employ explicitly in AltCover "classic" mode in the "UnitTestWithAltCoverCore
" fake build target
Habu series release 9
8.2.831
- [BUGFIX] Make the static-linked parts of the recorder assembly internal, so only the AltCover instrumentation API is exposed -- removes type duplications from the environment that may confuse run-time assembly creation e.g. by Marten (issue #133)
- For
CallContext
, add async-aware tracking for all methods returningTask
orTask<T>
not just ones with the C#async
shape. This includes functions returning the new F#6task{}
computation expression.- Note there is a support gap : running this under .net Framework less than v4.6 (i.e. a test machine with a pre-2015-JUL-20 environment) will not work, even though
Task
is a .net 4.0 feature, as the tracking support relies on .net 4.6async
features.
- Note there is a support gap : running this under .net Framework less than v4.6 (i.e. a test machine with a pre-2015-JUL-20 environment) will not work, even though
- Emit (a warning)[https://stevegilham.github.io/altcover/AltCover.Engine/AltCover/AltCover.LoggingOptions/Warn-apidoc] if any of the files input to the instrumentations have previously been instrumented, leaving those files untouched (apart from any Recorder assembly, which will still be overwritten). For
dotnet test
this is an MSBuild warning, for powershell, it is delivered viaCmdlet.WriteWarning
.- This behaviour is subject to change in future releases
- Rework of the build process to keep artifacts out of the tracked directories
Habu series release 8
8.2.828
- Absorb .net 6 release into build tooling (awaiting a non-preview updated release of (
fake.build
)[https://fake.build/] to be able to upgrade to FSharp.Core 6.x -- still have to target the v5.x library even if the build uses the F#6 compiler) - Where the debug symbols used in the instrumentation contain embedded source (e.g. from source generators), represent that within the generated report --
- for OpenCover format, as an
altcover.embed
attribute added to theFile
element - for NCover classic,
altcover.file
elements are added after themethod
records in amodule
, with attributesdocument
andembed
- and for the extended coverlet JSON format, as a type
«AltCover.embed»
with an empty method with name being the embedded text.
- for OpenCover format, as an
- [VISUALIZER] Support the extended formats for display, using the embedded source in preference to the file system whenever present
- Support these extensions in conversions between formats -- conversion to Lcov and Cobertura currently lose this information
- Other fixes/enhancements to these conversions, esp. in the cases of partial classes and inlined code
- Compute summary data correctly in the output from Json to OpenCover
- Carry both recorder versions (net20 and net46) as resources to simplify self-test behaviour
- Move baseline Cake support to v1.1.0 and Fake to v5.20.4
Habu series release 7
8.2.825
- Next release will be post .net 6 release to accommodate its impact, barring show-stoppers
- [BUGFIX] As noted in Q&A discussion (#107), satellite assemblies, and in issue #47 platform specific library subfolders, were not being copied appropriately relative to the instrumented location; this is now resolved.
- [BUGFIX] Prevent
--localSource
possibly excluding locally built assemblies using source generators. - [VISUALIZER] Fixes and updates
- On the global tool, don't put expander icons (˃) on leaf nodes, i.e. most methods, all source -- such icons are an automatic feature in GTK, but are manual in Avalonia.
- Don't throw while trying to determine if a file that doesn't exist is outdated
Habu series release 6c
8.2.824
- [VISUALIZER] Fixes and updates
- [REGRESSION] Fix where multiple source file support broke JSON coverage support
- Not all coverage reports are XML -- fix root node icon
- Add more icons indicating non-default states (files missing, changed, via sourcelink &c)
- Replace most of the annoying pop-ups with tool-tips