Apply clj-kondo metadata to let-dataset macro#162
Open
radovanne wants to merge 2 commits intoscicloj:masterfrom
Open
Apply clj-kondo metadata to let-dataset macro#162radovanne wants to merge 2 commits intoscicloj:masterfrom
radovanne wants to merge 2 commits intoscicloj:masterfrom
Conversation
Reason:
While using tablecloth clj-kondo doesn't apply proper linting to
let-dataset macro.
Clj-kondo by default doesn't recognise custom macros which makes it
unpleasent to work with because it trows `Unresolved symbol` error
where it shouldn't be.
Solution:
As far as I know there are three possible ways to make clj-kondo behave properly.
1. Add `{:clj-kondo/lint-as 'clojure.core/let}` metadata to macro.
** this metadata tells clj-kondo to lint let-dataset as if it were
a clojure.core/let.
2. Add `{:clj-kondo/ignore [:unresolved-symbol]}` metadata to macro.
** any error symbol can be placed in the list and clj-kondo will ignore
it, :unresolved-symbol is just in our case.
3. Adjusting local .clj-kondo config, but that would resolve issue only for me.
Add metadata to correct file
Author
|
exporter/write-api! doesn't build macro as intended, it doesn't put macro metadata on it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Issue
While using tablecloth, clj-kondo doesn't apply proper linting to let-dataset macro.
Reason for fix
Clj-kondo by default doesn't recognise custom macros which makes it unpleasant to work with because it trows
Unresolved symbolerror where it shouldn't be.Solution
As far as I know there are three possible ways to make clj-kondo behave properly.
{:clj-kondo/lint-as 'clojure.core/let}metadata to macro.{:clj-kondo/ignore [:unresolved-symbol]}metadata to macro.Why I chose this approach
ignoremetadata, language-server-protocol fails to work inside that let-dataset binding. I was not able to:eg:
In this example clj-kondo will inform us that binding
zis not being used.Question:
unused bindinginfo from linter then I can add additional metadata.