diff --git a/.travis.yml b/.travis.yml
index f23a4ee6c..df89014f4 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -36,7 +36,7 @@ install:
script:
- export PYTHONPATH=`pwd`:$PYTHONPATH
- python src/tests/runtests.py
- # - nunit-console src/embed_tests/bin/x64/ReleaseMono/Python.EmbeddingTest.dll
+ # - nunit-console src/embed_tests/bin/Python.EmbeddingTest.dll
after_success:
# Uncomment if need to geninterop, ie. py37 final
diff --git a/ci/appveyor_run_tests.ps1 b/ci/appveyor_run_tests.ps1
index 9f9a470bd..3a7d25af8 100644
--- a/ci/appveyor_run_tests.ps1
+++ b/ci/appveyor_run_tests.ps1
@@ -7,8 +7,8 @@ $NUNIT = Resolve-Path .\packages\NUnit.ConsoleRunner*\tools\nunit3-console.exe
$PY = Get-Command python
# Can't use ".\build\*\Python.EmbeddingTest.dll". Missing framework files.
-$CS_TESTS = Resolve-Path .\src\embed_tests\bin\*\*\Python.EmbeddingTest.dll
-$RUNTIME_DIR = Resolve-Path .\src\runtime\bin\*\ReleaseWin\
+$CS_TESTS = ".\src\embed_tests\bin\Python.EmbeddingTest.dll"
+$RUNTIME_DIR = ".\src\runtime\bin\"
# Run python tests with C# coverage
# why `2>&1 | %{ "$_" }`? see: http://stackoverflow.com/a/20950421/5208670
diff --git a/pythonnet.sln b/pythonnet.sln
index 0a4dbe1f7..c5afd66c3 100644
--- a/pythonnet.sln
+++ b/pythonnet.sln
@@ -1,7 +1,6 @@
-
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2013
-VisualStudioVersion = 12.0.30110.0
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Runtime", "src\runtime\Python.Runtime.csproj", "{097B4AC0-74E9-4C58-BCF8-C69746EC8271}"
EndProject
@@ -17,90 +16,174 @@ Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
DebugMono|x64 = DebugMono|x64
DebugMono|x86 = DebugMono|x86
+ DebugMonoPY3|x64 = DebugMonoPY3|x64
+ DebugMonoPY3|x86 = DebugMonoPY3|x86
DebugWin|x64 = DebugWin|x64
DebugWin|x86 = DebugWin|x86
+ DebugWinPY3|x64 = DebugWinPY3|x64
+ DebugWinPY3|x86 = DebugWinPY3|x86
ReleaseMono|x64 = ReleaseMono|x64
ReleaseMono|x86 = ReleaseMono|x86
+ ReleaseMonoPY3|x64 = ReleaseMonoPY3|x64
+ ReleaseMonoPY3|x86 = ReleaseMonoPY3|x86
ReleaseWin|x64 = ReleaseWin|x64
ReleaseWin|x86 = ReleaseWin|x86
+ ReleaseWinPY3|x64 = ReleaseWinPY3|x64
+ ReleaseWinPY3|x86 = ReleaseWinPY3|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugMono|x64.ActiveCfg = DebugMono|x64
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugMono|x64.Build.0 = DebugMono|x64
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugMono|x86.ActiveCfg = DebugMono|x86
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugMono|x86.Build.0 = DebugMono|x86
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugMonoPY3|x64.ActiveCfg = DebugMonoPY3|x64
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugMonoPY3|x64.Build.0 = DebugMonoPY3|x64
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugMonoPY3|x86.ActiveCfg = DebugMonoPY3|x86
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugMonoPY3|x86.Build.0 = DebugMonoPY3|x86
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugWin|x64.ActiveCfg = DebugWin|x64
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugWin|x64.Build.0 = DebugWin|x64
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugWin|x86.ActiveCfg = DebugWin|x86
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugWin|x86.Build.0 = DebugWin|x86
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugWinPY3|x64.ActiveCfg = DebugWinPY3|x64
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugWinPY3|x64.Build.0 = DebugWinPY3|x64
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugWinPY3|x86.ActiveCfg = DebugWinPY3|x86
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.DebugWinPY3|x86.Build.0 = DebugWinPY3|x86
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseMono|x64.ActiveCfg = ReleaseMono|x64
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseMono|x64.Build.0 = ReleaseMono|x64
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseMono|x86.ActiveCfg = ReleaseMono|x86
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseMono|x86.Build.0 = ReleaseMono|x86
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseMonoPY3|x64.ActiveCfg = ReleaseMonoPY3|x64
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseMonoPY3|x64.Build.0 = ReleaseMonoPY3|x64
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseMonoPY3|x86.ActiveCfg = ReleaseMonoPY3|x86
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseMonoPY3|x86.Build.0 = ReleaseMonoPY3|x86
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseWin|x64.ActiveCfg = ReleaseWin|x64
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseWin|x64.Build.0 = ReleaseWin|x64
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseWin|x86.ActiveCfg = ReleaseWin|x86
{097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseWin|x86.Build.0 = ReleaseWin|x86
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseWinPY3|x64.ActiveCfg = ReleaseWinPY3|x64
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseWinPY3|x64.Build.0 = ReleaseWinPY3|x64
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseWinPY3|x86.ActiveCfg = ReleaseWinPY3|x86
+ {097B4AC0-74E9-4C58-BCF8-C69746EC8271}.ReleaseWinPY3|x86.Build.0 = ReleaseWinPY3|x86
{6F401A34-273B-450F-9A4C-13550BE0767B}.DebugMono|x64.ActiveCfg = DebugMono|x64
{6F401A34-273B-450F-9A4C-13550BE0767B}.DebugMono|x64.Build.0 = DebugMono|x64
{6F401A34-273B-450F-9A4C-13550BE0767B}.DebugMono|x86.ActiveCfg = DebugMono|x86
{6F401A34-273B-450F-9A4C-13550BE0767B}.DebugMono|x86.Build.0 = DebugMono|x86
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.DebugMonoPY3|x64.ActiveCfg = DebugMonoPY3|x64
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.DebugMonoPY3|x64.Build.0 = DebugMonoPY3|x64
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.DebugMonoPY3|x86.ActiveCfg = DebugMonoPY3|x86
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.DebugMonoPY3|x86.Build.0 = DebugMonoPY3|x86
{6F401A34-273B-450F-9A4C-13550BE0767B}.DebugWin|x64.ActiveCfg = DebugWin|x64
{6F401A34-273B-450F-9A4C-13550BE0767B}.DebugWin|x64.Build.0 = DebugWin|x64
{6F401A34-273B-450F-9A4C-13550BE0767B}.DebugWin|x86.ActiveCfg = DebugWin|x86
{6F401A34-273B-450F-9A4C-13550BE0767B}.DebugWin|x86.Build.0 = DebugWin|x86
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.DebugWinPY3|x64.ActiveCfg = DebugWinPY3|x64
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.DebugWinPY3|x64.Build.0 = DebugWinPY3|x64
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.DebugWinPY3|x86.ActiveCfg = DebugWinPY3|x86
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.DebugWinPY3|x86.Build.0 = DebugWinPY3|x86
{6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseMono|x64.ActiveCfg = ReleaseMono|x64
{6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseMono|x64.Build.0 = ReleaseMono|x64
{6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseMono|x86.ActiveCfg = ReleaseMono|x86
{6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseMono|x86.Build.0 = ReleaseMono|x86
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseMonoPY3|x64.ActiveCfg = ReleaseMonoPY3|x64
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseMonoPY3|x64.Build.0 = ReleaseMonoPY3|x64
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseMonoPY3|x86.ActiveCfg = ReleaseMonoPY3|x86
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseMonoPY3|x86.Build.0 = ReleaseMonoPY3|x86
{6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseWin|x64.ActiveCfg = ReleaseWin|x64
{6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseWin|x64.Build.0 = ReleaseWin|x64
{6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseWin|x86.ActiveCfg = ReleaseWin|x86
{6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseWin|x86.Build.0 = ReleaseWin|x86
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseWinPY3|x64.ActiveCfg = ReleaseWinPY3|x64
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseWinPY3|x64.Build.0 = ReleaseWinPY3|x64
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseWinPY3|x86.ActiveCfg = ReleaseWinPY3|x86
+ {6F401A34-273B-450F-9A4C-13550BE0767B}.ReleaseWinPY3|x86.Build.0 = ReleaseWinPY3|x86
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugMono|x64.ActiveCfg = DebugMono|x64
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugMono|x64.Build.0 = DebugMono|x64
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugMono|x86.ActiveCfg = DebugMono|x86
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugMono|x86.Build.0 = DebugMono|x86
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugMonoPY3|x64.ActiveCfg = DebugMonoPY3|x64
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugMonoPY3|x64.Build.0 = DebugMonoPY3|x64
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugMonoPY3|x86.ActiveCfg = DebugMonoPY3|x86
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugMonoPY3|x86.Build.0 = DebugMonoPY3|x86
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugWin|x64.ActiveCfg = DebugWin|x64
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugWin|x64.Build.0 = DebugWin|x64
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugWin|x86.ActiveCfg = DebugWin|x86
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugWin|x86.Build.0 = DebugWin|x86
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugWinPY3|x64.ActiveCfg = DebugWinPY3|x64
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugWinPY3|x64.Build.0 = DebugWinPY3|x64
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugWinPY3|x86.ActiveCfg = DebugWinPY3|x86
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.DebugWinPY3|x86.Build.0 = DebugWinPY3|x86
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseMono|x64.ActiveCfg = ReleaseMono|x64
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseMono|x64.Build.0 = ReleaseMono|x64
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseMono|x86.ActiveCfg = ReleaseMono|x86
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseMono|x86.Build.0 = ReleaseMono|x86
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseMonoPY3|x64.ActiveCfg = ReleaseMonoPY3|x64
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseMonoPY3|x64.Build.0 = ReleaseMonoPY3|x64
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseMonoPY3|x86.ActiveCfg = ReleaseMonoPY3|x86
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseMonoPY3|x86.Build.0 = ReleaseMonoPY3|x86
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseWin|x64.ActiveCfg = ReleaseWin|x64
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseWin|x64.Build.0 = ReleaseWin|x64
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseWin|x86.ActiveCfg = ReleaseWin|x86
{4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseWin|x86.Build.0 = ReleaseWin|x86
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMono|x64.ActiveCfg = DebugMono_x86|x64
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMono|x64.Build.0 = DebugMono_x86|x64
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMono|x86.ActiveCfg = DebugMono_x86|x86
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMono|x86.Build.0 = DebugMono_x86|x86
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWin|x64.ActiveCfg = DebugMono_x86|x64
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWin|x64.Build.0 = DebugMono_x86|x64
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWin|x86.ActiveCfg = DebugMono_x86|x86
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWin|x86.Build.0 = DebugMono_x86|x86
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMono|x64.ActiveCfg = Release|x64
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMono|x64.Build.0 = Release|x64
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMono|x86.ActiveCfg = Release|x86
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMono|x86.Build.0 = Release|x86
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWin|x64.ActiveCfg = Release|x64
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWin|x64.Build.0 = Release|x64
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWin|x86.ActiveCfg = Release|x86
- {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWin|x86.Build.0 = Release|x86
- {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugMono|x64.ActiveCfg = DebugWin|x64
- {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugMono|x86.ActiveCfg = DebugWin|x86
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseWinPY3|x64.ActiveCfg = ReleaseWinPY3|x64
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseWinPY3|x64.Build.0 = ReleaseWinPY3|x64
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseWinPY3|x86.ActiveCfg = ReleaseWinPY3|x86
+ {4165C59D-2822-499F-A6DB-EACA4C331EB5}.ReleaseWinPY3|x86.Build.0 = ReleaseWinPY3|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMono|x64.ActiveCfg = DebugMono|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMono|x64.Build.0 = DebugMono|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMono|x86.ActiveCfg = DebugMono|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMono|x86.Build.0 = DebugMono|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMonoPY3|x64.ActiveCfg = DebugMonoPY3|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMonoPY3|x64.Build.0 = DebugMonoPY3|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMonoPY3|x86.ActiveCfg = DebugMonoPY3|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugMonoPY3|x86.Build.0 = DebugMonoPY3|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWin|x64.ActiveCfg = DebugWin|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWin|x64.Build.0 = DebugWin|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWin|x86.ActiveCfg = DebugWin|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWin|x86.Build.0 = DebugWin|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWinPY3|x64.ActiveCfg = DebugWinPY3|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWinPY3|x64.Build.0 = DebugWinPY3|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWinPY3|x86.ActiveCfg = DebugWinPY3|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.DebugWinPY3|x86.Build.0 = DebugWinPY3|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMono|x64.ActiveCfg = ReleaseMono|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMono|x64.Build.0 = ReleaseMono|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMono|x86.ActiveCfg = ReleaseMono|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMono|x86.Build.0 = ReleaseMono|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMonoPY3|x64.ActiveCfg = ReleaseMonoPY3|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMonoPY3|x64.Build.0 = ReleaseMonoPY3|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMonoPY3|x86.ActiveCfg = ReleaseMonoPY3|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseMonoPY3|x86.Build.0 = ReleaseMonoPY3|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWin|x64.ActiveCfg = ReleaseWin|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWin|x64.Build.0 = ReleaseWin|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWin|x86.ActiveCfg = ReleaseWin|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWin|x86.Build.0 = ReleaseWin|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWinPY3|x64.ActiveCfg = ReleaseWinPY3|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWinPY3|x64.Build.0 = ReleaseWinPY3|x64
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWinPY3|x86.ActiveCfg = ReleaseWinPY3|x86
+ {E29DCF0A-5114-4A98-B1DD-71264B6EA349}.ReleaseWinPY3|x86.Build.0 = ReleaseWinPY3|x86
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugMono|x64.ActiveCfg = DebugMono|x64
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugMono|x86.ActiveCfg = DebugMono|x86
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugMonoPY3|x64.ActiveCfg = DebugMonoPY3|x64
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugMonoPY3|x86.ActiveCfg = DebugMonoPY3|x86
{86E834DE-1139-4511-96CC-69636A56E7AC}.DebugWin|x64.ActiveCfg = DebugWin|x64
{86E834DE-1139-4511-96CC-69636A56E7AC}.DebugWin|x64.Build.0 = DebugWin|x64
{86E834DE-1139-4511-96CC-69636A56E7AC}.DebugWin|x86.ActiveCfg = DebugWin|x86
{86E834DE-1139-4511-96CC-69636A56E7AC}.DebugWin|x86.Build.0 = DebugWin|x86
- {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseMono|x64.ActiveCfg = ReleaseWin|x64
- {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseMono|x86.ActiveCfg = ReleaseWin|x86
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugWinPY3|x64.ActiveCfg = DebugWinPY3|x64
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugWinPY3|x64.Build.0 = DebugWinPY3|x64
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugWinPY3|x86.ActiveCfg = DebugWinPY3|x86
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.DebugWinPY3|x86.Build.0 = DebugWinPY3|x86
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseMono|x64.ActiveCfg = ReleaseMono|x64
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseMono|x86.ActiveCfg = ReleaseMono|x86
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseMonoPY3|x64.ActiveCfg = ReleaseMonoPY3|x64
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseMonoPY3|x86.ActiveCfg = ReleaseMonoPY3|x86
{86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseWin|x64.ActiveCfg = ReleaseWin|x64
{86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseWin|x64.Build.0 = ReleaseWin|x64
{86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseWin|x86.ActiveCfg = ReleaseWin|x86
{86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseWin|x86.Build.0 = ReleaseWin|x86
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseWinPY3|x64.ActiveCfg = ReleaseWinPY3|x64
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseWinPY3|x64.Build.0 = ReleaseWinPY3|x64
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseWinPY3|x86.ActiveCfg = ReleaseWinPY3|x86
+ {86E834DE-1139-4511-96CC-69636A56E7AC}.ReleaseWinPY3|x86.Build.0 = ReleaseWinPY3|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/src/clrmodule/clrmodule.csproj b/src/clrmodule/clrmodule.csproj
index 9575f521f..8939d5ad0 100644
--- a/src/clrmodule/clrmodule.csproj
+++ b/src/clrmodule/clrmodule.csproj
@@ -17,7 +17,7 @@
true
- bin\x86\DebugMono\
+ bin\
TRACE;DEBUG;PYTHON2
full
x86
@@ -25,14 +25,14 @@
true
- bin\x64\DebugMono\
+ bin\
TRACE;DEBUG;PYTHON2
full
x64
prompt
- bin\x86\ReleaseMono\
+ bin\
PYTHON2
true
pdbonly
@@ -40,7 +40,7 @@
prompt
- bin\x64\ReleaseMono\
+ bin\
PYTHON2
true
pdbonly
@@ -49,7 +49,7 @@
true
- bin\x86\DebugWin\
+ bin\
TRACE;DEBUG;PYTHON2
full
x86
@@ -57,14 +57,14 @@
true
- bin\x64\DebugWin\
+ bin\
TRACE;DEBUG;PYTHON2
full
x64
prompt
- bin\x86\ReleaseWin\
+ bin\
PYTHON2
true
pdbonly
@@ -72,13 +72,77 @@
prompt
- bin\x64\ReleaseWin\
+ bin\
PYTHON2
true
pdbonly
x64
prompt
+
+ true
+ bin\
+ TRACE;DEBUG;PYTHON3
+ full
+ x86
+ prompt
+
+
+ true
+ bin\
+ TRACE;DEBUG;PYTHON3
+ full
+ x64
+ prompt
+
+
+ bin\
+ PYTHON3
+ true
+ pdbonly
+ x86
+ prompt
+
+
+ bin\
+ PYTHON3
+ true
+ pdbonly
+ x64
+ prompt
+
+
+ true
+ bin\
+ TRACE;DEBUG;PYTHON3
+ full
+ x86
+ prompt
+
+
+ true
+ bin\
+ TRACE;DEBUG;PYTHON3
+ full
+ x64
+ prompt
+
+
+ bin\
+ PYTHON3
+ true
+ pdbonly
+ x86
+ prompt
+
+
+ bin\
+ PYTHON3
+ true
+ pdbonly
+ x64
+ prompt
+
..\..\packages\UnmanagedExports.1.2.7\lib\net\RGiesecke.DllExport.Metadata.dll
diff --git a/src/console/Console.csproj b/src/console/Console.csproj
index 53306e47f..49fd402dc 100644
--- a/src/console/Console.csproj
+++ b/src/console/Console.csproj
@@ -15,143 +15,141 @@
..\..\
$(SolutionDir)
-
- True
- full
- False
- bin\Debug\
- DEBUG;TRACE
- 4
-
-
- pdbonly
- True
- bin\Release\
- TRACE
- True
- false
- 4
-
-
- True
- bin\EmbeddingTest\
+
+ true
+ bin\
DEBUG;TRACE
full
- AnyCPU
- 4
- False
+ x86
+ prompt
-
- True
- bin\UnitTests\
+
+ true
+ bin\
DEBUG;TRACE
full
- AnyCPU
- 4
- False
+ x64
+ prompt
-
- True
- bin\x86\Debug\
- DEBUG;TRACE
- full
- x86
- True
- 4
- False
- False
-
-
- True
- bin\x86\Release\
- TRACE
- True
+
+ bin\
+
+
+ true
pdbonly
x86
- false
- 4
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
+ x64
+ prompt
-
- True
- bin\x86\EmbeddingTest\
+
+ true
+ bin\
DEBUG;TRACE
full
x86
- 4
- False
+ prompt
-
- True
- bin\x86\UnitTests\
+
+ true
+ bin\
DEBUG;TRACE
full
+ x64
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
x86
- 4
- False
+ prompt
-
- True
- bin\DebugMono_x86\
- DEBUG;TRACE
- full
- AnyCPU
- 4
- False
+
+ bin\
+
+
+ true
+ pdbonly
+ x64
+ prompt
-
- True
- bin\x86\DebugMono_x86\
+
+ true
+ bin\
DEBUG;TRACE
full
x86
- 4
- False
+ prompt
-
- True
- bin\x64\Debug\
+
+ true
+ bin\
DEBUG;TRACE
full
x64
- 4
- False
-
-
- True
- bin\x64\Release\
- TRACE
- True
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
+ x86
+ prompt
+
+
+ bin\
+
+
+ true
pdbonly
x64
- false
- 4
+ prompt
-
- True
- bin\x64\EmbeddingTest\
+
+ true
+ bin\
DEBUG;TRACE
full
- x64
- 4
- False
+ x86
+ prompt
-
- True
- bin\x64\UnitTests\
+
+ true
+ bin\
DEBUG;TRACE
full
x64
- 4
- False
+ prompt
-
- True
- bin\x64\DebugMono_x86\
- DEBUG;TRACE
- full
+
+ bin\
+
+
+ true
+ pdbonly
+ x86
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
x64
- 4
- False
+ prompt
$(PythonManifest)
diff --git a/src/embed_tests/Python.EmbeddingTest.csproj b/src/embed_tests/Python.EmbeddingTest.csproj
index 264afd0ab..7e083d5e0 100644
--- a/src/embed_tests/Python.EmbeddingTest.csproj
+++ b/src/embed_tests/Python.EmbeddingTest.csproj
@@ -15,7 +15,7 @@
true
- bin\x86\DebugMono\
+ bin\
DEBUG;TRACE
full
x86
@@ -23,14 +23,14 @@
true
- bin\x64\DebugMono\
+ bin\
DEBUG;TRACE
full
x64
prompt
- bin\x86\ReleaseMono\
+ bin\
true
@@ -39,7 +39,7 @@
prompt
- bin\x64\ReleaseMono\
+ bin\
true
@@ -49,7 +49,7 @@
true
- bin\x86\DebugWin\
+ bin\
DEBUG;TRACE
full
x86
@@ -57,14 +57,14 @@
true
- bin\x64\DebugWin\
+ bin\
DEBUG;TRACE
full
x64
prompt
- bin\x86\ReleaseWin\
+ bin\
true
@@ -73,7 +73,75 @@
prompt
- bin\x64\ReleaseWin\
+ bin\
+
+
+ true
+ pdbonly
+ x64
+ prompt
+
+
+ true
+ bin\
+ DEBUG;TRACE
+ full
+ x86
+ prompt
+
+
+ true
+ bin\
+ DEBUG;TRACE
+ full
+ x64
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
+ x86
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
+ x64
+ prompt
+
+
+ true
+ bin\
+ DEBUG;TRACE
+ full
+ x86
+ prompt
+
+
+ true
+ bin\
+ DEBUG;TRACE
+ full
+ x64
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
+ x86
+ prompt
+
+
+ bin\
true
diff --git a/src/embed_tests/pyimport.cs b/src/embed_tests/pyimport.cs
index 0e4cb3806..e4ba8d546 100644
--- a/src/embed_tests/pyimport.cs
+++ b/src/embed_tests/pyimport.cs
@@ -22,7 +22,7 @@ public void SetUp()
* using reflection to circumvent the private
* modifiers placed on most Runtime methods.
*/
- const string s = @"../../../../tests";
+ const string s = @"../../tests";
string testPath = Path.Combine(TestContext.CurrentContext.TestDirectory, s);
diff --git a/src/runtime/Python.Runtime.csproj b/src/runtime/Python.Runtime.csproj
index 6309bf4a3..5d4d2161b 100644
--- a/src/runtime/Python.Runtime.csproj
+++ b/src/runtime/Python.Runtime.csproj
@@ -12,7 +12,7 @@
$(SolutionDir)
- bin\x86\ReleaseMono\
+ bin\
PYTHON2;PYTHON27;UCS4
true
true
@@ -20,7 +20,7 @@
x86
- bin\x64\ReleaseMono\
+ bin\
PYTHON2;PYTHON27;UCS4
true
true
@@ -28,7 +28,7 @@
x64
- bin\x86\ReleaseWin\
+ bin\
PYTHON2;PYTHON27;UCS2
true
true
@@ -36,7 +36,7 @@
x86
- bin\x64\ReleaseWin\
+ bin\
PYTHON2;PYTHON27;UCS2
true
true
@@ -45,7 +45,7 @@
true
- bin\x86\DebugMono\
+ bin\
TRACE;DEBUG;PYTHON2;PYTHON27;UCS4
true
false
@@ -54,7 +54,7 @@
true
- bin\x64\DebugMono\
+ bin\
TRACE;DEBUG;PYTHON2;PYTHON27;UCS4
true
false
@@ -63,7 +63,7 @@
true
- bin\x86\DebugWin\
+ bin\
TRACE;DEBUG;PYTHON2;PYTHON27;UCS2
true
false
@@ -72,13 +72,81 @@
true
- bin\x64\DebugWin\
+ bin\
TRACE;DEBUG;PYTHON2;PYTHON27;UCS2
true
false
full
x64
+
+ bin\
+ PYTHON3;PYTHON35;UCS4
+ true
+ true
+ pdbonly
+ x86
+
+
+ bin\
+ PYTHON3;PYTHON35;UCS4
+ true
+ true
+ pdbonly
+ x64
+
+
+ bin\
+ PYTHON3;PYTHON35;UCS2
+ true
+ true
+ pdbonly
+ x86
+
+
+ bin\
+ PYTHON3;PYTHON35;UCS2
+ true
+ true
+ pdbonly
+ x64
+
+
+ true
+ bin\
+ TRACE;DEBUG;PYTHON3;PYTHON35;UCS4
+ true
+ false
+ full
+ x86
+
+
+ true
+ bin\
+ TRACE;DEBUG;PYTHON3;PYTHON35;UCS4
+ true
+ false
+ full
+ x64
+
+
+ true
+ bin\
+ TRACE;DEBUG;PYTHON3;PYTHON35;UCS2
+ true
+ false
+ full
+ x86
+
+
+ true
+ bin\
+ TRACE;DEBUG;PYTHON3;PYTHON35;UCS2
+ true
+ false
+ full
+ x64
+
diff --git a/src/testing/Python.Test.csproj b/src/testing/Python.Test.csproj
index 1f0134296..3201cd635 100644
--- a/src/testing/Python.Test.csproj
+++ b/src/testing/Python.Test.csproj
@@ -16,7 +16,7 @@
true
- bin\x86\DebugMono\
+ bin\
DEBUG;TRACE
full
x86
@@ -24,14 +24,14 @@
true
- bin\x64\DebugMono\
+ bin\
DEBUG;TRACE
full
x64
prompt
- bin\x86\ReleaseMono\
+ bin\
true
@@ -40,7 +40,7 @@
prompt
- bin\x64\ReleaseMono\
+ bin\
true
@@ -50,7 +50,7 @@
true
- bin\x86\DebugWin\
+ bin\
DEBUG;TRACE
full
x86
@@ -58,14 +58,14 @@
true
- bin\x64\DebugWin\
+ bin\
DEBUG;TRACE
full
x64
prompt
- bin\x86\ReleaseWin\
+ bin\
true
@@ -74,7 +74,75 @@
prompt
- bin\x64\ReleaseWin\
+ bin\
+
+
+ true
+ pdbonly
+ x64
+ prompt
+
+
+ true
+ bin\
+ DEBUG;TRACE
+ full
+ x86
+ prompt
+
+
+ true
+ bin\
+ DEBUG;TRACE
+ full
+ x64
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
+ x86
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
+ x64
+ prompt
+
+
+ true
+ bin\
+ DEBUG;TRACE
+ full
+ x86
+ prompt
+
+
+ true
+ bin\
+ DEBUG;TRACE
+ full
+ x64
+ prompt
+
+
+ bin\
+
+
+ true
+ pdbonly
+ x86
+ prompt
+
+
+ bin\
true
diff --git a/src/tests/tests.pyproj b/src/tests/tests.pyproj
new file mode 100644
index 000000000..cf8f74a4a
--- /dev/null
+++ b/src/tests/tests.pyproj
@@ -0,0 +1,71 @@
+
+
+
+ Debug
+ 2.0
+ {250c535c-c060-4f0c-bd80-41f2bf373565}
+
+ runtests.py
+
+ .
+ .
+ {888888a0-9f3d-457c-b088-3a5042f75d52}
+ Standard Python launcher
+
+
+
+
+
+
+
+
+
+
+
+
+ 10.0
+ $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Python Tools\Microsoft.PythonTools.targets
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+