The validation logic for Min Sdk and Target Sdk was flawed as it triggers
errors for users not using Custom Build even if they never modified the
values themselves.
The default values for those settings get saved in `export_presets.cfg` and
thus the error gets triggered when moving from 3.4.4 or earlier to 3.4.5, as
the target SDK changed from 30 to 31.
So instead we just show a warning to make users aware of this non-default
Min Sdk or mostly Target Sdk that might be in their preset.
We also warn when they do use Custom Build as the target SDK 30 would likely
still be an upgrade issue and not an intentional choice, especially given
that Google Play will now require SDK 31.
The export info dialog is now exclusive so that when it doesn't auto-close,
i.e. when it errors, you don't close it by mistake by clicking outside.
The valid range for both options is no longer limited to Godot's own default
target SDK, but can accept higher values (they are not guaranteed to work,
but they might).
To be able to display warning, the relevant code is backported from 30ee208bd.
Fixes#62465 without breaking compatibility for 3.4.5.
Happy new year to the wonderful Godot community!
2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.
We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)
Here's to a great year 2021 for all Godot users 🎆
(cherry picked from commit b5334d14f7)
Happy new year to the wonderful Godot community!
We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.
Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
This swaps out the CheckButton with a CheckBox, which has two benefits:
- The checkbox icon appears to the left of the text, which moves it
closer from the text. This makes it more easily noticeable, as
it also appears below the "File:" text now.
- It follows the UI convention of using checkboxes for options that
do not bear an immediate effect, unlike CheckButtons which are
expected to have an immediate effect when toggled.
This closes#25170.
Retrieved working implementation from 2.1 branch and adapted to
existing export preset system.
Added Script tab in export preset to export script as raw text,
compiled, or encrypted (same as in 2.1). The script encryption key is
visually validated. The script export mode and the key is saved per
per preset in `export_presets.cfg`, so it makes sense to ignore this
file in version control system.
Each custom exporting procedure can retrieve an export preset set
during project exporting. Refactored project export dialog a bit to
allow easier code comprehension.
Otherwise one could quite easily end up with the exported game
being hidden files named ".x86_64" and ".pck" for example.
Also improved the default filename logic a bit to also include
extension, and never fallback to an empty string.
Also fixed being able to click "Export project" without selecting
a preset.
Thanks to @ibrahn for helping debug the crashes caused in ProjectExportDialog
by the stray `update_tree()` call, no longer needed in the new inspector.
Add debug flag to the 'Export PCK/ZIP' option
Make 'Export PCK/ZIP' notify when the export process begins. This is necessary to receive the 'EditorExportPlugin::_export_begin' callback
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
This caused issues if one decided to export many formats in a row.
The new file extension would be appended to the previous one.
Now, the filename is retained without its extension for successive exports.
Fixes#7291
I can show you the code
Pretty, with proper whitespace
Tell me, coder, now when did
You last write readable code?
I can open your eyes
Make you see your bad indent
Force you to respect the style
The core devs agreed upon
A whole new world
A new fantastic code format
A de facto standard
With some sugar
Enforced with clang-format
A whole new world
A dazzling style we all dreamed of
And when we read it through
It's crystal clear
That now we're in a whole new world of code
The other subfolders of tools/ had already been moved to either
editor/, misc/ or thirdparty/, so the hiding the editor code that
deep was no longer meaningful.