GNU bug report logs - #47350
[PATCH 00/29] Add Zygote (piece for Machine Learning with Julia)

Previous Next

Package: guix-patches;

Reported by: zimoun <zimon.toutoune <at> gmail.com>

Date: Tue, 23 Mar 2021 19:43:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 47350 in the body.
You can then email your comments to 47350 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to anothersms <at> gmail.com, ludo <at> gnu.org, guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:43:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to zimoun <zimon.toutoune <at> gmail.com>:
New bug report received and forwarded. Copy sent to anothersms <at> gmail.com, ludo <at> gnu.org, guix-patches <at> gnu.org. (Tue, 23 Mar 2021 19:43:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: guix-patches <at> gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 00/29] Add Zygote (piece for Machine Learning with Julia)
Date: Tue, 23 Mar 2021 20:42:11 +0100
Hi,

This adds all the packages required to build Zygote, the source-to-source
automatic differentiation in Julia.

   <https://github.com/FluxML/Zygote.jl>

It is the first brick to have Flux, the Julia machine learning framework.

  <https://github.com/FluxML/Flux.jl>

Noting that (at least 3) large pieces are still missing: Juno, Documenter and
CUDA.

Speaking about the Julia package CUDA, it is required by the test suite of
Zygote, that's why the #:tests? is #f.  However, we manually check the package
by running the small examples, e.g.,

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix environment -C --ad-hoc julia julia-zygote -- julia
julia> using Zygote
[ Info: Precompiling Zygote [e88e6eb3-aa80-5325-afca-941959d7151f]

julia> f(x) = 5x + 3
f (generic function with 1 method)

julia> f(10), f'(10)
(53, 5)

julia> @code_llvm f'(10)

;  @ /gnu/store/5m6676w77bbz44prbfxhxmk88srgxy81-profile/share/julia/packages/Zygote/src/compiler/interface.jl:62 within `#43'
define i64 @"julia_#43_2036"(i64) {
top:
  ret i64 5
}

julia>  W, b = rand(2, 3), rand(2);

julia> predict(x) = W*x .+ b;

julia> g = gradient(Params([W, b])) do
         sum(predict([1,2,3]))
       end
Grads(...)

julia> g[W], g[b]
([1.0 2.0 3.0; 1.0 2.0 3.0], 2-element Fill{Float64}: entries equal to 1.0)
--8<---------------cut here---------------end--------------->8---

All the packages are not archived because of the rate limit.  They should be soon.

--8<---------------cut here---------------start------------->8---
for n in $(git log -30 --format="%s" --reverse | cut -d'-' -f2 | sed 's/\.//');
do
  ./pre-inst-env guix lint -c archival julia-${n} ;
done

gnu/packages/julia-xyz.scm:397:7: julia-constructionbase <at> 1.1.0: scheduled Software Heritage archival
gnu/packages/julia-xyz.scm:817:5: julia-macrotools <at> 0.5.6: scheduled Software Heritage archival
gnu/packages/julia-xyz.scm:1040:5: julia-reexport <at> 1.0.0: scheduled Software Heritage archival
gnu/packages/julia-xyz.scm:723:5: julia-irtools <at> 0.4.2: scheduled Software Heritage archival
gnu/packages/julia-xyz.scm:283:5: julia-colortypes <at> 0.10.12: scheduled Software Heritage archival
gnu/packages/julia-xyz.scm:1059:5: julia-requires <at> 1.1.3: scheduled Software Heritage archival
gnu/packages/julia-xyz.scm:1085:5: julia-richardson <at> 1.4.0: scheduled Software Heritage archival
gnu/packages/julia-xyz.scm:552:5: julia-finitedifferences <at> 0.12.2: Software Heritage rate limit reached; try again later
gnu/packages/julia-xyz.scm:211:5: julia-chainrulestestutils <at> 0.6.4: archival rate limit exceeded; try again later

gnu/packages/julia-xyz.scm:528:5: julia-fillarrays <at> 0.11.7: archival rate limit exceeded; try again later
gnu/packages/julia-xyz.scm:309:5: julia-commonsubexpressions <at> 0.3.0: archival rate limit exceeded; try again later
gnu/packages/julia-xyz.scm:131:5: julia-calculus <at> 0.5.1: archival rate limit exceeded; try again later
gnu/packages/julia-xyz.scm:441:5: julia-diffresults <at> 1.0.3: archival rate limit exceeded; try again later
gnu/packages/julia-xyz.scm:488:5: julia-difftests <at> 0.1.1: archival rate limit exceeded; try again later
guix lint: error: julia-compilersupportlibraries: unknown package
guix lint: error: julia-openspecfun: unknown package
gnu/packages/julia-xyz.scm:1112:5: julia-specialfunctions <at> 1.3.0: archival rate limit exceeded; try again later
gnu/packages/julia-xyz.scm:155:5: julia-chainrules <at> 0.7.54: archival rate limit exceeded; try again later
gnu/packages/julia-xyz.scm:613:5: julia-forwarddiff <at> 0.10.17: archival rate limit exceeded; try again later
gnu/packages/julia-xyz.scm:1221:5: julia-zygoterules <at> 0.2.1: archival rate limit exceeded; try again later
gnu/packages/julia-xyz.scm:1243:5: julia-zygote <at> 0.6.4: archival rate limit exceeded; try again later
--8<---------------cut here---------------end--------------->8---


Last, well, I feel motivated to implement an (recursive) importer, even
inaccurate, it will greatly help.


All the best,
simon

zimoun (29):
  gnu: Add julia-constructionbase.
  gnu: Add julia-macrotools.
  gnu: Add julia-nanmath.
  gnu: Add julia-reexport.
  gnu: Add julia-irtools.
  gnu: Add julia-staticarrays.
  gnu: Add julia-unitful.
  gnu: Add julia-abstractffts.
  gnu: Add julia-colortypes.
  gnu: Add julia-colors.
  gnu: Add julia-example.
  gnu: Add julia-requires.
  gnu: Add julia-chainrulescore.
  gnu: Add julia-richardson.
  gnu: Add julia-finitedifferences.
  gnu: Add julia-chainrulestestutils.
  gnu: Add julia-fillarrays.
  gnu: Add julia-commonsubexpressions.
  gnu: Add julia-calculus.
  gnu: Add julia-diffresults.
  gnu: Add julia-difftests.
  gnu: Add julia-compilersupportlibraries-jll.
  gnu: Add julia-openspecfun-jll.
  gnu: Add julia-specialfunctions.
  gnu: Add julia-diffrules.
  gnu: Add julia-chainrules.
  gnu: Add julia-forwarddiff.
  gnu: Add julia-zygoterules.
  gnu: Add julia-zygote.

 gnu/packages/julia-xyz.scm | 777 +++++++++++++++++++++++++++++++++++++
 1 file changed, 777 insertions(+)


base-commit: a2f3a456bec357394fe550d927c26bbbdaa7ba6e
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:01 GMT) Full text and rfc822 format available.

Message #8 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 01/29] gnu: Add julia-constructionbase.
Date: Tue, 23 Mar 2021 20:45:50 +0100
* gnu/packages/julia-xyz.scm (julia-constructionbase): 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 0d35cbde57..2e344fd6f1 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2020, 2021 Nicolò Balzarotti <nicolo <at> nixo.xyz>
+;;; Copyright © 2021 Simon Tournier <zimon.toutoune <at> gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -117,6 +118,27 @@ provides a macro that lets you use the latest syntax in a backwards-compatible
 way.")
     (license license:expat)))
 
+(define-public julia-constructionbase
+  (let ((commit "de77e2865b554f9b078fd8c35b593cce0554ae02"))
+    (package
+      (name "julia-constructionbase")
+      (version "1.1.0")                 ;tag not created upstream
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/JuliaObjects/ConstructionBase.jl")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1y79sfj0rds1skl9j16p9161hwa9khm0xc2m4hgjcbh5zzvyr57v"))))
+      (build-system julia-build-system)
+      (home-page "https://juliaobjects.github.io/ConstructionBase.jl/dev/")
+      (synopsis "Primitive functions for construction of objects")
+      (description "This very lightwight package provides primitive functions
+for construction of objects.")
+      (license license:expat))))
+
 (define-public julia-datastructures
   (package
     (name "julia-datastructures")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:02 GMT) Full text and rfc822 format available.

Message #11 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 03/29] gnu: Add julia-nanmath.
Date: Tue, 23 Mar 2021 20:45:52 +0100
* gnu/packages/julia-xyz.scm (julia-nanmath): 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 c187c905b0..e2cd912e4b 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -435,6 +435,26 @@ TLS} and cryptography C libary for Julia.")
 wrappers.")
     (license license:expat)))
 
+(define-public julia-nanmath
+  (package
+    (name "julia-nanmath")
+    (version "0.3.5")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/mlubin/NaNMath.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1hczhz00qj99w63vp627kwk02l2sr2qmzc2rkwwkdwvzy670p25q"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/mlubin/NaNMath.jl")
+    (synopsis "Implementations of basic math functions")
+    (description "Implementations of basic math functions which return
+@code{NaN} instead of throwing a @code{DomainError}.")
+    (license license:expat)))
+
 (define-public julia-orderedcollections
   (package
     (name "julia-orderedcollections")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:02 GMT) Full text and rfc822 format available.

Message #14 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 02/29] gnu: Add julia-macrotools.
Date: Tue, 23 Mar 2021 20:45:51 +0100
* gnu/packages/julia-xyz.scm (julia-macrotools): New variable.
---
 gnu/packages/julia-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 2e344fd6f1..c187c905b0 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -344,6 +344,27 @@ used in autogenerated packages via @code{BinaryBuilder.jl}.")
 and printing JSON documents.")
     (license license:expat)))
 
+(define-public julia-macrotools
+  (package
+    (name "julia-macrotools")
+    (version "0.5.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/FluxML/MacroTools.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0k4z2hyasd9cwxf4l61zk3w4ajs44k69wx6z1ghdn8f5p8xy217f"))))
+    (build-system julia-build-system)
+    (home-page "https://fluxml.ai/MacroTools.jl")
+    (synopsis "Tools for working with Julia code and expressions")
+    (description "This library provides tools for working with Jlia code and
+expressions.  This includes a template-matching system and code-walking tools
+that let you do deep transformations of code..")
+    (license license:expat)))
+
 (define-public julia-mbedtls
   (package
     (name "julia-mbedtls")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:02 GMT) Full text and rfc822 format available.

Message #17 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 04/29] gnu: Add julia-reexport.
Date: Tue, 23 Mar 2021 20:45:53 +0100
* gnu/packages/julia-xyz.scm (julia-reexport): New variable.
---
 gnu/packages/julia-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index e2cd912e4b..727c4285f9 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -522,6 +522,25 @@ languages like Fortran.")
 utilities for Julia.")
     (license license:expat)))
 
+(define-public julia-reexport
+  (package
+    (name "julia-reexport")
+    (version "1.0.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/simonster/Reexport.jl")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1yhhja1zz6dy5f4fd19bdwd6jwgj7q4w3avzgyg1hjhmdl8jrh0s"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/simonster/Reexport.jl")
+    (synopsis "Re-export modules and symbols")
+    (description "This package provides tools to re-export modules and symbols.")
+    (license license:expat)))
+
 (define-public julia-uris
   (package
     (name "julia-uris")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:03 GMT) Full text and rfc822 format available.

Message #20 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 05/29] gnu: Add julia-irtools.
Date: Tue, 23 Mar 2021 20:45:54 +0100
* gnu/packages/julia-xyz.scm (julia-irtools): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 727c4285f9..9a34fea4ea 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -276,6 +276,32 @@ implementing both a client and a server.")
 allows to interface with @file{.ini} files.")
     (license license:expat)))
 
+(define-public julia-irtools
+  (package
+    (name "julia-irtools")
+    (version "0.4.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/FluxML/IRTools.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0wwzy77jcdnffnd5fr6xan7162g4wydz67igrq82wflwnrhlcx5y"))))
+    (arguments
+     '(#:tests? #f))                    ;require Documenter, not packaged yet
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-macrotools" ,julia-macrotools)))
+    (home-page "https://github.com/FluxML/IRTools.jl")
+    (synopsis "Simpe and flexible IR format")
+    (description "This package provides a simple and flexible IR format,
+expressive enough to work with both lowered and typed Julia code, as well as
+external IRs.  It can be used with Julia metaprogramming tools such as
+Cassette.")
+    (license license:expat)))
+
 (define-public julia-jllwrappers
   (package
     (name "julia-jllwrappers")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:04 GMT) Full text and rfc822 format available.

Message #23 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 06/29] gnu: Add julia-staticarrays.
Date: Tue, 23 Mar 2021 20:45:55 +0100
* gnu/packages/julia-xyz.scm (julia-staticarrays): New variable.
---
 gnu/packages/julia-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 9a34fea4ea..226d4dff6c 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -567,6 +567,31 @@ utilities for Julia.")
     (description "This package provides tools to re-export modules and symbols.")
     (license license:expat)))
 
+(define-public julia-staticarrays
+  (package
+    (name "julia-staticarrays")
+    (version "1.0.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaArrays/StaticArrays.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "01z8bcqwpfkp8p1h1r36pr5cc3798y76zkas7g3206pcsdhvlkz1"))))
+    (build-system julia-build-system)
+    (inputs
+     `(("julia-benchmarktools" ,julia-benchmarktools)))
+    (home-page "https://github.com/JuliaArrays/StaticArrays.jl")
+    (synopsis "Statically sized arrays")
+    (description "This package provides a framework for implementing
+statically sized arrays in Julia, using the abstract type
+@code{StaticArray{Size,T,N} <: AbstractArray{T,N}}.  Subtypes of
+@code{StaticArray} will provide fast implementations of common array and
+linear algebra operations.")
+    (license license:expat)))
+
 (define-public julia-uris
   (package
     (name "julia-uris")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:04 GMT) Full text and rfc822 format available.

Message #26 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 07/29] gnu: Add julia-unitful.
Date: Tue, 23 Mar 2021 20:45:56 +0100
* gnu/packages/julia-xyz.scm (julia-unitful): 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 226d4dff6c..5d3db1cd4b 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -625,3 +625,25 @@ linear algebra operations.")
 working with @acronym{URIs,Uniform Resource Identifiers}, as defined in RFC
 3986.")
     (license license:expat)))
+
+(define-public julia-unitful
+  (package
+    (name "julia-unitful")
+    (version "1.6.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/PainterQubits/Unitful.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0g5bhlvay9yk11c5dqwbzmb3q7lzj0cq5zchyk39d59fkvvmxvq3"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-constructionbase" ,julia-constructionbase)))
+    (home-page "https://painterqubits.github.io/Unitful.jl/stable/")
+    (synopsis "Physical units in Julia")
+    (description "This package supports SI units and also many other unit
+system.")
+    (license license:expat)))
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:05 GMT) Full text and rfc822 format available.

Message #29 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 08/29] gnu: Add julia-abstractffts.
Date: Tue, 23 Mar 2021 20:45:57 +0100
* gnu/packages/julia-xyz.scm (julia-abstractffts): New variable.
---
 gnu/packages/julia-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 5d3db1cd4b..d417a996f8 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -24,6 +24,31 @@
   #:use-module (guix build-system julia)
   #:use-module (gnu packages tls))
 
+(define-public julia-abstractffts
+  (package
+    (name "julia-abstractffts")
+    (version "1.0.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaMath/AbstractFFTS.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0083pwdyxjb04i330ir9pc8kmp4bwk59lx1jgc9qi05y8j7xzbp0"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for tests
+     `(("julia-unitful" ,julia-unitful)))
+    (home-page "https://github.com/JuliaGPU/Adapt.jl")
+    (synopsis "General framework for fast Fourier transforms (FFTs)")
+    (description "This package allows multiple FFT packages to co-exist with
+the same underlying @code{fft(x)} and @code{plan_fft(x)} interface.  It is
+mainly not intended to be used directly.  Instead, developers of packages that
+implement FFTs (such as @code{FFTW.jl} or @code{FastTransforms.jl}) extend the
+types/functions defined in AbstractFFTs.")
+    (license license:expat)))
+
 (define-public julia-adapt
   (package
     (name "julia-adapt")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:05 GMT) Full text and rfc822 format available.

Message #32 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 09/29] gnu: Add julia-colortypes.
Date: Tue, 23 Mar 2021 20:45:58 +0100
* gnu/packages/julia-xyz.scm (julia-colortypes): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index d417a996f8..3213efd715 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -121,6 +121,32 @@ operations.  It can wrap any @code{IO} type automatically making incremental
 reading and writing faster.")
     (license license:expat)))
 
+(define-public julia-colortypes
+  (package
+    (name "julia-colortypes")
+    (version "0.10.12")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaGraphics/ColorTypes.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "176hr3qbz7lncmykks2qaj3cqisnzim7wi5jwsca9ld26wwyvyqq"))))
+    (arguments
+     '(#:tests? #f))                    ;require Documenter, not packaged yet
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-fixedpointnumbers" ,julia-fixedpointnumbers)))
+    (home-page "https://github.com/JuliaGraphics/ColorTypes.jl")
+    (synopsis "Basic color types and constructor")
+    (description "This minimalistic package serves as the foundation for
+working with colors in Julia.  It defines basic color types and their
+constructors, and sets up traits and show methods to make them easier to work
+with.")
+    (license license:expat)))
+
 (define-public julia-compat
   (package
     (name "julia-compat")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:06 GMT) Full text and rfc822 format available.

Message #35 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 10/29] gnu: Add julia-colors.
Date: Tue, 23 Mar 2021 20:46:32 +0100
* gnu/packages/julia-xyz.scm (julia-colors): New variable.
---
 gnu/packages/julia-xyz.scm | 40 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 3213efd715..84c98b32af 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -121,6 +121,46 @@ operations.  It can wrap any @code{IO} type automatically making incremental
 reading and writing faster.")
     (license license:expat)))
 
+(define-public julia-colors
+  (package
+    (name "julia-colors")
+    (version "0.12.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaGraphics/Colors.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "156zsszgwh6bmznsan0zyha6yvcxw3c5mvc5vr2qfsgxbyh36ln6"))))
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-test
+           (lambda _
+             (substitute* "test/parse.jl"
+               (("@test_logs \\(:warn, r\"Use \\\\\"SeaGreen\\\\\" or \\\\\"seagreen\\\\\"\"\\)")
+                ""))
+             (substitute* "test/utilities.jl"
+               (("@test_logs \\(:warn, r\"Base\\\\\\.hex\\\\\\(c\\\\\\) has been moved\"\\)")
+                "")
+               (("@test_logs \\(:warn, r\"will soon be changed\"\\)")
+                ""))
+             #t)))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-colortypes" ,julia-colortypes)
+       ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
+       ("julia-reexport" ,julia-reexport)))
+    (home-page "https://github.com/JuliaGraphics/Colors.jl")
+    (synopsis "Tools for dealing with color")
+    (description "This package provides a wide array of functions for dealing
+with color.  This includes conversion between colorspaces, measuring distance
+between colors, simulating color blindness, parsing colors, and generating
+color scales for graphics.")
+    (license license:expat)))
+
 (define-public julia-colortypes
   (package
     (name "julia-colortypes")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:06 GMT) Full text and rfc822 format available.

Message #38 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 11/29] gnu: Add julia-example.
Date: Tue, 23 Mar 2021 20:46:33 +0100
* gnu/packages/julia-xyz.scm (julia-example): 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 84c98b32af..09e2c3ae6f 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -254,6 +254,26 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
 @code{Accumulators}, @code{LinkedLists}, @code{SortedDicts} and many others.")
     (license license:expat)))
 
+(define-public julia-example
+  (let ((commit "f968c69dea24f851d0c7e686db23fa55826b5388"))
+    (package
+      (name "julia-example")
+      (version "0.5.4")                   ;tag not created upstream
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/JuliaLang/Example.jl")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1v3z0d6gh6wfbypffy9m9rhh36px6fm5wjzq0y6rbmc95r0qpqlx"))))
+      (build-system julia-build-system)
+      (home-page "https://github.com/JuliaLang/Example.jl")
+      (synopsis "Module providing examples")
+      (description "This package provides various examples.")
+      (license license:expat))))
+
 (define-public julia-fixedpointnumbers
   (package
     (name "julia-fixedpointnumbers")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:06 GMT) Full text and rfc822 format available.

Message #41 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 12/29] gnu: Add julia-requires.
Date: Tue, 23 Mar 2021 20:46:34 +0100
* gnu/packages/julia-xyz.scm (julia-requires): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 09e2c3ae6f..f0df73a23c 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -678,6 +678,32 @@ utilities for Julia.")
     (description "This package provides tools to re-export modules and symbols.")
     (license license:expat)))
 
+(define-public julia-requires
+  (package
+    (name "julia-requires")
+    (version "1.1.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaPackaging/Requires.jl/")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "03hyfy7c0ma45b0y756j76awi3az2ii4bz4s8cxm3xw9yy1z7b01"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for test
+     `(("julia-example" ,julia-example)))
+    (propagated-inputs
+     `(("julia-colors" ,julia-colors)))
+    (home-page "https://github.com/JuliaPackaging/Requires.jl/")
+    (synopsis "Faster package loader")
+    (description "This package make loading packages faster, maybe.  It
+supports specifying glue code in packages which will load automatically when
+another package is loaded, so that explicit dependencies (and long load times)
+can be avoided.")
+    (license license:expat)))
+
 (define-public julia-staticarrays
   (package
     (name "julia-staticarrays")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:07 GMT) Full text and rfc822 format available.

Message #44 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 13/29] gnu: Add julia-chainrulescore.
Date: Tue, 23 Mar 2021 20:46:35 +0100
* gnu/packages/julia-xyz.scm (julia-chainrulescore): New variable.
---
 gnu/packages/julia-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index f0df73a23c..f3a37839e8 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -121,6 +121,31 @@ operations.  It can wrap any @code{IO} type automatically making incremental
 reading and writing faster.")
     (license license:expat)))
 
+(define-public julia-chainrulescore
+  (package
+    (name "julia-chainrulescore")
+    (version "0.9.29")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/ChainRulesCore.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1k0iayw39n1ikkkhvyi4498vsnzc94skqs41gnd15632gxjfvki4"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for tests
+     `(("julia-benchmarktools" ,julia-benchmarktools)
+       ("julia-staticarrays" ,julia-staticarrays)))
+    (propagated-inputs
+     `(("julia-compat" ,julia-compat)))
+    (home-page "https://github.com/JuliaDiff/ChainRulesCore.jl")
+    (synopsis "Common utilities used by downstream automatic differentiation tools")
+    (description "The package provides a light-weight dependency for defining
+sensitivities for functions without the need to depend on ChainRules itself.")
+    (license license:expat)))
+
 (define-public julia-colors
   (package
     (name "julia-colors")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:07 GMT) Full text and rfc822 format available.

Message #47 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 14/29] gnu: Add julia-richardson.
Date: Tue, 23 Mar 2021 20:46:36 +0100
* gnu/packages/julia-xyz.scm (julia-richardson): New variable.
---
 gnu/packages/julia-xyz.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index f3a37839e8..a4841fb0f7 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -729,6 +729,33 @@ another package is loaded, so that explicit dependencies (and long load times)
 can be avoided.")
     (license license:expat)))
 
+(define-public julia-richardson
+  (package
+    (name "julia-richardson")
+    (version "1.4.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaMath/Richardson.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "06v9ii3d7hh41fsrfklaa8ap55z5s017f888mrd1c18y4fx9i4nx"))))
+    (build-system julia-build-system)
+    (home-page "https://juliapackages.com/p/richardson")
+    (synopsis "Extrapolate function using Richardson method")
+    (description "This package provides a function extrapolate that
+extrapolates a given function @code{f(x)} to @code{f(x0)}, evaluating @code{f}
+only at a geometric sequence of points @code{> x0} (or optionally @code{<
+x0}).  The key algorithm is Richardson extrapolation using a Neville–Aitken
+tableau, which adaptively increases the degree of an extrapolation polynomial
+until convergence is achieved to a desired tolerance (or convergence stalls
+due to e.g. floating-point errors).  This allows one to obtain @code{f(x0)} to
+high-order accuracy, assuming that @code{f(x0+h)} has a Taylor series or some
+other power series in @code{h}.")
+    (license license:expat)))
+
 (define-public julia-staticarrays
   (package
     (name "julia-staticarrays")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:08 GMT) Full text and rfc822 format available.

Message #50 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 15/29] gnu: Add julia-finitedifferences.
Date: Tue, 23 Mar 2021 20:46:37 +0100
* gnu/packages/julia-xyz.scm (julia-finitedifferences): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index a4841fb0f7..5eb9217eae 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -299,6 +299,32 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
       (description "This package provides various examples.")
       (license license:expat))))
 
+(define-public julia-finitedifferences
+  (package
+    (name "julia-finitedifferences")
+    (version "0.12.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/FiniteDifferences.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0dcx34026xdpfmbjls3mrknl8ww62kxxfr77kfihbazsfg2gp5b4"))))
+    (build-system julia-build-system)
+    (inputs
+     `(("julia-benchmarktools" ,julia-benchmarktools)))
+    (propagated-inputs
+     `(("julia-chainrulescore" ,julia-chainrulescore)
+       ("julia-richardson" ,julia-richardson)
+       ("julia-staticarrays" ,julia-staticarrays)))
+    (home-page "https://github.com/JuliaDiff/FiniteDifferences.jl")
+    (synopsis "Estimates derivatives with finite differences")
+    (description "This package calculates approximate derivatives numerically
+using finite difference.")
+    (license license:expat)))
+
 (define-public julia-fixedpointnumbers
   (package
     (name "julia-fixedpointnumbers")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:08 GMT) Full text and rfc822 format available.

Message #53 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 16/29] gnu: Add julia-chainrulestestutils.
Date: Tue, 23 Mar 2021 20:46:38 +0100
* gnu/packages/julia-xyz.scm (julia-chainrulestestutils): New variable.
---
 gnu/packages/julia-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 5eb9217eae..6ddeee7172 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -146,6 +146,38 @@ reading and writing faster.")
 sensitivities for functions without the need to depend on ChainRules itself.")
     (license license:expat)))
 
+(define-public julia-chainrulestestutils
+  (package
+    (name "julia-chainrulestestutils")
+    (version "0.6.4")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/ChainRulesTestUtils.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1pzs947adnb3cx1qd0cxp2fidk9szz0zsqbas90z1lhydykkvkil"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-chainrulescore" ,julia-chainrulescore)
+       ("julia-compat" ,julia-compat)
+       ("julia-finitedifference" ,julia-finitedifferences)))
+    (home-page "https://github.com/JuliaDiff/ChainRulesTestUtils.jl")
+    (synopsis "Common utilities used by downstream automatic differentiation tools")
+    (description "This package is designed to help in testing
+@code{ChainRulesCore.frule} and @code{ChainRulesCore.rrule} methods.  The main
+entry points are @code{ChainRulesTestUtils.frule_test},
+@code{ChainRulesTestUtils.rrule_test}, and
+@code{ChainRulesTestUtils.test_scalar}. Currently this is done via testing the
+rules against numerical differentiation (using @code{FiniteDifferences.jl}).
+
+@code{ChainRulesTestUtils.jl} is separated from @code{ChainRulesCore.jl} so that it
+can be a test-only dependency, allowing it to have potentially heavy
+dependencies, while keeping @code{ChainRulesCore.jl} as light-weight as possible.")
+    (license license:expat)))
+
 (define-public julia-colors
   (package
     (name "julia-colors")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:08 GMT) Full text and rfc822 format available.

Message #56 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 17/29] gnu: Add julia-fillarrays.
Date: Tue, 23 Mar 2021 20:46:39 +0100
* gnu/packages/julia-xyz.scm (julia-fillarrays): New variable.
---
 gnu/packages/julia-xyz.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 6ddeee7172..caae91cece 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -331,6 +331,30 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
       (description "This package provides various examples.")
       (license license:expat))))
 
+(define-public julia-fillarrays
+  (package
+    (name "julia-fillarrays")
+    (version "0.11.7")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaArrays/FillArrays.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1q1qn9pb5dmppddnmf8gggdqyvivqh3ffvbblhn37smcf9r5sy7d"))))
+    (build-system julia-build-system)
+    (inputs                             ;required by tests
+     `(("julia-staticarrays" ,julia-staticarrays)))
+    (home-page "https://github.com/JuliaArrays/FillArrays.jl")
+    (synopsis "Lazy matrix representation")
+    (description "This package allows to lazily represent matrices filled with
+a single entry, as well as identity matrices.  This package exports the
+following types: @code{Eye}, @code{Fill}, @code{Ones}, @code{Zeros},
+@code{Trues} and @code{Falses}.")
+    (license license:expat)))
+
 (define-public julia-finitedifferences
   (package
     (name "julia-finitedifferences")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:09 GMT) Full text and rfc822 format available.

Message #59 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 18/29] gnu: Add julia-commonsubexpressions.
Date: Tue, 23 Mar 2021 20:46:40 +0100
* gnu/packages/julia-xyz.scm (julia-commonsubexpressions): 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 caae91cece..d14fa66fe5 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -244,6 +244,28 @@ constructors, and sets up traits and show methods to make them easier to work
 with.")
     (license license:expat)))
 
+(define-public julia-commonsubexpressions
+  (package
+    (name "julia-commonsubexpressions")
+    (version "0.3.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/rdeits/CommonSubexpressions.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0mgy90kk8ksv3l720kkk04gnhn4aqhh2dj4sp3x8yy3limngfjay"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-macrotools" ,julia-macrotools)))
+    (home-page "https://github.com/rdeits/CommonSubexpressions.jl")
+    (synopsis "Macro @code{@cse}")
+    (description "This package provides the @code{@cse} macro, which performs
+common subexpression elimination.")
+    (license license:expat)))
+
 (define-public julia-compat
   (package
     (name "julia-compat")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:47:09 GMT) Full text and rfc822 format available.

Message #62 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 19/29] gnu: Add julia-calculus.
Date: Tue, 23 Mar 2021 20:46:41 +0100
* gnu/packages/julia-xyz.scm (julia-calculus): New variable.
---
 gnu/packages/julia-xyz.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index d14fa66fe5..dfab3c20af 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -121,6 +121,30 @@ operations.  It can wrap any @code{IO} type automatically making incremental
 reading and writing faster.")
     (license license:expat)))
 
+(define-public julia-calculus
+  (package
+    (name "julia-calculus")
+    (version "0.5.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaMath/Calculus.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0xh0ak2ycsjw2h86ja24ch3kn2d18zx3frrds78aimwdnqb1gdc2"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaMath/Calculus.jl")
+    (synopsis "Common utilities for automatic differentiation")
+    (description "This package provides tools for working with the basic
+calculus operations of differentiation and integration.  The @code{Calculus}
+package produces approximate derivatives by several forms of finite
+differencing or produces exact derivative using symbolic differentiation.  It
+can also be used to compute definite integrals by different numerical
+methods.")
+    (license license:expat)))
+
 (define-public julia-chainrulescore
   (package
     (name "julia-chainrulescore")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:01 GMT) Full text and rfc822 format available.

Message #65 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 20/29] gnu: Add julia-diffresults.
Date: Tue, 23 Mar 2021 20:46:47 +0100
* gnu/packages/julia-xyz.scm (julia-diffresults): 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 dfab3c20af..12798e1d0f 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -357,6 +357,28 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
 @code{Accumulators}, @code{LinkedLists}, @code{SortedDicts} and many others.")
     (license license:expat)))
 
+(define-public julia-diffresults
+  (package
+    (name "julia-diffresults")
+    (version "1.0.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/DiffResults.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1w6p3yxajvclax5b9g7cr2jmbc7lvr5nk4gq0aljxdycdq1d2y3v"))))
+    (propagated-inputs
+     `(("julia-staticarrays" ,julia-staticarrays)))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaDiff/DiffResults.jl")
+    (synopsis "In-place differentiation methods of primal values at multi-order")
+    (description "This package provides the @code{DiffResult} type, which can
+be passed to in-place differentiation methods instead of an output buffer.")
+    (license license:expat)))
+
 (define-public julia-example
   (let ((commit "f968c69dea24f851d0c7e686db23fa55826b5388"))
     (package
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:02 GMT) Full text and rfc822 format available.

Message #68 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 21/29] gnu: Add julia-difftests.
Date: Tue, 23 Mar 2021 20:46:48 +0100
* gnu/packages/julia-xyz.scm (julia-difftests): 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 12798e1d0f..e22e91bc78 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -379,6 +379,26 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
 be passed to in-place differentiation methods instead of an output buffer.")
     (license license:expat)))
 
+(define-public julia-difftests
+  (package
+    (name "julia-difftests")
+    (version "0.1.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/DiffTests.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1rxpnd5zi3pxgdd38l5jm2sxc3q6p7g57fqgll2dsiin07y3my57"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaDiff/DiffTests.jl")
+    (synopsis "Common test functions for differentiation tools")
+    (description "This package contains a common suite of test functions for
+stressing the robustness of differentiation tools.")
+    (license license:expat)))
+
 (define-public julia-example
   (let ((commit "f968c69dea24f851d0c7e686db23fa55826b5388"))
     (package
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:02 GMT) Full text and rfc822 format available.

Message #71 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 22/29] gnu: Add julia-compilersupportlibraries-jll.
Date: Tue, 23 Mar 2021 20:46:49 +0100
* gnu/packages/julia-xyz.scm (julia-compilersupportlibraries-jll): New variable.
---
 gnu/packages/julia-xyz.scm | 44 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index e22e91bc78..02466fcd04 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -22,6 +22,7 @@
   #:use-module (guix packages)
   #:use-module (guix git-download)
   #:use-module (guix build-system julia)
+  #:use-module (gnu packages gcc)
   #:use-module (gnu packages tls))
 
 (define-public julia-abstractffts
@@ -312,6 +313,49 @@ provides a macro that lets you use the latest syntax in a backwards-compatible
 way.")
     (license license:expat)))
 
+;;; TODO: Remove this autogenerated source package
+;;; and build it from realse source using <https://github.com/JuliaPackaging/Yggdrasil/>
+(define-public julia-compilersupportlibraries-jll
+  (package
+    (name "julia-compilersupportlibraries-jll")
+    (version "0.4.0+1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaBinaryWrappers/CompilerSupportLibraries_jll.jl")
+             (commit (string-append "CompilerSupportLibraries-v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "03j6xdvps259mhdzpjqf41l65w2l9sahvxg4wrp34hcf69wkrzpy"))))
+    (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(\"CompilerSupportLibraries\", \""
+                    (assoc-ref inputs "gfortran:lib") "\")\n"))))
+              ;; There's a Julia file for each platform, override them all
+              (find-files "src/wrappers/" "\\.jl$"))
+             #t)))))
+    (inputs                             ;required by artifacts
+     `(("gfortran:lib" ,gfortran "lib")))
+    (propagated-inputs
+     `(("julia-jllwrappers" ,julia-jllwrappers)))
+    (home-page "https://github.com/JuliaBinaryWrappers/CompilerSupportLibraries_jll.jl")
+    (synopsis "Internal wrappers")
+    (description "This package 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-constructionbase
   (let ((commit "de77e2865b554f9b078fd8c35b593cce0554ae02"))
     (package
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:03 GMT) Full text and rfc822 format available.

Message #74 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 24/29] gnu: Add julia-specialfunctions.
Date: Tue, 23 Mar 2021 20:46:51 +0100
* gnu/packages/julia-xyz.scm (julia-specialfunctions): New variable.
---
 gnu/packages/julia-xyz.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index afa8e815f8..452b376371 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1016,6 +1016,34 @@ high-order accuracy, assuming that @code{f(x0+h)} has a Taylor series or some
 other power series in @code{h}.")
     (license license:expat)))
 
+(define-public julia-specialfunctions
+  (package
+    (name "julia-specialfunctions")
+    (version "1.3.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaMath/SpecialFunctions.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1rfhrrkzi3ils7fklbn35ki1yp5x88fi71qknfwqyw4pk8cf8p80"))))
+    (build-system julia-build-system)
+    (inputs
+     `(("julia-chainrulestestutils" ,julia-chainrulestestutils)))
+    (propagated-inputs
+     `(("julia-chainrulescore" ,julia-chainrulescore)
+       ("julia-openspecfun-jll" ,julia-openspecfun-jll)))
+    (home-page "https://github.com/JuliaMath/SpecialFunctions.jl")
+    (synopsis "Special mathematical functions")
+    (description "This package provides special mathematical functions,
+including Bessel, Hankel, Airy, error, Dawson, exponential (or sine and
+cosine) integrals, eta, zeta, digamma, inverse digamma, trigamma, and
+polygamma functions.  Most of these functions were formerly part of Base in
+early versions of Julia.")
+    (license license:expat)))
+
 (define-public julia-staticarrays
   (package
     (name "julia-staticarrays")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:03 GMT) Full text and rfc822 format available.

Message #77 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 25/29] gnu: Add julia-diffrules.
Date: Tue, 23 Mar 2021 20:46:52 +0100
* gnu/packages/julia-xyz.scm (julia-diffrules): New variable.
---
 gnu/packages/julia-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 452b376371..49f0d54d17 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -424,6 +424,31 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
 be passed to in-place differentiation methods instead of an output buffer.")
     (license license:expat)))
 
+(define-public julia-diffrules
+  (package
+    (name "julia-diffrules")
+    (version "1.0.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/DiffRules.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0cwjvj4gma7924fm3yas0nf0jlnwwx4v7fi79ii3s290lkdldzfl"))))
+    (propagated-inputs
+     `(("julia-nanmath" ,julia-nanmath)
+       ("julia-specialfunctions" ,julia-specialfunctions)))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaDiff/DiffRules.jl")
+    (synopsis "Primitive differentiation rules")
+    (description "This package provides primitive differentiation rules that
+can be composed via various formulations of the chain rule.  Using
+@code{DiffRules}, new differentiation rules can defined, query whether or not
+a given rule exists, and symbolically apply rules to simple Julia expressions.")
+    (license license:expat)))
+
 (define-public julia-difftests
   (package
     (name "julia-difftests")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:03 GMT) Full text and rfc822 format available.

Message #80 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 26/29] gnu: Add julia-chainrules.
Date: Tue, 23 Mar 2021 20:46:53 +0100
* gnu/packages/julia-xyz.scm (julia-chainrules): New variable.
---
 gnu/packages/julia-xyz.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 49f0d54d17..563bdc7dc1 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -147,6 +147,37 @@ can also be used to compute definite integrals by different numerical
 methods.")
     (license license:expat)))
 
+(define-public julia-chainrules
+  (package
+    (name "julia-chainrules")
+    (version "0.7.54")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/ChainRules.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1x4w71v8cw0vpba47h8f5xq4gyjfxbcvayzf7m41yg8gf49s9pkf"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for test
+     `(("julia-chainrulestestutils" ,julia-chainrulestestutils)
+       ("julia-finitedifferences" ,julia-finitedifferences)
+       ("julia-nanmath" ,julia-nanmath)
+       ("julia-specialfunctions" ,julia-specialfunctions)))
+    (propagated-inputs
+     `(("julia-chainrulescore" ,julia-chainrulescore)
+       ("julia-compat" ,julia-compat)
+       ("julia-reexport" ,julia-reexport)
+       ("julia-requires" ,julia-requires)))
+    (home-page "https://github.com/JuliaDiff/ChainRules.jl")
+    (synopsis "Common utilities for automatic differentiation")
+    (description "The is package provides a variety of common utilities that
+can be used by downstream automatic differentiation (AD) tools to define and
+execute forward-, reverse-, and mixed-mode primitives.")
+    (license license:expat)))
+
 (define-public julia-chainrulescore
   (package
     (name "julia-chainrulescore")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:04 GMT) Full text and rfc822 format available.

Message #83 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 27/29] gnu: Add julia-forwarddiff.
Date: Tue, 23 Mar 2021 20:46:54 +0100
* gnu/packages/julia-xyz.scm (julia-forwarddiff): New variable.
---
 gnu/packages/julia-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 563bdc7dc1..38c3f1a131 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -605,6 +605,38 @@ scaled by a constant factor.  Consequently, they have a fixed number of
 digits (bits) after the decimal (radix) point.")
     (license license:expat)))
 
+(define-public julia-forwarddiff
+  (package
+    (name "julia-forwarddiff")
+    (version "0.10.17")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/ForwardDiff.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "17xaz4v0zr46p7w873w1fwf31phdnhr0vbdym9yr4flmpzi528jw"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for tests
+     `(("julia-calculus" ,julia-calculus)
+       ("julia-difftests" ,julia-difftests)))
+    (propagated-inputs
+     `(("julia-commonsubexpressions" ,julia-commonsubexpressions)
+       ("julia-diffresults" ,julia-diffresults)
+       ("julia-diffrules" ,julia-diffrules)
+       ("julia-nanmath" ,julia-nanmath)
+       ("julia-specialfunctions" ,julia-specialfunctions)
+       ("julia-staticarrays" ,julia-staticarrays)))
+    (home-page "https://github.com/JuliaDiff/ForwardDiff.jl")
+    (synopsis "Fixed point types for Julia")
+    (description "This package implements methods to take derivatives,
+gradients, Jacobians, Hessians, and higher-order derivatives of native Julia
+functions (or any callable object, really) using forward mode automatic
+differentiation (AD).")
+    (license license:expat)))
+
 (define-public julia-http
   (package
     (name "julia-http")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:04 GMT) Full text and rfc822 format available.

Message #86 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 28/29] gnu: Add julia-zygoterules.
Date: Tue, 23 Mar 2021 20:46:55 +0100
* gnu/packages/julia-xyz.scm (julia-zygoterules): 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 38c3f1a131..464a6377f6 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1212,3 +1212,25 @@ working with @acronym{URIs,Uniform Resource Identifiers}, as defined in RFC
     (description "This package supports SI units and also many other unit
 system.")
     (license license:expat)))
+
+(define-public julia-zygoterules
+  (package
+    (name "julia-zygoterules")
+    (version "0.2.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/FluxML/ZygoteRules.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "07i2mf6rr5b8i6l82qgwl5arsb5pwyyzyfasgnszhdqllk9501bs"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-macrotools" ,julia-macrotools)))
+    (home-page "https://github.com/FluxML/ZygoteRules.jl")
+    (synopsis "Add minimal custom gradients to Zygote ")
+    (description "Minimal package which enables to add custom gradients to
+Zygote, without depending on Zygote itself.")
+    (license license:expat)))
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:05 GMT) Full text and rfc822 format available.

Message #89 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 29/29] gnu: Add julia-zygote.
Date: Tue, 23 Mar 2021 20:46:56 +0100
* gnu/packages/julia-xyz.scm (julia-zygote): New variable.
---
 gnu/packages/julia-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 464a6377f6..9ee1f9dd4a 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1234,3 +1234,38 @@ system.")
     (description "Minimal package which enables to add custom gradients to
 Zygote, without depending on Zygote itself.")
     (license license:expat)))
+
+(define-public julia-zygote
+  (package
+    (name "julia-zygote")
+    (version "0.6.4")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/FluxML/Zygote.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1h2ph0lsisbkh8y4xgwzgw9p5zi243q8zzp5gfh3zw9pzkx6a1rf"))))
+    (build-system julia-build-system)
+    (arguments
+     `(#:tests? #f))                    ;require CUDA, not packaged yet
+    (propagated-inputs
+     `(("julia-abstractffs" ,julia-abstractffts)
+       ("julia-chainrules" ,julia-chainrules)
+       ("julia-diffrules" ,julia-diffrules)
+       ("julia-fillarrays" ,julia-fillarrays)
+       ("julia-forwarddiff" ,julia-forwarddiff)
+       ("julia-irtools" ,julia-irtools)
+       ("julia-macrotools" ,julia-macrotools)
+       ("julia-nanmath" ,julia-nanmath)
+       ("julia-requires" ,julia-requires)
+       ("julia-specialfunctions" ,julia-specialfunctions)
+       ("julia-zygote-rules" ,julia-zygoterules)))
+    (home-page "https://fluxml.ai/Zygote.jl")
+    (synopsis "Automatic differentiation in Julia")
+    (description "Zygote provides source-to-source automatic
+differentiation (AD) in Julia, and is the next-generation AD system for the
+Flux differentiable programming framework.")
+    (license license:expat)))
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 19:48:05 GMT) Full text and rfc822 format available.

Message #92 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH 23/29] gnu: Add julia-openspecfun-jll.
Date: Tue, 23 Mar 2021 20:46:50 +0100
* gnu/packages/julia-xyz.scm (julia-openspecfun-jll): New variable.
---
 gnu/packages/julia-xyz.scm | 46 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 02466fcd04..afa8e815f8 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -23,6 +23,7 @@
   #:use-module (guix git-download)
   #:use-module (guix build-system julia)
   #:use-module (gnu packages gcc)
+  #:use-module (gnu packages maths)
   #:use-module (gnu packages tls))
 
 (define-public julia-abstractffts
@@ -878,6 +879,51 @@ have arbitrary indices, similar to those found in some other programming
 languages like Fortran.")
     (license license:expat)))
 
+;;; TODO: Remove this autogenerated source package
+;;; and build it from realse source using <https://github.com/JuliaPackaging/Yggdrasil/>
+(define-public julia-openspecfun-jll
+(let ((commit "6c505cce3bdcd9cd2b15b4f9362ec3a42c4da71c"))
+  (package
+    (name "julia-openspecfun-jll")
+    (version "0.5.3+4")                 ;tag not created upstream
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl")
+             (commit commit)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0bl2gcgndsbiwhwy8fl070cjm1fyf9kxj6gkikgirmzgjl29iakn"))))
+    (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(\"OpenSpecFun\", \""
+                    (assoc-ref inputs "openspecfun") "\")\n"))))
+              ;; There's a Julia file for each platform, override them all
+              (find-files "src/wrappers/" "\\.jl$"))
+             #t)))))
+    (inputs
+     `(("openspecfun" ,openspecfun)))
+    (propagated-inputs
+     `(("julia-jllwrappers" ,julia-jllwrappers)
+       ("julia-compilersupportlibraries-jll" ,julia-compilersupportlibraries-jll)))
+    (home-page "https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl")
+    (synopsis "Internal wrappers")
+    (description "This package 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-parsers
   (package
     (name "julia-parsers")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 22:49:01 GMT) Full text and rfc822 format available.

Message #95 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: zimoun <zimon.toutoune <at> gmail.com>, 47350 <at> debbugs.gnu.org
Cc: ludo <at> gnu.org, zimoun <zimon.toutoune <at> gmail.com>
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Tue, 23 Mar 2021 23:48:12 +0100
zimoun <zimon.toutoune <at> gmail.com> writes:

> Hi,
Hi!

>
> This adds all the packages required to build Zygote, the source-to-source
> automatic differentiation in Julia.
Wonderful, nice to see the first contribution to julia packages :)

>
> Last, well, I feel motivated to implement an (recursive) importer, even
> inaccurate, it will greatly help.
>
I found yesterday julihub, which might help in that regard a lot.  I'll
share here my notes (still no implementation), if I'm not missing
something obvious, this importer should be super easy.  Let me know what
you think about those:

1. refresh the package list (json)
   curl https://juliahub.com/app/packages/info
2. search the required package (.name field)
3. get info on the package (.metadata.docslink) / pkg.json
   eg. curl 'https://juliahub.com/docs/Convex/Sr0e5/0.14.5/pkg.json'
4. extract:
   - version
   - homepage
   - license
   - repository
   - description
   - direct dependencies (used in propagated-inputs field)
     store them into a list
   - indirect dependencies
     add them to the dependency list
   - binary (jll) dependencies
     tell the user those must be fixed
   - remove duplicates/packages already in guix
   - repeat 4 for each dependency


Thanks, Nicolò




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Tue, 23 Mar 2021 23:03:01 GMT) Full text and rfc822 format available.

Message #98 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Nicolò Balzarotti <anothersms <at> gmail.com>,
 47350 <at> debbugs.gnu.org
Cc: ludo <at> gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Wed, 24 Mar 2021 00:01:01 +0100
Hi,

On Tue, 23 Mar 2021 at 23:48, Nicolò Balzarotti <anothersms <at> gmail.com> wrote:
> zimoun <zimon.toutoune <at> gmail.com> writes:

>> This adds all the packages required to build Zygote, the source-to-source
>> automatic differentiation in Julia.
> Wonderful, nice to see the first contribution to julia packages :)

If you want to review, then it would help. :-) You do not need to be
committer because it is checking and commenting, or by simply saying
LGTM.  For example, I am not committer and I reviewed ocaml packages or
camlboot.

It would help to reduce the load on the committer’s shoulders. ;-)

Well, I would like to have these stuffs in the next release 1.2.1.


>> Last, well, I feel motivated to implement an (recursive) importer, even
>> inaccurate, it will greatly help.
>>
> I found yesterday julihub, which might help in that regard a lot.
> I'll

Cool!  I am moving the discussion about that on guix-devel and I will
comment once I have read a bit this juliahub thing. :-)


Thanks,
simon




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Wed, 24 Mar 2021 08:16:02 GMT) Full text and rfc822 format available.

Message #101 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: zimoun <zimon.toutoune <at> gmail.com>, 47350 <at> debbugs.gnu.org
Cc: ludo <at> gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Wed, 24 Mar 2021 09:15:36 +0100
zimoun <zimon.toutoune <at> gmail.com> writes:

> If you want to review, then it would help. :-)

Here you go:

Patch applies and everything builds fine.  I also checked the
licenses and they seems fine.  I run some example on the Zygote tutorial
and it worked

Some notes:

julia-macrotools:
> +that let you do deep transformations of code..")
two dots

julia-colors:
Instead of removing the tests, calling julia with --depwarn=yes
should do the trick.
I changed the (check) function in julia-build-system adding
replacing invoke "julia" with invoke "julia" "--depwarn=yes", removed
your phase from julia-colors and everything went well (built zygote and
HTTP, which should cover all packages we have).  Would you mind
fixing the build system directly?  As I guess other packages will fail
the same way


julia-compilersupportlibraries-jll:
julia-openspecfun-jll:
I'd change package description, as it's the default and shared between
all jll packages

julia-constructionbase:
typo: lightwight -> lightweight

julia-irtool:
typo: simpe -> simple

julia-macrotools:
typo: Jlia -> Julia

julia-specialfuntions:
> Most of these functions were formerly part of Base in early versions of Julia.
I'd remove this from the description

julia-forwarddiff:
synopsis seems wrong

julia-zygoterules:
extra space at the end of synopsis

Thanks, Nicolò




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Wed, 24 Mar 2021 09:40:02 GMT) Full text and rfc822 format available.

Message #104 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Nicolò Balzarotti <anothersms <at> gmail.com>,
 47350 <at> debbugs.gnu.org
Cc: ludo <at> gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Wed, 24 Mar 2021 10:35:30 +0100
Hi Nicoló,

On Wed, 24 Mar 2021 at 09:15, Nicolò Balzarotti <anothersms <at> gmail.com> wrote:
> zimoun <zimon.toutoune <at> gmail.com> writes:
>
>> If you want to review, then it would help. :-)
>
> Here you go:

Thanks for the prompt review!


> julia-colors:
> Instead of removing the tests, calling julia with --depwarn=yes
> should do the trick.
> I changed the (check) function in julia-build-system adding
> replacing invoke "julia" with invoke "julia" "--depwarn=yes", removed
> your phase from julia-colors and everything went well (built zygote and
> HTTP, which should cover all packages we have).  Would you mind
> fixing the build system directly?  As I guess other packages will fail
> the same way

Ok, I will double-check if we change the option of the build system or
simply locally tweak the arguments case per case.


Thanks again!

Cheers,
simon




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:01 GMT) Full text and rfc822 format available.

Message #107 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 01/30] build: julia-build-system: Turn on depreciation
 warnings.
Date: Thu, 25 Mar 2021 02:04:49 +0100
* guix/build/julia-build-system.scm (check): Set option '--depwarn=yes'.
---
 guix/build/julia-build-system.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/guix/build/julia-build-system.scm b/guix/build/julia-build-system.scm
index 8f57045a8c..d74acf2a05 100644
--- a/guix/build/julia-build-system.scm
+++ b/guix/build/julia-build-system.scm
@@ -101,7 +101,7 @@ Project.toml)."
                              (or (getenv "JULIA_LOAD_PATH")
                                  "")))
       (setenv "HOME" "/tmp")
-      (invoke "julia"
+      (invoke "julia" "--depwarn=yes"
               (string-append builddir "packages/"
                              package "/test/runtests.jl"))))
   #t)

base-commit: a2f3a456bec357394fe550d927c26bbbdaa7ba6e
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:01 GMT) Full text and rfc822 format available.

Message #110 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 03/30] gnu: Add julia-macrotools.
Date: Thu, 25 Mar 2021 02:04:51 +0100
* gnu/packages/julia-xyz.scm (julia-macrotools): New variable.
---
 gnu/packages/julia-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 7fbb18347f..5ba85f8bc0 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -344,6 +344,27 @@ used in autogenerated packages via @code{BinaryBuilder.jl}.")
 and printing JSON documents.")
     (license license:expat)))
 
+(define-public julia-macrotools
+  (package
+    (name "julia-macrotools")
+    (version "0.5.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/FluxML/MacroTools.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0k4z2hyasd9cwxf4l61zk3w4ajs44k69wx6z1ghdn8f5p8xy217f"))))
+    (build-system julia-build-system)
+    (home-page "https://fluxml.ai/MacroTools.jl")
+    (synopsis "Tools for working with Julia code and expressions")
+    (description "This library provides tools for working with Julia code and
+expressions.  This includes a template-matching system and code-walking tools
+that let you do deep transformations of code.")
+    (license license:expat)))
+
 (define-public julia-mbedtls
   (package
     (name "julia-mbedtls")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:02 GMT) Full text and rfc822 format available.

Message #113 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 04/30] gnu: Add julia-nanmath.
Date: Thu, 25 Mar 2021 02:04:52 +0100
* gnu/packages/julia-xyz.scm (julia-nanmath): 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 5ba85f8bc0..6508fa52af 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -435,6 +435,26 @@ TLS} and cryptography C libary for Julia.")
 wrappers.")
     (license license:expat)))
 
+(define-public julia-nanmath
+  (package
+    (name "julia-nanmath")
+    (version "0.3.5")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/mlubin/NaNMath.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1hczhz00qj99w63vp627kwk02l2sr2qmzc2rkwwkdwvzy670p25q"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/mlubin/NaNMath.jl")
+    (synopsis "Implementations of basic math functions")
+    (description "Implementations of basic math functions which return
+@code{NaN} instead of throwing a @code{DomainError}.")
+    (license license:expat)))
+
 (define-public julia-orderedcollections
   (package
     (name "julia-orderedcollections")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:02 GMT) Full text and rfc822 format available.

Message #116 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 05/30] gnu: Add julia-reexport.
Date: Thu, 25 Mar 2021 02:04:53 +0100
* gnu/packages/julia-xyz.scm (julia-reexport): New variable.
---
 gnu/packages/julia-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 6508fa52af..41acd06ee3 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -522,6 +522,25 @@ languages like Fortran.")
 utilities for Julia.")
     (license license:expat)))
 
+(define-public julia-reexport
+  (package
+    (name "julia-reexport")
+    (version "1.0.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/simonster/Reexport.jl")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1yhhja1zz6dy5f4fd19bdwd6jwgj7q4w3avzgyg1hjhmdl8jrh0s"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/simonster/Reexport.jl")
+    (synopsis "Re-export modules and symbols")
+    (description "This package provides tools to re-export modules and symbols.")
+    (license license:expat)))
+
 (define-public julia-uris
   (package
     (name "julia-uris")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:03 GMT) Full text and rfc822 format available.

Message #119 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 06/30] gnu: Add julia-irtools.
Date: Thu, 25 Mar 2021 02:04:54 +0100
* gnu/packages/julia-xyz.scm (julia-irtools): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 41acd06ee3..613b3bb9dc 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -276,6 +276,32 @@ implementing both a client and a server.")
 allows to interface with @file{.ini} files.")
     (license license:expat)))
 
+(define-public julia-irtools
+  (package
+    (name "julia-irtools")
+    (version "0.4.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/FluxML/IRTools.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0wwzy77jcdnffnd5fr6xan7162g4wydz67igrq82wflwnrhlcx5y"))))
+    (arguments
+     '(#:tests? #f))                    ;require Documenter, not packaged yet
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-macrotools" ,julia-macrotools)))
+    (home-page "https://github.com/FluxML/IRTools.jl")
+    (synopsis "Simple and flexible IR format")
+    (description "This package provides a simple and flexible IR format,
+expressive enough to work with both lowered and typed Julia code, as well as
+external IRs.  It can be used with Julia metaprogramming tools such as
+Cassette.")
+    (license license:expat)))
+
 (define-public julia-jllwrappers
   (package
     (name "julia-jllwrappers")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:03 GMT) Full text and rfc822 format available.

Message #122 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 07/30] gnu: Add julia-staticarrays.
Date: Thu, 25 Mar 2021 02:04:55 +0100
* gnu/packages/julia-xyz.scm (julia-staticarrays): New variable.
---
 gnu/packages/julia-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 613b3bb9dc..45d18d028f 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -567,6 +567,31 @@ utilities for Julia.")
     (description "This package provides tools to re-export modules and symbols.")
     (license license:expat)))
 
+(define-public julia-staticarrays
+  (package
+    (name "julia-staticarrays")
+    (version "1.0.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaArrays/StaticArrays.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "01z8bcqwpfkp8p1h1r36pr5cc3798y76zkas7g3206pcsdhvlkz1"))))
+    (build-system julia-build-system)
+    (inputs
+     `(("julia-benchmarktools" ,julia-benchmarktools)))
+    (home-page "https://github.com/JuliaArrays/StaticArrays.jl")
+    (synopsis "Statically sized arrays")
+    (description "This package provides a framework for implementing
+statically sized arrays in Julia, using the abstract type
+@code{StaticArray{Size,T,N} <: AbstractArray{T,N}}.  Subtypes of
+@code{StaticArray} will provide fast implementations of common array and
+linear algebra operations.")
+    (license license:expat)))
+
 (define-public julia-uris
   (package
     (name "julia-uris")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:03 GMT) Full text and rfc822 format available.

Message #125 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 02/30] gnu: Add julia-constructionbase.
Date: Thu, 25 Mar 2021 02:04:50 +0100
* gnu/packages/julia-xyz.scm (julia-constructionbase): 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 0d35cbde57..7fbb18347f 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2020, 2021 Nicolò Balzarotti <nicolo <at> nixo.xyz>
+;;; Copyright © 2021 Simon Tournier <zimon.toutoune <at> gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -117,6 +118,27 @@ provides a macro that lets you use the latest syntax in a backwards-compatible
 way.")
     (license license:expat)))
 
+(define-public julia-constructionbase
+  (let ((commit "de77e2865b554f9b078fd8c35b593cce0554ae02"))
+    (package
+      (name "julia-constructionbase")
+      (version "1.1.0")                 ;tag not created upstream
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/JuliaObjects/ConstructionBase.jl")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1y79sfj0rds1skl9j16p9161hwa9khm0xc2m4hgjcbh5zzvyr57v"))))
+      (build-system julia-build-system)
+      (home-page "https://juliaobjects.github.io/ConstructionBase.jl/dev/")
+      (synopsis "Primitive functions for construction of objects")
+      (description "This very lightweight package provides primitive functions
+for construction of objects.")
+      (license license:expat))))
+
 (define-public julia-datastructures
   (package
     (name "julia-datastructures")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:04 GMT) Full text and rfc822 format available.

Message #128 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 08/30] gnu: Add julia-unitful.
Date: Thu, 25 Mar 2021 02:04:56 +0100
* gnu/packages/julia-xyz.scm (julia-unitful): 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 45d18d028f..7a3529fe8f 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -625,3 +625,25 @@ linear algebra operations.")
 working with @acronym{URIs,Uniform Resource Identifiers}, as defined in RFC
 3986.")
     (license license:expat)))
+
+(define-public julia-unitful
+  (package
+    (name "julia-unitful")
+    (version "1.6.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/PainterQubits/Unitful.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0g5bhlvay9yk11c5dqwbzmb3q7lzj0cq5zchyk39d59fkvvmxvq3"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-constructionbase" ,julia-constructionbase)))
+    (home-page "https://painterqubits.github.io/Unitful.jl/stable/")
+    (synopsis "Physical units in Julia")
+    (description "This package supports SI units and also many other unit
+system.")
+    (license license:expat)))
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:04 GMT) Full text and rfc822 format available.

Message #131 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Nicolò Balzarotti <anothersms <at> gmail.com>,
 47350 <at> debbugs.gnu.org
Cc: ludo <at> gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Thu, 25 Mar 2021 01:58:30 +0100
Hi Nicoló,

On Wed, 24 Mar 2021 at 10:35, zimoun <zimon.toutoune <at> gmail.com> wrote:
> On Wed, 24 Mar 2021 at 09:15, Nicolò Balzarotti <anothersms <at> gmail.com> wrote:

>> I changed the (check) function in julia-build-system adding
>> replacing invoke "julia" with invoke "julia" "--depwarn=yes", removed
>> your phase from julia-colors and everything went well (built zygote and
>> HTTP, which should cover all packages we have).  Would you mind
>> fixing the build system directly?  As I guess other packages will fail
>> the same way
>
> Ok, I will double-check if we change the option of the build system or
> simply locally tweak the arguments case per case.

Hum, I get these kind of messages:

--8<---------------cut here---------------start------------->8---
Internal error: encountered unexpected error in runtime:
ErrorException("type UnionAll has no field size")
jl_errorf at /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/rtutils.c:77
--8<---------------cut here---------------end--------------->8---

for julia-datastructures for instance.  Even if the build is fine and
my small experiments seems correct.

Well, I have set this deprecation warning as a first commit in the v2.


Thanks,
simon




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:05 GMT) Full text and rfc822 format available.

Message #134 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 11/30] gnu: Add julia-colors.
Date: Thu, 25 Mar 2021 02:04:58 +0100
* gnu/packages/julia-xyz.scm (julia-colors): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 8d28aab7f1..ab238161e9 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -121,6 +121,32 @@ operations.  It can wrap any @code{IO} type automatically making incremental
 reading and writing faster.")
     (license license:expat)))
 
+(define-public julia-colors
+  (package
+    (name "julia-colors")
+    (version "0.12.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaGraphics/Colors.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "156zsszgwh6bmznsan0zyha6yvcxw3c5mvc5vr2qfsgxbyh36ln6"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-colortypes" ,julia-colortypes)
+       ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
+       ("julia-reexport" ,julia-reexport)))
+    (home-page "https://github.com/JuliaGraphics/Colors.jl")
+    (synopsis "Tools for dealing with color")
+    (description "This package provides a wide array of functions for dealing
+with color.  This includes conversion between colorspaces, measuring distance
+between colors, simulating color blindness, parsing colors, and generating
+color scales for graphics.")
+    (license license:expat)))
+
 (define-public julia-colortypes
   (package
     (name "julia-colortypes")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:05 GMT) Full text and rfc822 format available.

Message #137 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 12/30] gnu: Add julia-example.
Date: Thu, 25 Mar 2021 02:04:59 +0100
* gnu/packages/julia-xyz.scm (julia-example): 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 ab238161e9..f21ea0afb0 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -240,6 +240,26 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
 @code{Accumulators}, @code{LinkedLists}, @code{SortedDicts} and many others.")
     (license license:expat)))
 
+(define-public julia-example
+  (let ((commit "f968c69dea24f851d0c7e686db23fa55826b5388"))
+    (package
+      (name "julia-example")
+      (version "0.5.4")                   ;tag not created upstream
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/JuliaLang/Example.jl")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1v3z0d6gh6wfbypffy9m9rhh36px6fm5wjzq0y6rbmc95r0qpqlx"))))
+      (build-system julia-build-system)
+      (home-page "https://github.com/JuliaLang/Example.jl")
+      (synopsis "Module providing examples")
+      (description "This package provides various examples.")
+      (license license:expat))))
+
 (define-public julia-fixedpointnumbers
   (package
     (name "julia-fixedpointnumbers")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:05 GMT) Full text and rfc822 format available.

Message #140 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 09/30] gnu: Add julia-abstractffts.
Date: Thu, 25 Mar 2021 02:04:57 +0100
* gnu/packages/julia-xyz.scm (julia-abstractffts): New variable.
---
 gnu/packages/julia-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 7a3529fe8f..4abeaa765f 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -24,6 +24,31 @@
   #:use-module (guix build-system julia)
   #:use-module (gnu packages tls))
 
+(define-public julia-abstractffts
+  (package
+    (name "julia-abstractffts")
+    (version "1.0.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaMath/AbstractFFTS.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0083pwdyxjb04i330ir9pc8kmp4bwk59lx1jgc9qi05y8j7xzbp0"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for tests
+     `(("julia-unitful" ,julia-unitful)))
+    (home-page "https://github.com/JuliaGPU/Adapt.jl")
+    (synopsis "General framework for fast Fourier transforms (FFTs)")
+    (description "This package allows multiple FFT packages to co-exist with
+the same underlying @code{fft(x)} and @code{plan_fft(x)} interface.  It is
+mainly not intended to be used directly.  Instead, developers of packages that
+implement FFTs (such as @code{FFTW.jl} or @code{FastTransforms.jl}) extend the
+types/functions defined in AbstractFFTs.")
+    (license license:expat)))
+
 (define-public julia-adapt
   (package
     (name "julia-adapt")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:06 GMT) Full text and rfc822 format available.

Message #143 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 13/30] gnu: Add julia-requires.
Date: Thu, 25 Mar 2021 02:05:00 +0100
* gnu/packages/julia-xyz.scm (julia-requires): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index f21ea0afb0..8e95c8b7ed 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -664,6 +664,32 @@ utilities for Julia.")
     (description "This package provides tools to re-export modules and symbols.")
     (license license:expat)))
 
+(define-public julia-requires
+  (package
+    (name "julia-requires")
+    (version "1.1.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaPackaging/Requires.jl/")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "03hyfy7c0ma45b0y756j76awi3az2ii4bz4s8cxm3xw9yy1z7b01"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for test
+     `(("julia-example" ,julia-example)))
+    (propagated-inputs
+     `(("julia-colors" ,julia-colors)))
+    (home-page "https://github.com/JuliaPackaging/Requires.jl/")
+    (synopsis "Faster package loader")
+    (description "This package make loading packages faster, maybe.  It
+supports specifying glue code in packages which will load automatically when
+another package is loaded, so that explicit dependencies (and long load times)
+can be avoided.")
+    (license license:expat)))
+
 (define-public julia-staticarrays
   (package
     (name "julia-staticarrays")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:06 GMT) Full text and rfc822 format available.

Message #146 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 14/30] gnu: Add julia-chainrulescore.
Date: Thu, 25 Mar 2021 02:05:01 +0100
* gnu/packages/julia-xyz.scm (julia-chainrulescore): New variable.
---
 gnu/packages/julia-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 8e95c8b7ed..0da2452b89 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -121,6 +121,31 @@ operations.  It can wrap any @code{IO} type automatically making incremental
 reading and writing faster.")
     (license license:expat)))
 
+(define-public julia-chainrulescore
+  (package
+    (name "julia-chainrulescore")
+    (version "0.9.29")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/ChainRulesCore.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1k0iayw39n1ikkkhvyi4498vsnzc94skqs41gnd15632gxjfvki4"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for tests
+     `(("julia-benchmarktools" ,julia-benchmarktools)
+       ("julia-staticarrays" ,julia-staticarrays)))
+    (propagated-inputs
+     `(("julia-compat" ,julia-compat)))
+    (home-page "https://github.com/JuliaDiff/ChainRulesCore.jl")
+    (synopsis "Common utilities used by downstream automatic differentiation tools")
+    (description "The package provides a light-weight dependency for defining
+sensitivities for functions without the need to depend on ChainRules itself.")
+    (license license:expat)))
+
 (define-public julia-colors
   (package
     (name "julia-colors")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:06 GMT) Full text and rfc822 format available.

Message #149 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 15/30] gnu: Add julia-richardson.
Date: Thu, 25 Mar 2021 02:05:02 +0100
* gnu/packages/julia-xyz.scm (julia-richardson): New variable.
---
 gnu/packages/julia-xyz.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 0da2452b89..b56fa5427e 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -715,6 +715,33 @@ another package is loaded, so that explicit dependencies (and long load times)
 can be avoided.")
     (license license:expat)))
 
+(define-public julia-richardson
+  (package
+    (name "julia-richardson")
+    (version "1.4.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaMath/Richardson.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "06v9ii3d7hh41fsrfklaa8ap55z5s017f888mrd1c18y4fx9i4nx"))))
+    (build-system julia-build-system)
+    (home-page "https://juliapackages.com/p/richardson")
+    (synopsis "Extrapolate function using Richardson method")
+    (description "This package provides a function extrapolate that
+extrapolates a given function @code{f(x)} to @code{f(x0)}, evaluating @code{f}
+only at a geometric sequence of points @code{> x0} (or optionally @code{<
+x0}).  The key algorithm is Richardson extrapolation using a Neville–Aitken
+tableau, which adaptively increases the degree of an extrapolation polynomial
+until convergence is achieved to a desired tolerance (or convergence stalls
+due to e.g. floating-point errors).  This allows one to obtain @code{f(x0)} to
+high-order accuracy, assuming that @code{f(x0+h)} has a Taylor series or some
+other power series in @code{h}.")
+    (license license:expat)))
+
 (define-public julia-staticarrays
   (package
     (name "julia-staticarrays")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:07 GMT) Full text and rfc822 format available.

Message #152 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 16/30] gnu: Add julia-finitedifferences.
Date: Thu, 25 Mar 2021 02:05:03 +0100
* gnu/packages/julia-xyz.scm (julia-finitedifferences): New variable.
---
 gnu/packages/julia-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index b56fa5427e..ed05af6497 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -285,6 +285,32 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
       (description "This package provides various examples.")
       (license license:expat))))
 
+(define-public julia-finitedifferences
+  (package
+    (name "julia-finitedifferences")
+    (version "0.12.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/FiniteDifferences.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0dcx34026xdpfmbjls3mrknl8ww62kxxfr77kfihbazsfg2gp5b4"))))
+    (build-system julia-build-system)
+    (inputs
+     `(("julia-benchmarktools" ,julia-benchmarktools)))
+    (propagated-inputs
+     `(("julia-chainrulescore" ,julia-chainrulescore)
+       ("julia-richardson" ,julia-richardson)
+       ("julia-staticarrays" ,julia-staticarrays)))
+    (home-page "https://github.com/JuliaDiff/FiniteDifferences.jl")
+    (synopsis "Estimates derivatives with finite differences")
+    (description "This package calculates approximate derivatives numerically
+using finite difference.")
+    (license license:expat)))
+
 (define-public julia-fixedpointnumbers
   (package
     (name "julia-fixedpointnumbers")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:07 GMT) Full text and rfc822 format available.

Message #155 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 17/30] gnu: Add julia-chainrulestestutils.
Date: Thu, 25 Mar 2021 02:05:04 +0100
* gnu/packages/julia-xyz.scm (julia-chainrulestestutils): New variable.
---
 gnu/packages/julia-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index ed05af6497..4e63c04c5e 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -146,6 +146,38 @@ reading and writing faster.")
 sensitivities for functions without the need to depend on ChainRules itself.")
     (license license:expat)))
 
+(define-public julia-chainrulestestutils
+  (package
+    (name "julia-chainrulestestutils")
+    (version "0.6.4")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/ChainRulesTestUtils.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1pzs947adnb3cx1qd0cxp2fidk9szz0zsqbas90z1lhydykkvkil"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-chainrulescore" ,julia-chainrulescore)
+       ("julia-compat" ,julia-compat)
+       ("julia-finitedifference" ,julia-finitedifferences)))
+    (home-page "https://github.com/JuliaDiff/ChainRulesTestUtils.jl")
+    (synopsis "Common utilities used by downstream automatic differentiation tools")
+    (description "This package is designed to help in testing
+@code{ChainRulesCore.frule} and @code{ChainRulesCore.rrule} methods.  The main
+entry points are @code{ChainRulesTestUtils.frule_test},
+@code{ChainRulesTestUtils.rrule_test}, and
+@code{ChainRulesTestUtils.test_scalar}. Currently this is done via testing the
+rules against numerical differentiation (using @code{FiniteDifferences.jl}).
+
+@code{ChainRulesTestUtils.jl} is separated from @code{ChainRulesCore.jl} so that it
+can be a test-only dependency, allowing it to have potentially heavy
+dependencies, while keeping @code{ChainRulesCore.jl} as light-weight as possible.")
+    (license license:expat)))
+
 (define-public julia-colors
   (package
     (name "julia-colors")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:08 GMT) Full text and rfc822 format available.

Message #158 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 18/30] gnu: Add julia-fillarrays.
Date: Thu, 25 Mar 2021 02:05:05 +0100
* gnu/packages/julia-xyz.scm (julia-fillarrays): New variable.
---
 gnu/packages/julia-xyz.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 4e63c04c5e..e3d2c9ff89 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -317,6 +317,30 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
       (description "This package provides various examples.")
       (license license:expat))))
 
+(define-public julia-fillarrays
+  (package
+    (name "julia-fillarrays")
+    (version "0.11.7")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaArrays/FillArrays.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1q1qn9pb5dmppddnmf8gggdqyvivqh3ffvbblhn37smcf9r5sy7d"))))
+    (build-system julia-build-system)
+    (inputs                             ;required by tests
+     `(("julia-staticarrays" ,julia-staticarrays)))
+    (home-page "https://github.com/JuliaArrays/FillArrays.jl")
+    (synopsis "Lazy matrix representation")
+    (description "This package allows to lazily represent matrices filled with
+a single entry, as well as identity matrices.  This package exports the
+following types: @code{Eye}, @code{Fill}, @code{Ones}, @code{Zeros},
+@code{Trues} and @code{Falses}.")
+    (license license:expat)))
+
 (define-public julia-finitedifferences
   (package
     (name "julia-finitedifferences")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:08 GMT) Full text and rfc822 format available.

Message #161 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 19/30] gnu: Add julia-commonsubexpressions.
Date: Thu, 25 Mar 2021 02:05:06 +0100
* gnu/packages/julia-xyz.scm (julia-commonsubexpressions): 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 e3d2c9ff89..c5c04d6579 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -230,6 +230,28 @@ constructors, and sets up traits and show methods to make them easier to work
 with.")
     (license license:expat)))
 
+(define-public julia-commonsubexpressions
+  (package
+    (name "julia-commonsubexpressions")
+    (version "0.3.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/rdeits/CommonSubexpressions.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0mgy90kk8ksv3l720kkk04gnhn4aqhh2dj4sp3x8yy3limngfjay"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-macrotools" ,julia-macrotools)))
+    (home-page "https://github.com/rdeits/CommonSubexpressions.jl")
+    (synopsis "Macro @code{@cse}")
+    (description "This package provides the @code{@cse} macro, which performs
+common subexpression elimination.")
+    (license license:expat)))
+
 (define-public julia-compat
   (package
     (name "julia-compat")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:08 GMT) Full text and rfc822 format available.

Message #164 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 21/30] gnu: Add julia-diffresults.
Date: Thu, 25 Mar 2021 02:05:07 +0100
* gnu/packages/julia-xyz.scm (julia-diffresults): 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 75b46a1c7c..885a851375 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -343,6 +343,28 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
 @code{Accumulators}, @code{LinkedLists}, @code{SortedDicts} and many others.")
     (license license:expat)))
 
+(define-public julia-diffresults
+  (package
+    (name "julia-diffresults")
+    (version "1.0.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/DiffResults.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1w6p3yxajvclax5b9g7cr2jmbc7lvr5nk4gq0aljxdycdq1d2y3v"))))
+    (propagated-inputs
+     `(("julia-staticarrays" ,julia-staticarrays)))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaDiff/DiffResults.jl")
+    (synopsis "In-place differentiation methods of primal values at multi-order")
+    (description "This package provides the @code{DiffResult} type, which can
+be passed to in-place differentiation methods instead of an output buffer.")
+    (license license:expat)))
+
 (define-public julia-example
   (let ((commit "f968c69dea24f851d0c7e686db23fa55826b5388"))
     (package
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:09 GMT) Full text and rfc822 format available.

Message #167 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 22/30] gnu: Add julia-difftests.
Date: Thu, 25 Mar 2021 02:05:08 +0100
* gnu/packages/julia-xyz.scm (julia-difftests): 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 885a851375..9b04e1bd67 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -365,6 +365,26 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
 be passed to in-place differentiation methods instead of an output buffer.")
     (license license:expat)))
 
+(define-public julia-difftests
+  (package
+    (name "julia-difftests")
+    (version "0.1.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/DiffTests.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1rxpnd5zi3pxgdd38l5jm2sxc3q6p7g57fqgll2dsiin07y3my57"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaDiff/DiffTests.jl")
+    (synopsis "Common test functions for differentiation tools")
+    (description "This package contains a common suite of test functions for
+stressing the robustness of differentiation tools.")
+    (license license:expat)))
+
 (define-public julia-example
   (let ((commit "f968c69dea24f851d0c7e686db23fa55826b5388"))
     (package
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:09 GMT) Full text and rfc822 format available.

Message #170 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 23/30] gnu: Add julia-compilersupportlibraries-jll.
Date: Thu, 25 Mar 2021 02:05:09 +0100
* gnu/packages/julia-xyz.scm (julia-compilersupportlibraries-jll): New variable.
---
 gnu/packages/julia-xyz.scm | 45 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 9b04e1bd67..bde72e364d 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -22,6 +22,7 @@
   #:use-module (guix packages)
   #:use-module (guix git-download)
   #:use-module (guix build-system julia)
+  #:use-module (gnu packages gcc)
   #:use-module (gnu packages tls))
 
 (define-public julia-abstractffts
@@ -298,6 +299,50 @@ provides a macro that lets you use the latest syntax in a backwards-compatible
 way.")
     (license license:expat)))
 
+;;; TODO: Remove this autogenerated source package
+;;; and build it from realse source using <https://github.com/JuliaPackaging/Yggdrasil/>
+(define-public julia-compilersupportlibraries-jll
+  (package
+    (name "julia-compilersupportlibraries-jll")
+    (version "0.4.0+1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaBinaryWrappers/CompilerSupportLibraries_jll.jl")
+             (commit (string-append "CompilerSupportLibraries-v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "03j6xdvps259mhdzpjqf41l65w2l9sahvxg4wrp34hcf69wkrzpy"))))
+    (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(\"CompilerSupportLibraries\", \""
+                    (assoc-ref inputs "gfortran:lib") "\")\n"))))
+              ;; There's a Julia file for each platform, override them all
+              (find-files "src/wrappers/" "\\.jl$"))
+             #t)))))
+    (inputs                             ;required by artifacts
+     `(("gfortran:lib" ,gfortran "lib")))
+    (propagated-inputs
+     `(("julia-jllwrappers" ,julia-jllwrappers)))
+    (home-page "https://github.com/JuliaBinaryWrappers/CompilerSupportLibraries_jll.jl")
+    (synopsis "Internal wrappers")
+    (description "This package provides compiler support for libraries.  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-constructionbase
   (let ((commit "de77e2865b554f9b078fd8c35b593cce0554ae02"))
     (package
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:10 GMT) Full text and rfc822 format available.

Message #173 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 24/30] gnu: Add julia-openspecfun-jll.
Date: Thu, 25 Mar 2021 02:05:10 +0100
* gnu/packages/julia-xyz.scm (julia-openspecfun-jll): New variable.
---
 gnu/packages/julia-xyz.scm | 47 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index bde72e364d..d99eadcfd4 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -23,6 +23,7 @@
   #:use-module (guix git-download)
   #:use-module (guix build-system julia)
   #:use-module (gnu packages gcc)
+  #:use-module (gnu packages maths)
   #:use-module (gnu packages tls))
 
 (define-public julia-abstractffts
@@ -865,6 +866,52 @@ have arbitrary indices, similar to those found in some other programming
 languages like Fortran.")
     (license license:expat)))
 
+;;; TODO: Remove this autogenerated source package
+;;; and build it from realse source using <https://github.com/JuliaPackaging/Yggdrasil/>
+(define-public julia-openspecfun-jll
+(let ((commit "6c505cce3bdcd9cd2b15b4f9362ec3a42c4da71c"))
+  (package
+    (name "julia-openspecfun-jll")
+    (version "0.5.3+4")                 ;tag not created upstream
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl")
+             (commit commit)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0bl2gcgndsbiwhwy8fl070cjm1fyf9kxj6gkikgirmzgjl29iakn"))))
+    (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(\"OpenSpecFun\", \""
+                    (assoc-ref inputs "openspecfun") "\")\n"))))
+              ;; There's a Julia file for each platform, override them all
+              (find-files "src/wrappers/" "\\.jl$"))
+             #t)))))
+    (inputs
+     `(("openspecfun" ,openspecfun)))
+    (propagated-inputs
+     `(("julia-jllwrappers" ,julia-jllwrappers)
+       ("julia-compilersupportlibraries-jll" ,julia-compilersupportlibraries-jll)))
+    (home-page "https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl")
+    (synopsis "Internal wrappers")
+    (description "This package provides a wrapper for OpenSpecFun.  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-parsers
   (package
     (name "julia-parsers")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:10 GMT) Full text and rfc822 format available.

Message #176 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 25/30] gnu: Add julia-specialfunctions.
Date: Thu, 25 Mar 2021 02:05:11 +0100
* gnu/packages/julia-xyz.scm (julia-specialfunctions): New variable.
---
 gnu/packages/julia-xyz.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index d99eadcfd4..4bd5a1f9a3 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1004,6 +1004,33 @@ high-order accuracy, assuming that @code{f(x0+h)} has a Taylor series or some
 other power series in @code{h}.")
     (license license:expat)))
 
+(define-public julia-specialfunctions
+  (package
+    (name "julia-specialfunctions")
+    (version "1.3.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaMath/SpecialFunctions.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1rfhrrkzi3ils7fklbn35ki1yp5x88fi71qknfwqyw4pk8cf8p80"))))
+    (build-system julia-build-system)
+    (inputs
+     `(("julia-chainrulestestutils" ,julia-chainrulestestutils)))
+    (propagated-inputs
+     `(("julia-chainrulescore" ,julia-chainrulescore)
+       ("julia-openspecfun-jll" ,julia-openspecfun-jll)))
+    (home-page "https://github.com/JuliaMath/SpecialFunctions.jl")
+    (synopsis "Special mathematical functions")
+    (description "This package provides special mathematical functions,
+including Bessel, Hankel, Airy, error, Dawson, exponential (or sine and
+cosine) integrals, eta, zeta, digamma, inverse digamma, trigamma, and
+polygamma functions.")
+    (license license:expat)))
+
 (define-public julia-staticarrays
   (package
     (name "julia-staticarrays")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:10 GMT) Full text and rfc822 format available.

Message #179 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 26/30] gnu: Add julia-diffrules.
Date: Thu, 25 Mar 2021 02:05:12 +0100
* gnu/packages/julia-xyz.scm (julia-diffrules): New variable.
---
 gnu/packages/julia-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index 4bd5a1f9a3..fe1ecf0c9d 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -411,6 +411,31 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
 be passed to in-place differentiation methods instead of an output buffer.")
     (license license:expat)))
 
+(define-public julia-diffrules
+  (package
+    (name "julia-diffrules")
+    (version "1.0.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/DiffRules.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0cwjvj4gma7924fm3yas0nf0jlnwwx4v7fi79ii3s290lkdldzfl"))))
+    (propagated-inputs
+     `(("julia-nanmath" ,julia-nanmath)
+       ("julia-specialfunctions" ,julia-specialfunctions)))
+    (build-system julia-build-system)
+    (home-page "https://github.com/JuliaDiff/DiffRules.jl")
+    (synopsis "Primitive differentiation rules")
+    (description "This package provides primitive differentiation rules that
+can be composed via various formulations of the chain rule.  Using
+@code{DiffRules}, new differentiation rules can defined, query whether or not
+a given rule exists, and symbolically apply rules to simple Julia expressions.")
+    (license license:expat)))
+
 (define-public julia-difftests
   (package
     (name "julia-difftests")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:06:11 GMT) Full text and rfc822 format available.

Message #182 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 27/30] gnu: Add julia-chainrules.
Date: Thu, 25 Mar 2021 02:05:13 +0100
* gnu/packages/julia-xyz.scm (julia-chainrules): New variable.
---
 gnu/packages/julia-xyz.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index fe1ecf0c9d..b526306984 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -147,6 +147,37 @@ can also be used to compute definite integrals by different numerical
 methods.")
     (license license:expat)))
 
+(define-public julia-chainrules
+  (package
+    (name "julia-chainrules")
+    (version "0.7.54")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/ChainRules.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1x4w71v8cw0vpba47h8f5xq4gyjfxbcvayzf7m41yg8gf49s9pkf"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for test
+     `(("julia-chainrulestestutils" ,julia-chainrulestestutils)
+       ("julia-finitedifferences" ,julia-finitedifferences)
+       ("julia-nanmath" ,julia-nanmath)
+       ("julia-specialfunctions" ,julia-specialfunctions)))
+    (propagated-inputs
+     `(("julia-chainrulescore" ,julia-chainrulescore)
+       ("julia-compat" ,julia-compat)
+       ("julia-reexport" ,julia-reexport)
+       ("julia-requires" ,julia-requires)))
+    (home-page "https://github.com/JuliaDiff/ChainRules.jl")
+    (synopsis "Common utilities for automatic differentiation")
+    (description "The is package provides a variety of common utilities that
+can be used by downstream automatic differentiation (AD) tools to define and
+execute forward-, reverse-, and mixed-mode primitives.")
+    (license license:expat)))
+
 (define-public julia-chainrulescore
   (package
     (name "julia-chainrulescore")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:07:02 GMT) Full text and rfc822 format available.

Message #185 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 28/30] gnu: Add julia-forwarddiff.
Date: Thu, 25 Mar 2021 02:05:14 +0100
* gnu/packages/julia-xyz.scm (julia-forwarddiff): New variable.
---
 gnu/packages/julia-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index b526306984..9a414fc739 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -592,6 +592,38 @@ scaled by a constant factor.  Consequently, they have a fixed number of
 digits (bits) after the decimal (radix) point.")
     (license license:expat)))
 
+(define-public julia-forwarddiff
+  (package
+    (name "julia-forwarddiff")
+    (version "0.10.17")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/JuliaDiff/ForwardDiff.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "17xaz4v0zr46p7w873w1fwf31phdnhr0vbdym9yr4flmpzi528jw"))))
+    (build-system julia-build-system)
+    (inputs                             ;required for tests
+     `(("julia-calculus" ,julia-calculus)
+       ("julia-difftests" ,julia-difftests)))
+    (propagated-inputs
+     `(("julia-commonsubexpressions" ,julia-commonsubexpressions)
+       ("julia-diffresults" ,julia-diffresults)
+       ("julia-diffrules" ,julia-diffrules)
+       ("julia-nanmath" ,julia-nanmath)
+       ("julia-specialfunctions" ,julia-specialfunctions)
+       ("julia-staticarrays" ,julia-staticarrays)))
+    (home-page "https://github.com/JuliaDiff/ForwardDiff.jl")
+    (synopsis "Methods to take multidimensional derivatives")
+    (description "This package implements methods to take derivatives,
+gradients, Jacobians, Hessians, and higher-order derivatives of native Julia
+functions (or any callable object, really) using forward mode automatic
+differentiation (AD).")
+    (license license:expat)))
+
 (define-public julia-http
   (package
     (name "julia-http")
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:07:02 GMT) Full text and rfc822 format available.

Message #188 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 29/30] gnu: Add julia-zygoterules.
Date: Thu, 25 Mar 2021 02:05:15 +0100
* gnu/packages/julia-xyz.scm (julia-zygoterules): 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 9a414fc739..af8b41e82b 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1199,3 +1199,25 @@ working with @acronym{URIs,Uniform Resource Identifiers}, as defined in RFC
     (description "This package supports SI units and also many other unit
 system.")
     (license license:expat)))
+
+(define-public julia-zygoterules
+  (package
+    (name "julia-zygoterules")
+    (version "0.2.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/FluxML/ZygoteRules.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "07i2mf6rr5b8i6l82qgwl5arsb5pwyyzyfasgnszhdqllk9501bs"))))
+    (build-system julia-build-system)
+    (propagated-inputs
+     `(("julia-macrotools" ,julia-macrotools)))
+    (home-page "https://github.com/FluxML/ZygoteRules.jl")
+    (synopsis "Add minimal custom gradients to Zygote")
+    (description "Minimal package which enables to add custom gradients to
+Zygote, without depending on Zygote itself.")
+    (license license:expat)))
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 01:07:03 GMT) Full text and rfc822 format available.

Message #191 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: 47350 <at> debbugs.gnu.org
Cc: zimoun <zimon.toutoune <at> gmail.com>
Subject: [PATCH v2 30/30] gnu: Add julia-zygote.
Date: Thu, 25 Mar 2021 02:05:16 +0100
* gnu/packages/julia-xyz.scm (julia-zygote): New variable.
---
 gnu/packages/julia-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index af8b41e82b..cbff69117d 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1221,3 +1221,38 @@ system.")
     (description "Minimal package which enables to add custom gradients to
 Zygote, without depending on Zygote itself.")
     (license license:expat)))
+
+(define-public julia-zygote
+  (package
+    (name "julia-zygote")
+    (version "0.6.4")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/FluxML/Zygote.jl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1h2ph0lsisbkh8y4xgwzgw9p5zi243q8zzp5gfh3zw9pzkx6a1rf"))))
+    (build-system julia-build-system)
+    (arguments
+     `(#:tests? #f))                    ;require CUDA, not packaged yet
+    (propagated-inputs
+     `(("julia-abstractffs" ,julia-abstractffts)
+       ("julia-chainrules" ,julia-chainrules)
+       ("julia-diffrules" ,julia-diffrules)
+       ("julia-fillarrays" ,julia-fillarrays)
+       ("julia-forwarddiff" ,julia-forwarddiff)
+       ("julia-irtools" ,julia-irtools)
+       ("julia-macrotools" ,julia-macrotools)
+       ("julia-nanmath" ,julia-nanmath)
+       ("julia-requires" ,julia-requires)
+       ("julia-specialfunctions" ,julia-specialfunctions)
+       ("julia-zygote-rules" ,julia-zygoterules)))
+    (home-page "https://fluxml.ai/Zygote.jl")
+    (synopsis "Automatic differentiation in Julia")
+    (description "Zygote provides source-to-source automatic
+differentiation (AD) in Julia, and is the next-generation AD system for the
+Flux differentiable programming framework.")
+    (license license:expat)))
-- 
2.28.0





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 09:48:01 GMT) Full text and rfc822 format available.

Message #194 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: zimoun <zimon.toutoune <at> gmail.com>, 47350 <at> debbugs.gnu.org
Cc: ludo <at> gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Thu, 25 Mar 2021 10:47:05 +0100
zimoun <zimon.toutoune <at> gmail.com> writes:

> Hi Nicoló,
> Hum, I get these kind of messages:
>
> --8<---------------cut here---------------start------------->8---
> Internal error: encountered unexpected error in runtime:
> ErrorException("type UnionAll has no field size")
> jl_errorf at /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/rtutils.c:77
> --8<---------------cut here---------------end--------------->8---
>
> for julia-datastructures for instance.  Even if the build is fine and
> my small experiments seems correct.
>

I'd say it's a julia bug [fn:1].

can be reproduced with:

```julia
primitive type Foo{T} 32 end
foo(T, x) = (Core.bitcast(Foo{T}, x); x)
code_typed(foo, Tuple{Any, Int32})
```

We need to test this with julia 1.5.4 or 1.6.0 (the latter has been
released yesterday :D.  I had a build recipe for some version in
between 1.5.3 and 1.6.0, I'll check if it still works).  Before the guix
1.2.1 release, we might want to upgrade to 1.5.4 at least.

> Well, I have set this deprecation warning as a first commit in the v2.

Thanks!

I should have some time to re-check those later today

Nicolò

[fn:1] https://github.com/Juliaang/julia/issues/37532





Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Thu, 25 Mar 2021 11:33:01 GMT) Full text and rfc822 format available.

Message #197 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Nicolò Balzarotti <anothersms <at> gmail.com>,
 47350 <at> debbugs.gnu.org
Cc: ludo <at> gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Thu, 25 Mar 2021 12:32:14 +0100
Hi,

On Thu, 25 Mar 2021 at 10:47, Nicolò Balzarotti <anothersms <at> gmail.com> wrote:
> zimoun <zimon.toutoune <at> gmail.com> writes:

> I'd say it's a julia bug [fn:1].

ok

> We need to test this with julia 1.5.4 or 1.6.0 (the latter has been
> released yesterday :D.  I had a build recipe for some version in
> between 1.5.3 and 1.6.0, I'll check if it still works).  Before the guix
> 1.2.1 release, we might want to upgrade to 1.5.4 at least.

Please go ahead.  If 1.6.0 is not included for 1.2.1, it will for the
next 1.3. ;-)

IMHO, we should try to address: the reproducibility issue and the
precompiled twice,

<http://issues.guix.gnu.org/issue/22304
<http://issues.guix.gnu.org/issue/47354>
<https://yhetil.org/guix/86h7l1ic7e.fsf <at> gmail.com>


Thanks,
simon




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Sat, 27 Mar 2021 21:02:01 GMT) Full text and rfc822 format available.

Message #200 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: zimoun <zimon.toutoune <at> gmail.com>, 47350 <at> debbugs.gnu.org
Cc: ludo <at> gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Sat, 27 Mar 2021 22:01:15 +0100
Nicolò Balzarotti <anothersms <at> gmail.com> writes:

> zimoun <zimon.toutoune <at> gmail.com> writes:

> I should have some time to re-check those later today
>
Ok the everything still builds (I had a few problems applying the
patches, but it might depend on my setup).

Lint gives warnings:
julia-zygote <at> 0.6.4: permanent redirect from https://fluxml.ai/Zygote.jl to https://fluxml.ai/Zygote.jl/
julia-zygote <at> 0.6.4: can be upgraded to 0.6.6
julia-chainrules <at> 0.7.54: can be upgraded to 0.7.55
julia-openspecfun-jll <at> 0.5.3+4: sentences in description should be followed by two spaces; possible infraction at 129
julia-compilersupportlibraries-jll <at> 0.4.0+1: sentences in description should be followed by two spaces; possible infraction at 134
julia-compilersupportlibraries-jll <at> 0.4.0+1: line 344 is way too long (91
characters)
julia-chainrulescore <at> 0.9.29: can be upgraded to 0.9.33
 julia-macrotools <at> 0.5.6: permanent redirect from https://fluxml.ai/MacroTools.jl to https://fluxml.ai/MacroTools.jl/

Other than that, LGTM
(I opened an issue [fn:1] to constructionbase.jl to have latest version tagged,
if they respond promptly we might use the tagged version)

[fn:1] https://github.com/JuliaObjects/ConstructionBase.jl/issues/42


Thanks, Nicolò




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Sat, 27 Mar 2021 21:26:01 GMT) Full text and rfc822 format available.

Message #203 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Nicolò Balzarotti <anothersms <at> gmail.com>
Cc: ludo <at> gnu.org, 47350 <at> debbugs.gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Sat, 27 Mar 2021 22:24:22 +0100
Hi Nicoló,

On Sat, 27 Mar 2021 at 22:01, Nicolò Balzarotti <anothersms <at> gmail.com> wrote:
> Nicolò Balzarotti <anothersms <at> gmail.com> writes:
>
>> zimoun <zimon.toutoune <at> gmail.com> writes:
>
>> I should have some time to re-check those later today
>>
> Ok the everything still builds (I had a few problems applying the
> patches, but it might depend on my setup).

Ah.

> Lint gives warnings:
> julia-zygote <at> 0.6.4: permanent redirect from https://fluxml.ai/Zygote.jl to
> https://fluxml.ai/Zygote.jl/
>  julia-macrotools <at> 0.5.6: permanent redirect from
> https://fluxml.ai/MacroTools.jl to https://fluxml.ai/MacroTools.jl/

I find weird to have to have trailing ’/’ for these when all the others
does not have.

> julia-zygote <at> 0.6.4: can be upgraded to 0.6.6
> julia-chainrules <at> 0.7.54: can be upgraded to 0.7.55
> julia-chainrulescore <at> 0.9.29: can be upgraded to 0.9.33

Well, let apply this series and update them later. :-)

> julia-openspecfun-jll <at> 0.5.3+4: sentences in description should be followed by
> two spaces; possible infraction at 129
> julia-compilersupportlibraries-jll <at> 0.4.0+1: sentences in description should be
> followed by two spaces; possible infraction at 134

Indeed.  Ludo, could you fix it before pushing?

> julia-compilersupportlibraries-jll <at> 0.4.0+1: line 344 is way too long (91
> characters)

Hum, but life is too short. ;-)


> Other than that, LGTM

Thanks!

> (I opened an issue [fn:1] to constructionbase.jl to have latest
> version tagged,

Cool!

> if they respond promptly we might use the tagged version)

Well, let merge this series.  Once in, it becomes much easier to update
them.  And less scary for committer. :-)  Pushing ~30 new Julia
packages is not the same than tweaking a version+hash or a
description. ;-)

Thanks again!

Cheers,
simon

PS:
Teaser: I have started something about an importer. :-)
I have checked JuliaHub but I am not able to find the dependencies list,
so I am going to use General.




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Sat, 27 Mar 2021 21:42:01 GMT) Full text and rfc822 format available.

Message #206 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: zimoun <zimon.toutoune <at> gmail.com>
Cc: ludo <at> gnu.org, 47350 <at> debbugs.gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine
 Learning with Julia)
Date: Sat, 27 Mar 2021 22:41:35 +0100
zimoun <zimon.toutoune <at> gmail.com> writes:

> Well, let apply this series and update them later. :-)
> Well, let merge this series.  Once in, it becomes much easier to update
> them.  And less scary for committer. :-)  Pushing ~30 new Julia
> packages is not the same than tweaking a version+hash or a
> description. ;-)

Ok
> PS:
> Teaser: I have started something about an importer. :-)
> I have checked JuliaHub but I am not able to find the dependencies list,
> so I am going to use General.
Great!  If you can use the general registry directly is fine.
Dependency list is under .deps

Example:
curl 'https://juliahub.com/docs/Flux/QdkVy/0.11.6/pkg.json' | jq .deps

those with direct: false are depdencencies of dependencies




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Sat, 27 Mar 2021 22:09:01 GMT) Full text and rfc822 format available.

Message #209 received at 47350 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Nicolò Balzarotti <anothersms <at> gmail.com>
Cc: Ludovic Courtès <ludo <at> gnu.org>, 47350 <at> debbugs.gnu.org
Subject: Re: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine Learning
 with Julia)
Date: Sat, 27 Mar 2021 23:08:07 +0100
Hi,

On Sat, 27 Mar 2021 at 22:41, Nicolò Balzarotti <anothersms <at> gmail.com> wrote:

> Great!  If you can use the general registry directly is fine.

The plan is to start with Pkg.TOML has you did.  And see after if a
parser could be implemented with PEG or other.  I am not enough
comfortable with PEG to go with it (even if I run the tutorial etc.).
For instance, the 'cpan' importer checks if some Perl packages are
there.  Well, let start by not reinventing the wheel and see later.

> Dependency list is under .deps
>
> Example:
> curl 'https://juliahub.com/docs/Flux/QdkVy/0.11.6/pkg.json' | jq .deps

Yeah, but Project.toml distinguishes between "deps" and "extra", which
gives 'inputs' and 'propgated-inputs', roughly.

But, yeah JuliaHub is nicer because it provides partial synopses and
licenses.  Maybe I will change my mind. :-)


Cheers,
simon




Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Mon, 29 Mar 2021 14:51:02 GMT) Full text and rfc822 format available.

Notification sent to zimoun <zimon.toutoune <at> gmail.com>:
bug acknowledged by developer. (Mon, 29 Mar 2021 14:51:02 GMT) Full text and rfc822 format available.

Message #214 received at 47350-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: zimoun <zimon.toutoune <at> gmail.com>
Cc: 47350-done <at> debbugs.gnu.org,
 Nicolò Balzarotti <anothersms <at> gmail.com>
Subject: Re: bug#47350: [PATCH 00/29] Add Zygote (piece for Machine Learning
 with Julia)
Date: Mon, 29 Mar 2021 16:50:15 +0200
Hi there!

I’ve pushed v2, comrades!  Thanks for the great work!

Simon, I noticed the trap you’d set up: patches 10 and 20 were missing
from v2.  :-)  I took patches 9 and 19 from v1 instead, and everything
builds fine, but lemme know if anything’s amiss!

Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#47350; Package guix-patches. (Mon, 29 Mar 2021 15:11:01 GMT) Full text and rfc822 format available.

Message #217 received at 47350-done <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 47350-done <at> debbugs.gnu.org,
 Nicolò Balzarotti <anothersms <at> gmail.com>
Subject: Re: bug#47350: [PATCH 00/29] Add Zygote (piece for Machine Learning
 with Julia)
Date: Mon, 29 Mar 2021 17:10:10 +0200
Hi,

On Mon, 29 Mar 2021 at 16:50, Ludovic Courtès <ludo <at> gnu.org> wrote:

> I’ve pushed v2, comrades!  Thanks for the great work!

\o/
Thanks Nicoló for the review.

> Simon, I noticed the trap you’d set up: patches 10 and 20 were missing
> from v2.  :-)  I took patches 9 and 19 from v1 instead, and everything
> builds fine, but lemme know if anything’s amiss!

Oh, sorry!  Indeed, I have missed the shell rule and forgot the '0'.
For the record, these 2 patches are the same for v1 and v2.

Thanks,
simon

--8<---------------cut here---------------start------------->8---
$ diff v2-0010-gnu-Add-julia-colortypes.patch
0009-gnu-Add-julia-colortypes.patch
1c1
< From 6597c28170e52c435dea0e29f7783260781574b0 Mon Sep 17 00:00:00 2001
---
> From 2ef94ee9e0f516d77449e8f179b66dc3135bff24 Mon Sep 17 00:00:00 2001
4c4
< Subject: [PATCH v2 10/30] gnu: Add julia-colortypes.
---
> Subject: [PATCH 09/29] gnu: Add julia-colortypes.
12c12
< index 4abeaa765f..8d28aab7f1 100644
---
> index d417a996f8..3213efd715 100644
--8<---------------cut here---------------end--------------->8---

--8<---------------cut here---------------start------------->8---
$ diff v2-0020-gnu-Add-julia-calculus.patch 0019-gnu-Add-julia-calculus.patch
1c1
< From 3d96c37625d6841a6b378ea0d57b53e479207b78 Mon Sep 17 00:00:00 2001
---
> From 5cf3bb5ab498d53bf419e18d1391afb5473b54e8 Mon Sep 17 00:00:00 2001
4c4
< Subject: [PATCH v2 20/30] gnu: Add julia-calculus.
---
> Subject: [PATCH 19/29] gnu: Add julia-calculus.
12c12
< index c5c04d6579..75b46a1c7c 100644
---
> index d14fa66fe5..dfab3c20af 100644
--8<---------------cut here---------------end--------------->8---




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 27 Apr 2021 11:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 335 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.