You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jul 29, 2026. It is now read-only.
The C++ namespace helios::core::units should be moved to helios::engine::core::units to be consistent with the engine module hierarchy. The module name (helios.core.units.Unit) is already correct and does not need to change.
Motivation
All engine-level types live under helios::engine::*. The units namespace currently breaks this convention by residing directly under helios::core::units, even though the file physically lives in include/helios/engine/core/units/.
Module name helios.core.units.Unit — already correct
Module partition include/helios/engine/core/units/_module.ixx — export import remains the same
Files that only use import helios.core.units.Unit without namespace references (e.g., Bounds.ixx, ChaseSystem.ixx, Move2DComponent.ixx, etc.) — these only need the namespace update if they reference the namespace directly
Checklist
Rename namespace in Unit.ixx to helios::engine::core::units
Update all .ixx files with qualified namespace references
Summary
The C++ namespace
helios::core::unitsshould be moved tohelios::engine::core::unitsto be consistent with the engine module hierarchy. The module name (helios.core.units.Unit) is already correct and does not need to change.Motivation
All engine-level types live under
helios::engine::*. Theunitsnamespace currently breaks this convention by residing directly underhelios::core::units, even though the file physically lives ininclude/helios/engine/core/units/.Scope of Change
Namespace rename
include/helios/engine/core/units/Unit.ixxFiles requiring
namespaceupdatesThe following files reference
helios::core::unitsand need updating:Engine headers (
.ixx)include/helios/engine/runtime/world/Level.ixxhelios::core::units::Unit,helios::core::units::from()include/helios/engine/modules/spatial/transform/components/ScaleStateComponent.ixxhelios::core::units::Unit(member, params, return type)include/helios/engine/modules/spatial/transform/systems/ScaleSystem.ixxhelios::core::units::from()include/helios/engine/builder/gameObject/builders/configs/TransformConfig.ixxhelios::core::units::Unit(default param)Tests
tests/helios/core/units.test.cppusing namespace helios::core::unitsExamples
examples/scoring_demo/Namespaces.husing namespace helios::core::unitsexamples/runtime_test/main.cppusing namespace helios::core::unitsexamples/spaceship_shooting/main.cppexamples/spaceship_control/main.cppexamples/enemy_spawn/main.cppexamples/collision_detection/main.cppBenchmarks
benchmarks/helios/engine/ecs/EntityComponent.benchmark.cppimport helios.core.units.UnitDocumentation
docs/core-concepts/conventions.mdimportand namespacedocs/heliosapi.mdimportNo changes needed
helios.core.units.Unit— already correctinclude/helios/engine/core/units/_module.ixx—export importremains the sameimport helios.core.units.Unitwithout namespace references (e.g.,Bounds.ixx,ChaseSystem.ixx,Move2DComponent.ixx, etc.) — these only need the namespace update if they reference the namespace directlyChecklist
Unit.ixxtohelios::engine::core::units.ixxfiles with qualified namespace referencesconventions.md,heliosapi.md)CHANGELOG.mdunder[Unreleased]