summaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
Diffstat (limited to 'misc')
-rw-r--r--misc/dist/html/editor.html39
-rw-r--r--misc/dist/html/full-size.html6
-rw-r--r--misc/dist/html/manifest.json2
-rw-r--r--misc/dist/ios_xcode/godot_ios.xcodeproj/project.pbxproj8
-rw-r--r--misc/dist/ios_xcode/godot_ios/dummy.h31
-rw-r--r--misc/dist/ios_xcode/godot_ios/dummy.swift31
-rw-r--r--misc/dist/ios_xcode/libgodot.ios.debug.xcframework/Info.plist (renamed from misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/Info.plist)0
-rw-r--r--misc/dist/ios_xcode/libgodot.ios.debug.xcframework/ios-arm64/empty (renamed from misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/ios-arm64/empty)0
-rw-r--r--misc/dist/ios_xcode/libgodot.ios.debug.xcframework/ios-arm64_x86_64-simulator/empty (renamed from misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/ios-arm64_x86_64-simulator/empty)0
-rw-r--r--misc/dist/ios_xcode/libgodot.ios.release.xcframework/Info.plist (renamed from misc/dist/ios_xcode/libgodot.iphone.release.xcframework/Info.plist)0
-rw-r--r--misc/dist/ios_xcode/libgodot.ios.release.xcframework/ios-arm64/empty (renamed from misc/dist/ios_xcode/libgodot.iphone.release.xcframework/ios-arm64/empty)0
-rw-r--r--misc/dist/ios_xcode/libgodot.ios.release.xcframework/ios-arm64_x86_64-simulator/empty (renamed from misc/dist/ios_xcode/libgodot.iphone.release.xcframework/ios-arm64_x86_64-simulator/empty)0
-rw-r--r--misc/dist/macos/editor.entitlements (renamed from misc/dist/osx/editor.entitlements)0
-rw-r--r--misc/dist/macos_template.app/Contents/Info.plist (renamed from misc/dist/osx_template.app/Contents/Info.plist)0
-rw-r--r--misc/dist/macos_template.app/Contents/PkgInfo (renamed from misc/dist/osx_template.app/Contents/PkgInfo)0
-rw-r--r--misc/dist/macos_template.app/Contents/Resources/icon.icns (renamed from misc/dist/osx_template.app/Contents/Resources/icon.icns)bin67500 -> 67500 bytes
-rw-r--r--misc/dist/macos_tools.app/Contents/Info.plist (renamed from misc/dist/osx_tools.app/Contents/Info.plist)0
-rw-r--r--misc/dist/macos_tools.app/Contents/PkgInfo (renamed from misc/dist/osx_tools.app/Contents/PkgInfo)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/GDScript.icns (renamed from misc/dist/osx_tools.app/Contents/Resources/GDScript.icns)bin185973 -> 185973 bytes
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/Godot.icns (renamed from misc/dist/osx_tools.app/Contents/Resources/Godot.icns)bin271163 -> 271163 bytes
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/Project.icns (renamed from misc/dist/osx_tools.app/Contents/Resources/Project.icns)bin208221 -> 208221 bytes
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/Resource.icns (renamed from misc/dist/osx_tools.app/Contents/Resources/Resource.icns)bin176973 -> 176973 bytes
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/Scene.icns (renamed from misc/dist/osx_tools.app/Contents/Resources/Scene.icns)bin150612 -> 150612 bytes
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/Shader.icns (renamed from misc/dist/osx_tools.app/Contents/Resources/Shader.icns)bin162062 -> 162062 bytes
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/af.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/af.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ar.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ar.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/az.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/az.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/bg.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/bg.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/bn.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/bn.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/br.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/br.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ca.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ca.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/cs.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/cs.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/da.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/da.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/de.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/de.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/el.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/el.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/en.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/en.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/eo.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/eo.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/es.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/es.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/es_AR.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/es_AR.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/et.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/et.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/eu.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/eu.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/fa.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/fa.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/fi.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/fi.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/fil.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/fil.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/fr.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/fr.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ga.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ga.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/gl.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/gl.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/he.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/he.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/hi.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/hi.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/hr.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/hr.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/hu.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/hu.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/id.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/id.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/is.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/is.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/it.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/it.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ja.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ja.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ka.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ka.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/km.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/km.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ko.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ko.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/lt.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/lt.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/lv.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/lv.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/mi.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/mi.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/mk.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/mk.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ml.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ml.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/mr.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/mr.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ms.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ms.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/nb.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/nb.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/nl.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/nl.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/or.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/or.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/pl.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/pl.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/pt.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/pt.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/pt_BR.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/pt_BR.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ro.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ro.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ru.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ru.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/si.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/si.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/sk.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/sk.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/sl.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/sl.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/sq.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/sq.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/sr-Cyrl.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/sr-Cyrl.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/sr-Latn.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/sr-Latn.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/sv.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/sv.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ta.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ta.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/te.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/te.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/th.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/th.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/tr.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/tr.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/tt.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/tt.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/tzm.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/tzm.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/uk.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/uk.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/ur_PK.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/ur_PK.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/vi.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/vi.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/zh_CN.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/zh_CN.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/zh_HK.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/zh_HK.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/macos_tools.app/Contents/Resources/zh_TW.lproj/InfoPlist.strings (renamed from misc/dist/osx_tools.app/Contents/Resources/zh_TW.lproj/InfoPlist.strings)0
-rw-r--r--misc/dist/osx_template.app/Contents/Resources/vulkan/icd.d/MoltenVK_icd.json7
-rw-r--r--misc/dist/osx_tools.app/Contents/Resources/vulkan/icd.d/MoltenVK_icd.json7
-rw-r--r--misc/dist/shell/_godot.zsh-completion1
-rw-r--r--misc/dist/shell/godot.bash-completion6
-rw-r--r--misc/dist/shell/godot.fish8
-rw-r--r--misc/hooks/README.md5
-rwxr-xr-xmisc/hooks/pre-commit2
-rwxr-xr-xmisc/hooks/pre-commit-black4
-rwxr-xr-xmisc/hooks/pre-commit-clang-format8
-rwxr-xr-xmisc/scripts/clang_format.sh3
-rwxr-xr-xmisc/scripts/codespell.sh2
-rwxr-xr-xmisc/scripts/dotnet_format.sh28
-rwxr-xr-xmisc/scripts/file_format.sh29
-rwxr-xr-xmisc/scripts/header_guards.sh78
-rwxr-xr-xmisc/scripts/install_vulkan_sdk_macos.sh2
-rw-r--r--misc/scripts/mypy.ini11
-rwxr-xr-xmisc/scripts/mypy_check.sh6
-rwxr-xr-xmisc/scripts/pytest_builders.sh5
110 files changed, 271 insertions, 58 deletions
diff --git a/misc/dist/html/editor.html b/misc/dist/html/editor.html
index 7c44dd45a1..c9f3c2cc0d 100644
--- a/misc/dist/html/editor.html
+++ b/misc/dist/html/editor.html
@@ -259,31 +259,20 @@
>Web editor documentation</a> for usage instructions and limitations.
</p>
</div>
- <div id="welcome-modal-description-no-cross-origin-isolation" style="display: none">
+ <div id="welcome-modal-missing-description" style="display: none">
<p>
- The web server does not support cross-origin isolation,
- which is required for the Godot Web Editor to function.
- </p>
- <p>
- <strong>Reasons for cross-origin isolation being disabled:</strong>
- <ul>
- <li id="welcome-modal-reason-not-secure">
- This page is not served from a secure context (HTTPS <i>or</i> localhost).
- </li>
- <li>
- This page may not be served with cross-origin isolation headers
- (check with the developer tools' Network tab).
- </li>
+ <strong>The following features required by the Godot Web Editor are missing:</strong>
+ <ul id="welcome-modal-missing-list">
</ul>
</p>
<p>
If you are self-hosting the web editor,
refer to
<a
- href="https://docs.godotengine.org/en/latest/tutorials/export/exporting_for_web.html#threads"
+ href="https://docs.godotengine.org/en/latest/tutorials/export/exporting_for_web.html"
target="_blank"
rel="noopener"
- >Exporting for the Web - Threads</a> for more information.
+ >Exporting for the Web</a> for more information.
</p>
</div>
<div style="text-align: center">
@@ -394,16 +383,22 @@
});
}
- if (!crossOriginIsolated) {
+ const missing = Engine.getMissingFeatures();
+ if (missing.length) {
// Display error dialog as threading support is required for the editor.
setButtonEnabled('startButton', false);
document.getElementById("welcome-modal-description").style.display = "none";
- document.getElementById("welcome-modal-description-no-cross-origin-isolation").style.display = "block";
+ document.getElementById("welcome-modal-missing-description").style.display = "block";
document.getElementById("welcome-modal-dismiss").style.display = "none";
- document.getElementById("welcome-modal-reason-not-secure").style.display = window.isSecureContext ? "none" : "list-item";
+ const list = document.getElementById("welcome-modal-missing-list");
+ for (let i = 0; i < missing.length; i++) {
+ const node = document.createElement("li");
+ node.innerText = missing[i];
+ list.appendChild(node);
+ }
}
- if (!crossOriginIsolated || localStorage.getItem("welcomeModalDismissed") !== 'true') {
+ if (missing.length || localStorage.getItem("welcomeModalDismissed") !== 'true') {
document.getElementById("welcome-modal").style.display = "block";
document.getElementById("welcome-modal-dismiss").focus();
}
@@ -416,7 +411,7 @@
}
}
//]]></script>
- <script src="godot.tools.js"></script>
+ <script src="godot.editor.js"></script>
<script>//<![CDATA[
var editor = null;
@@ -711,7 +706,7 @@
displayFailureNotice('WebGL not available');
} else {
setStatusMode('indeterminate');
- editor.init('godot.tools').then(function() {
+ editor.init('godot.editor').then(function() {
if (zip) {
editor.copyToFS("/tmp/preload.zip", zip);
}
diff --git a/misc/dist/html/full-size.html b/misc/dist/html/full-size.html
index f385b82f1d..d5b0050cfd 100644
--- a/misc/dist/html/full-size.html
+++ b/misc/dist/html/full-size.html
@@ -215,8 +215,10 @@ $GODOT_HEAD_INCLUDE
initializing = false;
};
- if (!Engine.isWebGLAvailable()) {
- displayFailureNotice('WebGL not available');
+ const missing = Engine.getMissingFeatures();
+ if (missing.length !== 0) {
+ const missingMsg = 'Warning!\nThe following features required to run Godot projects on the Web are missing:\n';
+ displayFailureNotice(missingMsg + missing.join("\n"));
} else {
setStatusMode('indeterminate');
engine.startGame({
diff --git a/misc/dist/html/manifest.json b/misc/dist/html/manifest.json
index ccfb793b20..75af81cda1 100644
--- a/misc/dist/html/manifest.json
+++ b/misc/dist/html/manifest.json
@@ -3,7 +3,7 @@
"short_name": "Godot",
"description": "Multi-platform 2D and 3D game engine with a feature-rich editor (Web edition)",
"lang": "en",
- "start_url": "./godot.tools.html",
+ "start_url": "./godot.editor.html",
"display": "standalone",
"theme_color": "#202531",
"icons": [
diff --git a/misc/dist/ios_xcode/godot_ios.xcodeproj/project.pbxproj b/misc/dist/ios_xcode/godot_ios.xcodeproj/project.pbxproj
index 69899cbe8d..b58f002f3c 100644
--- a/misc/dist/ios_xcode/godot_ios.xcodeproj/project.pbxproj
+++ b/misc/dist/ios_xcode/godot_ios.xcodeproj/project.pbxproj
@@ -10,6 +10,7 @@
1F1575721F582BE20003B888 /* dylibs in Resources */ = {isa = PBXBuildFile; fileRef = 1F1575711F582BE20003B888 /* dylibs */; };
DEADBEEF2F582BE20003B888 /* $binary.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = DEADBEEF1F582BE20003B888 /* $binary.xcframework */; };
$modules_buildfile
+ $swift_runtime_buildfile
1FF8DBB11FBA9DE1009DE660 /* dummy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FF8DBB01FBA9DE1009DE660 /* dummy.cpp */; };
D07CD44E1C5D589C00B7FB28 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D07CD44D1C5D589C00B7FB28 /* Images.xcassets */; };
9039D3BE24C093AC0020482C /* MoltenVK.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9039D3BD24C093AC0020482C /* MoltenVK.xcframework */; };
@@ -37,6 +38,7 @@
1F1575711F582BE20003B888 /* dylibs */ = {isa = PBXFileReference; lastKnownFileType = folder; name = dylibs; path = "$binary/dylibs"; sourceTree = "<group>"; };
DEADBEEF1F582BE20003B888 /* $binary.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = godot; path = "$binary.xcframework"; sourceTree = "<group>"; };
$modules_fileref
+ $swift_runtime_fileref
1FF4C1881F584E6300A41E41 /* $binary.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "$binary.entitlements"; sourceTree = "<group>"; };
1FF8DBB01FBA9DE1009DE660 /* dummy.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = dummy.cpp; sourceTree = "<group>"; };
9039D3BD24C093AC0020482C /* MoltenVK.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MoltenVK; path = MoltenVK.xcframework; sourceTree = "<group>"; };
@@ -107,6 +109,7 @@
D07CD44D1C5D589C00B7FB28 /* Images.xcassets */,
D0BCFE4218AEBDA2004A7AAE /* Supporting Files */,
1FF8DBB01FBA9DE1009DE660 /* dummy.cpp */,
+ $swift_runtime_binary_files
);
path = "$binary";
sourceTree = "<group>";
@@ -152,6 +155,7 @@
TargetAttributes = {
D0BCFE3318AEBDA2004A7AAE = {
DevelopmentTeam = $team_id;
+ $swift_runtime_migration
ProvisioningStyle = Automatic;
SystemCapabilities = {
};
@@ -198,6 +202,7 @@
buildActionMask = 2147483647;
files = (
1FF8DBB11FBA9DE1009DE660 /* dummy.cpp in Sources */,
+ $swift_runtime_build_phase
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -244,7 +249,6 @@
GCC_DYNAMIC_NO_PIC = NO;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
- "DEBUG=1",
"$(inherited)",
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
@@ -329,6 +333,7 @@
TARGETED_DEVICE_FAMILY = "$targeted_device_family";
VALID_ARCHS = "arm64 x86_64";
WRAPPER_EXTENSION = app;
+ $swift_runtime_build_settings
};
name = Debug;
};
@@ -360,6 +365,7 @@
TARGETED_DEVICE_FAMILY = "$targeted_device_family";
VALID_ARCHS = "arm64 x86_64";
WRAPPER_EXTENSION = app;
+ $swift_runtime_build_settings
};
name = Release;
};
diff --git a/misc/dist/ios_xcode/godot_ios/dummy.h b/misc/dist/ios_xcode/godot_ios/dummy.h
new file mode 100644
index 0000000000..ea6c0f78e4
--- /dev/null
+++ b/misc/dist/ios_xcode/godot_ios/dummy.h
@@ -0,0 +1,31 @@
+/*************************************************************************/
+/* dummy.h */
+/*************************************************************************/
+/* This file is part of: */
+/* GODOT ENGINE */
+/* https://godotengine.org */
+/*************************************************************************/
+/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */
+/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */
+/* */
+/* Permission is hereby granted, free of charge, to any person obtaining */
+/* a copy of this software and associated documentation files (the */
+/* "Software"), to deal in the Software without restriction, including */
+/* without limitation the rights to use, copy, modify, merge, publish, */
+/* distribute, sublicense, and/or sell copies of the Software, and to */
+/* permit persons to whom the Software is furnished to do so, subject to */
+/* the following conditions: */
+/* */
+/* The above copyright notice and this permission notice shall be */
+/* included in all copies or substantial portions of the Software. */
+/* */
+/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
+/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
+/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
+/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
+/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
+/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
+/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
+/*************************************************************************/
+
+// #import <Foundation/Foundation.h>
diff --git a/misc/dist/ios_xcode/godot_ios/dummy.swift b/misc/dist/ios_xcode/godot_ios/dummy.swift
new file mode 100644
index 0000000000..86c76b64d3
--- /dev/null
+++ b/misc/dist/ios_xcode/godot_ios/dummy.swift
@@ -0,0 +1,31 @@
+/*************************************************************************/
+/* dummy.swift */
+/*************************************************************************/
+/* This file is part of: */
+/* GODOT ENGINE */
+/* https://godotengine.org */
+/*************************************************************************/
+/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */
+/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */
+/* */
+/* Permission is hereby granted, free of charge, to any person obtaining */
+/* a copy of this software and associated documentation files (the */
+/* "Software"), to deal in the Software without restriction, including */
+/* without limitation the rights to use, copy, modify, merge, publish, */
+/* distribute, sublicense, and/or sell copies of the Software, and to */
+/* permit persons to whom the Software is furnished to do so, subject to */
+/* the following conditions: */
+/* */
+/* The above copyright notice and this permission notice shall be */
+/* included in all copies or substantial portions of the Software. */
+/* */
+/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
+/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
+/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
+/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
+/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
+/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
+/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
+/*************************************************************************/
+
+import Foundation
diff --git a/misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/Info.plist b/misc/dist/ios_xcode/libgodot.ios.debug.xcframework/Info.plist
index 846533594f..846533594f 100644
--- a/misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/Info.plist
+++ b/misc/dist/ios_xcode/libgodot.ios.debug.xcframework/Info.plist
diff --git a/misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/ios-arm64/empty b/misc/dist/ios_xcode/libgodot.ios.debug.xcframework/ios-arm64/empty
index bd3e894333..bd3e894333 100644
--- a/misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/ios-arm64/empty
+++ b/misc/dist/ios_xcode/libgodot.ios.debug.xcframework/ios-arm64/empty
diff --git a/misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/ios-arm64_x86_64-simulator/empty b/misc/dist/ios_xcode/libgodot.ios.debug.xcframework/ios-arm64_x86_64-simulator/empty
index bd3e894333..bd3e894333 100644
--- a/misc/dist/ios_xcode/libgodot.iphone.debug.xcframework/ios-arm64_x86_64-simulator/empty
+++ b/misc/dist/ios_xcode/libgodot.ios.debug.xcframework/ios-arm64_x86_64-simulator/empty
diff --git a/misc/dist/ios_xcode/libgodot.iphone.release.xcframework/Info.plist b/misc/dist/ios_xcode/libgodot.ios.release.xcframework/Info.plist
index 846533594f..846533594f 100644
--- a/misc/dist/ios_xcode/libgodot.iphone.release.xcframework/Info.plist
+++ b/misc/dist/ios_xcode/libgodot.ios.release.xcframework/Info.plist
diff --git a/misc/dist/ios_xcode/libgodot.iphone.release.xcframework/ios-arm64/empty b/misc/dist/ios_xcode/libgodot.ios.release.xcframework/ios-arm64/empty
index bd3e894333..bd3e894333 100644
--- a/misc/dist/ios_xcode/libgodot.iphone.release.xcframework/ios-arm64/empty
+++ b/misc/dist/ios_xcode/libgodot.ios.release.xcframework/ios-arm64/empty
diff --git a/misc/dist/ios_xcode/libgodot.iphone.release.xcframework/ios-arm64_x86_64-simulator/empty b/misc/dist/ios_xcode/libgodot.ios.release.xcframework/ios-arm64_x86_64-simulator/empty
index bd3e894333..bd3e894333 100644
--- a/misc/dist/ios_xcode/libgodot.iphone.release.xcframework/ios-arm64_x86_64-simulator/empty
+++ b/misc/dist/ios_xcode/libgodot.ios.release.xcframework/ios-arm64_x86_64-simulator/empty
diff --git a/misc/dist/osx/editor.entitlements b/misc/dist/macos/editor.entitlements
index d0137910a3..d0137910a3 100644
--- a/misc/dist/osx/editor.entitlements
+++ b/misc/dist/macos/editor.entitlements
diff --git a/misc/dist/osx_template.app/Contents/Info.plist b/misc/dist/macos_template.app/Contents/Info.plist
index 542146cdb8..542146cdb8 100644
--- a/misc/dist/osx_template.app/Contents/Info.plist
+++ b/misc/dist/macos_template.app/Contents/Info.plist
diff --git a/misc/dist/osx_template.app/Contents/PkgInfo b/misc/dist/macos_template.app/Contents/PkgInfo
index 6f749b0f37..6f749b0f37 100644
--- a/misc/dist/osx_template.app/Contents/PkgInfo
+++ b/misc/dist/macos_template.app/Contents/PkgInfo
diff --git a/misc/dist/osx_template.app/Contents/Resources/icon.icns b/misc/dist/macos_template.app/Contents/Resources/icon.icns
index be9254630c..be9254630c 100644
--- a/misc/dist/osx_template.app/Contents/Resources/icon.icns
+++ b/misc/dist/macos_template.app/Contents/Resources/icon.icns
Binary files differ
diff --git a/misc/dist/osx_tools.app/Contents/Info.plist b/misc/dist/macos_tools.app/Contents/Info.plist
index 886df87cc6..886df87cc6 100644
--- a/misc/dist/osx_tools.app/Contents/Info.plist
+++ b/misc/dist/macos_tools.app/Contents/Info.plist
diff --git a/misc/dist/osx_tools.app/Contents/PkgInfo b/misc/dist/macos_tools.app/Contents/PkgInfo
index 6f749b0f37..6f749b0f37 100644
--- a/misc/dist/osx_tools.app/Contents/PkgInfo
+++ b/misc/dist/macos_tools.app/Contents/PkgInfo
diff --git a/misc/dist/osx_tools.app/Contents/Resources/GDScript.icns b/misc/dist/macos_tools.app/Contents/Resources/GDScript.icns
index b08e8df339..b08e8df339 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/GDScript.icns
+++ b/misc/dist/macos_tools.app/Contents/Resources/GDScript.icns
Binary files differ
diff --git a/misc/dist/osx_tools.app/Contents/Resources/Godot.icns b/misc/dist/macos_tools.app/Contents/Resources/Godot.icns
index 61697976c6..61697976c6 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/Godot.icns
+++ b/misc/dist/macos_tools.app/Contents/Resources/Godot.icns
Binary files differ
diff --git a/misc/dist/osx_tools.app/Contents/Resources/Project.icns b/misc/dist/macos_tools.app/Contents/Resources/Project.icns
index 10e31528e4..10e31528e4 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/Project.icns
+++ b/misc/dist/macos_tools.app/Contents/Resources/Project.icns
Binary files differ
diff --git a/misc/dist/osx_tools.app/Contents/Resources/Resource.icns b/misc/dist/macos_tools.app/Contents/Resources/Resource.icns
index 9648cb616e..9648cb616e 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/Resource.icns
+++ b/misc/dist/macos_tools.app/Contents/Resources/Resource.icns
Binary files differ
diff --git a/misc/dist/osx_tools.app/Contents/Resources/Scene.icns b/misc/dist/macos_tools.app/Contents/Resources/Scene.icns
index c8c3dee07e..c8c3dee07e 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/Scene.icns
+++ b/misc/dist/macos_tools.app/Contents/Resources/Scene.icns
Binary files differ
diff --git a/misc/dist/osx_tools.app/Contents/Resources/Shader.icns b/misc/dist/macos_tools.app/Contents/Resources/Shader.icns
index a76e648a1a..a76e648a1a 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/Shader.icns
+++ b/misc/dist/macos_tools.app/Contents/Resources/Shader.icns
Binary files differ
diff --git a/misc/dist/osx_tools.app/Contents/Resources/af.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/af.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/af.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/af.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ar.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ar.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ar.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ar.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/az.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/az.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/az.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/az.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/bg.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/bg.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/bg.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/bg.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/bn.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/bn.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/bn.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/bn.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/br.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/br.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/br.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/br.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ca.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ca.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ca.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ca.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/cs.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/cs.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/cs.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/cs.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/da.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/da.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/da.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/da.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/de.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/de.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/de.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/de.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/el.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/el.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/el.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/el.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/en.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/en.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/en.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/en.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/eo.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/eo.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/eo.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/eo.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/es.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/es.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/es.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/es.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/es_AR.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/es_AR.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/es_AR.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/es_AR.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/et.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/et.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/et.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/et.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/eu.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/eu.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/eu.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/eu.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/fa.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/fa.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/fa.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/fa.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/fi.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/fi.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/fi.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/fi.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/fil.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/fil.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/fil.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/fil.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/fr.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/fr.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/fr.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/fr.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ga.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ga.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ga.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ga.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/gl.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/gl.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/gl.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/gl.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/he.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/he.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/he.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/he.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/hi.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/hi.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/hi.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/hi.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/hr.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/hr.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/hr.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/hr.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/hu.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/hu.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/hu.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/hu.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/id.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/id.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/id.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/id.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/is.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/is.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/is.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/is.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/it.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/it.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/it.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/it.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ja.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ja.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ja.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ja.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ka.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ka.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ka.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ka.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/km.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/km.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/km.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/km.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ko.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ko.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ko.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ko.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/lt.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/lt.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/lt.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/lt.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/lv.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/lv.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/lv.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/lv.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/mi.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/mi.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/mi.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/mi.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/mk.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/mk.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/mk.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/mk.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ml.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ml.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ml.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ml.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/mr.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/mr.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/mr.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/mr.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ms.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ms.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ms.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ms.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/nb.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/nb.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/nb.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/nb.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/nl.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/nl.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/nl.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/nl.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/or.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/or.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/or.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/or.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/pl.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/pl.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/pl.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/pl.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/pt.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/pt.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/pt.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/pt.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/pt_BR.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/pt_BR.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/pt_BR.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/pt_BR.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ro.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ro.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ro.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ro.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ru.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ru.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ru.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ru.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/si.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/si.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/si.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/si.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/sk.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/sk.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/sk.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/sk.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/sl.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/sl.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/sl.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/sl.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/sq.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/sq.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/sq.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/sq.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/sr-Cyrl.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/sr-Cyrl.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/sr-Cyrl.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/sr-Cyrl.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/sr-Latn.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/sr-Latn.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/sr-Latn.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/sr-Latn.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/sv.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/sv.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/sv.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/sv.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ta.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ta.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ta.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ta.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/te.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/te.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/te.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/te.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/th.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/th.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/th.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/th.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/tr.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/tr.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/tr.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/tr.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/tt.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/tt.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/tt.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/tt.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/tzm.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/tzm.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/tzm.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/tzm.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/uk.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/uk.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/uk.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/uk.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/ur_PK.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/ur_PK.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/ur_PK.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/ur_PK.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/vi.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/vi.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/vi.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/vi.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/zh_CN.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/zh_CN.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/zh_CN.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/zh_CN.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/zh_HK.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/zh_HK.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/zh_HK.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/zh_HK.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_tools.app/Contents/Resources/zh_TW.lproj/InfoPlist.strings b/misc/dist/macos_tools.app/Contents/Resources/zh_TW.lproj/InfoPlist.strings
index e69de29bb2..e69de29bb2 100644
--- a/misc/dist/osx_tools.app/Contents/Resources/zh_TW.lproj/InfoPlist.strings
+++ b/misc/dist/macos_tools.app/Contents/Resources/zh_TW.lproj/InfoPlist.strings
diff --git a/misc/dist/osx_template.app/Contents/Resources/vulkan/icd.d/MoltenVK_icd.json b/misc/dist/osx_template.app/Contents/Resources/vulkan/icd.d/MoltenVK_icd.json
deleted file mode 100644
index c4f8f71d0e..0000000000
--- a/misc/dist/osx_template.app/Contents/Resources/vulkan/icd.d/MoltenVK_icd.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "file_format_version" : "1.0.0",
- "ICD": {
- "library_path": "../../../Frameworks/libMoltenVK.dylib",
- "api_version" : "1.1.0"
- }
-}
diff --git a/misc/dist/osx_tools.app/Contents/Resources/vulkan/icd.d/MoltenVK_icd.json b/misc/dist/osx_tools.app/Contents/Resources/vulkan/icd.d/MoltenVK_icd.json
deleted file mode 100644
index c4f8f71d0e..0000000000
--- a/misc/dist/osx_tools.app/Contents/Resources/vulkan/icd.d/MoltenVK_icd.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "file_format_version" : "1.0.0",
- "ICD": {
- "library_path": "../../../Frameworks/libMoltenVK.dylib",
- "api_version" : "1.1.0"
- }
-}
diff --git a/misc/dist/shell/_godot.zsh-completion b/misc/dist/shell/_godot.zsh-completion
index b17bb6e66b..2bc6fe9317 100644
--- a/misc/dist/shell/_godot.zsh-completion
+++ b/misc/dist/shell/_godot.zsh-completion
@@ -44,6 +44,7 @@ _arguments \
'--remote-fs-password[password for remote filesystem]:remote filesystem password' \
'--audio-driver[set the audio driver]:audio driver name' \
'--display-driver[set the display driver]:display driver name' \
+ "--rendering-method[set the renderer]:renderer name:((forward_plus\:'Desktop renderer' mobile\:'Desktop and mobile renderer' gl_compatibility\:'Desktop, mobile and web renderer'))" \
"--rendering-driver[set the rendering driver]:rendering driver name:((vulkan\:'Vulkan renderer' opengl3\:'OpenGL ES 3.0 renderer' dummy\:'Dummy renderer'))" \
"--gpu-index[use a specific GPU (run with --verbose to get available device list)]:device index" \
'--text-driver[set the text driver]:text driver name' \
diff --git a/misc/dist/shell/godot.bash-completion b/misc/dist/shell/godot.bash-completion
index 1ab687e1fc..bc5fa600f5 100644
--- a/misc/dist/shell/godot.bash-completion
+++ b/misc/dist/shell/godot.bash-completion
@@ -47,6 +47,7 @@ _complete_godot_options() {
--remote-fs-password
--audio-driver
--display-driver
+--rendering-method
--rendering-driver
--gpu-index
--text-driver
@@ -58,7 +59,6 @@ _complete_godot_options() {
--always-on-top
--resolution
--position
---headless
--single-window
--debug
--breakpoints
@@ -112,6 +112,10 @@ _complete_godot_bash() {
local IFS=$' \n\t'
# shellcheck disable=SC2207
COMPREPLY=($(compgen -W "unsafe safe separate" -- "$cur"))
+ elif [[ $prev == "--rendering-method" ]]; then
+ local IFS=$' \n\t'
+ # shellcheck disable=SC2207
+ COMPREPLY=($(compgen -W "forward_plus mobile gl_compatibility" -- "$cur"))
elif [[ $prev == "--rendering-driver" ]]; then
local IFS=$' \n\t'
# shellcheck disable=SC2207
diff --git a/misc/dist/shell/godot.fish b/misc/dist/shell/godot.fish
index d58066c135..9ac692eace 100644
--- a/misc/dist/shell/godot.fish
+++ b/misc/dist/shell/godot.fish
@@ -23,6 +23,13 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
+function godot_rendering_method_args
+ # Use a function instead of a fixed string to customize the argument descriptions.
+ echo -e "forward_plus\tHigh-end desktop renderer"
+ echo -e "mobile\tHigh-end mobile/desktop renderer"
+ echo -e "gl_compatibility\tLow-end desktop, mobile and web renderer"
+end
+
function godot_rendering_driver_args
# Use a function instead of a fixed string to customize the argument descriptions.
echo -e "vulkan\tVulkan renderer"
@@ -53,6 +60,7 @@ complete -c godot -l remote-fs -d "Use a remote filesystem (<host/IP>[:<port>] a
complete -c godot -l remote-fs-password -d "Password for remote filesystem" -x
complete -c godot -l audio-driver -d "Set the audio driver" -x
complete -c godot -l display-driver -d "Set the display driver" -x
+complete -c godot -l rendering-method -d "Set the renderer" -x -a "(godot_rendering_method_args)"
complete -c godot -l rendering-driver -d "Set the rendering driver" -x -a "(godot_rendering_driver_args)"
complete -c godot -l gpu-index -d "Use a specific GPU (run with --verbose to get available device list)" -x
complete -c godot -l text-driver -d "Set the text driver" -x
diff --git a/misc/hooks/README.md b/misc/hooks/README.md
index 8732237244..ea94b3f5f3 100644
--- a/misc/hooks/README.md
+++ b/misc/hooks/README.md
@@ -35,3 +35,8 @@ so they should work out of the box on Linux/macOS.
##### black
- Python installation: make sure Python is added to the `PATH`
- Install `black` - in any console: `pip3 install black`
+
+## Custom hooks
+
+The pre-commit hook will run any other script in `.git/hooks` whose filename
+matches `pre-commit-custom-*`, after the Godot ones.
diff --git a/misc/hooks/pre-commit b/misc/hooks/pre-commit
index ab0fc8176f..6359161260 100755
--- a/misc/hooks/pre-commit
+++ b/misc/hooks/pre-commit
@@ -13,8 +13,8 @@
# pre-commit hooks to be executed. They should be in the same .git/hooks/ folder
# as this script. Hooks should return 0 if successful and nonzero to cancel the
# commit. They are executed in the order in which they are listed.
-#HOOKS="pre-commit-compile pre-commit-uncrustify"
HOOKS="pre-commit-clang-format pre-commit-black pre-commit-make-rst"
+HOOKS="$HOOKS $(find $(dirname -- "$0") -type f -name 'pre-commit-custom-*' -exec basename {} \;)"
###########################################################
# There should be no need to change anything below this line.
diff --git a/misc/hooks/pre-commit-black b/misc/hooks/pre-commit-black
index fd93bfe73c..b7335685ae 100755
--- a/misc/hooks/pre-commit-black
+++ b/misc/hooks/pre-commit-black
@@ -70,7 +70,7 @@ if [ ! -x "$BLACK" ] ; then
$XMSG -center -title "Error" "Error: black executable not found."
exit 1
elif [ \( \( "$OSTYPE" = "msys" \) -o \( "$OSTYPE" = "win32" \) \) -a \( -x "$PWSH" \) ]; then
- winmessage="$(canonicalize_filename "./.git/hooks/winmessage.ps1")"
+ winmessage="$(canonicalize_filename "$(dirname -- "$0")/winmessage.ps1")"
$PWSH -noprofile -executionpolicy bypass -file "$winmessage" -center -title "Error" --text "Error: black executable not found."
exit 1
fi
@@ -160,7 +160,7 @@ while true; do
yn="N"
fi
elif [ \( \( "$OSTYPE" = "msys" \) -o \( "$OSTYPE" = "win32" \) \) -a \( -x "$PWSH" \) ]; then
- winmessage="$(canonicalize_filename "./.git/hooks/winmessage.ps1")"
+ winmessage="$(canonicalize_filename "$(dirname -- "$0")/winmessage.ps1")"
$PWSH -noprofile -executionpolicy bypass -file "$winmessage" -file "$patch" -buttons "Apply":100,"Apply and stage":200,"Do not apply":0 -center -default "Do not apply" -geometry 800x600 -title "Do you want to apply that patch?"
choice=$?
if [ "$choice" = "100" ] ; then
diff --git a/misc/hooks/pre-commit-clang-format b/misc/hooks/pre-commit-clang-format
index e8e62e6470..9570d5120b 100755
--- a/misc/hooks/pre-commit-clang-format
+++ b/misc/hooks/pre-commit-clang-format
@@ -76,8 +76,8 @@ fi
# To get consistent formatting, we recommend contributors to use the same
# clang-format version as CI.
-RECOMMENDED_CLANG_FORMAT_MAJOR_MIN="12"
-RECOMMENDED_CLANG_FORMAT_MAJOR_MAX="14"
+RECOMMENDED_CLANG_FORMAT_MAJOR_MIN="13"
+RECOMMENDED_CLANG_FORMAT_MAJOR_MAX="15"
if [ ! -x "$CLANG_FORMAT" ] ; then
message="Error: clang-format executable not found. Please install clang-format $RECOMMENDED_CLANG_FORMAT_MAJOR_MAX."
@@ -90,7 +90,7 @@ if [ ! -x "$CLANG_FORMAT" ] ; then
$XMSG -center -title "Error" "$message"
exit 1
elif [ \( \( "$OSTYPE" = "msys" \) -o \( "$OSTYPE" = "win32" \) \) -a \( -x "$PWSH" \) ]; then
- winmessage="$(canonicalize_filename "./.git/hooks/winmessage.ps1")"
+ winmessage="$(canonicalize_filename "$(dirname -- "$0")/winmessage.ps1")"
$PWSH -noprofile -executionpolicy bypass -file "$winmessage" -center -title "Error" --text "$message"
exit 1
fi
@@ -200,7 +200,7 @@ while true; do
yn="N"
fi
elif [ \( \( "$OSTYPE" = "msys" \) -o \( "$OSTYPE" = "win32" \) \) -a \( -x "$PWSH" \) ]; then
- winmessage="$(canonicalize_filename "./.git/hooks/winmessage.ps1")"
+ winmessage="$(canonicalize_filename "$(dirname -- "$0")/winmessage.ps1")"
$PWSH -noprofile -executionpolicy bypass -file "$winmessage" -file "$patch" -buttons "Apply":100,"Apply and stage":200,"Do not apply":0 -center -default "Do not apply" -geometry 800x600 -title "Do you want to apply that patch?"
choice=$?
if [ "$choice" = "100" ] ; then
diff --git a/misc/scripts/clang_format.sh b/misc/scripts/clang_format.sh
index 2b7179f5be..edecdb6ecb 100755
--- a/misc/scripts/clang_format.sh
+++ b/misc/scripts/clang_format.sh
@@ -7,7 +7,8 @@ set -uo pipefail
# Loops through all code files tracked by Git.
git ls-files -- '*.c' '*.h' '*.cpp' '*.hpp' '*.cc' '*.hh' '*.cxx' '*.m' '*.mm' '*.inc' '*.java' '*.glsl' \
- ':!:.git/*' ':!:thirdparty/*' ':!:platform/android/java/lib/src/com/google/*' ':!:*-so_wrap.*' |
+ ':!:.git/*' ':!:thirdparty/*' ':!:*/thirdparty/*' ':!:platform/android/java/lib/src/com/google/*' \
+ ':!:*-so_wrap.*' ':!:tests/python_build/*' |
while read -r f; do
# Run clang-format.
clang-format --Wno-error=unknown -i "$f"
diff --git a/misc/scripts/codespell.sh b/misc/scripts/codespell.sh
index f99c5d22b2..4cc01ec637 100755
--- a/misc/scripts/codespell.sh
+++ b/misc/scripts/codespell.sh
@@ -1,5 +1,5 @@
#!/bin/sh
SKIP_LIST="./thirdparty,*.gen.*,*.po,*.pot,package-lock.json,./core/string/locales.h,./DONORS.md,./misc/dist/linux/org.godotengine.Godot.desktop,./misc/scripts/codespell.sh"
-IGNORE_LIST="ba,childs,complies,curvelinear,expct,fave,findn,gird,inout,lod,nd,numer,ois,ro,statics,te,varius,varn"
+IGNORE_LIST="alo,ba,childs,complies,curvelinear,doubleclick,expct,fave,findn,gird,gud,inout,lod,nd,numer,ois,readded,ro,sav,statics,te,varius,varn,wan"
codespell -w -q 3 -S "${SKIP_LIST}" -L "${IGNORE_LIST}"
diff --git a/misc/scripts/dotnet_format.sh b/misc/scripts/dotnet_format.sh
new file mode 100755
index 0000000000..645737f419
--- /dev/null
+++ b/misc/scripts/dotnet_format.sh
@@ -0,0 +1,28 @@
+#!/usr/bin/env bash
+
+# This script runs dotnet format on all relevant files in the repo.
+# This is the primary script responsible for fixing style violations in C# files.
+
+set -uo pipefail
+
+# Loops through all C# projects tracked by Git.
+git ls-files -- '*.csproj' \
+ ':!:.git/*' ':!:thirdparty/*' ':!:platform/android/java/lib/src/com/google/*' ':!:*-so_wrap.*' |
+while read -r f; do
+ # Run dotnet format.
+ dotnet format "$f"
+done
+
+diff=$(git diff --color)
+
+# If no diff has been generated all is OK, clean up, and exit.
+if [ -z "$diff" ] ; then
+ printf "Files in this commit comply with the dotnet format style rules.\n"
+ exit 0
+fi
+
+# A diff has been created, notify the user, clean up, and exit.
+printf "\n*** The following changes have been made to comply with the formatting rules:\n\n"
+echo "$diff"
+printf "\n*** Please fix your commit(s) with 'git commit --amend' or 'git rebase -i <hash>'\n"
+exit 1
diff --git a/misc/scripts/file_format.sh b/misc/scripts/file_format.sh
index c767d3f8a0..1200b96ea0 100755
--- a/misc/scripts/file_format.sh
+++ b/misc/scripts/file_format.sh
@@ -37,9 +37,11 @@ while IFS= read -rd '' f; do
continue
elif [[ "$f" == *"-so_wrap."* ]]; then
continue
+ elif [[ "$f" == *".test.txt" ]]; then
+ continue
fi
# Ensure that files are UTF-8 formatted.
- recode UTF-8 "$f" 2> /dev/null
+ isutf8 "$f" >> utf8-validation.txt 2>&1
# Ensure that files have LF line endings and do not contain a BOM.
dos2unix "$f" 2> /dev/null
# Remove trailing space characters and ensures that files end
@@ -49,15 +51,28 @@ done
diff=$(git diff --color)
-# If no diff has been generated all is OK, clean up, and exit.
-if [ -z "$diff" ] ; then
+# If no UTF-8 violations were collected and no diff has been
+# generated all is OK, clean up, and exit.
+if [ ! -s utf8-validation.txt ] && [ -z "$diff" ] ; then
printf "Files in this commit comply with the formatting rules.\n"
+ rm -f utf8-violations.txt
exit 0
fi
-# A diff has been created, notify the user, clean up, and exit.
-printf "\n*** The following differences were found between the code "
-printf "and the formatting rules:\n\n"
-echo "$diff"
+# Violations detected, notify the user, clean up, and exit.
+if [ -s utf8-validation.txt ]
+then
+ printf "\n*** The following files contain invalid UTF-8 character sequences:\n\n"
+ cat utf8-validation.txt
+ rm -f utf8-validation.txt
+fi
+
+if [ ! -z "$diff" ]
+then
+ printf "\n*** The following differences were found between the code "
+ printf "and the formatting rules:\n\n"
+ echo "$diff"
+fi
+
printf "\n*** Aborting, please fix your commit(s) with 'git commit --amend' or 'git rebase -i <hash>'\n"
exit 1
diff --git a/misc/scripts/header_guards.sh b/misc/scripts/header_guards.sh
new file mode 100755
index 0000000000..9fdc864f8c
--- /dev/null
+++ b/misc/scripts/header_guards.sh
@@ -0,0 +1,78 @@
+#!/bin/bash
+
+if [ ! -f "version.py" ]; then
+ echo "Warning: This script is intended to be run from the root of the Godot repository."
+ echo "Some of the paths checks may not work as intended from a different folder."
+fi
+
+files_invalid_guard=""
+
+for file in $(find -name "thirdparty" -prune -o -name "*.h" -print); do
+ # Skip *.gen.h and *-so_wrap.h, they're generated.
+ if [[ "$file" == *".gen.h" || "$file" == *"-so_wrap.h" ]]; then continue; fi
+ # Has important define before normal header guards.
+ if [[ "$file" == *"thread.h" || "$file" == *"platform_config.h" ]]; then continue; fi
+ # Obj-C files don't use header guards.
+ if grep -q "#import " "$file"; then continue; fi
+
+ bname=$(basename $file .h)
+
+ # Add custom prefix or suffix for generic filenames with a well-defined namespace.
+
+ prefix=
+ if [[ "$file" == "./modules/"*"/register_types.h" ]]; then
+ module=$(echo $file | sed "s@.*modules/\([^/]*\).*@\1@")
+ prefix="${module^^}_"
+ fi
+ if [[ "$file" == "./platform/"*"/api/api.h" || "$file" == "./platform/"*"/export/"* ]]; then
+ platform=$(echo $file | sed "s@.*platform/\([^/]*\).*@\1@")
+ prefix="${platform^^}_"
+ fi
+ if [[ "$file" == "./modules/mono/utils/"* && "$bname" != *"mono"* ]]; then prefix="MONO_"; fi
+ if [[ "$file" == "./servers/rendering/storage/utilities.h" ]]; then prefix="RENDERER_"; fi
+
+ suffix=
+ if [[ "$file" == *"dummy"* && "$bname" != *"dummy"* ]]; then suffix="_DUMMY"; fi
+ if [[ "$file" == *"gles3"* && "$bname" != *"gles3"* ]]; then suffix="_GLES3"; fi
+ if [[ "$file" == *"renderer_rd"* && "$bname" != *"rd"* ]]; then suffix="_RD"; fi
+ if [[ "$file" == *"ustring.h" ]]; then suffix="_GODOT"; fi
+
+ # ^^ is bash builtin for UPPERCASE.
+ guard="${prefix}${bname^^}${suffix}_H"
+
+ # Replaces guards to use computed name.
+ # We also add some \n to make sure there's a proper separation.
+ sed -i $file -e "0,/ifndef/s/#ifndef.*/\n#ifndef $guard/"
+ sed -i $file -e "0,/define/s/#define.*/#define $guard\n/"
+ sed -i $file -e "$ s/#endif.*/\n#endif \/\/ $guard/"
+ # Removes redundant \n added before, if they weren't needed.
+ sed -i $file -e "/^$/N;/^\n$/D"
+
+ # Check that first ifndef (should be header guard) is at the expected position.
+ # If not it can mean we have some code before the guard that should be after.
+ # "31" is the expected line with the copyright header.
+ first_ifndef=$(grep -n -m 1 "ifndef" $file | sed 's/\([0-9]*\).*/\1/')
+ if [[ "$first_ifndef" != "31" ]]; then
+ files_invalid_guard+="$file\n"
+ fi
+done
+
+if [[ ! -z "$files_invalid_guard" ]]; then
+ echo -e "The following files were found to have potentially invalid header guard:\n"
+ echo -e "$files_invalid_guard"
+fi
+
+diff=$(git diff --color)
+
+# If no diff has been generated all is OK, clean up, and exit.
+if [ -z "$diff" ] ; then
+ printf "Files in this commit comply with the header guards formatting rules.\n"
+ exit 0
+fi
+
+# A diff has been created, notify the user, clean up, and exit.
+printf "\n*** The following differences were found between the code "
+printf "and the header guards formatting rules:\n\n"
+echo "$diff"
+printf "\n*** Aborting, please fix your commit(s) with 'git commit --amend' or 'git rebase -i <hash>'\n"
+exit 1
diff --git a/misc/scripts/install_vulkan_sdk_macos.sh b/misc/scripts/install_vulkan_sdk_macos.sh
index 817302d77f..d78659fa9f 100755
--- a/misc/scripts/install_vulkan_sdk_macos.sh
+++ b/misc/scripts/install_vulkan_sdk_macos.sh
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/usr/bin/env sh
set -euo pipefail
IFS=$'\n\t'
diff --git a/misc/scripts/mypy.ini b/misc/scripts/mypy.ini
new file mode 100644
index 0000000000..c1ea695ca5
--- /dev/null
+++ b/misc/scripts/mypy.ini
@@ -0,0 +1,11 @@
+[mypy]
+ignore_missing_imports = true
+disallow_any_generics = True
+pretty = True
+show_column_numbers = True
+warn_redundant_casts = True
+warn_return_any = True
+warn_unreachable = True
+
+namespace_packages = True
+explicit_package_bases = True
diff --git a/misc/scripts/mypy_check.sh b/misc/scripts/mypy_check.sh
new file mode 100755
index 0000000000..2a06486d67
--- /dev/null
+++ b/misc/scripts/mypy_check.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -uo pipefail
+
+echo -e "Python: mypy static analysis..."
+mypy --config-file=./misc/scripts/mypy.ini .
diff --git a/misc/scripts/pytest_builders.sh b/misc/scripts/pytest_builders.sh
new file mode 100755
index 0000000000..eb2ddbcddc
--- /dev/null
+++ b/misc/scripts/pytest_builders.sh
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+set -uo pipefail
+
+echo "Running Python checks for builder system"
+pytest ./tests/python_build