This is an automated email from the ASF dual-hosted git repository.

westonpace pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new f6bb03e391 GH-33783: [C#] Update release verification to use .NET 7.0 
(#33799)
f6bb03e391 is described below

commit f6bb03e391bc9d3ee627b405aa36da3cfc9b7abb
Author: Weston Pace <[email protected]>
AuthorDate: Mon Feb 6 11:56:17 2023 -0800

    GH-33783: [C#] Update release verification to use .NET 7.0 (#33799)
    
    Update verification script to download and install 7.0 but run tests 
against 6.0 if the 6.0 SDK is present.  Update examples to use 7.0 only.
    * Closes: #33783
    
    Authored-by: Weston Pace <[email protected]>
    Signed-off-by: Weston Pace <[email protected]>
---
 .github/workflows/csharp.yml                       |  6 ++---
 .github/workflows/dev.yml                          |  2 +-
 ci/docker/conda-integration.dockerfile             |  2 +-
 ci/docker/ubuntu-20.04-csharp.dockerfile           |  2 +-
 .../FlightAspServerExample.csproj                  |  2 +-
 .../FlightClientExample/FlightClientExample.csproj |  2 +-
 .../FluentBuilderExample.csproj                    |  2 +-
 .../Apache.Arrow.Benchmarks.csproj                 |  2 +-
 .../Apache.Arrow.Flight.TestWeb.csproj             |  2 +-
 .../Apache.Arrow.Flight.Tests.csproj               |  3 +--
 .../Apache.Arrow.IntegrationTest.csproj            |  2 +-
 .../Apache.Arrow.Tests/Apache.Arrow.Tests.csproj   |  2 +-
 dev/archery/archery/integration/tester_csharp.py   |  2 +-
 dev/release/verify-release-candidate.sh            | 28 ++++++++++++----------
 dev/tasks/verify-rc/github.macos.amd64.yml         |  2 +-
 15 files changed, 31 insertions(+), 30 deletions(-)

diff --git a/.github/workflows/csharp.yml b/.github/workflows/csharp.yml
index 5968dded43..1ecacf226a 100644
--- a/.github/workflows/csharp.yml
+++ b/.github/workflows/csharp.yml
@@ -46,7 +46,7 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        dotnet: ['6.0.x']
+        dotnet: ['7.0.x']
     steps:
       - name: Install C#
         uses: actions/setup-dotnet@v2
@@ -74,7 +74,7 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        dotnet: ['6.0.x']
+        dotnet: ['7.0.x']
     steps:
       - name: Install C#
         uses: actions/setup-dotnet@v2
@@ -101,7 +101,7 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        dotnet: ['6.0.x']
+        dotnet: ['7.0.x']
     steps:
       - name: Install C#
         uses: actions/setup-dotnet@v2
diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml
index 271a05979a..a08d8e843c 100644
--- a/.github/workflows/dev.yml
+++ b/.github/workflows/dev.yml
@@ -94,7 +94,7 @@ jobs:
       - name: Install .NET
         uses: actions/setup-dotnet@v2
         with:
-          dotnet-version: '6.0.x'
+          dotnet-version: '7.0.x'
       - name: Install Dependencies
         shell: bash
         run: |
diff --git a/ci/docker/conda-integration.dockerfile 
b/ci/docker/conda-integration.dockerfile
index a455ce381e..0c4c01d3da 100644
--- a/ci/docker/conda-integration.dockerfile
+++ b/ci/docker/conda-integration.dockerfile
@@ -53,7 +53,7 @@ RUN wget -nv -O - 
https://dl.google.com/go/go${go}.linux-${arch}.tar.gz | tar -x
 
 ENV DOTNET_ROOT=/opt/dotnet \
     PATH=/opt/dotnet:$PATH
-RUN curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin -Channel 
6.0 -InstallDir /opt/dotnet
+RUN curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin -Channel 
7.0 -InstallDir /opt/dotnet
 
 ENV ARROW_BUILD_INTEGRATION=ON \
     ARROW_BUILD_STATIC=OFF \
diff --git a/ci/docker/ubuntu-20.04-csharp.dockerfile 
b/ci/docker/ubuntu-20.04-csharp.dockerfile
index fe4617aa35..88fe789121 100644
--- a/ci/docker/ubuntu-20.04-csharp.dockerfile
+++ b/ci/docker/ubuntu-20.04-csharp.dockerfile
@@ -16,7 +16,7 @@
 # under the License.
 
 ARG arch=amd64
-ARG dotnet=6.0
+ARG dotnet=7.0
 ARG platform=focal
 FROM mcr.microsoft.com/dotnet/sdk:${dotnet}-${platform}-${arch}
 
diff --git 
a/csharp/examples/FlightAspServerExample/FlightAspServerExample.csproj 
b/csharp/examples/FlightAspServerExample/FlightAspServerExample.csproj
index 064cba08fc..98e8bb324c 100644
--- a/csharp/examples/FlightAspServerExample/FlightAspServerExample.csproj
+++ b/csharp/examples/FlightAspServerExample/FlightAspServerExample.csproj
@@ -20,7 +20,7 @@
 <Project Sdk="Microsoft.NET.Sdk.Web">
 
   <PropertyGroup>
-    <TargetFramework>net6.0</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
     <Nullable>enable</Nullable>
     <ImplicitUsings>enable</ImplicitUsings>
     <LangVersion>10</LangVersion>
diff --git a/csharp/examples/FlightClientExample/FlightClientExample.csproj 
b/csharp/examples/FlightClientExample/FlightClientExample.csproj
index 854d3ea5d6..228c5cf4ea 100644
--- a/csharp/examples/FlightClientExample/FlightClientExample.csproj
+++ b/csharp/examples/FlightClientExample/FlightClientExample.csproj
@@ -21,7 +21,7 @@
   
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFramework>net6.0</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
diff --git a/csharp/examples/FluentBuilderExample/FluentBuilderExample.csproj 
b/csharp/examples/FluentBuilderExample/FluentBuilderExample.csproj
index ff66d69800..a7bd5392f0 100644
--- a/csharp/examples/FluentBuilderExample/FluentBuilderExample.csproj
+++ b/csharp/examples/FluentBuilderExample/FluentBuilderExample.csproj
@@ -2,7 +2,7 @@
   
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFramework>net6.0</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
diff --git a/csharp/test/Apache.Arrow.Benchmarks/Apache.Arrow.Benchmarks.csproj 
b/csharp/test/Apache.Arrow.Benchmarks/Apache.Arrow.Benchmarks.csproj
index a2d142911c..c85c0c55d6 100644
--- a/csharp/test/Apache.Arrow.Benchmarks/Apache.Arrow.Benchmarks.csproj
+++ b/csharp/test/Apache.Arrow.Benchmarks/Apache.Arrow.Benchmarks.csproj
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFramework>net6.0</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
diff --git 
a/csharp/test/Apache.Arrow.Flight.TestWeb/Apache.Arrow.Flight.TestWeb.csproj 
b/csharp/test/Apache.Arrow.Flight.TestWeb/Apache.Arrow.Flight.TestWeb.csproj
index b07959cf55..63e28271de 100644
--- a/csharp/test/Apache.Arrow.Flight.TestWeb/Apache.Arrow.Flight.TestWeb.csproj
+++ b/csharp/test/Apache.Arrow.Flight.TestWeb/Apache.Arrow.Flight.TestWeb.csproj
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk.Web">
 
   <PropertyGroup>
-    <TargetFramework>net6.0</TargetFramework>
+    <TargetFrameworks>net7.0</TargetFrameworks>
   </PropertyGroup>
 
   <ItemGroup>
diff --git 
a/csharp/test/Apache.Arrow.Flight.Tests/Apache.Arrow.Flight.Tests.csproj 
b/csharp/test/Apache.Arrow.Flight.Tests/Apache.Arrow.Flight.Tests.csproj
index b72720642d..2b150955d0 100644
--- a/csharp/test/Apache.Arrow.Flight.Tests/Apache.Arrow.Flight.Tests.csproj
+++ b/csharp/test/Apache.Arrow.Flight.Tests/Apache.Arrow.Flight.Tests.csproj
@@ -1,8 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>net6.0</TargetFramework>
-
+    <TargetFrameworks>net7.0</TargetFrameworks>
     <IsPackable>false</IsPackable>
   </PropertyGroup>
 
diff --git 
a/csharp/test/Apache.Arrow.IntegrationTest/Apache.Arrow.IntegrationTest.csproj 
b/csharp/test/Apache.Arrow.IntegrationTest/Apache.Arrow.IntegrationTest.csproj
index 8d85b0952c..a6c635a79a 100644
--- 
a/csharp/test/Apache.Arrow.IntegrationTest/Apache.Arrow.IntegrationTest.csproj
+++ 
b/csharp/test/Apache.Arrow.IntegrationTest/Apache.Arrow.IntegrationTest.csproj
@@ -3,7 +3,7 @@
 
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFramework>net6.0</TargetFramework>
+    <TargetFrameworks>net7.0</TargetFrameworks>
   </PropertyGroup>
 
   <ItemGroup>
diff --git a/csharp/test/Apache.Arrow.Tests/Apache.Arrow.Tests.csproj 
b/csharp/test/Apache.Arrow.Tests/Apache.Arrow.Tests.csproj
index f41261767c..afe5073589 100644
--- a/csharp/test/Apache.Arrow.Tests/Apache.Arrow.Tests.csproj
+++ b/csharp/test/Apache.Arrow.Tests/Apache.Arrow.Tests.csproj
@@ -2,7 +2,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>net6.0</TargetFramework>
+    <TargetFrameworks>net7.0</TargetFrameworks>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
   </PropertyGroup>
 
diff --git a/dev/archery/archery/integration/tester_csharp.py 
b/dev/archery/archery/integration/tester_csharp.py
index 3f24d5f264..018731d573 100644
--- a/dev/archery/archery/integration/tester_csharp.py
+++ b/dev/archery/archery/integration/tester_csharp.py
@@ -25,7 +25,7 @@ from ..utils.source import ARROW_ROOT_DEFAULT
 _EXE_PATH = os.path.join(
     ARROW_ROOT_DEFAULT,
     "csharp/artifacts/Apache.Arrow.IntegrationTest",
-    "Debug/net6.0/Apache.Arrow.IntegrationTest",
+    "Debug/net7.0/Apache.Arrow.IntegrationTest",
 )
 
 
diff --git a/dev/release/verify-release-candidate.sh 
b/dev/release/verify-release-candidate.sh
index 9e044d205b..ab7591a634 100755
--- a/dev/release/verify-release-candidate.sh
+++ b/dev/release/verify-release-candidate.sh
@@ -347,18 +347,15 @@ install_csharp() {
 
   show_info "Ensuring that C# is installed..."
 
-  if which dotnet > /dev/null 2>&1; then
+  if dotnet --version | grep 7\.0 > /dev/null 2>&1; then
     local csharp_bin=$(dirname $(which dotnet))
-    if ! which sourcelink > /dev/null 2>&1; then
-      local dotnet_tools_dir=$HOME/.dotnet/tools
-      if [ -d "${dotnet_tools_dir}" ]; then
-        PATH="${dotnet_tools_dir}:$PATH"
-      fi
-    fi
     show_info "Found C# at $(which csharp) (.NET $(dotnet --version))"
   else
+    if which dotnet > /dev/null 2>&1; then
+      show_info "dotnet found but it is the wrong version and will be ignored."
+    fi
     local csharp_bin=${ARROW_TMPDIR}/csharp/bin
-    local dotnet_version=6.0.202
+    local dotnet_version=7.0.102
     local dotnet_platform=
     case "$(uname)" in
       Linux)
@@ -382,10 +379,11 @@ install_csharp() {
   fi
 
   # Ensure to have sourcelink installed
-  if ! which sourcelink > /dev/null 2>&1; then
-    dotnet tool install --tool-path ${csharp_bin} sourcelink
+  if ! dotnet tool list | grep sourcelink > /dev/null 2>&1; then
+    dotnet new tool-manifest
+    dotnet tool install --local sourcelink
     PATH=${csharp_bin}:${PATH}
-    if ! sourcelink --help > /dev/null 2>&1; then
+    if ! dotnet tool run sourcelink --help > /dev/null 2>&1; then
       export DOTNET_ROOT=${csharp_bin}
     fi
   fi
@@ -835,8 +833,12 @@ test_csharp() {
     mv ../.git dummy.git
   fi
 
-  sourcelink test 
artifacts/Apache.Arrow/Release/netstandard1.3/Apache.Arrow.pdb
-  sourcelink test artifacts/Apache.Arrow/Release/netcoreapp3.1/Apache.Arrow.pdb
+  if [ "${SOURCE_KIND}" = "local" ]; then
+    echo "Skipping sourelink verification on local build"
+  else
+    dotnet tool run sourcelink test 
artifacts/Apache.Arrow/Release/netstandard1.3/Apache.Arrow.pdb
+    dotnet tool run sourcelink test 
artifacts/Apache.Arrow/Release/netcoreapp3.1/Apache.Arrow.pdb
+  fi
 
   popd
 }
diff --git a/dev/tasks/verify-rc/github.macos.amd64.yml 
b/dev/tasks/verify-rc/github.macos.amd64.yml
index 7205b33371..506975e192 100644
--- a/dev/tasks/verify-rc/github.macos.amd64.yml
+++ b/dev/tasks/verify-rc/github.macos.amd64.yml
@@ -60,7 +60,7 @@ jobs:
 
       - uses: actions/setup-dotnet@v2
         with:
-          dotnet-version: '6.0.x'
+          dotnet-version: '7.0.x'
 
       - uses: actions/setup-node@v2-beta
         with:

Reply via email to