diff --git a/.gitignore b/.gitignore index e621e63..6c5a2a8 100644 --- a/.gitignore +++ b/.gitignore @@ -58,3 +58,11 @@ /dotnet-prebuilts-10.0.100-rc.1.25420.111-arm64.tar.gz /dotnet-prebuilts-10.0.100-rc.1.25451.107-ppc64le.tar.gz /dotnet-prebuilts-10.0.100-rc.1.25451.107-s390x.tar.gz +/dotnet-source-10.0.100-rc.2.25502.107.tar.gz +/dotnet-source-10.0.100-rc.2.25502.107.tar.gz.sig +/dotnet-10.0.100.tar.gz +/dotnet-10.0.100.tar.gz.sig +/dotnet-10.0.101.tar.gz +/dotnet-10.0.101.tar.gz.sig +/dotnet-10.0.102.tar.gz +/dotnet-10.0.102.tar.gz.sig diff --git a/README.md b/README.md index 1e6c3fa..39a651b 100644 --- a/README.md +++ b/README.md @@ -131,8 +131,10 @@ follow. This package uses CI tests as defined in `tests/ci.yml`. You can run them using [tmt](https://tmt.readthedocs.io/en/stable/overview.html). Creating a pull-request or running an official build will fire off tests and flag any -issues. We have enabled gating (via `gating.yaml`) on the tests. That prevents -a build that fails any test from being released until the failures are waived. +issues. The tests will show up as `tier0.functional` in results views. We have +enabled gating (via `gating.yaml`) on the tests. That prevents a build or an +update that fails any test from being released until the failures are +reviewed/waived. The tests themselves are contained in this external repository: https://github.com/redhat-developer/dotnet-regular-tests/ diff --git a/dotnet10.0.spec b/dotnet10.0.spec index 018b061..4290827 100644 --- a/dotnet10.0.spec +++ b/dotnet10.0.spec @@ -1,4 +1,4 @@ -%bcond_without bootstrap +%bcond_with 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 @@ -14,20 +14,20 @@ # upstream can produce releases with a different tag than the SDK version #%%global upstream_tag v%%{runtime_version} -%global upstream_tag v10.0.100-rc.1.25451.107 +%global upstream_tag v10.0.102-sb1 %global upstream_tag_without_v %(echo %{upstream_tag} | sed -e 's|^v||') %global hostfxr_version %{runtime_version} -%global runtime_version 10.0.0-rc.1.25451.107 -%global aspnetcore_runtime_version 10.0.0-rc.1.25451.107 -%global sdk_version 10.0.100-rc.1.25451.107 +%global runtime_version 10.0.2 +%global aspnetcore_runtime_version 10.0.2 +%global sdk_version 10.0.102 %global sdk_feature_band_version %(echo %{sdk_version} | cut -d '-' -f 1 | sed -e 's|[[:digit:]][[:digit:]]$|00|') %global templates_version %{aspnetcore_runtime_version} #%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }') -%global runtime_rpm_version 10.0.0~rc.1.25451.107 -%global aspnetcore_runtime_rpm_version 10.0.0~rc.1.25451.107 -%global sdk_rpm_version 10.0.100~rc.1.25451.107 +%global runtime_rpm_version %{runtime_version} +%global aspnetcore_runtime_rpm_version %{aspnetcore_runtime_version} +%global sdk_rpm_version %{sdk_version} %global use_bundled_brotli 0 %global use_bundled_libunwind 1 @@ -77,14 +77,14 @@ Name: dotnet%{dotnetver} Version: %{sdk_rpm_version} -Release: 0.8%{?dist} +Release: 1%{?dist} Summary: .NET %{dotnetver} 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 URL: https://github.com/dotnet/ -Source0: https://github.com/dotnet/dotnet/archive/refs/tags/%{upstream_tag}.tar.gz#/dotnet-%{upstream_tag_without_v}.tar.gz -Source1: https://github.com/dotnet/dotnet/releases/download/%{upstream_tag}/dotnet-%{upstream_tag_without_v}.tar.gz.sig +Source0: https://github.com/dotnet/dotnet/archive/refs/tags/%{upstream_tag}.tar.gz#/dotnet-%{sdk_version}.tar.gz +Source1: https://github.com/dotnet/dotnet/releases/download/%{upstream_tag}/dotnet-%{sdk_version}.tar.gz.sig Source2: https://dotnet.microsoft.com/download/dotnet/release-key-2023.asc Source3: https://github.com/dotnet/dotnet/releases/download/%{upstream_tag}/release.json %if %{with bootstrap} @@ -125,7 +125,7 @@ ExclusiveArch: aarch64 ppc64le s390x x86_64 %if ! %{use_bundled_brotli} BuildRequires: brotli-devel %endif -%if 0%{?fedora} >= 43 +%if 0%{?fedora} >= 43 || 0%{?rhel} > 10 BuildRequires: clang20 %else BuildRequires: clang @@ -556,6 +556,8 @@ rm -rf prereqs/packages/archive/dotnet-sdk*.tar.gz %autopatch -p1 -M 999 +sed -i -E 's/trap.*tempDir.*EXIT//' eng/source-build-toolset-init.sh + %if ! %{use_bundled_brotli} rm -r src/runtime/src/native/external/brotli/ %endif @@ -697,7 +699,6 @@ find -depth -name 'artifacts' -type d -print -exec rm -rf {} \; ./build.sh \ --source-only \ --release-manifest %{SOURCE3} \ - --branding default \ %if %{without bootstrap} --with-sdk previously-built-dotnet \ %endif @@ -727,9 +728,9 @@ sed -e 's|[@]LIBDIR[@]|%{_libdir}|g' %{SOURCE102} > dotnet.sh %install install -dm 0755 %{buildroot}%{_libdir}/dotnet -ls artifacts/assets/Release/ +find artifacts/assets/Release/ mkdir -p built-sdk -tar xf artifacts/assets/Release/Sdk/%{sdk_version}/dotnet-sdk-%{sdk_version}*-%{runtime_id}.tar.gz -C %{buildroot}%{_libdir}/dotnet/ +tar xf artifacts/assets/Release/dotnet-sdk-%{sdk_version}*-%{runtime_id}.tar.gz -C %{buildroot}%{_libdir}/dotnet/ # Delete bundled certificates: we want to use the system store only, # except for when we have no other choice and ca-certificates doesn't @@ -766,8 +767,11 @@ find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.txt' -exec chmod -x {} \; find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.xml' -exec chmod -x {} \; %if %{is_latest_dotnet} + +%if ! (0%{?fedora} >= 44 || 0%{?rhel} >= 11) install -dm 0755 %{buildroot}%{_sysconfdir}/profile.d/ install dotnet.sh %{buildroot}%{_sysconfdir}/profile.d/ +%endif # Install dynamic completions install -dm 0755 %{buildroot}/%{bash_completions_dir} @@ -804,7 +808,7 @@ test -f %{buildroot}%{_libdir}/dotnet/sdk/%{sdk_version}*/Sdks/Microsoft.NET.Sdk echo "Testing build results for debug symbols..." %{SOURCE101} -v %{buildroot}%{_libdir}/dotnet/ -%if %{include_macros} +%if %{is_latest_dotnet} && %{include_macros} install -dm 0755 %{buildroot}%{_rpmmacrodir}/ install -m 0644 %{SOURCE100} %{buildroot}%{_rpmmacrodir}/ %endif @@ -817,7 +821,7 @@ find %{buildroot}%{_libdir}/dotnet/sdk -type d | tail -n +2 | sed -E 's|%{buildr find %{buildroot}%{_libdir}/dotnet/sdk -type f -and -not -name '*.pdb' | sed -E 's|%{buildroot}||' >> dotnet-sdk-non-dbg-files find %{buildroot}%{_libdir}/dotnet/sdk -type f -name '*.pdb' | sed -E 's|%{buildroot}||' > dotnet-sdk-dbg-files -%if %{is_latest_dotnet} == 0 +%if ! %{is_latest_dotnet} # If this is an older version, self-test now, before we delete files. After we # delete files, we will not have everything we need to self-test in %%check. %{buildroot}%{_libdir}/dotnet/dotnet --info @@ -829,10 +833,6 @@ rm %{buildroot}%{_libdir}/dotnet/ThirdPartyNotices.txt rm %{buildroot}%{_libdir}/dotnet/dotnet %endif -# Removed by upstream in .NET 10 RC 2 -rm -r %{buildroot}%{_libdir}/dotnet/packs/NETStandard.Library.Ref/2.1.0 -rmdir %{buildroot}%{_libdir}/dotnet/packs/NETStandard.Library.Ref - %check @@ -866,7 +866,9 @@ export COMPlus_LTTng=0 %license %{_libdir}/dotnet/ThirdPartyNotices.txt %doc %{_mandir}/man1/dotnet*.1.* %doc %{_mandir}/man7/dotnet*.7.* +%if ! (0%{?fedora} >= 44 || 0%{?rhel} >= 11) %config(noreplace) %{_sysconfdir}/profile.d/dotnet.sh +%endif %config(noreplace) %{_sysconfdir}/dotnet %dir %{_datadir}/bash-completion %dir %{bash_completions_dir} @@ -933,6 +935,21 @@ export COMPlus_LTTng=0 %changelog +* Tue Jan 13 2026 Omair Majid - 10.0.102-1 +- Update to .NET SDK 10.0.102 and Runtime 10.0.2 + +* Wed Dec 10 2025 Omair Majid - 10.0.101-1 +- Update to .NET SDK 10.0.101 and Runtime 10.0.1 + +* Tue Nov 11 2025 Omair Majid - 10.0.100-1 +- Update to .NET SDK 10.0.100 and Runtime 10.0.0 + +* Sun Nov 02 2025 Omair Majid - 10.0.100~rc.2.25502.107-0.10 +- Update to .NET SDK 10.0.100-rc.2.25502.107 and Runtime 10.0.0-rc.2.25502.107 + +* Thu Oct 30 2025 Omair Majid - 10.0.100~rc.1.25451.107-0.9 +- Disable bootstrap + * Wed Oct 29 2025 Omair Majid - 10.0.100~rc.1.25451.107-0.8 - Don't build with clang 21 diff --git a/gating.yaml b/gating.yaml index b7ab3d1..6b6a8a9 100644 --- a/gating.yaml +++ b/gating.yaml @@ -20,4 +20,3 @@ product_versions: 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/release.json b/release.json index b0e6839..6ab902c 100644 --- a/release.json +++ b/release.json @@ -1,11 +1,11 @@ { - "release": "10.0.0-rc.1", + "release": "10.0.2", "channel": "10.0", - "tag": "v10.0.100-rc.1.25451.107", - "sdkVersion": "10.0.100-rc.1.25451.107", - "runtimeVersion": "10.0.0-rc.1.25451.107", - "aspNetCoreVersion": "10.0.0-rc.1.25451.107", + "tag": "v10.0.102-sb1", + "sdkVersion": "10.0.102", + "runtimeVersion": "10.0.2", + "aspNetCoreVersion": "10.0.2", "sourceRepository": "https://github.com/dotnet/dotnet", - "sourceVersion": "2db1f5ee2bdda2e8d873769325fabede32e420e0", - "officialBuildId": "20250901.7" + "sourceVersion": "1def04f336cc452f7633f2ef1f157669c37c283a", + "officialBuildId": "20260105.8" } diff --git a/sources b/sources index ea16200..a6b2b78 100644 --- a/sources +++ b/sources @@ -1,6 +1,2 @@ -SHA512 (dotnet-10.0.100-rc.1.25451.107.tar.gz) = 41de62257785dcd6f4d180b62f672b2a1fa599e8a63985ea1b578da340cca32a3905caf8699114ea370799bf3ba033bc6cc8e83e3498da34cf1cf178f7e982f7 -SHA512 (dotnet-10.0.100-rc.1.25451.107.tar.gz.sig) = ae8723da5fb35f3c103ec8819d08bb9c21666ed08c4b1bcad97c5ac0c1b7bc60f668a59feac9c0c0ce795905dab281aeabecc6a1a66aa2fd8d9fa8bb8d701133 -SHA512 (dotnet-prebuilts-10.0.100-rc.1.25420.111-x64.tar.gz) = 105df63912a12d1bef77004421840cd5fd32658a030ae80557c82dd4dc1b7c9c5a55c0b9c4cf56624adb64e444c9e902cf1a959769f169f18d7281a7357aacb7 -SHA512 (dotnet-prebuilts-10.0.100-rc.1.25420.111-arm64.tar.gz) = e53a53728a1200f308125d539efa6b578e33a6e504a5709de4edcfe3d262c00e25fbd25eda535ff356027ccc69dc6314a76fa43b25d96529aee1e5cf5c4acbce -SHA512 (dotnet-prebuilts-10.0.100-rc.1.25451.107-ppc64le.tar.gz) = 3f455b2ebe7d921162b286db98eadfdbe79769655a3419a8c10910ea66baa986e8346cee8c73cb95cf1d150400702d1b12f55c5bdb037c9b94cc81c1e59102e6 -SHA512 (dotnet-prebuilts-10.0.100-rc.1.25451.107-s390x.tar.gz) = ee3fdf8d01d11a682ac04603794fbe90ae9d489506139909f20b70bf2a026ef0e4e293c6c42cea85491849239f4ed47c426fdb40248adcafea13b001b284a44e +SHA512 (dotnet-10.0.102.tar.gz) = 6dfd36d64b51daf6bfd162a4dd436ab705dcbe6d6084607746c76b61b89926677d474ef4f6dae67fad93f03db0d304ff5260ac60c50dd6fe38326b74b2a282f6 +SHA512 (dotnet-10.0.102.tar.gz.sig) = dded7f84fdd73001211cc0f34d80ef28dfae3ffb3992942d1c8d99e7ad9250aac5ae03ef4afd58f9ea64b0afc8e6429703d0d3a777ec31523e74a3b2c5793809 diff --git a/tests/ci.fmf b/tests/ci.fmf index 3a7dcc7..1acb17c 100644 --- a/tests/ci.fmf +++ b/tests/ci.fmf @@ -1,7 +1,9 @@ summary: Basic smoke test provision: - disk: 20 - memory: 5120 + hardware: + disk: + - size: ">= 20 GiB" + memory: ">= 5120 MiB" prepare: how: install package: diff --git a/update-release b/update-release index 4cc5870..5ed34a3 100755 --- a/update-release +++ b/update-release @@ -82,7 +82,7 @@ dotnet_major_minor_version=${dotnet_major_minor_version%.spec} echo "Updating .NET $dotnet_major_minor_version" -runtime_version=${positional_args[0]:-} +runtime_version=${positional_args[0]:-latest-release} sdk_version="" tag=v${runtime_version} created_release_json=0 @@ -216,5 +216,3 @@ 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" - -./check-bundled-versions