-
Notifications
You must be signed in to change notification settings - Fork 8.1k
Migrate from project.json to MSBuild #3398
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
src/TypeCatalogParser/project.json
Outdated
| "Microsoft.NETCore.App": "1.1.0", | ||
| "Microsoft.DotNet.ProjectModel": "1.0.0-rc3-1-003177", | ||
| "Microsoft.DotNet.Cli.Utils": "1.0.0-preview3-004056" | ||
| "Microsoft.DotNet.ProjectModel": "1.0.0-rc3-1-003177" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems the file src/TypeCatalogParser/project.json should be removed.
src/powershell-unix/project.json
Outdated
| "frameworks": { | ||
| "netcoreapp1.1": { | ||
| "imports": [ "dnxcore50", "portable-net45+win8" ], | ||
| "buildOptions": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems the file src/powershell-unix/project.json should be removed.
test/PSReadLine/project.json
Outdated
| "frameworks": { | ||
| "netcoreapp1.1": { | ||
| "imports": [ "dnxcore50", "portable-net45+win8" ], | ||
| "dependencies": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems the file test/PSReadLine/project.json should be removed.
test/csharp/project.json
Outdated
| "imports": [ "dnxcore50", "portable-net45+win8" ], | ||
| "dependencies": { | ||
| "xunit": "2.2.0-beta4-build3444", | ||
| "xunit": "2.2.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems the file test/csharp/project.json should be removed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, thank you! These project.json files were revived when I was resolving the conflicts.
lzybkr
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We'll want to move many of the commonly set properties into a shared .props and include it, but this is fine for a first cut.
Track it by #3406 |
|
Talked to @TravisEz13 offline and he has verified that the MSBuild change works on OpenSUSE. |
| </PropertyGroup> | ||
|
|
||
| <ItemGroup> | ||
| <ProjectReference Include="..\Microsoft.PowerShell.Security\Microsoft.PowerShell.Security.csproj" /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not "ProjectReference Include="..\System.Management.Automation\System.Management.Automation.csproj" /" ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Microsoft.PowerShell.Security.csproj has a ProjectReference to System.Management.Automation.csproj, so the dependency is chained together.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I ask because all other csproj files contains direct reference on "System.Management.Automation.csproj" and only the file contains indirect reference.
|
It seems CorePsTypeCatalog.cs don't updated by TypeCatalogGen.exe . Is it well? |
|
@iSazonov |
|
After |
|
You need |
|
|
|
Say we move to .NET Core 2.0 and you are still using |
|
Thanks for clarify! It looks that we should add this ( |
Fix #3140
build.psm1andAppVeyor.psm1are disabled. They are not cleaned up frombuild.psm1andAppVeyor.psm1yet. We need to adopt .NET Core 2.0 to verify the portable module concept, and if that works well, we will remove the Windows PowerShell source code and clean up our scripts.dnxcore50andportable-net5+win8target framework monikers are removed.Microsoft.NETCore.Portable.Compatibilityis removed. It's not necessary, but it may come back when we work on supporting theportable module. Its necessity can be reviewed at that time.The
TypeCatalogParserproject is replaced by a MSBuild target to gather the dependency information.Due to .NET Core SDK issue #1021, our meta-package project
Microsoft.PowerShell.SDKstarts to generate an empty assembly during the build and that results in an empty assemblyMicrosoft.PowerShell.SDK.dllappear inpublishfolder and in.deps.jsonfile. We cannot simply remove the assembly because it's now part of the TPA, and removing it will cause powershell to crash at startup. We have to live with this empty assembly until that .NET Core SDK issue is fixed. It's tracked by #3401/cc: @PowerShell/area-build