Skip to content

mandatory-architect lint to enforce presence of +architect is absent #1003

Description

@ext11n7

Problem

The project enforces the presence of several important metas via dedicated lints:

  • mandatory-home requires +home to be present
  • mandatory-package requires +package to be present
  • mandatory-spdx requires +spdx to be present
  • mandatory-version requires +version to be present

However, there is no mandatory-architect lint that requires +architect to be present. The existing incorrect-architect lint only validates the format of +architect when it is already there — but does not enforce its presence.

This breaks the symmetry of the existing pattern. Moreover, unique-metas already lists +architect alongside +version, +home, and +package as a meta that must be unique — which implies it is expected to be present. The atom-without-rt lint examples also consistently include +architect in all correct code samples.

Suggestion

Add a new lint mandatory-architect that reports an ERROR level defect when a program does not declare a +architect meta.

Example of bad code

+home https://github.com/objectionary/eo

+package org.eolang

+version 0.0.0
Foo.
[] > foo

42 > @

Expected fix

+architect foo@example.com

+home https://github.com/objectionary/eo

+package org.eolang

+version 0.0.0
Foo.
[] > foo

42 > @

This would complete the symmetry with mandatory-home, mandatory-package, mandatory-spdx, and mandatory-version.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggood first issueGood for newcomersgood-titleThe title was checked and improved by ChatGPThelp wantedExtra attention is needed

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions