Skip to content

Instantly share code, notes, and snippets.

@omajid
Created October 17, 2023 13:02
Show Gist options
  • Save omajid/c8124bd9d1b25696803253b0516c5098 to your computer and use it in GitHub Desktop.
Save omajid/c8124bd9d1b25696803253b0516c5098 to your computer and use it in GitHub Desktop.
diff --git a/.fmf/version b/.fmf/version
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/.fmf/version
@@ -0,0 +1 @@
+1
diff --git a/README.md b/README.md
index 76a7872..42d2203 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,9 @@
-# dotnet7.0
+# dotnet8.0
-This is the .NET 7.0 package for Fedora.
+This is the work in progress .NET 8.0 package for Fedora.
+
+Builds for Fedora, CentOS Stream and RHEL are available from
+https://copr.fedorainfracloud.org/coprs/g/dotnet-sig/dotnet-preview/
This package is maintained by the Fedora DotNet SIG (Special Interest
Group). You can find out more about the DotNet SIG at:
diff --git a/build-arm64-bootstrap-tarball b/build-arm64-bootstrap-tarball
index bfd7f02..27631ef 100755
--- a/build-arm64-bootstrap-tarball
+++ b/build-arm64-bootstrap-tarball
@@ -20,19 +20,20 @@ function parse-nuget-name-version-from-file() {
bootstrap_dir=$(readlink -f "$1")
-version=${2:-$(jq -r '.tools.dotnet' "$bootstrap_dir"/global.json)}
+sdk_version=${2:-$(jq -r '.tools.dotnet' "$bootstrap_dir"/global.json)}
-date=$(date +%F)
+mkdir -p "dotnet-prebuilts-${sdk_version}-arm64"
-mkdir -p "dotnet-arm64-prebuilts-$date"
-
-pushd "dotnet-arm64-prebuilts-$date"
+pushd "dotnet-prebuilts-${sdk_version}-arm64"
# Binaries can be at one of several different URLs:
-wget https://dotnetcli.azureedge.net/dotnet/Sdk/$version/dotnet-sdk-$version-linux-arm64.tar.gz
-#wget https://dotnetbuilds.azureedge.net/public/Sdk/$version/dotnet-sdk-$version-linux-arm64.tar.gz
+# GA releases:
+if ! wget "https://dotnetcli.azureedge.net/dotnet/Sdk/${sdk_version}/dotnet-sdk-${sdk_version}-linux-arm64.tar.gz" ; then
+ # Preview releases:
+ wget "https://dotnetbuilds.azureedge.net/public/Sdk/${sdk_version}/dotnet-sdk-${sdk_version}-linux-arm64.tar.gz"
+fi
-for archive in "$bootstrap_dir"/packages/archive/*.tar.gz; do
+for archive in "$bootstrap_dir"/prereqs/packages/archive/*.tar.gz; do
mapfile -t linux_x64_packages < <(tar tf "$archive" | grep linux-x64)
for package in "${linux_x64_packages[@]}"; do
@@ -52,4 +53,4 @@ done
popd
-tar czf "dotnet-arm64-prebuilts-$date.tar.gz" "dotnet-arm64-prebuilts-$date"
+tar czf "dotnet-prebuilts-${sdk_version}-arm64.tar.gz" "dotnet-prebuilts-${sdk_version}-arm64"
diff --git a/build-dotnet-tarball b/build-dotnet-tarball
index 8b32840..67ac1cf 100755
--- a/build-dotnet-tarball
+++ b/build-dotnet-tarball
@@ -1,21 +1,23 @@
#!/bin/bash
# Usage:
-# build-dotnet-tarball [--bootstrap] <tag-from-installer>
+# build-dotnet-tarball [--bootstrap] <tag-from-dotnet>
#
-# Creates a source archive from a tag (or commit) at github.com/dotnet/installer
+# Creates a source archive from a tag (or commit) at
+# https://github.com/dotnet/dotnet
#
-# Clone dotnet/installer, check out the tag (if any), and build the
-# source-tarball.
+# Clone dotnet/dotnet, check out the tag, and build a source-tarball.
+# Can also use a full git commit identifier instead of tag (not an
+# abbreviated 8 character commit identifier though).
set -euo pipefail
IFS=$'\n\t'
function print_usage {
echo "Usage:"
- echo "$0 [--bootstrap] <tag-from-installer>"
+ echo "$0 [--bootstrap] <tag-from-dotnet>"
echo
- echo "Creates a source archive from a tag at https://github.com/dotnet/installer"
+ echo "Creates a source archive from a tag at https://github.com/dotnet/dotnet"
echo ""
echo " --bootstrap build a source tarball usable for bootstrapping .NET"
}
@@ -23,6 +25,7 @@ function print_usage {
function clean_dotnet_cache {
rm -rf ~/.aspnet ~/.dotnet/ ~/.nuget/ ~/.local/share/NuGet ~/.templateengine
rm -rf /tmp/NuGet /tmp/NuGetScratch /tmp/.NETCore* /tmp/.NETStandard* /tmp/.dotnet /tmp/dotnet.* /tmp/clr-debug-pipe* /tmp/Razor-Server /tmp/CoreFxPipe* /tmp/VBCSCompiler /tmp/.NETFramework*
+ rm -rf ~/.npm/
}
function check_bootstrap_environment {
@@ -116,36 +119,43 @@ if [ -f "${tarball_name}${tarball_suffix}" ]; then
fi
if [ ! -f "${unmodified_tarball_name}.tar.gz" ]; then
- temp_dir=$(mktemp -d -p "$(pwd)")
- pushd "${temp_dir}"
- mkdir installer
- pushd installer
- git init
- git remote add origin https://github.com/dotnet/installer
- git fetch --depth 1 origin "${tag}"
- git checkout FETCH_HEAD
- git submodule update --init --recursive
- clean_dotnet_cache
- mkdir -p "../${unmodified_tarball_name}"
- ./build.sh /p:ArcadeBuildTarball=true
- popd
-
- popd
-
- cp -a \
- "${temp_dir}"/installer/artifacts/packages/Debug/Shipping/dotnet-sdk-source-7*.tar.gz \
- "${unmodified_tarball_name}.tar.gz"
-
- rm -rf "${temp_dir}"
+ wget https://github.com/dotnet/dotnet/archive/refs/tags/${tag}.tar.gz
+ mv "${tag}.tar.gz" "${unmodified_tarball_name}.tar.gz"
+
+ #temp_dir=$(mktemp -d -p "$(pwd)" -t temp-build-dotnet-tarball-XXXXXXXXXX)
+ #pushd "${temp_dir}"
+ #mkdir dotnet
+ #pushd dotnet
+ #git init
+ #git remote add origin https://github.com/dotnet/dotnet
+ #git fetch --depth 1 origin "${tag}"
+ #git checkout FETCH_HEAD
+ #git submodule update --init --recursive
+ #clean_dotnet_cache
+ #./eng/pack-sources.sh -o "$(readlink -f ../../"${unmodified_tarball_name}.tar.gz")"
+ #popd
+ #popd
+
+ #rm -rf "${temp_dir}"
+
fi
-rm -rf "${tarball_name}"
+tar tf "${unmodified_tarball_name}".tar.gz > .tarball_file_list
+extracted_tarball_root=$(head -1 .tarball_file_list | cut -d/ -f 1)
+if [[ "$extracted_tarball_root" == "."* ]]; then
+ echo "error: can't find main directory in the dotnet tarball"
+ exit 1
+fi
+if [[ $(grep -cv "^${extracted_tarball_root}/" .tarball_file_list) -gt 0 ]]; then
+ echo "error: tarball doesn't have a single main directory"
+ exit 1
+fi
+rm .tarball_file_list
-mkdir -p "${unmodified_tarball_name}"
-pushd "${unmodified_tarball_name}"
-tar xf ../"${unmodified_tarball_name}.tar.gz"
-popd
-mv "${unmodified_tarball_name}" "${tarball_name}"
+rm -rf "${tarball_name}"
+rm -rf "${extracted_tarball_root}"
+tar xf "${unmodified_tarball_name}.tar.gz"
+mv "${extracted_tarball_root}" "${tarball_name}"
pushd "${tarball_name}"
@@ -166,28 +176,11 @@ fi
# expected location, we need to find the new location of the files and
# delete them, or verify that upstream has already removed the files.
-# Binaries for gradle
-rm -r src/aspnetcore/src/SignalR/clients/java/signalr/gradle*
-
-# https://github.com/dotnet/aspnetcore/issues/34785
-find src/aspnetcore/src -type d -name samples -print0 | xargs -0 rm -r
-
-# Unnecessary crypto implementation: IDEA
-rm -r src/runtime/src/tests/JIT/Performance/CodeQuality/Bytemark/
-
-# https://github.com/NuGet/Home/issues/11094
-rm -r src/nuget-client/test/EndToEnd
-
-# https://github.com/microsoft/ApplicationInsights-dotnet/issues/2670
-rm -r src/source-build-externals/src/application-insights/LOGGING/test/Shared/CustomTelemetryChannel.cs
-
-# CC-BY-SA https://gitlab.com/fedora/legal/fedora-license-data/-/issues/104#note_1230640823
-rm -r src/runtime/src/tests/sizeondisk/sodbench
-
popd
-if [[ ${build_bootstrap} == true ]]; then
- tar -I 'xz -9 -T 0' -cf "${tarball_name}${tarball_suffix}" "${tarball_name}"
-else
- tar -czf "${tarball_name}${tarball_suffix}" "${tarball_name}"
-fi
+# if [[ ${build_bootstrap} == true ]]; then
+# tar -I 'xz -9 -T 0' -cf "${tarball_name}${tarball_suffix}" "${tarball_name}"
+# else
+# tar -czf "${tarball_name}${tarball_suffix}" "${tarball_name}"
+# fi
+tar -czf "${tarball_name}${tarball_suffix}" "${tarball_name}"
diff --git a/copr-build b/copr-build
index 97faa2b..2ee2805 100755
--- a/copr-build
+++ b/copr-build
@@ -4,10 +4,10 @@ set -euo pipefail
set -x
-fedpkg --release f36 srpm 2>&1 | tee fedpkg.output
+fedpkg --release f37 srpm 2>&1 | tee fedpkg.output
srpm_name=$(grep 'Wrote: ' fedpkg.output | cut -d' ' -f 2)
ls -alh "${srpm_name}"
-copr-cli --debug build @dotnet-sig/dotnet-preview "${srpm_name}"
+copr-cli --debug build @dotnet-sig/dotnet-preview "${srpm_name}" --timeout 36000
diff --git a/dotnet7.0.spec b/dotnet8.0.spec
similarity index 84%
rename from dotnet7.0.spec
rename to dotnet8.0.spec
index d14a25d..469e415 100644
--- a/dotnet7.0.spec
+++ b/dotnet8.0.spec
@@ -1,4 +1,4 @@
-%bcond_with bootstrap
+%bcond_without bootstrap
# LTO triggers a compilation error for a source level issue. Given that LTO should not
# change the validity of any given source and the nature of the error (undefined enum), I
@@ -6,23 +6,24 @@
# until that's done, disable LTO. This has to happen before setting the flags below.
%define _lto_cflags %{nil}
-%global dotnetver 7.0
+%global dotnetver 8.0
-%global host_version 7.0.2
-%global runtime_version 7.0.2
-%global aspnetcore_runtime_version %{runtime_version}
-%global sdk_version 7.0.102
+%global host_version 8.0.0-rc.1.23419.4
+%global runtime_version 8.0.0-rc.1.23419.4
+%global aspnetcore_runtime_version 8.0.0-rc.1.23421.29
+%global sdk_version 8.0.100-rc.1.23455.1
%global sdk_feature_band_version %(echo %{sdk_version} | cut -d '-' -f 1 | sed -e 's|[[:digit:]][[:digit:]]$|00|')
-%global templates_version %{runtime_version}
+%global templates_version 8.0.0-rc.1.23421.29
#%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }')
-%global host_rpm_version %{host_version}
-%global runtime_rpm_version %{runtime_version}
-%global aspnetcore_runtime_rpm_version %{aspnetcore_runtime_version}
-%global sdk_rpm_version %{sdk_version}
+# upstream can produce releases with a different tag than the SDK version
+%global upstream_tag v8.0.0-rc.1.23419.4
+%global upstream_tag_without_v %(echo %{upstream_tag} | sed -e 's|^v||')
-# upstream can update releases without revving the SDK version so these don't always match
-%global upstream_tag v%{sdk_version}
+%global host_rpm_version 8.0.0~rc.1
+%global runtime_rpm_version 8.0.0~rc.1
+%global aspnetcore_runtime_rpm_version 8.0.0~rc.1
+%global sdk_rpm_version 8.0.100~rc.1
%if 0%{?fedora} || 0%{?rhel} < 8
%global use_bundled_libunwind 0
@@ -53,36 +54,42 @@
Name: dotnet%{dotnetver}
Version: %{sdk_rpm_version}
-Release: 1%{?dist}
+Release: 0.1%{?dist}
Summary: .NET Runtime and SDK
-License: 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
+License: 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
URL: https://github.com/dotnet/
%if %{with bootstrap}
+%global bootstrap_sdk_version 8.0.100-rc.1.23410.12
+%global tarball_name dotnet-%{upstream_tag}-x64-bootstrap
# The source is generated on a Fedora box via:
# ./build-dotnet-tarball --bootstrap %%{upstream_tag}
-Source0: dotnet-%{upstream_tag}-x64-bootstrap.tar.xz
+Source0: %{tarball_name}.tar.xz
# Generated via ./build-arm64-bootstrap-tarball
-Source1: dotnet-arm64-prebuilts-2022-10-12.tar.gz
+Source1: dotnet-prebuilts-%{bootstrap_sdk_version}-arm64.tar.gz
# Generated manually, same pattern as the arm64 tarball
-Source2: dotnet-ppc64le-prebuilts-2022-10-21.tar.gz
+Source2: dotnet-prebuilts-%{bootstrap_sdk_version}-ppc64le.tar.gz
# Generated manually, same pattern as the arm64 tarball
-Source3: dotnet-s390x-prebuilts-2022-10-12.tar.gz
+Source3: dotnet-prebuilts-%{bootstrap_sdk_version}-s390x.tar.gz
%else
-# The source is generated on a Fedora box via:
-# ./build-dotnet-tarball %%{upstream_tag}
-Source0: dotnet-%{upstream_tag}.tar.gz
+# For non-releases, the source is generated on a Fedora box via:
+# ./build-dotnet-tarball %%{upstream_tag} or commit
+%global tarball_name dotnet-sdk-source-%{upstream_tag}
+Source0: https://github.com/dotnet/dotnet/archive/refs/tags/%{upstream_tag}.tar.gz#/dotnet-%{upstream_tag}.tar.gz
%endif
+Source5: https://github.com/dotnet/dotnet/releases/download/%{upstream_tag}/release.json
-Source10: check-debug-symbols.py
-Source11: dotnet.sh.in
+#Source10: %%{tarball_name}-nm-dev.tgz
+#Source11: %%{tarball_name}-nm-prod.tgz
-# https://github.com/dotnet/installer/pull/14792
-Patch1: installer-14792-mono.patch
-# Disable apphost; there's no net6.0 apphost for ppc64le
-Patch2: roslyn-analyzers-ppc64le-apphost.patch
+Source20: check-debug-symbols.py
+Source21: dotnet.sh.in
+# Disable apphost; there's no net6.0 apphost for ppc64le
+Patch1: roslyn-analyzers-ppc64le-apphost.patch
+# https://github.com/dotnet/source-build/discussions/3481
+Patch2: vstest-intent-net8.0.patch
%if 0%{?fedora} || 0%{?rhel} >= 8
ExclusiveArch: aarch64 ppc64le s390x x86_64
@@ -109,8 +116,11 @@ BuildRequires: libicu-devel
%if ! %{use_bundled_libunwind}
BuildRequires: libunwind-devel
%endif
-%ifarch aarch64
+%ifnarch s390x
BuildRequires: lld
+%else
+# lld is not supported/available/usable on s390x
+BuildRequires: binutils
%endif
# If the build ever crashes, then having lldb installed might help the
# runtime generate a backtrace for the crash
@@ -118,12 +128,19 @@ BuildRequires: lldb
BuildRequires: llvm
BuildRequires: lttng-ust-devel
BuildRequires: make
+#BuildRequires: nodejs-devel
BuildRequires: openssl-devel
BuildRequires: python3
BuildRequires: tar
BuildRequires: util-linux
BuildRequires: zlib-devel
+
+# The tracing support in CoreCLR is optional. It has a run-time
+# dependency on some additional libraries like lttng-ust. The runtime
+# gracefully disables tracing if the dependencies are missing.
+%global __requires_exclude_from ^(%{_libdir}/dotnet/.*/libcoreclrtraceptprovider\\.so)$
+
# Avoid generating provides and requires for private libraries
%global privlibs libhostfxr
%global privlibs %{privlibs}|libclrgc
@@ -159,7 +176,7 @@ application to drive everything.
# code (source or build) is generally version specific. We have kept
# it around in older versions of RHEL and Fedora. But no reason to
# continue this mistake.
-%if ( 0%{?fedora} && 0%{?fedora} < 38 ) || ( 0%{?rhel} && 0%{?rhel} < 8 )
+%if ( 0%{?fedora} && 0%{?fedora} < 38 ) || ( 0%{?rhel} && 0%{?rhel} < 9 )
%package -n dotnet
@@ -349,6 +366,12 @@ These are not meant for general use.
%prep
+release_json_tag=$(grep tag %{SOURCE5} | cut -d: -f2 | sed -E 's/[," ]*//g')
+if [[ ${release_json_tag} != %{upstream_tag} ]]; then
+ echo "error: tag in release.json doesn't match tag in spec file"
+ exit 1
+fi
+
%if %{without bootstrap}
%setup -q -n dotnet-%{upstream_tag}
@@ -362,8 +385,8 @@ find -iname '*.zip' -type f -delete
rm -rf .dotnet/
rm -rf packages/source-built
-mkdir -p packages/archive
-ln -s %{_libdir}/dotnet/source-built-artifacts/Private.SourceBuilt.Artifacts.*.tar.gz packages/archive/
+mkdir -p prereqs/packages/archive
+ln -s %{_libdir}/dotnet/source-built-artifacts/Private.SourceBuilt.Artifacts.*.tar.gz prereqs/packages/archive/
%else
@@ -373,32 +396,32 @@ ln -s %{_libdir}/dotnet/source-built-artifacts/Private.SourceBuilt.Artifacts.*.t
rm -rf .dotnet
%ifarch aarch64
-tar -x --strip-components=1 -f %{SOURCE1} -C packages/prebuilt
+tar -x --strip-components=1 -f %{SOURCE1} -C prereqs/packages/prebuilt/
%endif
%ifarch ppc64le
-tar -x --strip-components=1 -f %{SOURCE2} -C packages/prebuilt
+tar -x --strip-components=1 -f %{SOURCE2} -C prereqs/packages/prebuilt/
%endif
%ifarch s390x
-tar -x --strip-components=1 -f %{SOURCE3} -C packages/prebuilt
+tar -x --strip-components=1 -f %{SOURCE3} -C prereqs/packages/prebuilt/
%endif
mkdir -p .dotnet
-tar xf packages/prebuilt/dotnet-sdk*.tar.gz -C .dotnet/
-rm packages/prebuilt/dotnet-sdk*.tar.gz
+tar xf prereqs/packages/prebuilt/dotnet-sdk*.tar.gz -C .dotnet/
+rm prereqs/packages/prebuilt/dotnet-sdk*.tar.gz
boot_sdk_version=$(ls -1 .dotnet/sdk/)
sed -i -E 's|"dotnet": "[^"]+"|"dotnet" : "'$boot_sdk_version'"|' global.json
%ifarch ppc64le s390x
-ilasm_version=$(ls packages/prebuilt| grep -i ilasm | tr 'A-Z' 'a-z' | sed -E 's|runtime.linux-'%{runtime_arch}'.microsoft.netcore.ilasm.||' | sed -E 's|.nupkg$||')
+ilasm_version=$(ls prereqs/packages/prebuilt| grep -i ilasm | tr 'A-Z' 'a-z' | sed -E 's|runtime.linux-'%{runtime_arch}'.microsoft.netcore.ilasm.||' | sed -E 's|.nupkg$||')
echo $ilasm_version
mkdir -p packages-customized-local
pushd packages-customized-local
-tar xf ../packages/archive/Private.SourceBuilt.Artifacts.*.tar.gz
+tar xf ../prereqs/packages/archive/Private.SourceBuilt.Artifacts.*.tar.gz
sed -i -E 's|<MicrosoftNETCoreILAsmVersion>[^<]+</MicrosoftNETCoreILAsmVersion>|<MicrosoftNETCoreILAsmVersion>'$ilasm_version'</MicrosoftNETCoreILAsmVersion>|' PackageVersions.props
sed -i -E 's|<MicrosoftNETCoreILDAsmVersion>[^<]+</MicrosoftNETCoreILDAsmVersion>|<MicrosoftNETCoreILDAsmVersion>'$ilasm_version'</MicrosoftNETCoreILDAsmVersion>|' PackageVersions.props
-tar czf ../packages/archive/Private.SourceBuilt.Artifacts.*.tar.gz *
+tar czf ../prereqs/packages/archive/Private.SourceBuilt.Artifacts.*.tar.gz *
popd
%endif
@@ -407,7 +430,10 @@ popd
%endif
-%autopatch -p1
+# tar -x --strip-components=1 -f %%{SOURCE10}
+# tar -x --strip-components=1 -f %%{SOURCE11}
+
+%autopatch -p1 -M 999
# Fix bad hardcoded path in build
sed -i 's|/usr/share/dotnet|%{_libdir}/dotnet|' src/runtime/src/native/corehost/hostmisc/pal.unix.cpp
@@ -467,12 +493,6 @@ export EXTRA_LDFLAGS="$LDFLAGS"
# suggested compile-time change doesn't work, unfortunately.
export COMPlus_LTTng=0
-# OpenSSL 3.0 in RHEL 9 and newer versions of Fedora has disabled
-# SHA1, used by .NET for strong name signing. See
-# https://github.com/dotnet/runtime/issues/67304
-# https://gitlab.com/redhat/centos-stream/rpms/openssl/-/commit/78fb78d30755ae18fdaef28ef392f4e67c662ff6
-export OPENSSL_ENABLE_SHA1_SIGNATURES=1
-
VERBOSE=1 ./build.sh \
%if %{without bootstrap}
--with-sdk previously-built-dotnet \
@@ -480,6 +500,7 @@ VERBOSE=1 ./build.sh \
%ifarch %{mono_archs}
--use-mono-runtime \
%endif
+ --release-manifest %{SOURCE5} \
-- \
/p:MinimalConsoleLogOutput=false \
/p:ContinueOnPrebuiltBaselineError=true \
@@ -487,11 +508,7 @@ VERBOSE=1 ./build.sh \
/p:LogVerbosity=n \
-echo \
- /p:SkipPortableRuntimeBuild=true \
-
-
-sed -e 's|[@]LIBDIR[@]|%{_libdir}|g' %{SOURCE11} > dotnet.sh
+sed -e 's|[@]LIBDIR[@]|%{_libdir}|g' %{SOURCE21} > dotnet.sh
%install
@@ -499,18 +516,27 @@ install -dm 0755 %{buildroot}%{_libdir}/dotnet
ls artifacts/%{runtime_arch}/Release
tar xf artifacts/%{runtime_arch}/Release/dotnet-sdk-%{sdk_version}-%{runtime_id}.tar.gz -C %{buildroot}%{_libdir}/dotnet/
-# See https://github.com/dotnet/source-build/issues/2579
-find %{buildroot}%{_libdir}/dotnet/ -type f -name 'testhost.x86' -delete
-find %{buildroot}%{_libdir}/dotnet/ -type f -name 'vstest.console' -delete
+# Delete bundled certificates: we want to use the system store only,
+# except for when we have no other choice and ca-certificates doesn't
+# provide it. Currently ca-ceritificates has no support for
+# timestamping certificates (timestamp.ctl).
+find %{buildroot}%{_libdir}/dotnet -name 'codesignctl.pem' -delete
+if [[ $(find %{buildroot}%{_libdir}/dotnet -name '*.pem' -print | wc -l) != 1 ]]; then
+ find %{buildroot}%{_libdir}/dotnet -name '*.pem' -print
+ echo "too many certificate bundles"
+ exit 2
+fi
+
+# Install managed symbols
+tar xf artifacts/%{runtime_arch}/Release/dotnet-runtime-symbols-%{runtime_id}-%{runtime_version}.tar.gz \
+ -C %{buildroot}%{_libdir}/dotnet/shared/Microsoft.NETCore.App/%{runtime_version}/
-# Install managed symbols: disabled because they don't contain sources
-# but point to the paths the sources would have been at in the build
-# servers. The end user experience is pretty bad atm.
-# tar xf artifacts/%%{runtime_arch}/Release/runtime/dotnet-runtime-symbols-%%{runtime_id}-%%{runtime_version}.tar.gz \
-# -C %%{buildroot}/%%{_libdir}/dotnet/shared/Microsoft.NETCore.App/%%{runtime_version}/
+# Remove static files
+find %{buildroot}%{_libdir}/dotnet/ -type f -name 'libmono-*.a' -exec rm {} \;
# Fix executable permissions on files
find %{buildroot}%{_libdir}/dotnet/ -type f -name 'apphost' -exec chmod +x {} \;
+#find %{buildroot}%{_libdir}/dotnet/ -type f -name 'containerize' -exec chmod +x {} \;
find %{buildroot}%{_libdir}/dotnet/ -type f -name 'singlefilehost' -exec chmod +x {} \;
find %{buildroot}%{_libdir}/dotnet/ -type f -name 'lib*so' -exec chmod +x {} \;
find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.a' -exec chmod -x {} \;
@@ -560,7 +586,7 @@ test -f %{buildroot}%{_libdir}/dotnet/sdk/%{sdk_version}/Sdks/Microsoft.NET.Sdk/
# because native binaries are stripped by rpm-build after %%install.
# So we need to do this check earlier.
echo "Testing build results for debug symbols..."
-%{SOURCE10} -v %{buildroot}%{_libdir}/dotnet/
+%{SOURCE20} -v %{buildroot}%{_libdir}/dotnet/
@@ -617,9 +643,11 @@ export COMPlus_LTTng=0
%dir %{_libdir}/dotnet/sdk
%{_libdir}/dotnet/sdk/%{sdk_version}
%dir %{_libdir}/dotnet/sdk-manifests
-%{_libdir}/dotnet/sdk-manifests/%{sdk_feature_band_version}
+%{_libdir}/dotnet/sdk-manifests/%{sdk_feature_band_version}*
%{_libdir}/dotnet/metadata
%dir %{_libdir}/dotnet/packs
+%{_libdir}/dotnet/packs/Microsoft.AspNetCore.App.Runtime.%{runtime_id}/%{aspnetcore_runtime_version}
+%{_libdir}/dotnet/packs/Microsoft.NETCore.App.Runtime.%{runtime_id}/%{runtime_version}
%files -n dotnet-sdk-%{dotnetver}-source-built-artifacts
%dir %{_libdir}/dotnet
@@ -627,6 +655,33 @@ export COMPlus_LTTng=0
%changelog
+* Fri Sep 15 2023 Omair Majid <omajid@redhat.com> - 8.0.100~rc.1-0.1
+- Update to .NET SDK 8.0.100 RC 1 and Runtime 8.0.0 RC 1
+
+* Fri Aug 11 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.7-0.1
+- Update to .NET SDK 8.0.100 Preview 7 and Runtime 8.0.0 Preview 7
+
+* Tue Jul 18 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.6-0.2
+- Remove lttng and other tracing-specific dependencies from the runtime package
+
+* Mon Jul 17 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.6-0.1
+- Update to .NET SDK 8.0.100 Preview 6 and Runtime 8.0.0 Preview 6
+
+* Fri Jun 23 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.5-0.2
+- Fix release.json and sourcelink references
+
+* Mon Jun 19 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.5-0.1
+- Update to .NET SDK 8.0.100 Preview 5 and Runtime 8.0.0 Preview 5
+
+* Wed Apr 12 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.3-0.1
+- Update to .NET SDK 8.0.100 Preview 3 and Runtime 8.0.0 Preview 3
+
+* Wed Mar 15 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.2-0.1
+- Update to .NET SDK 8.0.100 Preview 2 and Runtime 8.0.0 Preview 2
+
+* Wed Feb 22 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.1-0.1
+- Update to .NET SDK 8.0.100 Preview 1 and Runtime 8.0.0 Preview 1
+
* Thu Jan 12 2023 Omair Majid <omajid@redhat.com> - 7.0.102-1
- Update to .NET SDK 7.0.102 and Runtime 7.0.2
diff --git a/gating.yaml b/gating.yaml
index 8574546..b7ab3d1 100644
--- a/gating.yaml
+++ b/gating.yaml
@@ -5,6 +5,7 @@ decision_context: bodhi_update_push_testing
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
+ - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis}
--- !Policy
product_versions:
- fedora-*
@@ -12,9 +13,11 @@ decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
+ - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis}
--- !Policy
product_versions:
- rhel-*
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
+ - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.other-archs.functional}
diff --git a/installer-14792-mono.patch b/installer-14792-mono.patch
deleted file mode 100644
index 2b3214a..0000000
--- a/installer-14792-mono.patch
+++ /dev/null
@@ -1,346 +0,0 @@
-Please note that the paths in this patch have been manually modified so
-we can apply it against an already-built tarball.
-
-From 9a7d07ab5a163b75a7b82cf8883d32553f34dcdb Mon Sep 17 00:00:00 2001
-From: Tom Deseyn <tom.deseyn@gmail.com>
-Date: Wed, 19 Oct 2022 15:21:40 +0200
-Subject: [PATCH] Enabled source-building with mono runtime on any
- architecture.
-
-Adds an argument to the top-level build script to use the mono
-runtime, and sets the flags needed for the different repos
-to work with mono.
----
- eng/SourceBuild.props | 1 +
- .../tarball/content/Directory.Build.props | 5 ++
- src/SourceBuild/tarball/content/build.sh | 4 ++
- .../content/repos/Directory.Build.props | 1 +
- ...d-support-building-with-mono-runtime.patch | 24 +++++++++
- ...d-support-building-with-mono-runtime.patch | 24 +++++++++
- ...d-support-building-with-mono-runtime.patch | 51 +++++++++++++++++++
- 7 files changed, 110 insertions(+)
- create mode 100644 src/SourceBuild/tarball/patches/aspnetcore/0002-source-build-support-building-with-mono-runtime.patch
- create mode 100644 src/SourceBuild/tarball/patches/runtime/0001-source-build-support-building-with-mono-runtime.patch
- create mode 100644 src/SourceBuild/tarball/patches/sdk/0001-source-build-support-building-with-mono-runtime.patch
-
-diff --git a/src/sdk/eng/SourceBuild.props b/src/sdk/eng/SourceBuild.props
-index 61b9a913708..2107a718419 100644
---- a/src/sdk/eng/SourceBuild.props
-+++ b/src/sdk/eng/SourceBuild.props
-@@ -8,6 +8,7 @@
- <PropertyGroup>
- <InnerBuildArgs>$(InnerBuildArgs) /p:Projects="$(InnerSourceBuildRepoRoot)\source-build.slnf"</InnerBuildArgs>
- <InnerBuildArgs>$(InnerBuildArgs) /p:UseSharedCompilation=false</InnerBuildArgs>
-+ <InnerBuildArgs Condition="'$(SourceBuildUseMonoRuntime)' == 'true'">$(InnerBuildArgs) /p:NativeAotSupported=false</InnerBuildArgs>
- </PropertyGroup>
- </Target>
-
-diff --git a/src/sdk/src/Layout/redist/targets/BundledSdks.targets b/src/sdk/src/Layout/redist/targets/BundledSdks.targets
-index 6f8b0fc3b33..64638ef1cff 100644
---- a/src/sdk/src/Layout/redist/targets/BundledSdks.targets
-+++ b/src/sdk/src/Layout/redist/targets/BundledSdks.targets
-@@ -5,6 +5,6 @@
- <BundledSdk Include="FSharp.NET.Sdk" Version="1.0.4-bundled-0100" />
- <BundledSdk Include="Microsoft.Docker.Sdk" Version="1.1.0" />
- <BundledSdk Include="Microsoft.NET.ILLink.Tasks" Version="$(MicrosoftNETILLinkTasksPackageVersion)" />
-- <BundledSdk Include="Microsoft.DotNet.ILCompiler" Version="$(MicrosoftDotNetILCompilerPackageVersion)" />
-+ <BundledSdk Include="Microsoft.DotNet.ILCompiler" Version="$(MicrosoftDotNetILCompilerPackageVersion)" Condition="'$(NativeAotSupported)' != 'false'" />
- </ItemGroup>
- </Project>
-diff --git a/src/sdk/src/Tasks/Common/Resources/Strings.resx b/src/sdk/src/Tasks/Common/Resources/Strings.resx
-index a347c736df5..426cb6aa96d 100644
---- a/src/sdk/src/Tasks/Common/Resources/Strings.resx
-+++ b/src/sdk/src/Tasks/Common/Resources/Strings.resx
-@@ -875,4 +875,8 @@ You may need to build the project on another operating system or architecture, o
- <value>NETSDK1192: Targeting .NET 7.0 or higher in Visual Studio 2022 17.3 is not supported.</value>
- <comment>{StrBegin="NETSDK1192: "}</comment>
- </data>
-+ <data name="AotNotSupported" xml:space="preserve">
-+ <value>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</value>
-+ <comment>{StrBegin="NETSDK1193: "}</comment>
-+ </data>
- </root>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.cs.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.cs.xlf
-index e477f7a489b..c75990f94e2 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.cs.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.cs.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: Sestavení nelze optimalizovat pro kompilaci s předstihem: nebyl nalezen platný balíček modulu runtime. Buď nastavte vlastnost PublishAot na hodnotu false, nebo při publikování použijte podporovaný identifikátor modulu runtime. Při cílení na .NET 7 nebo vyšší nezapomeňte obnovit balíčky s vlastností PublishAot nastavenou na hodnotu true.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: Konfigurační soubor aplikace musí obsahovat kořenový element konfigurace.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.de.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.de.xlf
-index d8cd9725269..2e427931dd1 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.de.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.de.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: Assemblys können nicht für Ahead-of-time-Kompilierung optimiert werden: Es wurde kein gültiges Runtimepaket gefunden. Legen Sie entweder die PublishAot-Eigenschaft auf FALSE fest, oder verwenden Sie beim Veröffentlichen einen unterstützten Runtimebezeichner. Wenn Sie .NET 7 oder höher verwenden, stellen Sie sicher, dass Sie Pakete wiederherstellen, bei denen die PublishAot-Eigenschaft auf TRUE festgelegt ist.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: Die Anwendungskonfigurationsdatei muss das Stammkonfigurationselement enthalten.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.es.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.es.xlf
-index 4c61e20b937..cb654c521fb 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.es.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.es.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: No se pueden optimizar los ensamblados para la compilación Ahead of time: no se ha encontrado un paquete en tiempo de ejecución válido. Establezca la propiedad PublishAot en false o use un identificador de tiempo de ejecución compatible al publicar. Cuando el destino sea .NET 7 o una versión posterior, asegúrese de restaurar los paquetes con la propiedad PublishAot establecida en true.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: El archivo de configuración de la aplicación debe tener el elemento de configuración raíz.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.fr.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.fr.xlf
-index dfbb0391549..a97af754880 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.fr.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.fr.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: Impossible d'optimiser les assemblys pour la compilation Ahead of time : un package d'exécution valide n'a pas été trouvé. Définissez la propriété PublishAot sur false ou utilisez un identificateur d'exécution pris en charge lors de la publication. Lorsque vous ciblez .NET 7 ou supérieur, assurez-vous de restaurer les packages avec la propriété PublishAot définie sur true.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: Le fichier de configuration de l'application doit avoir un élément de configuration racine.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.it.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.it.xlf
-index a768517271c..70fe2939526 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.it.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.it.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: non è possibile ottimizzare gli assembly per la compilazione Ahead Of Time perché non è stato trovato alcun pacchetto di runtime valido. Impostare la proprietà PublishAot su false oppure usare un identificatore di runtime supportato durante la pubblicazione. Quando si usa .NET 7 o versioni successive, assicurarsi di ripristinare i pacchetti con la proprietà PublishAot impostata su true.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: il file di configurazione dell'applicazione deve avere un elemento di configurazione radice.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ja.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ja.xlf
-index c3713a3bb6f..42ba79f1034 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ja.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ja.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: Ahead Of Time コンパイル用にアセンブリを最適化できません: 有効なランタイム パッケージが見つかりませんでした。PublishAot プロパティを false に設定するか、公開時に、サポートされているランタイム識別子を使用してください。.NET 7 以降を対象とする場合は、必ず PublishAot プロパティを true に設定してパッケージを復元してください。</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: アプリケーション構成ファイルには、ルート構成要素が必要です。</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ko.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ko.xlf
-index 86d77d024ad..f9695e37529 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ko.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ko.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: Ahead of Time 컴파일을 위해 어셈블리를 최적화할 수 없습니다. 유효한 런타임 패키지를 찾을 수 없습니다. PublishAot 속성을 false로 설정하거나 게시할 때 지원되는 런타임 식별자를 사용하세요. .NET 7 이상을 대상으로 하는 경우 PublishAot 속성이 true로 설정된 패키지를 복원해야 합니다.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: 애플리케이션 구성 파일에는 루트 구성 요소가 있어야 합니다.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pl.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pl.xlf
-index b954c4f64f5..0594cfc5bad 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pl.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pl.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: Nie można zoptymalizować zestawów pod kątem kompilacji z wyprzedzeniem: nie znaleziono prawidłowego pakietu środowiska uruchomieniowego. Ustaw właściwość PublishAot na wartość false lub użyj obsługiwanego identyfikatora środowiska uruchomieniowego podczas publikowania. W przypadku określania wartości docelowej platformy .NET 7 lub nowszej należy przywrócić pakiety z właściwością PublishAot ustawioną na wartość true.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: Plik konfiguracji aplikacji musi mieć główny element konfiguracji.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pt-BR.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pt-BR.xlf
-index 4153425cfce..ae701f4dc3b 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pt-BR.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pt-BR.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: Não é possível otimizar assemblies para compilação antecipada: um pacote de tempo de execução válido não foi encontrado. Defina a propriedade PublishAot como false ou use um identificador de tempo de execução com suporte ao publicar. Ao direcionar o .NET 7 ou superior, certifique-se de restaurar os pacotes com a propriedade PublishAot definida como true.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: o arquivo de configuração do aplicativo deve ter um elemento de configuração raiz.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ru.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ru.xlf
-index e66e13cd417..1780c0eb89b 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ru.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ru.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: не удалось оптимизировать сборки для компиляции Ahead Of Time: не найден допустимый пакет среды выполнения. Задайте для свойства PublishAot значение false либо используйте поддерживаемый идентификатор среды выполнения при публикации. При выборе .NET 7 или более поздней версии в качестве цели восстановите пакеты со свойством PublishAot со значением true.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: В файле конфигурации приложения должен присутствовать корневой элемент конфигурации.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.tr.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.tr.xlf
-index 4121fe024d6..d4ec2bbfea3 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.tr.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.tr.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: Derlemeler, AOT derlemesi için iyileştirilemedi: geçerli bir çalışma zamanı paketi bulunamadı. PublishAot özelliğini false olarak ayarlayın veya yayımlarken desteklenen bir çalışma zamanı tanımlayıcısı kullanın. .NET 7 veya üzerini hedeflerken PublishAot özelliği true olarak ayarlanmış paketleri geri yüklediğinizden emin olun.</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: Uygulama yapılandırma dosyasının kök yapılandırma öğesi olmalıdır.</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hans.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hans.xlf
-index 5bd5617ccba..77323667f98 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hans.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hans.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: 无法优化程序集以实现提前编译: 找不到有效的运行时包。将 PublishAot 属性设置为 false,或在发布时使用支持的运行时标识符。面向 .NET 7 或更高版本时,请确保还原将 PublishAot 属性设置为 true 的包。</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: 应用程序配置文件必须具有根配置元素。</target>
-diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hant.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hant.xlf
-index c2e6be8b9be..ae573c7ed8b 100644
---- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hant.xlf
-+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hant.xlf
-@@ -12,6 +12,11 @@
- <target state="translated">NETSDK1183: 無法為提前編譯最佳化組件: 找不到有效的執行階段套件。請將 PublishAot 屬性設為 false,或在發佈時使用支援的執行階段識別碼。以 .NET 7 或更高版本為目標時,請務必還原套件,將 PublishAot 屬性設為 true。</target>
- <note>{StrBegin="NETSDK1183: "}</note>
- </trans-unit>
-+ <trans-unit id="AotNotSupported">
-+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
-+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
-+ <note>{StrBegin="NETSDK1193: "}</note>
-+ </trans-unit>
- <trans-unit id="AppConfigRequiresRootConfiguration">
- <source>NETSDK1070: The application configuration file must have root configuration element.</source>
- <target state="translated">NETSDK1070: 應用程式組態檔必須有根組態元素。</target>
-diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
-index 84b21ee0dd8..72d10f518af 100644
---- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
-+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
-@@ -178,6 +178,9 @@ Copyright (c) .NET Foundation. All rights reserved.
- ResourceName="ImplicitRuntimeIdentifierResolutionForPublishPropertyFailed"
- FormatArguments="PublishAot"/>
-
-+ <NETSdkError Condition="'$(PublishAot)' == 'true' and '$(PublishAotSupported)' != 'true'"
-+ ResourceName="AotNotSupported" />
-+
- <!-- End of implicit RID resolver checks.-->
- <NETSdkError Condition="'$(SelfContained)' == 'true' and '$(UseAppHost)' != 'true' and '$(_RuntimeIdentifierUsesAppHost)' == 'true'"
- ResourceName="CannotUseSelfContainedWithoutAppHost" />
-diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props
-index 73a182102d1..b7eee4dfe3d 100644
---- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props
-+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props
-@@ -116,6 +116,8 @@ Copyright (c) .NET Foundation. All rights reserved.
- <MSBuildCopyContentTransitively Condition="'$(MSBuildCopyContentTransitively)' == ''">true</MSBuildCopyContentTransitively>
- <ResolveAssemblyReferenceOutputUnresolvedAssemblyConflicts Condition="'$(ResolveAssemblyReferenceOutputUnresolvedAssemblyConflicts)' == ''">true</ResolveAssemblyReferenceOutputUnresolvedAssemblyConflicts>
-
-+ <PublishAotSupported>false</PublishAotSupported>
-+ <PublishAotSupported Condition="Exists('$(MSBuildThisFileDirectory)../../Microsoft.DotNet.ILCompiler')">true</PublishAotSupported>
- <!-- Uncomment this once https://github.com/Microsoft/visualfsharp/issues/3207 gets fixed -->
- <!-- <WarningsAsErrors>$(WarningsAsErrors);NU1605</WarningsAsErrors> -->
- </PropertyGroup>
-@@ -151,7 +153,7 @@ Copyright (c) .NET Foundation. All rights reserved.
- <Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.CSharp.props" Condition="'$(MSBuildProjectExtension)' == '.csproj'" />
- <Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.VisualBasic.props" Condition="'$(MSBuildProjectExtension)' == '.vbproj'" />
- <Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.FSharp.props" Condition="'$(MSBuildProjectExtension)' == '.fsproj'" />
-- <Import Project="Sdk.props" Sdk="Microsoft.DotNet.ILCompiler" />
-+ <Import Project="Sdk.props" Sdk="Microsoft.DotNet.ILCompiler" Condition="'$(PublishAotSupported)' == 'true'" />
- <Import Project="Sdk.props" Sdk="Microsoft.NET.ILLink.Tasks" />
-
- <Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.PackTool.props" />
-diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.targets b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.targets
-index 4311ec0ecea..1f80ab9ded0 100644
---- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.targets
-+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.targets
-@@ -1175,7 +1175,7 @@ Copyright (c) .NET Foundation. All rights reserved.
- <Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.CSharp.targets" Condition="'$(Language)' == 'C#'" />
- <Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.VisualBasic.targets" Condition="'$(Language)' == 'VB'" />
- <Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.FSharp.targets" Condition="'$(Language)' == 'F#'" />
-- <Import Project="$(ILCompilerTargetsPath)" Condition="'$(PublishAot)' == 'true'"/>
-+ <Import Project="$(ILCompilerTargetsPath)" Condition="'$(PublishAot)' == 'true' and '$(PublishAotSupported)' == 'true'"/>
- <Import Project="$(ILLinkTargetsPath)" Condition="'$(Language)' != 'C++'" />
- <Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.Analyzers.targets" Condition="'$(Language)' == 'C#' or '$(Language)' == 'VB'" />
-
-diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Publish.targets b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Publish.targets
-index a943e6615bf..8593957f3d6 100644
---- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Publish.targets
-+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Publish.targets
-@@ -111,6 +111,8 @@ Copyright (c) .NET Foundation. All rights reserved.
- '$(EnableCompressionInSingleFile)' == 'true' And
- '$(SelfContained)' != 'true'"
- ResourceName="CompressionInSingleFileRequiresSelfContained" />
-+ <NETSdkError Condition="'$(PublishAot)' == 'true' and '$(PublishAotSupported)' != 'true'"
-+ ResourceName="AotNotSupported" />
-
- <!-- Enable warning for trying to use PublishRelease or PackRelease with a solution if env-var is not set.-->
- <NETSdkWarning Condition="'$(PublishRelease)' != '' and '$(SolutionExt)' == '.sln' and '$(DOTNET_CLI_ENABLE_PUBLISH_RELEASE_FOR_SOLUTIONS)' == ''"
-diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
-index 72d10f518af..84b21ee0dd8 100644
---- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
-+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
-@@ -178,9 +178,6 @@ Copyright (c) .NET Foundation. All rights reserved.
- ResourceName="ImplicitRuntimeIdentifierResolutionForPublishPropertyFailed"
- FormatArguments="PublishAot"/>
-
-- <NETSdkError Condition="'$(PublishAot)' == 'true' and '$(PublishAotSupported)' != 'true'"
-- ResourceName="AotNotSupported" />
--
- <!-- End of implicit RID resolver checks.-->
- <NETSdkError Condition="'$(SelfContained)' == 'true' and '$(UseAppHost)' != 'true' and '$(_RuntimeIdentifierUsesAppHost)' == 'true'"
- ResourceName="CannotUseSelfContainedWithoutAppHost" />
diff --git a/release.json b/release.json
new file mode 100644
index 0000000..0e58494
--- /dev/null
+++ b/release.json
@@ -0,0 +1,9 @@
+{
+ "release": "8.0.0-rc.1",
+ "channel": "8.0",
+ "tag": "v8.0.0-rc.1.23419.4",
+ "sdkVersion": "8.0.100-rc.1.23455.8",
+ "runtimeVersion": "8.0.0-rc.1.23419.4",
+ "sourceRepository": "https://github.com/dotnet/dotnet",
+ "sourceVersion": "113d797bc90104bb4f1cc51e1a462cf3d4ef18fc"
+}
diff --git a/runtime-mono-ppc64le-clang15.patch b/runtime-mono-ppc64le-clang15.patch
deleted file mode 100644
index 32bf3f9..0000000
--- a/runtime-mono-ppc64le-clang15.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-diff --git a/src/runtime/src/mono/mono/mini/mini-ppc.c b/src/runtime/src/mono/mono/mini/mini-ppc.c
-index bc97b497af9..cc5e5ccc0e6 100644
---- a/src/runtime/src/mono/mono/mini/mini-ppc.c
-+++ b/src/runtime/src/mono/mono/mini/mini-ppc.c
-@@ -2733,7 +2733,7 @@ handle_thunk (MonoCompile *cfg, guchar *code, const guchar *target)
- cfg->arch.thunks = cfg->thunks;
- cfg->arch.thunks_size = cfg->thunk_area;
- #ifdef THUNK_ADDR_ALIGNMENT
-- cfg->arch.thunks = ALIGN_TO(cfg->arch.thunks, THUNK_ADDR_ALIGNMENT);
-+ cfg->arch.thunks = (guint8 *)ALIGN_TO(cfg->arch.thunks, THUNK_ADDR_ALIGNMENT);
- #endif
- }
- thunks = cfg->arch.thunks;
-@@ -5886,7 +5886,7 @@ host_mgreg_t*
- mono_arch_context_get_int_reg_address (MonoContext *ctx, int reg)
- {
- if (reg == ppc_r1)
-- return (host_mgreg_t)(gsize)MONO_CONTEXT_GET_SP (ctx);
-+ return (host_mgreg_t *)(gsize)&ctx->sc_sp;
-
- return &ctx->regs [reg];
- }
-diff --git a/src/runtime/src/mono/mono/mini/tramp-ppc.c b/src/runtime/src/mono/mono/mini/tramp-ppc.c
-index 59bcb275a48..e0bc7f8eca4 100644
---- a/src/runtime/src/mono/mono/mini/tramp-ppc.c
-+++ b/src/runtime/src/mono/mono/mini/tramp-ppc.c
-@@ -672,10 +672,10 @@ mono_arch_get_call_target (guint8 *code)
- }
- #if defined(TARGET_POWERPC64) && !defined(PPC_USES_FUNCTION_DESCRIPTOR)
- else if (((guint32*)(code - 32)) [0] >> 26 == 15) {
-- guint8 *thunk = GET_MEMORY_SLOT_THUNK_ADDRESS((guint32*)(code - 32));
-+ guint8 *thunk = (guint8 *)GET_MEMORY_SLOT_THUNK_ADDRESS((guint32*)(code - 32));
- return thunk;
- } else if (((guint32*)(code - 4)) [0] >> 26 == 15) {
-- guint8 *thunk = GET_MEMORY_SLOT_THUNK_ADDRESS((guint32*)(code - 4));
-+ guint8 *thunk = (guint8 *)GET_MEMORY_SLOT_THUNK_ADDRESS((guint32*)(code - 4));
- return thunk;
- }
- #endif
diff --git a/sources b/sources
deleted file mode 100644
index 1d97b90..0000000
--- a/sources
+++ /dev/null
@@ -1 +0,0 @@
-SHA512 (dotnet-v7.0.102.tar.gz) = d8d682a0737378333753a94885f042508c832d94cb0e6a52103ed6a88b5b31028dbc067aae7dcfd43b959e63555b20146bcc9e828873d38b79bed1fc5199b43d
diff --git a/tests/.fmf/version b/tests/.fmf/version
deleted file mode 100644
index 0cfbf08..0000000
--- a/tests/.fmf/version
+++ /dev/null
@@ -1 +0,0 @@
-2
diff --git a/tests/ci.fmf b/tests/ci.fmf
new file mode 100644
index 0000000..4f93dcc
--- /dev/null
+++ b/tests/ci.fmf
@@ -0,0 +1,41 @@
+summary: Basic smoke test
+provision:
+ disk: 20
+ memory: 5120
+prepare:
+ how: install
+ package:
+ - aspnetcore-runtime-7.0
+ - babeltrace
+ - bash-completion
+ - bc
+ - binutils
+ - dotnet-runtime-7.0
+ - dotnet-sdk-7.0
+ - expect
+ - file
+ - findutils
+ - gcc-c++
+ - git
+ - jq
+ - libstdc++-devel
+ - lldb
+ - lttng-tools
+ - npm
+ - postgresql-odbc
+ - postgresql-server
+ - procps-ng
+ - python3
+ - strace
+ - util-linux
+ - wget
+ - which
+ - zlib-devel
+execute:
+ script:
+ - dotnet --info
+ - wget --no-verbose https://github.com/redhat-developer/dotnet-bunny/releases/latest/download/turkey.tar.gz
+ - tar xf turkey.tar.gz
+ - dotnet turkey/Turkey.dll --version
+ - git clone "https://github.com/redhat-developer/dotnet-regular-tests.git"
+ - dotnet turkey/Turkey.dll -l="$TMT_TEST_DATA" dotnet-regular-tests --timeout=1200
diff --git a/tests/provision.fmf b/tests/provision.fmf
deleted file mode 100644
index 87b3807..0000000
--- a/tests/provision.fmf
+++ /dev/null
@@ -1,6 +0,0 @@
----
-
-standard-inventory-qcow2:
- qemu:
- m: 5G
-
diff --git a/tests/tests.yml b/tests/tests.yml
deleted file mode 100644
index b1facd8..0000000
--- a/tests/tests.yml
+++ /dev/null
@@ -1,39 +0,0 @@
----
-- hosts: localhost
- roles:
- - role: standard-test-basic
- tags:
- - classic
- - container
- - atomic
- repositories:
- - repo: "https://github.com/redhat-developer/dotnet-regular-tests.git"
- dest: "dotnet-regular-tests"
- version: main
- tests:
- - download_test_runner:
- dir: ./
- run: wget --no-verbose https://github.com/redhat-developer/dotnet-bunny/releases/latest/download/turkey.tar.gz && tar xf turkey.tar.gz
- - print_test_runner_version:
- dir: ./
- run: dotnet turkey/Turkey.dll --version
- - regular:
- dir: ./
- run: dotnet turkey/Turkey.dll -l={{ remote_artifacts }} dotnet-regular-tests
- required_packages:
- - aspnetcore-runtime-7.0
- - babeltrace
- - bash-completion
- - binutils
- - dotnet-sdk-7.0
- - dotnet-runtime-7.0
- - expect
- - git
- - jq
- - lldb
- - lttng-tools
- - npm
- - python3
- - strace
- - wget
- - which
diff --git a/update-release b/update-release
index 5147b5c..0308773 100755
--- a/update-release
+++ b/update-release
@@ -63,8 +63,10 @@ host_version="$runtime_version"
if [[ "$runtime_version" == "3.1"* ]]; then
tag=v${sdk_version}-SDK
-else
+elif [[ "$runtime_version" == "6.0"* ]] || [[ "$runtime_version" == "7.0"* ]]; then
tag=v${sdk_version}
+else
+ tag=v${runtime_version}
fi
if [[ -f "dotnet-${tag}-original.tar.gz" ]]; then
@@ -110,3 +112,7 @@ sed -i -E 's|^Release: [[:digit:]]+%|Release: '"$rpm_release"'%|'
# Reset Release in changelog comment
# See https://stackoverflow.com/questions/18620153/find-matching-text-and-replace-next-line
sed -i -E '/^%changelog$/!b;n;s/-[[:digit:]]+$/-'"$rpm_release"'/' "$spec_file"
+
+release_json_url=$(spectool -l --sources ./dotnet8.0.spec | grep release.json | cut -d' ' -f2)
+rm "$(basename "$release_json_url")"
+wget "$release_json_url"
diff --git a/vstest-intent-net8.0.patch b/vstest-intent-net8.0.patch
new file mode 100644
index 0000000..6a51807
--- /dev/null
+++ b/vstest-intent-net8.0.patch
@@ -0,0 +1,13 @@
+diff --git a/src/vstest/test/Intent/Intent.csproj b/src/vstest/test/Intent/Intent.csproj
+index bb711c9256..6d0b199a9b 100644
+--- a/src/vstest/test/Intent/Intent.csproj
++++ b/src/vstest/test/Intent/Intent.csproj
+@@ -2,7 +2,7 @@
+
+ <PropertyGroup>
+ <OutputType>Exe</OutputType>
+- <TargetFramework>net6.0</TargetFramework>
++ <TargetFramework>net8.0</TargetFramework>
+ <ImplicitUsings>enable</ImplicitUsings>
+ <Nullable>enable</Nullable>
+ </PropertyGroup>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment