-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFileTypeDetectionLib.vbproj
More file actions
104 lines (91 loc) · 5.63 KB
/
FileTypeDetectionLib.vbproj
File metadata and controls
104 lines (91 loc) · 5.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<RootNamespace>Tomtastisch.FileClassifier</RootNamespace>
<AssemblyName>Tomtastisch.FileClassifier</AssemblyName>
<TargetFrameworks>netstandard2.0;net8.0;net10.0</TargetFrameworks>
<IsPackable>true</IsPackable>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<PackageId>Tomtastisch.FileClassifier</PackageId>
<Version>6.1.16</Version>
<PackageVersion>6.1.16</PackageVersion>
<Authors>tomtastisch</Authors>
<Description>Deterministic file type and MIME detection with fail-closed archive safety checks, secure extraction primitives, and reproducible hashing evidence for .NET.</Description>
<PackageTags>filetype;mime;detection;magic-bytes;sniffing;archive;zip;tar;7z;rar;zipslip;security;hashing;sha256;deterministic;dotnet;netstandard2.0;net8;net10</PackageTags>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<RepositoryUrl>https://github.com/tomtastisch/FileClassifier</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<PackageProjectUrl>https://github.com/tomtastisch/FileClassifier</PackageProjectUrl>
<PackageReadmeFile>README.md</PackageReadmeFile>
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
<TargetsForTfmSpecificBuildOutput>$(TargetsForTfmSpecificBuildOutput);IncludeCsCoreBuildOutput</TargetsForTfmSpecificBuildOutput>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Mime"/>
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions"/>
<PackageReference Include="Microsoft.IO.RecyclableMemoryStream"/>
<PackageReference Include="SharpCompress"/>
<PackageReference Include="System.IO.Hashing"/>
</ItemGroup>
<ItemGroup>
<Compile Remove="Providers/**/*.vb"/>
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
<PackageReference Include="System.Collections.Immutable"/>
<PackageReference Include="System.Text.Encoding.CodePages"/>
<PackageReference Include="System.Text.Json"/>
<Compile Include="Providers/NetStandard2_0/**/*.vb"/>
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0' Or '$(TargetFramework)' == 'net10.0'">
<Compile Include="Providers/Net8_0Plus/**/*.vb"/>
</ItemGroup>
<ItemGroup>
<AssemblyAttribute Include="System.Runtime.CompilerServices.InternalsVisibleTo">
<_Parameter1>FileTypeDetectionLib.Tests</_Parameter1>
</AssemblyAttribute>
</ItemGroup>
<ItemGroup>
<Import Include="Tomtastisch.FileClassifier.Infrastructure.Utils"/>
</ItemGroup>
<Target Name="RestoreCsCoreAssets"
Condition="'$(DesignTimeBuild)' != 'true' And '$(TargetFramework)' == ''"
BeforeTargets="Restore">
<MSBuild Projects="$(MSBuildThisFileDirectory)../FileClassifier.CSCore/FileClassifier.CSCore.csproj"
Targets="Restore"
Properties="Configuration=$(Configuration);RestoreLockedMode=$(RestoreLockedMode)"/>
</Target>
<Target Name="BuildCsCoreForCurrentTfm"
Condition="'$(DesignTimeBuild)' != 'true' And '$(NoBuild)' != 'true'"
BeforeTargets="Build;Pack">
<MSBuild Projects="$(MSBuildThisFileDirectory)../FileClassifier.CSCore/FileClassifier.CSCore.csproj"
Targets="Build"
Properties="Configuration=$(Configuration);TargetFramework=$(TargetFramework);Restore=false"/>
</Target>
<Target Name="IncludeCsCoreBuildOutput"
DependsOnTargets="BuildCsCoreForCurrentTfm">
<ItemGroup>
<BuildOutputInPackage Include="$(MSBuildThisFileDirectory)../FileClassifier.CSCore/bin/$(Configuration)/$(TargetFramework)/FileClassifier.CSCore.dll"
Condition="Exists('$(MSBuildThisFileDirectory)../FileClassifier.CSCore/bin/$(Configuration)/$(TargetFramework)/FileClassifier.CSCore.dll')"/>
<BuildOutputInPackage Include="$(MSBuildThisFileDirectory)../FileClassifier.CSCore/bin/$(Configuration)/$(TargetFramework)/FileClassifier.CSCore.pdb"
Condition="Exists('$(MSBuildThisFileDirectory)../FileClassifier.CSCore/bin/$(Configuration)/$(TargetFramework)/FileClassifier.CSCore.pdb')"/>
</ItemGroup>
</Target>
<Target Name="CopyCsCoreBuildOutputToTargetDir"
DependsOnTargets="BuildCsCoreForCurrentTfm"
AfterTargets="Build"
Condition="'$(DesignTimeBuild)' != 'true' And '$(TargetFramework)' != ''">
<ItemGroup>
<CsCoreRuntimeAsset Include="$(MSBuildThisFileDirectory)../FileClassifier.CSCore/bin/$(Configuration)/$(TargetFramework)/FileClassifier.CSCore.dll"
Condition="Exists('$(MSBuildThisFileDirectory)../FileClassifier.CSCore/bin/$(Configuration)/$(TargetFramework)/FileClassifier.CSCore.dll')"/>
<CsCoreRuntimeAsset Include="$(MSBuildThisFileDirectory)../FileClassifier.CSCore/bin/$(Configuration)/$(TargetFramework)/FileClassifier.CSCore.pdb"
Condition="Exists('$(MSBuildThisFileDirectory)../FileClassifier.CSCore/bin/$(Configuration)/$(TargetFramework)/FileClassifier.CSCore.pdb')"/>
</ItemGroup>
<Copy SourceFiles="@(CsCoreRuntimeAsset)"
DestinationFolder="$(TargetDir)"
SkipUnchangedFiles="true"
Condition="'@(CsCoreRuntimeAsset)' != ''"/>
</Target>
<ItemGroup>
<None Include="README.md" Pack="true" PackagePath="\"/>
</ItemGroup>
</Project>