about summary refs log tree commit diff
diff options
context:
space:
mode:
authorpjotr2026-05-16 01:13:09 +0000
committerpjotr2026-05-29 08:59:13 +0000
commit25b09b1674eb1233c683e30a8297327f92c78a7e (patch)
tree5358bd92ac119f43221d61b6c09cc495ec1bf89d
parent17fbc1308ccd64b035006de39ed64627a36775b3 (diff)
downloadguix-bioinformatics-25b09b1674eb1233c683e30a8297327f92c78a7e.tar.gz
Comments
-rw-r--r--gn/packages/gemma.scm36
1 files changed, 20 insertions, 16 deletions
diff --git a/gn/packages/gemma.scm b/gn/packages/gemma.scm
index 216fc70..ce486e6 100644
--- a/gn/packages/gemma.scm
+++ b/gn/packages/gemma.scm
@@ -109,11 +109,19 @@ genome-wide association studies (GWAS).")
 
 
 (define-public gemma-wrapper
-  ;; Switched to git-fetch at v0.99.7 (commit 48c18a6); the published
-  ;; rubygem ships only bin/gemma-wrapper + lib/lock.rb, no test data
-  ;; and no Rakefile, which blocks the LOCO regression test.  The git
-  ;; tag includes everything: lib/{gnrdf,lock,qtlrange}.rb, all of
-  ;; bin/, test/data/input/BXD_* fixtures, and the Rakefile.
+  ;; Source: upstream v0.99.7 (commit 48c18a6).  The published rubygem
+  ;; ships only bin/gemma-wrapper + lib/lock.rb, no Rakefile and no
+  ;; test data; the git tag includes everything we need for the LOCO
+  ;; regression test.
+  ;;
+  ;; TODO: a Rakefile fix that warms the GWA cache before asserting
+  ;; cache_hit (so the upstream tests pass on a fresh /tmp) has been
+  ;; cherry-picked onto a v0.99.7-rakefile-fix branch as commit
+  ;; a070594f05f2ed91f8099a4c2d6fa5df843c2584 (sha256 nar
+  ;; 056kcs39g10n5bzyi4l62g9625mnwcznaxk167dydfja0ras8chv).  Once
+  ;; that commit lands on a public branch, switch the (commit ...)
+  ;; below to a070594 and drop the Rakefile substitute* in the
+  ;; set-gemma-path phase.
   (let ((commit "48c18a6c1ae55da51e62b2d7308b959aefc3a683")
         (revision "0"))
     (package
@@ -151,17 +159,13 @@ genome-wide association studies (GWAS).")
                   ;; string interpolation which renders nil as "".
                   (("\"https://genenetwork.org/show_trait\\?trait_id=\"\\+options\\[:trait\\]\\+\"&dataset=\"\\+options\\[:name\\]")
                    "\"https://genenetwork.org/show_trait?trait_id=#{options[:trait]}&dataset=#{options[:name]}\""))
-                ;; The Rakefile's GWA cache-hit assertions depend on
-                ;; warm /tmp state that the upstream developer's
-                ;; workflow happens to provide between rake runs;
-                ;; in a fresh Guix build sandbox the cache dir is
-                ;; ephemeral and GWA0 cannot hit a prior cache, and
-                ;; GWA2 doesn't pick up the GWA1 archive reliably
-                ;; either (the on-disk cache key derivation differs
-                ;; subtly between --force and non-force runs in
-                ;; v0.99.7).  Drop both GWA cache_hit assertions;
-                ;; the hash + errno checks downstream remain the
-                ;; real regression gate.
+                ;; Temporary: the Rakefile's GWA cache_hit assertions
+                ;; presume warm /tmp; v0.99.7 itself is broken on a
+                ;; fresh sandbox.  A proper fix (cherry-picked onto
+                ;; the v0.99.7-rakefile-fix branch as a070594) drops
+                ;; this block; until upstream pushes that branch we
+                ;; replicate the same edit here.  Remove once the
+                ;; source commit above is bumped to a070594.
                 (substitute* "Rakefile"
                   (("fail \"Expected cache hit in #\\{gwa0\\}\"[^\n]*\n") "")
                   (("fail \"Expected cache hit in #\\{gwa2\\}\"[^\n]*\n") ""))))