You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2022/01/10 13:59:00 UTC

[jira] [Commented] (AVRO-3238) Unify TargetFrameworks for C# projects

    [ https://issues.apache.org/jira/browse/AVRO-3238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17472018#comment-17472018 ] 

ASF subversion and git services commented on AVRO-3238:
-------------------------------------------------------

Commit d980ce42a5bdb3462b4117d5ff7850b282d44a5a in avro's branch refs/heads/branch-1.11 from Zoltan Csizmadia
[ https://gitbox.apache.org/repos/asf?p=avro.git;h=d980ce4 ]

AVRO-3238: Unify TargetFrameworks for C# projects (#1376)

* Unify TargetFrameworks

* Add net6.0 to common.props

Co-authored-by: Zoltan Csizmadia <Cs...@valassis.com>
(cherry picked from commit 613dd99f3f096a482fbce9579572dac4634c0858)


> Unify TargetFrameworks for C# projects
> --------------------------------------
>
>                 Key: AVRO-3238
>                 URL: https://issues.apache.org/jira/browse/AVRO-3238
>             Project: Apache Avro
>          Issue Type: Improvement
>            Reporter: Zoltan Csizmadia
>            Assignee: Zoltan Csizmadia
>            Priority: Minor
>              Labels: pull-request-available
>             Fix For: 1.11.1
>
>          Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> h3. Issues:
>  # If netstandard2.0 is a target, no need to add net462, sonce .NET FW 4.6.1+ supports using .NET STandard libraries
>  # I dont think there is a need for .NET FW 4.0 support ay more
>  # The csproj builds for different targets based on running on Windows or Linux
>  # Many of the projects support different (maybe legacy) frameworks, e.g. ipc, ipc.test
> h3. Proposal:
>  
> Add the following to {{common.props}} (root of all csharp projects):
> <PropertyGroup Label="Target Frameworks">
>      <!-- Exe -->
>      <DefaultExeTargetFrameworks>netcoreapp3.1;net5.0</DefaultExeTargetFrameworks>
>      <!-- Library -->
>      <DefaultLibraryTargetFrameworks>netstandard2.0;netstandard2.1</DefaultLibraryTargetFrameworks>
>      <!-- Unit Tests -->
>      <DefaultUnitTestsTargetFrameworks>$(DefaultExeTargetFrameworks)</DefaultUnitTestsTargetFrameworks>
>  </PropertyGroup>
>  
> Use the following for Exe projects:
> {{<TargetFrameworks>$(DefaultExeTargetFrameworks)</TargetFrameworks>}}
>  
> Use the following for Library projects:
> {{<TargetFrameworks>$(DefaultLibraryTargetFrameworks)</TargetFrameworks>}}
>  
> Use the following for Unit Tests projects:
> {{<TargetFrameworks>$(DefaultLibraryTargetFrameworks)</TargetFrameworks>}}
> h3. Pros
>  # The projects builds are very uniform across Linux and Windows
>  # New Target framework (e.g. the upcoming net6.0) is easy to add, just simple editing common.props
> h3. Cons
> .NET Framework 4.6+ will be supported (via .NET Standard 2.0), which in my opinion is acceptable in 2021



--
This message was sent by Atlassian Jira
(v8.20.1#820001)