393 Commits

Author SHA1 Message Date
06a0eface3 macOS: Fix support for latest VulkanSDK .app name in install script
(cherry picked from commit efde4ae853)
2025-05-06 19:05:20 +02:00
9a8b5848d8 Style: Apply fixes from black and codespell 2025-04-25 16:09:46 +02:00
e7d56e32fd Update MoltenVK install script to include version number in installer name.
(cherry picked from commit c63955b3eb)
2025-03-04 15:52:43 +01:00
f990a2875d [Misc] Check for the available and installed Vulkan SDK versions before downloading and installing.
(cherry picked from commit db1c1d43e3)
2025-03-04 15:52:42 +01:00
6f6154d3b1 [macOS] Update Vulkan SDK install script.
(cherry picked from commit 74df6f192a)
2024-11-05 17:03:13 +01:00
1088dd5c33 Bump version to 4.0.5-rc
We don't necessarily plan a 4.0.5 release at this stage, but might still do
some cherrypicks for critical issues.
2023-10-25 14:27:02 +02:00
0164b293f0 Update codespell and add new exceptions 2023-06-29 16:22:29 +02:00
97631f8aa9 Bump version to 4.0.4-rc
Error: Godot not found.
2023-05-19 09:39:54 +02:00
47b3f95874 CI: Make codespell checks blocking, but only check changed files
(cherry picked from commit b226f7e587)
2023-05-12 13:56:49 +02:00
f241b17804 CI: Speed up static checks by checking only changed files
- file_format, header_guards and clang-format benefit from this short list.
- dotnet-format, Python and JS checks don't, but they're only relevant for
  PRs changing a specific set of files, so we skip them when those files
  aren't modified.

The logic to get changed files only works reliably for:
- Pull request events
- Non-force pushed push events

So when force pushing a branch in your fork, or creating a new branch,
it will still scan all files as fallback.

Upgraded CI runner to Ubuntu 22.04 so we get clang-format 14 out of the box,
so we don't need to install a custom version (saves ~15 s). We also cache
the APT dependencies to speed up the build and avoid flaky Ubuntu/Microsoft
repos.

(cherry picked from commit 068f893072)
2023-04-26 14:18:38 +02:00
2805f7b36d CI: Visibly print trailing whitespace when static checks fail
GitHub Actions seems to be hiding colored whitespace, and after lots of
attempts I couldn't find a way to work it around.

So instead I'm using a perl expression to replace trailing spaces with
`·` and tabs with `<TAB>` in the ANSI colored diff output. This ensure
that they're visible, and they are properly colored as expected too.

(cherry picked from commit 266280ffca)
2023-04-07 17:44:39 +02:00
4762303f18 Bump version to 4.0.3-rc 2023-04-04 10:50:01 +02:00
b912905d23 Fix xml namespace in org.godotengine.Godot.xml
(cherry picked from commit 1ba14e838a)
2023-04-03 18:35:30 +02:00
c9ee508089 Bump version to 4.0.2-rc 2023-03-30 21:41:11 +02:00
284a1b6a6e Bump version to 4.0.1-rc 2023-03-01 14:09:30 +01:00
92bee43adb Bump version to 4.0-stable \o/
4 years of development.
12,000 merged pull requests.
7,000 fixed issues.
1,500 individual contributors across engine and docs.

The Godot 4.0 release is by all metrics our biggest release so far.
No stone has been left unturned, all parts of the engine have been
modernized, refactored, overhauled, rewritten, redesigned.

Our work is far from done. Many areas still have significant known issues,
and will require focused work from all willing contributors to fix blocking
bugs, implement missing features, optimize for performance or compatibility,
and improve the user experience.

But Godot 4.0 marks the start of the new, modern Godot Engine, and a solid
foundation for us all to build upon. Future 4.x releases will come with a
much faster cadence, enabling us to iterate quickly on new features and
improvements to what we already provide.

To all of you who were involved in making Godot 4.0 what it is today, however
big or small your contributions were:

THANK YOU!

This was a massive undertaking, and you all participated in unique and
wonderful ways to build a free and open source game engine for everyone to
use and enjoy. You are breathtaking! <3
2023-03-01 01:38:07 +01:00
491ded1898 Minor typo and docs URL fixes 2023-02-28 13:38:01 +01:00
e1d3e18322 [iOS] Fix Xcode project file list. 2023-02-22 13:37:41 +02:00
37d68929e8 Fix .gitignore ignores part of the committed repo. 2023-02-17 13:48:16 +01:00
da124e9d04 CI: Remove custom Linux deps and SwiftShader
The default environment already includes everything we need to build
all our configurations.

Remove custom SwiftShader setup as lavapipe should now be good enough,
but we need to install the latest one.
2023-02-06 18:21:15 +01:00
e52213e2fa More codespell fixes, do more changes from previous ignore list 2023-02-01 12:11:36 +01:00
394bb0ee2b Fix various typos with codespell
Finally do the childs -> children rename too.
2023-02-01 08:45:41 +01:00
312011fade Fix various typos with codespell
And include #72377.

Co-authored-by: Wiktor Kocielski <withaust@gmail.com>
2023-01-30 14:22:47 +01:00
5b1df48c6c Convert en_GB spelling to en_US with codespell 2023-01-23 11:02:20 +01:00
9ab6fd592e [Git hooks] Add AppleScript dialog script for macOS. 2023-01-16 14:23:06 +02:00
06450bfb0f Fix file formatting script dependencies and cleanup 2023-01-12 16:25:21 -06:00
8a360bc9a3 [iOS] Move name and version information to the Xcode project. 2023-01-10 08:56:45 +02:00
d95794ec8a One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
c6498b0f1f [CI] Use multiple forced unmount attempts for MoltenVK image. 2023-01-03 11:16:30 +02:00
de5aaf1d13 CI: Fix dumping GDExtension interface and API for godot-cpp
Follow-up to https://github.com/godotengine/godot-cpp/pull/960.

Fix exit code for --dump-extension-api and --dump-gdextension-interface.

Removed the planned API validation step as we still didn't implement
anything, and maintaining a stub isn't useful.
2022-12-14 16:42:14 +01:00
be1c9d677d Rename all gdnative occurences to gdextension
Non-exhaustive list of case-sensitive renames:

GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension ->Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
2022-12-12 11:04:57 +01:00
e6d8357685 Improve command line help to fit on narrower displays
- Update shell completions to reference recently added CLI arguments.
2022-12-04 19:36:28 +01:00
b7667e6a47 Merge pull request #69110 from bruvzg/con_icon2
[Windows] Optimize editor icon, use different icon for console executable.
2022-11-29 10:26:47 +01:00
42c2c02acf [Windows] Optimize editor icon, use different icon for console executable. 2022-11-29 09:39:03 +02:00
23f3adb7a0 Merge pull request #67815 from Calinou/html5-improve-feature-errors
Improve feature errors in HTML5 for easier understanding
2022-11-28 08:40:39 +01:00
7467067d23 [iOS] iOS export improvements.
Add export options to set Settings and Notification icons on export.
Automatically fill background of the app store icon instead of failing (with warning).
Update development region to use `en` instead of `English`.
2022-11-17 12:06:15 +02:00
10eaf0c52b Add an exception for thirdparty subdirectories in file_format.sh
This exception is also present in clang_format.sh and is needed in some
cases.
2022-11-13 01:05:55 +01:00
e5950c5c1c Merge pull request #60273 from Calinou/cli-export-release-rename
Rename `--export` command line argument to `--export-release`
2022-11-02 22:36:40 +01:00
6b0f7e9da9 Rename --export command line argument to --export-release
This makes the action of exporting to release mode more explicit.
2022-11-02 19:42:46 +01:00
f7c611ab71 Style: Misc docs and comment style and language fixes
- Removed empty paragraphs in XML.
- Consistently use bold style for "Example:", on a new line.
- Fix usage of `[code]` when hyperlinks could be used (`[member]`, `[constant]`).
- Fix invalid usage of backticks for inline code in BBCode.
- Fix some American/British English spelling inconsistencies.
- Other minor fixes spotted along the way, including typo fixes with codespell.
- Don't specify `@GlobalScope` for `enum` and `constant`.
2022-11-02 19:01:18 +01:00
601c42be66 Add ProMotion Support to iOS Exports 2022-10-31 09:33:39 -04:00
6946bc56ef Merge pull request #67309 from groud/implement_gdnative_interface_h_dump
Implement a way to dump the gdnative_interface.h file from the executable
2022-10-31 11:54:38 +01:00
8fcd54d13e Improve feature errors in HTML5 for easier understanding 2022-10-23 19:13:42 +02:00
55010a2d9f Implement a way to dump the gdnative_interface.h file from the executable 2022-10-13 10:03:30 +02:00
7def4c84be Fix dotnet format
It was failing due to generated files being referenced in
.NET projects but the files are missing because they are
generated by `godot --generate-mono-glue` or
`build_assemblies.py`.
2022-10-12 15:55:10 +02:00
9a653ebeac [Web] Add auto-formatting to HTML files.
Uses html-eslint for HTML file and eslint-plugin-html for inline
JavaScript.

Use HTML5 (not XHTML), remove CDATA and trailing slashes for self
closing tags.

Add format checks to CI.
2022-10-11 19:42:12 +02:00
ef8834a642 Merge pull request #64784 from yedpodtrzitko/yed/ci-add-mypy
ci: add Python static analysis check via mypy
2022-09-30 17:44:39 +02:00
166df0896c Fix typos with codespell
Using codespell 2.3-dev from current git.

And fix typo in `methods.py` for `vsproj=yes` option (still won't work
though).
2022-09-30 14:23:36 +02:00
c5bd2f9dce ci: add Python static analysis check via mypy 2022-09-30 19:03:17 +07:00
39facb35a0 SCons: Unify tools/target build type configuration
Implements https://github.com/godotengine/godot-proposals/issues/3371.

New `target` presets
====================

The `tools` option is removed and `target` changes to use three new presets,
which match the builds users are familiar with. These targets control the
default optimization level and enable editor-specific and debugging code:

- `editor`: Replaces `tools=yes target=release_debug`.
  * Defines: `TOOLS_ENABLED`, `DEBUG_ENABLED`, `-O2`/`/O2`
- `template_debug`: Replaces `tools=no target=release_debug`.
  * Defines: `DEBUG_ENABLED`, `-O2`/`/O2`
- `template_release`: Replaces `tools=no target=release`.
  * Defines: `-O3`/`/O2`

New `dev_build` option
======================

The previous `target=debug` is now replaced by a separate `dev_build=yes`
option, which can be used in combination with either of the three targets,
and changes the following:

- `dev_build`: Defines `DEV_ENABLED`, disables optimization (`-O0`/`/0d`),
  enables generating debug symbols, does not define `NDEBUG` so `assert()`
  works in thirdparty libraries, adds a `.dev` suffix to the binary name.

Note: Unlike previously, `dev_build` defaults to off so that users who
compile Godot from source get an optimized and small build by default.
Engine contributors should now set `dev_build=yes` in their build scripts or
IDE configuration manually.

Changed binary names
====================

The name of generated binaries and object files are changed too, to follow
this format:

`godot.<platform>.<target>[.dev][.double].<arch>[.<extra_suffix>][.<ext>]`

For example:
- `godot.linuxbsd.editor.dev.arm64`
- `godot.windows.template_release.double.x86_64.mono.exe`

Be sure to update your links/scripts/IDE config accordingly.

More flexible `optimize` and `debug_symbols` options
====================================================

The optimization level and whether to generate debug symbols can be further
specified with the `optimize` and `debug_symbols` options. So the default
values listed above for the various `target` and `dev_build` combinations
are indicative and can be replaced when compiling, e.g.:

`scons p=linuxbsd target=template_debug dev_build=yes optimize=debug`
will make a "debug" export template with dev-only code enabled, `-Og`
optimization level for GCC/Clang, and debug symbols. Perfect for debugging
complex crashes at runtime in an exported project.
2022-09-26 16:31:46 +02:00