yavsc/src/PostIt/Directory.Packages.props

23 lines
1.4 KiB
Text
Raw Normal View History

Split Directory.Packages.props: shared versions in root, per-product in src/ Move product-local package versions out of the root Directory.Packages.props into per-product props files under src/<Product>/. The root file now only contains versions for packages declared by two or more top-level products, which is the actual shared set. Each per-product Directory.Packages.props imports the root via GetPathOfFileAbove so that the shared versions are inherited; this is necessary because the .NET SDK picks the closest Directory.Packages.props in the hierarchy and does not merge multiple ones. Per-product file contents: - src/cli/ Microsoft.AspNetCore.Razor.Language, Microsoft.Extensions.{CommandLineUtils,Configuration,Hosting} - src/PostIt/ Avalonia* and CommunityToolkit.Mvvm - src/PostIt.Tests/ Avalonia.Headless{,XUnit} - src/Yavsc.Org/ AsciiDocSharp*, Google.Apis.Compute.v1, HigginsSoft.IdentityServer8.AspNetIdentity, IdentityServer8.EntityFramework.Storage, IdentityServer8.Security, IdentityServer8.Storage, Microsoft.AspNetCore.Antiforgery, Authentication.Google, Diagnostics.EntityFrameworkCore, Mvc.NewtonsoftJson, SignalR, EntityFrameworkCore.Tools, Swashbuckle, System.Security.Cryptography.Pkcs, YamlDotNet - src/Yavsc.Org.Tests/ Microsoft.AspNetCore.Hosting, Extensions.Caching.Memory, Options, Options.ConfigurationExtensions, Selenium.WebDriver, xunit.v3.{common,extensibility.core} - src/Yavsc.Server/ Anthropic.SDK, Google.Apis.Calendar.v3, Magick.NET-Q8-AnyCPU, MailKit, MimeKit, Microsoft.AspNetCore.Http.Features, StaticFiles, EntityFrameworkCore.SqlServer, Npgsql.EntityFrameworkCore.PostgreSQL, PayPalMerchantSDK, pazof.rules, RazorEngine.NetCore - src/Yavsc.Web/ IdentityModel.AspNetCore No per-product file is created for Yavsc.Api, Yavsc.Blogs, Yavsc.Abstract, or templateWeb: Api and Blogs only declare the shared JwtBearer, Abstract and templateWeb declare no package references at all. Also includes a minor cosmetic update to FirstUIStript.cs (Firefox -> Chrome driver, dedent, comment header). Tests previously failing on DataProtection keyset / SMTP were unrelated environment issues (resolved by fixing the SMTP password locally).
2026-06-19 18:51:18 +01:00
<Project>
<!-- Pull in shared package versions from the repository root. -->
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Packages.props', '$(MSBuildThisFileDirectory)../'))" />
<!-- PostIt-product-specific versions -->
<ItemGroup>
build(android): downgrade Avalonia 12 -> 11.3.20 + Avalonia.Maui 11.3.0 WIP: addressing the layer-3 WindowingPlatformStub.NotSupportedException crash on PostIt.Android by downgrading to the Avalonia 11 / Avalonia.Maui 11 stack, where the Android runtime platform layer (IWindowingPlatform) gets properly bound via the MAUI embedding extension instead of being left as a stub. Touched files: - src/PostIt/Directory.Packages.props: - Avalonia 12.1.1 -> 11.3.20 (Avalonia, Avalonia.Android, Avalonia.AvaloniaEdit, Avalonia.Browser, Avalonia.Desktop, Avalonia.Fonts.Inter, Avalonia.Themes.Fluent). - New: Avalonia.Maui 11.3.0. - Microsoft.Maui.Essentials 10.0.100 -> 8.0.100 (aligns with the Microsoft.Maui.Controls 8.0.x family that Avalonia.Maui 11.3.0 pulls transitively). - New: Microsoft.Maui.Controls 8.0.100. - src/PostIt/PostIt.Android/PostIt.Android.csproj: - TargetFramework net10.0-android -> net9.0-android36.0 (Avalonia Android 11.3.20 targets net8.0-android34.0, but the compat-ascending fallback lets us consume from net9.0-android36.0 against the API-36 platform that's already installed locally). - Add Avalonia.Maui PackageReference. - Restore Microsoft.Maui.Essentials PackageReference (left in earlier removal during the MAUI-cause-of-crash hypothesis check). - src/PostIt/PostIt/PostIt.csproj: TargetFramework net10.0 -> net9.0 (must match what PostIt.Android consumes transitively, otherwise the build chain breaks). - src/Yavsc.Abstract/Yavsc.Abstract.csproj: net10.0 -> net9.0 (same reason; six other consumers stay on net10.0 and pick up the new assembly via standard TFM compat). - src/Yavsc.Api.Client/Yavsc.Api.Client.csproj: net10.0 -> net9.0 (same reason). - src/PostIt/PostIt.Android/Application.cs: rewritten as a bare Android.App.Application. Avalonia 11 no longer ships AvaloniaAndroidApplication<TApp> (that was an Avalonia 12 introduction); the Avalonia init now lives in MainActivity via AvaloniaMainActivity<TApp>. The class is kept only so the [Application] manifest entry remains. - src/PostIt/PostIt.Android/MainActivity.cs: now inherits AvaloniaMainActivity<App> and overrides CustomizeAppBuilder to chain .UseMaui<PostIt.Maui.MauiEmbeddingApp>(this) before .WithInterFont(). AvaloniaMainActivity<TApp> handles the AvaloniaView initialisation in OnCreate. - src/PostIt/PostIt/Maui/MauiEmbeddingApp.cs (new): empty Microsoft.Maui.Controls.Application used as the embedding host for Avalonia.Maui. The MAUI window it produces is consumed by the Avalonia.Maui embedding pipeline and never surfaces to the user; Avalonia owns the actual visual tree. Build status: 11 errors remaining, all CS0234 / CS0246 against 'Avalonia.Controls.ContentPage'. Avalonia 11 did not ship ContentPage (it's an Avalonia 12 type, presumably for MAUI parity). All seven PostIt pages inherit ContentPage today and need to be reworked to UserControl before the build can complete. Follow-up commit will do that. Reference: AGENTS.md, 'PostIt.Android boot crash sur AVD x86_64 : investigation par couches', couche 3.
2026-08-22 15:56:52 +01:00
<PackageVersion Include="Avalonia" Version="11.3.20" />
<PackageVersion Include="Avalonia.Android" Version="11.3.20" />
<PackageVersion Include="Avalonia.AvaloniaEdit" Version="11.3.20" />
<PackageVersion Include="Avalonia.Browser" Version="11.3.20" />
<PackageVersion Include="Avalonia.Desktop" Version="11.3.20" />
<PackageVersion Include="Avalonia.Fonts.Inter" Version="11.3.20" />
<PackageVersion Include="Avalonia.Maui" Version="11.3.0" />
<PackageVersion Include="Avalonia.Themes.Fluent" Version="11.3.20" />
<PackageVersion Include="AvaloniaUI.DiagnosticsSupport" Version="2.2.3" />
Split Directory.Packages.props: shared versions in root, per-product in src/ Move product-local package versions out of the root Directory.Packages.props into per-product props files under src/<Product>/. The root file now only contains versions for packages declared by two or more top-level products, which is the actual shared set. Each per-product Directory.Packages.props imports the root via GetPathOfFileAbove so that the shared versions are inherited; this is necessary because the .NET SDK picks the closest Directory.Packages.props in the hierarchy and does not merge multiple ones. Per-product file contents: - src/cli/ Microsoft.AspNetCore.Razor.Language, Microsoft.Extensions.{CommandLineUtils,Configuration,Hosting} - src/PostIt/ Avalonia* and CommunityToolkit.Mvvm - src/PostIt.Tests/ Avalonia.Headless{,XUnit} - src/Yavsc.Org/ AsciiDocSharp*, Google.Apis.Compute.v1, HigginsSoft.IdentityServer8.AspNetIdentity, IdentityServer8.EntityFramework.Storage, IdentityServer8.Security, IdentityServer8.Storage, Microsoft.AspNetCore.Antiforgery, Authentication.Google, Diagnostics.EntityFrameworkCore, Mvc.NewtonsoftJson, SignalR, EntityFrameworkCore.Tools, Swashbuckle, System.Security.Cryptography.Pkcs, YamlDotNet - src/Yavsc.Org.Tests/ Microsoft.AspNetCore.Hosting, Extensions.Caching.Memory, Options, Options.ConfigurationExtensions, Selenium.WebDriver, xunit.v3.{common,extensibility.core} - src/Yavsc.Server/ Anthropic.SDK, Google.Apis.Calendar.v3, Magick.NET-Q8-AnyCPU, MailKit, MimeKit, Microsoft.AspNetCore.Http.Features, StaticFiles, EntityFrameworkCore.SqlServer, Npgsql.EntityFrameworkCore.PostgreSQL, PayPalMerchantSDK, pazof.rules, RazorEngine.NetCore - src/Yavsc.Web/ IdentityModel.AspNetCore No per-product file is created for Yavsc.Api, Yavsc.Blogs, Yavsc.Abstract, or templateWeb: Api and Blogs only declare the shared JwtBearer, Abstract and templateWeb declare no package references at all. Also includes a minor cosmetic update to FirstUIStript.cs (Firefox -> Chrome driver, dedent, comment header). Tests previously failing on DataProtection keyset / SMTP were unrelated environment issues (resolved by fixing the SMTP password locally).
2026-06-19 18:51:18 +01:00
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.4.2" />
<PackageVersion Include="Material.Avalonia" Version="3.19.0" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.11" />
build(android): downgrade Avalonia 12 -> 11.3.20 + Avalonia.Maui 11.3.0 WIP: addressing the layer-3 WindowingPlatformStub.NotSupportedException crash on PostIt.Android by downgrading to the Avalonia 11 / Avalonia.Maui 11 stack, where the Android runtime platform layer (IWindowingPlatform) gets properly bound via the MAUI embedding extension instead of being left as a stub. Touched files: - src/PostIt/Directory.Packages.props: - Avalonia 12.1.1 -> 11.3.20 (Avalonia, Avalonia.Android, Avalonia.AvaloniaEdit, Avalonia.Browser, Avalonia.Desktop, Avalonia.Fonts.Inter, Avalonia.Themes.Fluent). - New: Avalonia.Maui 11.3.0. - Microsoft.Maui.Essentials 10.0.100 -> 8.0.100 (aligns with the Microsoft.Maui.Controls 8.0.x family that Avalonia.Maui 11.3.0 pulls transitively). - New: Microsoft.Maui.Controls 8.0.100. - src/PostIt/PostIt.Android/PostIt.Android.csproj: - TargetFramework net10.0-android -> net9.0-android36.0 (Avalonia Android 11.3.20 targets net8.0-android34.0, but the compat-ascending fallback lets us consume from net9.0-android36.0 against the API-36 platform that's already installed locally). - Add Avalonia.Maui PackageReference. - Restore Microsoft.Maui.Essentials PackageReference (left in earlier removal during the MAUI-cause-of-crash hypothesis check). - src/PostIt/PostIt/PostIt.csproj: TargetFramework net10.0 -> net9.0 (must match what PostIt.Android consumes transitively, otherwise the build chain breaks). - src/Yavsc.Abstract/Yavsc.Abstract.csproj: net10.0 -> net9.0 (same reason; six other consumers stay on net10.0 and pick up the new assembly via standard TFM compat). - src/Yavsc.Api.Client/Yavsc.Api.Client.csproj: net10.0 -> net9.0 (same reason). - src/PostIt/PostIt.Android/Application.cs: rewritten as a bare Android.App.Application. Avalonia 11 no longer ships AvaloniaAndroidApplication<TApp> (that was an Avalonia 12 introduction); the Avalonia init now lives in MainActivity via AvaloniaMainActivity<TApp>. The class is kept only so the [Application] manifest entry remains. - src/PostIt/PostIt.Android/MainActivity.cs: now inherits AvaloniaMainActivity<App> and overrides CustomizeAppBuilder to chain .UseMaui<PostIt.Maui.MauiEmbeddingApp>(this) before .WithInterFont(). AvaloniaMainActivity<TApp> handles the AvaloniaView initialisation in OnCreate. - src/PostIt/PostIt/Maui/MauiEmbeddingApp.cs (new): empty Microsoft.Maui.Controls.Application used as the embedding host for Avalonia.Maui. The MAUI window it produces is consumed by the Avalonia.Maui embedding pipeline and never surfaces to the user; Avalonia owns the actual visual tree. Build status: 11 errors remaining, all CS0234 / CS0246 against 'Avalonia.Controls.ContentPage'. Avalonia 11 did not ship ContentPage (it's an Avalonia 12 type, presumably for MAUI parity). All seven PostIt pages inherit ContentPage today and need to be reworked to UserControl before the build can complete. Follow-up commit will do that. Reference: AGENTS.md, 'PostIt.Android boot crash sur AVD x86_64 : investigation par couches', couche 3.
2026-08-22 15:56:52 +01:00
<PackageVersion Include="Microsoft.Maui.Essentials" Version="8.0.100" />
<PackageVersion Include="Microsoft.Maui.Controls" Version="8.0.100" />
<PackageVersion Include="Xamarin.AndroidX.Browser" Version="1.10.0.1" />
<PackageVersion Include="Xamarin.AndroidX.Core.SplashScreen" Version="1.2.0.3" />
Split Directory.Packages.props: shared versions in root, per-product in src/ Move product-local package versions out of the root Directory.Packages.props into per-product props files under src/<Product>/. The root file now only contains versions for packages declared by two or more top-level products, which is the actual shared set. Each per-product Directory.Packages.props imports the root via GetPathOfFileAbove so that the shared versions are inherited; this is necessary because the .NET SDK picks the closest Directory.Packages.props in the hierarchy and does not merge multiple ones. Per-product file contents: - src/cli/ Microsoft.AspNetCore.Razor.Language, Microsoft.Extensions.{CommandLineUtils,Configuration,Hosting} - src/PostIt/ Avalonia* and CommunityToolkit.Mvvm - src/PostIt.Tests/ Avalonia.Headless{,XUnit} - src/Yavsc.Org/ AsciiDocSharp*, Google.Apis.Compute.v1, HigginsSoft.IdentityServer8.AspNetIdentity, IdentityServer8.EntityFramework.Storage, IdentityServer8.Security, IdentityServer8.Storage, Microsoft.AspNetCore.Antiforgery, Authentication.Google, Diagnostics.EntityFrameworkCore, Mvc.NewtonsoftJson, SignalR, EntityFrameworkCore.Tools, Swashbuckle, System.Security.Cryptography.Pkcs, YamlDotNet - src/Yavsc.Org.Tests/ Microsoft.AspNetCore.Hosting, Extensions.Caching.Memory, Options, Options.ConfigurationExtensions, Selenium.WebDriver, xunit.v3.{common,extensibility.core} - src/Yavsc.Server/ Anthropic.SDK, Google.Apis.Calendar.v3, Magick.NET-Q8-AnyCPU, MailKit, MimeKit, Microsoft.AspNetCore.Http.Features, StaticFiles, EntityFrameworkCore.SqlServer, Npgsql.EntityFrameworkCore.PostgreSQL, PayPalMerchantSDK, pazof.rules, RazorEngine.NetCore - src/Yavsc.Web/ IdentityModel.AspNetCore No per-product file is created for Yavsc.Api, Yavsc.Blogs, Yavsc.Abstract, or templateWeb: Api and Blogs only declare the shared JwtBearer, Abstract and templateWeb declare no package references at all. Also includes a minor cosmetic update to FirstUIStript.cs (Firefox -> Chrome driver, dedent, comment header). Tests previously failing on DataProtection keyset / SMTP were unrelated environment issues (resolved by fixing the SMTP password locally).
2026-06-19 18:51:18 +01:00
</ItemGroup>
2026-08-19 14:09:31 +01:00
</Project>