peachpiecompiler / peachpie

PeachPie - the PHP compiler and runtime for .NET and .NET Core
https://www.peachpie.io
Apache License 2.0
2.33k stars 202 forks source link

To build on .NET 6.0 #1097

Closed jee-mj closed 1 year ago

jee-mj commented 1 year ago

I worked to try to get the WordPress plugin running on .NET 6.0, but ran into issues because I do not have a custom NUGET repo setup. Just wanted to share this ASAP. I have it building correctly, I think.

dnfadmin commented 1 year ago

CLA assistant check
All CLA requirements met.

jee-mj commented 1 year ago

I think the appveyor build failed because it wanted to use NET 5.0 but the commit changes are just the version change to NET 6.0

VannaDii commented 1 year ago

Where does AppVeyor read the deps from? Can this be adjusted to use net6.0?

jakubmisek commented 1 year ago

PeachPie is fully compatible with WordPress on .NET 6.0 (as you can see on https://github.com/iolevel/wpdotnet-sdk/tree/master/app or https://github.com/iolevel/peachpie-wordpress/tree/master/app)

There is no need to change the .NET SDK to 6.0 unless you'd like to take advantage of .NET 6.0 right in the PeachPie codebase (in this repo source codes).

Also, your commit contains your NuGet packages ...

May I ask what is the point of this PR?

jakubmisek commented 1 year ago

appveyor just builds the solution in the root of the project, using Visual Studio 2019 environment.

jee-mj commented 1 year ago

PeachPie is fully compatible with WordPress on .NET 6.0 (as you can see on https://github.com/iolevel/wpdotnet-sdk/tree/master/app or https://github.com/iolevel/peachpie-wordpress/tree/master/app)

There is no need to change the .NET SDK to 6.0 unless you'd like to take advantage of .NET 6.0 right in the PeachPie codebase (in this repo source codes).

Also, your commit contains your NuGet packages ...

May I ask what is the point of this PR?

well .NET 6 was just a test using an LTS release of .NET.

It's mostly for testing purposes after the performance improvements touted in .NET 7.


I was having trouble understanding the format of the output nuget packages. There are a lot more .nupkg files here than expected: https://github.com/jee-mj/peachpie/tree/master/.nugs

Still have not looked at local Nuget repositories. Is there any documentation regarding the output packages?

jakubmisek commented 1 year ago

@jee-mj yep, but by changing the SDK version of the compiler you're only changing the minimum framework supported by PeachPie.

Just change the target framework of your executable app to net60/net70/net80/... and you'll get the performance improvements you want.

.nugs folder is supposed to be empty, see: