Skip to content

Linked Resources: PARENT-N-PROJECT_LOC variable cannot be removed because '-' is rejected on Apply #4351

Description

@AntonDrubetskiy

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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions