New: Use dotnet tooling, produce 64bit build on windows

This commit is contained in:
ta264 2019-10-14 21:20:59 +01:00 committed by Qstick
parent 304382f406
commit 0b0d0a7353
42 changed files with 657 additions and 268 deletions

View File

@ -17,6 +17,7 @@ variables:
macOsTar: 'Radarr.$(buildName).osx.tar.gz'
linuxTar: 'Radarr.$(buildName).linux.tar.gz'
sentryOrg: 'radarr'
dotnetVersion: '2.2.401'
trigger:
branches:
@ -55,14 +56,33 @@ stages:
- checkout: self
submodules: true
fetchDepth: 1
- task: DotNetCoreInstaller@0
displayName: 'Install .net core 2.2'
inputs:
version: $(dotnetVersion)
- bash: ./build.sh --only-backend
displayName: Build Radarr Backend
- bash: |
find ${OUTPUTFOLDER} -type f ! -path "*/publish/*" -exec rm -rf {} \;
find ${OUTPUTFOLDER} -depth -empty -type d -exec rm -r "{}" \;
find ${TESTSFOLDER} -type f ! -path "*/publish/*" -exec rm -rf {} \;
find ${TESTSFOLDER} -depth -empty -type d -exec rm -r "{}" \;
ls -lR
displayName: Clean up intermediate output
- publish: $(outputFolder)
artifact: '$(osName)Backend'
displayName: Publish Backend
condition: and(succeeded(), eq(variables['osName'], 'Windows'))
- publish: $(testsFolder)
artifact: '$(osName)Tests'
- publish: '$(testsFolder)/net462/win-x64/publish'
artifact: WindowsTests
displayName: Publish Test Package
condition: and(succeeded(), eq(variables['osName'], 'Windows'))
- publish: '$(testsFolder)/net462/linux-x64/publish'
artifact: LinuxTests
displayName: Publish Test Package
condition: and(succeeded(), eq(variables['osName'], 'Windows'))
- publish: '$(testsFolder)/net462/osx-x64/publish'
artifact: MacTests
displayName: Publish Test Package
condition: and(succeeded(), eq(variables['osName'], 'Windows'))
@ -141,7 +161,7 @@ stages:
pool:
vmImage: 'ubuntu-16.04'
steps:
- bash: sudo apt install dos2unix
- bash: sudo apt-get install dos2unix
- checkout: self
fetchDepth: 1
- task: DownloadPipelineArtifact@2
@ -161,6 +181,7 @@ stages:
- bash: |
chmod a+x $(artifactsFolder)/macos/Radarr/Radarr
chmod a+x $(artifactsFolder)/macos-app/Radarr.app/Contents/MacOS/Radarr
find . -name "Radarr.Console" -exec chmod a+x {} \;
displayName: Set Mac executable bits
- task: ArchiveFiles@2
displayName: Create Windows zip
@ -168,14 +189,14 @@ stages:
archiveFile: '$(Build.ArtifactStagingDirectory)/$(windowsZip)'
archiveType: 'zip'
includeRootFolder: false
rootFolderOrFile: $(artifactsFolder)/windows
rootFolderOrFile: $(artifactsFolder)/windows/net462
- task: ArchiveFiles@2
displayName: Create MacOS app
inputs:
archiveFile: '$(Build.ArtifactStagingDirectory)/$(macOsApp)'
archiveType: 'zip'
includeRootFolder: false
rootFolderOrFile: $(artifactsFolder)/macos-app
rootFolderOrFile: $(artifactsFolder)/macos-app/net462
- task: ArchiveFiles@2
displayName: Create MacOS tar
inputs:
@ -183,7 +204,7 @@ stages:
archiveType: 'tar'
tarCompression: 'gz'
includeRootFolder: false
rootFolderOrFile: $(artifactsFolder)/macos
rootFolderOrFile: $(artifactsFolder)/macos/net462
- task: ArchiveFiles@2
displayName: Create Linux tar
inputs:
@ -191,7 +212,7 @@ stages:
archiveType: 'tar'
tarCompression: 'gz'
includeRootFolder: false
rootFolderOrFile: $(artifactsFolder)/linux
rootFolderOrFile: $(artifactsFolder)/linux/net462
- publish: $(Build.ArtifactStagingDirectory)
artifact: 'Packages'
displayName: Publish Packages
@ -235,35 +256,37 @@ stages:
steps:
- checkout: none
- task: DotNetCoreInstaller@0
displayName: 'Install .net core 2.2'
inputs:
version: $(dotnetVersion)
- task: DownloadPipelineArtifact@2
displayName: Download Test Artifact
inputs:
buildType: 'current'
artifactName: WindowsTests
artifactName: '$(osName)Tests'
targetPath: $(testsFolder)
- bash: |
wget https://mediaarea.net/repo/deb/repo-mediaarea_1.0-9_all.deb
sudo dpkg -i repo-mediaarea_1.0-9_all.deb
sudo apt-get update
sudo apt-get install -y libmediainfo-dev libmediainfo0v5 mediainfo
displayName: Install mediainfo
sudo ln -s /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 /usr/lib/x86_64-linux-gnu/libsqlite3.so
displayName: Install mediainfo and fix sqlite
condition: and(succeeded(), eq(variables['osName'], 'Linux'))
- powershell: Set-Service SCardSvr -StartupType Manual
displayName: Enable Windows Test Service
condition: and(succeeded(), eq(variables['osName'], 'Windows'))
- bash: find ${TESTSFOLDER} -name "Radarr.Test.Dummy" -exec chmod a+x {} \;
displayName: Make Test Dummy Executable
- task: Bash@3
displayName: Run Tests
env:
DYLD_FALLBACK_LIBRARY_PATH: $(Build.SourcesDirectory)/_tests
TEST_DIR: $(Build.SourcesDirectory)/_tests
inputs:
targetType: 'filePath'
filePath: '$(testsFolder)/test.sh'
arguments: '$(osName) Unit Test'
- publish: TestResult.xml
artifact: 'TestResult'
displayName: Publish Test Result
condition: and(succeeded(), eq(variables['osName'], 'Windows'))
- task: PublishTestResults@2
displayName: Publish Test Results
inputs:
@ -305,12 +328,20 @@ stages:
echo "##vso[task.setvariable variable=PATH;]$MONOPREFIX/bin:$PATH"
displayName: Set Mono Version
condition: and(succeeded(), eq(variables['osName'], 'Mac'))
- bash: |
sudo ln -s /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 /usr/lib/x86_64-linux-gnu/libsqlite3.so
displayName: Fix sqlite
condition: and(succeeded(), eq(variables['osName'], 'Linux'))
- task: DotNetCoreInstaller@0
displayName: 'Install .net core 2.2'
inputs:
version: $(dotnetVersion)
- checkout: none
- task: DownloadPipelineArtifact@2
displayName: Download Test Artifact
inputs:
buildType: 'current'
artifactName: WindowsTests
artifactName: '$(osName)Tests'
targetPath: $(testsFolder)
- task: DownloadPipelineArtifact@2
displayName: Download Build Artifact
@ -327,6 +358,7 @@ stages:
- bash: |
mkdir -p ./bin/
cp -r -v ${BUILD_ARTIFACTSTAGINGDIRECTORY}/bin/Radarr/. ./bin/
ls -lR
displayName: Move Package Contents
- task: Bash@3
displayName: Run Integration Tests
@ -365,12 +397,20 @@ stages:
vmImage: $(imageName)
steps:
- bash: |
sudo ln -s /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 /usr/lib/x86_64-linux-gnu/libsqlite3.so
displayName: Fix sqlite
condition: and(succeeded(), eq(variables['osName'], 'Linux'))
- task: DotNetCoreInstaller@0
displayName: 'Install .net core 2.2'
inputs:
version: $(dotnetVersion)
- checkout: none
- task: DownloadPipelineArtifact@2
displayName: Download Test Artifact
inputs:
buildType: 'current'
artifactName: WindowsTests
artifactName: '$(osName)Tests'
targetPath: $(testsFolder)
- task: DownloadPipelineArtifact@2
displayName: Download Build Artifact

249
build.sh
View File

@ -1,24 +1,13 @@
#! /bin/bash
msBuildVersion='15.0'
outputFolder='./_output'
outputFolderLinux='./_output_linux'
outputFolderMacOS='./_output_macos'
outputFolderMacOSApp='./_output_macos_app'
testPackageFolder='./_tests/'
sourceFolder='./src'
slnFile=$sourceFolder/Radarr.sln
updateFolder=$outputFolder/Radarr.Update
updateFolderMono=$outputFolderLinux/Radarr.Update
#Artifact variables
artifactsFolder="./_artifacts";
artifactsFolderWindows=$artifactsFolder/windows
artifactsFolderLinux=$artifactsFolder/linux
artifactsFolderMacOS=$artifactsFolder/macos
artifactsFolderMacOSApp=$artifactsFolder/macos-app
nuget='tools/nuget/nuget.exe';
vswhere='tools/vswhere/vswhere.exe';
CheckExitCode()
{
@ -53,14 +42,9 @@ UpdateVersionNumber()
CleanFolder()
{
local path=$1
local keepConfigFiles=$2
find $path -name "*.transform" -exec rm "{}" \;
if [ $keepConfigFiles != true ] ; then
find $path -name "*.dll.config" -exec rm "{}" \;
fi
echo "Removing FluentValidation.Resources files"
find $path -name "FluentValidation.resources.dll" -exec rm "{}" \;
find $path -name "App.config" -exec rm "{}" \;
@ -68,39 +52,10 @@ CleanFolder()
echo "Removing vshost files"
find $path -name "*.vshost.exe" -exec rm "{}" \;
echo "Removing dylib files"
find $path -name "*.dylib" -exec rm "{}" \;
echo "Removing Empty folders"
find $path -depth -empty -type d -exec rm -r "{}" \;
}
BuildWithMSBuild()
{
installationPath=`$vswhere -latest -products \* -requires Microsoft.Component.MSBuild -property installationPath`
installationPath=${installationPath/C:\\/\/c\/}
installationPath=${installationPath//\\/\/}
msBuild="$installationPath/MSBuild/$msBuildVersion/Bin"
echo $msBuild
export PATH=$msBuild:$PATH
CheckExitCode MSBuild.exe $slnFile //p:Configuration=Debug //p:Platform=x86 //t:Clean //m
CheckExitCode MSBuild.exe $slnFile //p:Configuration=Release //p:Platform=x86 //t:Clean //m
$nuget locals all -clear
$nuget restore $slnFile
CheckExitCode MSBuild.exe $slnFile //p:Configuration=Release //p:Platform=x86 //t:Build //m //p:AllowedReferenceRelatedFileExtensions=.pdb
}
BuildWithXbuild()
{
export MONO_IOMAP=case
CheckExitCode msbuild /p:Configuration=Debug /t:Clean $slnFile
CheckExitCode msbuild /p:Configuration=Release /t:Clean $slnFile
mono $nuget locals all -clear
mono $nuget restore $slnFile
CheckExitCode msbuild /p:Configuration=Release /p:Platform=x86 /t:Build /p:AllowedReferenceRelatedFileExtensions=.pdb $slnFile
}
LintUI()
{
ProgressStart 'ESLint'
@ -119,19 +74,9 @@ Build()
rm -rf $outputFolder
rm -rf $testPackageFolder
if [ $runtime = "dotnet" ] ; then
BuildWithMSBuild
else
BuildWithXbuild
fi
CleanFolder $outputFolder false
echo "Removing Mono.Posix.dll"
rm $outputFolder/Mono.Posix.dll
echo "Adding LICENSE.md"
cp LICENSE.md $outputFolder
CheckExitCode dotnet clean $slnFile -c Debug
CheckExitCode dotnet clean $slnFile -c Release
CheckExitCode dotnet msbuild -restore src/Radarr.sln -p:Configuration=Release -t:PublishAllRids
ProgressEnd 'Build'
}
@ -149,89 +94,104 @@ RunGulp()
ProgressEnd 'Running gulp'
}
PackageMono()
PackageFiles()
{
ProgressStart 'Creating Mono Package'
local folder="$1"
local framework="$2"
local runtime="$3"
rm -rf $outputFolderLinux
rm -rf $folder
mkdir -p $folder
cp -r $outputFolder/$framework/$runtime/publish/* $folder
cp -r $outputFolder/Radarr.Update/$framework/$runtime/publish $folder/Radarr.Update
cp -r $outputFolder/UI $folder
echo "Copying Binaries"
cp -r $outputFolder $outputFolderLinux
CleanFolder $folder
echo "Adding LICENSE"
cp LICENSE $folder
}
PackageLinux()
{
local framework="$1"
ProgressStart "Creating Linux Package for $framework"
local folder=$artifactsFolder/linux/$framework/Radarr
PackageFiles "$folder" $framework $runtime "linux-x64"
echo "Removing Service helpers"
rm -f $outputFolderLinux/ServiceUninstall.*
rm -f $outputFolderLinux/ServiceInstall.*
echo "Removing native windows binaries Sqlite, MediaInfo"
rm -f $outputFolderLinux/sqlite3.*
rm -f $outputFolderLinux/MediaInfo.*
echo "Adding Radarr.Core.dll.config (for dllmap)"
cp $sourceFolder/NzbDrone.Core/Radarr.Core.dll.config $outputFolderLinux
rm -f $folder/ServiceUninstall.*
rm -f $folder/ServiceInstall.*
echo "Renaming Radarr.Console.exe to Radarr.exe"
rm $outputFolderLinux/Radarr.exe*
for file in $outputFolderLinux/Radarr.Console.exe*; do
rm $folder/Radarr.exe*
for file in $folder/Radarr.Console.exe*; do
mv "$file" "${file//.Console/}"
done
echo "Removing Radarr.Windows"
rm $outputFolderLinux/Radarr.Windows.*
rm $folder/Radarr.Windows.*
echo "Adding Radarr.Mono to UpdatePackage"
cp $outputFolderLinux/Radarr.Mono.* $updateFolderMono
cp $folder/Radarr.Mono.* $folder/Radarr.Update
ProgressEnd 'Creating Mono Package'
ProgressEnd "Creating Linux Package for $framework"
}
PackageMacOS()
{
ProgressStart 'Creating MacOS Package'
local framework="$1"
ProgressStart "Creating MacOS Package for $framework"
rm -rf $outputFolderMacOS
mkdir $outputFolderMacOS
local folder=$artifactsFolder/macos/$framework/Radarr
PackageFiles "$folder" "$framework" "osx-x64"
echo "Adding Startup script"
cp ./macOS/Radarr $outputFolderMacOS
dos2unix $outputFolderMacOS/Radarr
cp ./macOS/Radarr $folder
dos2unix $folder/Radarr
echo "Copying Binaries"
cp -r $outputFolderLinux/* $outputFolderMacOS
echo "Removing Service helpers"
rm -f $folder/ServiceUninstall.*
rm -f $folder/ServiceInstall.*
echo "Adding sqlite dylibs"
cp $sourceFolder/Libraries/Sqlite/*.dylib $outputFolderMacOS
echo "Renaming Radarr.Console.exe to Radarr.exe"
rm $folder/Radarr.exe*
for file in $folder/Radarr.Console.exe*; do
mv "$file" "${file//.Console/}"
done
echo "Adding MediaInfo dylib"
cp $sourceFolder/Libraries/MediaInfo/*.dylib $outputFolderMacOS
echo "Removing Radarr.Windows"
rm $folder/Radarr.Windows.*
echo "Adding Radarr.Mono to UpdatePackage"
cp $folder/Radarr.Mono.* $folder/Radarr.Update
ProgressEnd 'Creating MacOS Package'
}
PackageMacOSApp()
{
ProgressStart 'Creating macOS App Package'
local framework="$1"
ProgressStart "Creating macOS App Package for $framework"
rm -rf $outputFolderMacOSApp
mkdir $outputFolderMacOSApp
cp -r ./macOS/Radarr.app $outputFolderMacOSApp
mkdir -p $outputFolderMacOSApp/Radarr.app/Contents/MacOS
local folder=$artifactsFolder/macos-app/$framework
echo "Adding Startup script"
cp ./macOS/Radarr $outputFolderMacOSApp/Radarr.app/Contents/MacOS
dos2unix $outputFolderMacOSApp/Radarr.app/Contents/MacOS/Radarr
rm -rf $folder
mkdir -p $folder
cp -r ./macOS/Radarr.app $folder
mkdir -p $folder/Radarr.app/Contents/MacOS
echo "Copying Binaries"
cp -r $outputFolderLinux/* $outputFolderMacOSApp/Radarr.app/Contents/MacOS
echo "Adding sqlite dylibs"
cp $sourceFolder/Libraries/Sqlite/*.dylib $outputFolderMacOSApp/Radarr.app/Contents/MacOS
echo "Adding MediaInfo dylib"
cp $sourceFolder/Libraries/MediaInfo/*.dylib $outputFolderMacOSApp/Radarr.app/Contents/MacOS
cp -r $artifactsFolder/macos/$framework/Radarr/* $folder/Radarr.app/Contents/MacOS
echo "Removing Update Folder"
rm -r $outputFolderMacOSApp/Radarr.app/Contents/MacOS/Radarr.Update
rm -r $folder/Radarr.app/Contents/MacOS/Radarr.Update
ProgressEnd 'Creating macOS App Package'
}
@ -240,70 +200,60 @@ PackageTests()
{
ProgressStart 'Creating Test Package'
if [ $runtime = "dotnet" ] ; then
$nuget install NUnit.ConsoleRunner -Version 3.10.0 -Output $testPackageFolder
cp ./test.sh $testPackageFolder/net462/win-x64/publish
cp ./test.sh $testPackageFolder/net462/linux-x64/publish
cp ./test.sh $testPackageFolder/net462/osx-x64/publish
if [ $os = "windows" ] ; then
$nuget install NUnit.ConsoleRunner -Version 3.10.0 -Output $testPackageFolder/net462/win-x64/publish
$nuget install NUnit.ConsoleRunner -Version 3.10.0 -Output $testPackageFolder/net462/linux-x64/publish
$nuget install NUnit.ConsoleRunner -Version 3.10.0 -Output $testPackageFolder/net462/osx-x64/publish
else
mono $nuget install NUnit.ConsoleRunner -Version 3.10.0 -Output $testPackageFolder
mono $nuget install NUnit.ConsoleRunner -Version 3.10.0 -Output $testPackageFolder/net462/win-x64/publish
mono $nuget install NUnit.ConsoleRunner -Version 3.10.0 -Output $testPackageFolder/net462/linux-x64/publish
mono $nuget install NUnit.ConsoleRunner -Version 3.10.0 -Output $testPackageFolder/net462/osx-x64/publish
fi
cp ./test.sh $testPackageFolder
rm -f $testPackageFolder/*.log.config
CleanFolder $testPackageFolder true
# geckodriver.exe isn't copied by dotnet publish
curl -Lo gecko.zip "https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v0.24.0-win64.zip"
unzip -o gecko.zip
cp geckodriver.exe $testPackageFolder/net462/win-x64/publish
echo "Adding Radarr.Core.dll.config (for dllmap)"
cp $sourceFolder/NzbDrone.Core/Radarr.Core.dll.config $testPackageFolder
echo "Adding sqlite dylibs"
cp $sourceFolder/Libraries/Sqlite/*.dylib $testPackageFolder
CleanFolder $testPackageFolder
ProgressEnd 'Creating Test Package'
}
CleanupWindowsPackage()
PackageWindows()
{
ProgressStart 'Cleaning Windows Package'
local framework="$1"
ProgressStart "Creating Windows Package for $framework"
local folder=$artifactsFolder/windows/$framework/Radarr
PackageFiles "$folder" "net462" "win-x64"
echo "Removing Radarr.Mono"
rm -f $outputFolder/Radarr.Mono.*
rm -f $folder/Radarr.Mono.*
echo "Adding Radarr.Windows to UpdatePackage"
cp $outputFolder/Radarr.Windows.* $updateFolder
cp $folder/Radarr.Windows.* $folder/Radarr.Update
ProgressEnd 'Cleaning Windows Package'
}
PackageArtifacts()
{
echo "Creating Artifact Directories"
rm -rf $artifactsFolder
mkdir $artifactsFolder
mkdir $artifactsFolderWindows
mkdir $artifactsFolderMacOS
mkdir $artifactsFolderLinux
mkdir $artifactsFolderWindows/Radarr
mkdir $artifactsFolderMacOS/Radarr
mkdir $artifactsFolderLinux/Radarr
mkdir $artifactsFolderMacOSApp
cp -r $outputFolder/* $artifactsFolderWindows/Radarr
cp -r $outputFolderMacOSApp/* $artifactsFolderMacOSApp
cp -r $outputFolderMacOS/* $artifactsFolderMacOS/Radarr
cp -r $outputFolderLinux/* $artifactsFolderLinux/Radarr
ProgressEnd 'Creating Windows Package'
}
# Use mono or .net depending on OS
case "$(uname -s)" in
CYGWIN*|MINGW32*|MINGW64*|MSYS*)
# on windows, use dotnet
runtime="dotnet"
os="windows"
;;
*)
# otherwise use mono
runtime="mono"
os="posix"
;;
esac
@ -350,9 +300,8 @@ fi
# Only package if we haven't set only-backend or only-frontend
if [ -z "$ONLY_BACKEND" ] && [ -z "$ONLY_FRONTEND" ];
then
PackageMono
PackageMacOS
PackageMacOSApp
CleanupWindowsPackage
PackageArtifacts
PackageWindows "net462"
PackageLinux "net462"
PackageMacOS "net462"
PackageMacOSApp "net462"
fi

View File

@ -47,8 +47,8 @@ Name: "startupShortcut"; Description: "Create shortcut in Startup folder (Starts
Name: "none"; Description: "Do not start automatically"; GroupDescription: "Start automatically"; Flags: exclusive unchecked
[Files]
Source: "..\_output\Radarr.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\_output\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "..\_artifacts\windows\net462\Radarr\Radarr.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\_artifacts\windows\net462\Radarr\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Icons]

View File

@ -1,6 +1,10 @@
<Project>
<!-- Common to all Radarr Projects -->
<PropertyGroup>
<PlatformTarget>AnyCPU</PlatformTarget>
<TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
<RuntimeIdentifiers>win-x64;osx-x64;linux-x64</RuntimeIdentifiers>
<RadarrRootDir>$(MSBuildThisFileDirectory)..\</RadarrRootDir>
<!-- Specifies the type of output -->
@ -63,6 +67,7 @@
<Deterministic Condition="$(AssemblyVersion.EndsWith('*'))">False</Deterministic>
</PropertyGroup>
<!-- Set the AssemblyConfiguration attribute for projects -->
<ItemGroup Condition="'$(RadarrProject)'=='true'">
<AssemblyAttribute Include="System.Reflection.AssemblyConfigurationAttribute">
@ -71,10 +76,55 @@
</ItemGroup>
<PropertyGroup>
<!-- We don't want separate framework directories till we go dotnet core -->
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<!-- For now keep the NzbDrone namespace -->
<RootNamespace Condition="'$(RadarrProject)'=='true'">$(MSBuildProjectName.Replace('Radarr','NzbDrone'))</RootNamespace>
</PropertyGroup>
<!-- Allow building net framework using mono -->
<ItemGroup>
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.0-preview.2">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>
<!--
Set runtime identifier to local system type if not specified
-->
<Choose>
<When Condition="'$(OS)' == 'Windows_NT'">
<PropertyGroup>
<IsWindows>true</IsWindows>
</PropertyGroup>
</When>
<When Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX)))' == 'true'">
<PropertyGroup>
<IsOSX>true</IsOSX>
</PropertyGroup>
</When>
<Otherwise>
<PropertyGroup>
<IsLinux>true</IsLinux>
</PropertyGroup>
</Otherwise>
</Choose>
<PropertyGroup Condition="'$(IsWindows)' == 'true' and
'$(RuntimeIdentifier)' == ''">
<_UsingDefaultRuntimeIdentifier>true</_UsingDefaultRuntimeIdentifier>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
</PropertyGroup>
<PropertyGroup Condition="'$(IsLinux)' == 'true' and
'$(RuntimeIdentifier)' == ''">
<_UsingDefaultRuntimeIdentifier>true</_UsingDefaultRuntimeIdentifier>
<RuntimeIdentifier>linux-x64</RuntimeIdentifier>
</PropertyGroup>
<PropertyGroup Condition="'$(IsOSX)' == 'true' and
'$(RuntimeIdentifier)' == ''">
<_UsingDefaultRuntimeIdentifier>true</_UsingDefaultRuntimeIdentifier>
<RuntimeIdentifier>osx-x64</RuntimeIdentifier>
</PropertyGroup>
</Project>

View File

@ -0,0 +1,4 @@
<Project>
<Import Project="PublishAllRids.targets" />
<Import Project="MonoFacades.targets" Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' and !$(RuntimeIdentifier.StartsWith('win'))" />
</Project>

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
<AssemblyVersion>3.17.0.0</AssemblyVersion>
<GenerateAssemblyFileVersionAttribute>false</GenerateAssemblyFileVersionAttribute>

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
<Version>9.0.21022</Version>
</PropertyGroup>

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NBuilder" Version="6.0.1" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="FluentValidation" Version="8.4.0" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Selenium.Firefox.WebDriver" Version="0.24.0" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\NzbDrone.Host\Radarr.Host.csproj" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="DotNet4.SocksProxy" Version="1.4.0.1" />

View File

@ -1,13 +1,15 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
<ApplicationIcon>..\NzbDrone.Host\Radarr.ico</ApplicationIcon>
<ApplicationManifest>app.manifest</ApplicationManifest>
</PropertyGroup>
<PropertyGroup Condition="!$(RuntimeIdentifier.StartsWith('win'))">
<AssemblyName>Radarr</AssemblyName>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\NzbDrone.Host\Radarr.Host.csproj" />
</ItemGroup>
</Project>
</Project>

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NBuilder" Version="6.0.1" />
@ -22,4 +21,24 @@
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
<Target Name="CopyWindowsRuntimesOnBuild" AfterTargets="AfterBuild" Condition="'$(RuntimeIdentifier)'=='win-x64'">
<Copy SourceFiles="..\Libraries\MediaInfo\MediaInfo.dll" DestinationFolder="$(OutDir)" />
</Target>
<Target Name="CopyWindowsRuntimesOnPublish" AfterTargets="Publish" Condition="'$(RuntimeIdentifier)'=='win-x64'">
<Copy SourceFiles="..\Libraries\MediaInfo\MediaInfo.dll" DestinationFolder="$(PublishDir)" />
</Target>
<Target Name="CopyMacOSRuntimesOnBuild" AfterTargets="AfterBuild" Condition="'$(RuntimeIdentifier)'=='osx-x64'">
<Copy SourceFiles="..\Libraries\MediaInfo\libmediainfo.dylib" DestinationFolder="$(OutDir)" />
<Copy SourceFiles="..\NzbDrone.Core\Radarr.Core.dll.config" DestinationFolder="$(OutDir)" />
</Target>
<Target Name="CopyMacOSRuntimesOnPublish" AfterTargets="Publish" Condition="'$(RuntimeIdentifier)'=='osx-x64'">
<Copy SourceFiles="..\Libraries\MediaInfo\libmediainfo.dylib" DestinationFolder="$(PublishDir)" />
<Copy SourceFiles="..\NzbDrone.Core\Radarr.Core.dll.config" DestinationFolder="$(PublishDir)" />
</Target>
<Target Name="CopyLinuxRuntimesOnBuild" AfterTargets="AfterBuild" Condition="'$(RuntimeIdentifier)'=='linux-x64'">
<Copy SourceFiles="..\NzbDrone.Core\Radarr.Core.dll.config" DestinationFolder="$(OutDir)" />
</Target>
<Target Name="CopyLinuxRuntimesOnPublish" AfterTargets="Publish" Condition="'$(RuntimeIdentifier)'=='linux-x64'">
<Copy SourceFiles="..\NzbDrone.Core\Radarr.Core.dll.config" DestinationFolder="$(PublishDir)" />
</Target>
</Project>

View File

@ -201,9 +201,7 @@ namespace NzbDrone.Core.Configuration
}
}
// public string UiFolder => GetValue("UiFolder", "UI", false);GetValue("UiFolder", "UI", false);
public string UiFolder => "UI";
public string UiFolder => BuildInfo.IsDebug ? Path.Combine("..", "UI") : "UI";
public bool UpdateAutomatically => GetValueBoolean("UpdateAutomatically", false, false);

View File

@ -312,58 +312,58 @@ namespace NzbDrone.Core.MediaFiles.MediaInfo
return (int)MediaInfo_Count_Get(_handle, (IntPtr)streamKind, (IntPtr)streamNumber);
}
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_New();
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern void MediaInfo_Delete(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_Open(IntPtr handle, IntPtr fileName);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_Open_Buffer_Init(IntPtr handle, long fileSize, long fileOffset);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_Open_Buffer_Continue(IntPtr handle, byte[] buffer, IntPtr bufferSize);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern long MediaInfo_Open_Buffer_Continue_GoTo_Get(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_Open_Buffer_Finalize(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern void MediaInfo_Close(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_GetI(IntPtr handle, IntPtr streamKind, IntPtr streamNumber, IntPtr parameter, IntPtr infoKind);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_Get(IntPtr handle, IntPtr streamKind, IntPtr streamNumber, IntPtr parameter, IntPtr infoKind, IntPtr searchKind);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_Option(IntPtr handle, IntPtr option, IntPtr value);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_State_Get(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfo_Count_Get(IntPtr handle, IntPtr StreamKind, IntPtr streamNumber);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_New();
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern void MediaInfoA_Delete(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_Open(IntPtr handle, IntPtr fileName);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_Open_Buffer_Init(IntPtr handle, long fileSize, long fileOffset);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_Open_Buffer_Continue(IntPtr handle, byte[] buffer, IntPtr bufferSize);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern long MediaInfoA_Open_Buffer_Continue_GoTo_Get(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_Open_Buffer_Finalize(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern void MediaInfoA_Close(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_GetI(IntPtr handle, IntPtr streamKind, IntPtr streamNumber, IntPtr parameter, IntPtr infoKind);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_Get(IntPtr handle, IntPtr streamKind, IntPtr streamNumber, IntPtr parameter, IntPtr infoKind, IntPtr searchKind);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_Option(IntPtr handle, IntPtr option, IntPtr value);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_State_Get(IntPtr handle);
[DllImport("MediaInfo.dll")]
[DllImport("mediainfo")]
private static extern IntPtr MediaInfoA_Count_Get(IntPtr handle, IntPtr StreamKind, IntPtr streamNumber);
}
}

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="FluentMigrator.Runner" Version="1.6.2" />
@ -40,8 +39,25 @@
<None Include="..\Libraries\Sqlite\sqlite3.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="..\Libraries\MediaInfo\MediaInfo.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
<Target Name="CopyWindowsRuntimesOnBuild" AfterTargets="AfterBuild" Condition="'$(RuntimeIdentifier)'=='win-x64'">
<Copy SourceFiles="..\Libraries\MediaInfo\MediaInfo.dll" DestinationFolder="$(OutDir)" />
</Target>
<Target Name="CopyWindowsRuntimesOnPublish" AfterTargets="Publish" Condition="'$(RuntimeIdentifier)'=='win-x64'">
<Copy SourceFiles="..\Libraries\MediaInfo\MediaInfo.dll" DestinationFolder="$(PublishDir)" />
</Target>
<Target Name="CopyMacOSRuntimesOnBuild" AfterTargets="AfterBuild" Condition="'$(RuntimeIdentifier)'=='osx-x64'">
<Copy SourceFiles="..\Libraries\MediaInfo\libmediainfo.dylib" DestinationFolder="$(OutDir)" />
<Copy SourceFiles="Radarr.Core.dll.config" DestinationFolder="$(OutDir)" />
</Target>
<Target Name="CopyMacOSRuntimesOnPublish" AfterTargets="Publish" Condition="'$(RuntimeIdentifier)'=='osx-x64'">
<Copy SourceFiles="..\Libraries\MediaInfo\libmediainfo.dylib" DestinationFolder="$(PublishDir)" />
<Copy SourceFiles="Radarr.Core.dll.config" DestinationFolder="$(PublishDir)" />
</Target>
<Target Name="CopyLinuxRuntimesOnBuild" AfterTargets="AfterBuild" Condition="'$(RuntimeIdentifier)'=='linux-x64'">
<Copy SourceFiles="Radarr.Core.dll.config" DestinationFolder="$(OutDir)" />
</Target>
<Target Name="CopyLinuxRuntimesOnPublish" AfterTargets="Publish" Condition="'$(RuntimeIdentifier)'=='linux-x64'">
<Copy SourceFiles="Radarr.Core.dll.config" DestinationFolder="$(PublishDir)" />
</Target>
</Project>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<dllmap os="osx" dll="MediaInfo.dll" target="libmediainfo.0.dylib"/>
<dllmap os="linux" dll="MediaInfo.dll" target="libmediainfo.so.0" />
<dllmap os="freebsd" dll="MediaInfo.dll" target="libmediainfo.so.0" />
<dllmap os="solaris" dll="MediaInfo.dll" target="libmediainfo.so.0.0.0" />
<dllmap os="osx" dll="mediainfo" target="libmediainfo.dylib"/>
<dllmap os="linux" dll="mediainfo" target="libmediainfo.so.0" />
<dllmap os="freebsd" dll="mediainfo" target="libmediainfo.so.0" />
<dllmap os="solaris" dll="mediainfo" target="libmediainfo.so.0.0.0" />
</configuration>

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\NzbDrone.Host\Radarr.Host.csproj" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNet.SignalR.SelfHost" Version="2.4.1" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNet.SignalR.Client" Version="2.4.1" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\NzbDrone.Test.Common\Radarr.Test.Common.csproj" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\NzbDrone.Common.Test\Radarr.Common.Test.csproj" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NLog" Version="4.6.7" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNet.SignalR.SelfHost" Version="2.4.1" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="FluentAssertions" Version="5.9.0" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
</Project>

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\NzbDrone.Test.Common\Radarr.Test.Common.csproj" />

View File

@ -1,8 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NLog" Version="4.6.7" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\NzbDrone.Common.Test\Radarr.Common.Test.csproj" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NLog" Version="4.6.7" />

View File

@ -1,12 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
<RuntimeIdentifiers>win-x64</RuntimeIdentifiers>
<ApplicationIcon>..\NzbDrone.Host\Radarr.ico</ApplicationIcon>
<ApplicationManifest>app.manifest</ApplicationManifest>
<GenerateResourceUsePreserializedResources>true</GenerateResourceUsePreserializedResources>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="System.Resources.Extensions" Version="4.6.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\NzbDrone.Host\Radarr.Host.csproj" />
</ItemGroup>
@ -26,4 +30,4 @@
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
</Project>
</Project>

View File

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<TargetFrameworks>netstandard2.0</TargetFrameworks>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">

View File

@ -0,0 +1,38 @@
<Project DefaultTargets="Build">
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
<!-- Enable roll-forward to latest patch. This allows one restore operation
to apply to all of the self-contained publish operations. -->
<TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
</PropertyGroup>
<Target Name="PublishAllRids">
<ItemGroup>
<Frameworks Include="$(TargetFrameworks)" />
<Combined Include="$(RuntimeIdentifiers)">
<Framework>%(Frameworks.Identity)</Framework>
</Combined>
<Renamed Include="@(Combined->'%(Identity):%(Framework)')">
<Runtime>%(Identity)</Runtime>
<Framework>%(Framework)</Framework>
</Renamed>
<Renamed Remove="$(ExcludedRuntimeFrameworkPairs)" />
<!-- Transform RuntimeIdentifierForPublish items to project items to pass to MSBuild task -->
<ProjectToPublish Include="@(Renamed->'$(MSBuildProjectFullPath)')">
<AdditionalProperties>RuntimeIdentifier=%(Renamed.Runtime);TargetFramework=%(Renamed.Framework)</AdditionalProperties>
</ProjectToPublish>
</ItemGroup>
<MSBuild Projects="@(ProjectToPublish)"
Targets="Publish"
BuildInParallel="true"
/>
</Target>
</Project>

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="FluentValidation" Version="8.4.0" />

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="FluentValidation" Version="8.4.0" />

293
src/Radarr.Posix.sln Normal file
View File

@ -0,0 +1,293 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.29025.244
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Console", "NzbDrone.Console\Radarr.Console.csproj", "{2019313B-86BD-445C-A6F9-1BCEC49FBA9B}"
ProjectSection(ProjectDependencies) = postProject
{EF32E669-774D-4144-A9AB-06E5094F1B5F} = {EF32E669-774D-4144-A9AB-06E5094F1B5F}
{0D62DE9B-33B5-4CC2-B288-E8561C27FF35} = {0D62DE9B-33B5-4CC2-B288-E8561C27FF35}
{D171CDAA-22BE-4598-984B-F9B4A7A6D30C} = {D171CDAA-22BE-4598-984B-F9B4A7A6D30C}
{C5953DAB-89DB-46D9-A401-D620F54B776E} = {C5953DAB-89DB-46D9-A401-D620F54B776E}
{38497DC6-E488-4B9E-A973-A1A7961B33C4} = {38497DC6-E488-4B9E-A973-A1A7961B33C4}
{BB0DC9D7-93EB-4668-82B2-AA7503685A38} = {BB0DC9D7-93EB-4668-82B2-AA7503685A38}
{0B4F09FE-275D-4A94-9FEF-CA1594639AF5} = {0B4F09FE-275D-4A94-9FEF-CA1594639AF5}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{57A04B72-8088-4F75-A582-1158CF8291F7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Test.Common", "Test.Common", "{47697CDB-27B6-4B05-B4F8-0CBE6F6EDF97}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WindowsServiceHelpers", "WindowsServiceHelpers", "{F9E67978-5CD6-4A5F-827B-4249711C0B02}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ServiceInstall", "ServiceHelpers\ServiceInstall\ServiceInstall.csproj", "{6BCE712F-846D-4846-9D1B-A66B858DA755}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ServiceUninstall", "ServiceHelpers\ServiceUninstall\ServiceUninstall.csproj", "{700D0B95-95CD-43F3-B6C9-FAA0FC1358D4}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{1E6B3CBE-1578-41C1-9BF9-78D818740BE9}"
ProjectSection(SolutionItems) = preProject
.nuget\NuGet.exe = .nuget\NuGet.exe
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Host", "Host", "{486ADF86-DD89-4E19-B805-9D94F19800D9}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "External", "External", "{F6E3A728-AE77-4D02-BAC8-82FBC1402DDA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Marr.Data", "Marr.Data\Marr.Data.csproj", "{F6FC6BE7-0847-4817-A1ED-223DC647C3D7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Platform", "Platform", "{0F0D4998-8F5D-4467-A909-BB192C4B3B4B}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Platform", "Platform", "{4EACDBBC-BCD7-4765-A57B-3E08331E4749}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MonoTorrent", "MonoTorrent\MonoTorrent.csproj", "{411A9E0E-FDC6-4E25-828A-0C2CD1CD96F8}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Http", "Radarr.Http\Radarr.Http.csproj", "{C5953DAB-89DB-46D9-A401-D620F54B776E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Api.V2", "Radarr.Api.V2\Radarr.Api.V2.csproj", "{38497DC6-E488-4B9E-A973-A1A7961B33C4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Api", "NzbDrone.Api\Radarr.Api.csproj", "{D171CDAA-22BE-4598-984B-F9B4A7A6D30C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Common", "NzbDrone.Common\Radarr.Common.csproj", "{BA949432-D73A-425E-B4B1-4292405DFAF6}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Core", "NzbDrone.Core\Radarr.Core.csproj", "{0D62DE9B-33B5-4CC2-B288-E8561C27FF35}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.SignalR", "NzbDrone.SignalR\Radarr.SignalR.csproj", "{0B4F09FE-275D-4A94-9FEF-CA1594639AF5}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Update", "NzbDrone.Update\Radarr.Update.csproj", "{D1C4B2AA-8776-4429-A3E3-71146C230037}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Api.Test", "NzbDrone.Api.Test\Radarr.Api.Test.csproj", "{D9468BE6-8242-4E7F-9470-EE6FDA8832D0}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Automation.Test", "NzbDrone.Automation.Test\Radarr.Automation.Test.csproj", "{779D577B-2287-4FB8-8760-D653DBB87109}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Common.Test", "NzbDrone.Common.Test\Radarr.Common.Test.csproj", "{175CE3A0-0D8C-48DB-9D8D-C7BBD9591813}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Core.Test", "NzbDrone.Core.Test\Radarr.Core.Test.csproj", "{4EF23885-C1DD-4AE0-B6AF-DB045A0E83BD}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Host.Test", "NzbDrone.Host.Test\Radarr.Host.Test.csproj", "{3FDB2B34-A754-49C5-AEB2-16BC6E92372A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Integration.Test", "NzbDrone.Integration.Test\Radarr.Integration.Test.csproj", "{6EEF2080-FAA9-4403-A7B4-0AA91E5A390F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Libraries.Test", "NzbDrone.Libraries.Test\Radarr.Libraries.Test.csproj", "{4E16E633-5AA2-426E-B5C9-D212D4F40B44}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Update.Test", "NzbDrone.Update.Test\Radarr.Update.Test.csproj", "{10C356B1-0E60-4385-A3FA-3670159B5660}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Mono.Test", "NzbDrone.Mono.Test\Radarr.Mono.Test.csproj", "{FD08732A-60BB-4ACB-9AD2-F17C8BE694C8}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Windows.Test", "NzbDrone.Windows.Test\Radarr.Windows.Test.csproj", "{10B4E062-4985-4897-99DB-745DFBEED055}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Test.Common", "NzbDrone.Test.Common\Radarr.Test.Common.csproj", "{9D841A99-B3EA-4C35-86D0-F27C69E72B3E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Test.Dummy", "NzbDrone.Test.Dummy\Radarr.Test.Dummy.csproj", "{63872633-A00E-45DE-AB4D-61DFF4B02370}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Mono", "NzbDrone.Mono\Radarr.Mono.csproj", "{EF32E669-774D-4144-A9AB-06E5094F1B5F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Windows", "NzbDrone.Windows\Radarr.Windows.csproj", "{BB0DC9D7-93EB-4668-82B2-AA7503685A38}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Radarr.Host", "NzbDrone.Host\Radarr.Host.csproj", "{B044A5E8-D914-4671-8724-A92ADAB04C5A}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Mono|x86 = Mono|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6BCE712F-846D-4846-9D1B-A66B858DA755}.Debug|x86.ActiveCfg = Debug|x86
{6BCE712F-846D-4846-9D1B-A66B858DA755}.Debug|x86.Build.0 = Debug|x86
{6BCE712F-846D-4846-9D1B-A66B858DA755}.Mono|x86.ActiveCfg = Debug|x86
{6BCE712F-846D-4846-9D1B-A66B858DA755}.Release|x86.ActiveCfg = Release|x86
{6BCE712F-846D-4846-9D1B-A66B858DA755}.Release|x86.Build.0 = Release|x86
{700D0B95-95CD-43F3-B6C9-FAA0FC1358D4}.Debug|x86.ActiveCfg = Debug|x86
{700D0B95-95CD-43F3-B6C9-FAA0FC1358D4}.Debug|x86.Build.0 = Debug|x86
{700D0B95-95CD-43F3-B6C9-FAA0FC1358D4}.Mono|x86.ActiveCfg = Debug|x86
{700D0B95-95CD-43F3-B6C9-FAA0FC1358D4}.Release|x86.ActiveCfg = Release|x86
{700D0B95-95CD-43F3-B6C9-FAA0FC1358D4}.Release|x86.Build.0 = Release|x86
{F6FC6BE7-0847-4817-A1ED-223DC647C3D7}.Debug|x86.ActiveCfg = Debug|x86
{F6FC6BE7-0847-4817-A1ED-223DC647C3D7}.Debug|x86.Build.0 = Debug|x86
{F6FC6BE7-0847-4817-A1ED-223DC647C3D7}.Mono|x86.ActiveCfg = Release|x86
{F6FC6BE7-0847-4817-A1ED-223DC647C3D7}.Mono|x86.Build.0 = Release|x86
{F6FC6BE7-0847-4817-A1ED-223DC647C3D7}.Release|x86.ActiveCfg = Release|x86
{F6FC6BE7-0847-4817-A1ED-223DC647C3D7}.Release|x86.Build.0 = Release|x86
{411A9E0E-FDC6-4E25-828A-0C2CD1CD96F8}.Debug|x86.ActiveCfg = Debug|x86
{411A9E0E-FDC6-4E25-828A-0C2CD1CD96F8}.Debug|x86.Build.0 = Debug|x86
{411A9E0E-FDC6-4E25-828A-0C2CD1CD96F8}.Mono|x86.ActiveCfg = Release|x86
{411A9E0E-FDC6-4E25-828A-0C2CD1CD96F8}.Mono|x86.Build.0 = Release|x86
{411A9E0E-FDC6-4E25-828A-0C2CD1CD96F8}.Release|x86.ActiveCfg = Release|x86
{411A9E0E-FDC6-4E25-828A-0C2CD1CD96F8}.Release|x86.Build.0 = Release|x86
{C5953DAB-89DB-46D9-A401-D620F54B776E}.Debug|x86.ActiveCfg = Debug|x86
{C5953DAB-89DB-46D9-A401-D620F54B776E}.Debug|x86.Build.0 = Debug|x86
{C5953DAB-89DB-46D9-A401-D620F54B776E}.Mono|x86.ActiveCfg = Release|x86
{C5953DAB-89DB-46D9-A401-D620F54B776E}.Mono|x86.Build.0 = Release|x86
{C5953DAB-89DB-46D9-A401-D620F54B776E}.Release|x86.ActiveCfg = Release|x86
{C5953DAB-89DB-46D9-A401-D620F54B776E}.Release|x86.Build.0 = Release|x86
{38497DC6-E488-4B9E-A973-A1A7961B33C4}.Debug|x86.ActiveCfg = Debug|x86
{38497DC6-E488-4B9E-A973-A1A7961B33C4}.Debug|x86.Build.0 = Debug|x86
{38497DC6-E488-4B9E-A973-A1A7961B33C4}.Mono|x86.ActiveCfg = Release|x86
{38497DC6-E488-4B9E-A973-A1A7961B33C4}.Mono|x86.Build.0 = Release|x86
{38497DC6-E488-4B9E-A973-A1A7961B33C4}.Release|x86.ActiveCfg = Release|x86
{38497DC6-E488-4B9E-A973-A1A7961B33C4}.Release|x86.Build.0 = Release|x86
{D171CDAA-22BE-4598-984B-F9B4A7A6D30C}.Debug|x86.ActiveCfg = Debug|x86
{D171CDAA-22BE-4598-984B-F9B4A7A6D30C}.Debug|x86.Build.0 = Debug|x86
{D171CDAA-22BE-4598-984B-F9B4A7A6D30C}.Mono|x86.ActiveCfg = Release|x86
{D171CDAA-22BE-4598-984B-F9B4A7A6D30C}.Mono|x86.Build.0 = Release|x86
{D171CDAA-22BE-4598-984B-F9B4A7A6D30C}.Release|x86.ActiveCfg = Release|x86
{D171CDAA-22BE-4598-984B-F9B4A7A6D30C}.Release|x86.Build.0 = Release|x86
{BA949432-D73A-425E-B4B1-4292405DFAF6}.Debug|x86.ActiveCfg = Debug|x86
{BA949432-D73A-425E-B4B1-4292405DFAF6}.Debug|x86.Build.0 = Debug|x86
{BA949432-D73A-425E-B4B1-4292405DFAF6}.Mono|x86.ActiveCfg = Release|x86
{BA949432-D73A-425E-B4B1-4292405DFAF6}.Mono|x86.Build.0 = Release|x86
{BA949432-D73A-425E-B4B1-4292405DFAF6}.Release|x86.ActiveCfg = Release|x86
{BA949432-D73A-425E-B4B1-4292405DFAF6}.Release|x86.Build.0 = Release|x86
{0D62DE9B-33B5-4CC2-B288-E8561C27FF35}.Debug|x86.ActiveCfg = Debug|x86
{0D62DE9B-33B5-4CC2-B288-E8561C27FF35}.Debug|x86.Build.0 = Debug|x86
{0D62DE9B-33B5-4CC2-B288-E8561C27FF35}.Mono|x86.ActiveCfg = Release|x86
{0D62DE9B-33B5-4CC2-B288-E8561C27FF35}.Mono|x86.Build.0 = Release|x86
{0D62DE9B-33B5-4CC2-B288-E8561C27FF35}.Release|x86.ActiveCfg = Release|x86
{0D62DE9B-33B5-4CC2-B288-E8561C27FF35}.Release|x86.Build.0 = Release|x86
{0B4F09FE-275D-4A94-9FEF-CA1594639AF5}.Debug|x86.ActiveCfg = Debug|x86
{0B4F09FE-275D-4A94-9FEF-CA1594639AF5}.Debug|x86.Build.0 = Debug|x86
{0B4F09FE-275D-4A94-9FEF-CA1594639AF5}.Mono|x86.ActiveCfg = Release|x86
{0B4F09FE-275D-4A94-9FEF-CA1594639AF5}.Mono|x86.Build.0 = Release|x86
{0B4F09FE-275D-4A94-9FEF-CA1594639AF5}.Release|x86.ActiveCfg = Release|x86
{0B4F09FE-275D-4A94-9FEF-CA1594639AF5}.Release|x86.Build.0 = Release|x86
{D1C4B2AA-8776-4429-A3E3-71146C230037}.Debug|x86.ActiveCfg = Debug|x86
{D1C4B2AA-8776-4429-A3E3-71146C230037}.Debug|x86.Build.0 = Debug|x86
{D1C4B2AA-8776-4429-A3E3-71146C230037}.Mono|x86.ActiveCfg = Release|x86
{D1C4B2AA-8776-4429-A3E3-71146C230037}.Mono|x86.Build.0 = Release|x86
{D1C4B2AA-8776-4429-A3E3-71146C230037}.Release|x86.ActiveCfg = Release|x86
{D1C4B2AA-8776-4429-A3E3-71146C230037}.Release|x86.Build.0 = Release|x86
{D9468BE6-8242-4E7F-9470-EE6FDA8832D0}.Debug|x86.ActiveCfg = Debug|x86
{D9468BE6-8242-4E7F-9470-EE6FDA8832D0}.Debug|x86.Build.0 = Debug|x86
{D9468BE6-8242-4E7F-9470-EE6FDA8832D0}.Mono|x86.ActiveCfg = Release|x86
{D9468BE6-8242-4E7F-9470-EE6FDA8832D0}.Mono|x86.Build.0 = Release|x86
{D9468BE6-8242-4E7F-9470-EE6FDA8832D0}.Release|x86.ActiveCfg = Release|x86
{D9468BE6-8242-4E7F-9470-EE6FDA8832D0}.Release|x86.Build.0 = Release|x86
{779D577B-2287-4FB8-8760-D653DBB87109}.Debug|x86.ActiveCfg = Debug|x86
{779D577B-2287-4FB8-8760-D653DBB87109}.Debug|x86.Build.0 = Debug|x86
{779D577B-2287-4FB8-8760-D653DBB87109}.Mono|x86.ActiveCfg = Release|x86
{779D577B-2287-4FB8-8760-D653DBB87109}.Mono|x86.Build.0 = Release|x86
{779D577B-2287-4FB8-8760-D653DBB87109}.Release|x86.ActiveCfg = Release|x86
{779D577B-2287-4FB8-8760-D653DBB87109}.Release|x86.Build.0 = Release|x86
{175CE3A0-0D8C-48DB-9D8D-C7BBD9591813}.Debug|x86.ActiveCfg = Debug|x86
{175CE3A0-0D8C-48DB-9D8D-C7BBD9591813}.Debug|x86.Build.0 = Debug|x86
{175CE3A0-0D8C-48DB-9D8D-C7BBD9591813}.Mono|x86.ActiveCfg = Release|x86
{175CE3A0-0D8C-48DB-9D8D-C7BBD9591813}.Mono|x86.Build.0 = Release|x86
{175CE3A0-0D8C-48DB-9D8D-C7BBD9591813}.Release|x86.ActiveCfg = Release|x86
{175CE3A0-0D8C-48DB-9D8D-C7BBD9591813}.Release|x86.Build.0 = Release|x86
{4EF23885-C1DD-4AE0-B6AF-DB045A0E83BD}.Debug|x86.ActiveCfg = Debug|x86
{4EF23885-C1DD-4AE0-B6AF-DB045A0E83BD}.Debug|x86.Build.0 = Debug|x86
{4EF23885-C1DD-4AE0-B6AF-DB045A0E83BD}.Mono|x86.ActiveCfg = Release|x86
{4EF23885-C1DD-4AE0-B6AF-DB045A0E83BD}.Mono|x86.Build.0 = Release|x86
{4EF23885-C1DD-4AE0-B6AF-DB045A0E83BD}.Release|x86.ActiveCfg = Release|x86
{4EF23885-C1DD-4AE0-B6AF-DB045A0E83BD}.Release|x86.Build.0 = Release|x86
{3FDB2B34-A754-49C5-AEB2-16BC6E92372A}.Debug|x86.ActiveCfg = Debug|x86
{3FDB2B34-A754-49C5-AEB2-16BC6E92372A}.Debug|x86.Build.0 = Debug|x86
{3FDB2B34-A754-49C5-AEB2-16BC6E92372A}.Mono|x86.ActiveCfg = Release|x86
{3FDB2B34-A754-49C5-AEB2-16BC6E92372A}.Mono|x86.Build.0 = Release|x86
{3FDB2B34-A754-49C5-AEB2-16BC6E92372A}.Release|x86.ActiveCfg = Release|x86
{3FDB2B34-A754-49C5-AEB2-16BC6E92372A}.Release|x86.Build.0 = Release|x86
{6EEF2080-FAA9-4403-A7B4-0AA91E5A390F}.Debug|x86.ActiveCfg = Debug|x86
{6EEF2080-FAA9-4403-A7B4-0AA91E5A390F}.Debug|x86.Build.0 = Debug|x86
{6EEF2080-FAA9-4403-A7B4-0AA91E5A390F}.Mono|x86.ActiveCfg = Release|x86
{6EEF2080-FAA9-4403-A7B4-0AA91E5A390F}.Mono|x86.Build.0 = Release|x86
{6EEF2080-FAA9-4403-A7B4-0AA91E5A390F}.Release|x86.ActiveCfg = Release|x86
{6EEF2080-FAA9-4403-A7B4-0AA91E5A390F}.Release|x86.Build.0 = Release|x86
{4E16E633-5AA2-426E-B5C9-D212D4F40B44}.Debug|x86.ActiveCfg = Debug|x86
{4E16E633-5AA2-426E-B5C9-D212D4F40B44}.Debug|x86.Build.0 = Debug|x86
{4E16E633-5AA2-426E-B5C9-D212D4F40B44}.Mono|x86.ActiveCfg = Release|x86
{4E16E633-5AA2-426E-B5C9-D212D4F40B44}.Mono|x86.Build.0 = Release|x86
{4E16E633-5AA2-426E-B5C9-D212D4F40B44}.Release|x86.ActiveCfg = Release|x86
{4E16E633-5AA2-426E-B5C9-D212D4F40B44}.Release|x86.Build.0 = Release|x86
{10C356B1-0E60-4385-A3FA-3670159B5660}.Debug|x86.ActiveCfg = Debug|x86
{10C356B1-0E60-4385-A3FA-3670159B5660}.Debug|x86.Build.0 = Debug|x86
{10C356B1-0E60-4385-A3FA-3670159B5660}.Mono|x86.ActiveCfg = Release|x86
{10C356B1-0E60-4385-A3FA-3670159B5660}.Mono|x86.Build.0 = Release|x86
{10C356B1-0E60-4385-A3FA-3670159B5660}.Release|x86.ActiveCfg = Release|x86
{10C356B1-0E60-4385-A3FA-3670159B5660}.Release|x86.Build.0 = Release|x86
{FD08732A-60BB-4ACB-9AD2-F17C8BE694C8}.Debug|x86.ActiveCfg = Debug|x86
{FD08732A-60BB-4ACB-9AD2-F17C8BE694C8}.Debug|x86.Build.0 = Debug|x86
{FD08732A-60BB-4ACB-9AD2-F17C8BE694C8}.Mono|x86.ActiveCfg = Release|x86
{FD08732A-60BB-4ACB-9AD2-F17C8BE694C8}.Mono|x86.Build.0 = Release|x86
{FD08732A-60BB-4ACB-9AD2-F17C8BE694C8}.Release|x86.ActiveCfg = Release|x86
{FD08732A-60BB-4ACB-9AD2-F17C8BE694C8}.Release|x86.Build.0 = Release|x86
{10B4E062-4985-4897-99DB-745DFBEED055}.Debug|x86.ActiveCfg = Debug|x86
{10B4E062-4985-4897-99DB-745DFBEED055}.Debug|x86.Build.0 = Debug|x86
{10B4E062-4985-4897-99DB-745DFBEED055}.Mono|x86.ActiveCfg = Release|x86
{10B4E062-4985-4897-99DB-745DFBEED055}.Mono|x86.Build.0 = Release|x86
{10B4E062-4985-4897-99DB-745DFBEED055}.Release|x86.ActiveCfg = Release|x86
{10B4E062-4985-4897-99DB-745DFBEED055}.Release|x86.Build.0 = Release|x86
{9D841A99-B3EA-4C35-86D0-F27C69E72B3E}.Debug|x86.ActiveCfg = Debug|x86
{9D841A99-B3EA-4C35-86D0-F27C69E72B3E}.Debug|x86.Build.0 = Debug|x86
{9D841A99-B3EA-4C35-86D0-F27C69E72B3E}.Mono|x86.ActiveCfg = Release|x86
{9D841A99-B3EA-4C35-86D0-F27C69E72B3E}.Mono|x86.Build.0 = Release|x86
{9D841A99-B3EA-4C35-86D0-F27C69E72B3E}.Release|x86.ActiveCfg = Release|x86
{9D841A99-B3EA-4C35-86D0-F27C69E72B3E}.Release|x86.Build.0 = Release|x86
{63872633-A00E-45DE-AB4D-61DFF4B02370}.Debug|x86.ActiveCfg = Debug|x86
{63872633-A00E-45DE-AB4D-61DFF4B02370}.Debug|x86.Build.0 = Debug|x86
{63872633-A00E-45DE-AB4D-61DFF4B02370}.Mono|x86.ActiveCfg = Release|x86
{63872633-A00E-45DE-AB4D-61DFF4B02370}.Mono|x86.Build.0 = Release|x86
{63872633-A00E-45DE-AB4D-61DFF4B02370}.Release|x86.ActiveCfg = Release|x86
{63872633-A00E-45DE-AB4D-61DFF4B02370}.Release|x86.Build.0 = Release|x86
{EF32E669-774D-4144-A9AB-06E5094F1B5F}.Debug|x86.ActiveCfg = Debug|x86
{EF32E669-774D-4144-A9AB-06E5094F1B5F}.Debug|x86.Build.0 = Debug|x86
{EF32E669-774D-4144-A9AB-06E5094F1B5F}.Mono|x86.ActiveCfg = Release|x86
{EF32E669-774D-4144-A9AB-06E5094F1B5F}.Mono|x86.Build.0 = Release|x86
{EF32E669-774D-4144-A9AB-06E5094F1B5F}.Release|x86.ActiveCfg = Release|x86
{EF32E669-774D-4144-A9AB-06E5094F1B5F}.Release|x86.Build.0 = Release|x86
{BB0DC9D7-93EB-4668-82B2-AA7503685A38}.Debug|x86.ActiveCfg = Debug|x86
{BB0DC9D7-93EB-4668-82B2-AA7503685A38}.Debug|x86.Build.0 = Debug|x86
{BB0DC9D7-93EB-4668-82B2-AA7503685A38}.Mono|x86.ActiveCfg = Release|x86
{BB0DC9D7-93EB-4668-82B2-AA7503685A38}.Mono|x86.Build.0 = Release|x86
{BB0DC9D7-93EB-4668-82B2-AA7503685A38}.Release|x86.ActiveCfg = Release|x86
{BB0DC9D7-93EB-4668-82B2-AA7503685A38}.Release|x86.Build.0 = Release|x86
{2019313B-86BD-445C-A6F9-1BCEC49FBA9B}.Debug|x86.ActiveCfg = Debug|x86
{2019313B-86BD-445C-A6F9-1BCEC49FBA9B}.Debug|x86.Build.0 = Debug|x86
{2019313B-86BD-445C-A6F9-1BCEC49FBA9B}.Mono|x86.ActiveCfg = Release|x86
{2019313B-86BD-445C-A6F9-1BCEC49FBA9B}.Mono|x86.Build.0 = Release|x86
{2019313B-86BD-445C-A6F9-1BCEC49FBA9B}.Release|x86.ActiveCfg = Release|x86
{2019313B-86BD-445C-A6F9-1BCEC49FBA9B}.Release|x86.Build.0 = Release|x86
{B044A5E8-D914-4671-8724-A92ADAB04C5A}.Debug|x86.ActiveCfg = Debug|x86
{B044A5E8-D914-4671-8724-A92ADAB04C5A}.Debug|x86.Build.0 = Debug|x86
{B044A5E8-D914-4671-8724-A92ADAB04C5A}.Mono|x86.ActiveCfg = Release|x86
{B044A5E8-D914-4671-8724-A92ADAB04C5A}.Mono|x86.Build.0 = Release|x86
{B044A5E8-D914-4671-8724-A92ADAB04C5A}.Release|x86.ActiveCfg = Release|x86
{B044A5E8-D914-4671-8724-A92ADAB04C5A}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{47697CDB-27B6-4B05-B4F8-0CBE6F6EDF97} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{6BCE712F-846D-4846-9D1B-A66B858DA755} = {F9E67978-5CD6-4A5F-827B-4249711C0B02}
{700D0B95-95CD-43F3-B6C9-FAA0FC1358D4} = {F9E67978-5CD6-4A5F-827B-4249711C0B02}
{F6FC6BE7-0847-4817-A1ED-223DC647C3D7} = {F6E3A728-AE77-4D02-BAC8-82FBC1402DDA}
{4EACDBBC-BCD7-4765-A57B-3E08331E4749} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{411A9E0E-FDC6-4E25-828A-0C2CD1CD96F8} = {F6E3A728-AE77-4D02-BAC8-82FBC1402DDA}
{D9468BE6-8242-4E7F-9470-EE6FDA8832D0} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{779D577B-2287-4FB8-8760-D653DBB87109} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{175CE3A0-0D8C-48DB-9D8D-C7BBD9591813} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{4EF23885-C1DD-4AE0-B6AF-DB045A0E83BD} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{3FDB2B34-A754-49C5-AEB2-16BC6E92372A} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{6EEF2080-FAA9-4403-A7B4-0AA91E5A390F} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{4E16E633-5AA2-426E-B5C9-D212D4F40B44} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{10C356B1-0E60-4385-A3FA-3670159B5660} = {57A04B72-8088-4F75-A582-1158CF8291F7}
{FD08732A-60BB-4ACB-9AD2-F17C8BE694C8} = {4EACDBBC-BCD7-4765-A57B-3E08331E4749}
{10B4E062-4985-4897-99DB-745DFBEED055} = {4EACDBBC-BCD7-4765-A57B-3E08331E4749}
{9D841A99-B3EA-4C35-86D0-F27C69E72B3E} = {47697CDB-27B6-4B05-B4F8-0CBE6F6EDF97}
{63872633-A00E-45DE-AB4D-61DFF4B02370} = {47697CDB-27B6-4B05-B4F8-0CBE6F6EDF97}
{EF32E669-774D-4144-A9AB-06E5094F1B5F} = {0F0D4998-8F5D-4467-A909-BB192C4B3B4B}
{BB0DC9D7-93EB-4668-82B2-AA7503685A38} = {0F0D4998-8F5D-4467-A909-BB192C4B3B4B}
{2019313B-86BD-445C-A6F9-1BCEC49FBA9B} = {486ADF86-DD89-4E19-B805-9D94F19800D9}
{B044A5E8-D914-4671-8724-A92ADAB04C5A} = {486ADF86-DD89-4E19-B805-9D94F19800D9}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EnterpriseLibraryConfigurationToolBinariesPath = packages\Unity.2.1.505.0\lib\NET35;packages\Unity.2.1.505.2\lib\NET35
SolutionGuid = {2955716E-0882-41EC-935D-C95694C5C30F}
EndGlobalSection
GlobalSection(MonoDevelopProperties) = preSolution
StartupItem = NzbDrone.Console\NzbDrone.Console.csproj
EndGlobalSection
GlobalSection(JSLint) = preSolution
SolutionConfigurationLocation = JSLintOptions.xml
EndGlobalSection
EndGlobal

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
</Project>

View File

@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net462</TargetFramework>
<Platforms>x86</Platforms>
<TargetFrameworks>net462</TargetFrameworks>
</PropertyGroup>
</Project>