A project contains a path variable named PARENT-2-PROJECT_LOC.
The variable is visible under:
Project Properties -> Resource -> Linked Resources -> Path Variables
It can be selected and removed in the UI, but when pressing Apply, Eclipse reports:
Path variable name cannot contain character: '-'.
As a result, the variable cannot be removed through the GUI and the only workaround is to manually edit .project.
This is especially problematic because PARENT-2-PROJECT_LOC also has special meaning to the Eclipse path-variable resolver. A stale project variable with this name can shadow the dynamically resolved value.
Example:
PROJECT_LOC = C:\Workspace\CurrentProject\Software\App\IDE_Project
Expected:
PARENT-2-PROJECT_LOC = C:\Workspace\CurrentProject\Software
Actual stale value:
PARENT-2-PROJECT_LOC = C:\Workspace\OldProject\Software
The GUI allows requesting removal of the variable, but applying the change fails because the variable-name validator rejects the - characters.
Expected behavior:
The UI/API should allow deletion of an existing variable even if its name is no longer considered valid, or PARENT-N-* variables should be handled specially so that this invalid state cannot occur.
Workaround:
Manually remove the corresponding variable entry from .project.
Environment:
STM32CubeIDE 1.18.1 / Windows
Eclipse Platform version: [insert version]
Additional note:
Creation/update validation and deletion validation should not necessarily be identical. If an invalid or legacy variable already exists, the UI must still provide a way to remove it.
A project contains a path variable named PARENT-2-PROJECT_LOC.
The variable is visible under:
Project Properties -> Resource -> Linked Resources -> Path Variables
It can be selected and removed in the UI, but when pressing Apply, Eclipse reports:
Path variable name cannot contain character: '-'.
As a result, the variable cannot be removed through the GUI and the only workaround is to manually edit .project.
This is especially problematic because PARENT-2-PROJECT_LOC also has special meaning to the Eclipse path-variable resolver. A stale project variable with this name can shadow the dynamically resolved value.
Example:
PROJECT_LOC = C:\Workspace\CurrentProject\Software\App\IDE_Project
Expected:
PARENT-2-PROJECT_LOC = C:\Workspace\CurrentProject\Software
Actual stale value:
PARENT-2-PROJECT_LOC = C:\Workspace\OldProject\Software
The GUI allows requesting removal of the variable, but applying the change fails because the variable-name validator rejects the - characters.
Expected behavior:
The UI/API should allow deletion of an existing variable even if its name is no longer considered valid, or PARENT-N-* variables should be handled specially so that this invalid state cannot occur.
Workaround:
Manually remove the corresponding variable entry from .project.
Environment:
STM32CubeIDE 1.18.1 / Windows
Eclipse Platform version: [insert version]
Additional note:
Creation/update validation and deletion validation should not necessarily be identical. If an invalid or legacy variable already exists, the UI must still provide a way to remove it.