Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

`unused-alias` reports an alias that is used only in the type of an atom or a void

Open Beginner friendly
#1,607 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 2 days

@StanislavKozachenko is already working on this.

Since Oct 28, 2026.

  • #1609 by @StanislavKozachenko — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
java, xml
Domain
tooling

Research direction

Read aliases/unused-alias.xsl and the reproduction pack in packs/single/unused-alias/. Start by checking how the alias usage test handles @atom and @type alongside @base. Update the usage check so aliases referenced by atom and void attribute types count as used, then run the pack and confirm it reports zero defects.

Written by the indexing model from the issue text.

Description

bug

aliases/unused-alias.xsl:15 counts an alias as used only when some o/@base equals it or starts with it:

<xsl:if test="count(//o[@base=$name or starts-with(@base, concat($name, '.'))])=0">

A type of an atom or of a void attribute is written to @atom and @type, not to @base. So an alias that is needed only there is reported as unused, though without it /thing resolves to Φ.thing, not to Φ.org.example.thing.

Steps to reproduce

On master 8c3474dc6eb341cb4968c8dd299ca2b0dba151c0, a pack in packs/single/unused-alias/:

sheets:
  - /org/eolang/lints/aliases/unused-alias.xsl
defects: 0
input: |
  +alias org.example.thing
  +rt jvm org.example:thing:0.0.1

  [] > app /thing
    ? > x /thing

The XMIR holds <o atom="Φ.org.example.thing" name="λ"/> and <o base="∅" name="x" type="Φ.org.example.thing"/>.

Actual result
<defect line="1" severity="error">The alias "Φ.org.example.thing" is not used, but defined as "thing⌴Φ.org.example.thing"</defect>
Expected result

No defect: the alias is used, in the type of the atom app and of the void x. With thing > @ instead of the atom, the same alias is not reported. The motive says "All defined object aliases must be used", and this one is.

Dominant language
Java
Stars
14
Forks
41
Avg merge
2d 17h
Merged PRs (30d)
30

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from objectionary/lints

All issues in objectionary/lints

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.