Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 17 additions & 19 deletions .github/workflows/dotnet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,28 @@ name: .NET Core Desktop

on:
push:
branches: [ "main" ]
branches: ["main"]
pull_request:
branches: [ "main" ]
branches: ["main"]

jobs:

build:

runs-on: windows-latest # For a list of available runner types, refer to
# https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on
runs-on: windows-latest

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Install .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Install .NET 9
uses: actions/setup-dotnet@v4
with:
dotnet-version: 9.0.x
# cache: true

- name: Execute unit tests
run: |
cd sourcecodes
dotnet build --configuration Release
dotnet test ./FolderSecurityViewer.sln --framework net8.0-windows --configuration Release
- name: Execute unit tests
run: |
cd sourcecodes
dotnet build --configuration Release
dotnet test ./FolderSecurityViewer.sln --framework net9.0-windows --configuration Release
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [v2.9.0-beta.1] - 2025-11-13

This release upgrades the entire solution to .NET 9.0, bringing performance improvements and access to the latest framework features. All dependencies have been updated.

### Changed

- Changed the target framework to .NET 9.0 across all projects [#12](https://github.com/carstenschaefer/FolderSecurityViewer/pull/12)
- Updated GitHub Actions workflow to use .NET 9.0 [#12](https://github.com/carstenschaefer/FolderSecurityViewer/pull/12)
- Updated all NuGet packages in the whole solution [#12](https://github.com/carstenschaefer/FolderSecurityViewer/pull/12)
- Updated test framework target from net8.0-windows to net9.0-windows [#12](https://github.com/carstenschaefer/FolderSecurityViewer/pull/12)
- Migrated unit tests from xUnit to MSTest framework with improved assertions [#12](https://github.com/carstenschaefer/FolderSecurityViewer/pull/12)

## [v2.8.1-beta.1] - 2024-08-24

### Changed
Expand Down
15 changes: 9 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,13 +53,16 @@ If you want to automate your NTFS permissions reporting, you can use the Command

The application can be compiled on Windows, and depends on the following Frameworks and utilities:

* .NET Framework 8.0 SDK
* Optional: Visual Studio 2022
* MSBuild version 17.9.8 or above
* .NET Framework 9.0 SDK
* Optional: Visual Studio 2026

### Platform compatibility

Ensure your target platform is supported by .NET 8; check the supported OS versions in the [.NET 8 Release Notes](https://github.com/dotnet/core/blob/main/release-notes/8.0/supported-os.md#net-8---supported-os-versions). If you need a build compatible with Windows 7 or 8, please refer to version [v2.7.0-beta.1](https://github.com/carstenschaefer/FolderSecurityViewer/releases/tag/v2.7.0-beta.1), which depends on .NET Framework 4.7 and Visual Studio.
Ensure your target platform is supported by .NET 9; check the supported OS versions in the [.NET 9 Release Notes](https://github.com/dotnet/core/blob/main/release-notes/9.0/supported-os.md).

* If you need a built targeting .NET 8, please refer to version [v2.8.1-beta.1](https://github.com/carstenschaefer/FolderSecurityViewer/releases/tag/v2.8.1-beta.1).

* If you need a build compatible with Windows 7 or 8, please refer to version [v2.7.0-beta.1](https://github.com/carstenschaefer/FolderSecurityViewer/releases/tag/v2.7.0-beta.1), which depends on .NET Framework 4.7 and Visual Studio.


### Build
Expand All @@ -73,8 +76,8 @@ $ dotnet build ./FolderSecurityViewer.sln --configuration Release

````bash
$ dotnet clean && dotnet build
$ dotnet test --framework net8.0-windows
$ dotnet test --framework net9.0-windows
````


Copyright (C) 2015 - 2024 by Carsten Schäfer, Matthias Friedrich, and Ritesh Gite
Copyright (C) 2015 - 2025 by Carsten Schäfer, Matthias Friedrich, and Ritesh Gite
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-windows</TargetFramework>
<TargetFramework>net9.0-windows</TargetFramework>
<OutputType>Library</OutputType>
<LangVersion>latest</LangVersion>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>
<PropertyGroup>
<AssemblyTitle>FSV.ActiveDirectoryServices.TestAbstractionLayer</AssemblyTitle>
<Product>FSV.ActiveDirectoryServices.TestAbstractionLayer</Product>
<Copyright>Copyright © 2015 - 2024 G-TAC Software UG</Copyright>
<Copyright>Copyright © 2015 - 2025 G-TAC Software UG</Copyright>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
<FileVersion>1.0.0.0</FileVersion>
</PropertyGroup>
Expand All @@ -17,7 +17,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="YamlDotNet">
<Version>16.0.0</Version>
<Version>16.3.0</Version>
</PackageReference>
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net9.0</TargetFramework>
<OutputType>Library</OutputType>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup>
<AssemblyTitle>FSV.AdServices.Abstractions</AssemblyTitle>
<AssemblyVersion>2.8.1</AssemblyVersion>
<AssemblyVersion>2.9.0</AssemblyVersion>
<Company>G-TAC Software UG, Katzweiler, Germany</Company>
<Copyright>Copyright © 2015 - 2024 G-TAC Software UG</Copyright>
<Copyright>Copyright © 2015 - 2025 G-TAC Software UG</Copyright>
<Description>Part of G-TAC's NTFS Permissions Reporter "FolderSecurityViewer"</Description>
<FileVersion>2.8.1</FileVersion>
<FileVersion>2.9.0</FileVersion>
<NeutralLanguage>en</NeutralLanguage>
<Product>FolderSecurityViewer</Product>
</PropertyGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// FolderSecurityViewer is an easy-to-use NTFS permissions tool that helps you effectively trace down all security owners of your data.
// FolderSecurityViewer is an easy-to-use NTFS permissions tool that helps you effectively trace down all security owners of your data.
// Copyright (C) 2015 - 2024 Carsten Schäfer, Matthias Friedrich, and Ritesh Gite
//
// This program is free software: you can redistribute it and/or modify
Expand Down Expand Up @@ -32,8 +32,8 @@ public void ActiveDirectoryLdapUtility_GetDnElementListFromLdapPath_Test()

// Assert
Assert.IsNotNull(actual);
Assert.AreEqual(3, actual.Length);
Assert.AreEqual(actual[0], "DN=Users");
Assert.HasCount(3, actual);
Assert.AreEqual("DN=Users", actual[0]);
}
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-windows</TargetFramework>
<TargetFramework>net9.0-windows</TargetFramework>
<LangVersion>latest</LangVersion>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<IsPackable>false</IsPackable>
Expand All @@ -10,21 +10,21 @@
<AnalysisLevel>none</AnalysisLevel>
<AssemblyTitle>FSV.AdServices.UnitTest</AssemblyTitle>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
<Copyright>Copyright © 2015 - 2024 G-TAC Software UG</Copyright>
<Copyright>Copyright © 2015 - 2025 G-TAC Software UG</Copyright>
<FileVersion>1.0.0.0</FileVersion>
<Product>FSV.AdServices.UnitTest</Product>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="coverlet.collector" Version="6.0.2">
<PackageReference Include="coverlet.collector" Version="6.0.4">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="8.0.1" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0"/>
<PackageReference Include="Moq" Version="4.20.70" />
<PackageReference Include="MSTest.TestAdapter" Version="3.5.0" />
<PackageReference Include="MSTest.TestFramework" Version="3.5.0" />
<PackageReference Include="System.DirectoryServices.AccountManagement" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
<PackageReference Include="Moq" Version="4.20.72" />
<PackageReference Include="MSTest.TestAdapter" Version="4.0.2" />
<PackageReference Include="MSTest.TestFramework" Version="4.0.2" />
<PackageReference Include="System.DirectoryServices.AccountManagement" Version="10.0.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\FSV.ActiveDirectoryServices.TestAbstractionLayer\FSV.ActiveDirectoryServices.TestAbstractionLayer.csproj" />
Expand Down
16 changes: 8 additions & 8 deletions sourcecodes/FSV.AdServices/FSV.AdServices.csproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-windows</TargetFramework>
<TargetFramework>net9.0-windows</TargetFramework>
<OutputType>Library</OutputType>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>
Expand All @@ -14,11 +14,11 @@
<PropertyGroup>
<AnalysisLevel>none</AnalysisLevel>
<AssemblyTitle>FSV.AdServices</AssemblyTitle>
<AssemblyVersion>2.8.1</AssemblyVersion>
<AssemblyVersion>2.9.0</AssemblyVersion>
<Company>G-TAC Software UG, Katzweiler, Germany</Company>
<Copyright>Copyright © 2015 - 2024 G-TAC Software UG</Copyright>
<Copyright>Copyright © 2015 - 2025 G-TAC Software UG</Copyright>
<Description>Part of G-TAC's NTFS Permissions Reporter "FolderSecurityViewer"</Description>
<FileVersion>2.8.1</FileVersion>
<FileVersion>2.9.0</FileVersion>
<NeutralLanguage>en</NeutralLanguage>
<Product>FolderSecurityViewer</Product>
</PropertyGroup>
Expand All @@ -33,11 +33,11 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="JetBrains.Annotations">
<Version>2024.2.0</Version>
<Version>2025.2.2</Version>
</PackageReference>
<PackageReference Include="System.Data.DataSetExtensions" Version="4.5.0" />
<PackageReference Include="System.DirectoryServices" Version="8.0.0" />
<PackageReference Include="System.DirectoryServices.AccountManagement" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="8.0.1" />
<PackageReference Include="System.DirectoryServices" Version="10.0.0" />
<PackageReference Include="System.DirectoryServices.AccountManagement" Version="10.0.0" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.0" />
</ItemGroup>
</Project>
15 changes: 9 additions & 6 deletions sourcecodes/FSV.Business.UnitTest/FSV.Business.UnitTest.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,24 @@
<AnalysisLevel>none</AnalysisLevel>
<AssemblyTitle>FSV.Business.UnitTest</AssemblyTitle>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
<Copyright>Copyright © 2015 - 2024 G-TAC Software UG</Copyright>
<Copyright>Copyright © 2015 - 2025 G-TAC Software UG</Copyright>
<FileVersion>1.0.0.0</FileVersion>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
<LangVersion>latest</LangVersion>
<OutputType>Library</OutputType>
<Product>FSV.Business.UnitTest</Product>
<TargetFramework>net8.0-windows</TargetFramework>
<TargetFramework>net9.0-windows</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
<PackageReference Include="Moq" Version="4.20.70" />
<PackageReference Include="xunit" Version="2.9.0" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
<PackageReference Include="Moq" Version="4.20.72" />
<PackageReference Include="xunit" Version="2.9.3" />
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\FSV.AdServices\FSV.AdServices.csproj" />
Expand Down
12 changes: 6 additions & 6 deletions sourcecodes/FSV.Business/FSV.Business.csproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-windows</TargetFramework>
<TargetFramework>net9.0-windows</TargetFramework>
<OutputType>Library</OutputType>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
<RestorePackages>true</RestorePackages>
Expand All @@ -9,11 +9,11 @@
</PropertyGroup>
<PropertyGroup>
<AssemblyTitle>FSV.Business</AssemblyTitle>
<AssemblyVersion>2.8.1</AssemblyVersion>
<AssemblyVersion>2.9.0</AssemblyVersion>
<Company>G-TAC Software UG, Katzweiler, Germany</Company>
<Copyright>Copyright © 2015 - 2024 G-TAC Software UG</Copyright>
<Copyright>Copyright © 2015 - 2025 G-TAC Software UG</Copyright>
<Description>Part of G-TAC's NTFS Permissions Reporter "FolderSecurityViewer"</Description>
<FileVersion>2.8.1</FileVersion>
<FileVersion>2.9.0</FileVersion>
<NeutralLanguage>en</NeutralLanguage>
<Product>FolderSecurityViewer</Product>
</PropertyGroup>
Expand Down Expand Up @@ -55,7 +55,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="System.Data.DataSetExtensions" Version="4.5.0" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="8.0.1" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="10.0.0" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.0" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AssemblyVersion>2.8.1</AssemblyVersion>
<AssemblyVersion>2.9.0</AssemblyVersion>
<Company>G-TAC Software UG, Katzweiler, Germany</Company>
<Copyright>Copyright © 2015 - 2024 G-TAC Software UG</Copyright>
<Copyright>Copyright © 2015 - 2025 G-TAC Software UG</Copyright>
<Description>Part of G-TAC's NTFS Permissions Reporter "FolderSecurityViewer"</Description>
<FileVersion>2.8.1</FileVersion>
<FileVersion>2.9.0</FileVersion>
<NeutralLanguage>en</NeutralLanguage>
<Product>FolderSecurityViewer</Product>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net9.0</TargetFramework>
<Version>2.4.1</Version>
</PropertyGroup>
</Project>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// FolderSecurityViewer is an easy-to-use NTFS permissions tool that helps you effectively trace down all security owners of your data.
// Copyright (C) 2015 - 2024 Carsten Schäfer, Matthias Friedrich, and Ritesh Gite
// Copyright (C) 2015 - 2024 Carsten Schäfer, Matthias Friedrich, and Ritesh Gite
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
Expand Down Expand Up @@ -55,7 +55,7 @@ void Act()
}

// Assert
Assert.ThrowsException<ConfigurationException>(Act);
Assert.Throws<ConfigurationException>(Act);
}
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-windows</TargetFramework>
<TargetFramework>net9.0-windows</TargetFramework>
<LangVersion>default</LangVersion>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<IsPackable>false</IsPackable>
Expand All @@ -9,7 +9,7 @@
<PropertyGroup>
<AssemblyTitle>FSV.Configuration.UnitTest</AssemblyTitle>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
<Copyright>Copyright © 2015 - 2024 G-TAC Software UG</Copyright>
<Copyright>Copyright © 2015 - 2025 G-TAC Software UG</Copyright>
<FileVersion>1.0.0.0</FileVersion>
<Product>FSV.Configuration.UnitTest</Product>
</PropertyGroup>
Expand All @@ -20,9 +20,9 @@
<ProjectReference Include="..\FSV.Extensions.Logging\FSV.Extensions.Logging.csproj" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
<PackageReference Include="Moq" Version="4.20.70" />
<PackageReference Include="MSTest.TestAdapter" Version="3.5.0" />
<PackageReference Include="MSTest.TestFramework" Version="3.5.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
<PackageReference Include="Moq" Version="4.20.72" />
<PackageReference Include="MSTest.TestAdapter" Version="4.0.2" />
<PackageReference Include="MSTest.TestFramework" Version="4.0.2" />
</ItemGroup>
</Project>
Loading
Loading