diff --git a/ImageProcessorCore.sln b/ImageProcessorCore.sln index f3677d892a..9d828a74a0 100644 --- a/ImageProcessorCore.sln +++ b/ImageProcessorCore.sln @@ -9,6 +9,9 @@ Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "ImageProcessorCore.Tests", EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SolutionItems", "SolutionItems", "{C317F1B1-D75E-4C6D-83EB-80367343E0D7}" ProjectSection(SolutionItems) = preProject + appveyor.yml = appveyor.yml + build\dotnet-latest.ps1 = build\dotnet-latest.ps1 + global.json = global.json README.md = README.md EndProjectSection EndProject diff --git a/README.md b/README.md index 5016825043..130b3d6f0a 100644 --- a/README.md +++ b/README.md @@ -35,10 +35,10 @@ We already have a [MyGet package repository](https://www.myget.org/gallery/image If you prefer, you can compile ImageProcessorCore yourself (please do and help!), you'll need: - Visual Studio 2015 (or above) -- The [Windows 10 development tools](https://dev.windows.com/en-us/downloads) - Click `Get Visual Studio Community`. -- Dnvm and Dnx installed - -To install the last two please see the instructions at the [DotNet documentation](http://dotnet.readthedocs.org/en/latest/getting-started/installing-core-windows.html) +- The [.NET Core SDK Installer +(Preview 1)](https://www.microsoft.com/net/download) - Click `.NET Core SDK Installer +(Preview 1)` +- The [.NET Core Tooling Preview 1 for Visual Studio 2015](https://dev.windows.com/en-us/downloads) - Click `.NET Core Tooling Preview 1 for Visual Studio 2015`. To clone it locally click the "Clone in Windows" button above or run the following git commands. diff --git a/appveyor.yml b/appveyor.yml index 7176b42b8e..ca38b81541 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,6 +1,15 @@ version: v1.0.0.{build} os: Visual Studio 2015 +install: +# Use the install script to grab the latest dotnet install +- ps: iex .\dotnet-latest.ps1 + +# Prepend newly installed Python to the PATH of this build (this cannot be + # done from inside the powershell script as it would require to restart + # the parent CMD process). +- "SET PATH=C:\\Program Files\\dotnet\\bin;%PATH%" + assembly_info: patch: true file: '**\AssemblyInfo.*' @@ -9,17 +18,7 @@ assembly_info: before_build: - cmd: >- - dnvm install 1.0.0-rc1-update1 -r clr - - dnvm install 1.0.0-rc1-update1 -r coreclr -arch x64 -alias x64 - - dnvm use 1.0.0-rc1-update1 -r coreclr -a x64 - - dnvm list - - dnu restore src\ImageProcessorCore - - dnu restore tests\ImageProcessorCore.Tests + dotnet restore src\ImageProcessorCore cd build @@ -31,19 +30,10 @@ before_build: build_script: - cmd: >- - dnu build src\ImageProcessorCore - - dnu build tests\ImageProcessorCore.Tests - - dnu pack src\ImageProcessorCore --configuration Release --out "artifacts\bin\ImageProcessorCore" - -test_script: -- cmd: >- - dnvm use 1.0.0-rc1-update1 -r coreclr -a x64 + dotnet pack src\ImageProcessorCore --configuration Release --output "artifacts\bin\ImageProcessorCore" - cd tests/ImageProcessorCore.Tests +test: off - dnx test artifacts: - path: artifacts\bin\ImageProcessorCore\**\*.nupkg diff --git a/dotnet-latest.ps1 b/dotnet-latest.ps1 new file mode 100644 index 0000000000..bb2c5dcfed --- /dev/null +++ b/dotnet-latest.ps1 @@ -0,0 +1,29 @@ +# Set up everything for using the dotnet cli. This should mean we do not have to wait for Appveyor images to be updated. + +# Clean and recreate the folder in which all output packages should be placed +$ArtifactsPath = "artifacts" + +if (Test-Path $ArtifactsPath) { + Remove-Item -Path $ArtifactsPath -Recurse -Force -ErrorAction Ignore +} + +New-Item $ArtifactsPath -ItemType Directory -ErrorAction Ignore | Out-Null + +Write-Host "Created artifacts folder '$ArtifactsPath'" + +# Install the latest dotnet cli +if (Get-Command "dotnet.exe" -ErrorAction SilentlyContinue) { + Write-Host "dotnet SDK already installed" + dotnet --version +} else { + Write-Host "Installing dotnet SDK" + + $installScript = Join-Path $ArtifactsPath "dotnet-install.ps1" + + Write-Host $installScript + + Invoke-WebRequest "https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0/scripts/obtain/install.ps1" ` + -OutFile $installScript + + & $installScript +} diff --git a/global.json b/global.json index 4013de3c50..0c4b1f2be5 100644 --- a/global.json +++ b/global.json @@ -1,8 +1,6 @@ { - "projects": [ "src" ], - "sdk": { - "version": "1.0.0-rc1-update1", - "runtime": "coreclr", - "architecture": "x64" - } + "projects": [ "src" ], + "sdk": { + "version": "1.0.0-preview1-002702" + } } \ No newline at end of file diff --git a/src/ImageProcessorCore/Bootstrapper.cs b/src/ImageProcessorCore/Bootstrapper.cs index 3f1e5c1fe0..a9c7dc8318 100644 --- a/src/ImageProcessorCore/Bootstrapper.cs +++ b/src/ImageProcessorCore/Bootstrapper.cs @@ -48,7 +48,7 @@ namespace ImageProcessorCore /// /// Gets the list of supported /// - public IReadOnlyCollection ImageFormats => new ReadOnlyCollection(imageFormats); + public IReadOnlyCollection ImageFormats => new ReadOnlyCollection(this.imageFormats); /// /// Adds a new to the collection of supported image formats. diff --git a/src/ImageProcessorCore/ImageProcessor.nuget.targets b/src/ImageProcessorCore/ImageProcessor.nuget.targets deleted file mode 100644 index 3e3a70af89..0000000000 --- a/src/ImageProcessorCore/ImageProcessor.nuget.targets +++ /dev/null @@ -1,9 +0,0 @@ - - - - C:\Users\James\.nuget\packages\ - - - - - \ No newline at end of file diff --git a/src/ImageProcessorCore/ImageProcessor.xproj b/src/ImageProcessorCore/ImageProcessor.xproj deleted file mode 100644 index 041633c508..0000000000 --- a/src/ImageProcessorCore/ImageProcessor.xproj +++ /dev/null @@ -1,21 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 2aa31a1f-142c-43f4-8687-09abca4b3a26 - ImageProcessor - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin\$(MSBuildProjectName)\ - - - 2.0 - - - True - - - \ No newline at end of file diff --git a/src/ImageProcessorCore/ImageProcessorCore.xproj b/src/ImageProcessorCore/ImageProcessorCore.xproj index 48941be502..ffe5b1cea0 100644 --- a/src/ImageProcessorCore/ImageProcessorCore.xproj +++ b/src/ImageProcessorCore/ImageProcessorCore.xproj @@ -4,12 +4,13 @@ 14.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - + 2aa31a1f-142c-43f4-8687-09abca4b3a26 ImageProcessorCore - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin\$(MSBuildProjectName)\ + .\obj + .\bin\ + v4.5.1 2.0 @@ -17,5 +18,5 @@ True - + \ No newline at end of file diff --git a/src/ImageProcessorCore/project.json b/src/ImageProcessorCore/project.json index d403a75585..c98ae61098 100644 --- a/src/ImageProcessorCore/project.json +++ b/src/ImageProcessorCore/project.json @@ -5,37 +5,27 @@ "authors": [ "James Jackson-South and contributors" ], - "tags": [ - "Image Resize Crop Quality Gif Jpg Jpeg Bitmap Png Fluent Animated" - ], - "compilationOptions": { - "allowUnsafe": true + "packOptions": { + "projectUrl": "https://github.com/JimBobSquarePants/ImageProcessor", + "licenseUrl": "http://www.apache.org/licenses/LICENSE-2.0", + "tags": [ + "Image Resize Crop Quality Gif Jpg Jpeg Bitmap Png Fluent Animated" + ] + }, + "buildOptions": { + "allowUnsafe": true, + "debugType": "portable" + }, + "dependencies": { + "NETStandard.Library": "1.5.0-rc2-24027", + "System.Numerics.Vectors": "4.1.1-rc2-24027" }, - "projectUrl": "https://github.com/JimBobSquarePants/ImageProcessor", - "licenseUrl": "http://www.apache.org/licenses/LICENSE-2.0", "frameworks": { - "dotnet5.5": { - "dependencies": { - "System.Collections": "4.0.11-beta-23516", - "System.Linq": "4.0.1-beta-23516", - "System.Threading": "4.0.11-beta-23516", - "System.Runtime": "4.0.21-beta-23516", - "Microsoft.CSharp": "4.0.1-beta-23516", - "Microsoft.NETCore.Portable.Compatibility": "1.0.1-beta-23516", - "System.Runtime.Extensions": "4.0.11-beta-23516", - "System.Reflection": "4.1.0-beta-23516", - "System.IO": "4.0.11-beta-23516", - "Microsoft.NETCore": "5.0.1-beta-23516", - "Microsoft.NETCore.Platforms": "1.0.1-beta-23516" - } - }, - "net451": { + "netstandard1.1": { "dependencies": { - "System.Numerics.Vectors": "4.0.0", - "System.Runtime": "4.0.0" - }, - "frameworkAssemblies": { - "System.Runtime": "4.0.0" + "System.Threading": "4.0.11-rc2-24027", + "System.Threading.Tasks": "4.0.11-rc2-24027", + "System.Threading.Tasks.Parallel": "4.0.1-rc2-24027" } } } diff --git a/tests/ImageProcessorCore.Benchmarks/ImageProcessorCore.Benchmarks.xproj b/tests/ImageProcessorCore.Benchmarks/ImageProcessorCore.Benchmarks.xproj index 4e06339d40..dd3a44428e 100644 --- a/tests/ImageProcessorCore.Benchmarks/ImageProcessorCore.Benchmarks.xproj +++ b/tests/ImageProcessorCore.Benchmarks/ImageProcessorCore.Benchmarks.xproj @@ -4,17 +4,16 @@ 14.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - + 299d8e18-102c-42de-adbf-79098ee706a8 ImageProcessorCore.Benchmarks - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin\$(MSBuildProjectName)\ + .\obj + .\bin\ + v4.5.1 - 2.0 - - + + \ No newline at end of file diff --git a/tests/ImageProcessorCore.Benchmarks/Program.cs b/tests/ImageProcessorCore.Benchmarks/Program.cs index fe674d9e06..07b512c8fe 100644 --- a/tests/ImageProcessorCore.Benchmarks/Program.cs +++ b/tests/ImageProcessorCore.Benchmarks/Program.cs @@ -11,7 +11,7 @@ { public static void Main(string[] args) { - //Use reflection for a more maintainable way of creating the benchmark switcher, + // Use reflection for a more maintainable way of creating the benchmark switcher, Type[] benchmarks = typeof(Program).Assembly.GetTypes() .Where(t => t.GetMethods(BindingFlags.Instance | BindingFlags.Public) .Any(m => m.GetCustomAttributes(typeof(BenchmarkAttribute), false).Any())) diff --git a/tests/ImageProcessorCore.Benchmarks/project.json b/tests/ImageProcessorCore.Benchmarks/project.json index d4f5396781..15244e5caa 100644 --- a/tests/ImageProcessorCore.Benchmarks/project.json +++ b/tests/ImageProcessorCore.Benchmarks/project.json @@ -2,25 +2,30 @@ "version": "1.0.0-*", "description": "ImageProcessorCore.Benchmarks Console Application", "authors": [ "James.South" ], - "tags": [ "" ], - "projectUrl": "", - "licenseUrl": "", - - "compilationOptions": { + "packOptions": { + "projectUrl": "https://github.com/JimBobSquarePants/ImageProcessor", + "licenseUrl": "http://www.apache.org/licenses/LICENSE-2.0", + "tags": [ + "Image Resize Crop Quality Gif Jpg Jpeg Bitmap Png Fluent Animated" + ] + }, + "buildOptions": { "emitEntryPoint": true }, - "dependencies": { - "ImageProcessorCore": "1.0.0-*", - "BenchmarkDotNet": "0.9.6" + "BenchmarkDotNet": "0.9.6", + "ImageProcessorCore": "1.0.0-*" }, - "commands": { "ImageProcessorCore.Benchmarks": "ImageProcessorCore.Benchmarks" }, - "frameworks": { - "dnx46": { + "net451": { + "dependencies": { + }, + "imports": [ + "dnx451" + ], "frameworkAssemblies": { "System.Drawing": "4.0.0.0" } diff --git a/tests/ImageProcessorCore.Tests/ImageProcessorCore.Tests.xproj b/tests/ImageProcessorCore.Tests/ImageProcessorCore.Tests.xproj index 248e799634..5a0f189b59 100644 --- a/tests/ImageProcessorCore.Tests/ImageProcessorCore.Tests.xproj +++ b/tests/ImageProcessorCore.Tests/ImageProcessorCore.Tests.xproj @@ -4,12 +4,13 @@ 14.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - + f836e8e6-b4d9-4208-8346-140c74678b91 ImageProcessor.Tests - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin\$(MSBuildProjectName)\ + .\obj + .\bin\ + v4.5.1 2.0 @@ -17,5 +18,5 @@ - + \ No newline at end of file diff --git a/tests/ImageProcessorCore.Tests/project.json b/tests/ImageProcessorCore.Tests/project.json index 6dd65e0891..39d6d2654a 100644 --- a/tests/ImageProcessorCore.Tests/project.json +++ b/tests/ImageProcessorCore.Tests/project.json @@ -2,24 +2,35 @@ "version": "1.0.0-*", "description": "ImageProcessorCore.Tests Class Library", "authors": [ "James Jackson-South and contributors" ], - "tags": [ "" ], - "projectUrl": "", - "licenseUrl": "", + "packOptions": { + "projectUrl": "https://github.com/JimBobSquarePants/ImageProcessor", + "licenseUrl": "http://www.apache.org/licenses/LICENSE-2.0", + "tags": [ + "Image Resize Crop Quality Gif Jpg Jpeg Bitmap Png Fluent Animated" + ] + }, + "buildOptions": { + "debugType": "portable" + }, "dependencies": { "ImageProcessorCore": "1.0.0-*", - "Microsoft.CSharp": "4.0.1-beta-23516", - "Microsoft.NETCore": "5.0.1-beta-23516", - "Microsoft.NETCore.Platforms": "1.0.1-beta-23516", - "System.Collections": "4.0.11-beta-23516", - "System.Linq": "4.0.1-beta-23516", - "System.Threading": "4.0.11-beta-23516", - "xunit": "2.2.0-beta1-build3239", - "xunit.runner.dnx": "2.1.0-rc1-build204" + "System.Diagnostics.TraceSource": "4.0.0-rc2-24027", + "xunit": "2.1.0", + "dotnet-test-xunit": "1.0.0-rc2-build10015" }, "frameworks": { - "dnxcore50": { } + "netcoreapp1.1": { + "dependencies": { + "Microsoft.NETCore.App": { + "type": "platform", + "version": "1.0.0-rc2-3002702" + } + }, + "imports": [ + "dnxcore50", + "portable-net45+win8" + ] + } }, - "commands": { - "test": "xunit.runner.dnx" - } + "testRunner": "xunit" } \ No newline at end of file