Skip to content

Commit 37bfc97

Browse files
authored
Update minimum to .NET Framework 4.6 and add System.Memory reference (IronLanguages#766)
* Upgrade to .NET Framework 4.6 * Fix packaging * Fix CI testing
1 parent b420a3b commit 37bfc97

File tree

23 files changed

+98
-54
lines changed

23 files changed

+98
-54
lines changed

.github/workflows/main.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ jobs:
3838
with:
3939
name: packages
4040
path: Package/Release/Packages
41-
- name: Test (net45)
42-
run: ./make.ps1 -frameworks net45 test-all
41+
- name: Test (net46)
42+
run: ./make.ps1 -frameworks net46 test-all
4343
shell: pwsh
4444
- name: Test (netcoreapp2.1)
4545
# TODO: figure out how to test on other OSs
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33
<PropertyGroup>
4-
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
4+
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
55
<IsFullFramework>true</IsFullFramework>
66
</PropertyGroup>
77

IronPython.sln

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
2222
Build.proj = Build.proj
2323
CurrentVersion.props = CurrentVersion.props
2424
Directory.Build.props = Directory.Build.props
25-
global.json = global.json
2625
IronPython.ruleset = IronPython.ruleset
2726
LICENSE = LICENSE
2827
make.ps1 = make.ps1
@@ -35,7 +34,7 @@ EndProject
3534
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{17737ACB-40C6-41A6-83DA-3203A4DCEC19}"
3635
ProjectSection(SolutionItems) = preProject
3736
Build\After.targets = Build\After.targets
38-
Build\net45.props = Build\net45.props
37+
Build\net46.props = Build\net46.props
3938
Build\netcoreapp2.1.props = Build\netcoreapp2.1.props
4039
Build\netcoreapp3.1.props = Build\netcoreapp3.1.props
4140
Build\netstandard2.0.props = Build\netstandard2.0.props
@@ -68,6 +67,37 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IronPythonConsole32", "Src\
6867
EndProject
6968
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IronPythonAnalyzer", "IronPythonAnalyzer\IronPythonAnalyzer\IronPythonAnalyzer.csproj", "{DA3415F3-6922-42D0-93D7-BEE2E8603A18}"
7069
EndProject
70+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "choco", "choco", "{EA550FD8-2241-4131-8292-619D009E0199}"
71+
ProjectSection(SolutionItems) = preProject
72+
Package\choco\Choco.Packaging.targets = Package\choco\Choco.Packaging.targets
73+
Package\choco\IronPython.nuspec = Package\choco\IronPython.nuspec
74+
EndProjectSection
75+
EndProject
76+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "pkg", "pkg", "{01CE1AE6-CD7F-491B-8150-58CD738B20AC}"
77+
ProjectSection(SolutionItems) = preProject
78+
Package\pkg\Pkg.Packaging.targets = Package\pkg\Pkg.Packaging.targets
79+
EndProjectSection
80+
EndProject
81+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "deb", "deb", "{676093FF-CB44-4BD5-B83C-A28FE88D5017}"
82+
ProjectSection(SolutionItems) = preProject
83+
Package\deb\Deb.Packaging.targets = Package\deb\Deb.Packaging.targets
84+
EndProjectSection
85+
EndProject
86+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "zip", "zip", "{8FC07B92-D2AC-4921-9E97-A92A84D2B461}"
87+
ProjectSection(SolutionItems) = preProject
88+
Package\zip\Zip.Packaging.targets = Package\zip\Zip.Packaging.targets
89+
EndProjectSection
90+
EndProject
91+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "msi", "msi", "{450F93D5-DF02-4C04-960B-AE7E454668AA}"
92+
ProjectSection(SolutionItems) = preProject
93+
Package\msi\Dlr.wxs = Package\msi\Dlr.wxs
94+
Package\msi\IronPython.Installer.wixproj = Package\msi\IronPython.Installer.wixproj
95+
Package\msi\IronPython.wxs = Package\msi\IronPython.wxs
96+
Package\msi\Msi.Packaging.targets = Package\msi\Msi.Packaging.targets
97+
Package\msi\Product.wxs = Package\msi\Product.wxs
98+
Package\msi\Version.wxi = Package\msi\Version.wxi
99+
EndProjectSection
100+
EndProject
71101
Global
72102
GlobalSection(SolutionConfigurationPlatforms) = preSolution
73103
Debug|Any CPU = Debug|Any CPU
@@ -143,6 +173,11 @@ Global
143173
{BEE737B9-18D5-48D9-8672-9A896213C98B} = {60836ADE-CAB7-4587-B6FB-8C4FEB872752}
144174
{CE610DDE-D1DB-44D8-BAE9-BAAB00DA98F0} = {3A14D070-628F-44EF-92DD-47C8BE5C33CD}
145175
{EE77D917-27F7-4E54-B72F-C8CEE4AEDCAA} = {CE610DDE-D1DB-44D8-BAE9-BAAB00DA98F0}
176+
{EA550FD8-2241-4131-8292-619D009E0199} = {CE610DDE-D1DB-44D8-BAE9-BAAB00DA98F0}
177+
{01CE1AE6-CD7F-491B-8150-58CD738B20AC} = {CE610DDE-D1DB-44D8-BAE9-BAAB00DA98F0}
178+
{676093FF-CB44-4BD5-B83C-A28FE88D5017} = {CE610DDE-D1DB-44D8-BAE9-BAAB00DA98F0}
179+
{8FC07B92-D2AC-4921-9E97-A92A84D2B461} = {CE610DDE-D1DB-44D8-BAE9-BAAB00DA98F0}
180+
{450F93D5-DF02-4C04-960B-AE7E454668AA} = {CE610DDE-D1DB-44D8-BAE9-BAAB00DA98F0}
146181
EndGlobalSection
147182
GlobalSection(ExtensibilityGlobals) = postSolution
148183
SolutionGuid = {981EA700-AB4F-462F-96D7-F35FAAAA7E89}

Package/choco/IronPython.nuspec

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<metadata>
66
<id>ironpython3</id>
77
<version>3.4.0</version>
8-
<packageSourceUrl>https://github.com/IronLanguages/ironpython2/blob/master/Package/choco/IronPython.Choco.nuspec</packageSourceUrl>
8+
<packageSourceUrl>https://github.com/IronLanguages/ironpython3/blob/master/Package/choco/IronPython.Choco.nuspec</packageSourceUrl>
99
<title>IronPython3</title>
1010
<authors>IronPython Contributors,Microsoft</authors>
1111
<owners>IronPython Community</owners>
@@ -19,8 +19,8 @@
1919
<mailingListUrl>https://ironpython.groups.io/g/users</mailingListUrl>
2020
</metadata>
2121
<files>
22-
<file src="$STAGEDIR$\net45\*.dll;$STAGEDIR$\net45\*.exe" exclude="**\rowantest*.dll;**\IronPythonTest.dll" />
23-
<file src="$STAGEDIR$\net45\DLLs\**" target="DLLs" exclude="**\*.xml" />
22+
<file src="$STAGEDIR$\net46\*.dll;$STAGEDIR$\net46\*.exe" exclude="**\rowantest*.dll;**\IronPythonTest.dll" />
23+
<file src="$STAGEDIR$\net46\DLLs\**" target="DLLs" exclude="**\*.xml" />
2424
<file src="$STAGEDIR$\Lib\**" target="Lib" />
2525
<file src="$STAGEDIR$\LICENSE;$STAGEDIR$\README.md" />
2626
<file src="tools\*" target="tools" />

Package/deb/Deb.Packaging.targets

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,16 @@
1212
</ItemGroup>
1313

1414
<ItemGroup>
15-
<ApplicationFiles Include="$(StageDir)/net45/*.exe" />
16-
<ApplicationFiles Include="$(StageDir)/net45/**/*.dll" Exclude="IronPythonTest.dll" />
15+
<ApplicationFiles Include="$(StageDir)/net46/*.exe" />
16+
<ApplicationFiles Include="$(StageDir)/net46/**/*.dll" Exclude="IronPythonTest.dll" />
1717
</ItemGroup>
1818

1919
<ItemGroup>
2020
<ScriptFiles Include="$(PackageDebFolder)/ipy*" />
2121
</ItemGroup>
2222

2323
<!-- Build the application deb -->
24-
<Exec Command="chmod 777 $(StageDir)/net45/*.exe" />
24+
<Exec Command="chmod 777 $(StageDir)/net46/*.exe" />
2525
<Exec Command="rm -rf $(PackageTempFolder)" />
2626
<Exec Command="mkdir -p $(PackageTempFolder)/DEBIAN" />
2727
<Exec Command="cp $(PackageDebFolder)/DEBIAN/* $(PackageTempFolder)/DEBIAN"/>
@@ -37,8 +37,8 @@
3737
<Exec Command="dos2unix $(PackageTempFolder)/DEBIAN/control"/>
3838

3939
<Copy SourceFiles="@(ScriptFiles)" DestinationFolder="$(PackageTempFolder)/usr/bin/"/>
40-
<Copy SourceFiles="@(ApplicationFiles)" DestinationFolder="$(PackageTempFolder)/usr/share/ironpython2.7/%(ApplicationFiles.RecursiveDir)"/>
41-
<Copy SourceFiles="@(StdLibFiles)" DestinationFolder="$(PackageTempFolder)/usr/lib/ironpython2.7/%(StdLibFiles.RecursiveDir)"/>
40+
<Copy SourceFiles="@(ApplicationFiles)" DestinationFolder="$(PackageTempFolder)/usr/share/ironpython3.4/%(ApplicationFiles.RecursiveDir)"/>
41+
<Copy SourceFiles="@(StdLibFiles)" DestinationFolder="$(PackageTempFolder)/usr/lib/ironpython3.4/%(StdLibFiles.RecursiveDir)"/>
4242

4343
<Exec Command="fakeroot dpkg-deb -v --build $(PackageTempFolder)"/>
4444
<Copy

Package/msi/IronPython.Installer.wixproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
<?xml version="1.0" encoding="utf-8"?>
1+
<?xml version="1.0" encoding="utf-8"?>
22
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33
<Import Project="$(MSBuildThisFileDirectory)..\..\Directory.Build.props" />
4-
<Import Project="$(RootDir)packages\wix\3.11.1\build\wix.props" />
4+
<Import Project="$(RootDir)packages\wix\3.11.2\build\wix.props" />
55
<PropertyGroup>
66
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
77
<Platform Condition=" '$(Platform)' == '' ">x64</Platform>
@@ -37,7 +37,7 @@
3737
<Value>$(BindInputPaths)\Lib</Value>
3838
</WixConstant>
3939
<WixConstant Include="PlatformDir">
40-
<Value>$(BindInputPaths)\net45</Value>
40+
<Value>$(BindInputPaths)\net46</Value>
4141
</WixConstant>
4242
<WixConstant Include="IpyExeComponentGuid">
4343
<Value>{419DAD09-D6E8-47F0-BC58-874019842004}</Value>

Package/msi/IronPython.wxs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,16 @@
4444
<File Id="README.md" />
4545
</Component>
4646

47+
<Component>
48+
<File Id="System.Buffers.dll" KeyPath="yes" Source="$(var.PlatformDir)\System.Buffers.dll" />
49+
</Component>
50+
<Component>
51+
<File Id="System.Memory.dll" KeyPath="yes" Source="$(var.PlatformDir)\System.Memory.dll" />
52+
</Component>
53+
<Component>
54+
<File Id="System.Runtime.CompilerServices.Unsafe.dll" KeyPath="yes" Source="$(var.PlatformDir)\System.Runtime.CompilerServices.Unsafe.dll" />
55+
</Component>
56+
4757
<Component Guid="{B5D964A4-37EB-4A59-9D63-726DB1F84E5E}">
4858
<File Id="LICENSE" KeyPath="yes" />
4959
</Component>
@@ -97,6 +107,9 @@
97107
<ComponentRef Id="ipyw.exe"/>
98108
<ComponentRef Id="ipyc.exe"/>
99109
<ComponentRef Id="README.md"/>
110+
<ComponentRef Id="System.Buffers.dll" />
111+
<ComponentRef Id="System.Memory.dll" />
112+
<ComponentRef Id="System.Runtime.CompilerServices.Unsafe.dll" />
100113
<ComponentRef Id="LICENSE"/>
101114
<ComponentRef Id="InstallationKey"/>
102115
<ComponentRef Id="VSNet45ReferenceAssemblyKey"/>

Package/msi/Msi.Packaging.targets

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
33
<Target Name="MsiPackage" Condition="'$(OS)' != 'Unix'" DependsOnTargets="Stage" AfterTargets="Package">
44
<PropertyGroup>
5-
<WixVersion>3.11.1</WixVersion>
5+
<WixVersion>3.11.2</WixVersion>
66
</PropertyGroup>
77
<Exec Command="$(NuGet) install wix -Version $(WixVersion) -OutputDirectory &quot;$(RootDir)packages&quot; -Source https://api.nuget.org/v3/index.json" />
88
<MSBuild

Package/nuget/IronPython.nuspec

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,17 @@
1515
<language>en-US</language>
1616
<tags>ironpython python dynamic dlr</tags>
1717
<dependencies>
18-
<group targetFramework="net45">
18+
<group targetFramework="net46">
1919
<dependency id="DynamicLanguageRuntime" version="[1.2.3-alpha0]" />
20+
<dependency id="System.Memory" version="4.5.3" />
2021
</group>
2122
<group targetFramework="netcoreapp2.1">
2223
<dependency id="System.Text.Encoding.CodePages" version="4.6.0" />
2324
<dependency id="Microsoft.Win32.Registry" version="4.5.0" />
2425
<dependency id="DynamicLanguageRuntime" version="[1.2.3-alpha0]" />
2526
</group>
2627
<group targetFramework="netstandard2.0">
28+
<dependency id="System.Memory" version="4.5.3" />
2729
<dependency id="System.Text.Encoding.CodePages" version="4.6.0" />
2830
<dependency id="Microsoft.Win32.Registry" version="4.5.0" />
2931
<dependency id="DynamicLanguageRuntime" version="[1.2.3-alpha0]" />

Package/pkg/Pkg.Packaging.targets

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@
1515
</ItemGroup>
1616

1717
<ItemGroup>
18-
<ApplicationFiles Include="$(StageDir)/net45/*.exe" />
19-
<ApplicationFiles Include="$(StageDir)/net45/*.dll" Exclude="IronPythonTest.dll" />
18+
<ApplicationFiles Include="$(StageDir)/net46/*.exe" />
19+
<ApplicationFiles Include="$(StageDir)/net46/*.dll" Exclude="IronPythonTest.dll" />
2020
</ItemGroup>
2121

2222
<ItemGroup>
23-
<DLLFiles Include="$(StageDir)/net45/DLLs/*.dll" />
23+
<DLLFiles Include="$(StageDir)/net46/DLLs/*.dll" />
2424
</ItemGroup>
2525

26-
<Exec Command="chmod 777 $(StageDir)/net45/*.exe" />
26+
<Exec Command="chmod 777 $(StageDir)/net46/*.exe" />
2727
<Exec Command="rm -rf $(PackageTempFolder)" />
2828
<Exec Command="mkdir -p $(PackageTempFolder)" />
2929

@@ -38,7 +38,7 @@
3838
<Copy SourceFiles="@(StdLibFiles)" DestinationFolder="$(PackageLayoutRootDir)/lib/%(StdLibFiles.RecursiveDir)"/>
3939
<Copy SourceFiles="@(DLLFiles)" DestinationFolder="$(PackageLayoutRootDir)/DLLs" />
4040

41-
<Exec Command="pkgbuild --root $(PackageTempFolder) --identifier 'org.dotnet.ironpython27' --version '$(PackageVersion)' $(PackageDir)/IronPython-$(PackageVersion).pkg" />
41+
<Exec Command="pkgbuild --root $(PackageTempFolder) --identifier 'org.dotnet.ironpython34' --version '$(PackageVersion)' $(PackageDir)/IronPython-$(PackageVersion).pkg" />
4242

4343
<!-- cleanup the directory -->
4444
<Exec Command="rm -rf $(PackageTempFolder)" />

0 commit comments

Comments
 (0)