Skip to content

Modify Tizen TFM to support netstandard2.0#1232

Merged
emgarten merged 1 commit into
NuGet:devfrom
WonyoungChoi:fix_tizen_ns20
Mar 21, 2017
Merged

Modify Tizen TFM to support netstandard2.0#1232
emgarten merged 1 commit into
NuGet:devfrom
WonyoungChoi:fix_tizen_ns20

Conversation

@WonyoungChoi
Copy link
Copy Markdown
Contributor

@WonyoungChoi WonyoungChoi commented Mar 10, 2017

For Tizen .NET, the TFM version will be restarted from 1.0.
And Tizen 1.x will support .NETStandard 2.0 when .NETCore 2.0 is released.
Thus, the versioning mapping for Tizen 3.x and Tizen4.x are not needed now.

@dnfclas
Copy link
Copy Markdown

dnfclas commented Mar 10, 2017

@WonyoungChoi,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@emgarten
Copy link
Copy Markdown
Member

@WonyoungChoi this change looks good, but there are some conflicts with how this will ship. You have two options.

  1. Ship Tizen support in VS 15.1/NuGet 4.1.0 using the existing Tizen3.0/Tizen4.0 but no support for netstandard2.0. Then change this PR to build on that instead of going to Tizen1.0.
  2. I can remove Tizen support from VS 15.1/NuGet 4.1.0 and we can ship Tizen for the first time in VS 15.3/NuGet 4.3.0 and go with this PR.

Let me know which release schedule works better for you.

4.1.0 is currently in the release-4.1.0-rtm branch. The dev branch is 4.3.0.

@WonyoungChoi
Copy link
Copy Markdown
Contributor Author

@emgarten Can I know when VS 15.3/NuGet 4.3.0 is released?

@emgarten
Copy link
Copy Markdown
Member

@rrelyea for the timelines

@WonyoungChoi
Copy link
Copy Markdown
Contributor Author

WonyoungChoi commented Mar 15, 2017

@emgarten We'd better choose the first option. Using Tizen TFM on time is more important than supporting netstandard 2.0.
Please just ship Tizen support in VS 15.1/NuGet 4.1.0 without supporting netstandard2.0.
I am going to change this PR so that Tizen3 supports netstandard2.0 in VS 15.3/NuGet 4.3.0.

Using Tizen 1.0 is cancelled.

@WonyoungChoi WonyoungChoi force-pushed the fix_tizen_ns20 branch 2 times, most recently from 486388d to 04a1bf1 Compare March 15, 2017 10:11
@emgarten
Copy link
Copy Markdown
Member

@WonyoungChoi should it be that Tizen5.0 supports netstandard2.0 instead?

What you have in this PR is:
Previous mappings:
Tizen3.0 -> netstandard1.6
Tizen4.0 -> netstandard1.7

New mapping:
Tizen3.0 -> netstandard2.0

If Tizen4.0 will already be shipping with 4.1.0 then you need to keep that mapping.

I would instead expect it to be:
Tizen3.0 -> netstandard1.6
Tizen4.0 -> netstandard1.7
Tizen5.0 -> netstandard2.0

@emgarten
Copy link
Copy Markdown
Member

@WonyoungChoi could you also let me know what the plan is for future releases of Tizen, will each one be a new version and old ones will stay the same? Or will older versions such as Tizen3.0 be updated to include new APIs?

@WonyoungChoi
Copy link
Copy Markdown
Contributor Author

We are going to update Tizen 3.0 to support .NETCore 2.0 this year.
And also Tizen 4.0 are going to be released at the end of year.

I think the new mapping has no problem.
In NuGet 4.1.0, Users can use either tizen30 or tizen40, and restore netstandard1.6 or 1.7.
In NuGet 4.3.0, Users can also use either tizen30 or tizen40, and restore netstandard2.0.
Even there is no package using Tizen TFM yet.

Although we and users are not able to use netstandard2.0 until NuGet 4.3.0 is released,
it is not a big problem because it is possible to develop Tizen .NET API with ns 1.6 now.

I know this is not a clean solution.

If there is strict rule that must keep existing mapping, it is possible to keep Tizen3 and change Tizen4 to support ns2.0 only.
Tizen3 -> netstandard1.6
Tizen4 -> netstandard2.0

Tizen 4.x supports netstandard 2.0.
@WonyoungChoi
Copy link
Copy Markdown
Contributor Author

I am sorry for the confusion.

I'd like to just change Tizen4 to support nestandard 2.0 instead of 1.7.
("1.7" was a placeholder indicating the newer version of netstandard in dev branch)

@emgarten
Copy link
Copy Markdown
Member

@WonyoungChoi are you still planning to update Tizen3.0 to support netstandard2.0 in the future? Will any releases be updated in the future without incrementing the version number?

@WonyoungChoi
Copy link
Copy Markdown
Contributor Author

@emgarten
There was a lot of discussion internally yesterday.

The Tizen TFM version will refer to API level of Tizen .NET.
And it will be used separately from the native Tizen Platform version.

It is possible that Tizen 3.0 will be updated again after Tizen 4.0 is released.
But, Tizen TFM will use incrementing version number always.

for example, (THIS IS JUST AN EXAMPLE)

Tizen5 TFM can be used in Tizen 3.x platform.

(Platform - TFM -> Supports)
Tizen3.0 - tizen3 -> netstandard1.6
Tizen4.0 - tizen4 -> netstandard2.0
Tizen3.1 - tizen5 -> netstandard2.1
Tizen4.1 - tizen6 -> netstandard2.5

@WonyoungChoi
Copy link
Copy Markdown
Contributor Author

In addition,
Tizen .NET is an independent solution that can be installed on the Tizen Platform.

@emgarten
Copy link
Copy Markdown
Member

Tizen TFM will use incrementing version number always.

This sounds like a good idea, it will make it much easier for package authors if the version matches the API surface area.

Should Tizen4.0 be removed from the NuGet 4.1 release and only added here to NuGet 4.3?

@WonyoungChoi
Copy link
Copy Markdown
Contributor Author

@emgarten
In Nuget 4.3, it is not necessary to remove Tizen4 TFM from the NuGet 4.1 if it is possible to just modify it according to this PR because Tizen4 TFM is not used anywhere yet and it is latest version of Tizen TFM currently.

Copy link
Copy Markdown
Contributor

@mishra14 mishra14 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

@emgarten emgarten merged commit f0f9186 into NuGet:dev Mar 21, 2017
@emgarten
Copy link
Copy Markdown
Member

Thanks for the explanation @WonyoungChoi, I've merged this into dev branch, it will go in 4.3.0 with the rest of the netstandard 2.0.0 support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants