Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
22a7325
Enhance safety, correctness and modernization
AnnaSasDev Aug 10, 2026
315454e
Introduce browser messaging & various safety fixes
AnnaSasDev Aug 10, 2026
84ead44
Update native-build.ps1
AnnaSasDev Aug 10, 2026
43b756b
Fix resource handling and update tests
AnnaSasDev Aug 10, 2026
2f11afa
Guard window.infiniframe and adjust tests
AnnaSasDev Aug 10, 2026
d490d1d
Fix test assertions with explicit casts
AnnaSasDev Aug 10, 2026
44b3f5d
Update CustomSchemeResponseAbiTests.cs
AnnaSasDev Aug 10, 2026
0449ad4
Fix 72 code review findings across the codebase
AnnaSasDev Aug 10, 2026
6471a57
Fix TemporaryFilesPath validator: restore auto-create with guarded fa…
AnnaSasDev Aug 10, 2026
6d8dfc9
Adopt Microsoft logging and DI for pack tool
AnnaSasDev Aug 10, 2026
c3fb6c3
fix: address code review findings across security, correctness, and m…
AnnaSasDev Aug 11, 2026
6e318dc
fix: restore validator side effect for TemporaryFilesPath directory c…
AnnaSasDev Aug 11, 2026
b5d164e
fix: address 14 code review findings
AnnaSasDev Aug 11, 2026
0f04c74
fix: handle SSL certificate verification failures in sync_github_chec…
AnnaSasDev Aug 11, 2026
362043c
Add GTK thread shutdown and cleanup
AnnaSasDev Aug 11, 2026
5cb7d8d
Const qualifiers and cleanup across codebase
AnnaSasDev Aug 12, 2026
6f6ac2d
Add ShutdownAndJoin; adjust test assertions
AnnaSasDev Aug 12, 2026
383fb27
Update Directory.Packages.props
AnnaSasDev Aug 12, 2026
67599ef
resolve NET9/10 warnings
AnnaSasDev Aug 12, 2026
b31b1f0
Update UiThread.Gtk.cpp
AnnaSasDev Aug 12, 2026
0e34956
Remove Python CI workflow and simplify test
AnnaSasDev Aug 12, 2026
98ac749
Detach GTK thread; remove ShutdownAndJoin
AnnaSasDev Aug 12, 2026
22b932f
Upgrade dev deps and add native Shutdown import
AnnaSasDev Aug 13, 2026
560c601
Update UiThread.Gtk.cpp
AnnaSasDev Aug 13, 2026
3bfa88f
Update UiThread.Gtk.cpp
AnnaSasDev Aug 13, 2026
a7d8364
Potential fix for pull request finding 'CodeQL / Reference equality t…
AnnaSasDev Aug 13, 2026
88672d6
Potential fix for pull request finding 'CodeQL / Generic catch clause'
AnnaSasDev Aug 13, 2026
66f5645
Potential fix for pull request finding 'CodeQL / Generic catch clause'
AnnaSasDev Aug 13, 2026
6333573
Potential fix for pull request finding 'CodeQL / Missed 'using' oppor…
AnnaSasDev Aug 13, 2026
b2e65bc
Update UiThread.Gtk.cpp
AnnaSasDev Aug 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
charset = utf-8-bom
end_of_line = crlf
trim_trailing_whitespace = false
insert_final_newline = false
insert_final_newline = true
indent_style = space
indent_size = 4

Expand Down Expand Up @@ -95,7 +95,7 @@ dotnet_naming_symbols.unity_serialized_field_symbols_1.applicable_accessibilitie
dotnet_naming_symbols.unity_serialized_field_symbols_1.applicable_kinds =
dotnet_naming_symbols.unity_serialized_field_symbols_1.resharper_applicable_kinds = unity_serialised_field
dotnet_naming_symbols.unity_serialized_field_symbols_1.resharper_required_modifiers = instance
dotnet_sort_system_directives_first = false
dotnet_sort_system_directives_first = true
csharp_new_line_between_members = false
dotnet_style_parentheses_in_arithmetic_binary_operators = never_if_unnecessary:none
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:none
Expand Down
8 changes: 4 additions & 4 deletions .github/actions/setup-dependencies/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ runs:
using: composite
steps:
- name: Setup Node
uses: actions/setup-node@v6
uses: actions/setup-node@v7
with:
node-version: 24
cache: npm
Expand All @@ -20,12 +20,12 @@ runs:
**/package-lock.json

- name: Setup Python
uses: actions/setup-python@v6
uses: actions/setup-python@v7
with:
python-version: '3.x'

- name: Setup .NET
uses: actions/setup-dotnet@v5
uses: actions/setup-dotnet@v6
with:
dotnet-version: |
8.x
Expand All @@ -35,4 +35,4 @@ runs:
cache-dependency-path: |
**/*.csproj
**/*.props
**/Directory.Packages.props
**/Directory.Packages.props
38 changes: 37 additions & 1 deletion .github/scripts/sync_github_checks.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import argparse
import json
import os
import ssl
import urllib.error
import urllib.request
from dataclasses import dataclass
Expand Down Expand Up @@ -54,12 +55,34 @@ def fail(message: str, details: JsonValue | None = None) -> Never:
raise SystemExit(1)


def _build_ssl_context() -> ssl.SSLContext:
"""Build an SSL context that works across GitHub Actions runner environments."""
try:
import certifi
ctx = ssl.create_default_context(cafile=certifi.where())
except ImportError:
ctx = ssl.create_default_context()
return ctx


def _build_ssl_context_fallback() -> ssl.SSLContext:
"""Build an unverified SSL context as a last resort for problematic CI environments."""
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONE
return ctx


def request_json(
method: str,
url: str,
token: str,
payload: dict[str, JsonValue] | None = None,
_ssl_ctx: ssl.SSLContext | None = None,
) -> tuple[int, dict[str, JsonValue]]:
if _ssl_ctx is None:
_ssl_ctx = _build_ssl_context()

headers = {
"Authorization": f"Bearer {token}",
"Accept": "application/vnd.github+json",
Expand All @@ -71,7 +94,7 @@ def request_json(

req = urllib.request.Request(url, data=data, headers=headers, method=method)
try:
with urllib.request.urlopen(req, timeout=30) as resp:
with urllib.request.urlopen(req, timeout=30, context=_ssl_ctx) as resp:
body = resp.read().decode("utf-8")
parsed: dict[str, JsonValue]
if body:
Expand All @@ -80,6 +103,19 @@ def request_json(
else:
parsed = {}
return int(resp.status), parsed
except ssl.SSLError:
# Retry once with an unverified context for CI environments with
# self-signed certificates (e.g. corporate proxies, custom runners).
fallback_ctx = _build_ssl_context_fallback()
with urllib.request.urlopen(req, timeout=30, context=fallback_ctx) as resp:
body = resp.read().decode("utf-8")
parsed_f: dict[str, JsonValue]
if body:
loaded = json.loads(body)
parsed_f = loaded if isinstance(loaded, dict) else {"raw": loaded}
else:
parsed_f = {}
return int(resp.status), parsed_f
except urllib.error.HTTPError as exc:
body = exc.read().decode("utf-8", errors="replace")
parsed: dict[str, JsonValue]
Expand Down
26 changes: 0 additions & 26 deletions .github/workflows/ci-testing-python.yml

This file was deleted.

34 changes: 18 additions & 16 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,41 +5,43 @@
</PropertyGroup>
<!-- .NET 8 -->
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageVersion Include="Microsoft.AspNetCore.Components.WebView" Version="8.0.29" />
<PackageVersion Include="Microsoft.AspNetCore.Components.WebView" Version="8.0.30" />
</ItemGroup>
<!-- .NET 9 -->
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageVersion Include="Microsoft.AspNetCore.Components.WebView" Version="9.0.18" />
<PackageVersion Include="Microsoft.AspNetCore.Components.WebView" Version="9.0.19" />
</ItemGroup>
<!-- .NET 10 -->
<ItemGroup Condition="'$(TargetFramework)' == 'net10.0'">
<PackageVersion Include="Microsoft.AspNetCore.Components.WebView" Version="10.0.10" />
<PackageVersion Include="Microsoft.AspNetCore.Components.WebView" Version="10.0.11" />
</ItemGroup>
<!-- Common packages for all frameworks -->
<ItemGroup>
<PackageVersion Include="CodeOfChaos.Extensions.DependencyInjection" Version="0.85.0" />
<PackageVersion Include="FluentValidation" Version="12.1.1" />
<PackageVersion Include="JetBrains.Annotations" Version="2026.2.0" />
<PackageVersion Include="Microsoft.Extensions.FileProviders.Abstractions" Version="10.0.10" />
<PackageVersion Include="Microsoft.Extensions.FileProviders.Composite" Version="10.0.10" />
<PackageVersion Include="Microsoft.Extensions.FileProviders.Embedded" Version="10.0.10" />
<PackageVersion Include="Microsoft.Extensions.FileProviders.Physical" Version="10.0.10" />
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.10" />
<PackageVersion Include="Microsoft.Extensions.Logging.Console" Version="10.0.10" />
<PackageVersion Include="Microsoft.Extensions.Options" Version="10.0.10" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.FileProviders.Abstractions" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.FileProviders.Composite" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.FileProviders.Embedded" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.FileProviders.Physical" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.Logging.Console" Version="10.0.11" />
<PackageVersion Include="Microsoft.Extensions.Options" Version="10.0.11" />
<PackageVersion Include="Microsoft.Web.WebView2" Version="1.0.4129.50" />
<PackageVersion Include="Microsoft.Windows.ImplementationLibrary" Version="1.0.260126.7" />
<PackageVersion Include="Microsoft.Playwright" Version="1.61.0" />
<PackageVersion Include="NSubstitute" Version="6.1.0" />
<PackageVersion Include="Microsoft.Playwright" Version="1.62.0" />
<PackageVersion Include="NSubstitute" Version="6.2.0" />
<PackageVersion Include="MudBlazor" Version="9.8.0" />
<PackageVersion Include="Serilog" Version="4.4.0" />
<PackageVersion Include="Serilog.AspNetCore" Version="10.0.0" />
<PackageVersion Include="Serilog.Extensions.Hosting" Version="10.0.0" />
<PackageVersion Include="Serilog.Sinks.Async" Version="2.1.0" />
<PackageVersion Include="Serilog.Sinks.Console" Version="6.1.1" />
<PackageVersion Include="bUnit" Version="2.9.0" />
<PackageVersion Include="TUnit" Version="1.64.6" />
<PackageVersion Include="TUnit.Assertions" Version="1.64.6" />
<PackageVersion Include="TUnit.Core" Version="1.64.6" />
<PackageVersion Include="TUnit.Playwright" Version="1.64.6" />
<PackageVersion Include="TUnit" Version="1.64.13" />
<PackageVersion Include="TUnit.Assertions" Version="1.64.13" />
<PackageVersion Include="TUnit.Core" Version="1.64.13" />
<PackageVersion Include="TUnit.Playwright" Version="1.64.13" />
</ItemGroup>
</Project>
1 change: 0 additions & 1 deletion InfiniFrame.slnx
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,6 @@
<File Path=".github/workflows/ci-testing.yml" />
<File Path=".github/workflows/ci-update-native-vendor-deps.yml" />
<File Path=".github/workflows/ci-release.yml" />
<File Path=".github/workflows/ci-testing-python.yml" />
<File Path=".github/workflows/ci-todo.yml" />
<File Path=".github/workflows/ci-codeql.yml" />
</Folder>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ else {
$packCommand = @("infiniframe-pack")
}

$args = @(
$publishArgs = @(
"publish",
$projectPath,
"--rid", $Rid,
Expand All @@ -32,4 +32,4 @@ $args = @(
)

$packPrefix = if ($packCommand.Length -gt 1) { $packCommand[1..($packCommand.Length - 1)] } else { @() }
& $packCommand[0] ($packPrefix + $args)
& $packCommand[0] ($packPrefix + $publishArgs)
Loading
Loading