π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’

Independent Software Developer.
Author of AltCover. :fsharp: :dotnet:
Gentleman of leisure.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2025-11-12

AltCover (code coverage for #Dotnet built in #fsharp) v9.0.102

β€’ Net10.0 support
β€’ Fix issue #238 - some symbol errors cause instrumentation to abort rather than skip that assembly.
β€’ Move to Fake 6.1.4 for all purposes, ending legacy support for 6.0.x
β€’ Move to Cake 6.0.0 for all purposes, ending legacy support for 5.x

nuget.org/packages/altcover#re

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2025-10-15

AltCover (code coverage for #Dotnet built in #fsharp) status update

This year I've had less time free to get into code-mode, and what I've had has been mostly taken up with keeping ahead of library updates and the net10.0 previews. State of play of the net10.0 support release here -

x.com/stevegilham1/status/1978

too long a post to fit here.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2025-06-04

New blog post, about one of the more obscure things that have been holding up a new AltCover release, while I've been trying to clear years of accumulated "accidental", or no longer relevant, code from the codebase

stevegilham.blogspot.com/2025/

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-11-14

AltCover (code coverage for #Dotnet built in #fsharp) v9.0.1

* supports dotnet 9.0
* [BREAKING] Minimum platforms for the tools and API are net472, netstandard2.0 and net8.0. NOTE the recorder assembly still targets net20 (or net46 when async is detected)
* [BREAKING] Supported build scripts (Cake, Fake, MSBuild) updated to current
* [BREAKING] API change : --all and --eager replace --single and --defer (reversing sense of the flags)

See the release notes for details
nuget.org/packages/altcover/9.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-08-17

AltCover (code coverage for #Dotnet built in #fsharp) v8.9.3

* Add `-p/--package` and equivalents to specify package roots for Cobertura
* The Fake build related assemblies support Fake 6.1.0
* Revised the OpenCover to LCov conversion to speed the mapping of methods from source files.

See the release notes for details
nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-07-27

AltCover (code coverage for #Dotnet built in #fsharp) v8.8.173

Performance improvements in
* instrumentation (one hotspot in branch coverage taking 60% of the total time)
* the new Cobertura file path fix from 8.8.165

Previously v8.8.165
* [ADVISORY] affects Fake.build related assemblies
* [BUGFIX] #197 - fix file paths in Cobertura output
* [NET9 prep] - Recorder rewritten in C#

See the release notes for details
8.8.173 - nuget.org/packages/altcover/8.
8.8.165 - nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-06-28

Bugfix release for my Mono.Gendarme fork for static analysis of #DotNet code, esp. #fsharp.

* Ignore all types marked as [Microsoft.CodeAnalysis.Embedded] for the
AttributeArgumentsShouldHaveAccessorsRule

nuget.org/packages/altcode.gen

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-05-31

AltCover (code coverage for #Dotnet built in #fsharp) v8.8.74

* [BUGFIX] #222 - Distinguish methods differing only in number of generic parameters
* [BUGFIX] #223 - NRE from degenerate source paths in Cobertura output

See the release notes for details
nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-05-16

AltCover (code coverage for #Dotnet built in #fsharp) v8.8.53

β€’ [BUGFIX] Fix summary data for --outputFile option
β€’ [BUGFIX] Fix interaction of --zipFile prepare option and --outputFile collect option
β€’ [BUGFIX] Issue #220 - improve dependency resolution to the GAC

See the release notes for details

nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-04-15

AltCover (code coverage for #Dotnet built in #fsharp) v8.8.21

* Update to net6+ for dotnet test integration
* Respect the $(IsTestProject) setting
* Simplify the use of the AltCover MSBuild tasks via the associated package-level .targets file
* Mitigate instances of System.IO.IOException: The process cannot access the file '[coverage report]' because it is being used by another process.
* Explicitly scan GAC locations for dependency resolution

See release notes
nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-04-06

AltCover (code coverage for #Dotnet built in #fsharp) v8.8.10

[BUGFIX] Add Json member to the report format enumerations for the typesafe API and for the InvokeAltCover cmdlet.
[BUGFIX] Issue #214 - patch Mono.Cecil to use FIPS compliant algorithm
[Enhancement] Discussion #206, maybe also Issue #203 : Option --portable and equivalent APIs for coverage testing on other machines than where instrumented

See the release notes for details

nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-03-14

AltCover (code coverage for #Dotnet built in #fsharp) v8.7.3

* Tidy the temporary .runsettings files more carefully
* For dotnet test, allow placing instrumented files other than under $(TargetDir), for cases when that would broach the MAX_PATH limit

See the release notes for details

nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2024-01-21

Latest release of my #fsharp test wrappers that make Actual and Expected explicit, to catch up with latest library releases (mostly NUnit 4)

v2.0.48
*support Expecto β‰₯ 10.1.0, NUnit β‰₯ 4.0.1, Xunit β‰₯ 2.4.2, FSharp.Core β‰₯ 8.0.100
*runtime support driven by the consumed packages
Expecto support on net6.0
NUnit support on net462 and net6.0
Xunit support on netstandard2.0
*NUnit support does not rely on the legacy ClassicAssert assembly

On github & nuget

github.com/SteveGilham/altcode

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2023-12-27

Christmas time means a chance for some coding time!

Bugfix release for my Mono.Gendarme fork for static analysis of #DotNet code, esp. #fsharp.

* Net8.0 support (& built)
* Ignore malformed injected System/Microsoft types [DynamicDependency], [Nullable], [Embedded] & enum DynamicallyAccessedMemberTypes

nuget.org/packages/altcode.gen

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2023-11-15

AltCover (code coverage for #Dotnet built in #fsharp) v8.6.95
Housekeeping release only

* Supports net8.0 final
* Other dependency updates.
* Minor housekeeping changes, but no actual new features.

See the release notes for details

nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2023-11-02

After a couple of weeks of distractions I finally got around to getting my #OpenSilver in #fsharp test applet running, working around quirks from changes that should in time make things simpler with proper language support - I've blogged the update here

stevegilham.blogspot.com/2023/

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2023-08-28

New release of my Gendarme fork for static analysis of #dotnet

The latest (7.0.400) & all 8.0pv #fsharp compilers drop some scruffy code (incl. an unsealed internal Attribute type w/o a usage attribute) into most assemblies, this release recognises & ignores these injections.

nuget.org/packages/altcode.gen

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’ boosted:
Sergey Tihon has gone to πŸ¦‹sergey_tihon@hachyderm.io
2023-07-23

F# Weekly #29, 2023 – .NET Lambda Annotations Framework (AWS) #fsharp
sergeytihon.com/2023/07/22/f-w

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’stevegilham@dotnet.social
2023-07-10

AltCover (code coverage for #Dotnet built in #fsharp) v8.6.68
* Omit anonymous types (C#) and records (F#) from coverage just as for automatic properties, as they contain no coverage information
* Supports net8.0 preview 5

See the release notes for details
nuget.org/packages/altcover/8.

π•Ύπ–™π–Šπ–›π–Š π•²π–Žπ–‘π–π–†π–’ boosted:
Sergey Tihon has gone to πŸ¦‹sergey_tihon@hachyderm.io
2023-07-10

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst