Commit Graph

26978 Commits

Author SHA1 Message Date
PouleyKetchoupp ff11fdd017 Pre-commit hook instructions on Windows
(cherry picked from commit 7b6e664178)
2020-06-10 15:32:18 +02:00
Andrii Doroshenko (Xrayez) 23ef1e0f70 SCons: Dump construction environment to a file
A new `methods.dump(env)` is added to dump the construction environment
used by SCons to build Godot to a `.scons_env.json`. The file can be used
for debugging purposes and any external tool.

(cherry picked from commit 42bee75e86)
2020-06-10 15:30:52 +02:00
Andrii Doroshenko (Xrayez) bc21cd8592 Moved to methods.py as a `show_progress` method.
Some required changes are made:
- locally imported SCons-specific packages within the method;
- `global` variables converted to `nonlocal` (used in nested functions).

(cherry picked from commit d753a7630a)
2020-06-10 15:30:52 +02:00
Rémi Verschelde efdeba3326 Travis: Add static check for Python black formatting
Also install and use pygmentize to visualize clang-format and black
diffs.

(cherry picked from commit 3644036fd3)
2020-06-10 15:30:52 +02:00
Rémi Verschelde 243377ffac Hooks: Use pygmentize if available to visualize diff
(cherry picked from commit 4d52761da6)
2020-06-10 15:30:52 +02:00
Rémi Verschelde 1ec7a73d1c Hooks: Add pre-commit hook for psf/black formatting
(cherry picked from commit 164826a39b)
2020-06-10 15:30:52 +02:00
Rémi Verschelde 7bf9787921 SCons: Format buildsystem files with psf/black
Configured for a max line length of 120 characters.

psf/black is very opinionated and purposely doesn't leave much room for
configuration. The output is mostly OK so that should be fine for us,
but some things worth noting:

- Manually wrapped strings will be reflowed, so by using a line length
  of 120 for the sake of preserving readability for our long command
  calls, it also means that some manually wrapped strings are back on
  the same line and should be manually merged again.

- Code generators using string concatenation extensively look awful,
  since black puts each operand on a single line. We need to refactor
  these generators to use more pythonic string formatting, for which
  many options are available (`%`, `format` or f-strings).

- CI checks and a pre-commit hook will be added to ensure that future
  buildsystem changes are well-formatted.

(cherry picked from commit cd4e46ee65)
2020-06-10 15:30:52 +02:00
Hugo Locurcio c3d04167a4 Document the requirement to update the class reference when contributing
Documenting new additions has been an informal requirement for
a few months now. This makes it official.

(cherry picked from commit 6d0e8f9fb7)
2020-06-10 15:30:52 +02:00
Hugo Locurcio c39c3e3237 Improve `CONTRIBUTING.md` and update it to follow recent changes
- Improve the bug reporting guidelines for readability.
  - Make some guidelines more strictly applied in the interest of
    bug report quality.
- Mention that feature proposals should now be opened on the
  Godot Proposals repository.
- Update the Git commit message guide to be easier to follow.
- Fix warnings reported by markdownlint.

(cherry picked from commit 7b5c502ba5)
2020-06-10 15:30:52 +02:00
Hugo Locurcio 8e8861ed06 Mention ordering caveats for `Dictionary.hash()`
See https://github.com/godotengine/godot/issues/27615.

(cherry picked from commit 77b89263dd)
2020-06-10 15:30:52 +02:00
Michael Alexsander 5495bbdd47 Fix scene tree showing up when the root selection is present
(cherry picked from commit f30e4dbf54)
2020-06-10 15:30:52 +02:00
Phischermen 12786bcbdb Fix crash when creating new text file with no name
(cherry picked from commit cdb29447b4)
2020-06-10 15:30:52 +02:00
Rémi Verschelde 3202df9b5c doc: Make File store/get integer methods clearer
Add an example on how to store signed integers on less than 64 bits,
using one bit for the signedness.

(cherry picked from commit cd25d184a5)
2020-06-10 15:30:52 +02:00
Marcel Admiraal 7200a0eac5 Update Rigidbody 2D and 3D sleep documentation.
(cherry picked from commit 1b738a77c1)
2020-06-10 15:30:52 +02:00
Rémi Verschelde 51de6732c9 AStar: Make get_closest_point() deterministic for equidistant points
Closes godotengine/godot-docs#3667.
Supersedes #39405.

(cherry picked from commit 187ba4c5a8)
2020-06-10 15:30:52 +02:00
Hugo Locurcio 317c9b5fe9 Tweak the invalid preset error message to mention `export_presets.cfg`
(cherry picked from commit a7b2f3d41a)
2020-06-10 15:30:52 +02:00
Rémi Verschelde ebb30ac45a Core: Add hints to run with --verbose when leaking nodes/resources at exit
(cherry picked from commit 2b5545270a)
2020-06-10 15:30:52 +02:00
Michael Alexsander 2652a2d184 Add generic file icon and its modulation to the 'FileDialog'
(cherry picked from commit 637927f803)
2020-06-10 15:30:52 +02:00
Rémi Verschelde f3fcdfbdd0 PackedScene: Prevent crash when root node has `parent` attribute
The crash happens further down when setting an invalid owner in
`Node::_set_owner_nocheck` but I couldn't figure out how to fix it.

But here the proper fix is to catch the invalid scene file early on
and fail loading it.

Part of #17372.

(cherry picked from commit c080ec5da2)
2020-06-10 15:30:52 +02:00
Rémi Verschelde 1a1c30702d VariantParser: Fix crash on malformed vectors
Each time `r_err_str` is set, we should return a parse error.

Removed redundant `return OK;` which were already handled after the big
`if`/`else if`/`else` for `TK_IDENTIFIER`.

Part of #17372.

(cherry picked from commit e7ebda975a)
2020-06-10 15:30:52 +02:00
Rémi Verschelde 3edae035d5 GDScript LSP: Fix crash in notify_client
`latest_client_id` now defaults to `-1` (invalid ID) instead of `0`.

Also fix typo in notification `gdscrip_client/changeWorkspace`,
and fix argument names in method binds.

Fixes #39375.

(cherry picked from commit e34f33711b)
2020-06-10 15:30:52 +02:00
Aaron Franke 0b6a410890 Change the default editor camera rotation to position it in +X +Y +Z
(cherry picked from commit 6c2df6792b)
2020-06-10 15:30:52 +02:00
Hugo Locurcio eb6c7ec09c Add an editor tooltip to document gizmo visibility options
See discussion in
https://github.com/godotengine/godot-proposals/issues/716.

(cherry picked from commit 138a4eecb3)
2020-06-10 15:30:52 +02:00
unknown 56da70f2e8 Removed variables and #include in EditorSceneImporterAssimp::import_scene that became unused after the recent commit ec1bf96(#39363).
(cherry picked from commit 365c35f30e)
2020-06-10 15:30:52 +02:00
Marcus Elg f1ca218ce7 Fix fbx import assimp error
(cherry picked from commit 29abbccc5f)
2020-06-10 15:30:52 +02:00
Giuliano Barberi 221051d523 Tree: Calling update in _gui_input less frequently
(cherry picked from commit d443a13244)
2020-06-10 15:30:51 +02:00
Fabio Alessandrelli b2c7f94ae2 Crypto as a custom instance class.
(cherry picked from commit 87cc283b8b)
2020-06-10 15:30:51 +02:00
Fabio Alessandrelli 402a7e0094 Fix editor crash when mbedtls is disabled.
(cherry picked from commit 054f52364f)
2020-06-10 15:30:51 +02:00
Tomasz Chabora e94aab7936 Restore capture caches when missing
(cherry picked from commit 642d91381a)
2020-06-10 15:30:51 +02:00
azagaya a6d8773d0b Fixing wrong blending rect methods
Using Color.blend function instead of custom code

Fixed clang_format

Removed unnecessary help

(cherry picked from commit b211a86ebe)
2020-06-10 15:30:51 +02:00
PouleyKetchoupp c63c902c74 Fix dialog spam when inspecting MeshInstance from model file
Avoid load_scene for built-in resources to make sure we don't
open a scene tab and prompt for model file editing.

Load scene as regular resource instead and store the reference to keep
the dependency until the remote inspector cache is cleared.

(cherry picked from commit 01802074a0)
2020-06-10 15:30:51 +02:00
Hugo Locurcio 6e8b5aff66 Add visual feedback when hovering layer checkboxes in the Inspector
This also changes how checkboxes are selected, which makes it possible
to click in the small area between two checkboxes and
still toggle a value successfully (which is arguably less frustrating).

(cherry picked from commit bbc435624f)
2020-06-10 15:30:51 +02:00
Rémi Verschelde c9a8309e73
Merge pull request #39169 from lawnjelly/light2d_layer_fix
3.2 Make Light2D respect CanvasLayer layer_min and layer_max
2020-06-10 13:35:37 +02:00
Rémi Verschelde 4f02fd7eca
Merge pull request #39426 from Rubonnek/unmatched-half-float
Fixed mismatched disable half float property string
2020-06-10 10:34:24 +02:00
Wilson E. Alvarez 782173f0dc
Fixed mismatched disable half float property string 2020-06-09 23:02:28 -04:00
Rémi Verschelde 9901eac9f5
Merge pull request #39400 from madmiraal/fix-39374-3.2
[3.2] Test collision mask before creating constraint pair in Godot physics broadphase 2D and 3D.
2020-06-09 13:38:11 +02:00
Marcel Admiraal 5794a4e11e Test collision mask before creating constraint pair in Godot physics
broadphase 2D and 3D.
2020-06-08 17:43:41 +01:00
Rémi Verschelde e891fae52b
Merge pull request #39134 from abustin/fbx_mesh_compression_fix
Respect 'mesh compression' editor import option in Assimp and glTF importers
2020-06-08 13:16:39 +02:00
Rémi Verschelde 3d48a87ecf
Merge pull request #39369 from mbrlabs/basis-fix
[3.2] Re-apply basis of newly added node (via drag-n-drop) in editor viewport
2020-06-08 08:23:57 +02:00
Rémi Verschelde 021d671889
Merge pull request #39376 from Calinou/doc-particles-shadows-aabb
Document enlarging Particles visibility AABB when they cast shadows
2020-06-08 08:17:07 +02:00
lawnjelly 1b5c4bc5b7 Make Light2D respect CanvasLayer layer_min and layer_max
As the masked light list takes no account of layer_min and layer_max, the canvas_layed_id is passed to the _light_mask_canvas_items function where it can be used to reject lights outside the layer range.
2020-06-08 05:41:18 +01:00
Hugo Locurcio 0832ecc4a3
Document enlarging Particles visibility AABB when they cast shadows
This closes https://github.com/godotengine/godot/issues/17267.
2020-06-07 21:35:40 +02:00
Marcus Brummer f8463df11a Re-apply basis of newly added node (via drag-n-drop) in editor viewport 2020-06-07 19:34:17 +02:00
Rémi Verschelde 6e1af78df4
Merge pull request #39068 from lawnjelly/kessel_settings_rename
Rename batching project settings in preparation for GLES3
2020-06-07 14:25:50 +02:00
Rémi Verschelde 776eb76018
Merge pull request #38995 from RandomShaper/shader_time_scale_3.2
Add shader time scaling (3.2)
2020-06-07 10:39:13 +02:00
Pedro J. Estébanez 1ff7b0a0a9 Add shader time scaling
Shaders' `TIME` will be affected by the new shader time scale, that is set via the also new `VisualServer::set_time_scale()`.
2020-06-06 23:59:48 +02:00
Rémi Verschelde 9f4a14ba97
Merge pull request #39319 from KoBeWi/this_should_do
Make sure built-in script warning fits in dialog
2020-06-05 14:56:08 +02:00
Tomasz Chabora 24872bffce Make sure built-in script warning fits in dialog 2020-06-05 14:40:08 +02:00
Hugo Locurcio aeb5513bab Tweak the GDScript error message about passed argument type mismatch
This makes it less confusing.

This closes https://github.com/godotengine/godot-proposals/issues/670.

(cherry picked from commit 30053de182)
2020-06-05 12:50:55 +02:00
Fabio Alessandrelli 8b321354d8 Swtich HTML5 key detection from keyCode to code.
The value of this, does not include the layout.
The code has extra logic to map the unicode value to our keylist,
supporting ASCII and Latin-1.

(cherry picked from commit 0a35b97b62
with help of https://github.com/Faless/godot/tree/js/keyCode)
2020-06-05 12:49:50 +02:00