Skip to content

More linting: package-lint and melpazoid#10

Merged
dnouri merged 3 commits intomasterfrom
add-melpa-linting
Jan 1, 2026
Merged

More linting: package-lint and melpazoid#10
dnouri merged 3 commits intomasterfrom
add-melpa-linting

Conversation

@dnouri
Copy link
Owner

@dnouri dnouri commented Jan 1, 2026

No description provided.

dnouri added 3 commits January 1, 2026 23:18
Adds package-lint (MELPA's linter) to catch issues before submission:
- New lint-package target in Makefile
- Integrated into check.sh pre-commit script
- Auto-installs package-lint from MELPA if not present

This catches issues like:
- Private functions that shouldn't be autoloaded
- Package-Requires in non-main files
- Various MELPA conventions
Melpazoid catches additional style issues beyond package-lint:
- Top-level define-key (should be in keymap definition)
- Idiomatic patterns (bolp instead of point comparisons)
- License checks
- And more

Runs on push/PR to main branches. Warnings are informational.
- Unit Tests workflow now runs 'make test-unit'
- New Lint workflow runs 'make lint' (checkdoc + package-lint)
- Melpazoid workflow remains separate for style checks
- Nightly still runs full 'make check'

Added 'test-unit' make target for consistency - each workflow
now maps to exactly one make target:

  test-unit.yml        -> make test-unit
  lint.yml             -> make lint
  test-integration.yml -> make test-integration-ci
  test-gui.yml         -> make test-gui-ci
  nightly.yml          -> make check
  melpazoid.yml        -> (external)
@dnouri dnouri merged commit c837d5c into master Jan 1, 2026
4 of 6 checks passed
@dnouri dnouri deleted the add-melpa-linting branch January 1, 2026 22:32
dnouri added a commit that referenced this pull request Feb 25, 2026
* build: Add package-lint to local linting checks

Adds package-lint (MELPA's linter) to catch issues before submission:
- New lint-package target in Makefile
- Integrated into check.sh pre-commit script
- Auto-installs package-lint from MELPA if not present

This catches issues like:
- Private functions that shouldn't be autoloaded
- Package-Requires in non-main files
- Various MELPA conventions

* ci: Add melpazoid workflow for MELPA style checks

Melpazoid catches additional style issues beyond package-lint:
- Top-level define-key (should be in keymap definition)
- Idiomatic patterns (bolp instead of point comparisons)
- License checks
- And more

Runs on push/PR to main branches. Warnings are informational.

* ci: Separate lint workflow from unit tests

- Unit Tests workflow now runs 'make test-unit'
- New Lint workflow runs 'make lint' (checkdoc + package-lint)
- Melpazoid workflow remains separate for style checks
- Nightly still runs full 'make check'

Added 'test-unit' make target for consistency - each workflow
now maps to exactly one make target:

  test-unit.yml        -> make test-unit
  lint.yml             -> make lint
  test-integration.yml -> make test-integration-ci
  test-gui.yml         -> make test-gui-ci
  nightly.yml          -> make check
  melpazoid.yml        -> (external)
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.

1 participant