`invalid-name-notation` does not check a name bound with `>>`
Maintainers usually reply within 2 days
@StanislavKozachenko is already working on this.
Since Oct 28, 2026.
- #1610 by @StanislavKozachenko — open
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 78/100
Research direction
Read names/invalid-name-notation.xsl:15 and compare how design/broad-scope.xsl:35 and design/misplaced-dataization.xsl:20 select names. Use the reproduction pack in packs/single/invalid-name-notation/ to check the case where the bound name is in @local; done means it reports one warning at line 3, matching the stated naming rule.
Written by the indexing model from the issue text.
Description
names/invalid-name-notation.xsl:15 checks @name only. The parser puts a name bound with >> into @local and writes an auto-name such as a🌵3-2 into @name, which eo:special() skips. So a name after >> is never checked.
Steps to reproduce
On master 8c3474dc6eb341cb4968c8dd299ca2b0dba151c0, a pack in packs/single/invalid-name-notation/:
sheets:
- /org/eolang/lints/names/invalid-name-notation.xsl
defects: 1
input: |
[x] > app
x.plus my_value > @
x.times 2 >> my_value
The XMIR holds <o base="ξ.x.times" local="my_value" name="a🌵3-2" ...>.
Actual result
No defect.
Expected result
One invalid-name-notation warning at line 3, as for the same program with x.times 2 > my_value, which is reported. The motive says "The name of any object must match the regular expression [a-z][a-z0-9]*(-[a-z0-9]+)*".
Other lints already read the name as (@local, @name)[1], e.g. design/broad-scope.xsl:35 and design/misplaced-dataization.xsl:20.
- 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
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from objectionary/lints
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
objectionary/lints#1613 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
objectionary/lints#1612 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
objectionary/lints#1611 ·
Maintainers usually reply within 2 days
-
`unused-alias` reports an alias that is used only in the type of an atom or a voidPossibly taken @StanislavKozachenko claimed this 2 days ago. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
objectionary/lints#1607 ·
Maintainers usually reply within 2 days
-
`comment-is-too-wide` splits a comment at a literal `\n`, so it reports a wrong line or misses a wide onePossibly taken @StanislavKozachenko claimed this 2 days ago. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
objectionary/lints#1600 ·
Maintainers usually reply within 2 days
All issues in objectionary/lints
Similar issues
-
[BUG] micronaut-serde-oracle-jdbc-json brings a second OJDBC driver onto the runtime classpathPossibly taken @ZARAYACH claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
micronaut-projects/micronaut-serialization#1494 · 4 comments ·
Maintainers usually reply within 2 days
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
Maintainers usually reply within 2 days
-
code-health feature/sync OS/Android QA/Test-Plan-Specified QA/Yes
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
brave/brave-browser#60327 ·
Maintainers usually reply within 1 day
-
Type: Bug
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
it-at-m/raumreservierung#383 ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
aws/context-ontology-accelerator#325 ·
Maintainers usually reply within 1 day