{"action":"closed","issue":{"url":"https://api.github.com/repos/clojure-emacs/refactor-nrepl/issues/171","repository_url":"https://api.github.com/repos/clojure-emacs/refactor-nrepl","labels_url":"https://api.github.com/repos/clojure-emacs/refactor-nrepl/issues/171/labels{/name}","comments_url":"https://api.github.com/repos/clojure-emacs/refactor-nrepl/issues/171/comments","events_url":"https://api.github.com/repos/clojure-emacs/refactor-nrepl/issues/171/events","html_url":"https://github.com/clojure-emacs/refactor-nrepl/issues/171","id":182111546,"number":171,"title":"version check fails when clojure is a managed dependency","user":{"login":"pcarlisle","id":1234752,"avatar_url":"https://avatars.githubusercontent.com/u/1234752?v=3","gravatar_id":"","url":"https://api.github.com/users/pcarlisle","html_url":"https://github.com/pcarlisle","followers_url":"https://api.github.com/users/pcarlisle/followers","following_url":"https://api.github.com/users/pcarlisle/following{/other_user}","gists_url":"https://api.github.com/users/pcarlisle/gists{/gist_id}","starred_url":"https://api.github.com/users/pcarlisle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pcarlisle/subscriptions","organizations_url":"https://api.github.com/users/pcarlisle/orgs","repos_url":"https://api.github.com/users/pcarlisle/repos","events_url":"https://api.github.com/users/pcarlisle/events{/privacy}","received_events_url":"https://api.github.com/users/pcarlisle/received_events","type":"User","site_admin":false},"labels":[{"id":111901144,"url":"https://api.github.com/repos/clojure-emacs/refactor-nrepl/labels/bug","name":"bug","color":"fc2929","default":true},{"id":111901147,"url":"https://api.github.com/repos/clojure-emacs/refactor-nrepl/labels/help%20wanted","name":"help wanted","color":"159818","default":true},{"id":265080730,"url":"https://api.github.com/repos/clojure-emacs/refactor-nrepl/labels/low%20hanging%20fruit","name":"low hanging fruit","color":"bfe5bf","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-10-10T20:48:19Z","updated_at":"2016-12-15T14:36:30Z","closed_at":"2016-12-15T14:36:30Z","body":"As of Leiningen 2.7.0 it is possible to leave out version numbers under the `:dependencies` key of a project map, and list them under the `:managed-dependencies` key instead [[Managed Dependencies](https://github.com/technomancy/leiningen/blob/0dd866ffc813df7761881e62c2ba326c3077b08f/doc/MANAGED_DEPS.md)].\n\nIf the dependency on clojure is listed this way, the repl fails to start with a stack trace.\n\nWith this project.clj:\n\n``` clojure\n(defproject test \"0.1.0-SNAPSHOT\"\n  :dependencies [[org.clojure/clojure]]\n  :managed-dependencies [[org.clojure/clojure \"1.8.0\"]]\n  :plugins [[cider/cider-nrepl \"0.14.0-SNAPSHOT\"]\n            [refactor-nrepl \"2.3.0-SNAPSHOT\"]])\n```\n\n```\ntest:% lein repl\njava.lang.NullPointerException: null\n at java.util.regex.Matcher.getTextLength (Matcher.java:1283)\n    java.util.regex.Matcher.reset (Matcher.java:309)\n    java.util.regex.Matcher.<init> (Matcher.java:229)\n    java.util.regex.Pattern.matcher (Pattern.java:1093)\n    java.util.regex.Pattern.split (Pattern.java:1206)\n    clojure.string$split.invokeStatic (string.clj:226)\n    clojure.string$split.invoke (string.clj:219)\n    leiningen.core.main$version_satisfies_QMARK_.invokeStatic (main.clj:340)\n    leiningen.core.main$version_satisfies_QMARK_.invoke (main.clj:339)\n    refactor_nrepl.plugin$version_ok_QMARK_$fn__12615.invoke (plugin.clj:15)\n    clojure.core$some.invokeStatic (core.clj:2592)\n    clojure.core$some.invoke (core.clj:2583)\n    refactor_nrepl.plugin$version_ok_QMARK_.invokeStatic (plugin.clj:13)\n    refactor_nrepl.plugin$version_ok_QMARK_.invoke (plugin.clj:10)\n    refactor_nrepl.plugin$external_dependencies_ok_QMARK_$fn__12622.invoke (plugin.clj:23)\n    clojure.core.protocols$iter_reduce.invokeStatic (protocols.clj:49)\n    clojure.core.protocols$fn__6742.invokeStatic (protocols.clj:75)\n    clojure.core.protocols/fn (protocols.clj:75)\n    clojure.core.protocols$fn__6684$G__6679__6697.invoke (protocols.clj:13)\n    clojure.core$reduce.invokeStatic (core.clj:6545)\n    clojure.core$reduce.invoke (core.clj:6527)\n    refactor_nrepl.plugin$external_dependencies_ok_QMARK_.invokeStatic (plugin.clj:21)\n    refactor_nrepl.plugin$external_dependencies_ok_QMARK_.invoke (plugin.clj:19)\n    refactor_nrepl.plugin$middleware.invokeStatic (plugin.clj:29)\n    refactor_nrepl.plugin$middleware.invoke (plugin.clj:27)\n    clojure.lang.Var.invoke (Var.java:379)\n    leiningen.core.project$apply_middleware.invokeStatic (project.clj:750)\n    leiningen.core.project$apply_middleware.invoke (project.clj:743)\n    clojure.core.protocols$naive_seq_reduce.invokeStatic (protocols.clj:62)\n    clojure.core.protocols$interface_or_naive_reduce.invokeStatic (protocols.clj:72)\n    clojure.core.protocols$fn__6755.invokeStatic (protocols.clj:168)\n    clojure.core.protocols/fn (protocols.clj:124)\n    clojure.core.protocols$fn__6710$G__6705__6719.invoke (protocols.clj:19)\n    clojure.core.protocols$seq_reduce.invokeStatic (protocols.clj:31)\n    clojure.core.protocols$fn__6738.invokeStatic (protocols.clj:75)\n    clojure.core.protocols/fn (protocols.clj:75)\n    clojure.core.protocols$fn__6684$G__6679__6697.invoke (protocols.clj:13)\n    clojure.core$reduce.invokeStatic (core.clj:6545)\n    clojure.core$reduce.invoke (core.clj:6527)\n    leiningen.core.project$apply_middleware.invokeStatic (project.clj:745)\n    leiningen.core.project$apply_middleware.invoke (project.clj:743)\n    leiningen.core.project$activate_middleware.invokeStatic (project.clj:777)\n    leiningen.core.project$activate_middleware.invoke (project.clj:773)\n    leiningen.core.project$init_project.invokeStatic (project.clj:902)\n    leiningen.core.project$init_project.invoke (project.clj:892)\n    leiningen.core.project$read.invokeStatic (project.clj:973)\n    leiningen.core.project$read.invoke (project.clj:970)\n    leiningen.core.project$read.invokeStatic (project.clj:974)\n    leiningen.core.project$read.invoke (project.clj:970)\n    leiningen.core.main$_main$fn__5998.invoke (main.clj:397)\n    leiningen.core.main$_main.invokeStatic (main.clj:394)\n    leiningen.core.main$_main.doInvoke (main.clj:391)\n    clojure.lang.RestFn.invoke (RestFn.java:408)\n    clojure.lang.Var.invoke (Var.java:379)\n    clojure.lang.AFn.applyToHelper (AFn.java:154)\n    clojure.lang.Var.applyTo (Var.java:700)\n    clojure.core$apply.invokeStatic (core.clj:646)\n    clojure.main$main_opt.invokeStatic (main.clj:314)\n    clojure.main$main_opt.invoke (main.clj:310)\n    clojure.main$main.invokeStatic (main.clj:421)\n    clojure.main$main.doInvoke (main.clj:384)\n    clojure.lang.RestFn.invoke (RestFn.java:436)\n    clojure.lang.Var.invoke (Var.java:388)\n    clojure.lang.AFn.applyToHelper (AFn.java:160)\n    clojure.lang.Var.applyTo (Var.java:700)\n    clojure.main.main (main.java:37)\n```\n\nThis starts normally if refactor-nrepl is removed. This doesn't fail in cider-nrepl because it has a special case for the clojure dependency being present with a nil version.\n## Environment & Version information\n### clj-refactor.el and refactor-nrepl version information\n\n\"clj-refactor 2.3.0-SNAPSHOT (package: 20161005.344), refactor-nrepl 2.3.0-SNAPSHOT\"\n### CIDER version information\n\n```\n;; CIDER 0.14.0snapshot (package: 20161006.431), nREPL 0.2.12\n;; Clojure 1.7.0, Java 1.8.0_92\n```\n### Leiningen or Boot version\n\nlein 2.7.1\n### Emacs version\n\n25.1.1\n### Operating system\n\narch linux\n"}}
{"actor":{"display_login":"expez"}}