diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,10 @@
 # Change Log
 
+2025-02-04 Laurent P. René de Cotret <laurent.decotret@outlook.com> 0.2.8.0
+
+* Ported test suite to use `tasty` rather than `test-framework`.
+* Removed unused dependencies and addressed some warnings (#467).
+
 2024-10-30  David Simmons-Duffin <dsd@caltech.edu> 0.2.7.1
 
 * Bump dependency bound for ansi-terminal
diff --git a/distributed-process-client-server.cabal b/distributed-process-client-server.cabal
--- a/distributed-process-client-server.cabal
+++ b/distributed-process-client-server.cabal
@@ -1,6 +1,6 @@
 cabal-version:  3.0
 name:           distributed-process-client-server
-version:        0.2.7.1
+version:        0.2.8.0
 build-type:     Simple
 license:        BSD-3-Clause
 license-file:   LICENCE
@@ -16,7 +16,7 @@
                 development into a set of modules and standards designed to help you build
                 concurrent, distributed applications with relative ease.
 category:       Control
-tested-with:    GHC==8.10.7 GHC==9.0.2 GHC==9.2.8 GHC==9.4.5 GHC==9.6.4 GHC==9.8.2 GHC==9.10.1
+tested-with:    GHC==8.10.7 GHC==9.0.2 GHC==9.2.8 GHC==9.4.5 GHC==9.6.4 GHC==9.8.2 GHC==9.10.1 GHC==9.12.1
 extra-doc-files: CHANGELOG.md
 
 source-repository head
@@ -33,6 +33,7 @@
                  -Wredundant-constraints
                  -fhide-source-paths
                  -Wpartial-fields
+                 -Wunused-packages
 
 library
   import:          warnings
@@ -45,12 +46,8 @@
                    deepseq >= 1.4 && < 1.7,
                    mtl,
                    containers >= 0.6 && < 0.8,
-                   hashable >= 1.2.0.5 && < 1.6,
-                   unordered-containers >= 0.2.3.0 && < 0.3,
                    fingertree < 0.2,
                    stm >= 2.4 && < 2.6,
-                   time > 1.4 && < 1.15,
-                   transformers,
                    exceptions >= 0.10 && < 0.11
   hs-source-dirs:   src
   exposed-modules:
@@ -73,26 +70,17 @@
   x-uses-tf:       true
   build-depends:
                    base >= 4.14 && < 5,
-                   ansi-terminal >= 0.5 && < 1.2,
-                   containers,
                    distributed-process,
                    distributed-process-extras,
                    distributed-process-async,
                    distributed-process-client-server,
                    distributed-process-systest ^>= 0.4,
                    network-transport >= 0.4 && < 0.7,
-                   mtl,
-                   fingertree,
                    network-transport-tcp >= 0.6 && < 0.9,
                    binary >= 0.8 && < 0.9,
-                   deepseq,
-                   network >= 2.3 && < 3.3,
-                   HUnit >= 1.2 && < 2,
                    stm,
-                   test-framework >= 0.6 && < 0.9,
-                   test-framework-hunit,
-                   transformers,
-                   ghc-prim,
+                   tasty >= 1.5 && <1.6,
+                   tasty-hunit >=0.10 && <0.11,
                    exceptions
   other-modules:   Counter,
                    ManagedProcessCommon,
@@ -111,26 +99,18 @@
   x-uses-tf:       true
   build-depends:
                    base >= 4.14 && < 5,
-                   ansi-terminal,
-                   containers,
                    distributed-process,
                    distributed-process-extras,
                    distributed-process-async,
                    distributed-process-client-server,
                    distributed-process-systest ^>= 0.4,
                    network-transport,
-                   mtl,
-                   fingertree,
                    network-transport-tcp,
                    binary,
                    deepseq,
-                   network,
-                   HUnit,
                    stm,
-                   test-framework,
-                   test-framework-hunit,
-                   transformers,
-                   ghc-prim,
+                   tasty >= 1.5 && <1.6,
+                   tasty-hunit >=0.10 && <0.11,
                    exceptions
   other-modules:   ManagedProcessCommon,
                    TestUtils
diff --git a/src/Control/Distributed/Process/ManagedProcess.hs b/src/Control/Distributed/Process/ManagedProcess.hs
--- a/src/Control/Distributed/Process/ManagedProcess.hs
+++ b/src/Control/Distributed/Process/ManagedProcess.hs
@@ -651,7 +651,6 @@
 import Control.Distributed.Process hiding (call, Message)
 import Control.Distributed.Process.ManagedProcess.Client
 import Control.Distributed.Process.ManagedProcess.Server
-import qualified Control.Distributed.Process.ManagedProcess.Server.Restricted as R
 import qualified Control.Distributed.Process.ManagedProcess.Server.Priority as P hiding (reject)
 import qualified Control.Distributed.Process.ManagedProcess.Internal.GenProcess as Gen
 import Control.Distributed.Process.ManagedProcess.Internal.GenProcess
diff --git a/src/Control/Distributed/Process/ManagedProcess/Server/Gen.hs b/src/Control/Distributed/Process/ManagedProcess/Server/Gen.hs
--- a/src/Control/Distributed/Process/ManagedProcess/Server/Gen.hs
+++ b/src/Control/Distributed/Process/ManagedProcess/Server/Gen.hs
@@ -97,7 +97,6 @@
  , modifyState
  , setUserTimeout
  , setProcessState
- , GenProcess
  , peek
  , push
  , enqueue
diff --git a/src/Control/Distributed/Process/ManagedProcess/Timer.hs b/src/Control/Distributed/Process/ManagedProcess/Timer.hs
--- a/src/Control/Distributed/Process/ManagedProcess/Timer.hs
+++ b/src/Control/Distributed/Process/ManagedProcess/Timer.hs
@@ -67,7 +67,6 @@
 import Data.Binary (Binary)
 import Data.Maybe (isJust, fromJust)
 import Data.Typeable (Typeable)
-import GHC.Conc (registerDelay)
 import GHC.Generics
 
 --------------------------------------------------------------------------------
diff --git a/tests/TestManagedProcess.hs b/tests/TestManagedProcess.hs
--- a/tests/TestManagedProcess.hs
+++ b/tests/TestManagedProcess.hs
@@ -26,8 +26,8 @@
 import Counter
 import qualified SafeCounter as SafeCounter
 
-import Test.Framework (Test, testGroup)
-import Test.Framework.Providers.HUnit (testCase)
+import Test.Tasty (TestTree, testGroup)
+import Test.Tasty.HUnit (testCase)
 import TestUtils
 import ManagedProcessCommon
 
@@ -210,13 +210,14 @@
     ]
   stash result (r /= DiedNormal)
 
-tests :: NT.Transport  -> IO [Test]
+tests :: NT.Transport  -> IO TestTree
 tests transport = do
   localNode <- newLocalNode transport initRemoteTable
   scpid <- newEmptyMVar
   _ <- forkProcess localNode $ SafeCounter.startCounter 5 >>= stash scpid
   safeCounter <- takeMVar scpid
-  return [
+  return $ 
+    testGroup "" [
         testGroup "Basic Client/Server Functionality" [
             testCase "basic call with explicit server reply"
             (delayedAssertion
diff --git a/tests/TestPrioritisedProcess.hs b/tests/TestPrioritisedProcess.hs
--- a/tests/TestPrioritisedProcess.hs
+++ b/tests/TestPrioritisedProcess.hs
@@ -38,8 +38,8 @@
 import Data.Maybe (isNothing, isJust)
 import Data.Typeable (Typeable)
 
-import Test.Framework (Test, testGroup)
-import Test.Framework.Providers.HUnit (testCase)
+import Test.Tasty (TestTree, testGroup)
+import Test.Tasty.HUnit (testCase)
 import TestUtils
 import ManagedProcessCommon
 
@@ -534,10 +534,10 @@
   let ms = rights st
   stash result $ ms == ["we do prioritise", "the longest", "commands", "first"]
 
-tests :: NT.Transport  -> IO [Test]
+tests :: NT.Transport  -> IO TestTree
 tests transport = do
   localNode <- newLocalNode transport initRemoteTable
-  return [
+  return $ testGroup "" [
         testGroup "basic server functionality matches un-prioritised processes" [
             testCase "basic call with explicit server reply"
             (delayedAssertion
diff --git a/tests/TestUtils.hs b/tests/TestUtils.hs
--- a/tests/TestUtils.hs
+++ b/tests/TestUtils.hs
@@ -18,7 +18,7 @@
 import Control.Distributed.Process.Extras
 import Control.Distributed.Process.Extras.Time
 import Control.Distributed.Process.Extras.Timer
-import Test.Framework (Test, defaultMain)
+import Test.Tasty (TestTree, defaultMain)
 
 import Network.Transport.TCP
 import qualified Network.Transport as NT
@@ -41,7 +41,7 @@
   newLocalNode transport1 initRemoteTable
 
 -- | Given a @builder@ function, make and run a test suite on a single transport
-testMain :: (NT.Transport -> IO [Test]) -> IO ()
+testMain :: (NT.Transport -> IO TestTree) -> IO ()
 testMain builder = do
   Right (transport, _) <- createTransportExposeInternals (defaultTCPAddr "127.0.0.1" "0") defaultTCPParameters
   testData <- builder transport
