Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rename-symbol times out when namespaced keywords are present #289

Closed
beluchin opened this issue Aug 4, 2020 · 3 comments
Closed

rename-symbol times out when namespaced keywords are present #289

beluchin opened this issue Aug 4, 2020 · 3 comments
Labels

Comments

@beluchin
Copy link

beluchin commented Aug 4, 2020

the rename symbol refactoring times out when the surrounding let form contains a map destructuring with namespaced keywords

To reproduce, attempt to rename the a symbol below:

(let [a 1
      {::core/keys [a-key another]} a-map])

clj-refactor.el and refactor-nrepl version information:
clj-refactor 2.5.0 (package: 20200405.1419), refactor-nrepl 2.5.0

CIDER version information:

CIDER 0.25.0 (Bergamo), nREPL 0.7.0
Clojure 1.10.1, Java 1.8.0_171

Leiningen version
Leiningen 2.9.4 on Java 1.8.0_171 Java HotSpot(TM) 64-Bit Server VM

Emacs version:
GNU Emacs 26.1 (build 1, x86_64-apple-darwin14.5.0, NS appkit-1348.17 Version 10.10.5 (Build 14F2511)) of 2018-05-30

Operating system:
MacOS 10.15.6

@expez expez added the bug label Aug 12, 2020
@expez
Copy link
Member

expez commented Aug 12, 2020

Most likely due to lack of support in tools.analyzer. The version we've been using is quite old.

Thanks for the report!

@expez
Copy link
Member

expez commented Jun 27, 2021

@Bronsa What's the latest with tools.analyzer? It looks like it's still maintained, but only trivial version bumps are happening. If someone fixes this and submits a patch (along with signing the contributor agreement) is it likely to get merged and a new release cut?

@vemv
Copy link
Member

vemv commented Jun 27, 2021

FWIW from Eastwood experience I don't have the impression that t.ana chokes on namespaced keywords usage.

Might be related to how t.ana is wrapped? Reading the our codebase, I have the impression that *ns* can be used as a fallback when find-ns <target-ns> returns nil.

And I didn't find a prior binding of *ns* to the "target ns" which would make *ns* correct. IOW, that var would point to an unrelated ns.

A possible explanation is that one is hitting a namespace that hasn't been required before, making find-ns fail.

(This is where a "reloaded" workflow helps)

expez added a commit that referenced this issue Jun 28, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
expez added a commit that referenced this issue Jun 29, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
expez added a commit that referenced this issue Jun 29, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
expez added a commit that referenced this issue Jun 29, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
expez added a commit that referenced this issue Jun 29, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
expez added a commit that referenced this issue Jun 29, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
expez added a commit that referenced this issue Jun 29, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
expez added a commit that referenced this issue Jun 29, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
expez added a commit that referenced this issue Jun 29, 2021
The edge-case handling for local symbols in opt-maps wasn't using a
reader that was configured correctly and choked on a namespaced keyword.
@expez expez closed this as completed in 7ccea8c Jun 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants