Skip to content

Stop referring to GDExtension as experimental #10827

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions tutorials/migrating/upgrading_to_godot_4.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -242,9 +242,6 @@ Multiple layered ``SubViewportContainer`` nodes, that should all receive mouse i
Updating your GDExtension for 4.1
---------------------------------

GDExtension is still in beta. Until it's marked as stable, compatibility may break when
upgrading to a new minor version of Godot.

In order to fix a serious bug, in Godot 4.1 we had to break binary compatibility in a big
way and source compatibility in a small way.

Expand Down
14 changes: 6 additions & 8 deletions tutorials/scripting/gdextension/gdextension_cpp_example.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,14 +44,12 @@ of Godot. GDExtensions will not work in older versions of Godot (only Godot 4 an
to work with Godot's ``master`` branch.

.. warning::
Our long-term goal is that GDExtensions targeting an earlier version of Godot will work
in later minor versions, but not vice-versa. For example, a GDExtension targeting Godot 4.1
should work just fine in Godot 4.2, but one targeting Godot 4.2 won't work in Godot 4.1.

However, GDExtension is currently *experimental*, which means that we may break compatibility
in order to fix major bugs or include critical features. For example, GDExtensions created
for Godot 4.0 aren't compatible with Godot 4.1
(see :ref:`updating_your_gdextension_for_godot_4_1`).
GDExtensions targeting an earlier version of Godot should work in later
minor versions, but not vice-versa. For example, a GDExtension targeting Godot 4.2
should work just fine in Godot 4.3, but one targeting Godot 4.3 won't work in Godot 4.2.

There is one exception to this: extensions targeting Godot 4.0 will _not_ work with
Godot 4.1 and later (see :ref:`updating_your_gdextension_for_godot_4_1`).

If you are versioning your project using Git, it is recommended to add it as
a Git submodule:
Expand Down
13 changes: 3 additions & 10 deletions tutorials/scripting/gdextension/what_is_gdextension.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,6 @@ run C or C++ code in a Godot project.
They also both allow you to integrate third-party libraries into Godot. The one
you should choose depends on your needs.

.. warning::

GDExtension is currently *experimental*, which means that we may
break compatibility in order to fix major bugs or include critical features.

Advantages of GDExtension
~~~~~~~~~~~~~~~~~~~~~~~~~

Expand Down Expand Up @@ -106,18 +101,16 @@ The bindings below are developed and maintained by the community:
Version compatibility
---------------------

Usually, GDExtensions targeting an earlier version of Godot will work in later
GDExtensions targeting an earlier version of Godot should work in later
minor versions, but not vice-versa. For example, a GDExtension targeting Godot 4.2
should work just fine in Godot 4.3, but one targeting Godot 4.3 won't work in Godot 4.2.

For this reason, when creating GDExtensions, you may want to target the lowest version of
Godot that has the features you need, *not* the most recent version of Godot. This can
save you from needing to create multiple builds for different versions of Godot.

However, GDExtension is currently *experimental*, which means that we may
break compatibility in order to fix major bugs or include critical features.
For example, GDExtensions created for Godot 4.0 aren't compatible with Godot
4.1 (see :ref:`updating_your_gdextension_for_godot_4_1`).
There is one exception to this: extensions targeting Godot 4.0 will _not_ work with
Godot 4.1 and later (see :ref:`updating_your_gdextension_for_godot_4_1`).

GDExtensions are also only compatible with engine builds that use the same
level of floating-point precision the extension was compiled for. This means
Expand Down
Loading