Skip to content

chore: ignore the polyglot placeholder Eclipse creates - #1613

Merged
joaodinissf merged 1 commit into
masterfrom
chore/ignore-polyglot-placeholder
Nov 6, 2026
Merged

joaodinissf merged 1 commit into
masterfrom
chore/ignore-polyglot-placeholder

Conversation

@joaodinissf

@joaodinissf joaodinissf commented Nov 5, 2026 •

Copy link
Copy Markdown
Collaborator

Adds .polyglot.* to .gitignore, so the empty com.avaloq.tools.ddk.workflow/.polyglot.META-INF no longer shows up as an untracked file while the workspace is open in Eclipse.

The problem

With m2e installed, this empty file can appear in Git Staging and git status, where it's easy to commit by accident. Nobody has committed it to master so far.

Cause

  1. When a project has no pom.xml, m2e asks Maven's ModelProcessor to locate one (IMavenToolbox.locatePom). m2e's ProjectRegistryManager notes that "the file might be created by the locate call".
  2. The tycho-build extension in .mvn/extensions.xml brings in Tycho's pomless support, which is built on Maven polyglot. Polyglot's TeslaModelProcessor creates an empty placeholder and marks it deleteOnExit.
  3. In Eclipse that JVM is the IDE, so the file stays until the IDE exits and can come back in the next session.

Only com.avaloq.tools.ddk.workflow is affected, because it's the only bundle without a pom.xml. #1371 removed it because the bundle isn't in ddk-parent's <modules>, and the bundle is still used from Eclipse to regenerate the DDK languages.

I haven't pinned down exactly which IDE action triggers the lookup, and the file doesn't appear every time.

Why ignore it instead of restoring the pom.xml

Restoring the pom.xml would stop the placeholder, because m2e checks for that file first. But CI wouldn't build it, so its parent and bundle versions could go stale again, which is what prompted its removal in #1371.

Ignoring the file matches other Eclipse projects. .polyglot.* is in the root .gitignore of eclipse.platform, eclipse.pde, eclipse.jdt.core, equinox, lsp4e, cdt and tycho, and m2e-core ignores .polyglot*.

Testing

git check-ignore confirms the new rule matches com.avaloq.tools.ddk.workflow/.polyglot.META-INF. Only .gitignore changes, so build output is unaffected.

🤖 Generated with Claude Code

While the workspace is open in Eclipse with m2e, an empty
com.avaloq.tools.ddk.workflow/.polyglot.META-INF can appear as an
untracked file, where it's easy to commit by accident.

When a project has no pom.xml, m2e asks Maven's ModelProcessor to locate
one. The tycho-build extension in .mvn/extensions.xml brings in Tycho's
pomless support, which is built on Maven polyglot, and polyglot's
TeslaModelProcessor creates an empty placeholder with deleteOnExit. In
Eclipse that JVM is the IDE, so the file stays until the IDE exits and
can come back in the next session.

The workflow bundle is the only one this affects, because it's the only
bundle without a pom.xml. #1371 removed its pom.xml because the bundle
isn't in ddk-parent's <modules>. Restoring it would stop the placeholder,
but CI wouldn't build it, so its versions could go stale again.

Ignoring .polyglot.* matches other Eclipse projects, including
eclipse.platform, eclipse.pde, m2e-core and tycho.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@joaodinissf
joaodinissf added this pull request to the merge queue Nov 6, 2026
Merged via the queue into master with commit ba95184 Nov 6, 2026
4 checks passed
@joaodinissf
joaodinissf deleted the chore/ignore-polyglot-placeholder branch November 6, 2026 08:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants