Skip to content

fix: the iOS app has to declare 12.2, not the archive's 12.0 (#15) #40

fix: the iOS app has to declare 12.2, not the archive's 12.0 (#15)

fix: the iOS app has to declare 12.2, not the archive's 12.0 (#15) #40

Workflow file for this run

# Binding CI - Simple Template
name: CI
on:
workflow_dispatch:
inputs:
publish-artifacts:
description: 'Publish artifacts'
required: false
type: boolean
default: false
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
ci:
uses: EvergineTeam/Evergine.Bindings/.github/workflows/binding-common-ci.yml@v1
with:
generator-project: "JoltPhysicsGen/JoltPhysicsGen.csproj"
generator-name: "JoltPhysicsGen"
binding-project: "Evergine.Bindings.JoltPhysics/Evergine.Bindings.JoltPhysics.csproj"
target-framework: "net10.0"
dotnet-version: "10.x"
# Windows, because the libclang that CppAst loads from its NuGet package cannot
# resolve system headers on the Linux runner: parsing common.h fails at
# `#include <stdint.h>`. That failure was invisible until the generator started
# reporting parse errors, and doubly invisible because the output was landing in a
# directory nobody reads. Meshoptimizer.NET moved to Windows for the same reason.
runner-os: windows-latest
runtime-identifier: "win-x64"
build-configuration: "Release"
nuget-artifacts: ${{ inputs.publish-artifacts || false }}
revision: ${{ github.run_number }}
# 1,280 P/Invoke declarations against ten native libraries nobody was comparing them to.
# P/Invoke binds late: a declaration naming a symbol the library does not export
# compiles, passes CI, packs, publishes, and throws the first time a consumer calls it.
# Until today the libraries arrived here by hand, downloaded from another repository's
# artifacts and committed, with nothing recording which revision they came from.
#
# This also reads each library's machine field and checks it against the architecture
# its RID promises. ImGui.Net shipped an osx-x64 dylib that was arm64 for months.
coherence:
uses: EvergineTeam/Evergine.Bindings/.github/workflows/binding-native-coherence.yml@v1
# Closes the gap that let a broken binding reach main. CI regenerates from the vendored
# headers; the CD fetches them from the tracked release first. Those were different
# revisions here -- headers from `main`, manifest recording v5.5.0 -- so every pull
# request passed while the first CD regenerated something that did not compile.
#
# Fetches at release.current, not at the newest release, so a new JoltPhysicsC release
# does not turn this red. It only goes red when the tree disagrees with the revision it
# declares, which is the state that reaches consumers.
drift:
uses: EvergineTeam/Evergine.Bindings/.github/workflows/binding-upstream-drift.yml@v1