#861: exclude λ marker from not-empty-atom lint#862
#861: exclude λ marker from not-empty-atom lint#862yegor256 merged 1 commit intoobjectionary:masterfrom
Conversation
|
@yegor256, please take a look when you have a moment. The CI failures on this PR ( |
|
@yegor256, a heads-up about how this fix reaches
To unblock objectionary/eo#5091 (removing For reference, between the |
|
@morphqdd Thank you for your contribution! You've earned +12 points for this submission: +16 as the base reward, +1.15 for your 23 hits-of-code, but -4 points deducted for contributing fewer than 40 hits-of-code. Please keep them coming! Your running score is +236 - don't forget to check your Zerocracy account as well. |
Closes #861.
The
not-empty-atomlint (src/main/resources/org/eolang/lints/atoms/not-empty-atom.xsl) used to flag every atom whoseλmarker carried a non-empty@base. After the restoration of the/namereturn-type syntax inobjectionary/eo(objectionary/eo#4707), atoms like[] > times /numberproduce XMIR with<o base="number" name="λ"/>, which the previous XPath treated as a regular inner object. The fix addsnot(@name='λ')to the predicate (mirroring the existing@name='xi🌵'exclusion) so that the λ marker is recognized as part of the atom syntax in both the outer match and the inner listing.Tests:
allows-atom-with-typed-lambda.yaml— atom with<o base="Φ.number" name="λ"/>→ 0 defects (regression for the bug).catches-empty-atom.yamlandprints-context-when-lines-empty.yaml— they continue to assert that the lint fires when the atom has a real non-λinner object alongside the (now valid)λmarker.After this lint is released,
objectionary/eocan bump the dependency ineo-maven-plugin/pom.xmland drop the+unlint not-empty-atomlines from the 22 affected.eofiles ineo-runtime(puzzle4707-ff431d75/ objectionary/eo#5091).