diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml
index 9c491f3..7f8db10 100644
--- a/.github/workflows/continuous-integration.yml
+++ b/.github/workflows/continuous-integration.yml
@@ -14,7 +14,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@v5
+ - name: Setup dotnet
+ uses: actions/setup-dotnet@v5
+ with:
+ global-json-file: global.json
- name: Build
run: |
dotnet restore --verbosity minimal
@@ -24,7 +28,7 @@ jobs:
run: |
dotnet test --configuration Release --no-build --no-restore --verbosity minimal /p:ContinuousIntegrationBuild=true /p:CollectCoverage=true /p:CoverletOutputFormat=opencover /p:Include="[OrleansTestKit]*"
- name: Upload NuGet Packages
- uses: actions/upload-artifact@v4
+ uses: actions/upload-artifact@v5
with:
name: Packages
path: artifacts/Release/
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index fcc09e5..d1c806d 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -10,6 +10,12 @@ jobs:
name: Publish to NuGet
runs-on: ubuntu-latest
steps:
+ - name: Checkout
+ uses: actions/checkout@v5
+ - name: Setup dotnet
+ uses: actions/setup-dotnet@v5
+ with:
+ global-json-file: global.json
- name: Download NuGet Packages
id: download_nuget_packages
env:
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index fcf68f4..8fc6f7f 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -11,7 +11,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@v5
+ - name: Setup dotnet
+ uses: actions/setup-dotnet@v5
+ with:
+ global-json-file: global.json
- name: Build
id: build
run: |
diff --git a/.gitignore b/.gitignore
index f3120c6..9939b21 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,7 +6,7 @@
# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*
-# KDE directory preferences
+# Metadata left by Dolphin file manager, which comes with KDE Plasma
.directory
# Linux trash folder which might appear on any partition or disk
@@ -15,16 +15,18 @@
# .nfs files are created when an open file is removed but is still being accessed
.nfs*
+# Log files created by default by the nohup command
+nohup.out
+
## macOS.gitignore
## https://github.com/github/gitignore
# General
.DS_Store
+__MACOSX/
.AppleDouble
.LSOverride
-
-# Icon must end with two \r
-Icon
+Icon[
]
# Thumbnails
._*
@@ -76,7 +78,7 @@ $RECYCLE.BIN/
## JetBrains.gitignore
## https://github.com/github/gitignore
-# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
+# Covers JetBrains IDEs: IntelliJ, GoLand, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
# User-specific stuff
@@ -141,6 +143,7 @@ atlassian-ide-plugin.xml
# SonarLint plugin
.idea/sonarlint/
+.idea/sonarlint.xml # see https://community.sonarsource.com/t/is-the-file-idea-idea-idea-sonarlint-xml-intended-to-be-under-source-control/121119
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
@@ -148,12 +151,17 @@ crashlytics.properties
crashlytics-build.properties
fabric.properties
-# Editor-based Rest Client
+# Editor-based HTTP Client
.idea/httpRequests
+http-client.private.env.json
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
+# Apifox Helper cache
+.idea/.cache/.Apifox_Helper
+.idea/ApifoxUploaderProjectSetting.xml
+
## VisualStudio.gitignore
## https://github.com/github/gitignore
@@ -168,6 +176,7 @@ fabric.properties
*.user
*.userosscache
*.sln.docstates
+*.env
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
@@ -180,17 +189,37 @@ mono_crash.*
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
-x64/
-x86/
+
+[Dd]ebug/x64/
+[Dd]ebugPublic/x64/
+[Rr]elease/x64/
+[Rr]eleases/x64/
+bin/x64/
+obj/x64/
+
+[Dd]ebug/x86/
+[Dd]ebugPublic/x86/
+[Rr]elease/x86/
+[Rr]eleases/x86/
+bin/x86/
+obj/x86/
+
[Ww][Ii][Nn]32/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
+[Aa][Rr][Mm]64[Ee][Cc]/
bld/
-[Bb]in/
[Oo]bj/
+[Oo]ut/
[Ll]og/
[Ll]ogs/
+# Build results on 'Bin' directories
+**/[Bb]in/*
+# Uncomment if you have tasks that rely on *.refresh files to move binaries
+# (https://github.com/github/gitignore/pull/3736)
+#!**/[Bb]in/*.refresh
+
# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
@@ -202,12 +231,16 @@ Generated\ Files/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
+*.trx
# NUnit
*.VisualState.xml
TestResult.xml
nunit-*.xml
+# Approval Tests result files
+*.received.*
+
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
@@ -234,6 +267,7 @@ StyleCopReport.xml
*.ilk
*.meta
*.obj
+*.idb
*.iobj
*.pch
*.pdb
@@ -241,6 +275,8 @@ StyleCopReport.xml
*.pgc
*.pgd
*.rsp
+# but not Directory.Build.rsp, as it configures directory-level build defaults
+!Directory.Build.rsp
*.sbr
*.tlb
*.tli
@@ -312,6 +348,7 @@ coverage*.info
# NCrunch
_NCrunch_*
+.NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
@@ -453,9 +490,6 @@ node_modules/
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw
-# Visual Studio 6 auto-generated project file (contains which files were open etc.)
-*.vbp
-
# Visual Studio 6 workspace and project file (working project files containing files to include in project)
*.dsw
*.dsp
@@ -473,22 +507,22 @@ node_modules/
_Pvt_Extensions
# Paket dependency manager
-.paket/paket.exe
+**/.paket/paket.exe
paket-files/
# FAKE - F# Make
-.fake/
+**/.fake/
# CodeRush personal settings
-.cr/personal
+**/.cr/personal
# Python Tools for Visual Studio (PTVS)
-__pycache__/
+**/__pycache__/
*.pyc
# Cake - Uncomment if you are using it
-# tools/**
-# !tools/packages.config
+#tools/**
+#!tools/packages.config
# Tabs Studio
*.tss
@@ -510,15 +544,19 @@ ASALocalRun/
# MSBuild Binary and Structured Log
*.binlog
+MSBuild_Logs/
+
+# AWS SAM Build and Temporary Artifacts folder
+.aws-sam
# NVidia Nsight GPU debugger configuration file
*.nvuser
# MFractors (Xamarin productivity tool) working folder
-.mfractor/
+**/.mfractor/
# Local History for Visual Studio
-.localhistory/
+**/.localhistory/
# Visual Studio History (VSHistory) files
.vshistory/
@@ -530,7 +568,7 @@ healthchecksdb
MigrationBackup/
# Ionide (cross platform F# VS Code tools) working folder
-.ionide/
+**/.ionide/
# Fody - auto-generated XML schema
FodyWeavers.xsd
@@ -541,11 +579,14 @@ FodyWeavers.xsd
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
-*.code-workspace
+!.vscode/*.code-snippets
# Local History for Visual Studio Code
.history/
+# Built Visual Studio Code Extensions
+*.vsix
+
# Windows Installer files from build outputs
*.cab
*.msi
@@ -553,10 +594,6 @@ FodyWeavers.xsd
*.msm
*.msp
-# JetBrains Rider
-*.sln.iml
-.idea/
-
## VisualStudioCode.gitignore
## https://github.com/github/gitignore
@@ -566,9 +603,7 @@ FodyWeavers.xsd
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/*.code-snippets
-
-# Local History for Visual Studio Code
-.history/
+!*.code-workspace
# Built Visual Studio Code Extensions
*.vsix
diff --git a/Directory.Build.props b/Directory.Build.props
index 326fc54..e34fac6 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -8,7 +8,7 @@
dsarfati,seniorquico
Orleans TestKit
- Copyright © 2017-2021 Daniel Sarfati. 2021-2024 Kyle Dodson. All rights reserved.
+ Copyright © 2017-2021 Daniel Sarfati. 2021-2025 Kyle Dodson. All rights reserved.
diff --git a/LICENSE b/LICENSE
index 944c5ba..730bbcf 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,7 +1,7 @@
MIT License
Copyright (c) 2017-2021 Daniel Sarfati
-Copyright (c) 2021-2024 Kyle Dodson
+Copyright (c) 2021-2025 Kyle Dodson
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/OrleansTestKit.sln b/OrleansTestKit.sln
index 6c76027..691caee 100644
--- a/OrleansTestKit.sln
+++ b/OrleansTestKit.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
-VisualStudioVersion = 17.11.35312.102
+VisualStudioVersion = 17.14.36616.10
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{54C04CF7-7044-46E0-BC24-2A992F028557}"
EndProject
diff --git a/README.md b/README.md
index a8bde0b..153c842 100644
--- a/README.md
+++ b/README.md
@@ -25,14 +25,20 @@ It is recommended that you consider developing a mixture of tests based on both
## Getting Started
-There are three branches and major versions of the Orleans TestKit. The [`main`](https://github.com/OrleansContrib/OrleansTestKit/tree/main) branch provides Orleans TestKit 8, a stable version supporting Orleans 8. The [`4.x`](https://github.com/OrleansContrib/OrleansTestKit/tree/4.x) branch provides Orleans TestKit 4, a stable version supporting Microsoft Orleans 7 (during development, it was known as Orlean 4). The [`3.x`](https://github.com/OrleansContrib/OrleansTestKit/tree/3.x) branch provides Orleans TestKit 3, a stable version supporting Microsoft Orleans 3.
+There are four branches and major versions of the Orleans TestKit. The [`main`](https://github.com/OrleansContrib/OrleansTestKit/tree/main) branch provides Orleans TestKit 9, a stable version supporting Orleans 9. The [`8.x`](https://github.com/OrleansContrib/OrleansTestKit/tree/8.x) branch provides Orleans TestKit 8, a stable version supporting Microsoft Orleans 8. The [`4.x`](https://github.com/OrleansContrib/OrleansTestKit/tree/4.x) branch provides Orleans TestKit 4, a stable version supporting Microsoft Orleans 7 (during development, it was known as Orlean 4). The [`3.x`](https://github.com/OrleansContrib/OrleansTestKit/tree/3.x) branch provides Orleans TestKit 3, a stable version supporting Microsoft Orleans 3.
-If you are using Microsoft Orleans 8, install the latest, stable [`OrleansTestKit`](https://www.nuget.org/packages/OrleansTestKit) NuGet package in your test project. For example, run the following command in your Visual Studio Package Manager Console:
+If you are using Microsoft Orleans 9, install the latest, stable [`OrleansTestKit`](https://www.nuget.org/packages/OrleansTestKit) NuGet package in your test project. For example, run the following command in your Visual Studio Package Manager Console:
```pwsh
Install-Package OrleansTestKit
```
+If you are using Microsoft Orleans 8, install the latest, stable version less than 9.0 of the [`OrleansTestKit`](https://www.nuget.org/packages/OrleansTestKit) NuGet package in your test project. For example, run the following command in your Visual Studio Package Manager Console, replacing `8.x.x` with the latest version of the NuGet package less than 9.0:
+
+```pwsh
+Install-Package OrleansTestKit -Version 8.x.x
+```
+
If you are using Microsoft Orleans 7, install the latest, stable version less than 8.0 of the [`OrleansTestKit`](https://www.nuget.org/packages/OrleansTestKit) NuGet package in your test project. For example, run the following command in your Visual Studio Package Manager Console, replacing `4.x.x` with the latest version of the NuGet package less than 8.0:
```pwsh
diff --git a/global.json b/global.json
index a1440e0..7684d4f 100644
--- a/global.json
+++ b/global.json
@@ -2,6 +2,6 @@
"sdk": {
"allowPrerelease": false,
"rollForward": "latestFeature",
- "version": "8.0.401"
+ "version": "9.0.306"
}
}
diff --git a/src/OrleansTestKit/OrleansTestKit.csproj b/src/OrleansTestKit/OrleansTestKit.csproj
index 55b9d65..d1a7db8 100644
--- a/src/OrleansTestKit/OrleansTestKit.csproj
+++ b/src/OrleansTestKit/OrleansTestKit.csproj
@@ -1,4 +1,4 @@
-
+
diff --git a/test/OrleansTestKit.Tests/OrleansTestKit.Tests.csproj b/test/OrleansTestKit.Tests/OrleansTestKit.Tests.csproj
index b1ffed8..ce9cc51 100644
--- a/test/OrleansTestKit.Tests/OrleansTestKit.Tests.csproj
+++ b/test/OrleansTestKit.Tests/OrleansTestKit.Tests.csproj
@@ -6,21 +6,24 @@
-
+
all
runtime; build; native; contentfiles; analyzers
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
all
runtime; build; native; contentfiles; analyzers