-
Notifications
You must be signed in to change notification settings - Fork 211
Labels
breaking-changeIssues and PRs that are breaking to fix/merge.Issues and PRs that are breaking to fix/merge.bugc: bindingsComponent: GDNative bindings (mod api)Component: GDNative bindings (mod api)c: coreComponent: core (mod core_types, object, log, init, ...)Component: core (mod core_types, object, log, init, ...)
Milestone
Description
Symbols are often accessible from a large number of modules.
Example Vector3 (a manually declared type):

Example Node (a GDNative auto-generated type):

This is confusing as to which symbol is "the right one" and adds redundancy without benefit. It can also make auto-complete in IDEs harder to use and leads to inconsistent use statements.
Goals:
- For each symbol, work out one canonical module (e.g.
Vector3->core_typesorcore_types::geom) - Remove all non-canonical, non-prelude modules, in particular:
- Ones existing only due to file structure, as in
gdnative::api::node::Node - Nested ones inside
prelude
- Ones existing only due to file structure, as in
- Review
prelude(possibly out of scope)
This may break use statements in client code and will thus target v0.10.
Waridley
Metadata
Metadata
Assignees
Labels
breaking-changeIssues and PRs that are breaking to fix/merge.Issues and PRs that are breaking to fix/merge.bugc: bindingsComponent: GDNative bindings (mod api)Component: GDNative bindings (mod api)c: coreComponent: core (mod core_types, object, log, init, ...)Component: core (mod core_types, object, log, init, ...)