2 Commits

Author SHA1 Message Date
c6a3f4acc4 chore(perf): bump version to 9.0.40 to match MAUI 9.0.40
All checks were successful
CI / Build (Linux) (push) Successful in 21s
Release / Build and Publish (push) Successful in 20s
Update version from 9.0.0 to 9.0.40 to align precisely with MAUI 9.0.40 release. Update CHANGELOG, package metadata, and templates. Fix thread safety issue in FontFallbackManager by changing _glyphCache from Dictionary to ConcurrentDictionary to prevent race conditions during concurrent glyph lookups.
2026-03-07 01:48:58 -05:00
8a5ad459ed Merge pull request 'chore(perf): realign version to 9.0.0 to match .NET/MAUI versioning' (#1) from dotNet9 into main
All checks were successful
CI / Build (Linux) (push) Successful in 18s
Reviewed-on: #1
2026-03-07 05:16:59 +00:00
11 changed files with 28 additions and 27 deletions

View File

@@ -50,7 +50,7 @@ jobs:
for pkg in ./nupkg/*.nupkg; do
dotnet nuget push "$pkg" \
--api-key ${{ secrets.GITEATOKEN }} \
--source https://git.marketally.com/api/packages/${{ gitea.repository_owner }}/nuget/index.json \
--source https://git.marketally.ai/api/packages/${{ gitea.repository_owner }}/nuget/index.json \
--skip-duplicate
done

View File

@@ -4,9 +4,9 @@ All notable changes to this project will be documented in this file.
Version numbers are aligned with .NET / MAUI versions (e.g., OpenMaui 9.0.x targets .NET 9 / MAUI 9).
## [9.0.0] - 2026-03-06
## [9.0.40] - 2026-03-07
> Version realigned from 1.0.0 to match .NET 9 / MAUI 9.0.x versioning.
> Version aligned with MAUI 9.0.40. Previously released as 1.0.0.
### Added
- 35+ Skia-rendered controls: Button, Label, Entry, Editor, CheckBox, Switch, RadioButton, Slider, Stepper, Picker, DatePicker, TimePicker, SearchBar, Image, ImageButton, ProgressBar, ActivityIndicator, BoxView, Border, Frame, ScrollView, CollectionView, CarouselView, IndicatorView, SwipeView, RefreshView, GraphicsView, WebView, MenuBar
@@ -42,7 +42,7 @@ Version numbers are aligned with .NET / MAUI versions (e.g., OpenMaui 9.0.x targ
## [1.0.0] - 2026-03-06 [DEPRECATED]
> Superseded by 9.0.0. Identical codebase, version renumbered to align with .NET/MAUI versioning.
> Superseded by 9.0.40. Identical codebase, version renumbered to align with MAUI versioning.
## [1.0.0-rc.1] - 2026-02-01

View File

@@ -1,6 +1,6 @@
# Contributing to .NET MAUI Linux Platform
Thank you for your interest in contributing to the .NET MAUI Linux Platform! This project is developed and maintained by [MarketAlly Pte Ltd](https://marketally.com) under the leadership of David H. Friedel Jr.
Thank you for your interest in contributing to the .NET MAUI Linux Platform! This project is developed and maintained by [MarketAlly Pte Ltd](https://marketally.sg) under the leadership of David H. Friedel Jr.
This document provides guidelines and information for contributors.

View File

@@ -14,18 +14,18 @@
<!-- NuGet Package Properties -->
<PackageId>OpenMaui.Controls.Linux</PackageId>
<Version>9.0.0</Version>
<Version>9.0.40</Version>
<Authors>MarketAlly Pte Ltd, David H. Friedel Jr.</Authors>
<Company>MarketAlly Pte Ltd</Company>
<Product>OpenMaui Linux Controls</Product>
<Description>Linux desktop support for .NET MAUI applications using SkiaSharp rendering. Supports X11 and Wayland display servers with 35+ controls, platform services, and accessibility support.</Description>
<Copyright>Copyright 2025-2026 MarketAlly Pte Ltd</Copyright>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageProjectUrl>https://git.marketally.com/open-maui/maui-linux</PackageProjectUrl>
<RepositoryUrl>https://git.marketally.com/open-maui/maui-linux.git</RepositoryUrl>
<PackageProjectUrl>https://git.marketally.ai/open-maui/maui-linux</PackageProjectUrl>
<RepositoryUrl>https://git.marketally.ai/open-maui/maui-linux.git</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageTags>maui;linux;desktop;skia;gui;cross-platform;dotnet;x11;wayland;openmaui</PackageTags>
<PackageReleaseNotes>9.0: Version aligned with .NET 9 / MAUI 9. 100% .NET MAUI API compliance - all public APIs use MAUI types. Full XAML support, Visual State Manager, data binding, XAML styles. 541 passing tests. Previously released as 1.0.0.</PackageReleaseNotes>
<PackageReleaseNotes>9.0.40: Version aligned with MAUI 9.0.40. 100% .NET MAUI API compliance - all public APIs use MAUI types. Full XAML support, Visual State Manager, data binding, XAML styles. 541 passing tests. Previously released as 1.0.0.</PackageReleaseNotes>
<PackageReadmeFile>README.md</PackageReadmeFile>
<PackageIcon>icon.png</PackageIcon>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>

View File

@@ -2,13 +2,13 @@
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
<metadata>
<id>OpenMaui.Controls.Linux</id>
<version>9.0.0</version>
<version>9.0.40</version>
<title>OpenMaui Linux Controls</title>
<authors>MarketAlly Pte Ltd, David H. Friedel Jr.</authors>
<owners>MarketAlly Pte Ltd</owners>
<license type="expression">MIT</license>
<projectUrl>https://git.marketally.com/open-maui/maui-linux</projectUrl>
<iconUrl>https://git.marketally.com/open-maui/maui-linux/raw/branch/main/assets/icon.png</iconUrl>
<projectUrl>https://git.marketally.ai/open-maui/maui-linux</projectUrl>
<iconUrl>https://git.marketally.ai/open-maui/maui-linux/raw/branch/main/assets/icon.png</iconUrl>
<description>
Linux desktop support for .NET MAUI applications. This package enables running MAUI applications on Linux desktop environments using SkiaSharp for rendering.
@@ -24,11 +24,11 @@ Features:
Developed by MarketAlly Pte Ltd. Lead Architect: David H. Friedel Jr.
</description>
<releaseNotes>
9.0: Version aligned with .NET 9 / MAUI 9. 100% .NET MAUI API compliance - all public APIs use MAUI types. Full XAML support, SkiaSharp rendering, X11 window management, 35+ controls, 18 platform services, accessibility support. 541 passing tests. Previously released as 1.0.0.
9.0.40: Version aligned with MAUI 9.0.40. 100% .NET MAUI API compliance - all public APIs use MAUI types. Full XAML support, SkiaSharp rendering, X11 window management, 35+ controls, 18 platform services, accessibility support. 541 passing tests. Previously released as 1.0.0.
</releaseNotes>
<copyright>Copyright 2025-2026 MarketAlly Pte Ltd</copyright>
<tags>maui linux desktop skia gui cross-platform dotnet openmaui</tags>
<repository type="git" url="https://git.marketally.com/open-maui/maui-linux.git" />
<repository type="git" url="https://git.marketally.ai/open-maui/maui-linux.git" />
<dependencies>
<group targetFramework="net9.0">
<dependency id="Microsoft.Maui.Controls" version="9.0.40" />

View File

@@ -5,7 +5,7 @@ A comprehensive Linux platform implementation for .NET MAUI using SkiaSharp rend
[![NuGet](https://img.shields.io/nuget/v/OpenMaui.Controls.Linux)](https://www.nuget.org/packages/OpenMaui.Controls.Linux)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
**Developed by [MarketAlly Pte Ltd](https://marketally.com)**
**Developed by [MarketAlly Pte Ltd](https://marketally.sg)**
**Lead Architect: David H. Friedel Jr.**
## Overview
@@ -135,12 +135,12 @@ sudo dnf install libX11-devel libXrandr-devel libXcursor-devel libXi-devel mesa-
## Sample Applications
Full sample applications are available in the [maui-linux-samples](https://git.marketally.com/open-maui/maui-linux-samples) repository:
Full sample applications are available in the [maui-linux-samples](https://git.marketally.ai/open-maui/maui-linux-samples) repository:
| Sample | Description |
|--------|-------------|
| **[TodoApp](https://git.marketally.com/open-maui/maui-linux-samples/src/branch/main/TodoApp)** | Task manager with NavigationPage, XAML data binding, CollectionView |
| **[ShellDemo](https://git.marketally.com/open-maui/maui-linux-samples/src/branch/main/ShellDemo)** | Control showcase with Shell navigation and flyout menu |
| **[TodoApp](https://git.marketally.ai/open-maui/maui-linux-samples/src/branch/main/TodoApp)** | Task manager with NavigationPage, XAML data binding, CollectionView |
| **[ShellDemo](https://git.marketally.ai/open-maui/maui-linux-samples/src/branch/main/ShellDemo)** | Control showcase with Shell navigation and flyout menu |
## Quick Example
@@ -179,7 +179,7 @@ app.Run();
## Building from Source
```bash
git clone https://git.marketally.com/open-maui/maui-linux.git
git clone https://git.marketally.ai/open-maui/maui-linux.git
cd maui-linux
dotnet build
dotnet test
@@ -279,7 +279,7 @@ Copyright (c) 2025-2026 MarketAlly Pte Ltd. Licensed under the MIT License - see
## Acknowledgments
- [MarketAlly Pte Ltd](https://marketally.com) - Project development and maintenance
- [MarketAlly Pte Ltd](https://marketally.sg) - Project development and maintenance
- [SkiaSharp](https://github.com/mono/SkiaSharp) - 2D graphics library
- [.NET MAUI](https://github.com/dotnet/maui) - Cross-platform UI framework
- The .NET community

View File

@@ -1,6 +1,7 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
using System.Collections.Concurrent;
using SkiaSharp;
namespace Microsoft.Maui.Platform.Linux.Services;
@@ -81,7 +82,7 @@ public class FontFallbackManager
// Cache for typeface lookups
private readonly Dictionary<string, SKTypeface?> _typefaceCache = new();
private readonly Dictionary<(int codepoint, string preferredFont), SKTypeface?> _glyphCache = new();
private readonly ConcurrentDictionary<(int codepoint, string preferredFont), SKTypeface?> _glyphCache = new();
private FontFallbackManager()
{

View File

@@ -224,7 +224,7 @@ public class VersionTrackingService : IVersionTracking
{
var assembly = Assembly.GetEntryAssembly() ?? Assembly.GetExecutingAssembly();
var version = assembly.GetName().Version;
return version != null ? $"{version.Major}.{version.Minor}.{version.Build}" : "9.0.0";
return version != null ? $"{version.Major}.{version.Minor}.{version.Build}" : "9.0.40";
}
private static string GetAssemblyBuild()

View File

@@ -304,4 +304,4 @@ jobs:
---
*Developed by [MarketAlly Pte Ltd](https://marketally.com) • Lead Architect: David H. Friedel Jr.*
*Developed by [MarketAlly Pte Ltd](https://marketally.sg) • Lead Architect: David H. Friedel Jr.*

View File

@@ -79,13 +79,13 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md) for details.
| Milestone | .NET / MAUI | Target | Status |
|-----------|-------------|--------|--------|
| v1.0.0 (now v9.0.0) | .NET 9 / MAUI 9.0.x | Q1 2026 | ✅ Released |
| v9.0.40 | .NET 9 / MAUI 9.0.40 | Q1 2026 | ✅ Released |
| v9.0.x | .NET 9 / MAUI 9.0.x | Q1-Q2 2026 | 🔧 Maintenance |
| v10.0.0 | .NET 10 / MAUI 10.0.x | Q4 2026 | 📋 Planned |
## Feedback
- Issues: https://git.marketally.com/open-maui/maui-linux/issues
- Issues: https://git.marketally.ai/open-maui/maui-linux/issues
---

View File

@@ -2,7 +2,7 @@
<PropertyGroup>
<PackageType>Template</PackageType>
<PackageVersion>9.0.0</PackageVersion>
<PackageVersion>9.0.40</PackageVersion>
<PackageId>OpenMaui.Linux.Templates</PackageId>
<Title>OpenMaui Linux Project Templates</Title>
<Authors>MarketAlly Pte Ltd, David H. Friedel Jr.</Authors>
@@ -13,7 +13,7 @@ Templates included:
- openmaui-linux: Basic Linux app with code-based UI
- openmaui-linux-xaml: Full XAML support with standard MAUI syntax</Description>
<PackageTags>dotnet-new;templates;maui;linux;desktop;openmaui;xaml</PackageTags>
<PackageProjectUrl>https://git.marketally.com/open-maui/maui-linux</PackageProjectUrl>
<PackageProjectUrl>https://git.marketally.ai/open-maui/maui-linux</PackageProjectUrl>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<Copyright>Copyright 2025-2026 MarketAlly Pte Ltd</Copyright>