{"action":"created","issue":{"url":"https://api.github.com/repos/clojure-emacs/squiggly-clojure/issues/25","labels_url":"https://api.github.com/repos/clojure-emacs/squiggly-clojure/issues/25/labels{/name}","comments_url":"https://api.github.com/repos/clojure-emacs/squiggly-clojure/issues/25/comments","events_url":"https://api.github.com/repos/clojure-emacs/squiggly-clojure/issues/25/events","html_url":"https://github.com/clojure-emacs/squiggly-clojure/issues/25","id":95901059,"number":25,"title":"Middleware throws exceptions on unkown reader macros","user":{"login":"Malabarba","id":453029,"avatar_url":"https://avatars.githubusercontent.com/u/453029?v=3","gravatar_id":"","url":"https://api.github.com/users/Malabarba","html_url":"https://github.com/Malabarba","followers_url":"https://api.github.com/users/Malabarba/followers","following_url":"https://api.github.com/users/Malabarba/following{/other_user}","gists_url":"https://api.github.com/users/Malabarba/gists{/gist_id}","starred_url":"https://api.github.com/users/Malabarba/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Malabarba/subscriptions","organizations_url":"https://api.github.com/users/Malabarba/orgs","repos_url":"https://api.github.com/users/Malabarba/repos","events_url":"https://api.github.com/users/Malabarba/events{/privacy}","received_events_url":"https://api.github.com/users/Malabarba/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2015-07-19T09:26:22Z","updated_at":"2015-07-20T21:04:34Z","closed_at":null,"body":"Starting with version `0.10.0`, CIDER will support some debugging reader macros. So if the user writes, for instance,\r\n\r\n    (defn some-function [x]\r\n      #break (reduce + (range x)))\r\n\r\nthat indicates that cider should wrap a breakpoint around that sexp.\r\n\r\nThe problem is, as soon as I write that, I start getting these messages about exceptions from flycheck:\r\n\r\n    Error from syntax checker clojure-cider-typed: Form #[257 \\300\\301\u0002\"\\207 [format (do (require 'squiggly-clojure.core) (squiggly-clojure.core/check-tc '%s))] 4 \r\n    \r\n    (fn NS)] of checker clojure-cider-typed failed: class clojure.lang.ExceptionInfo\r\n\r\nThese messages keep happening repetitively, until I delete that `#break` from my code. It's made a little worse by the fact that it's multiline, so it's constantly expanding the echo area.\r\n\r\nOne way I could think of handling this would be for the clojure side to dynamically bind `*default-data-reader-fn*` to `identity` before reading the code.\r\nAnother option would be for the checker definition (on the Emacs side) to better handle this situation.\r\n"},"comment":{"url":"https://api.github.com/repos/clojure-emacs/squiggly-clojure/issues/comments/123038431","html_url":"https://github.com/clojure-emacs/squiggly-clojure/issues/25#issuecomment-123038431","issue_url":"https://api.github.com/repos/clojure-emacs/squiggly-clojure/issues/25","id":123038431,"user":{"login":"pnf","id":1265645,"avatar_url":"https://avatars.githubusercontent.com/u/1265645?v=3","gravatar_id":"","url":"https://api.github.com/users/pnf","html_url":"https://github.com/pnf","followers_url":"https://api.github.com/users/pnf/followers","following_url":"https://api.github.com/users/pnf/following{/other_user}","gists_url":"https://api.github.com/users/pnf/gists{/gist_id}","starred_url":"https://api.github.com/users/pnf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pnf/subscriptions","organizations_url":"https://api.github.com/users/pnf/orgs","repos_url":"https://api.github.com/users/pnf/repos","events_url":"https://api.github.com/users/pnf/events{/privacy}","received_events_url":"https://api.github.com/users/pnf/received_events","type":"User","site_admin":false},"created_at":"2015-07-20T21:04:34Z","updated_at":"2015-07-20T21:04:34Z","body":"The error is definitely being reported properly to flycheck, which is what generates the \"Error from syntax checker...\" message.  What is supposed to happen (and then does happen for me) is that flycheck shuts off in the buffer and displays \"FlyC!\" in the mode-line.  The problem is in the checks themselves.\r\n\r\nIf, roughly following your suggestion, I wrap the checking in `(binding [*default-data-reader-fn* (fn [_ v] v)] ...)` and I turn off `clojure-cider-typed`, then the flycheck completes without evaluation errors.  Sadly (1) typed will still throw an exception if you don't disable it, and (2) eastwood completes successfully but returns an empty warnings list.  The is reproducible in the repl, without any flycheck apparatus.\r\n\r\nWe may need to raise this with the linter projects themselves."}}