This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2024-04-26
Channels
- # aleph (6)
- # announcements (1)
- # babashka (18)
- # beginners (13)
- # calva (18)
- # cider (5)
- # clojure (144)
- # clojure-europe (34)
- # clojure-nl (1)
- # clojure-norway (29)
- # clojure-uk (4)
- # emacs (9)
- # etaoin (51)
- # events (1)
- # gratitude (1)
- # hyperfiddle (9)
- # lsp (4)
- # off-topic (6)
- # pathom (61)
- # rdf (1)
- # releases (3)
- # shadow-cljs (16)
- # vrac (1)
- # yada (1)
- # yamlscript (3)
Has there been any discussion about a full project (like public unused) linter to catch redefs of multimethods across namespaces? I just ran into a bug where two namespaces extended the same dispatch value and our CI loaded one first and dev env loaded the other first. It would be nice to mark both defmethod
as ambiguous.
(ns my.common)
(defmulti test-dispatch identity)
(ns my.a (:require [my.common]))
(defmethod my.common/test-dispatch :foo
[_]
(println "in a"))
(ns my.b (:require [my.common]))
(defmethod my.common/test-dispatch :foo
[_]
(println "in b"))
(ns my.c (:require [my.common]))
(my.common/test-dispatch :foo)