Skip to content

Commit ebab870

Browse files
authored
Merge branch 'godotengine:master' into master
2 parents cc94cd8 + 74b5be2 commit ebab870

3,660 files changed

Lines changed: 632324 additions & 347686 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.clang-format

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
1+
# If you change this file, please format all files of the codebase as part of your PR:
2+
# pre-commit run clang-format --all
3+
14
# Commented out parameters are those with the same value as base LLVM style.
25
# We can uncomment them if we want to change their value, or enforce the
3-
# chosen value in case the base style changes (last sync: Clang 17.0.6).
6+
# chosen value in case the base style changes (last sync: Clang 18.1.8).
47
BasedOnStyle: LLVM
58
AccessModifierOffset: -4
69
AlignAfterOpenBracket: DontAlign
@@ -10,39 +13,45 @@ AlignAfterOpenBracket: DontAlign
1013
# AcrossEmptyLines: false
1114
# AcrossComments: false
1215
# AlignCompound: false
16+
# AlignFunctionPointers: false
1317
# PadOperators: true
1418
# AlignConsecutiveBitFields:
1519
# Enabled: false
1620
# AcrossEmptyLines: false
1721
# AcrossComments: false
1822
# AlignCompound: false
23+
# AlignFunctionPointers: false
1924
# PadOperators: false
2025
# AlignConsecutiveDeclarations:
2126
# Enabled: false
2227
# AcrossEmptyLines: false
2328
# AcrossComments: false
2429
# AlignCompound: false
30+
# AlignFunctionPointers: false
2531
# PadOperators: false
2632
# AlignConsecutiveMacros:
2733
# Enabled: false
2834
# AcrossEmptyLines: false
2935
# AcrossComments: false
3036
# AlignCompound: false
37+
# AlignFunctionPointers: false
3138
# PadOperators: false
3239
# AlignConsecutiveShortCaseStatements:
3340
# Enabled: false
3441
# AcrossEmptyLines: false
3542
# AcrossComments: false
3643
# AlignCaseColons: false
37-
# AlignEscapedNewlines: Right
44+
AlignEscapedNewlines: DontAlign # Aligning leads to long diffs
3845
AlignOperands: DontAlign
3946
AlignTrailingComments:
4047
Kind: Never
4148
OverEmptyLines: 0
4249
# AllowAllArgumentsOnNextLine: true
4350
AllowAllParametersOfDeclarationOnNextLine: false
51+
# AllowBreakBeforeNoexceptSpecifier: Never
4452
# AllowShortBlocksOnASingleLine: Never
4553
# AllowShortCaseLabelsOnASingleLine: false
54+
# AllowShortCompoundRequirementOnASingleLine: true
4655
# AllowShortEnumsOnASingleLine: true
4756
AllowShortFunctionsOnASingleLine: Inline
4857
# AllowShortIfStatementsOnASingleLine: Never
@@ -78,7 +87,8 @@ AttributeMacros:
7887
# SplitEmptyFunction: true
7988
# SplitEmptyRecord: true
8089
# SplitEmptyNamespace: true
81-
# BreakAfterAttributes: Never
90+
# BreakAdjacentStringLiterals: true
91+
# BreakAfterAttributes: Leave
8292
# BreakAfterJavaFieldAnnotations: false
8393
# BreakArrays: true
8494
# BreakBeforeBinaryOperators: None
@@ -167,6 +177,7 @@ PackConstructorInitializers: NextLine
167177
# PenaltyBreakComment: 300
168178
# PenaltyBreakFirstLessLess: 120
169179
# PenaltyBreakOpenParenthesis: 0
180+
# PenaltyBreakScopeResolution: 500
170181
# PenaltyBreakString: 1000
171182
# PenaltyBreakTemplateDeclaration: 10
172183
# PenaltyExcessCharacter: 1000000
@@ -183,6 +194,7 @@ RemoveSemicolon: true
183194
# RequiresExpressionIndentation: OuterScope
184195
# SeparateDefinitionBlocks: Leave
185196
# ShortNamespaceLines: 1
197+
# SkipMacroDefinitionBody: false
186198
# SortIncludes: CaseSensitive
187199
# SortJavaStaticImport: Before
188200
# SortUsingDeclarations: LexicographicNumeric
@@ -204,6 +216,7 @@ RemoveSemicolon: true
204216
# AfterFunctionDefinitionName: false
205217
# AfterIfMacros: true
206218
# AfterOverloadedOperator: false
219+
# AfterPlacementOperator: true
207220
# AfterRequiresInClause: false
208221
# AfterRequiresInExpression: false
209222
# BeforeNonEmptyParentheses: false

.clang-tidy

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,25 @@
1+
# If you change this file, please format all files of the codebase as part of your PR:
2+
# pre-commit run --hook-stage manual clang-tidy --all
3+
14
Checks:
25
- -*
3-
- cppcoreguidelines-pro-type-member-init
6+
- bugprone-use-after-move
47
- modernize-deprecated-headers
58
- modernize-redundant-void-arg
69
- modernize-use-bool-literals
7-
- modernize-use-default-member-init
10+
# - modernize-use-default-member-init # TODO Re-activate
811
- modernize-use-nullptr
912
- readability-braces-around-statements
1013
- readability-redundant-member-init
14+
- readability-operators-representation
1115
HeaderFileExtensions: ["", h, hh, hpp, hxx, inc, glsl]
1216
ImplementationFileExtensions: [c, cc, cpp, cxx, m, mm, java]
1317
HeaderFilterRegex: (core|doc|drivers|editor|main|modules|platform|scene|servers|tests)/
1418
FormatStyle: file
1519
CheckOptions:
16-
cppcoreguidelines-pro-type-member-init.IgnoreArrays: true
17-
cppcoreguidelines-pro-type-member-init.UseAssignment: true
1820
modernize-deprecated-headers.CheckHeaderFile: true
1921
modernize-use-bool-literals.IgnoreMacros: false
2022
modernize-use-default-member-init.IgnoreMacros: false
2123
modernize-use-default-member-init.UseAssignment: true
24+
readability-operators-representation.BinaryOperators: "&&;&=;&;|;~;!;!=;||;|=;^;^="
25+
readability-operators-representation.OverloadedOperators: "&&;&=;&;|;~;!;!=;||;|=;^;^="

.git-blame-ignore-revs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,3 +72,18 @@ e06d83860d798b6766b23d6eae48557387a7db85
7272

7373
# Style: Replace header guards with `#pragma once`
7474
324512e11c1b7663c3cf47bec6ddbe65c6b8db2b
75+
76+
# Style: Don't right-align escaped newlines
77+
c5df0cb82bc539eff7dcfb2add99d60771fc50c5
78+
79+
# Style: Convert `*.gen.inc` to `*.gen.h`
80+
7dae5da1982f4a55ba91557814905faef9ce461b
81+
82+
# Move RenderingServer enums to a dedicated RenderingServerEnums (`RSE`) namespace
83+
f5a290ac462765afca34e64dd39f883511510147
84+
85+
# Style: Add `class_db.h` includes explicitly
86+
e380a417526c11f15a9ddb3997292409b10da2af
87+
88+
# Move DisplayServer enums and typedefs to DisplayServerEnums
89+
a447ac95ec170ee117c2eae55f1bfff0d0cf0dce

.github/CODEOWNERS

Lines changed: 72 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
# Doc
1414

1515
/doc/ @godotengine/documentation
16+
/doc/translations/ @godotengine/i18n
1617

1718
# Drivers
1819

@@ -26,6 +27,9 @@
2627
/drivers/winmidi/ @godotengine/audio
2728
/drivers/xaudio2/ @godotengine/audio
2829

30+
## Input
31+
/drivers/sdl/ @godotengine/input
32+
2933
## Rendering
3034
/drivers/d3d12/ @godotengine/rendering
3135
/drivers/dummy/ @godotengine/rendering
@@ -40,29 +44,27 @@
4044
/drivers/windows/ @godotengine/windows
4145

4246
## Misc
43-
/drivers/png/ @godotengine/import
47+
/drivers/png/ @godotengine/asset-pipeline
4448

4549
# Editor
4650

47-
/editor/ @godotengine/docks
48-
/editor/animation/ @godotengine/animation
49-
/editor/audio/ @godotengine/audio
50-
/editor/debugger/ @godotengine/debugger
51-
/editor/doc/ @godotengine/documentation
52-
/editor/docks/ @godotengine/docks
53-
/editor/gui/ @godotengine/usability @godotengine/gui-nodes
54-
/editor/icons/ @godotengine/usability
55-
/editor/import/ @godotengine/import
56-
/editor/inspector/ @godotengine/docks
57-
/editor/scene/2d/ @godotengine/2d-editor
58-
/editor/scene/2d/physics/ @godotengine/2d-editor @godotengine/physics
59-
/editor/scene/3d/ @godotengine/3d-editor
60-
/editor/scene/3d/physics/ @godotengine/3d-editor @godotengine/physics
61-
/editor/scene/gui/ @godotengine/gui-nodes
62-
/editor/script/ @godotengine/script-editor
63-
/editor/shader/ @godotengine/script-editor @godotengine/shaders
64-
/editor/themes/ @godotengine/usability @godotengine/gui-nodes
65-
/editor/translations/ @godotengine/usability
51+
/editor/ @godotengine/editor
52+
/editor/animation/ @godotengine/editor @godotengine/animation
53+
/editor/audio/ @godotengine/editor @godotengine/audio
54+
/editor/debugger/ @godotengine/editor @godotengine/debugger
55+
/editor/doc/ @godotengine/editor @godotengine/documentation
56+
/editor/gui/ @godotengine/editor @godotengine/gui-nodes
57+
/editor/icons/ @godotengine/editor
58+
/editor/import/ @godotengine/editor @godotengine/asset-pipeline
59+
/editor/scene/2d/ @godotengine/editor @godotengine/2d-nodes
60+
/editor/scene/2d/physics/ @godotengine/editor @godotengine/physics
61+
/editor/scene/3d/ @godotengine/editor @godotengine/3d-nodes
62+
/editor/scene/3d/physics/ @godotengine/editor @godotengine/physics
63+
/editor/scene/gui/ @godotengine/editor @godotengine/gui-nodes
64+
/editor/script/ @godotengine/editor @godotengine/script-editor
65+
/editor/shader/ @godotengine/editor @godotengine/script-editor @godotengine/shaders
66+
/editor/themes/ @godotengine/editor @godotengine/gui-nodes
67+
/editor/translations/ @godotengine/i18n
6668

6769
# Main
6870

@@ -78,37 +80,42 @@
7880
## Audio (+ video)
7981
/modules/interactive_music/ @godotengine/audio
8082
/modules/interactive_music/doc_classes/ @godotengine/audio @godotengine/documentation
83+
/modules/interactive_music/editor/ @godotengine/audio @godotengine/editor
8184
/modules/mp3/ @godotengine/audio
8285
/modules/mp3/doc_classes/ @godotengine/audio @godotengine/documentation
8386
/modules/ogg/ @godotengine/audio
8487
/modules/ogg/doc_classes/ @godotengine/audio @godotengine/documentation
8588
/modules/theora/ @godotengine/audio
8689
/modules/theora/doc_classes/ @godotengine/audio @godotengine/documentation
90+
/modules/theora/editor/ @godotengine/audio @godotengine/editor
8791
/modules/vorbis/ @godotengine/audio
8892
/modules/vorbis/doc_classes/ @godotengine/audio @godotengine/documentation
8993

9094
## Import
91-
/modules/astcenc/ @godotengine/import
92-
/modules/basis_universal/ @godotengine/import
93-
/modules/bcdec/ @godotengine/import
94-
/modules/betsy/ @godotengine/import
95-
/modules/bmp/ @godotengine/import
96-
/modules/cvtt/ @godotengine/import
97-
/modules/dds/ @godotengine/import
98-
/modules/etcpak/ @godotengine/import
99-
/modules/fbx/ @godotengine/import
100-
/modules/fbx/doc_classes/ @godotengine/import @godotengine/documentation
101-
/modules/gltf/ @godotengine/import
102-
/modules/gltf/doc_classes/ @godotengine/import @godotengine/documentation
103-
/modules/gltf/tests/ @godotengine/import @godotengine/tests
104-
/modules/hdr/ @godotengine/import
105-
/modules/jpg/ @godotengine/import
106-
/modules/ktx/ @godotengine/import
107-
/modules/squish/ @godotengine/import
108-
/modules/svg/ @godotengine/import
109-
/modules/tga/ @godotengine/import
110-
/modules/tinyexr/ @godotengine/import
111-
/modules/webp/ @godotengine/import
95+
/modules/astcenc/ @godotengine/asset-pipeline
96+
/modules/basis_universal/ @godotengine/asset-pipeline
97+
/modules/bcdec/ @godotengine/asset-pipeline
98+
/modules/betsy/ @godotengine/asset-pipeline
99+
/modules/bmp/ @godotengine/asset-pipeline
100+
/modules/cvtt/ @godotengine/asset-pipeline
101+
/modules/dds/ @godotengine/asset-pipeline
102+
/modules/dds/tests/ @godotengine/asset-pipeline @godotengine/tests
103+
/modules/etcpak/ @godotengine/asset-pipeline
104+
/modules/fbx/ @godotengine/asset-pipeline
105+
/modules/fbx/doc_classes/ @godotengine/asset-pipeline @godotengine/documentation
106+
/modules/fbx/editor/ @godotengine/asset-pipeline @godotengine/editor
107+
/modules/gltf/ @godotengine/asset-pipeline
108+
/modules/gltf/doc_classes/ @godotengine/asset-pipeline @godotengine/documentation
109+
/modules/gltf/editor/ @godotengine/asset-pipeline @godotengine/editor
110+
/modules/gltf/tests/ @godotengine/asset-pipeline @godotengine/tests
111+
/modules/hdr/ @godotengine/asset-pipeline
112+
/modules/jpg/ @godotengine/asset-pipeline
113+
/modules/ktx/ @godotengine/asset-pipeline
114+
/modules/squish/ @godotengine/asset-pipeline
115+
/modules/svg/ @godotengine/asset-pipeline
116+
/modules/tga/ @godotengine/asset-pipeline
117+
/modules/tinyexr/ @godotengine/asset-pipeline
118+
/modules/webp/ @godotengine/asset-pipeline
112119

113120
## Network
114121
/modules/enet/ @godotengine/network
@@ -117,18 +124,21 @@
117124
/modules/mbedtls/tests/ @godotengine/network @godotengine/tests
118125
/modules/multiplayer/ @godotengine/network
119126
/modules/multiplayer/doc_classes/ @godotengine/network @godotengine/documentation
127+
/modules/multiplayer/editor/ @godotengine/network @godotengine/editor
128+
/modules/multiplayer/icons/ @godotengine/network
120129
/modules/multiplayer/tests/ @godotengine/network @godotengine/tests
121130
/modules/upnp/ @godotengine/network
122131
/modules/upnp/doc_classes/ @godotengine/network @godotengine/documentation
123132
/modules/webrtc/ @godotengine/network
124133
/modules/webrtc/doc_classes/ @godotengine/network @godotengine/documentation
125134
/modules/websocket/ @godotengine/network
126135
/modules/websocket/doc_classes/ @godotengine/network @godotengine/documentation
136+
/modules/websocket/editor/ @godotengine/network @godotengine/editor
127137

128138
## Physics
129139
/modules/godot_physics_2d/ @godotengine/physics
130140
/modules/godot_physics_3d/ @godotengine/physics
131-
/modules/jolt_physics/ @godotengine/physics
141+
/modules/jolt_physics/ @godotengine/physics @godotengine/jolt-physics
132142

133143
## Rendering
134144
/modules/glslang/ @godotengine/rendering
@@ -141,13 +151,15 @@
141151
## Scripting
142152
/modules/gdscript/ @godotengine/gdscript
143153
/modules/gdscript/doc_classes/ @godotengine/gdscript @godotengine/documentation
144-
/modules/gdscript/icons/ @godotengine/gdscript @godotengine/usability
154+
/modules/gdscript/editor/ @godotengine/gdscript @godotengine/script-editor
155+
/modules/gdscript/icons/ @godotengine/gdscript
145156
/modules/gdscript/tests/ @godotengine/gdscript @godotengine/tests
146157
/modules/jsonrpc/ @godotengine/gdscript @godotengine/network
147158
/modules/jsonrpc/tests/ @godotengine/gdscript @godotengine/network @godotengine/tests
148159
/modules/mono/ @godotengine/dotnet
149160
/modules/mono/doc_classes/ @godotengine/dotnet @godotengine/documentation
150-
/modules/mono/icons/ @godotengine/dotnet @godotengine/usability
161+
/modules/mono/editor/ @godotengine/dotnet @godotengine/script-editor
162+
/modules/mono/icons/ @godotengine/dotnet
151163

152164
## Text
153165
/modules/freetype/ @godotengine/buildsystem
@@ -163,29 +175,38 @@
163175
/modules/mobile_vr/doc_classes/ @godotengine/xr @godotengine/documentation
164176
/modules/openxr/ @godotengine/xr
165177
/modules/openxr/doc_classes/ @godotengine/xr @godotengine/documentation
178+
/modules/openxr/editor/ @godotengine/xr @godotengine/editor
166179
/modules/webxr/ @godotengine/xr
167180
/modules/webxr/doc_classes/ @godotengine/xr @godotengine/documentation
168181

169182
## Misc
170183
/modules/csg/ @godotengine/3d-nodes
171184
/modules/csg/doc_classes/ @godotengine/3d-nodes @godotengine/documentation
172-
/modules/csg/icons/ @godotengine/3d-nodes @godotengine/usability
185+
/modules/csg/editor/ @godotengine/3d-nodes @godotengine/editor
186+
/modules/csg/icons/ @godotengine/3d-nodes
187+
/modules/csg/tests/ @godotengine/3d-nodes @godotengine/tests
173188
/modules/gridmap/ @godotengine/3d-nodes
174189
/modules/gridmap/doc_classes/ @godotengine/3d-nodes @godotengine/documentation
175-
/modules/gridmap/icons/ @godotengine/3d-nodes @godotengine/usability
190+
/modules/gridmap/editor/ @godotengine/3d-nodes @godotengine/editor
191+
/modules/gridmap/icons/ @godotengine/3d-nodes
176192
/modules/navigation_2d/ @godotengine/navigation
193+
/modules/navigation_2d/editor/ @godotengine/navigation @godotengine/editor
177194
/modules/navigation_3d/ @godotengine/navigation
195+
/modules/navigation_3d/editor/ @godotengine/navigation @godotengine/editor
178196
/modules/noise/ @godotengine/core
179197
/modules/noise/doc_classes/ @godotengine/core @godotengine/documentation
180-
/modules/noise/icons/ @godotengine/core @godotengine/usability
198+
/modules/noise/editor/ @godotengine/core @godotengine/editor
199+
/modules/noise/icons/ @godotengine/core
181200
/modules/noise/tests/ @godotengine/core @godotengine/tests
201+
/modules/objectdb_profiler/ @godotengine/debugger
202+
/modules/objectdb_profiler/editor/ @godotengine/debugger @godotengine/editor
182203
/modules/regex/ @godotengine/core
183204
/modules/regex/doc_classes/ @godotengine/core @godotengine/documentation
184-
/modules/regex/icons/ @godotengine/core @godotengine/usability
205+
/modules/regex/icons/ @godotengine/core
185206
/modules/regex/tests/ @godotengine/core @godotengine/tests
186207
/modules/zip/ @godotengine/core
187208
/modules/zip/doc_classes/ @godotengine/core @godotengine/documentation
188-
/modules/zip/tests @godotengine/core @godotengine/tests
209+
/modules/zip/tests/ @godotengine/core @godotengine/tests
189210

190211
# Platform
191212

@@ -227,7 +248,7 @@
227248
/scene/resources/text_* @godotengine/gui-nodes
228249
/scene/resources/visual_shader* @godotengine/shaders
229250
/scene/theme/ @godotengine/gui-nodes
230-
/scene/theme/icons/ @godotengine/gui-nodes @godotengine/usability
251+
/scene/theme/icons/ @godotengine/gui-nodes
231252

232253
# Servers
233254

@@ -249,6 +270,7 @@
249270
# Thirdparty
250271

251272
/thirdparty/ @godotengine/buildsystem
273+
/thirdparty/jolt_physics/ @godotengine/buildsystem @godotengine/jolt-physics
252274

253275
# Buildsystem (After everything to catch all)
254276

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@ Please target the `master` branch in priority.
44
Relevant fixes are cherry-picked for stable branches as needed by maintainers.
55
66
To speed up the contribution process and avoid CI errors, please set up pre-commit hooks locally:
7-
https://contributing.godotengine.org/en/latest/engine/guidelines/code_style.html
7+
https://contributing.godotengine.org/en/latest/engine/introduction.html#setting-up-a-dev-environment
88
-->

0 commit comments

Comments
 (0)