Skip to content

Commit

Permalink
Merge branch 'godotengine:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
tygyh authored Dec 15, 2024
2 parents 30ccdc5 + b9437c3 commit 0df1f67
Show file tree
Hide file tree
Showing 2,216 changed files with 172,432 additions and 18,527 deletions.
20 changes: 5 additions & 15 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Commented out parameters are those with the same value as base LLVM style.
# We can uncomment them if we want to change their value, or enforce the
# chosen value in case the base style changes (last sync: Clang 18.1.8).
# chosen value in case the base style changes (last sync: Clang 17.0.6).
BasedOnStyle: LLVM
AccessModifierOffset: -4
AlignAfterOpenBracket: DontAlign
Expand All @@ -10,28 +10,24 @@ AlignAfterOpenBracket: DontAlign
# AcrossEmptyLines: false
# AcrossComments: false
# AlignCompound: false
# AlignFunctionPointers: false
# PadOperators: true
# AlignConsecutiveBitFields:
# Enabled: false
# AcrossEmptyLines: false
# AcrossComments: false
# AlignCompound: false
# AlignFunctionPointers: false
# PadOperators: false
# AlignConsecutiveDeclarations:
# Enabled: false
# AcrossEmptyLines: false
# AcrossComments: false
# AlignCompound: false
# AlignFunctionPointers: false
# PadOperators: false
# AlignConsecutiveMacros:
# Enabled: false
# AcrossEmptyLines: false
# AcrossComments: false
# AlignCompound: false
# AlignFunctionPointers: false
# PadOperators: false
# AlignConsecutiveShortCaseStatements:
# Enabled: false
Expand All @@ -45,15 +41,14 @@ AlignTrailingComments:
OverEmptyLines: 0
# AllowAllArgumentsOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: false
# AllowBreakBeforeNoexceptSpecifier: Never
# AllowShortBlocksOnASingleLine: Never
# AllowShortCaseLabelsOnASingleLine: false
# AllowShortCompoundRequirementOnASingleLine: true
# AllowShortEnumsOnASingleLine: true
# AllowShortFunctionsOnASingleLine: All
# AllowShortIfStatementsOnASingleLine: Never
# AllowShortLambdasOnASingleLine: All
# AllowShortLoopsOnASingleLine: false
# AlwaysBreakAfterDefinitionReturnType: None
# AlwaysBreakAfterReturnType: None
# AlwaysBreakBeforeMultilineStrings: false
# AlwaysBreakTemplateDeclarations: MultiLine
Expand Down Expand Up @@ -81,8 +76,7 @@ AllowAllParametersOfDeclarationOnNextLine: false
# SplitEmptyFunction: true
# SplitEmptyRecord: true
# SplitEmptyNamespace: true
# BreakAdjacentStringLiterals: true
# BreakAfterAttributes: Leave
# BreakAfterAttributes: Never
# BreakAfterJavaFieldAnnotations: false
# BreakArrays: true
# BreakBeforeBinaryOperators: None
Expand Down Expand Up @@ -171,7 +165,6 @@ PackConstructorInitializers: NextLine
# PenaltyBreakComment: 300
# PenaltyBreakFirstLessLess: 120
# PenaltyBreakOpenParenthesis: 0
# PenaltyBreakScopeResolution: 500
# PenaltyBreakString: 1000
# PenaltyBreakTemplateDeclaration: 10
# PenaltyExcessCharacter: 1000000
Expand All @@ -188,7 +181,6 @@ RemoveSemicolon: true
# RequiresExpressionIndentation: OuterScope
# SeparateDefinitionBlocks: Leave
# ShortNamespaceLines: 1
# SkipMacroDefinitionBody: false
# SortIncludes: CaseSensitive
# SortJavaStaticImport: Before
# SortUsingDeclarations: LexicographicNumeric
Expand All @@ -202,14 +194,14 @@ RemoveSemicolon: true
# SpaceBeforeCtorInitializerColon: true
# SpaceBeforeInheritanceColon: true
# SpaceBeforeJsonColon: false
# SpaceBeforeParens: ControlStatements
# SpaceBeforeParensOptions:
# AfterControlStatements: true
# AfterForeachMacros: true
# AfterFunctionDeclarationName: false
# AfterFunctionDefinitionName: false
# AfterIfMacros: true
# AfterOverloadedOperator: false
# AfterPlacementOperator: true
# AfterRequiresInClause: false
# AfterRequiresInExpression: false
# BeforeNonEmptyParentheses: false
Expand All @@ -219,10 +211,8 @@ RemoveSemicolon: true
# SpacesBeforeTrailingComments: 1
# SpacesInAngles: Never
# SpacesInContainerLiterals: true
## Godot TODO: We'll want to use a min of 1, but we need to see how to fix
## our comment capitalization at the same time.
SpacesInLineCommentPrefix:
Minimum: 0
Minimum: 0 # We want a minimum of 1 for comments, but allow 0 for disabled code.
Maximum: -1
# SpacesInParens: Never
# SpacesInParensOptions:
Expand Down
37 changes: 15 additions & 22 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@
# Each line is a file pattern followed by one or more owners.
# Owners can be @users, @org/teams or emails.

# Buildsystem (Before everything to be overwritten)

* @godotengine/buildsystem

# Core

/core/ @godotengine/core
Expand All @@ -20,8 +16,6 @@

# Drivers

/drivers/ @godotengine/_systems

## Audio
/drivers/alsa/ @godotengine/audio
/drivers/alsamidi/ @godotengine/audio
Expand All @@ -42,17 +36,17 @@
/drivers/vulkan/ @godotengine/rendering

## OS
/drivers/unix/ @godotengine/_platforms
/drivers/unix/ @godotengine/linux-bsd
/drivers/windows/ @godotengine/windows

## Misc
/drivers/png/ @godotengine/import

# Editor

/editor/ @godotengine/_editor
/editor/**/*2d* @godotengine/2d-editor
/editor/**/*3d* @godotengine/3d-editor
/editor/**/*audio* @godotengine/audio
/editor/**/*code* @godotengine/script-editor
/editor/**/*debugger* @godotengine/debugger
/editor/**/*dock* @godotengine/docks
Expand All @@ -75,11 +69,6 @@

# Modules

/modules/ @godotengine/_engine
/modules/**/doc_classes/ @godotengine/_engine @godotengine/documentation
/modules/**/icons/ @godotengine/_engine @godotengine/usability
/modules/**/tests/ @godotengine/_engine @godotengine/tests

## Audio (+ video)
/modules/interactive_music/ @godotengine/audio
/modules/interactive_music/doc_classes/ @godotengine/audio @godotengine/documentation
Expand All @@ -95,6 +84,7 @@
## Import
/modules/astcenc/ @godotengine/import
/modules/basis_universal/ @godotengine/import
/modules/bcdec/ @godotengine/import
/modules/betsy/ @godotengine/import
/modules/bmp/ @godotengine/import
/modules/cvtt/ @godotengine/import
Expand All @@ -121,6 +111,7 @@
/modules/mbedtls/tests/ @godotengine/network @godotengine/tests
/modules/multiplayer/ @godotengine/network
/modules/multiplayer/doc_classes/ @godotengine/network @godotengine/documentation
/modules/multiplayer/tests/ @godotengine/network @godotengine/tests
/modules/upnp/ @godotengine/network
/modules/upnp/doc_classes/ @godotengine/network @godotengine/documentation
/modules/webrtc/ @godotengine/network
Expand All @@ -131,6 +122,7 @@
## Physics
/modules/godot_physics_2d/ @godotengine/physics
/modules/godot_physics_3d/ @godotengine/physics
/modules/jolt_physics/ @godotengine/physics

## Rendering
/modules/glslang/ @godotengine/rendering
Expand Down Expand Up @@ -189,7 +181,6 @@

# Platform

/platform/ @godotengine/_platforms
/platform/android/ @godotengine/android
/platform/android/doc_classes/ @godotengine/android @godotengine/documentation
/platform/ios/ @godotengine/ios
Expand All @@ -205,7 +196,6 @@

# Scene

/scene/ @godotengine/_systems @godotengine/core
/scene/2d/ @godotengine/2d-nodes
/scene/2d/physics/ @godotengine/2d-nodes @godotengine/physics
/scene/3d/ @godotengine/3d-nodes
Expand All @@ -215,20 +205,23 @@
/scene/debugger/ @godotengine/debugger
/scene/gui/ @godotengine/gui-nodes
/scene/main/ @godotengine/core
/scene/resources/font.* @godotengine/gui-nodes
/scene/resources/text_line.* @godotengine/gui-nodes
/scene/resources/text_paragraph.* @godotengine/gui-nodes
/scene/resources/visual_shader*.* @godotengine/shaders
/scene/resources/2d/ @godotengine/2d-nodes
/scene/resources/3d/ @godotengine/3d-nodes
/scene/resources/animated* @godotengine/animation
/scene/resources/animation* @godotengine/animation
/scene/resources/audio* @godotengine/audio
/scene/resources/font* @godotengine/gui-nodes
/scene/resources/shader* @godotengine/shaders
/scene/resources/text_* @godotengine/gui-nodes
/scene/resources/visual_shader* @godotengine/shaders
/scene/theme/ @godotengine/gui-nodes
/scene/theme/icons/ @godotengine/gui-nodes @godotengine/usability

# Servers

/servers/ @godotengine/_systems
/servers/**/audio_* @godotengine/audio
/servers/**/camera_* @godotengine/xr
/servers/**/debugger_* @godotengine/debugger
/servers/**/display_* @godotengine/_platforms
/servers/**/navigation_* @godotengine/navigation
/servers/**/physics_* @godotengine/physics
/servers/**/rendering_* @godotengine/rendering
Expand All @@ -237,7 +230,6 @@
/servers/audio/ @godotengine/audio
/servers/camera/ @godotengine/xr
/servers/debugger/ @godotengine/debugger
/servers/display/ @godotengine/_platforms
/servers/navigation/ @godotengine/navigation
/servers/rendering/ @godotengine/rendering
/servers/text/ @godotengine/gui-nodes
Expand All @@ -253,6 +245,7 @@

# Buildsystem (After everything to catch all)

/*.* @godotengine/buildsystem
*.py @godotengine/buildsystem
SConstruct @godotengine/buildsystem
SCsub @godotengine/buildsystem
6 changes: 5 additions & 1 deletion .github/actions/godot-deps/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ inputs:
default: x64
scons-version:
description: The SCons version to use.
default: 4.8.0
default: 4.8.1

runs:
using: composite
Expand All @@ -29,3 +29,7 @@ runs:
python -c "import sys; print(sys.version)"
python -m pip install scons==${{ inputs.scons-version }}
scons --version
- name: Setup problem matchers
shell: bash
run: echo ::add-matcher::misc/utility/problem-matchers.json
4 changes: 4 additions & 0 deletions .github/workflows/android_builds.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,18 +25,21 @@ jobs:
target: editor
tests: false
sconsflags: arch=arm64 production=yes swappy=yes
cache-limit: 1

- name: Template arm32 (target=template_release, arch=arm32)
cache-name: android-template-arm32
target: template_release
tests: false
sconsflags: arch=arm32 swappy=yes
cache-limit: 1

- name: Template arm64 (target=template_release, arch=arm64)
cache-name: android-template-arm64
target: template_release
tests: false
sconsflags: arch=arm64 swappy=yes
cache-limit: 1

steps:
- name: Checkout
Expand Down Expand Up @@ -77,6 +80,7 @@ jobs:
platform: android
target: ${{ matrix.target }}
tests: ${{ matrix.tests }}
scons-cache-limit: ${{ matrix.cache-limit }}

- name: Save Godot build cache
uses: ./.github/actions/godot-cache-save
Expand Down
7 changes: 3 additions & 4 deletions .github/workflows/godot_cpp_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,9 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
with:
sparse-checkout: .github
sparse-checkout: |
.github
misc/utility/problem-matchers.json
- name: Checkout godot-cpp
uses: actions/checkout@v4
Expand All @@ -34,9 +36,6 @@ jobs:
- name: Setup Python and SCons
uses: ./.github/actions/godot-deps

- name: Setup GCC problem matcher
uses: ammaraskar/gcc-problem-matcher@master

- name: Download GDExtension interface and API dump
uses: ./.github/actions/download-artifact
with:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/ios_builds.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ jobs:
platform: ios
target: template_release
tests: false
scons-cache-limit: 1

- name: Save Godot build cache
uses: ./.github/actions/godot-cache-save
Expand Down
11 changes: 8 additions & 3 deletions .github/workflows/linux_builds.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ env:
DOTNET_NOLOGO: true
DOTNET_CLI_TELEMETRY_OPTOUT: true
TSAN_OPTIONS: suppressions=misc/error_suppressions/tsan.txt
UBSAN_OPTIONS: suppressions=misc/error_suppressions/ubsan.txt

concurrency:
group: ci-${{ github.actor }}-${{ github.head_ref || github.run_number }}-${{ github.ref }}-linux
Expand All @@ -35,6 +36,7 @@ jobs:
proj-conv: true
api-compat: true
artifact: true
cache-limit: 1

- name: Editor with doubles and GCC sanitizers (target=editor, tests=yes, dev_build=yes, scu_build=yes, precision=double, use_asan=yes, use_ubsan=yes, linker=gold)
cache-name: linux-editor-double-sanitizers
Expand All @@ -49,6 +51,7 @@ jobs:
api-dump: true
# Skip 2GiB artifact speeding up action.
artifact: false
cache-limit: 7

- name: Editor with clang sanitizers (target=editor, tests=yes, dev_build=yes, use_asan=yes, use_ubsan=yes, use_llvm=yes, linker=lld)
cache-name: linux-editor-llvm-sanitizers
Expand All @@ -61,6 +64,7 @@ jobs:
artifact: false
# Test our oldest supported SCons/Python versions on one arbitrary editor build.
legacy-scons: true
cache-limit: 7

- name: Editor with ThreadSanitizer (target=editor, tests=yes, dev_build=yes, use_tsan=yes, use_llvm=yes, linker=lld)
cache-name: linux-editor-thread-sanitizer
Expand All @@ -71,6 +75,7 @@ jobs:
build-mono: false
# Skip 2GiB artifact speeding up action.
artifact: false
cache-limit: 5

- name: Template w/ Mono (target=template_release, tests=yes)
cache-name: linux-template-mono
Expand All @@ -80,6 +85,7 @@ jobs:
build-mono: false
tests: true
artifact: true
cache-limit: 1

- name: Minimal template (target=template_release, tests=yes, everything disabled)
cache-name: linux-template-minimal
Expand All @@ -88,6 +94,7 @@ jobs:
bin: ./bin/godot.linuxbsd.template_release.x86_64
tests: true
artifact: true
cache-limit: 1

steps:
- name: Checkout
Expand Down Expand Up @@ -133,16 +140,14 @@ jobs:
python-version: 3.8
scons-version: 4.0

- name: Setup GCC problem matcher
uses: ammaraskar/gcc-problem-matcher@master

- name: Compilation
uses: ./.github/actions/godot-build
with:
sconsflags: ${{ env.SCONSFLAGS }} ${{ matrix.sconsflags }}
platform: linuxbsd
target: ${{ matrix.target }}
tests: ${{ matrix.tests }}
scons-cache-limit: ${{ matrix.cache-limit }}

- name: Save Godot build cache
uses: ./.github/actions/godot-cache-save
Expand Down
Loading

0 comments on commit 0df1f67

Please sign in to comment.