diff --git a/.gitignore b/.gitignore
index c67ef9c..eb2a5ba 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,4 +6,5 @@ tmp/
 .nrepl-port
 pom.xml
 target/
+.lsp/
 .clj-kondo/.cache/
diff --git a/Readme.md b/Readme.md
index c8308b5..1e88ee6 100644
--- a/Readme.md
+++ b/Readme.md
@@ -17,7 +17,7 @@ Fibers behave similarly to OS level threads, but are much lighter weight to spaw
 potentially millions of them to exist.
 
 Clojure already has the wonderful [core.async](https://github.com/clojure/core.async)
-and [manifold](https://github.com/aleph-io/manifold) libraries but writing maximally performant code
+and [manifold](https://github.com/clj-commons/manifold) libraries but writing maximally performant code
 in either requires the abstraction (channels, or promises) to leak all over your code
 (as you return channels or promise chains) to avoid blocking. Furthermore you frequently have to
 think about which executor will handle the blocking code.
diff --git a/deps.edn b/deps.edn
index 0719e31..538ce43 100644
--- a/deps.edn
+++ b/deps.edn
@@ -11,7 +11,7 @@
    :jvm-opts    ["--enable-preview"]
    :main-opts   ["-m" "kaocha.runner"]
    :extra-deps
-   {org.clojure/test.check {:mvn/version "0.10.0"}
-    lambdaisland/kaocha    {:mvn/version "0.0-541"}}}}
+   {org.clojure/test.check {:mvn/version "1.1.1"}
+    lambdaisland/kaocha    {:mvn/version "1.87.1366"}}}}
  :deps
- {manifold/manifold {:mvn/version "0.1.9-alpha3"}}}
+ {manifold/manifold {:mvn/version "0.4.2"}}}