From ae8cb7c975c565f444de5a9b9fc35a9c1b518584 Mon Sep 17 00:00:00 2001 From: Gabor Koncz Date: Tue, 20 Sep 2022 16:25:21 +0200 Subject: [PATCH 01/33] Fix doctool command --- development/cpp/custom_modules_in_cpp.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/development/cpp/custom_modules_in_cpp.rst b/development/cpp/custom_modules_in_cpp.rst index e2d784133..a5b52b219 100644 --- a/development/cpp/custom_modules_in_cpp.rst +++ b/development/cpp/custom_modules_in_cpp.rst @@ -489,7 +489,7 @@ Run command: :: - user@host:~/godot/bin$ ./bin/ --doctool . + user@host:~/godot$ ./bin/ --doctool . Now if you go to the ``godot/modules/summator/doc_classes`` folder, you will see that it contains a ``Summator.xml`` file, or any other classes, that you referenced From f3a2159d01d224556578955c1995ac04cf7d7f47 Mon Sep 17 00:00:00 2001 From: addmix <38119387+addmix@users.noreply.github.com> Date: Fri, 16 Sep 2022 03:04:05 -0600 Subject: [PATCH 02/33] Added node initialization best practices Partially resolves #45638 --- tutorials/best_practices/logic_preferences.rst | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tutorials/best_practices/logic_preferences.rst b/tutorials/best_practices/logic_preferences.rst index fb83eed9a..bb36995b7 100644 --- a/tutorials/best_practices/logic_preferences.rst +++ b/tutorials/best_practices/logic_preferences.rst @@ -6,6 +6,22 @@ Logic preferences Ever wondered whether one should approach problem X with strategy Y or Z? This article covers a variety of topics related to these dilemmas. +Adding nodes and changing properties: which first? +-------------------------------------------------- + +When initializing nodes from a script at runtime, you may need to change +properties such as the node's name or position. A common dilemma is, when +should you change those values? + +It is the best practice to change values on a node before adding it to the +scene tree. Some properties setters have code to update other +corresponding values, and that code can be slow! For most cases, this code +has no impact on your game's performance, but in heavy use cases such as +procedural generation, it can bring your game to a crawl. + +For these reasons, it is always a best practice to set the initial values +of a node before adding it to the scene tree. + Loading vs. preloading ---------------------- From 000cccf5384f6683eb11f14730f5c931f336b559 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Wed, 5 Oct 2022 18:31:11 +0200 Subject: [PATCH 03/33] Fix link to AutoLoads documentation in Using SceneTree --- tutorials/scripting/scene_tree.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tutorials/scripting/scene_tree.rst b/tutorials/scripting/scene_tree.rst index a32bb5703..cce5c7155 100644 --- a/tutorials/scripting/scene_tree.rst +++ b/tutorials/scripting/scene_tree.rst @@ -174,6 +174,6 @@ function These are quick and useful ways to switch scenes but have the drawback that the game will stall until the new scene is loaded and running. At some point in the development of your game, it may be preferable to create proper loading -screens with progress bar, animated indicators or thread (background) -loading. This must be done manually using autoloads (see next chapter) +screens with progress bar, animated indicators or threaded (background) +loading. This must be done manually using :ref:`doc_singletons_autoload` and :ref:`doc_background_loading`. From 0cae512d93b1d50132f8b6036d6bca337a4c771f Mon Sep 17 00:00:00 2001 From: Raul Santos Date: Sat, 15 Oct 2022 18:21:14 +0200 Subject: [PATCH 04/33] Warn about non-tool plugin scripts in C# (#6138) * Warn about non-tool plugin scripts in C# - Add warning about C# plugins not reloaded when they are not tools - Add `[Tool]` attribute to plugin scripts in examples so they are not lost on reload --- tutorials/plugins/editor/inspector_plugins.rst | 2 ++ tutorials/plugins/editor/making_plugins.rst | 7 ++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/tutorials/plugins/editor/inspector_plugins.rst b/tutorials/plugins/editor/inspector_plugins.rst index eaf4f3e46..79394636f 100644 --- a/tutorials/plugins/editor/inspector_plugins.rst +++ b/tutorials/plugins/editor/inspector_plugins.rst @@ -141,6 +141,7 @@ specifically add :ref:`class_EditorProperty`-based controls. #if TOOLS using Godot; + [Tool] public class MyInspectorPlugin : EditorInspectorPlugin { public override bool CanHandle(Object @object) @@ -247,6 +248,7 @@ followed by ``set_bottom_editor()`` to position it below the name. #if TOOLS using Godot; + [Tool] public class RandomIntEditor : EditorProperty { // The main control for editing the property. diff --git a/tutorials/plugins/editor/making_plugins.rst b/tutorials/plugins/editor/making_plugins.rst index d7a0caac3..acad761a1 100644 --- a/tutorials/plugins/editor/making_plugins.rst +++ b/tutorials/plugins/editor/making_plugins.rst @@ -95,9 +95,10 @@ editor, and it must inherit from :ref:`class_EditorPlugin`. .. warning:: - In addition to the EditorPlugin script, any other GDScript that your plugin uses - must *also* be a tool. Any GDScript without ``tool`` imported into the editor - will act like an empty file! + In addition to the EditorPlugin script, any other script that your plugin uses + must *also* be a tool. + * Any GDScript without ``tool`` imported into the editor will act like an empty file! + * Any C# class without ``[Tool]`` won't be reloaded when the project is built forcing you to re-enable the plugin! It's important to deal with initialization and clean-up of resources. A good practice is to use the virtual function From 1c83aa5ba8082425354c1a5fc54d85815ddf1fef Mon Sep 17 00:00:00 2001 From: William Lim Date: Wed, 26 Oct 2022 22:19:11 +0800 Subject: [PATCH 05/33] Fix Local Projects tab name in First look at Godot's editor (#6338) Co-authored-by: Hugo Locurcio --- getting_started/introduction/first_look_at_the_editor.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/getting_started/introduction/first_look_at_the_editor.rst b/getting_started/introduction/first_look_at_the_editor.rst index 829483d5d..f34a92ba4 100644 --- a/getting_started/introduction/first_look_at_the_editor.rst +++ b/getting_started/introduction/first_look_at_the_editor.rst @@ -19,7 +19,7 @@ The Project manager ------------------- When you launch Godot, the first window you see is the Project Manager. In the -default tab, "Projects," you can manage existing projects, import or create new +default tab **Local Projects**, you can manage existing projects, import or create new ones, and more. .. image:: img/editor_intro_project_manager.png From 24df2564d6959883a5473463bcdc34516232d4e4 Mon Sep 17 00:00:00 2001 From: Jean-Samuel Aubry-Guzzi Date: Tue, 25 Oct 2022 21:24:37 -0400 Subject: [PATCH 06/33] Add warning about importing c# --- tutorials/scripting/cross_language_scripting.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tutorials/scripting/cross_language_scripting.rst b/tutorials/scripting/cross_language_scripting.rst index 54389afee..1d3c67c0a 100644 --- a/tutorials/scripting/cross_language_scripting.rst +++ b/tutorials/scripting/cross_language_scripting.rst @@ -89,6 +89,9 @@ with :ref:`new() `. ``Invalid call. Nonexistent function `new` in base``. For example, MyCoolNode.cs should contain a class named MyCoolNode. + + The C# class needs to derive a Godot class, for example ``Godot.Object``. + Otherwise, the same error will occur. You also need to check your ``.cs`` file is referenced in the project's ``.csproj`` file. Otherwise, the same error will occur. From 635cae8df7801b510007fc6549cb28aa4c3245c6 Mon Sep 17 00:00:00 2001 From: Brandon Date: Sun, 4 Sep 2022 12:16:21 -0500 Subject: [PATCH 07/33] update "Apply Reset" option location Under USING RESET tracks, it said the "Apply Reset" option was in the "Animation" dropdown menu. It's actually located in the "Edit" dropdown menu. --- tutorials/animation/introduction.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorials/animation/introduction.rst b/tutorials/animation/introduction.rst index faaa87890..cf89d67d7 100644 --- a/tutorials/animation/introduction.rst +++ b/tutorials/animation/introduction.rst @@ -401,7 +401,7 @@ where they were. If you want to reset the tracks in the editor, select the AnimationPlayer node, open the **Animation** bottom panel then choose **Apply Reset** in the -animation editor's **Animation** dropdown menu. +animation editor's **Edit** dropdown menu. When adding tracks on new animations, the editor will ask you to automatically create a RESET track when using the keyframe icon next to a property in the inspector. From 9031e97648a55fc55d02359fc934c463cc1b6d4b Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Mon, 31 Oct 2022 02:57:58 +0100 Subject: [PATCH 08/33] Add aspect ratio recommendations for tablets in Multiple resolutions --- tutorials/rendering/multiple_resolutions.rst | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tutorials/rendering/multiple_resolutions.rst b/tutorials/rendering/multiple_resolutions.rst index 78d12f670..6085b0514 100644 --- a/tutorials/rendering/multiple_resolutions.rst +++ b/tutorials/rendering/multiple_resolutions.rst @@ -330,6 +330,14 @@ to change the display orientation project setting. and makes better use of tall smartphone displays (such as 18:9 or 19:9 aspect ratios). - Configure Control nodes' anchors to snap to the correct corners using the **Layout** menu. +.. tip:: + + To better support tablets and foldable phones (which frequently feature + displays with aspect ratios close to 4:3), consider using a base resolution + that has a 4:3 aspect ratio while following the rest of the instructions + here. For instance, you can set the base window width to ``1280`` and the + base window height to ``960``. + Mobile game in portrait mode ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -349,6 +357,14 @@ Mobile game in portrait mode and makes better use of tall smartphone displays (such as 18:9 or 19:9 aspect ratios). - Configure Control nodes' anchors to snap to the correct corners using the **Layout** menu. +.. tip:: + + To better support tablets and foldable phones (which frequently feature + displays with aspect ratios close to 4:3), consider using a base resolution + that has a 3:4 aspect ratio while following the rest of the instructions + here. For instance, you can set the base window width to ``960`` and the + base window height to ``1280``. + Non-game application ^^^^^^^^^^^^^^^^^^^^ From 40e07f74de139f764f18a1ecfe35bc9d3582dc09 Mon Sep 17 00:00:00 2001 From: Allie Polubiec Date: Wed, 23 Nov 2022 14:44:08 -0500 Subject: [PATCH 09/33] Fix small missing word typo --- getting_started/step_by_step/scripting_first_script.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/getting_started/step_by_step/scripting_first_script.rst b/getting_started/step_by_step/scripting_first_script.rst index 7edb8d3a3..72e9c6462 100644 --- a/getting_started/step_by_step/scripting_first_script.rst +++ b/getting_started/step_by_step/scripting_first_script.rst @@ -132,7 +132,7 @@ our node's ``texture``. capitalized words separated by a space. In GDScript code, these properties are in "snake_case", which is lowercase with words separated by an underscore. - You can hover any property's name in the Inspector to see a description and + You can hover over any property's name in the Inspector to see a description and its identifier in code. Hello, world! From cda546cd5f2f29256cdb9492ffdd3eca7733105a Mon Sep 17 00:00:00 2001 From: Denis NICOLAS <73497614+denicolas@users.noreply.github.com> Date: Wed, 23 Nov 2022 20:32:23 +0100 Subject: [PATCH 10/33] Creating instances - Wrong tense "Once you have a diagram, we recommended creating a scene" should be: "Once you have a diagram, we recommend creating a scene" --- getting_started/step_by_step/instancing.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/getting_started/step_by_step/instancing.rst b/getting_started/step_by_step/instancing.rst index 65a955ca7..3dd9ab559 100644 --- a/getting_started/step_by_step/instancing.rst +++ b/getting_started/step_by_step/instancing.rst @@ -178,7 +178,7 @@ You can come up with a diagram like this for almost any type of game. Each rectangle represents an entity that's visible in the game from the player's perspective. The arrows tell you which scene owns which. -Once you have a diagram, we recommended creating a scene for each element listed +Once you have a diagram, we recommend creating a scene for each element listed in it to develop your game. You'll use instancing, either by code or directly in the editor, to build your tree of scenes. From 5336d9da3f49d9aac31ea75532bbf9a3ca89bb21 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Wed, 21 Dec 2022 18:49:57 +0100 Subject: [PATCH 11/33] Clarify methods of installing Android SDK in Exporting for Android --- tutorials/export/exporting_for_android.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tutorials/export/exporting_for_android.rst b/tutorials/export/exporting_for_android.rst index f411f28ca..e4515f27a 100644 --- a/tutorials/export/exporting_for_android.rst +++ b/tutorials/export/exporting_for_android.rst @@ -23,7 +23,7 @@ Download the Android SDK Download and install the Android SDK. -- You can install it using `Android Studio version 4.1 or later `__. +- You can install the Android SDK using `Android Studio version 4.1 or later `__. - Run it once to complete the SDK setup using these `instructions `__. - Ensure that the `required packages `__ are installed as well. @@ -35,7 +35,7 @@ Download and install the Android SDK. - CMake version 3.10.2.4988404 - NDK version r23c (23.2.8568313) -- You can install it using the `command line tools `__. +- Alternatively, you can install the Android SDK using the `command line tools `__. - Once the command line tools are installed, run the `sdkmanager `__ command to complete the setup process: From 5ccca7b985addf1ddc64cf4ebb8b663f863eee74 Mon Sep 17 00:00:00 2001 From: Sheep <46016730+Scribble-Sheep@users.noreply.github.com> Date: Sat, 7 Jan 2023 13:38:14 -0600 Subject: [PATCH 12/33] fixed a typo in cpu optimizations (#6566) --- tutorials/performance/cpu_optimization.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorials/performance/cpu_optimization.rst b/tutorials/performance/cpu_optimization.rst index cf335cab6..519749040 100644 --- a/tutorials/performance/cpu_optimization.rst +++ b/tutorials/performance/cpu_optimization.rst @@ -8,7 +8,7 @@ Measuring performance We have to know where the "bottlenecks" are to know how to speed up our program. Bottlenecks are the slowest parts of the program that limit the rate that -everything can progress. Focussing on bottlenecks allows us to concentrate our +everything can progress. Focusing on bottlenecks allows us to concentrate our efforts on optimizing the areas which will give us the greatest speed improvement, instead of spending a lot of time optimizing functions that will lead to small performance improvements. From b8ac660b472b2593b842b09d100f77a890328b31 Mon Sep 17 00:00:00 2001 From: Dramion <43044187+Dramion@users.noreply.github.com> Date: Tue, 17 Jan 2023 10:46:49 +0900 Subject: [PATCH 13/33] Fix missing signal connection in code sample in Making HTTP requests (#6620) --- tutorials/networking/http_request_class.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/tutorials/networking/http_request_class.rst b/tutorials/networking/http_request_class.rst index 7d02daf38..6cb08fb80 100644 --- a/tutorials/networking/http_request_class.rst +++ b/tutorials/networking/http_request_class.rst @@ -38,6 +38,7 @@ Below is all the code we need to make it work. The URL points to an online API m func _ready(): $HTTPRequest.connect("request_completed", self, "_on_request_completed") + $Button.connect("pressed", self, "_on_Button_pressed") func _on_Button_pressed(): $HTTPRequest.request("http://www.mocky.io/v2/5185415ba171ea3a00704eed") From 74d10951628f64eda88551246911fe1b54bc718b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20Cot=C3=A9?= Date: Sun, 22 Jan 2023 05:13:26 -0600 Subject: [PATCH 14/33] Update Sublime Text external editor arguments (#6644) --- tutorials/editor/external_editor.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tutorials/editor/external_editor.rst b/tutorials/editor/external_editor.rst index 572a32f8b..1c4064c07 100644 --- a/tutorials/editor/external_editor.rst +++ b/tutorials/editor/external_editor.rst @@ -35,7 +35,7 @@ Some example Exec Flags for various editors include: +=====================+=====================================================+ | Geany/Kate | ``{file} --line {line} --column {col}`` | +---------------------+-----------------------------------------------------+ -| Atom/Sublime Text | ``{file}:{line}`` | +| Atom | ``{file}:{line}`` | +---------------------+-----------------------------------------------------+ | JetBrains Rider | ``{project} --line {line} {file}`` | +---------------------+-----------------------------------------------------+ @@ -45,6 +45,8 @@ Some example Exec Flags for various editors include: +---------------------+-----------------------------------------------------+ | Emacs | ``emacs +{line}:{col} {file}`` | +---------------------+-----------------------------------------------------+ +| Sublime Text | ``{project} {file}:{line}:{column}`` | ++---------------------+-----------------------------------------------------+ .. note:: For Visual Studio Code, you will have to point to the ``code.cmd`` file. For Emacs, you can call ``emacsclient`` instead of ``emacs`` if From 0eddd367ecd42c459f5d977747d420864f6f3fc7 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Sun, 22 Jan 2023 11:01:14 +0100 Subject: [PATCH 15/33] Document using Pyston-lite for faster builds on macOS --- development/compiling/compiling_for_osx.rst | 16 ++++++++++++++++ development/compiling/compiling_for_x11.rst | 7 +++++++ 2 files changed, 23 insertions(+) diff --git a/development/compiling/compiling_for_osx.rst b/development/compiling/compiling_for_osx.rst index 9f5b1f7f0..151a7b1ef 100644 --- a/development/compiling/compiling_for_osx.rst +++ b/development/compiling/compiling_for_osx.rst @@ -140,6 +140,22 @@ template from the official Godot distribution:: zip -q -9 -r osx.zip osx_template.app +Using Pyston for faster development +----------------------------------- + +You can use `Pyston `__ to run SCons. Pyston is a +JIT-enabled implementation of the Python language (which SCons is written in). +Its "full" version is currently only compatible with Linux, but Pyston-lite is +also compatible with macOS (both x86 and ARM). Pyston can speed up incremental +builds significantly, often by a factor between 1.5× and 2×. Pyston can be +combined with alternative likers such as LLD or Mold to get even faster builds. + +To install Pyston-lite, run ``python -m pip install pyston_lite_autoload`` then +run SCons as usual. This will automatically load a subset of Pyston's +optimizations in any Python program you run. However, this won't bring as much +of a performance improvement compared to installing "full" Pyston (which +currently can't be done on macOS). + Cross-compiling for macOS from Linux ------------------------------------ diff --git a/development/compiling/compiling_for_x11.rst b/development/compiling/compiling_for_x11.rst index 27430df2e..6daa22d86 100644 --- a/development/compiling/compiling_for_x11.rst +++ b/development/compiling/compiling_for_x11.rst @@ -256,3 +256,10 @@ to get even faster builds. If you can't run ``pyston-scons`` after creating the symbolic link, make sure ``$HOME/.local/bin/`` is part of your user's ``PATH`` environment variable. + +.. note:: + + Alternatively, you can run ``python -m pip install pyston_lite_autoload`` + then run SCons as usual. This will automatically load a subset of Pyston's + optimizations in any Python program you run. However, this won't bring as + much of a performance improvement compared to installing "full" Pyston. From 78878aa6613c62b2056fbb1cfc0bf6e53725cb20 Mon Sep 17 00:00:00 2001 From: hpnrep6 Date: Fri, 25 Jun 2021 13:12:03 -0400 Subject: [PATCH 16/33] Fix hyperlink usage in Your first 2D/3D shaders (#5048) --- .../shaders/your_first_shader/your_first_2d_shader.rst | 6 +++--- .../shaders/your_first_shader/your_first_3d_shader.rst | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/tutorials/shaders/your_first_shader/your_first_2d_shader.rst b/tutorials/shaders/your_first_shader/your_first_2d_shader.rst index 6339a2b7e..1a0a2a9c9 100644 --- a/tutorials/shaders/your_first_shader/your_first_2d_shader.rst +++ b/tutorials/shaders/your_first_shader/your_first_2d_shader.rst @@ -22,9 +22,9 @@ fragment functions. This tutorial targets absolute beginners to shaders. Setup ----- -:ref:`CanvasItem ` shaders are used to draw all 2D - objects in Godot, while :ref:`Spatial ` shaders are - used to draw all 3D objects. +:ref:`CanvasItem shaders ` are used to draw all 2D +objects in Godot, while :ref:`Spatial ` shaders are used +to draw all 3D objects. In order to use a shader it must be attached inside a :ref:`Material ` which must be attached to an object. Materials are a type of diff --git a/tutorials/shaders/your_first_shader/your_first_3d_shader.rst b/tutorials/shaders/your_first_shader/your_first_3d_shader.rst index 5a77d7f17..dfa8fcc08 100644 --- a/tutorials/shaders/your_first_shader/your_first_3d_shader.rst +++ b/tutorials/shaders/your_first_shader/your_first_3d_shader.rst @@ -87,9 +87,9 @@ and thus allow us to add more detail. .. image:: img/plane-sub.png :ref:`PrimitiveMeshes `, like PlaneMesh, only have one - surface, so instead of an array of materials there is only one. Click - beside "Material" where it says "[empty]" and select "New ShaderMaterial". - Then click the sphere that appears. +surface, so instead of an array of materials there is only one. Click +beside "Material" where it says "[empty]" and select "New ShaderMaterial". +Then click the sphere that appears. Now click beside "Shader" where it says "[empty]" and select "New Shader". @@ -181,8 +181,8 @@ Click beside it where it says "[empty]" and select "New NoiseTexture". Then in your NoiseTexture click beside where it says "Noise" and select "New OpenSimplexNoise". -:ref:`OpenSimplexNoise ` is used by the NoiseTexture to - generate a heightmap. +.. note:: :ref:`OpenSimplexNoise ` is used by the NoiseTexture to + generate a heightmap. Once you set it up and should look like this. From 4dc28f3bbbf5fb17fc7acf6712a318cb99ff5f96 Mon Sep 17 00:00:00 2001 From: Lorenzo Meninato Date: Wed, 1 Mar 2023 11:57:53 -0500 Subject: [PATCH 17/33] Fix small typo in introduction_to_godot.rst --- getting_started/introduction/introduction_to_godot.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/getting_started/introduction/introduction_to_godot.rst b/getting_started/introduction/introduction_to_godot.rst index edad4ae8d..f5340fe1f 100644 --- a/getting_started/introduction/introduction_to_godot.rst +++ b/getting_started/introduction/introduction_to_godot.rst @@ -29,7 +29,7 @@ programming skills or a developer to port the game for you. What can the engine do? ----------------------- -Godot was initially developed in-house by an Argentinan game studio. Its +Godot was initially developed in-house by an Argentinian game studio. Its development started in 2001, and the engine was rewritten and improved tremendously since its open-source release in 2014. From 2471d700b15d983744da100768faad3795e753d6 Mon Sep 17 00:00:00 2001 From: "max.gripe" <108034506+MaxGripe@users.noreply.github.com> Date: Thu, 30 Mar 2023 18:06:07 +0100 Subject: [PATCH 18/33] Update faq.rst I changed the path to the correct one. The previous one led to a non-existent location. --- about/faq.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/about/faq.rst b/about/faq.rst index 74c5d5d13..cb25386f6 100644 --- a/about/faq.rst +++ b/about/faq.rst @@ -204,7 +204,7 @@ Windows - Move the Godot executable to a stable location (i.e. outside of your Downloads folder), so you don't accidentally move it and break the shortcut in the future. - Right-click the Godot executable and choose **Create Shortcut**. -- Move the created shortcut to ``%LOCALAPPDATA%\Microsoft\Windows\Start Menu\Programs``. +- Move the created shortcut to ``%APPDATA%\Microsoft\Windows\Start Menu\Programs``. This is the user-wide location for shortcuts that will appear in the Start menu. You can also pin Godot in the task bar by right-clicking the executable and choosing **Pin to Task Bar**. From 90debdc1ec883436e64c1a984efe523b897d9ce5 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Sat, 15 Apr 2023 21:39:17 +0200 Subject: [PATCH 19/33] Update GitHub issue URL for encapsulation violations in Editor development The previously linked issue is now closed. --- development/editor/introduction_to_editor_development.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/development/editor/introduction_to_editor_development.rst b/development/editor/introduction_to_editor_development.rst index ed72aabd6..5f142268f 100644 --- a/development/editor/introduction_to_editor_development.rst +++ b/development/editor/introduction_to_editor_development.rst @@ -77,7 +77,7 @@ from ``servers/`` and ``core/``, it cannot depend on includes from ``editor/``. Currently, there are some dependencies to ``editor/`` includes in ``scene/`` files, but -`they are in the process of being removed `__. +`they are in the process of being removed `__. Development tips ---------------- From 2f311875e2c994257c9f097fcd59a85f55972b6d Mon Sep 17 00:00:00 2001 From: Devin Amdahl <37766476+damdalf@users.noreply.github.com> Date: Fri, 5 May 2023 05:55:12 -0500 Subject: [PATCH 20/33] Update PR Workflow documentation to include updated information about GitHub's account verification via HTTPS (#7275) --- community/contributing/pr_workflow.rst | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/community/contributing/pr_workflow.rst b/community/contributing/pr_workflow.rst index 8f0d17f70..cc2d08671 100644 --- a/community/contributing/pr_workflow.rst +++ b/community/contributing/pr_workflow.rst @@ -347,9 +347,16 @@ do: $ git push origin better-project-manager -Git will ask you for your username and password, and the changes will be sent -to your remote. If you check the fork's page on GitHub, you should see a new -branch with your added commits. +Git will ask you for your username and password. For your password, enter your +GitHub Personal Access Token (PAT). If you do not have a GitHub Personal Access +Token, or do not have one with the correct permissions for your newly forked +repository, you will need to create one. Follow this link to create your Personal +Access Token: `Creating a personal access token +`_. + +After you have successfully verified your account using your PAT, the changes +will be sent to your remote repository. If you check the fork's page on GitHub, +you should see a new branch with your added commits. Issuing a pull request ---------------------- From 4e28c62c6b77b73d2cbfef359969adefef02ec6d Mon Sep 17 00:00:00 2001 From: Piper Thunstrom Date: Sun, 18 Jun 2023 19:06:02 -0700 Subject: [PATCH 21/33] Update instancing.rst (#7493) Update physics material info on instancing page --- .../img/instancing_physics_material_expand.png | Bin 6672 -> 0 bytes .../img/instancing_physics_material_expand.webp | Bin 0 -> 15954 bytes .../img/instancing_property_bounce_updated.png | Bin 587 -> 0 bytes .../img/instancing_property_bounce_updated.webp | Bin 0 -> 1672 bytes getting_started/step_by_step/instancing.rst | 6 +++--- 5 files changed, 3 insertions(+), 3 deletions(-) delete mode 100644 getting_started/step_by_step/img/instancing_physics_material_expand.png create mode 100644 getting_started/step_by_step/img/instancing_physics_material_expand.webp delete mode 100644 getting_started/step_by_step/img/instancing_property_bounce_updated.png create mode 100644 getting_started/step_by_step/img/instancing_property_bounce_updated.webp diff --git a/getting_started/step_by_step/img/instancing_physics_material_expand.png b/getting_started/step_by_step/img/instancing_physics_material_expand.png deleted file mode 100644 index 67f452186ab9b52beb76ff438196a6cde654dfbb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6672 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 literal 0 HcmV?d00001 diff --git a/getting_started/step_by_step/img/instancing_property_bounce_updated.png b/getting_started/step_by_step/img/instancing_property_bounce_updated.png deleted file mode 100644 index 2b7c3117bfff60b38032942297b8e16bddf5c151..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 587 zcmV-R0<`^!P)JD4fL-vPy;nk12s?st#A)1cUdbA-UogOnuFhPUlTNyk_kvw zss*Qo_8b&_%)I%!Bxn(lo?w@S3eM-&vUlM*=-%!hH;>DLN`@*TEg?kiBEoQf3M7#n zTSBBNIuIeI-^n7AV&`==n|J)?85+X6pbSlA`N&9oaK{O2xU&*HPM>$uR+VA&rnS_B1Snwx`3)8 zrZJ$C)bH_}2XA!u@FQs3;+m&C*IF2~-MpY)%H|MrKe)8cJXy3x^ zXWeIL1^xhv|AQh`t;>w6cU3+dN;maf7qkOC`N_A-hK>RKGPA6V*K5<#`*{V`Qz?%_ zDgT~2<+7pUP#Tl7dvmdu;koQTr3CnRZQ6nAp7FAw4UtQxa}rX?iDYK4|9ajwPwA|! zddf#uw9au{?4=SS?ew^z}`|1zFQg8Kn>JD4b(sl)Ibf?Kn>J7 Zj(@Wu+}b|OzOeuR002ovPDHLkV1k|Y4J`lw diff --git a/getting_started/step_by_step/img/instancing_property_bounce_updated.webp b/getting_started/step_by_step/img/instancing_property_bounce_updated.webp new file mode 100644 index 0000000000000000000000000000000000000000..a6405bb647ca4ff75e1d703d3a53b183a4779e9b GIT binary patch literal 1672 zcmaKqc~nzJ6vi(*BCA2b9+lKapa@nA0*WOVAc{qS0J4J+WHSkvfT%1%L{th$UCI)W zT?#1Hl{FPvtYxv(P+W?HB8qGkWQh>S>jZm>e`x2NdGmYUz2D5-`yR!XOpccYaJ3;h z>~k=4Qvd)wngal90c@?T9P%a6D@f+ksC1U}CIC7kf=Ss)!n?V9;N=EE78C&oTS3c@ z$_n4(M0OTue|*ezgM>K3GZgRj@tjYpN&yF0Q~(J)%CMw{Gb0f1M{E)m5iaIT#Ol;w zzW~Hn5F0Sj1ra|H>;CU~RLnt(yjYYv)0tw0YEwr#KIjAX|A48%OghRjMmdB4Is@%5 z>Gqxj#2h1LIxQ02ZE=VzR6M|NaY8Er&DF3IY+(;Lptkx$B!mDBBES%>45YAtg5so4 z_&;0pJ0O=oa)kgDIjkWJ=-{{L2k|#RIcO~PmKA99^`a!9NCJ@Q#jwfs0CML67Sb_H zSb$**g#c1L01b>Ke^@?%*)-DAmo!2ifJ!33o#rLYKLeoZ6oA&#a6hKs;yF_2DH#|D z@U|2{$sGXK383KlzHcZdjziI70B6)IyAFV?Yyh1gw71tM>Xt`_|N8d7Isf(#{kiyB zbWW!xmDsBLaAhs_}l#Fj54V0xkq5$|}XMY`$_ z)0~3i6IsS%Bc9ZZ#6w0JW$x?sDjws#d~1)IW;UwraK2EfAZmEV>8ZQ-Za-&1Wq$IQ z?SCdRd6`H=1J7+0A;JyR_p3k|4gxzWBFIb;A4c77{cH?-V5 zH}+r=tyy=jRzp@n>Lt^=WKB!TwOIxEA;leo)d@!Z6@+oSwu^7PLa#M#FPW^`xa^z` ziT(ZK;Ga^1R{l0zUEu6`7*CX z`Bg&^I8NT%t|`&p=x9uPe7DbCEpE*=E-YjTb#h`ex0B1IJx%MI6{{F!$-(n7?RLSg zC4G*`OkQ&QqvxwxlMVTif()V{N)vO-{R{7MyM70$`qp*ay6?;ftxBYE1@-~_+l7VJ zy}Va053#kxZBsEFf`=JpyaVH=GlvE=&lpj*jKb;rC!W!tww3-&F^N7#)7zJAX`&~Y zHKIQ;LZBb+Q&t-EYWd1Fl+~j-aW%o1YUx|!ljpeEgLOp3(Bf!e;t> zxXVOZ9!(}r>=$FRXD&_=m_$2@Jt=S0HU8Gq7d;HVy%w3x|CRT}!BxY?!KahhDInp@ z^(Nj-tLT!>;bX+ij=NHoQ9Y$sH)aiRRy1k&(LK!w>-uzA)y>83R*4pJ;~w(Gtw$X( z|GBf?^M1zM7|u;vjQY1{^`#8IG!VA>hT9Kbu`}U?P1zA<+>&F5(jKJAWLan@nvS>W z)~3ITk$rc~wZMs4->NVou(^8D;#`E}hL%S6DCM=fHRo1Ol<%5MQ&UT+Tvbuf&NuAc zM8L;3Fm1-ILk_cB7D9B!x;me~lW_VYTtwgdXM9O_)bQU1%ev1zQ?X7uVNAba{A2DE zpMO$x<49dxLth!@#h;~UADbPG=1$u;sUCT!}0d?HEl3&Z+tb$pMB8G)u=p_ zrktJ9SXkerotpaM`poIeSS;1jqImz_(4BlY_g{R+le|1CSiU$OJ*?rjPH$Fg-llPF3yAoNC;icXvACo)?{+@cD)|d|AsDZ!^XVj4C%@VIco7mb@X8 Y)<5P|bD~$Rq}45 Date: Thu, 20 Jul 2023 15:23:03 +0200 Subject: [PATCH 22/33] Document HDR output issues in Troubleshooting --- about/troubleshooting.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/about/troubleshooting.rst b/about/troubleshooting.rst index 6a3105c62..08d757831 100644 --- a/about/troubleshooting.rst +++ b/about/troubleshooting.rst @@ -91,6 +91,29 @@ resolve this, open **Project > Project Settings** and enable **Display > Window > Dpi > Allow Hidpi**. On top of that, make sure your project is configured to support :ref:`multiple resolutions `. +The editor or project appears to have washed out colors +------------------------------------------------------- + +On Windows, this is usually caused by incorrect OS or monitor settings, as Godot +currently does not support :abbr:`HDR (High Dynamic Range)` *output* +(even though it may internally render in HDR). + +As `most displays are not designed to display SDR content in HDR mode `__, +it is recommended to disable HDR in the Windows settings when not running applications +that use HDR output. On Windows 11, this can be done by pressing +:kbd:`Windows + Alt + B` (this shortcut is part of the Xbox Game Bar app). +To toggle HDR automatically based on applications currently running, you can use +`AutoActions `__. + +If you insist on leaving HDR enabled, it is possible to somewhat improve the +result by ensuring the display is configured to use :abbr:`HGIG (HDR Gaming Interest Group)` +tonemapping (as opposed to :abbr:`DTM (Dynamic Tone Mapping)`), then +`using the Windows HDR calibration app `__. +It is also strongly recommended to use Windows 11 instead of Windows 10 when using HDR. +The end result will still likely be inferior to disabling HDR on the display, though. + +Support for HDR *output* is planned in a future release. + The editor/project freezes or displays glitched visuals after resuming the PC from suspend ------------------------------------------------------------------------------------------ From 053de3b60596d77fbcea6353912bd5a323fb7c93 Mon Sep 17 00:00:00 2001 From: cabbagestole <81903412+cabbagestole@users.noreply.github.com> Date: Sun, 24 Sep 2023 17:55:09 +0900 Subject: [PATCH 23/33] Update godot_interfaces.rst One too many open curly bracket "{". Wrong public void PrintMe() { Correct public void PrintMe() --- tutorials/best_practices/godot_interfaces.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorials/best_practices/godot_interfaces.rst b/tutorials/best_practices/godot_interfaces.rst index 79a8417cf..3d8742c33 100644 --- a/tutorials/best_practices/godot_interfaces.rst +++ b/tutorials/best_practices/godot_interfaces.rst @@ -504,7 +504,7 @@ accesses: Child.MyMethod(); } - public void PrintMe() { + public void PrintMe() { GD.Print(GetClass()); } From 3d2270ebb067dff5afd9e37917ec98380821627a Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Tue, 26 Sep 2023 03:53:59 +0200 Subject: [PATCH 24/33] Remove outdated mention about low-processor mode on mobile in FAQ Low processor mode has been working correctly on mobile since 3.5 at least. --- about/faq.rst | 3 --- 1 file changed, 3 deletions(-) diff --git a/about/faq.rst b/about/faq.rst index cb25386f6..3ebf34951 100644 --- a/about/faq.rst +++ b/about/faq.rst @@ -436,9 +436,6 @@ When creating a non-game application, make sure to enable :ref:`low-processor mode ` in the Project Settings to decrease CPU and GPU usage. -That said, we wouldn't recommend using Godot to create a *mobile* application -since low-processor mode isn't supported on mobile platforms yet. - Check out `Material Maker `__ and `Pixelorama `__ for examples of open source applications made with Godot. From 85a24f9cb32f0306696586d0f1099c9b9538fb0a Mon Sep 17 00:00:00 2001 From: Thaddeus Crews Date: Fri, 27 Oct 2023 09:51:43 -0500 Subject: [PATCH 25/33] Disable collapsing tabs for codeblocks --- conf.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/conf.py b/conf.py index 25acbcdf4..2b3eb6e7b 100644 --- a/conf.py +++ b/conf.py @@ -24,6 +24,9 @@ extensions = [ # we can ignore this so we still can treat other warnings as errors. sphinx_tabs_nowarn = True +# Disable collapsing tabs for codeblocks. +sphinx_tabs_disable_tab_closing = True + # Custom 4O4 page HTML template. # https://github.com/readthedocs/sphinx-notfound-page notfound_context = { From 5b005050a3a63cbb0d7bab1bb4e4196314363b72 Mon Sep 17 00:00:00 2001 From: danfountgames <43049813+danfountgames@users.noreply.github.com> Date: Thu, 2 Nov 2023 11:48:14 +0000 Subject: [PATCH 26/33] The most important line was missing from the example entitlements file. --- development/cpp/macos_debug.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/development/cpp/macos_debug.rst b/development/cpp/macos_debug.rst index fa254baa5..babadb9df 100644 --- a/development/cpp/macos_debug.rst +++ b/development/cpp/macos_debug.rst @@ -29,6 +29,8 @@ Create an ``editor.entitlements`` text file with the following contents: com.apple.security.device.camera + com.apple.security.get-task-allow + From fc9062334fb75663b18329deee2578cfb794c909 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= Date: Thu, 23 Nov 2023 13:54:18 +0100 Subject: [PATCH 27/33] conf.py: Fix regression with composite language codes RTD decided to normalize language codes such as `zh_CN` and `pt_BR` to `zh-cn` and `pt-br`, apparently because it makes URLs prettier... https://blog.readthedocs.com/language-codes-are-now-normalized/ But they didn't take into account that Sphinx doesn't do the same, and still requires `zh_CN` and `pt_BR` for its `language` config value. So we have to convert it back in `conf.py`, otherwise this breaks our i18n logic, notably to handle the localized class reference and images. --- conf.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/conf.py b/conf.py index 2b3eb6e7b..d78d72b84 100644 --- a/conf.py +++ b/conf.py @@ -116,7 +116,14 @@ supported_languages = { "zh_TW": "Godot Engine %s 正體中文 (台灣) 文件", } +# RTD normalized their language codes to ll-cc (e.g. zh-cn), +# but Sphinx did not and still uses ll_CC (e.g. zh_CN). +# `language` is the Sphinx configuration so it needs to be converted back. language = os.getenv("READTHEDOCS_LANGUAGE", "en") +if "-" in language: + (lang_name, lang_country) = language.split("-") + language = lang_name + "_" + lang_country.upper() + if not language in supported_languages.keys(): print("Unknown language: " + language) print("Supported languages: " + ", ".join(supported_languages.keys())) @@ -126,6 +133,7 @@ if not language in supported_languages.keys(): language = "en" is_i18n = tags.has("i18n") # noqa: F821 +print("Build language: {}, i18n tag: {}".format(language, is_i18n)) exclude_patterns = ["_build"] From 4b45519456032d2e9a92adc6328964a6c4d671b6 Mon Sep 17 00:00:00 2001 From: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com> Date: Tue, 21 Nov 2023 23:10:48 +0100 Subject: [PATCH 28/33] Fix copyright header in code style guidelines --- .../contributing/code_style_guidelines.rst | 116 +++++++++--------- 1 file changed, 58 insertions(+), 58 deletions(-) diff --git a/community/contributing/code_style_guidelines.rst b/community/contributing/code_style_guidelines.rst index d53a8f58c..7dbf94b1b 100644 --- a/community/contributing/code_style_guidelines.rst +++ b/community/contributing/code_style_guidelines.rst @@ -160,35 +160,35 @@ Example: .. code-block:: cpp - /*************************************************************************/ - /* my_new_file.h */ - /*************************************************************************/ - /* This file is part of: */ - /* GODOT ENGINE */ - /* https://godotengine.org */ - /*************************************************************************/ - /* Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. */ - /* Copyright (c) 2014-2021 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. */ - /*************************************************************************/ + /**************************************************************************/ + /* my_new_file.h */ + /**************************************************************************/ + /* This file is part of: */ + /* GODOT ENGINE */ + /* https://godotengine.org */ + /**************************************************************************/ + /* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */ + /* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */ + /* */ + /* 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. */ + /**************************************************************************/ #ifndef MY_NEW_FILE_H #define MY_NEW_FILE_H @@ -205,35 +205,35 @@ Example: .. code-block:: cpp - /*************************************************************************/ - /* my_new_file.cpp */ - /*************************************************************************/ - /* This file is part of: */ - /* GODOT ENGINE */ - /* https://godotengine.org */ - /*************************************************************************/ - /* Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. */ - /* Copyright (c) 2014-2021 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. */ - /*************************************************************************/ + /**************************************************************************/ + /* my_new_file.cpp */ + /**************************************************************************/ + /* This file is part of: */ + /* GODOT ENGINE */ + /* https://godotengine.org */ + /**************************************************************************/ + /* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */ + /* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */ + /* */ + /* 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. */ + /**************************************************************************/ #include "my_new_file.h" From b03b4c5d1f22a4082293ee62a549c34373ca4078 Mon Sep 17 00:00:00 2001 From: Ryan Eisenbarth Date: Mon, 11 Dec 2023 09:13:21 -0700 Subject: [PATCH 29/33] Minor text change from i to node Keeps document consistent throughout --- tutorials/io/saving_games.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorials/io/saving_games.rst b/tutorials/io/saving_games.rst index aa1796f86..4833da75d 100644 --- a/tutorials/io/saving_games.rst +++ b/tutorials/io/saving_games.rst @@ -38,7 +38,7 @@ to save them and then tell them all to save with this script: .. code-tab:: gdscript GDScript var save_nodes = get_tree().get_nodes_in_group("Persist") - for i in save_nodes: + for node in save_nodes: # Now, we can call our save function on each node. .. code-tab:: csharp From 45b8a9194010722300c896551fd221dd0c19f93f Mon Sep 17 00:00:00 2001 From: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com> Date: Sun, 3 Dec 2023 17:37:40 +0100 Subject: [PATCH 30/33] Add instructions for rebasing onto a branch Useful if someone has created a PR from the wrong branch --- community/contributing/pr_workflow.rst | 27 +++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/community/contributing/pr_workflow.rst b/community/contributing/pr_workflow.rst index cc2d08671..064da08dc 100644 --- a/community/contributing/pr_workflow.rst +++ b/community/contributing/pr_workflow.rst @@ -518,7 +518,7 @@ will raise an error: hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. -This is a sane behavior, Git will not let you push changes that would +This is reasonable behavior, Git will not let you push changes that would override remote content. But that's actually what we want to do here, so we will have to *force* it: @@ -530,6 +530,31 @@ And tadaa! Git will happily *replace* your remote branch with what you had locally (so make sure that's what you wanted, using ``git log``). This will also update the PR accordingly. +Rebasing onto another branch +---------------------------- + +If you have accidentally opened your PR on the wrong branch, or need to target another branch +for some reason, you might need to filter out a lot of commits that differ between the old branch +(for example ``4.2``) and the new branch (for example ``master``). This can make rebasing difficult +and tedious. Fortunately ``git`` has a command just for this situation, ``git rebase --onto``. + +If your PR was created from the ``4.2`` branch and you want to update it to instead start at ``master`` +the following steps *should* fix this in one step: + +.. code-block:: text + + $ git rebase -i --onto master 4.2 + +This will take all the commits on your branch *after* the ``4.2`` branch, and then splice them on top of ``master``, +ignoring any commits from the ``4.2`` branch not on the ``master`` branch. You may still need to do some fixing, but +this command should save you a lot of tedious work removing commits. + +Just like above for the interactive rebase you need to force push your branch to handle the different changes: + +:: + + $ git push --force origin better-project-manager + Deleting a Git branch --------------------- From 204ece7b9e742fb8e0dbd9142b7f0974c7cc7673 Mon Sep 17 00:00:00 2001 From: Adam Scott Date: Sat, 24 Feb 2024 16:50:31 -0500 Subject: [PATCH 31/33] Fix website highlight of text --- _static/css/custom.css | 1 + 1 file changed, 1 insertion(+) diff --git a/_static/css/custom.css b/_static/css/custom.css index 3379f5f50..c196ccb2a 100644 --- a/_static/css/custom.css +++ b/_static/css/custom.css @@ -644,6 +644,7 @@ footer { } .wy-body-for-nav { + position: relative; background-color: var(--content-wrap-background-color); } From 24ad66f2c3bd9c8bd6c8d3517036e4ff677a3012 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Fri, 26 Jan 2024 22:31:15 +0100 Subject: [PATCH 32/33] Fix table caption text color on dark theme --- _static/css/custom.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/_static/css/custom.css b/_static/css/custom.css index c196ccb2a..5d56aa048 100644 --- a/_static/css/custom.css +++ b/_static/css/custom.css @@ -337,7 +337,8 @@ article ol, } body, -.rst-content table.docutils thead { +.rst-content table.docutils thead, +.rst-content table.docutils caption { color: var(--body-color); } From 0d9540a90d09a5235cae6854e22944297f2f9497 Mon Sep 17 00:00:00 2001 From: HolonProduction Date: Thu, 18 Jul 2024 14:57:14 +0200 Subject: [PATCH 33/33] Fix scrolling outside of content area --- _static/css/custom.css | 1 + 1 file changed, 1 insertion(+) diff --git a/_static/css/custom.css b/_static/css/custom.css index 5d56aa048..6b89f28a9 100644 --- a/_static/css/custom.css +++ b/_static/css/custom.css @@ -647,6 +647,7 @@ footer { .wy-body-for-nav { position: relative; background-color: var(--content-wrap-background-color); + overflow: visible; } @media only screen and (min-width: 769px) {