Skip to content

#lint-ahoy

Compare
Choose a tag to compare
@mcandre mcandre released this 03 May 01:02
· 130 commits to master since this release

Many bugfixes and enhancements in this release.

  • Refine makefile grammar for robustness.
  • Include lines now take precedence over macros. This assists when linting for UB_AMBIGUOUS_INCLUDE.
  • Fix inspect control flow for various kinds of files.
  • Fix how machine generated makefiles are detected and skipped for linting.
  • Detect gyp projects.
  • Refine error handling and error message formatting.
  • Preserve path casing in inspect::Metadata reports.
  • Add new attributes to inspect::Metadata reports.
  • Reduce some internal boilerplate in the unit test code.
  • Add more tests.
  • Refine documentation.
  • Implemente our first set of standard makefile linter warnings.

Linter warning topics range from Undefined Behavior (UB) to hazards of global empty .INCLUDE declarations, to wasteful No-OPerations (NOP's) to simplifying boilerplate, to basic .PHONY semantics, to proper use of .POSIX declarations, to minor makefile performance enhancements.

Skipping pre-compiled ports out of expediency. An upcoming hotfix will soon generate fresh ports.