Exit with non-zero code when no files are found to lint/format #1358
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Previously, djLint would print "No files to check! 😢" but exit with code 0 (success) when no files were found to process. This allowed CI systems to silently miss configuration issues where djLint wasn't processing any files, potentially hiding problems for months.
Now djLint exits with code 1 when no files are found, making it easier to catch configuration issues in CI/CD pipelines.
Use Cases
# These now exit with code 1 when no HTML files are found djlint --check jinja_templates/ djlint --lint jinja_templates/ djlint --reformat empty_directory/
Implementation
The change is minimal and surgical - only one line modified in
src/djlint/__init__.py
:return
tosys.exit(1)
when the file list is empty--lint
,--check
,--reformat
)Edge Cases Handled
Fixes #1112.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.