Skip to content
New issue

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

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

Already on GitHub? # 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
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants