Subject: [bug#48593] [PATCH]: gnu: cl-portable-threads: Enable tests

From: Sharlatan Hellseher <[email-masked]>
Date: Sat, 22 May 2021 20:40:42 +0000

Hi Guix team!

I've enabled test and build the package and it looks ok for me, I am
not sure of the reason why it was disabled

--8<---------------cut here---------------start------------->8---
;; Starting portable threads tests...
;; Performing basic lock tests...
;;   Timing 1,000,000 nonrecursive-lock acquisitions... 0.04 seconds
;;   Timing 1,000,000 recursive-lock acquisitions... 0.05 seconds
;;   Timing 1,000,000 condition-variable lock acquisitions... 0.05 seconds
;;   Timing 1,000,000 nested nonrecursive-lock acquisitions... 0.08 seconds
;;   Timing 1,000,000 nested recursive-lock acquisitions... 0.06 seconds
;;   Checking with a non-lock object...
;;   Testing recursive locking with a recursive lock...
;;   Checking recursive locking with a non-recursive lock...
;;   Testing WITH-LOCK-HELD returned values...
;;   Testing WITH/WITHOUT-LOCK-HELD forms and throws...
;; Completed basic lock tests (0.29 seconds real time).
;; Testing atomic-incf/decf...
;; Completed atomic-incf/decf test
;; Testing atomic-incf&/decf&...
;; Completed atomic-incf&/decf& test
;; Performing WITH-TIMEOUT tests...
;; Completed WITH-TIMEOUT tests
;; Performing basic thread tests...
;;   Timing (sleep 0), run time should be close to zero seconds... 0.00 seconds
;;   Timing (sleep 10), run time should also be close to zero
seconds... 0.00 seconds
;;   Timing 100,000 (sleep 0)s... 0.09 seconds
;;   Timing 100,000 throwable (sleep 0)s... 0.10 seconds
;; Completed basic thread tests (20.76 seconds real time).
;; Performing nonrecursive lock contention tests...
;; Completed nonrecursive lock contention tests
;; Performing recursive lock contention tests...
;; Completed recursive lock contention tests
;; Performing nonrecursive-lock WITHOUT-LOCK-HELD contention tests...
;; Completed nonrecursive-lock WITHOUT-LOCK-HELD contention tests
;; Performing recursive-lock WITHOUT-LOCK-HELD contention tests...
;; Completed recursive-lock WITHOUT-LOCK-HELD contention tests
;; Performing condition-variable wait & signal tests...
;;    Also waiting on CV...
;;    Waiting on CV...
;;    Signaling CV...
;;    Also continuing on CV...
;;    Re-signaling CV...
;;    Continuing on CV...
;; Completed condition-variable wait & signal tests
;; Performing condition-variable wait & broadcast tests...

;;    Waiting on broadcast CV...
;;    Also waiting on broadcast CV...
;;    Signaling CV to all...
;;    Also continuing on broadcast CV...
;; Completed condition-variable wait & broadcast tests
;; Performing condition-variable-wait-with-timeout (non-timeout) tests...
;;    Continuing on broadcast CV...
;;    Also waiting-with-timeout on CV...
;;    Also waiting-with-timeout on CV...
;;    Waiting-with-timeout on CV...
;;    Signaling waiting-with-timeout CV...
;;    Continuing on waiting-with-timout CV...
;; Completed condition-variable wait-with-timeout (non-timeout) tests
;; Performing condition-variable wait-with-timeout (timeout) tests...
;;    Waiting-with-timeout (forever) on CV...
;;    Re-signaling waiting-with-timeout CV...
;;    Also continuing on waiting-with-timeout CV...
;; *************************************************************************
;; *** PORTABLE-THREADS:CONDITION-VARIABLE-WAIT-WITH-TIMEOUT did not
return nil on timeout
;; *************************************************************************
;;    Continuing without CV...
;; Completed condition-variable wait-with-timeout (timeout) tests
;; Performing hibernate/awaken thread tests...
;;   Hibernate ready signal received.
;;     Hibernating...
;;   Awakening thread...
;;     Awakened
;;     Waiting on proceed message...
;;   Awake signal received, signaling proceed.
;;   Waiting for rehibernate signal...
;;     Proceed signal received, signaling rehibernate.
;;     Rehibernating...
;;   Rehibernate ready signal received.
;;   Trying symbol-value-in-thread on hibernating thread...
;;   Re-awakening thread...
;;     Re-awakened
;;   Trying WITH-TIMEOUT on a hibernating thread...
;; Completed hibernate/awaken thread tests
;; Performing symbol-value-in-thread tests...
;;   Binding thread hibernating...
;;   Binding thread awakened.
;; Completed symbol-value-in-thread tests
;; Checking for unreclaimed threads...
;; Performing thread timing tests...
;;   Timing 10,000 spawn-threads... 0.18 seconds
;;   Timing 10,000 spawn and die threads... 0.18 seconds
;; Completed thread timing tests (0.65 seconds real time).
;; Performing condition-variable timing tests...
;;   Timing 10,000 condition-variable wait & signals... 0.03 seconds
;;   Completed condition-variable wait & signal timing test
;;      (0.02 seconds real time).
;;   Timing 10,000 condition-variable wait & broadcasts... 0.02 seconds
;;   Completed condition-variable wait & broadcast timing test
;;      (0.02 seconds real time).
;; Completed condition-variable timing tests
;; Completed portable threads tests (33.16 seconds real time).
;
; compilation unit finished
;   printed 1 note
--8<---------------cut here---------------start------------->8---

There is only one reported issue upstream, which is resolved
https://github.com/binghe/portable-threads/issues/2

-- 
… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.
From 118b36be60187b02d1b90b67a0104b3322a0471e Mon Sep 17 00:00:00 2001
From: Sharlatan Hellseher <[email-masked]>
Date: Sat, 22 May 2021 21:34:52 +0100
Subject: [PATCH] gnu: cl-portable-threads: Enable tests

---
 gnu/packages/lisp-xyz.scm | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 5355c21678..f85693886c 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -3665,9 +3665,6 @@ portability, and boilerplate reduction in CSS.")
          (sha256
           (base32 "058ksi07vfdmhrf5mdlc833s82m1rcqfja2266520m3r8bzs8bvs"))))
       (build-system asdf-build-system/sbcl)
-      (arguments
-       `(;; Tests seem broken.
-         #:tests? #f))
       (home-page "https://github.com/binghe/portable-threads")
       (synopsis "Portable threads API for Common Lisp")
       (description
-- 
2.31.1