summaryrefslogtreecommitdiffstats
path: root/.github
Commit message (Collapse)AuthorAgeFilesLines
* Fix file formatting script dependencies and cleanupAaron Franke2023-01-121-1/+1
|
* CI: Use clang-format 15Rémi Verschelde2023-01-101-3/+3
| | | | No change compared to version 13 in our codebase.
* CI: Fix dumping GDExtension interface and API for godot-cppRémi Verschelde2022-12-141-12/+5
| | | | | | | | | 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.
* Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextensionRémi Verschelde2022-12-122-3/+2
|\ | | | | | | Rename all gdnative occurences to gdextension
| * Rename all gdnative occurences to gdextensionGilles Roudière2022-12-122-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Rename `float=64` SCons option to `precision=double`Hugo Locurcio2022-12-101-2/+2
|/ | | | | This avoids confusion with the old `bits=64` option and building for 64-bit CPUs in general.
* Emphasize the importance of uploading a minimal reproduction projectHugo Locurcio2022-11-171-2/+5
| | | | | | The field is now required, but "N/A" can be manually entered if the reproduction steps are trivial and don't require any project files to be followed.
* Merge pull request #68543 from DarkKilauea/msvc-problem-matcherRémi Verschelde2022-11-111-1/+3
|\
| * Add MSVC problem matcher to CIJosh Jones2022-11-111-1/+3
| |
* | Add GCC problem matcher to CIRaul Santos2022-11-111-0/+3
| |
* | Mention .godot folder in issue templatekobewi2022-11-111-1/+1
|/
* Add rendering team as GLES3 CODEOWNERclayjohn2022-11-021-0/+1
|
* Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg2022-10-071-1/+1
| | | | change warnings=all to use /W4.
* Various enhancements to Visual Studio solution generation.TechnoPorg2022-10-041-1/+1
| | | | | This adds support for building solutions with dev_mode and/or float=64 enabled. Additionally, it adds solution generation to the Windows CI to catch future regressions.
* CI: Update target for godot-cpp after ↵Rémi Verschelde2022-10-041-1/+1
| | | | https://github.com/godotengine/godot-cpp/pull/867
* Fix CODEOWNERS and fix missing quote in "Building for platform" messageAaron Franke2022-10-011-2/+2
|
* ci: add Python static analysis check via mypyJiri Suchan2022-09-301-1/+5
|
* SCons: Unify tools/target build type configurationRémi Verschelde2022-09-267-61/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Further cleanup of VisualScript referencesRedMser2022-09-191-1/+0
|
* CI: Downgrade Emscripten to 3.1.18Rémi Verschelde2022-09-091-1/+1
| | | | | Emscripten 3.1.19 and 3.1.20 have a showstopping regression that breaks calling our main function for the editor build.
* Fix UTF-8 validation in static checksGergely Kis2022-09-051-2/+2
| | | | | | | Use isutf8 instead of recode to detect invalid UTF-8 sequences. Also add the necessary dependencies to run the static checks locally using act (https://github.com/nektos/act) with the Medium size image.
* [Web] Require threads, rtti, allow optimize=speed.Fabio Alessandrelli2022-08-301-1/+1
| | | | | | | Update export names (web[_dlink]_[release|debug].zip). The Build with dynamic linking is broken due to high number of imports in output wasm (likely emscripten regression issue 15487).
* [Web] Rename JavaScript platform to Web.Fabio Alessandrelli2022-08-292-5/+5
| | | | Also rename export name from "HTML5" to "Web".
* Add `dotnet format` to CI to check C# styleRaul Santos2022-08-271-0/+4
|
* CI: Remove unnecessary extra cache step for EmscriptenRémi Verschelde2022-08-251-8/+0
| | | | Co-authored-by: Fabio Alessandrelli <fabio.alessandrelli@gmail.com>
* CI: Bump various GitHub actions to latest versionsRémi Verschelde2022-08-259-17/+18
| | | | | | | | | | | | actions/cache@v3 actions/checkout@v3 actions/upload-artifact@v3 actions/setup-dotnet@v2 actions/setup-java@v3 actions/setup-python@v4 mymindstorm/setup-emsdk@v11 Also reset cache keys as we're going to cleanup all caches.
* Unify bits, arch, and android_arch into env["arch"]Aaron Franke2022-08-255-10/+10
| | | | | | Fully removes the `bits` option and adapts the code that relied on it. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* CI: Remove second build with mono_glue=yesIgnacio Roldán Etcheverry2022-08-231-12/+2
| | | | | | | | A second build is no longer needed. It was resulting in a null build that still took more than 1 minute of CI time. Also removed other usages of `mono_glue=no` and `mono_static=yes`, as these options no longer exist.
* Merge pull request #62545 from yedpodtrzitko/yed/pytest-buildersRémi Verschelde2022-08-221-5/+9
|\
| * ci: add basic test pipeline for shader buildersJiri Suchan2022-08-191-1/+5
| |
| * ci: move slowest static job to the end of pipelineJiri Suchan2022-08-191-4/+4
| |
* | C#: Upgrade to .NET 6 (5.0 -> 6.0)Ignacio Roldán Etcheverry2022-08-221-1/+1
| |
* | CI: Setup .NET Sdk to fix CI and build C# code as wellIgnacio Roldán Etcheverry2022-08-221-2/+15
|/
* Check also GLES3 in CIRafał Mikrut2022-08-061-1/+7
|
* create vector4, vector4i and projection for csharpantonWetzel2022-07-311-33/+6
|
* CI: Link MoltenVK statically on macOSRémi Verschelde2022-07-292-1/+7
| | | | | | Same as done for official builds. Also make artifacts executable before zipping.
* Implement support for loading system fonts on Linux, macOS / iOS and Windows.bruvzg2022-07-261-1/+1
|
* Code quality: Fix header guards consistencyRémi Verschelde2022-07-251-0/+4
| | | | | Adds `header_guards.sh` bash script, used in CI to validate future changes. Can be run locally to fix invalid header guards.
* Implement Vector4, Vector4i, Projectionreduz2022-07-231-6/+33
| | | | | | | | | | | | | Implement built-in classes Vector4, Vector4i and Projection. * Two versions of Vector4 (float and integer). * A Projection class, which is a 4x4 matrix specialized in projection types. These types have been requested for a long time, but given they were very corner case they were not added before. Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity. **Q**: Why Projection and not Matrix4? **A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
* SCons: Refactor Linux linker options with `linker=<bfd|gold|lld|mold>`Rémi Verschelde2022-07-221-4/+4
| | | | | | | | | | | | | | | | | | | | | The new option is `linker` and lets the user specify the argument to the`-fuse_ld=` linker flag directly. The supported options are: - `default`: No change, typically uses GNU ld (bfd) unless the user or distro picked a different default `/usr/bin/ld`. - `bfd`: GNU ld from binutils - `gold`: GNU gold from binutils - `lld`: lld from LLVM - `mold`: mold, an extremely fast modern linker, not (yet) intended for use in production but great for development speed. Provided by distro `mold` package or needs to be compiled from source and installed to `/usr` otherwise. Removes the `use_lld=yes` option, and make lld actually usable with GCC too. Not all the above are compatible or recommend for LTO, we recommend using GNU ld with GCC LTO, or lld with LLVM ThinLTO.
* Merge pull request #63225 from bruvzg/mac_renameRémi Verschelde2022-07-213-5/+5
|\
| * Rename OSX to macOS and iPhoneOS to iOS.bruvzg2022-07-213-5/+5
| |
* | CI: Use Gold (GCC) and LLD (Clang) as linker for Linux sanitizers buildsRémi Verschelde2022-07-211-4/+4
|/ | | | | They're very memory hungry to a point where GNU ld can crash on CI. Both Gold and LLD should be nicer to RAM and thus a safer option.
* Revert "CI: Disable Linux GCC ASAN temporarily"Riteo2022-07-201-2/+2
| | | | | | This reverts commit 04e955841f43efc13f90f6edf457ad7867418202. It looks like we can just remove `-pipe` for the CI to complete.
* CI: Disable Linux GCC ASAN temporarilyRémi Verschelde2022-07-201-2/+2
| | | Another attempt at fixing CI which seems to get a linker crash since today (likely OOM).
* SCons: Default `num_jobs` to max CPUs minus 1 if not specifiedRémi Verschelde2022-07-172-2/+2
| | | | | | | | | | | | | This doesn't change the behavior when `--jobs`/`-j` is specified as a command-line argument or in `SCONSFLAGS`. The SCons hack used to know if `num_jobs` was set by the user is derived from the MongoDB setup. We use `os.cpu_count()` for portability (available since Python 3.4). With 4 CPUs or less, we use the max. With more than 4 we use max - 1 to preserve some bandwidth for the user's other programs.
* [macOS] Use statically linked MoltenVK by default, automatically detect ↵bruvzg2022-07-031-1/+1
| | | | MoltenVK SDK install (only in the default location).
* Fix exit code of --help and --version, and test them in CIJan Haller2022-07-023-0/+6
| | | | Corrects prior regression which caused ERROR output and exit code of 1.
* Rewrite PR template to make it slightly less verboseRémi Verschelde2022-06-281-8/+4
|
* Add Godot 3.x -> Godot 4.x project converterRafał Mikrut2022-06-151-0/+12
|