vm2.Abstractions 1.0.0-preview.1

This is a prerelease version of vm2.Abstractions.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package vm2.Abstractions --version 1.0.0-preview.1
                    
NuGet\Install-Package vm2.Abstractions -Version 1.0.0-preview.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="vm2.Abstractions" Version="1.0.0-preview.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="vm2.Abstractions" Version="1.0.0-preview.1" />
                    
Directory.Packages.props
<PackageReference Include="vm2.Abstractions" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add vm2.Abstractions --version 1.0.0-preview.1
                    
#r "nuget: vm2.Abstractions, 1.0.0-preview.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package vm2.Abstractions@1.0.0-preview.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=vm2.Abstractions&version=1.0.0-preview.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=vm2.Abstractions&version=1.0.0-preview.1&prerelease
                    
Install as a Cake Tool

vm2.Abstractions

A starter vm2 package scaffold. Customize the code, tests, benchmarks, docs, and workflows as needed.

Getting started

  • Build:

    dotnet restore
    dotnet build
    
  • Test:

    • from CLI, if it is not built yet (builds on MTP v2):

      dotnet run --project test/Abstractions.Tests/Abstractions.Tests.csproj`
      
    • from CLI, if it is already built in CLI or VSCode (MTP v2):

      • any OS or shell:

        dotnet test test/Abstractions.Tests/bin/Debug/net10.0/Abstractions.Tests.dll`
        
      • on Windows CLI (already built in CLI or VSCode - on MTP v2):

        test/Abstractions.Tests/bin/Debug/net10.0/Abstractions.Tests.exe`
        
      • on Linux or MacOS CLI (already built in CLI or VSCode - on MTP v2):

        test/Abstractions.Tests/bin/Debug/net10.0/Abstractions.Tests`
        
    • from Visual Studio:

      • use the Test Explorer to build and run tests (builds on MTP v1)

      • if it is already built in Visual Studio (MTP v1), from the CLI you can run:

        dotnet test
        
  • Benchmarks (if included):

    dotnet run --project benchmarks/Abstractions.Benchmarks/Abstractions.Benchmarks.csproj --configuration Release
    

    In a personal development environment, you can run benchmarks with defined SHORT_RUN preprocessor directive. The run will be faster, although less accurate, but still suitable for quick iterations.

Package metadata

Structure

  • .github/workflows: CI, prerelease, release, clear-cache.
  • src/Abstractions: the library source code
  • test/Abstractions.Tests: xUnit + MTP tests, includes testconfig.json
  • benchmarks/Abstractions.Benchmarks: BenchmarkDotNet suite (optional)
  • examples/Abstractions.Example: minimal console sample (optional)
  • docs/: documentation starter (optional)
  • scripts/: bootstrap helpers
  • changelog/: git-cliff configs for prerelease/release changelog updates

Next steps

  • create GitHub repository using the generated bootstrap script: scripts/repo-setup.sh

  • Update README, CHANGELOG, and package metadata.

  • Set secrets and variables for workflows:

    • Set required secrets in the new GitHub repo:
      • CODECOV_TOKEN
      • BENCHER_API_TOKEN
      • NUGET_API_KEY must be issued by the selected NUGET_SERVER (below)
    • Set required variables:
      • DOTNET_VERSION: 10.0.x: the .NET SDK version to use
      • CONFIGURATION: Release: the build configuration to use (e.g., Release or Debug)
      • NUGET_SERVER: github: the NuGet server to publish to (supported values: 'github', 'nuget', or custom URI)
      • MINVERTAGPREFIX: v: Prefix for git tags to be recognized by MinVer
      • MINVERDEFAULTPRERELEASEIDENTIFIERS: preview.0: Prefix for the prerelease tag, e.g. 'preview.0', 'alpha', 'beta', 'rc', etc.
      • SAVE_PACKAGE_ARTIFACTS: false: Whether to save package artifacts after build/publish
      • MIN_COVERAGE_PCT: 80%: Minimum code coverage percentage required
      • MAX_REGRESSION_PCT: 20%: Maximum allowed regression percentage
      • RESET_BENCHMARK_THRESHOLDS: false: Whether to reset Bencher thresholds
    • Set debug flags (variables):
      • ACTIONS_RUNNER_DEBUG: false: Whether to enable GitHub Actions runner debug logging
      • ACTIONS_STEP_DEBUG: false: Whether to enable GitHub Actions step debug logging
  • Protect the main branch by enabling required checks and requiring pull requests. Suggested check names:

    • build (job id from CI workflow "CI: Build, Test, Benchmark")
    • test (job id from CI workflow "CI: Build, Test, Benchmark")
    • benchmark (job id from CI workflow "CI: Build, Test, Benchmark")
  • In GitHub repo settings, enable Actions PR automation:

    • SettingsActionsGeneralWorkflow permissions
    • enable Allow GitHub Actions to create and approve pull requests
    • required for prerelease changelog PR creation.
  • Changelog: prerelease workflow appends a prerelease section; release workflow adds a stable header with "See prereleases below." (prerelease sections stay intact).

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-preview.3 73 6/11/2026
1.0.0-preview.2 63 6/11/2026
1.0.0-preview.1 62 5/21/2026

re-try