ghostwheel

Hassle-free clojure.spec, automatic generative testing, side effect detection, and evaluation tracing for Clojure(-Script) – https://github.com/gnl/ghostwheel
samueldev 2018-07-08T04:13:11.000055Z

hello all!

samueldev 2018-07-08T04:13:31.000041Z

i'm running into a problem with getting ghostwheel up and running, wondering if anyone can point me in the direction of where I'm going wrong

samueldev 2018-07-08T04:16:16.000008Z

1. Created fresh re-frame project (`lein new re-frame foo`) 2. Added ghostwheel to my deps

(defproject foo "0.1.0-SNAPSHOT"
  :dependencies [[org.clojure/clojure "1.8.0"]
                 [org.clojure/clojurescript "1.10.339"]
                 [org.clojure/spec.alpha "0.1.143"]
                 [reagent "0.7.0"]
                 [re-frame "0.10.5"]
                 [secretary "1.2.3"]
                 [gnl/ghostwheel "0.2.2"]]  ; <===
  ; ... etc
3. Required the functions into my ns
(ns foo.views
  (:require
   [re-frame.core :as re-frame]
   [website.subs :as subs]
   [ghostwheel.core :refer [>defn >defn- => | <-]])) ; <===
4. Run figwheel (`lein figwheel dev`) And my result is unfortunately this:
Figwheel: Validating the configuration found in project.clj
Figwheel: Configuration Valid ;)
Figwheel: Starting server at <http://0.0.0.0:3449>
Figwheel: Watching build - dev
Compiling build :dev to "resources/public/js/compiled/app.js" from ["src/cljs"]...
Failed to compile build :dev from ["src/cljs"] in 3.02 seconds.
----  Could not Analyze  resources/public/js/compiled/out/cljs/core/specs/alpha.cljs  ----

  java.lang.ExceptionInInitializerError, compiling:(cljs/core/specs/alpha.cljc:1:1)

----  Analysis Error : Please see resources/public/js/compiled/out/cljs/core/specs/alpha.cljs  ----
Figwheel: Starting CSS Watcher for paths  ["resources/public/css"]
Launching ClojureScript REPL for build: dev
Figwheel Controls:
          (stop-autobuild)                ;; stops Figwheel autobuilder
          (start-autobuild id ...)        ;; starts autobuilder focused on optional ids
          (switch-to-build id ...)        ;; switches autobuilder to different build
          (reset-autobuild)               ;; stops, cleans, and starts autobuilder
          (reload-config)                 ;; reloads build config and resets autobuild
          (build-once id ...)             ;; builds source one time
          (clean-builds id ..)            ;; deletes compiled cljs target files
          (print-config id ...)           ;; prints out build configurations
          (fig-status)                    ;; displays current state of system
          (figwheel.client/set-autoload false)    ;; will turn autoloading off
          (figwheel.client/set-repl-pprint false) ;; will turn pretty printing off
  Switch REPL build focus:
          :cljs/quit                      ;; allows you to switch REPL to another build
    Docs: (doc function-name-here)
    Exit: :cljs/quit
 Results: Stored in vars *1, *2, *3, *e holds last exception object
Prompt will show when Figwheel connects to your application
[Rebel readline] Type :repl/help for online help info
ClojureScript 1.10.339

samueldev 2018-07-08T04:19:19.000042Z

@clojurians.net not sure if this is known yet or not 🙂 I don't see a github issue... if you think the problem is not with me, i will create a github issue for this

gnl 2018-07-08T05:08:21.000043Z

@samueldev Off the top of my head – Clojure 1.8.0 doesn't have the core.specs.alpha namespace, try [org.clojure/clojure "1.9.0"] in your dependencies. And don't forget step 3 – enabling Ghostwheel in your compiler options if you haven't already: https://github.com/gnl/ghostwheel#getting-started