jbampton opened a new pull request, #2751: URL: https://github.com/apache/sedona/pull/2751
Added 3 hooks: - checkmake (root): with custom checkmake.ini - checkmake (python/sedona/doc): with custom checkmake.ini - insert-license: to auto insert license headers for ini files Slightly relaxed config for phony target body "lengths" Cleaned up the root Makefile removing the missing "test" target and adding "run-docs" target to the phony list https://github.com/checkmake/checkmake https://github.com/checkmake/checkmake?tab=readme-ov-file#pre-commit-usage https://en.wikipedia.org/wiki/INI_file#Comments ## Did you read the Contributor Guide? - Yes, I have read the [Contributor Rules](https://sedona.apache.org/latest/community/rule/) and [Contributor Development Guide](https://sedona.apache.org/latest/community/develop/) ## Is this PR related to a ticket? - No: - this is a CI update. The PR name follows the format `[CI] my subject` ## What changes were proposed in this PR? Added 3 more hooks to our pre-commit framework. --- Using checkmake—a static analysis linter for Makefiles—provides several benefits centered on maintaining build script quality and reliability. The primary advantages of using this tool include: * Early Issue Detection: It identifies potential problems like missing required targets (e.g., all or test) or missing .PHONY declarations before you ever run the build. * Enforcement of Best Practices: The linter checks against a set of configurable rules to ensure your Makefile follows community-accepted standards for correctness and maintainability. * Customisable Rules: Users can define their own validation logic via a configuration file (checkmake.ini), allowing teams to enforce specific internal coding styles. * Flexible Output Formats: It supports both human-readable text and machine-readable JSON output, which is useful for integrating into various developer tools and automated pipelines. * Lightweight and Portable: Being written in Go, it can be run as a single binary, via Docker containers, or as a pre-commit hook without requiring a heavy runtime environment. --- ## How was this patch tested? With pre-commit ## Did this PR include necessary documentation updates? - No, this PR does not affect any public API so no need to change the documentation. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
