BT

.NET Core Plans to Drop project.json

| by Jonathan Allen Follow 576 Followers on May 17, 2016. Estimated reading time: 1 minute |

Microsoft has come to the conclusion that the project.json experiment has failed and will be shifting back to using .csproj files. However, this won’t happen right away and the recently released .NET Core RC2 (a.k.a. tooling preview 1) will continue to use a combination of .xproj and project.json.

Starting in .NET Core RTM/tooling preview 2, Visual Studio will automatically rename .xproj files as .csproj. However, the project.json’s functionality won’t change just yet.

After preview 2, Microsoft will start working on moving project.json’s functionality into csproj. Some of that will simply require updating Visual Studio. For example, .csproj already support wildcards, even though Visual Studio insists on adding source files one by one. Other features of project.json may require significantly more work to integrate into .csproj.

At the end of this process, project.json may only exist as an alternative to Nuget’s packages.config file. If that happens, it will probably be renamed to nuget.json.

MSBuild

For those of you who don’t know, .csproj files are really just specialized versions .msbuild scripts. This means MSBuild will need to be available wherever .NET Core runs.

Long term, Microsoft is looking into adding NuGet functionality directly to MSBuild. (Currently MSBuild relies on extensions to access NuGet.)

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Any source for this post? by Tiger Wang

I thought MS has just started supporting project.json...

Re: Any source for this post? by Jonathan Allen

project.json is also part of Windows Universal Apps, so it's been around for a little while.

They didn't explicitly list out their reasons, but basically its coming down to how difficult it is to support 2 wildly different project file formats. And from what I gather, project.json really doesn't work outside of Microsoft's own tooling, which is a problem for third party tool developers (and probably their own teams as well).

Sorry I forgot the link to the ASP.NET Community Standup.

www.youtube.com/watch?v=P9HqMZviaMg&list=PL...

I liked Project.json a lot but.... by Vijay Jain

Yes, I read that too last week here www.talkingdotnet.com/news-project-json-asp-net...

It is going to go after the RTM release. I believe microsoft itself is not clear what they want. Project.json was a welcome change and I personally liked it lot. JSON is better than XML but now we are back to .csproj with XML. First they changed the name and now they are changing this. Our team was planning to start a new project on RC1 and thank god we didn't used it for our customer. I understand this is a small change and Visual studio will do it automatically but migration from RC1 to RC2 is also pain. Let's hope nothing changes after RTM.

Re: I liked Project.json a lot but.... by Raul Planas

I personally would not mind moving to csproj file. Consistent in one location. And would probably provide more direct support for conditional compilation/includes of NuGet packages. This would be great for internal development of NuGet packages where consumers could dynamically choose to reference debug vs release versions of NuGet package.

Sad to hear! by Jesse Thompson

Very sad by this decision. project.json is a 100% better experience

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

5 Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT