all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#50582] [PATCH 0/4] Julia-documenter
@ 2021-09-14 13:08 Efraim Flashner
  2021-09-14 13:11 ` [bug#50582] [PATCH 1/4] gnu: Add julia-libsass-jll Efraim Flashner
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-09-14 13:08 UTC (permalink / raw)
  To: 50582

[-- Attachment #1: Type: text/plain, Size: 800 bytes --]

Julia-documenter is a bit hard because there's a lot of javascript
packages which it expects to download at runtime.

The julia-documenter patch adds 4 packages in one go, julia-documenter
depends on two of them, and those two depend on julia-documenter. I was
able to use an older version of julia-documenter to bootstrap the
process, but it doesn't make a nice chain to apply that one separately.

Efraim Flashner (4):
  gnu: Add julia-libsass-jll.
  gnu: Add julia-sass.
  gnu: Add julia-ansicoloredprinters.
  gnu: Add julia-documenter.

 gnu/packages/julia-jll.scm |  43 +++++++++
 gnu/packages/julia-xyz.scm | 188 ++++++++++++++++++++++++++++++++++++-
 2 files changed, 230 insertions(+), 1 deletion(-)


base-commit: e4f8bfb3488cca0593327a983a368acceae6b352
-- 
2.33.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [bug#50582] [PATCH 1/4] gnu: Add julia-libsass-jll.
  2021-09-14 13:08 [bug#50582] [PATCH 0/4] Julia-documenter Efraim Flashner
@ 2021-09-14 13:11 ` Efraim Flashner
  2021-09-27 17:01   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
  2021-09-14 13:12 ` [bug#50582] [PATCH 2/4] gnu: Add julia-sass Efraim Flashner
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2021-09-14 13:11 UTC (permalink / raw)
  To: 50582

[-- Attachment #1: Type: text/plain, Size: 2525 bytes --]

* gnu/packages/julia-jll.scm (julia-libsass-jll): New variable.
---
 gnu/packages/julia-jll.scm | 43 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/julia-jll.scm b/gnu/packages/julia-jll.scm
index d18971ad48..d3677d0a33 100644
--- a/gnu/packages/julia-jll.scm
+++ b/gnu/packages/julia-jll.scm
@@ -1064,6 +1064,49 @@ (define-public julia-libpng-jll
     (description "This package provides a wrapper for the libpng library.")
     (license license:expat)))
 
+(define-public julia-libsass-jll
+  (let ((commit "69bf10603aad0ebf1f6df088c5fd7c4a5d1eb0ca"))
+    (package
+      (name "julia-libsass-jll")
+      (version "3.5.5+0")                 ;tag not created upstream
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/JuliaBinaryWrappers/libsass_jll.jl")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1fb6rf422533bsmfslvc20ag1hr50bf9xaj32rvh7nv593sbiygn"))))
+      (build-system julia-build-system)
+      (arguments
+       `(#:tests? #f                      ; no runtests.jl
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'override-binary-path
+             (lambda* (#:key inputs #:allow-other-keys)
+               (map
+                (lambda (wrapper)
+                  (substitute* wrapper
+                    (("generate_wrapper_header.*")
+                     (string-append
+                      "generate_wrapper_header(\"libsass\", \""
+                      (assoc-ref inputs "libsass") "\")\n"))))
+                ;; There's a Julia file for each platform, override them all
+                (find-files "src/wrappers/" "\\.jl$"))
+               #t)))))
+      (inputs
+       `(("libsass" ,libsass)))
+      (propagated-inputs
+       `(("julia-jllwrappers" ,julia-jllwrappers)))
+      (home-page "https://github.com/JuliaBinaryWrappers/libsass_jll.jl")
+      (synopsis "Julia wrapper for libsass")
+      (description "This package provides a wrapper for libsass.  It is an
+autogenerated source package constructed using @code{BinaryBuilder.jl}.  The
+originating @code{build_tarballs.jl} script can be found on the community
+build tree Yggdrasil.")
+      (license license:expat))))
+
 (define-public julia-libtiff-jll
   (package
     (name "julia-libtiff-jll")
-- 
2.33.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [bug#50582] [PATCH 2/4] gnu: Add julia-sass.
  2021-09-14 13:08 [bug#50582] [PATCH 0/4] Julia-documenter Efraim Flashner
  2021-09-14 13:11 ` [bug#50582] [PATCH 1/4] gnu: Add julia-libsass-jll Efraim Flashner
@ 2021-09-14 13:12 ` Efraim Flashner
  2021-09-27 17:03   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
  2021-09-14 18:19 ` [bug#50490] [PATCH 3/4] gnu: Add julia-ansicoloredprinters Efraim Flashner
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2021-09-14 13:12 UTC (permalink / raw)
  To: 50582

[-- Attachment #1: Type: text/plain, Size: 1388 bytes --]

* gnu/packages/julia-xyz.scm (julia-sass): New variable.
---
 gnu/packages/julia-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index a80964c2b0..2f953a33b7 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -3403,6 +3403,28 @@ (define-public julia-safetestsets
 a loadable module.")
       (license license:expat))))
 
+(define-public julia-sass
+  (package
+    (name "julia-sass")
+    (version "0.2.0")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/piever/Sass.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "0y7kkkj717h5cj659ssry89i5r64symr6pvhr6vv4qmaxrnjxj92"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-libsass-jll" ,julia-libsass-jll)))
+    (home-page "https://github.com/piever/Sass.jl")
+    (synopsis "Compile scss and sass file to css in Julia")
+    (description "This library provides a simple Julian API to use the
+@code{libsass} library to compile scss and sass files to css.")
+    (license license:expat)))
+
 (define-public julia-scratch
   (package
     (name "julia-scratch")
-- 
2.33.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [bug#50490] [PATCH 3/4] gnu: Add julia-ansicoloredprinters.
  2021-09-14 13:08 [bug#50582] [PATCH 0/4] Julia-documenter Efraim Flashner
  2021-09-14 13:11 ` [bug#50582] [PATCH 1/4] gnu: Add julia-libsass-jll Efraim Flashner
  2021-09-14 13:12 ` [bug#50582] [PATCH 2/4] gnu: Add julia-sass Efraim Flashner
@ 2021-09-14 18:19 ` Efraim Flashner
  2021-09-27 17:04   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
  2021-09-14 18:19 ` [bug#50490] [PATCH 4/4] gnu: Add julia-documenter Efraim Flashner
       [not found] ` <handler.50582.B.163162505210361.ack@debbugs.gnu.org>
  4 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2021-09-14 18:19 UTC (permalink / raw)
  To: 50490; +Cc: Efraim Flashner

* gnu/packages/julia-xyz.scm (julia-ansicoloredprinters): New variable.
---
 gnu/packages/julia-xyz.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 2f953a33b7..309687019d 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -98,6 +98,26 @@ (define-public julia-adapt
 be GPU compatible without throwing away the wrapper.")
     (license license:expat)))
 
+(define-public julia-ansicoloredprinters
+  (package
+    (name "julia-ansicoloredprinters")
+    (version "0.0.1")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/ANSIColoredPrinters.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "0dp5agljr0g50s5gn0pr70wrz01ggck6pb40ay3l4szhswq7mqzf"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaDocs/ANSIColoredPrinters.jl")
+    (synopsis "ANSI escape code translator")
+    (description "@code{ANSIColoredPrinters.jl} converts a text qualified by
+ANSI escape codes to another format.")
+    (license license:expat)))
+
 (define-public julia-aqua
   (package
     (name "julia-aqua")
-- 
2.33.0





^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [bug#50490] [PATCH 4/4] gnu: Add julia-documenter.
  2021-09-14 13:08 [bug#50582] [PATCH 0/4] Julia-documenter Efraim Flashner
                   ` (2 preceding siblings ...)
  2021-09-14 18:19 ` [bug#50490] [PATCH 3/4] gnu: Add julia-ansicoloredprinters Efraim Flashner
@ 2021-09-14 18:19 ` Efraim Flashner
  2021-09-27 17:11   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
       [not found] ` <handler.50582.B.163162505210361.ack@debbugs.gnu.org>
  4 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2021-09-14 18:19 UTC (permalink / raw)
  To: 50490; +Cc: Efraim Flashner

* gnu/packages/julia-xyz.scm (julia-documenter,
julia-documentermarkdown, julia-documentertools): New variables.
(julia-documenter-0.22): New hidden variable.
---
 gnu/packages/julia-xyz.scm | 146 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 145 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 309687019d..e7e7680cca 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -26,7 +26,9 @@ (define-module (gnu packages julia-xyz)
   #:use-module (guix git-download)
   #:use-module (guix build-system julia)
   #:use-module (gnu packages gcc)
-  #:use-module (gnu packages julia-jll))
+  #:use-module (gnu packages julia-jll)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages version-control))
 
 (define-public julia-abstractffts
   (package
@@ -990,6 +992,148 @@ (define-public julia-docstringextensions
 valuable enough at this time.")
     (license license:expat)))
 
+;; By removing all the javascript and css downloads any HTML documentation
+;; produced by this package will not be very useful.
+(define-public julia-documenter
+  (package
+    (name "julia-documenter")
+    (version "0.27.6")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/Documenter.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "1y6rql7cxc7hfhc8rfq1mdmffp70sqzyh4vnnq93fziwrc8c8sbj"))))
+    (build-system julia-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-source
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "src/Deps.jl"
+               (("pip install")
+                (string-append (assoc-ref inputs "python")
+                               "/bin/pip install")))
+             #t))
+         (add-after 'unpack 'remove-javascript-downloads
+           (lambda _
+             (substitute* "src/Writers/HTMLWriter.jl"
+               (("cdnjs.cloudflare.com") "example.com"))
+             ;; Removing the javascript downloads causes these tests fail.
+             (substitute* "test/examples/tests.jl"
+               ((".*Main\\.examples_html_doc.*") "")
+               ((".*Main\\.examples_html_mathjax3_doc.*") ""))
+             #t)))))
+    (propagated-inputs
+     `(("julia-ansicoloredprinters" ,julia-ansicoloredprinters)
+       ("julia-docstringextensions" ,julia-docstringextensions)
+       ("julia-iocapture" ,julia-iocapture)
+       ("julia-json" ,julia-json)))
+    (inputs
+     `(("python" ,python-wrapper)))
+    (native-inputs
+     `(("git" ,git-minimal)
+       ("julia-documentermarkdown" ,julia-documentermarkdown)
+       ("julia-documentertools" ,julia-documentertools)))
+    (home-page "https://juliadocs.github.io/Documenter.jl")
+    (synopsis "Documentation generator for Julia")
+    (description "This package provides a documentation generator for Julia.")
+    (license license:expat)))
+
+(define-public julia-documenter-0.22
+  (package
+    (inherit julia-documenter)
+    (name "julia-documenter")
+    (version "0.22.6")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/Documenter.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32
+          "1z8b7267y7yn5nx8sjwkmc0ph97vmv42q52jg7s89ghqb9xx3wv5"))))
+    (arguments
+     `(#:tests? #f      ; Some tests require network.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-javascript-downloads
+           (lambda _
+             ;; This isn't problematic because we only use
+             ;; this package for bootstrapping.
+             (substitute* '("assets/html/documenter.js"
+                            "assets/html/search.js"
+                            "src/Writers/HTMLWriter.jl")
+               (("cdnjs.cloudflare.com") "example.com"))
+             #t)))))
+    (propagated-inputs
+     `(("julia-docstringextensions" ,julia-docstringextensions)
+       ("julia-json" ,julia-json)))
+    (inputs `())
+    (native-inputs `())
+    (properties '((hidden? . #t)))))
+
+(define-public julia-documentermarkdown
+  (package
+    (name "julia-documentermarkdown")
+    (version "0.2.2")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "0sx89hi5p2f8zi2rp5qrv06m270d90pxj5d2y5cxls1spax7wqx8"))))
+    (build-system julia-build-system)
+    (inputs
+     ;; We don't want to propagate the bootstrap version.
+     ;; Cycle with Documenter.jl in later versions.
+     `(("julia-documenter" ,julia-documenter-0.22)))
+    (home-page "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
+    (synopsis "Documenter's Markdown")
+    (description "This package enables the Markdown / MkDocs backend of
+@code{Documenter.jl}.")
+    (license license:expat)))
+
+(define-public julia-documentertools
+  (package
+    (name "julia-documentertools")
+    (version "0.1.13")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/DocumenterTools.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "05p57p8xlkn42m1lv9gq4hl96vp7hpj19d51p828ai1rbpcpi3a6"))))
+    (build-system julia-build-system)
+    (arguments
+     `(#:tests? #f))    ; Tests require network.
+    (inputs
+     ;; We don't want to propagate the bootstrap version.
+     ;; Cycle with Documenter.jl in later versions.
+     `(("julia-documenter" ,julia-documenter-0.22)))
+    (propagated-inputs
+     `(("julia-docstringextensions" ,julia-docstringextensions)
+       ("julia-gumbo" ,julia-gumbo)
+       ("julia-sass" ,julia-sass)))
+    (native-inputs
+     `(("julia-example" ,julia-example)))
+    (home-page "https://github.com/JuliaDocs/DocumenterTools.jl")
+    (synopsis "Extra tools for setting up Documenter")
+    (description "This package contains utilities for setting up documentation
+generation with @code{Documenter.jl}.")
+    (license license:expat)))
+
 (define-public julia-diffresults
   (package
     (name "julia-diffresults")
-- 
2.33.0





^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [bug#50582] Acknowledgement ([PATCH 0/4] Julia-documenter)
       [not found] ` <handler.50582.B.163162505210361.ack@debbugs.gnu.org>
@ 2021-09-14 18:31   ` Efraim Flashner
  2021-09-27 17:15     ` [bug#50582] [PATCH 0/4] Julia-documenter zimoun
  0 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2021-09-14 18:31 UTC (permalink / raw)
  To: 50582


[-- Attachment #1.1: Type: text/plain, Size: 304 bytes --]

I seem to be having a hard time sending the patches so I'm attaching
them to this email.

-- 
Efraim Flashner   <efraim@flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #1.2: 0001-gnu-Add-julia-libsass-jll.patch --]
[-- Type: text/plain, Size: 2945 bytes --]

From 60b1c99f84e660d692abbb480f3a1ee7f40c2a90 Mon Sep 17 00:00:00 2001
Message-Id: <60b1c99f84e660d692abbb480f3a1ee7f40c2a90.1631624546.git.efraim@flashner.co.il>
In-Reply-To: <cover.1631624546.git.efraim@flashner.co.il>
References: <cover.1631624546.git.efraim@flashner.co.il>
From: Efraim Flashner <efraim@flashner.co.il>
Date: Tue, 14 Sep 2021 15:43:00 +0300
Subject: [PATCH 1/4] gnu: Add julia-libsass-jll.

* gnu/packages/julia-jll.scm (julia-libsass-jll): New variable.
---
 gnu/packages/julia-jll.scm | 43 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/julia-jll.scm b/gnu/packages/julia-jll.scm
index d18971ad48..d3677d0a33 100644
--- a/gnu/packages/julia-jll.scm
+++ b/gnu/packages/julia-jll.scm
@@ -1064,6 +1064,49 @@ (define-public julia-libpng-jll
     (description "This package provides a wrapper for the libpng library.")
     (license license:expat)))
 
+(define-public julia-libsass-jll
+  (let ((commit "69bf10603aad0ebf1f6df088c5fd7c4a5d1eb0ca"))
+    (package
+      (name "julia-libsass-jll")
+      (version "3.5.5+0")                 ;tag not created upstream
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/JuliaBinaryWrappers/libsass_jll.jl")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1fb6rf422533bsmfslvc20ag1hr50bf9xaj32rvh7nv593sbiygn"))))
+      (build-system julia-build-system)
+      (arguments
+       `(#:tests? #f                      ; no runtests.jl
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'override-binary-path
+             (lambda* (#:key inputs #:allow-other-keys)
+               (map
+                (lambda (wrapper)
+                  (substitute* wrapper
+                    (("generate_wrapper_header.*")
+                     (string-append
+                      "generate_wrapper_header(\"libsass\", \""
+                      (assoc-ref inputs "libsass") "\")\n"))))
+                ;; There's a Julia file for each platform, override them all
+                (find-files "src/wrappers/" "\\.jl$"))
+               #t)))))
+      (inputs
+       `(("libsass" ,libsass)))
+      (propagated-inputs
+       `(("julia-jllwrappers" ,julia-jllwrappers)))
+      (home-page "https://github.com/JuliaBinaryWrappers/libsass_jll.jl")
+      (synopsis "Julia wrapper for libsass")
+      (description "This package provides a wrapper for libsass.  It is an
+autogenerated source package constructed using @code{BinaryBuilder.jl}.  The
+originating @code{build_tarballs.jl} script can be found on the community
+build tree Yggdrasil.")
+      (license license:expat))))
+
 (define-public julia-libtiff-jll
   (package
     (name "julia-libtiff-jll")
-- 
2.33.0


[-- Attachment #1.3: 0002-gnu-Add-julia-sass.patch --]
[-- Type: text/plain, Size: 1801 bytes --]

From eca237a402eef4f1c053a937ea24138e366e33d3 Mon Sep 17 00:00:00 2001
Message-Id: <eca237a402eef4f1c053a937ea24138e366e33d3.1631624546.git.efraim@flashner.co.il>
In-Reply-To: <cover.1631624546.git.efraim@flashner.co.il>
References: <cover.1631624546.git.efraim@flashner.co.il>
From: Efraim Flashner <efraim@flashner.co.il>
Date: Tue, 14 Sep 2021 15:43:30 +0300
Subject: [PATCH 2/4] gnu: Add julia-sass.

* gnu/packages/julia-xyz.scm (julia-sass): New variable.
---
 gnu/packages/julia-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index a80964c2b0..2f953a33b7 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -3403,6 +3403,28 @@ (define-public julia-safetestsets
 a loadable module.")
       (license license:expat))))
 
+(define-public julia-sass
+  (package
+    (name "julia-sass")
+    (version "0.2.0")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/piever/Sass.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "0y7kkkj717h5cj659ssry89i5r64symr6pvhr6vv4qmaxrnjxj92"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-libsass-jll" ,julia-libsass-jll)))
+    (home-page "https://github.com/piever/Sass.jl")
+    (synopsis "Compile scss and sass file to css in Julia")
+    (description "This library provides a simple Julian API to use the
+@code{libsass} library to compile scss and sass files to css.")
+    (license license:expat)))
+
 (define-public julia-scratch
   (package
     (name "julia-scratch")
-- 
2.33.0


[-- Attachment #1.4: 0003-gnu-Add-julia-ansicoloredprinters.patch --]
[-- Type: text/plain, Size: 1798 bytes --]

From 0bfad7f4ecde531573c6c7cf957301ab49306876 Mon Sep 17 00:00:00 2001
Message-Id: <0bfad7f4ecde531573c6c7cf957301ab49306876.1631624546.git.efraim@flashner.co.il>
In-Reply-To: <cover.1631624546.git.efraim@flashner.co.il>
References: <cover.1631624546.git.efraim@flashner.co.il>
From: Efraim Flashner <efraim@flashner.co.il>
Date: Tue, 14 Sep 2021 15:48:23 +0300
Subject: [PATCH 3/4] gnu: Add julia-ansicoloredprinters.

* gnu/packages/julia-xyz.scm (julia-ansicoloredprinters): New variable.
---
 gnu/packages/julia-xyz.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 2f953a33b7..309687019d 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -98,6 +98,26 @@ (define-public julia-adapt
 be GPU compatible without throwing away the wrapper.")
     (license license:expat)))
 
+(define-public julia-ansicoloredprinters
+  (package
+    (name "julia-ansicoloredprinters")
+    (version "0.0.1")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/ANSIColoredPrinters.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "0dp5agljr0g50s5gn0pr70wrz01ggck6pb40ay3l4szhswq7mqzf"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaDocs/ANSIColoredPrinters.jl")
+    (synopsis "ANSI escape code translator")
+    (description "@code{ANSIColoredPrinters.jl} converts a text qualified by
+ANSI escape codes to another format.")
+    (license license:expat)))
+
 (define-public julia-aqua
   (package
     (name "julia-aqua")
-- 
2.33.0


[-- Attachment #1.5: 0004-gnu-Add-julia-documenter.patch --]
[-- Type: text/plain, Size: 7259 bytes --]

From eeb8e3dfcaf3040232e9d53f07ace058f72510bf Mon Sep 17 00:00:00 2001
Message-Id: <eeb8e3dfcaf3040232e9d53f07ace058f72510bf.1631624546.git.efraim@flashner.co.il>
In-Reply-To: <cover.1631624546.git.efraim@flashner.co.il>
References: <cover.1631624546.git.efraim@flashner.co.il>
From: Efraim Flashner <efraim@flashner.co.il>
Date: Tue, 14 Sep 2021 15:49:51 +0300
Subject: [PATCH 4/4] gnu: Add julia-documenter.

* gnu/packages/julia-xyz.scm (julia-documenter,
julia-documentermarkdown, julia-documentertools): New variables.
(julia-documenter-0.22): New hidden variable.
---
 gnu/packages/julia-xyz.scm | 146 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 145 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 309687019d..e7e7680cca 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -26,7 +26,9 @@ (define-module (gnu packages julia-xyz)
   #:use-module (guix git-download)
   #:use-module (guix build-system julia)
   #:use-module (gnu packages gcc)
-  #:use-module (gnu packages julia-jll))
+  #:use-module (gnu packages julia-jll)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages version-control))
 
 (define-public julia-abstractffts
   (package
@@ -990,6 +992,148 @@ (define-public julia-docstringextensions
 valuable enough at this time.")
     (license license:expat)))
 
+;; By removing all the javascript and css downloads any HTML documentation
+;; produced by this package will not be very useful.
+(define-public julia-documenter
+  (package
+    (name "julia-documenter")
+    (version "0.27.6")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/Documenter.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "1y6rql7cxc7hfhc8rfq1mdmffp70sqzyh4vnnq93fziwrc8c8sbj"))))
+    (build-system julia-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-source
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "src/Deps.jl"
+               (("pip install")
+                (string-append (assoc-ref inputs "python")
+                               "/bin/pip install")))
+             #t))
+         (add-after 'unpack 'remove-javascript-downloads
+           (lambda _
+             (substitute* "src/Writers/HTMLWriter.jl"
+               (("cdnjs.cloudflare.com") "example.com"))
+             ;; Removing the javascript downloads causes these tests fail.
+             (substitute* "test/examples/tests.jl"
+               ((".*Main\\.examples_html_doc.*") "")
+               ((".*Main\\.examples_html_mathjax3_doc.*") ""))
+             #t)))))
+    (propagated-inputs
+     `(("julia-ansicoloredprinters" ,julia-ansicoloredprinters)
+       ("julia-docstringextensions" ,julia-docstringextensions)
+       ("julia-iocapture" ,julia-iocapture)
+       ("julia-json" ,julia-json)))
+    (inputs
+     `(("python" ,python-wrapper)))
+    (native-inputs
+     `(("git" ,git-minimal)
+       ("julia-documentermarkdown" ,julia-documentermarkdown)
+       ("julia-documentertools" ,julia-documentertools)))
+    (home-page "https://juliadocs.github.io/Documenter.jl")
+    (synopsis "Documentation generator for Julia")
+    (description "This package provides a documentation generator for Julia.")
+    (license license:expat)))
+
+(define-public julia-documenter-0.22
+  (package
+    (inherit julia-documenter)
+    (name "julia-documenter")
+    (version "0.22.6")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/Documenter.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32
+          "1z8b7267y7yn5nx8sjwkmc0ph97vmv42q52jg7s89ghqb9xx3wv5"))))
+    (arguments
+     `(#:tests? #f      ; Some tests require network.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-javascript-downloads
+           (lambda _
+             ;; This isn't problematic because we only use
+             ;; this package for bootstrapping.
+             (substitute* '("assets/html/documenter.js"
+                            "assets/html/search.js"
+                            "src/Writers/HTMLWriter.jl")
+               (("cdnjs.cloudflare.com") "example.com"))
+             #t)))))
+    (propagated-inputs
+     `(("julia-docstringextensions" ,julia-docstringextensions)
+       ("julia-json" ,julia-json)))
+    (inputs `())
+    (native-inputs `())
+    (properties '((hidden? . #t)))))
+
+(define-public julia-documentermarkdown
+  (package
+    (name "julia-documentermarkdown")
+    (version "0.2.2")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "0sx89hi5p2f8zi2rp5qrv06m270d90pxj5d2y5cxls1spax7wqx8"))))
+    (build-system julia-build-system)
+    (inputs
+     ;; We don't want to propagate the bootstrap version.
+     ;; Cycle with Documenter.jl in later versions.
+     `(("julia-documenter" ,julia-documenter-0.22)))
+    (home-page "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
+    (synopsis "Documenter's Markdown")
+    (description "This package enables the Markdown / MkDocs backend of
+@code{Documenter.jl}.")
+    (license license:expat)))
+
+(define-public julia-documentertools
+  (package
+    (name "julia-documentertools")
+    (version "0.1.13")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/JuliaDocs/DocumenterTools.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "05p57p8xlkn42m1lv9gq4hl96vp7hpj19d51p828ai1rbpcpi3a6"))))
+    (build-system julia-build-system)
+    (arguments
+     `(#:tests? #f))    ; Tests require network.
+    (inputs
+     ;; We don't want to propagate the bootstrap version.
+     ;; Cycle with Documenter.jl in later versions.
+     `(("julia-documenter" ,julia-documenter-0.22)))
+    (propagated-inputs
+     `(("julia-docstringextensions" ,julia-docstringextensions)
+       ("julia-gumbo" ,julia-gumbo)
+       ("julia-sass" ,julia-sass)))
+    (native-inputs
+     `(("julia-example" ,julia-example)))
+    (home-page "https://github.com/JuliaDocs/DocumenterTools.jl")
+    (synopsis "Extra tools for setting up Documenter")
+    (description "This package contains utilities for setting up documentation
+generation with @code{Documenter.jl}.")
+    (license license:expat)))
+
 (define-public julia-diffresults
   (package
     (name "julia-diffresults")
-- 
2.33.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [bug#50490] [PATCH 0/5] Some julia packages
  2021-09-14 13:11 ` [bug#50582] [PATCH 1/4] gnu: Add julia-libsass-jll Efraim Flashner
@ 2021-09-27 17:01   ` zimoun
  0 siblings, 0 replies; 14+ messages in thread
From: zimoun @ 2021-09-27 17:01 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 50490

Hi Efraim,

On mar., 14 sept. 2021 at 21:19, Efraim Flashner <efraim@flashner.co.il> wrote:
> * gnu/packages/julia-jll.scm (julia-libsass-jll): New variable.
> ---
>  gnu/packages/julia-jll.scm | 43 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 43 insertions(+)

LGTM!

Cheers,
simon




^ permalink raw reply	[flat|nested] 14+ messages in thread

* [bug#50490] [PATCH 0/5] Some julia packages
  2021-09-14 13:12 ` [bug#50582] [PATCH 2/4] gnu: Add julia-sass Efraim Flashner
@ 2021-09-27 17:03   ` zimoun
  0 siblings, 0 replies; 14+ messages in thread
From: zimoun @ 2021-09-27 17:03 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 50490

Hi Efraim,

On mar., 14 sept. 2021 at 21:19, Efraim Flashner <efraim@flashner.co.il> wrote:
> * gnu/packages/julia-xyz.scm (julia-sass): New variable.
> ---
>  gnu/packages/julia-xyz.scm | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>
> diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
> index a80964c2b0..2f953a33b7 100644
> --- a/gnu/packages/julia-xyz.scm
> +++ b/gnu/packages/julia-xyz.scm
> @@ -3403,6 +3403,28 @@ (define-public julia-safetestsets
>  a loadable module.")
>        (license license:expat))))
>
> +(define-public julia-sass
> +  (package
> +    (name "julia-sass")
> +    (version "0.2.0")
> +    (source
> +      (origin
> +        (method git-fetch)
> +        (uri (git-reference
> +               (url "https://github.com/piever/Sass.jl")
> +               (commit (string-append "v" version))))
> +        (file-name (git-file-name name version))
> +        (sha256
> +         (base32 "0y7kkkj717h5cj659ssry89i5r64symr6pvhr6vv4qmaxrnjxj92"))))
> +    (build-system julia-build-system)
> +    (propagated-inputs
> +     `(("julia-libsass-jll" ,julia-libsass-jll)))
> +    (home-page "https://github.com/piever/Sass.jl")
> +    (synopsis "Compile scss and sass file to css in Julia")

Again, I would remove «in Julia>..

> +    (description "This library provides a simple Julian API to use
> the

I would write «This package provides…»

> +@code{libsass} library to compile scss and sass files to css.")
> +    (license license:expat)))

LGTM.

Cheers,
simon




^ permalink raw reply	[flat|nested] 14+ messages in thread

* [bug#50490] [PATCH 0/5] Some julia packages
  2021-09-14 18:19 ` [bug#50490] [PATCH 3/4] gnu: Add julia-ansicoloredprinters Efraim Flashner
@ 2021-09-27 17:04   ` zimoun
  0 siblings, 0 replies; 14+ messages in thread
From: zimoun @ 2021-09-27 17:04 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 50490

Hi Efraim,

On mar., 14 sept. 2021 at 21:19, Efraim Flashner <efraim@flashner.co.il> wrote:
> * gnu/packages/julia-xyz.scm (julia-ansicoloredprinters): New variable.
> ---
>  gnu/packages/julia-xyz.scm | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)

Already added by previous patch.  This one should be dropped.

Cheers,
simon




^ permalink raw reply	[flat|nested] 14+ messages in thread

* [bug#50490] [PATCH 0/5] Some julia packages
  2021-09-14 18:19 ` [bug#50490] [PATCH 4/4] gnu: Add julia-documenter Efraim Flashner
@ 2021-09-27 17:11   ` zimoun
  2021-09-30 11:18     ` Efraim Flashner
  0 siblings, 1 reply; 14+ messages in thread
From: zimoun @ 2021-09-27 17:11 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 50490

Hi Efraim,

On mar., 14 sept. 2021 at 21:19, Efraim Flashner <efraim@flashner.co.il> wrote:

I would add here an explanation, along these lines: «These four
variables are added by the same commit to avoid a cyclic dependency.»

> * gnu/packages/julia-xyz.scm (julia-documenter,
> julia-documentermarkdown, julia-documentertools): New variables.
> (julia-documenter-0.22): New hidden variable.
> ---
>  gnu/packages/julia-xyz.scm | 146 ++++++++++++++++++++++++++++++++++++-
>  1 file changed, 145 insertions(+), 1 deletion(-)

The patch does not apply…

> diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
> index 309687019d..e7e7680cca 100644
> --- a/gnu/packages/julia-xyz.scm
> +++ b/gnu/packages/julia-xyz.scm
> @@ -26,7 +26,9 @@ (define-module (gnu packages julia-xyz)
>    #:use-module (guix git-download)
>    #:use-module (guix build-system julia)
>    #:use-module (gnu packages gcc)
> -  #:use-module (gnu packages julia-jll))
> +  #:use-module (gnu packages julia-jll)
> +  #:use-module (gnu packages python)
> +  #:use-module (gnu packages version-control))
>
>  (define-public julia-abstractffts
>    (package
> @@ -990,6 +992,148 @@ (define-public julia-docstringextensions
>  valuable enough at this time.")
>      (license license:expat)))
>
> +;; By removing all the javascript and css downloads any HTML documentation
> +;; produced by this package will not be very useful.
> +(define-public julia-documenter
> +  (package
> +    (name "julia-documenter")
> +    (version "0.27.6")
> +    (source
> +      (origin
> +        (method git-fetch)
> +        (uri (git-reference
> +               (url "https://github.com/JuliaDocs/Documenter.jl")
> +               (commit (string-append "v" version))))
> +        (file-name (git-file-name name version))
> +        (sha256
> +         (base32 "1y6rql7cxc7hfhc8rfq1mdmffp70sqzyh4vnnq93fziwrc8c8sbj"))))
> +    (build-system julia-build-system)
> +    (arguments
> +     `(#:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'patch-source
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (substitute* "src/Deps.jl"
> +               (("pip install")
> +                (string-append (assoc-ref inputs "python")
> +                               "/bin/pip install")))
> +             #t))
> +         (add-after 'unpack 'remove-javascript-downloads
> +           (lambda _
> +             (substitute* "src/Writers/HTMLWriter.jl"
> +               (("cdnjs.cloudflare.com") "example.com"))
> +             ;; Removing the javascript downloads causes these tests fail.
> +             (substitute* "test/examples/tests.jl"
> +               ((".*Main\\.examples_html_doc.*") "")
> +               ((".*Main\\.examples_html_mathjax3_doc.*") ""))
> +             #t)))))
> +    (propagated-inputs
> +     `(("julia-ansicoloredprinters" ,julia-ansicoloredprinters)
> +       ("julia-docstringextensions" ,julia-docstringextensions)
> +       ("julia-iocapture" ,julia-iocapture)
> +       ("julia-json" ,julia-json)))
> +    (inputs
> +     `(("python" ,python-wrapper)))
> +    (native-inputs
> +     `(("git" ,git-minimal)
> +       ("julia-documentermarkdown" ,julia-documentermarkdown)
> +       ("julia-documentertools" ,julia-documentertools)))
> +    (home-page "https://juliadocs.github.io/Documenter.jl")
> +    (synopsis "Documentation generator for Julia")
> +    (description "This package provides a documentation generator for Julia.")
> +    (license license:expat)))
> +
> +(define-public julia-documenter-0.22

Do we need to make it public?  Is it not enough to keep it hidden?

> +  (package
> +    (inherit julia-documenter)
> +    (name "julia-documenter")
> +    (version "0.22.6")
> +    (source
> +      (origin
> +        (method git-fetch)
> +        (uri (git-reference
> +               (url "https://github.com/JuliaDocs/Documenter.jl")
> +               (commit (string-append "v" version))))
> +        (file-name (git-file-name name version))
> +        (sha256
> +         (base32
> +          "1z8b7267y7yn5nx8sjwkmc0ph97vmv42q52jg7s89ghqb9xx3wv5"))))
> +    (arguments
> +     `(#:tests? #f      ; Some tests require network.
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'remove-javascript-downloads
> +           (lambda _
> +             ;; This isn't problematic because we only use
> +             ;; this package for bootstrapping.
> +             (substitute* '("assets/html/documenter.js"
> +                            "assets/html/search.js"
> +                            "src/Writers/HTMLWriter.jl")
> +               (("cdnjs.cloudflare.com") "example.com"))
> +             #t)))))
> +    (propagated-inputs
> +     `(("julia-docstringextensions" ,julia-docstringextensions)
> +       ("julia-json" ,julia-json)))
> +    (inputs `())
> +    (native-inputs `())
> +    (properties '((hidden? . #t)))))
> +
> +(define-public julia-documentermarkdown
> +  (package
> +    (name "julia-documentermarkdown")
> +    (version "0.2.2")
> +    (source
> +      (origin
> +        (method git-fetch)
> +        (uri (git-reference
> +               (url "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
> +               (commit (string-append "v" version))))
> +        (file-name (git-file-name name version))
> +        (sha256
> +         (base32 "0sx89hi5p2f8zi2rp5qrv06m270d90pxj5d2y5cxls1spax7wqx8"))))
> +    (build-system julia-build-system)
> +    (inputs
> +     ;; We don't want to propagate the bootstrap version.
> +     ;; Cycle with Documenter.jl in later versions.
> +     `(("julia-documenter" ,julia-documenter-0.22)))
> +    (home-page "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
> +    (synopsis "Documenter's Markdown")
> +    (description "This package enables the Markdown / MkDocs backend of
> +@code{Documenter.jl}.")
> +    (license license:expat)))
> +
> +(define-public julia-documentertools
> +  (package
> +    (name "julia-documentertools")
> +    (version "0.1.13")
> +    (source
> +      (origin
> +        (method git-fetch)
> +        (uri (git-reference
> +               (url "https://github.com/JuliaDocs/DocumenterTools.jl")
> +               (commit (string-append "v" version))))
> +        (file-name (git-file-name name version))
> +        (sha256
> +         (base32 "05p57p8xlkn42m1lv9gq4hl96vp7hpj19d51p828ai1rbpcpi3a6"))))
> +    (build-system julia-build-system)
> +    (arguments
> +     `(#:tests? #f))    ; Tests require network.
> +    (inputs
> +     ;; We don't want to propagate the bootstrap version.
> +     ;; Cycle with Documenter.jl in later versions.
> +     `(("julia-documenter" ,julia-documenter-0.22)))
> +    (propagated-inputs
> +     `(("julia-docstringextensions" ,julia-docstringextensions)
> +       ("julia-gumbo" ,julia-gumbo)
> +       ("julia-sass" ,julia-sass)))
> +    (native-inputs
> +     `(("julia-example" ,julia-example)))
> +    (home-page "https://github.com/JuliaDocs/DocumenterTools.jl")
> +    (synopsis "Extra tools for setting up Documenter")

I would write «setting up Documenter.jl»

> +    (description "This package contains utilities for setting up documentation
> +generation with @code{Documenter.jl}.")
> +    (license license:expat)))
> +
>  (define-public julia-diffresults
>    (package
>      (name "julia-diffresults")

…so I have not tried it.  It LGTM though.

Cheers,
simon




^ permalink raw reply	[flat|nested] 14+ messages in thread

* [bug#50582] [PATCH 0/4] Julia-documenter
  2021-09-14 18:31   ` [bug#50582] Acknowledgement ([PATCH 0/4] Julia-documenter) Efraim Flashner
@ 2021-09-27 17:15     ` zimoun
  2021-09-29  7:21       ` Efraim Flashner
  2021-09-30 11:26       ` bug#50582: " Efraim Flashner
  0 siblings, 2 replies; 14+ messages in thread
From: zimoun @ 2021-09-27 17:15 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 50582

Hi Efraim,

On mar., 14 sept. 2021 at 21:31, Efraim Flashner <efraim@flashner.co.il> wrote:
> I seem to be having a hard time sending the patches so I'm attaching
> them to this email.

Are they different from the ones in patch#50490; for instance this documenter:

<http://issues.guix.gnu.org/50490#4>


Cheers,
simon




^ permalink raw reply	[flat|nested] 14+ messages in thread

* [bug#50582] [PATCH 0/4] Julia-documenter
  2021-09-27 17:15     ` [bug#50582] [PATCH 0/4] Julia-documenter zimoun
@ 2021-09-29  7:21       ` Efraim Flashner
  2021-09-30 11:26       ` bug#50582: " Efraim Flashner
  1 sibling, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-09-29  7:21 UTC (permalink / raw)
  To: zimoun; +Cc: 50582

[-- Attachment #1: Type: text/plain, Size: 688 bytes --]

On Mon, Sep 27, 2021 at 07:15:12PM +0200, zimoun wrote:
> Hi Efraim,
> 
> On mar., 14 sept. 2021 at 21:31, Efraim Flashner <efraim@flashner.co.il> wrote:
> > I seem to be having a hard time sending the patches so I'm attaching
> > them to this email.
> 
> Are they different from the ones in patch#50490; for instance this documenter:
> 
> <http://issues.guix.gnu.org/50490#4>

No, they should be the same. I just re-sent the patch files from my home
directory.

-- 
Efraim Flashner   <efraim@flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [bug#50490] [PATCH 0/5] Some julia packages
  2021-09-27 17:11   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
@ 2021-09-30 11:18     ` Efraim Flashner
  0 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-09-30 11:18 UTC (permalink / raw)
  To: zimoun; +Cc: 50490

[-- Attachment #1: Type: text/plain, Size: 8570 bytes --]

On Mon, Sep 27, 2021 at 07:11:18PM +0200, zimoun wrote:
> Hi Efraim,
> 
> On mar., 14 sept. 2021 at 21:19, Efraim Flashner <efraim@flashner.co.il> wrote:
> 
> I would add here an explanation, along these lines: «These four
> variables are added by the same commit to avoid a cyclic dependency.»
> 
> > * gnu/packages/julia-xyz.scm (julia-documenter,
> > julia-documentermarkdown, julia-documentertools): New variables.
> > (julia-documenter-0.22): New hidden variable.
> > ---
> >  gnu/packages/julia-xyz.scm | 146 ++++++++++++++++++++++++++++++++++++-
> >  1 file changed, 145 insertions(+), 1 deletion(-)
> 
> The patch does not apply…
Probably due to the module imports. python-xyz was added in a different
patch.
> 
> > diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
> > index 309687019d..e7e7680cca 100644
> > --- a/gnu/packages/julia-xyz.scm
> > +++ b/gnu/packages/julia-xyz.scm
> > @@ -26,7 +26,9 @@ (define-module (gnu packages julia-xyz)
> >    #:use-module (guix git-download)
> >    #:use-module (guix build-system julia)
> >    #:use-module (gnu packages gcc)
> > -  #:use-module (gnu packages julia-jll))
> > +  #:use-module (gnu packages julia-jll)
> > +  #:use-module (gnu packages python)
> > +  #:use-module (gnu packages version-control))
> >
> >  (define-public julia-abstractffts
> >    (package
> > @@ -990,6 +992,148 @@ (define-public julia-docstringextensions
> >  valuable enough at this time.")
> >      (license license:expat)))
> >
> > +;; By removing all the javascript and css downloads any HTML documentation
> > +;; produced by this package will not be very useful.
> > +(define-public julia-documenter
> > +  (package
> > +    (name "julia-documenter")
> > +    (version "0.27.6")
> > +    (source
> > +      (origin
> > +        (method git-fetch)
> > +        (uri (git-reference
> > +               (url "https://github.com/JuliaDocs/Documenter.jl")
> > +               (commit (string-append "v" version))))
> > +        (file-name (git-file-name name version))
> > +        (sha256
> > +         (base32 "1y6rql7cxc7hfhc8rfq1mdmffp70sqzyh4vnnq93fziwrc8c8sbj"))))
> > +    (build-system julia-build-system)
> > +    (arguments
> > +     `(#:phases
> > +       (modify-phases %standard-phases
> > +         (add-after 'unpack 'patch-source
> > +           (lambda* (#:key inputs #:allow-other-keys)
> > +             (substitute* "src/Deps.jl"
> > +               (("pip install")
> > +                (string-append (assoc-ref inputs "python")
> > +                               "/bin/pip install")))
> > +             #t))
> > +         (add-after 'unpack 'remove-javascript-downloads
> > +           (lambda _
> > +             (substitute* "src/Writers/HTMLWriter.jl"
> > +               (("cdnjs.cloudflare.com") "example.com"))
> > +             ;; Removing the javascript downloads causes these tests fail.
> > +             (substitute* "test/examples/tests.jl"
> > +               ((".*Main\\.examples_html_doc.*") "")
> > +               ((".*Main\\.examples_html_mathjax3_doc.*") ""))
> > +             #t)))))
> > +    (propagated-inputs
> > +     `(("julia-ansicoloredprinters" ,julia-ansicoloredprinters)
> > +       ("julia-docstringextensions" ,julia-docstringextensions)
> > +       ("julia-iocapture" ,julia-iocapture)
> > +       ("julia-json" ,julia-json)))
> > +    (inputs
> > +     `(("python" ,python-wrapper)))
> > +    (native-inputs
> > +     `(("git" ,git-minimal)
> > +       ("julia-documentermarkdown" ,julia-documentermarkdown)
> > +       ("julia-documentertools" ,julia-documentertools)))
> > +    (home-page "https://juliadocs.github.io/Documenter.jl")
> > +    (synopsis "Documentation generator for Julia")
> > +    (description "This package provides a documentation generator for Julia.")
> > +    (license license:expat)))
> > +
> > +(define-public julia-documenter-0.22
> 
> Do we need to make it public?  Is it not enough to keep it hidden?
It should be enough to not make it hidden and not public. Also, I took
another look at it and adjusted the package slightly so it can use the
current julia-documenter version and not an older version for the
bootstrap.
> 
> > +  (package
> > +    (inherit julia-documenter)
> > +    (name "julia-documenter")
> > +    (version "0.22.6")
> > +    (source
> > +      (origin
> > +        (method git-fetch)
> > +        (uri (git-reference
> > +               (url "https://github.com/JuliaDocs/Documenter.jl")
> > +               (commit (string-append "v" version))))
> > +        (file-name (git-file-name name version))
> > +        (sha256
> > +         (base32
> > +          "1z8b7267y7yn5nx8sjwkmc0ph97vmv42q52jg7s89ghqb9xx3wv5"))))
> > +    (arguments
> > +     `(#:tests? #f      ; Some tests require network.
> > +       #:phases
> > +       (modify-phases %standard-phases
> > +         (add-after 'unpack 'remove-javascript-downloads
> > +           (lambda _
> > +             ;; This isn't problematic because we only use
> > +             ;; this package for bootstrapping.
> > +             (substitute* '("assets/html/documenter.js"
> > +                            "assets/html/search.js"
> > +                            "src/Writers/HTMLWriter.jl")
> > +               (("cdnjs.cloudflare.com") "example.com"))
> > +             #t)))))
> > +    (propagated-inputs
> > +     `(("julia-docstringextensions" ,julia-docstringextensions)
> > +       ("julia-json" ,julia-json)))
> > +    (inputs `())
> > +    (native-inputs `())
> > +    (properties '((hidden? . #t)))))
> > +
> > +(define-public julia-documentermarkdown
> > +  (package
> > +    (name "julia-documentermarkdown")
> > +    (version "0.2.2")
> > +    (source
> > +      (origin
> > +        (method git-fetch)
> > +        (uri (git-reference
> > +               (url "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
> > +               (commit (string-append "v" version))))
> > +        (file-name (git-file-name name version))
> > +        (sha256
> > +         (base32 "0sx89hi5p2f8zi2rp5qrv06m270d90pxj5d2y5cxls1spax7wqx8"))))
> > +    (build-system julia-build-system)
> > +    (inputs
> > +     ;; We don't want to propagate the bootstrap version.
> > +     ;; Cycle with Documenter.jl in later versions.
> > +     `(("julia-documenter" ,julia-documenter-0.22)))
> > +    (home-page "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
> > +    (synopsis "Documenter's Markdown")
> > +    (description "This package enables the Markdown / MkDocs backend of
> > +@code{Documenter.jl}.")
> > +    (license license:expat)))
> > +
> > +(define-public julia-documentertools
> > +  (package
> > +    (name "julia-documentertools")
> > +    (version "0.1.13")
> > +    (source
> > +      (origin
> > +        (method git-fetch)
> > +        (uri (git-reference
> > +               (url "https://github.com/JuliaDocs/DocumenterTools.jl")
> > +               (commit (string-append "v" version))))
> > +        (file-name (git-file-name name version))
> > +        (sha256
> > +         (base32 "05p57p8xlkn42m1lv9gq4hl96vp7hpj19d51p828ai1rbpcpi3a6"))))
> > +    (build-system julia-build-system)
> > +    (arguments
> > +     `(#:tests? #f))    ; Tests require network.
> > +    (inputs
> > +     ;; We don't want to propagate the bootstrap version.
> > +     ;; Cycle with Documenter.jl in later versions.
> > +     `(("julia-documenter" ,julia-documenter-0.22)))
> > +    (propagated-inputs
> > +     `(("julia-docstringextensions" ,julia-docstringextensions)
> > +       ("julia-gumbo" ,julia-gumbo)
> > +       ("julia-sass" ,julia-sass)))
> > +    (native-inputs
> > +     `(("julia-example" ,julia-example)))
> > +    (home-page "https://github.com/JuliaDocs/DocumenterTools.jl")
> > +    (synopsis "Extra tools for setting up Documenter")
> 
> I would write «setting up Documenter.jl»
> 
> > +    (description "This package contains utilities for setting up documentation
> > +generation with @code{Documenter.jl}.")
> > +    (license license:expat)))
> > +
> >  (define-public julia-diffresults
> >    (package
> >      (name "julia-diffresults")
> 
> …so I have not tried it.  It LGTM though.
> 
> Cheers,
> simon

-- 
Efraim Flashner   <efraim@flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* bug#50582: [PATCH 0/4] Julia-documenter
  2021-09-27 17:15     ` [bug#50582] [PATCH 0/4] Julia-documenter zimoun
  2021-09-29  7:21       ` Efraim Flashner
@ 2021-09-30 11:26       ` Efraim Flashner
  1 sibling, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-09-30 11:26 UTC (permalink / raw)
  To: zimoun; +Cc: 50590-done, 50582-done

[-- Attachment #1: Type: text/plain, Size: 254 bytes --]

Thanks for the reviews. Patches pushed!

-- 
Efraim Flashner   <efraim@flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2021-09-30 11:28 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-14 13:08 [bug#50582] [PATCH 0/4] Julia-documenter Efraim Flashner
2021-09-14 13:11 ` [bug#50582] [PATCH 1/4] gnu: Add julia-libsass-jll Efraim Flashner
2021-09-27 17:01   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
2021-09-14 13:12 ` [bug#50582] [PATCH 2/4] gnu: Add julia-sass Efraim Flashner
2021-09-27 17:03   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
2021-09-14 18:19 ` [bug#50490] [PATCH 3/4] gnu: Add julia-ansicoloredprinters Efraim Flashner
2021-09-27 17:04   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
2021-09-14 18:19 ` [bug#50490] [PATCH 4/4] gnu: Add julia-documenter Efraim Flashner
2021-09-27 17:11   ` [bug#50490] [PATCH 0/5] Some julia packages zimoun
2021-09-30 11:18     ` Efraim Flashner
     [not found] ` <handler.50582.B.163162505210361.ack@debbugs.gnu.org>
2021-09-14 18:31   ` [bug#50582] Acknowledgement ([PATCH 0/4] Julia-documenter) Efraim Flashner
2021-09-27 17:15     ` [bug#50582] [PATCH 0/4] Julia-documenter zimoun
2021-09-29  7:21       ` Efraim Flashner
2021-09-30 11:26       ` bug#50582: " Efraim Flashner

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.