biff icon indicating copy to clipboard operation
biff copied to clipboard

Replace hawk with something else?

Open jacobobryant opened this issue 3 years ago • 2 comments

BarbaryWatchService, which Hawk depends on, has been retired, and it's started causing an UnsatisfiedLinkError on at least one person's Mac. Hawk's last commit was in 2016. Probably should replace it with something else, maybe just use a java lib directly. (This one?)

{:clojure.main/message
 "Execution error (UnsatisfiedLinkError) at java.lang.ClassLoader/loadLibrary (ClassLoader.java:2393).\nCan't load library: /var/folders/rx/7wp_8m0131sgkntjqsbpg90r0000gn/T/jna16145493131320624304.tmp\n",
 :clojure.main/triage
 {:clojure.error/class java.lang.UnsatisfiedLinkError,
  :clojure.error/line 2393,
  :clojure.error/cause
  "Can't load library: /var/folders/rx/7wp_8m0131sgkntjqsbpg90r0000gn/T/jna16145493131320624304.tmp",
  :clojure.error/symbol java.lang.ClassLoader/loadLibrary,
  :clojure.error/source "ClassLoader.java",
  :clojure.error/phase :execution},
 :clojure.main/trace
 {:via
  [{:type java.lang.UnsatisfiedLinkError,
    :message
    "Can't load library: /var/folders/rx/7wp_8m0131sgkntjqsbpg90r0000gn/T/jna16145493131320624304.tmp",
    :at [java.lang.ClassLoader loadLibrary "ClassLoader.java" 2393]}],
  :trace
  [[java.lang.ClassLoader loadLibrary "ClassLoader.java" 2393]
   [java.lang.Runtime load0 "Runtime.java" 755]
   [java.lang.System load "System.java" 1953]
   [com.sun.jna.Native loadNativeLibraryFromJar "Native.java" 744]
   [com.sun.jna.Native loadNativeLibrary "Native.java" 678]
   [com.sun.jna.Native <clinit> "Native.java" 106]
   [com.barbarysoftware.jna.CarbonAPI <clinit> "CarbonAPI.java" 6]
   [com.barbarysoftware.jna.CFStringRef
    toCFString
    "CFStringRef.java"
    10]
   [com.barbarysoftware.watchservice.MacOSXListeningWatchService
    register
    "MacOSXListeningWatchService.java"
    30]
   [com.barbarysoftware.watchservice.WatchableFile
    register
    "WatchableFile.java"
    30]
   [com.barbarysoftware.watchservice.WatchableFile
    register
    "WatchableFile.java"
    39]
   [hawk.watcher$fn__133 invokeStatic "watcher.clj" 102]
   [hawk.watcher$fn__133 invoke "watcher.clj" 99]
   [hawk.watcher$fn__38$G__29__47 invoke "watcher.clj" 24]
   [hawk.core$watch_BANG_ invokeStatic "core.clj" 83]
   [hawk.core$watch_BANG_ doInvoke "core.clj" 59]
   [clojure.lang.RestFn invoke "RestFn.java" 410]
   [com.biffweb.impl.misc$use_hawk invokeStatic "misc.clj" 17]
   [com.biffweb.impl.misc$use_hawk invoke "misc.clj" 14]
   [com.biffweb$use_hawk invokeStatic "biffweb.clj" 193]
   [com.biffweb$use_hawk invoke "biffweb.clj" 179]
   [com.biffweb.impl.util$start_system invokeStatic "util.clj" 16]
   [com.biffweb.impl.util$start_system invoke "util.clj" 11]
   [com.biffweb$start_system invokeStatic "biffweb.clj" 27]
   [com.biffweb$start_system invoke "biffweb.clj" 21]
   [com.platypub$start invokeStatic "platypub.clj" 79]
   [com.platypub$start invoke "platypub.clj" 78]
   [com.platypub$_main invokeStatic "platypub.clj" 106]
   [com.platypub$_main doInvoke "platypub.clj" 105]
   [clojure.lang.RestFn applyTo "RestFn.java" 137]
   [clojure.lang.Var applyTo "Var.java" 705]
   [clojure.core$apply invokeStatic "core.clj" 667]
   [clojure.main$main_opt invokeStatic "main.clj" 514]
   [clojure.main$main_opt invoke "main.clj" 510]
   [clojure.main$main invokeStatic "main.clj" 664]
   [clojure.main$main doInvoke "main.clj" 616]
   [clojure.lang.RestFn applyTo "RestFn.java" 137]
   [clojure.lang.Var applyTo "Var.java" 705]
   [clojure.main main "main.java" 40]],
  :cause
  "Can't load library: /var/folders/rx/7wp_8m0131sgkntjqsbpg90r0000gn/T/jna16145493131320624304.tmp"}}

jacobobryant avatar Aug 01 '22 00:08 jacobobryant

I notice Beholder has recently replaced Hawk in some libraries:

https://github.com/lambdaisland/kaocha/pull/268 https://github.com/green-coder/girouette/pull/86

jeffp42ker avatar Aug 01 '22 12:08 jeffp42ker

Oh, that looks great! Also A+ for the name/image

jacobobryant avatar Aug 01 '22 16:08 jacobobryant

Closed by d7161980ffed183f385b6430df0f55f2c3916249

jacobobryant avatar Aug 12 '22 22:08 jacobobryant