gnu: julia-blockarrays: Fix tests on i686-linux.
[jackhill/guix/guix.git] / gnu / packages / julia-xyz.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2020, 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
3 ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
4 ;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
5 ;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
6 ;;;
7 ;;; This file is part of GNU Guix.
8 ;;;
9 ;;; GNU Guix is free software; you can redistribute it and/or modify it
10 ;;; under the terms of the GNU General Public License as published by
11 ;;; the Free Software Foundation; either version 3 of the License, or (at
12 ;;; your option) any later version.
13 ;;;
14 ;;; GNU Guix is distributed in the hope that it will be useful, but
15 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
16 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 ;;; GNU General Public License for more details.
18 ;;;
19 ;;; You should have received a copy of the GNU General Public License
20 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
21
22 (define-module (gnu packages julia-xyz)
23 #:use-module ((guix licenses) #:prefix license:)
24 #:use-module (gnu packages)
25 #:use-module (guix utils)
26 #:use-module (guix packages)
27 #:use-module (guix git-download)
28 #:use-module (guix build-system julia)
29 #:use-module (gnu packages gcc)
30 #:use-module (gnu packages julia-jll)
31 #:use-module (gnu packages python)
32 #:use-module (gnu packages python-xyz)
33 #:use-module (gnu packages version-control))
34
35 (define-public julia-abstractffts
36 (package
37 (name "julia-abstractffts")
38 (version "1.0.1")
39 (source
40 (origin
41 (method git-fetch)
42 (uri (git-reference
43 (url "https://github.com/JuliaMath/AbstractFFTS.jl")
44 (commit (string-append "v" version))))
45 (file-name (git-file-name name version))
46 (sha256
47 (base32 "0083pwdyxjb04i330ir9pc8kmp4bwk59lx1jgc9qi05y8j7xzbp0"))))
48 (build-system julia-build-system)
49 (inputs ;required for tests
50 `(("julia-unitful" ,julia-unitful)))
51 (home-page "https://github.com/JuliaGPU/Adapt.jl")
52 (synopsis "General framework for fast Fourier transforms (FFTs)")
53 (description "This package allows multiple FFT packages to co-exist with
54 the same underlying @code{fft(x)} and @code{plan_fft(x)} interface. It is
55 mainly not intended to be used directly. Instead, developers of packages that
56 implement FFTs (such as @code{FFTW.jl} or @code{FastTransforms.jl}) extend the
57 types/functions defined in AbstractFFTs.")
58 (license license:expat)))
59
60 (define-public julia-abstracttrees
61 (package
62 (name "julia-abstracttrees")
63 (version "0.3.4")
64 (source
65 (origin
66 (method git-fetch)
67 (uri (git-reference
68 (url "https://github.com/JuliaCollections/AbstractTrees.jl")
69 (commit (string-append "v" version))))
70 (file-name (git-file-name name version))
71 (sha256
72 (base32 "16is5n2qa69cci34vfazxsa7ik6q0hbnnqrbrhkq8frh142f1xs8"))))
73 (build-system julia-build-system)
74 (home-page "https://juliacollections.github.io/AbstractTrees.jl/stable/")
75 (synopsis "Abstract Julia interfaces for working with trees")
76 (description "This Julia package provides several utilities for working
77 with tree-like data structures. Most importantly, it defines the
78 @code{children} method that any package that contains such a data structure
79 may import and extend in order to take advantage of any generic tree algorithm
80 in this package.")
81 (license license:expat)))
82
83 (define-public julia-adapt
84 (package
85 (name "julia-adapt")
86 (version "3.3.1")
87 (source
88 (origin
89 (method git-fetch)
90 (uri (git-reference
91 (url "https://github.com/JuliaGPU/Adapt.jl")
92 (commit (string-append "v" version))))
93 (file-name (git-file-name name version))
94 (sha256
95 (base32 "009fj59fzhvfsyw35kakllsh36k3xlwyzq8qa5f5k598i3pq14i7"))))
96 (build-system julia-build-system)
97 (home-page "https://github.com/JuliaGPU/Adapt.jl")
98 (synopsis "Package providing the @code{adapt} function, similar to @code{convert}")
99 (description "This Julia package provides the @code{adapt(T, x)} function
100 acts like @code{convert(T, x)}, but without the restriction of returning a
101 @code{T}. This allows you to \"convert\" wrapper types like @code{Adjoint} to
102 be GPU compatible without throwing away the wrapper.")
103 (license license:expat)))
104
105 (define-public julia-ansicoloredprinters
106 (package
107 (name "julia-ansicoloredprinters")
108 (version "0.0.1")
109 (source
110 (origin
111 (method git-fetch)
112 (uri (git-reference
113 (url "https://github.com/JuliaDocs/ANSIColoredPrinters.jl")
114 (commit (string-append "v" version))))
115 (file-name (git-file-name name version))
116 (sha256
117 (base32 "0dp5agljr0g50s5gn0pr70wrz01ggck6pb40ay3l4szhswq7mqzf"))))
118 (build-system julia-build-system)
119 (home-page "https://github.com/JuliaDocs/ANSIColoredPrinters.jl")
120 (synopsis "ANSI escape code translator")
121 (description "@code{ANSIColoredPrinters.jl} converts a text qualified by
122 ANSI escape codes to another format.")
123 (license license:expat)))
124
125 (define-public julia-aqua
126 (package
127 (name "julia-aqua")
128 (version "0.5.1")
129 (source
130 (origin
131 (method git-fetch)
132 (uri (git-reference
133 (url "https://github.com/JuliaTesting/Aqua.jl")
134 (commit (string-append "v" version))))
135 (file-name (git-file-name name version))
136 (sha256
137 (base32 "1g0kyzcdykgs247j72jpc2qqall696jwgb3hnn4cxmbi8bkf7wpk"))))
138 (build-system julia-build-system)
139 (arguments
140 `(#:parallel-tests? #f))
141 (home-page "https://github.com/JuliaTesting/Aqua.jl")
142 (synopsis "Automated quality assurance for Julia packages")
143 (description "@acronym{Aqua.jl, Auto QUality Assurance for Julia packages},
144 provides functions to run a few automatable checks for Julia packages.")
145 (license license:expat)))
146
147 (define-public julia-arrayinterface
148 (package
149 (name "julia-arrayinterface")
150 (version "3.1.19")
151 (source
152 (origin
153 (method git-fetch)
154 (uri (git-reference
155 (url "https://github.com/JuliaArrays/ArrayInterface.jl")
156 (commit (string-append "v" version))))
157 (file-name (git-file-name name version))
158 (sha256
159 (base32 "0cmldnzvdgmfnrnrzgj6v1mfr2rvk5096392rwmhd3iyx7v0pq33"))))
160 (build-system julia-build-system)
161 (propagated-inputs
162 `(("julia-ifelse" ,julia-ifelse)
163 ("julia-requires" ,julia-requires)
164 ("julia-static" ,julia-static)))
165 (native-inputs
166 `(("julia-aqua" ,julia-aqua)
167 ("julia-bandedmatrices" ,julia-bandedmatrices)
168 ("julia-blockbandedmatrices" ,julia-blockbandedmatrices)
169 ("julia-ifelse" ,julia-ifelse)
170 ("julia-offsetarrays" ,julia-offsetarrays)
171 ("julia-staticarrays" ,julia-staticarrays)))
172 (home-page "https://github.com/JuliaArrays/ArrayInterface.jl")
173 (synopsis "Base array interface primitives")
174 (description "The purpose of this library is to solidify extensions to the
175 current @code{AbstractArray} interface, which are put to use in package
176 ecosystems like @code{DifferentialEquations.jl}. Since these libraries are
177 live, this package will serve as a staging ground for ideas before they are
178 merged into Base Julia. For this reason, no functionality is exported so that
179 if such functions are added and exported in a future Base Julia, there will be
180 no issues with the upgrade.")
181 (license license:expat)))
182
183 (define-public julia-arraylayouts
184 (package
185 (name "julia-arraylayouts")
186 (version "0.7.6")
187 (source
188 (origin
189 (method git-fetch)
190 (uri (git-reference
191 (url "https://github.com/JuliaMatrices/ArrayLayouts.jl")
192 (commit (string-append "v" version))))
193 (file-name (git-file-name name version))
194 (sha256
195 (base32 "05q62pks8j23pgbrfny072rrwzrz6q19l68srnjxxv39ncmdmrvg"))))
196 (build-system julia-build-system)
197 (propagated-inputs
198 `(("julia-fillarrays" ,julia-fillarrays)))
199 (home-page "https://github.com/JuliaMatrices/ArrayLayouts.jl")
200 (synopsis "Array layouts and general fast linear algebra")
201 (description "This package implements a trait-based framework for describing
202 array layouts such as column major, row major, etc. that can be dispatched to
203 appropriate BLAS or optimised Julia linear algebra routines. This supports a
204 much wider class of matrix types than Julia's in-built @code{StridedArray}.")
205 (license license:expat)))
206
207 (define-public julia-axisalgorithms
208 (package
209 (name "julia-axisalgorithms")
210 (version "1.0.0")
211 (source
212 (origin
213 (method git-fetch)
214 (uri (git-reference
215 (url "https://github.com/timholy/AxisAlgorithms.jl")
216 (commit (string-append "v" version))))
217 (file-name (git-file-name name version))
218 (sha256
219 (base32 "00x85lnfln7xkfnirpplzyi8r6q92nfqwya8il156bf7b1pa20gk"))))
220 (build-system julia-build-system)
221 (propagated-inputs
222 `(("julia-woodburymatrices" ,julia-woodburymatrices)))
223 (home-page "https://github.com/timholy/AxisAlgorithms.jl")
224 (synopsis "Filtering and linear algebra routines for multidimensional arrays")
225 (description "@code{AxisAlgorithms} is a collection of filtering and linear
226 algebra algorithms for multidimensional arrays. For algorithms that would
227 typically apply along the columns of a matrix, you can instead pick an arbitrary
228 axis (dimension).")
229 (license license:expat)))
230
231 (define-public julia-axisarrays
232 (package
233 (name "julia-axisarrays")
234 (version "0.4.4")
235 (source
236 (origin
237 (method git-fetch)
238 (uri (git-reference
239 (url "https://github.com/JuliaArrays/AxisArrays.jl")
240 (commit (string-append "v" version))))
241 (file-name (git-file-name name version))
242 (sha256
243 (base32 "03kzan1lm4fxfhzv1xjg3ysf6y7nagcc61vfz15kvdrp1dqxlynk"))))
244 (build-system julia-build-system)
245 (propagated-inputs
246 `(("julia-rangearrays" ,julia-rangearrays)
247 ("julia-intervalsets" ,julia-intervalsets)
248 ("julia-itertools" ,julia-itertools)))
249 (native-inputs
250 `(("julia-offsetarrays" ,julia-offsetarrays)
251 ("julia-unitful" ,julia-unitful)))
252 (home-page "http://juliaarrays.github.io/AxisArrays.jl/latest/")
253 (synopsis "Arrays where each dimension can have a named axis with values")
254 (description "This package for the Julia language provides an array type
255 (the AxisArray) that knows about its dimension names and axis values. This
256 allows for indexing by name without incurring any runtime overhead. This
257 permits one to implement algorithms that are oblivious to the storage order of
258 the underlying arrays. AxisArrays can also be indexed by the values along their
259 axes, allowing column names or interval selections.")
260 (license license:expat)))
261
262 (define-public julia-bandedmatrices
263 (package
264 (name "julia-bandedmatrices")
265 (version "0.16.10")
266 (source
267 (origin
268 (method git-fetch)
269 (uri (git-reference
270 (url "https://github.com/JuliaMatrices/BandedMatrices.jl")
271 (commit (string-append "v" version))))
272 (file-name (git-file-name name version))
273 (sha256
274 (base32 "0rlfj9gr9ss621v5kw5b06206yaak21s2vq9vk7r8a7p2ylncism"))))
275 (build-system julia-build-system)
276 (propagated-inputs
277 `(("julia-arraylayouts" ,julia-arraylayouts)
278 ("julia-fillarrays" ,julia-fillarrays)))
279 (native-inputs
280 `(("julia-genericlinearalgebra" ,julia-genericlinearalgebra)))
281 (home-page "https://github.com/JuliaMatrices/BandedMatrices.jl")
282 (synopsis "Julia package for representing banded matrices")
283 (description "This package supports representing banded matrices by only
284 the entries on the bands.")
285 (license license:expat)))
286
287 (define-public julia-benchmarktools
288 (package
289 (name "julia-benchmarktools")
290 (version "1.1.1")
291 (source
292 (origin
293 (method git-fetch)
294 (uri (git-reference
295 (url "https://github.com/JuliaCI/BenchmarkTools.jl")
296 (commit (string-append "v" version))))
297 (file-name (git-file-name name version))
298 (sha256
299 (base32 "1xz3kdrphp4b158pg7dwkiry49phs2fjjpdvk1hjpww5ykxacks8"))))
300 (build-system julia-build-system)
301 (arguments
302 `(#:phases
303 ,@(if (target-x86-32?)
304 '((modify-phases %standard-phases
305 (add-after 'unpack 'remove-failing-tests-i686
306 (lambda _
307 (substitute* "test/GroupsTests.jl"
308 (("@test sprint\\(show, g1\\)")
309 "@test_broken sprint(show, g1)")
310 (("@test sprint\\(show, g1; context = :boundto => 1\\)")
311 "@test_broken sprint(show, g1; context = :boundto => 1)")
312 (("@test sprint\\(show, g1; context = :limit => false\\)")
313 "@test_broken sprint(show, g1; context = :limit => false)")
314 (("@test @test_deprecated") "@test_broken"))
315 (substitute* "test/ExecutionTests.jl"
316 ;; Evaluated: 12 == 8
317 (("@test @ballocated\\(Ref\\(1\\)\\)")
318 "@test_broken @ballocated(Ref(1))"))))))
319 '(%standard-phases))))
320 (propagated-inputs `(("julia-json" ,julia-json)))
321 (home-page "https://github.com/JuliaCI/BenchmarkTools.jl")
322 (synopsis "Benchmarking framework for the Julia language")
323 (description "@code{BenchmarkTools.jl} makes performance tracking of Julia
324 code easy by supplying a framework for writing and running groups of
325 benchmarks as well as comparing benchmark results.")
326 (license license:expat)))
327
328 (define-public julia-blockarrays
329 (package
330 (name "julia-blockarrays")
331 (version "0.16.8")
332 (source
333 (origin
334 (method git-fetch)
335 (uri (git-reference
336 (url "https://github.com/JuliaArrays/BlockArrays.jl")
337 (commit (string-append "v" version))))
338 (file-name (git-file-name name version))
339 (sha256
340 (base32 "1by26036fk9mawmcgqxpwizgbs398v9p6vrbsgg7h6llqn3q9iw1"))))
341 (build-system julia-build-system)
342 (arguments
343 `(#:phases
344 ,@(if (target-64bit?)
345 '(%standard-phases)
346 '((modify-phases %standard-phases
347 (add-after 'unpack 'fix-tests-int32-i686
348 (lambda _
349 (substitute* "test/test_blockarrays.jl"
350 (("Int64") "Int32")))))))))
351 (propagated-inputs
352 `(("julia-arraylayouts" ,julia-arraylayouts)
353 ("julia-fillarrays" ,julia-fillarrays)))
354 (native-inputs
355 `(("julia-lazyarrays" ,julia-lazyarrays)
356 ("julia-offsetarrays" ,julia-offsetarrays)
357 ("julia-staticarrays" ,julia-staticarrays)))
358 (home-page "https://github.com/JuliaArrays/BlockArrays.jl")
359 (synopsis "BlockArrays for Julia")
360 (description "A block array is a partition of an array into blocks or
361 subarrays. This package has two purposes. Firstly, it defines an interface for
362 an @code{AbstractBlockArray} block arrays that can be shared among types
363 representing different types of block arrays. The advantage to this is that it
364 provides a consistent API for block arrays.
365 Secondly, it also implements two different type of block arrays that follow the
366 @code{AbstractBlockArray} interface. The type @code{BlockArray} stores each
367 block contiguously while the type @code{PseudoBlockArray} stores the full matrix
368 contiguously. This means that @code{BlockArray} supports fast non copying
369 extraction and insertion of blocks while @code{PseudoBlockArray} supports fast
370 access to the full matrix to use in in for example a linear solver.")
371 (license license:expat)))
372
373 (define-public julia-blockbandedmatrices
374 (package
375 (name "julia-blockbandedmatrices")
376 (version "0.10.7")
377 (source
378 (origin
379 (method git-fetch)
380 (uri (git-reference
381 (url "https://github.com/JuliaMatrices/BlockBandedMatrices.jl")
382 (commit (string-append "v" version))))
383 (file-name (git-file-name name version))
384 (sha256
385 (base32 "10n1r6kmmv2wa307jfg9y2m6p16j8hngjp3fjavpbdy1r5haasm9"))))
386 (build-system julia-build-system)
387 (propagated-inputs
388 `(("julia-arraylayouts" ,julia-arraylayouts)
389 ("julia-bandedmatrices" ,julia-bandedmatrices)
390 ("julia-blockarrays" ,julia-blockarrays)
391 ("julia-fillarrays" ,julia-fillarrays)
392 ("julia-matrixfactorizations" ,julia-matrixfactorizations)))
393 (home-page "https://github.com/JuliaMatrices/BlockBandedMatrices.jl")
394 (synopsis "Block-banded matrices and banded-block-banded matrices")
395 (description "This package supports representing block-banded and
396 banded-block-banded matrices by only storing the entries in the non-zero bands.
397 A @code{BlockBandedMatrix} is a subtype of @code{BlockMatrix} of
398 @code{BlockArrays.jl} whose layout of non-zero blocks is banded.")
399 (license license:expat)))
400
401 (define-public julia-bson
402 (package
403 (name "julia-bson")
404 (version "0.3.3")
405 (source
406 (origin
407 (method git-fetch)
408 (uri (git-reference
409 (url "https://github.com/JuliaIO/BSON.jl")
410 (commit (string-append "v" version))))
411 (file-name (git-file-name name version))
412 (sha256
413 (base32 "1l5608ma2ys7v2gpcqbiv9mwfc6yrlqkihrfx1pf7fgv5llhd4fn"))))
414 (build-system julia-build-system)
415 (native-inputs
416 `(("julia-dataframes" ,julia-dataframes)))
417 (home-page "https://github.com/JuliaIO/BSON.jl")
418 (synopsis "Binary JSON serialisation format")
419 (description "@code{BSON.jl} is a Julia package for working with the Binary
420 JSON serialisation format. It can be used as a general store for Julia data
421 structures.")
422 (license license:expat)))
423
424 (define-public julia-bufferedstreams
425 (package
426 (name "julia-bufferedstreams")
427 (version "1.0.0")
428 (source
429 (origin
430 (method git-fetch)
431 (uri (git-reference
432 (url "https://github.com/BioJulia/BufferedStreams.jl")
433 (commit (string-append "v" version))))
434 (file-name (git-file-name name version))
435 (sha256
436 (base32 "0sf4sxbq55mg2pwxyxf0c839z1lk0yxg8nmb7617bfbvw31cp88z"))))
437 (build-system julia-build-system)
438 ;; The package is old and tests are using undefined functions. They also
439 ;; freeze, see
440 ;; https://travis-ci.org/BioJulia/BufferedStreams.jl/jobs/491050182
441 (arguments
442 '(#:tests? #f
443 #:julia-package-name "BufferedStreams"
444 #:julia-package-uuid "e1450e63-4bb3-523b-b2a4-4ffa8c0fd77d"))
445 (propagated-inputs `(("julia-compat" ,julia-compat)))
446 (home-page "https://github.com/BioJulia/BufferedStreams.jl")
447 (synopsis "Fast composable IO streams")
448 (description "@code{BufferedStreams.jl} provides buffering for IO
449 operations. It can wrap any @code{IO} type automatically making incremental
450 reading and writing faster.")
451 (license license:expat)))
452
453 (define-public julia-calculus
454 (package
455 (name "julia-calculus")
456 (version "0.5.1")
457 (source
458 (origin
459 (method git-fetch)
460 (uri (git-reference
461 (url "https://github.com/JuliaMath/Calculus.jl")
462 (commit (string-append "v" version))))
463 (file-name (git-file-name name version))
464 (sha256
465 (base32 "0xh0ak2ycsjw2h86ja24ch3kn2d18zx3frrds78aimwdnqb1gdc2"))))
466 (build-system julia-build-system)
467 (home-page "https://github.com/JuliaMath/Calculus.jl")
468 (synopsis "Common utilities for automatic differentiation")
469 (description "This package provides tools for working with the basic
470 calculus operations of differentiation and integration. The @code{Calculus}
471 package produces approximate derivatives by several forms of finite
472 differencing or produces exact derivative using symbolic differentiation. It
473 can also be used to compute definite integrals by different numerical
474 methods.")
475 (license license:expat)))
476
477 (define-public julia-categoricalarrays
478 (package
479 (name "julia-categoricalarrays")
480 (version "0.9.7")
481 (source
482 (origin
483 (method git-fetch)
484 (uri (git-reference
485 (url "https://github.com/JuliaData/CategoricalArrays.jl")
486 (commit (string-append "v" version))))
487 (file-name (git-file-name name version))
488 (sha256
489 (base32 "1bcfylxdaizgasnmlkjjkf4dgfvy2y9ycnphw2d0z6mm9vx3n04x"))))
490 (build-system julia-build-system)
491 (native-inputs
492 `(("julia-pooledarrays" ,julia-pooledarrays)))
493 (propagated-inputs
494 `(("julia-dataapi" ,julia-dataapi)
495 ("julia-json" ,julia-json)
496 ("julia-json3" ,julia-json3)
497 ("julia-missings" ,julia-missings)
498 ("julia-recipesbase" ,julia-recipesbase)
499 ("julia-structtypes" ,julia-structtypes)))
500 (home-page "https://github.com/JuliaData/CategoricalArrays.jl")
501 (synopsis "Arrays for working with categorical data")
502 (description "This package provides tools for working with categorical
503 variables, both with unordered (nominal variables) and ordered categories
504 (ordinal variables), optionally with missing values.")
505 (license license:expat)))
506
507 (define-public julia-chainrules
508 (package
509 (name "julia-chainrules")
510 (version "1.1.0")
511 (source
512 (origin
513 (method git-fetch)
514 (uri (git-reference
515 (url "https://github.com/JuliaDiff/ChainRules.jl")
516 (commit (string-append "v" version))))
517 (file-name (git-file-name name version))
518 (sha256
519 (base32 "0if93pd3b3scg2x3gmk1cbwjk0ax1n792vy8c38y3xl7jpd5cb70"))))
520 (build-system julia-build-system)
521 (inputs ;required for test
522 `(("julia-chainrulestestutils" ,julia-chainrulestestutils)
523 ("julia-finitedifferences" ,julia-finitedifferences)
524 ("julia-nanmath" ,julia-nanmath)
525 ("julia-specialfunctions" ,julia-specialfunctions)))
526 (propagated-inputs
527 `(("julia-chainrulescore" ,julia-chainrulescore)
528 ("julia-compat" ,julia-compat)
529 ("julia-reexport" ,julia-reexport)
530 ("julia-requires" ,julia-requires)))
531 (home-page "https://github.com/JuliaDiff/ChainRules.jl")
532 (synopsis "Common utilities for automatic differentiation")
533 (description "The is package provides a variety of common utilities that
534 can be used by downstream automatic differentiation (AD) tools to define and
535 execute forward-, reverse-, and mixed-mode primitives.")
536 (license license:expat)))
537
538 (define-public julia-chainrulescore
539 (package
540 (name "julia-chainrulescore")
541 (version "1.0.2")
542 (source
543 (origin
544 (method git-fetch)
545 (uri (git-reference
546 (url "https://github.com/JuliaDiff/ChainRulesCore.jl")
547 (commit (string-append "v" version))))
548 (file-name (git-file-name name version))
549 (sha256
550 (base32 "1866xv30h1bi7f2m993nljzf58wwmv8zlgn6ffn9j3wckch1nfpb"))))
551 (build-system julia-build-system)
552 (inputs ;required for tests
553 `(("julia-benchmarktools" ,julia-benchmarktools)
554 ("julia-staticarrays" ,julia-staticarrays)))
555 (propagated-inputs
556 `(("julia-compat" ,julia-compat)))
557 (home-page "https://github.com/JuliaDiff/ChainRulesCore.jl")
558 (synopsis "Common utilities used by downstream automatic differentiation tools")
559 (description "The package provides a light-weight dependency for defining
560 sensitivities for functions without the need to depend on ChainRules itself.")
561 (license license:expat)))
562
563 (define-public julia-chainrulestestutils
564 (package
565 (name "julia-chainrulestestutils")
566 (version "1.2.3")
567 (source
568 (origin
569 (method git-fetch)
570 (uri (git-reference
571 (url "https://github.com/JuliaDiff/ChainRulesTestUtils.jl")
572 (commit (string-append "v" version))))
573 (file-name (git-file-name name version))
574 (sha256
575 (base32 "1vlkyp72d514gyb4k3yhjl1g7f24ncmz61j56p4sdi9f76rk9fx9"))))
576 (build-system julia-build-system)
577 (propagated-inputs
578 `(("julia-chainrulescore" ,julia-chainrulescore)
579 ("julia-compat" ,julia-compat)
580 ("julia-finitedifference" ,julia-finitedifferences)))
581 (home-page "https://github.com/JuliaDiff/ChainRulesTestUtils.jl")
582 (synopsis "Common utilities used by downstream automatic differentiation tools")
583 (description "This package is designed to help in testing
584 @code{ChainRulesCore.frule} and @code{ChainRulesCore.rrule} methods. The main
585 entry points are @code{ChainRulesTestUtils.frule_test},
586 @code{ChainRulesTestUtils.rrule_test}, and
587 @code{ChainRulesTestUtils.test_scalar}. Currently this is done via testing the
588 rules against numerical differentiation (using @code{FiniteDifferences.jl}).
589
590 @code{ChainRulesTestUtils.jl} is separated from @code{ChainRulesCore.jl} so that it
591 can be a test-only dependency, allowing it to have potentially heavy
592 dependencies, while keeping @code{ChainRulesCore.jl} as light-weight as possible.")
593 (license license:expat)))
594
595 (define-public julia-codeczlib
596 (package
597 (name "julia-codeczlib")
598 (version "0.7.0")
599 (source
600 (origin
601 (method git-fetch)
602 (uri (git-reference
603 (url "https://github.com/JuliaIO/CodecZlib.jl")
604 (commit (string-append "v" version))))
605 (file-name (git-file-name name version))
606 (sha256
607 (base32 "0xm603nylkwk4bzx66zv1g3syzrvn3jh9spdx7kvcvgszzyrrgh4"))))
608 (build-system julia-build-system)
609 (arguments
610 `(#:phases
611 (modify-phases %standard-phases
612 (add-before 'reset-gzip-timestamps 'make-files-writable
613 (lambda* (#:key outputs #:allow-other-keys)
614 (let ((out (assoc-ref outputs "out")))
615 (for-each make-file-writable
616 (find-files out "\\.gz$"))
617 #t))))))
618 (propagated-inputs
619 `(("julia-zlib-jll" ,julia-zlib-jll)
620 ("julia-transcodingstreams" ,julia-transcodingstreams)))
621 (home-page "https://github.com/JuliaIO/CodecZlib.jl")
622 (synopsis "Zlib codecs for @code{TranscodingStreams.jl}")
623 (description "This package provides zlib codecs for
624 @code{TranscodingStreams.jl}.")
625 (license license:expat)))
626
627 (define-public julia-colors
628 (package
629 (name "julia-colors")
630 (version "0.12.8")
631 (source
632 (origin
633 (method git-fetch)
634 (uri (git-reference
635 (url "https://github.com/JuliaGraphics/Colors.jl")
636 (commit (string-append "v" version))))
637 (file-name (git-file-name name version))
638 (sha256
639 (base32 "0kx3hq7rf8p5zx6ly9k5j90zijmc7yrwmy96cgkl2ibdfbnhmya3"))))
640 (build-system julia-build-system)
641 (propagated-inputs
642 `(("julia-colortypes" ,julia-colortypes)
643 ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
644 ("julia-reexport" ,julia-reexport)))
645 (home-page "https://github.com/JuliaGraphics/Colors.jl")
646 (synopsis "Tools for dealing with color")
647 (description "This package provides a wide array of functions for dealing
648 with color. This includes conversion between colorspaces, measuring distance
649 between colors, simulating color blindness, parsing colors, and generating
650 color scales for graphics.")
651 (license license:expat)))
652
653 (define-public julia-colorschemes
654 (package
655 (name "julia-colorschemes")
656 (version "3.15.0")
657 (source
658 (origin
659 (method git-fetch)
660 (uri (git-reference
661 (url "https://github.com/JuliaGraphics/ColorSchemes.jl")
662 (commit (string-append "v" version))))
663 (file-name (git-file-name name version))
664 (sha256
665 (base32 "0kpjhmqd5cj8dh8bmh9b5g6bscyp7h23hzpr2s93pnrp57q1wvhq"))))
666 (build-system julia-build-system)
667 (propagated-inputs
668 `(("julia-colors" ,julia-colors)
669 ("julia-colortypes" ,julia-colortypes)
670 ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
671 ("julia-staticarrays" ,julia-staticarrays)))
672 (home-page "https://github.com/JuliaGraphics/ColorSchemes.jl")
673 (synopsis "Colorschemes, colormaps, gradients, and palettes")
674 (description "This package provides a collection of colorschemes.")
675 (license license:expat)))
676
677 (define-public julia-colortypes
678 (package
679 (name "julia-colortypes")
680 (version "0.11.0")
681 (source
682 (origin
683 (method git-fetch)
684 (uri (git-reference
685 (url "https://github.com/JuliaGraphics/ColorTypes.jl")
686 (commit (string-append "v" version))))
687 (file-name (git-file-name name version))
688 (sha256
689 (base32 "0n7h70caqv7yd0khjhn90iax62r73mcif8qzkwj5b4q46li1r8ih"))))
690 (build-system julia-build-system)
691 (propagated-inputs
692 `(("julia-fixedpointnumbers" ,julia-fixedpointnumbers)))
693 (native-inputs
694 `(("julia-documenter" ,julia-documenter)))
695 (home-page "https://github.com/JuliaGraphics/ColorTypes.jl")
696 (synopsis "Basic color types and constructor")
697 (description "This minimalistic package serves as the foundation for
698 working with colors in Julia. It defines basic color types and their
699 constructors, and sets up traits and show methods to make them easier to work
700 with.")
701 (license license:expat)))
702
703 (define-public julia-colorvectorspace
704 (package
705 (name "julia-colorvectorspace")
706 (version "0.9.7")
707 (source
708 (origin
709 (method git-fetch)
710 (uri (git-reference
711 (url "https://github.com/JuliaGraphics/ColorVectorSpace.jl")
712 (commit (string-append "v" version))))
713 (file-name (git-file-name name version))
714 (sha256
715 (base32 "02gk7f5g5wjxdasbjf8bvv1m7clksh7mw1xmygjdirjz1q0d6dwi"))))
716 (build-system julia-build-system)
717 (propagated-inputs
718 `(("julia-colortypes" ,julia-colortypes)
719 ("julia-specialfunctions" ,julia-specialfunctions)
720 ("julia-tensorcore" ,julia-tensorcore)))
721 (native-inputs
722 `(("julia-colors" ,julia-colors)))
723 (home-page "https://github.com/JuliaGraphics/ColorVectorSpace.jl")
724 (synopsis "Treat colors as n-vectors for the purposes of arithmetic")
725 (description "This package is an add-on to @code{ColorTypes.jl} and provides
726 fast mathematical operations for objects with types such as RGB and Gray.
727 Specifically, with this package both grayscale and RGB colors are treated as if
728 they are points in a normed vector space.")
729 (license license:expat)))
730
731 (define-public julia-combinatorics
732 (package
733 (name "julia-combinatorics")
734 (version "1.0.2")
735 (source
736 (origin
737 (method git-fetch)
738 (uri (git-reference
739 (url "https://github.com/JuliaMath/Combinatorics.jl")
740 (commit (string-append "v" version))))
741 (file-name (git-file-name name version))
742 (sha256
743 (base32 "0gafqkqi874zfm9h99akw9q95lk3ih5gip2h8p12fj9h7rvyf4j5"))))
744 (build-system julia-build-system)
745 (home-page "https://github.com/JuliaMath/Combinatorics.jl")
746 (synopsis "Combinatorics library for Julia")
747 (description "This package provides a combinatorics library for Julia,
748 focusing mostly (as of now) on enumerative combinatorics and permutations.")
749 (license license:expat)))
750
751 (define-public julia-commonsubexpressions
752 (package
753 (name "julia-commonsubexpressions")
754 (version "0.3.0")
755 (source
756 (origin
757 (method git-fetch)
758 (uri (git-reference
759 (url "https://github.com/rdeits/CommonSubexpressions.jl")
760 (commit (string-append "v" version))))
761 (file-name (git-file-name name version))
762 (sha256
763 (base32 "0mgy90kk8ksv3l720kkk04gnhn4aqhh2dj4sp3x8yy3limngfjay"))))
764 (build-system julia-build-system)
765 (propagated-inputs
766 `(("julia-macrotools" ,julia-macrotools)))
767 (home-page "https://github.com/rdeits/CommonSubexpressions.jl")
768 (synopsis "@code{@@cse} macro for Julia")
769 (description "This package provides the @code{@@cse} macro, which performs
770 common subexpression elimination.")
771 (license license:expat)))
772
773 (define-public julia-compat
774 (package
775 (name "julia-compat")
776 (version "3.39.0")
777 (source
778 (origin
779 (method git-fetch)
780 (uri (git-reference
781 (url "https://github.com/JuliaLang/Compat.jl")
782 (commit (string-append "v" version))))
783 (file-name (git-file-name name version))
784 (sha256
785 (base32 "0qzvaqi5gqgc747fnajbvvf5vqbh6cwykwky00c7glvmvdsgk3z0"))))
786 (build-system julia-build-system)
787 (home-page "https://github.com/JuliaLang/Compat.jl")
788 (synopsis "Compatibility across Julia versions")
789 (description "The Compat package is designed to ease interoperability
790 between older and newer versions of the Julia language. The Compat package
791 provides a macro that lets you use the latest syntax in a backwards-compatible
792 way.")
793 (license license:expat)))
794
795 (define-public julia-configurations
796 (package
797 (name "julia-configurations")
798 (version "0.16.4")
799 (source
800 (origin
801 (method git-fetch)
802 (uri (git-reference
803 (url "https://github.com/Roger-luo/Configurations.jl")
804 (commit (string-append "v" version))))
805 (file-name (git-file-name name version))
806 (sha256
807 (base32 "1b23p0zk8dx2sf01cnw177mqci7qd81b9s32ixz9clsh0r0icl1b"))))
808 (build-system julia-build-system)
809 (arguments
810 `(#:phases
811 (modify-phases %standard-phases
812 (add-after 'link-depot 'fix-tests
813 (lambda _
814 (substitute* "test/runtests.jl"
815 (("option.toml") "test/option.toml"))))
816 (add-after 'link-depot 'dont-use-exproniconlite
817 (lambda _
818 (substitute* '("Project.toml"
819 "src/Configurations.jl"
820 "test/runtests.jl")
821 (("ExproniconLite") "Expronicon"))
822 (substitute* "Project.toml"
823 (("55351af7-c7e9-48d6-89ff-24e801d99491")
824 "6b7a57c9-7cc1-4fdf-b7f5-e857abae3636"))))
825 ,@(if (target-64bit?)
826 '()
827 '((add-after 'unpack 'fix-tests-int32-i686
828 (lambda _
829 (substitute* "test/runtests.jl"
830 (("Int64") "Int32")))))))))
831 (propagated-inputs
832 `(("julia-crayons" ,julia-crayons)
833 ("julia-expronicon" ,julia-expronicon)
834 ("julia-orderedcollections" ,julia-orderedcollections)))
835 (home-page "https://configurations.rogerluo.dev/stable/")
836 (synopsis "Tools for options and configurations in Julia")
837 (description "@code{Configurations.jl} provides a macro @code{@@option} to
838 let you define @code{structs} to represent options/configurations, and serialize
839 between different option/configuration file formats such as @code{TOML}.")
840 (license license:expat)))
841
842 (define-public julia-constructionbase
843 (package
844 (name "julia-constructionbase")
845 (version "1.3.0")
846 (source
847 (origin
848 (method git-fetch)
849 (uri (git-reference
850 (url "https://github.com/JuliaObjects/ConstructionBase.jl")
851 (commit (string-append "v" version))))
852 (file-name (git-file-name name version))
853 (sha256
854 (base32 "1jk3h446vkv4yaavgm1hf1az7cwhppvhklvr08s49hhg02cm750q"))))
855 (build-system julia-build-system)
856 (home-page "https://juliaobjects.github.io/ConstructionBase.jl/dev/")
857 (synopsis "Primitive functions for construction of objects")
858 (description "This very lightweight package provides primitive functions
859 for construction of objects.")
860 (license license:expat)))
861
862 (define-public julia-coordinatetransformations
863 (package
864 (name "julia-coordinatetransformations")
865 (version "0.6.1")
866 (source
867 (origin
868 (method git-fetch)
869 (uri (git-reference
870 (url "https://github.com/JuliaGeometry/CoordinateTransformations.jl")
871 (commit (string-append "v" version))))
872 (file-name (git-file-name name version))
873 (sha256
874 (base32 "15zbkn32v7xlz7559s0r5a0vkwmjwsswxaqpzijly4lky4jnp33d"))))
875 (build-system julia-build-system)
876 (propagated-inputs
877 `(("julia-staticarrays" ,julia-staticarrays)))
878 (native-inputs
879 `(("julia-documenter" ,julia-documenter)
880 ("julia-forwarddiff" ,julia-forwarddiff)
881 ("julia-unitful" ,julia-unitful)))
882 (home-page "https://github.com/JuliaGeometry/CoordinateTransformations.jl")
883 (synopsis "Coordinate transformations in Julia")
884 (description "@code{CoordinateTransformations} is a Julia package to manage
885 simple or complex networks of coordinate system transformations.
886 Transformations can be easily applied, inverted, composed, and differentiated
887 (both with respect to the input coordinates and with respect to transformation
888 parameters such as rotation angle). Transformations are designed to be
889 light-weight and efficient enough for, e.g., real-time graphical applications,
890 while support for both explicit and automatic differentiation makes it easy to
891 perform optimization and therefore ideal for computer vision applications such
892 as SLAM (simultaneous localization and mapping).")
893 (license license:expat)))
894
895 (define-public julia-crayons
896 (package
897 (name "julia-crayons")
898 (version "4.0.4")
899 (source
900 (origin
901 (method git-fetch)
902 (uri (git-reference
903 (url "https://github.com/KristofferC/Crayons.jl")
904 (commit (string-append "v" version))))
905 (file-name (git-file-name name version))
906 (sha256
907 (base32 "0v3zhjlnb2914bxcj4myl8pgb7m31p77aj2k1bckmqs96jdph10z"))))
908 (build-system julia-build-system)
909 (home-page "https://github.com/KristofferC/Crayons.jl")
910 (synopsis "Colored and styled strings for terminals")
911 (description "Crayons is a package that makes it simple to write strings in
912 different colors and styles to terminals. It supports the 16 system colors,
913 both the 256 color and 24 bit true color extensions, and the different text
914 styles available to terminals.")
915 (license license:expat)))
916
917 (define-public julia-dataapi
918 (package
919 (name "julia-dataapi")
920 (version "1.7.0")
921 (source
922 (origin
923 (method git-fetch)
924 (uri (git-reference
925 (url "https://github.com/JuliaData/DataAPI.jl")
926 (commit (string-append "v" version))))
927 (file-name (git-file-name name version))
928 (sha256
929 (base32 "0swk31p83fycz5cdj4fg6b0wfqj473lnx94q2fl7ybxkkc6afba7"))))
930 (build-system julia-build-system)
931 (home-page "https://github.com/JuliaData/DataAPI.jl")
932 (synopsis "Data-focused namespace for packages to share functions")
933 (description "This package provides a namespace for data-related generic
934 function definitions to solve the optional dependency problem; packages wishing
935 to share and/or extend functions can avoid depending directly on each other by
936 moving the function definition to DataAPI.jl and each package taking a
937 dependency on it.")
938 (license license:expat)))
939
940 (define-public julia-dataframes
941 (package
942 (name "julia-dataframes")
943 (version "1.2.2")
944 (source
945 (origin
946 (method git-fetch)
947 (uri (git-reference
948 (url "https://github.com/JuliaData/DataFrames.jl")
949 (commit (string-append "v" version))))
950 (file-name (git-file-name name version))
951 (sha256
952 (base32 "1bk0amrghgjrkyn1mm4ac23swwbgszl1d0qyl9137qj5zvv9dasp"))))
953 (build-system julia-build-system)
954 (arguments
955 `(#:phases
956 (modify-phases %standard-phases
957 (add-after 'link-depot 'skip-failing-test
958 (lambda _
959 ;; Tests with non-standard colors.
960 (substitute* "test/show.jl"
961 (("test (sprint\\(show, df, context=:color=>true)" _ test)
962 (string-append "test_nowarn " test)))
963 (substitute* "test/io.jl"
964 (("testset \\\"improved.*" all)
965 (string-append all "return\n")))
966 (substitute* "test/join.jl"
967 (("test (levels\\(outerjoin\\(B)" _ test)
968 (string-append "test_nowarn " test)))
969 #t)))))
970 (propagated-inputs
971 `(("julia-dataapi" ,julia-dataapi)
972 ("julia-invertedindices" ,julia-invertedindices)
973 ("julia-iteratorinterfaceextensions" ,julia-iteratorinterfaceextensions)
974 ("julia-missings" ,julia-missings)
975 ("julia-pooledarrays" ,julia-pooledarrays)
976 ("julia-prettytables" ,julia-prettytables)
977 ("julia-reexport" ,julia-reexport)
978 ("julia-sortingalgorithms" ,julia-sortingalgorithms)
979 ("julia-tables" ,julia-tables)
980 ("julia-tabletraits" ,julia-tabletraits)))
981 (native-inputs
982 `(("julia-categoricalarrays" ,julia-categoricalarrays)
983 ("julia-combinatorics" ,julia-combinatorics)
984 ("julia-datastructures" ,julia-datastructures)
985 ("julia-datavalues" ,julia-datavalues)
986 ("julia-offsetarrays" ,julia-offsetarrays)
987 ("julia-unitful" ,julia-unitful)))
988 (home-page "https://dataframes.juliadata.org/stable/")
989 (synopsis "In-memory tabular data")
990 (description "This package provides a set of tools for working with tabular
991 data in Julia. Its design and functionality are similar to those of Pandas from
992 Python or @code{data.frame}, @code{data.table} and @code{dplyr} from R, making
993 it a great general purpose data science tool, especially for those coming to
994 Julia from R or Python.")
995 (license license:expat)))
996
997 (define-public julia-datastructures
998 (package
999 (name "julia-datastructures")
1000 (version "0.18.9")
1001 (source
1002 (origin
1003 (method git-fetch)
1004 (uri (git-reference
1005 (url "https://github.com/JuliaCollections/DataStructures.jl")
1006 (commit (string-append "v" version))))
1007 (file-name (git-file-name name version))
1008 (sha256
1009 (base32 "0hdqp8ipsqdw5bqqkdvz4j6n67x80sj5azr9vzyxwjfsgkfbnk2l"))))
1010 (propagated-inputs
1011 `(("julia-compat" ,julia-compat)
1012 ("julia-orderedcollections" ,julia-orderedcollections)))
1013 (build-system julia-build-system)
1014 (arguments
1015 `(#:phases
1016 ,@(if (target-x86-32?)
1017 '((modify-phases %standard-phases
1018 (add-after 'unpack 'remove-failing-test-i686
1019 (lambda _
1020 ;; The evaluation returns the correct value,
1021 ;; Evaluated: "Accumulator(1 => 3, 3 => 4)"
1022 ;; but, for some reasons, is considered as failed.
1023 (substitute* "test/test_accumulator.jl"
1024 (("@test sprint\\(show,Accumulator\\(1 => 3, 3 => 4\\)\\)")
1025 "@test_broken sprint(show, Accumulator(1 => 3, 3 => 4))"))))))
1026 '(%standard-phases))))
1027 (home-page "https://github.com/JuliaCollections/DataStructures.jl")
1028 (synopsis "Julia module providing different data structures")
1029 (description "This package implements a variety of data structures,
1030 including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
1031 @code{Accumulators}, @code{LinkedLists}, @code{SortedDicts} and many others.")
1032 (license license:expat)))
1033
1034 (define-public julia-datavalueinterfaces
1035 (package
1036 (name "julia-datavalueinterfaces")
1037 (version "1.0.0")
1038 (source
1039 (origin
1040 (method git-fetch)
1041 (uri (git-reference
1042 (url "https://github.com/queryverse/DataValueInterfaces.jl")
1043 (commit (string-append "v" version))))
1044 (file-name (git-file-name name version))
1045 (sha256
1046 (base32 "0g2wj6q7jj956nx6g7dk8x7w1c4l2xcmnr1kq5x8s8fild9kslg8"))))
1047 (build-system julia-build-system)
1048 (home-page "https://github.com/queryverse/DataValueInterfaces.jl")
1049 (synopsis "Interface for DataValues.jl")
1050 (description "This package allows a few \"forward\" definitions for the
1051 @code{DataValues.jl} package that other packages can utilize for integration
1052 without having to take direct dependencies.")
1053 (license license:expat)))
1054
1055 (define-public julia-datavalues
1056 (package
1057 (name "julia-datavalues")
1058 (version "0.4.13")
1059 (source
1060 (origin
1061 (method git-fetch)
1062 (uri (git-reference
1063 (url "https://github.com/queryverse/DataValues.jl")
1064 (commit (string-append "v" version))))
1065 (file-name (git-file-name name version))
1066 (sha256
1067 (base32 "15j3hrqq6nazn533bfsvg32xznacbzsl303j1qs48av59ppnvhhv"))))
1068 (build-system julia-build-system)
1069 (arguments
1070 `(#:tests? #f ; Tests need upgrading with newer Julia version.
1071 #:phases
1072 (modify-phases %standard-phases
1073 (add-after 'link-depot 'skip-known-failing-tests
1074 (lambda _
1075 ;; See upstream report:
1076 ;; https://github.com/queryverse/DataValues.jl/issues/83
1077 (substitute* "test/array/test_reduce.jl"
1078 ((".*DataValue\\(mapreduce.*") "")
1079 ((".*DataValue\\(method\\(f.*") ""))
1080 #t)))))
1081 (propagated-inputs
1082 `(("julia-datavalueinterfaces" ,julia-datavalueinterfaces)))
1083 (home-page "https://github.com/queryverse/DataValues.jl")
1084 (synopsis "Missing values for Julia")
1085 (description "This package provides the type @code{DataValue} that is used
1086 to represent missing data.")
1087 (license license:expat)))
1088
1089 (define-public julia-deepdiffs
1090 (package
1091 (name "julia-deepdiffs")
1092 (version "1.2.0")
1093 (source
1094 (origin
1095 (method git-fetch)
1096 (uri (git-reference
1097 (url "https://github.com/ssfrr/DeepDiffs.jl")
1098 (commit (string-append "v" version))))
1099 (file-name (git-file-name name version))
1100 (sha256
1101 (base32 "1gsbxb1d67g05h5bvzz3swdfih6404jrydy724a8dvbdgqvm3sds"))))
1102 (build-system julia-build-system)
1103 (home-page "https://github.com/ssfrr/DeepDiffs.jl")
1104 (synopsis "Compute and pretty-print diffs for data structures")
1105 (description "@code{DeepDiffs.jl} provides the @code{deepdiff} function,
1106 which finds and displays differences (diffs) between Julia data structures. It
1107 supports @code{Vectors}, @code{Dicts}, and @code{String}s. When diffing
1108 dictionaries where values associated with a particular key may change,
1109 @code{deepdiff} will recurse into value to provide a more detailed diff.")
1110 (license license:expat)))
1111
1112 (define-public julia-dictionaries
1113 (package
1114 (name "julia-dictionaries")
1115 (version "0.3.10")
1116 (source
1117 (origin
1118 (method git-fetch)
1119 (uri (git-reference
1120 (url "https://github.com/andyferris/Dictionaries.jl")
1121 (commit (string-append "v" version))))
1122 (file-name (git-file-name name version))
1123 (sha256
1124 (base32 "1mm43hm8hd6sgmkkpqhbqhvap7mpkjwzmz5algxi6manp580gkr5"))))
1125 (build-system julia-build-system)
1126 (propagated-inputs
1127 `(("julia-indexing" ,julia-indexing)))
1128 (home-page "https://github.com/andyferris/Dictionaries.jl")
1129 (synopsis "Alternative interface for dictionaries in Julia")
1130 (description "This package provides an alternative interface for
1131 dictionaries in Julia, for improved productivity and performance.")
1132 (license license:expat)))
1133
1134 (define-public julia-distances
1135 (package
1136 (name "julia-distances")
1137 (version "0.10.3")
1138 (source
1139 (origin
1140 (method git-fetch)
1141 (uri (git-reference
1142 (url "https://github.com/JuliaStats/Distances.jl")
1143 (commit (string-append "v" version))))
1144 (file-name (git-file-name name version))
1145 (sha256
1146 (base32 "1yqd9wg4z15k42mrp4y14j2x0sq7yrjhm5zpqklrw6w6j1c367ig"))))
1147 (build-system julia-build-system)
1148 (arguments
1149 `(#:phases
1150 (modify-phases %standard-phases
1151 (add-after 'link-depot 'skip-flakey-tests
1152 (lambda _
1153 ;; Some combination of these tests fail nondeterministically
1154 ;; each of the times this package is built.
1155 (substitute* "test/test_dists.jl"
1156 (("test dyz ≥") "test_nowarn dyz ≥")
1157 (("test dist\\(y, x") "test_nowarn dist(y, x")
1158 (("test dist\\(z, x") "test_nowarn dist(z, x")
1159 (("test dist\\(z, y") "test_nowarn dist(z, y")))))))
1160 (propagated-inputs
1161 `(("julia-statsapi" ,julia-statsapi)))
1162 (native-inputs
1163 `(("julia-offsetarrays" ,julia-offsetarrays)
1164 ("julia-unitful" ,julia-unitful)))
1165 (home-page "https://github.com/JuliaStats/Distances.jl")
1166 (synopsis "Julia package for evaluating distances (metrics) between vectors")
1167 (description "A Julia package for evaluating distances(metrics) between
1168 vectors. This package also provides optimized functions to compute column-wise
1169 and pairwise distances, which are often substantially faster than a
1170 straightforward loop implementation.")
1171 (license license:expat)))
1172
1173 (define-public julia-docstringextensions
1174 (package
1175 (name "julia-docstringextensions")
1176 (version "0.8.5")
1177 (source
1178 (origin
1179 (method git-fetch)
1180 (uri (git-reference
1181 (url "https://github.com/JuliaDocs/DocStringExtensions.jl")
1182 (commit (string-append "v" version))))
1183 (file-name (git-file-name name version))
1184 (sha256
1185 (base32 "0fy4kfnfacyfmlly6nqxn77dk2gqw80b69zb4m1i0i39zv3cpqfb"))))
1186 (build-system julia-build-system)
1187 (arguments
1188 `(#:tests? #f)) ; Tests try to read SSL certificates.
1189 (home-page "https://juliadocs.github.io/DocStringExtensions.jl/latest/")
1190 (synopsis "Extensions for Julia's docsystem")
1191 (description "This package provides a collection of useful extensions for
1192 Julia's built-in docsystem. These are features that are not yet mature enough
1193 to be considered for inclusion in Base, or that have sufficiently niche use
1194 cases that including them with the default Julia installation is not seen as
1195 valuable enough at this time.")
1196 (license license:expat)))
1197
1198 ;; By removing all the javascript and css downloads any HTML documentation
1199 ;; produced by this package will not be very useful.
1200 (define-public julia-documenter
1201 (package
1202 (name "julia-documenter")
1203 (version "0.27.7")
1204 (source
1205 (origin
1206 (method git-fetch)
1207 (uri (git-reference
1208 (url "https://github.com/JuliaDocs/Documenter.jl")
1209 (commit (string-append "v" version))))
1210 (file-name (git-file-name name version))
1211 (sha256
1212 (base32 "00ai3c24i3fkn5plmavampcxm0ijhwk0v5cn9xwm7rvbjnnvaaam"))))
1213 (build-system julia-build-system)
1214 (arguments
1215 `(#:phases
1216 (modify-phases %standard-phases
1217 (add-after 'link-depot 'patch-source
1218 (lambda* (#:key inputs #:allow-other-keys)
1219 (substitute* "src/Deps.jl"
1220 (("pip install")
1221 (string-append (assoc-ref inputs "python")
1222 "/bin/pip install")))
1223 #t))
1224 (add-after 'link-depot 'remove-javascript-downloads
1225 (lambda _
1226 (substitute* "src/Writers/HTMLWriter.jl"
1227 (("cdnjs.cloudflare.com") "example.com"))
1228 ;; Removing the javascript downloads causes these tests fail.
1229 (substitute* "test/examples/tests.jl"
1230 ((".*Main\\.examples_html_doc.*") "")
1231 ((".*Main\\.examples_html_mathjax3_doc.*") ""))
1232 #t)))))
1233 (propagated-inputs
1234 `(("julia-ansicoloredprinters" ,julia-ansicoloredprinters)
1235 ("julia-docstringextensions" ,julia-docstringextensions)
1236 ("julia-iocapture" ,julia-iocapture)
1237 ("julia-json" ,julia-json)))
1238 (inputs
1239 `(("python" ,python-wrapper)))
1240 (native-inputs
1241 `(("git" ,git-minimal)
1242 ("julia-documentermarkdown" ,julia-documentermarkdown)
1243 ("julia-documentertools" ,julia-documentertools)))
1244 (home-page "https://juliadocs.github.io/Documenter.jl")
1245 (synopsis "Documentation generator for Julia")
1246 (description "This package provides a documentation generator for Julia.")
1247 (license license:expat)))
1248
1249 (define julia-documenter-bootstrap
1250 (package
1251 (inherit julia-documenter)
1252 (name "julia-documenter-bootstrap")
1253 (arguments
1254 (substitute-keyword-arguments (package-arguments julia-documenter)
1255 ((#:phases phases)
1256 `(modify-phases ,phases
1257 (delete 'patch-source)))
1258 ;; Not all dependencies available in bootstrap version.
1259 ((#:tests? _ #f) #f)))
1260 (inputs `())
1261 (native-inputs `())))
1262
1263 (define-public julia-documentermarkdown
1264 (package
1265 (name "julia-documentermarkdown")
1266 (version "0.2.2")
1267 (source
1268 (origin
1269 (method git-fetch)
1270 (uri (git-reference
1271 (url "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
1272 (commit (string-append "v" version))))
1273 (file-name (git-file-name name version))
1274 (sha256
1275 (base32 "0sx89hi5p2f8zi2rp5qrv06m270d90pxj5d2y5cxls1spax7wqx8"))))
1276 (build-system julia-build-system)
1277 (inputs
1278 ;; We don't want to propagate the bootstrap version.
1279 ;; Cycle with Documenter.jl in later versions.
1280 `(("julia-documenter" ,julia-documenter-bootstrap)))
1281 (home-page "https://github.com/JuliaDocs/DocumenterMarkdown.jl")
1282 (synopsis "Documenter's Markdown")
1283 (description "This package enables the Markdown / MkDocs backend of
1284 @code{Documenter.jl}.")
1285 (license license:expat)))
1286
1287 (define-public julia-documentertools
1288 (package
1289 (name "julia-documentertools")
1290 (version "0.1.13")
1291 (source
1292 (origin
1293 (method git-fetch)
1294 (uri (git-reference
1295 (url "https://github.com/JuliaDocs/DocumenterTools.jl")
1296 (commit (string-append "v" version))))
1297 (file-name (git-file-name name version))
1298 (sha256
1299 (base32 "05p57p8xlkn42m1lv9gq4hl96vp7hpj19d51p828ai1rbpcpi3a6"))))
1300 (build-system julia-build-system)
1301 (arguments
1302 `(#:tests? #f)) ; Tests require network.
1303 (inputs
1304 ;; We don't want to propagate the bootstrap version.
1305 ;; Cycle with Documenter.jl in later versions.
1306 `(("julia-documenter" ,julia-documenter-bootstrap)))
1307 (propagated-inputs
1308 `(("julia-docstringextensions" ,julia-docstringextensions)
1309 ("julia-gumbo" ,julia-gumbo)
1310 ("julia-sass" ,julia-sass)))
1311 (native-inputs
1312 `(("julia-example" ,julia-example)))
1313 (home-page "https://github.com/JuliaDocs/DocumenterTools.jl")
1314 (synopsis "Extra tools for setting up Documenter.jl")
1315 (description "This package contains utilities for setting up documentation
1316 generation with @code{Documenter.jl}.")
1317 (license license:expat)))
1318
1319 (define-public julia-diffresults
1320 (package
1321 (name "julia-diffresults")
1322 (version "1.0.3")
1323 (source
1324 (origin
1325 (method git-fetch)
1326 (uri (git-reference
1327 (url "https://github.com/JuliaDiff/DiffResults.jl")
1328 (commit (string-append "v" version))))
1329 (file-name (git-file-name name version))
1330 (sha256
1331 (base32 "1w6p3yxajvclax5b9g7cr2jmbc7lvr5nk4gq0aljxdycdq1d2y3v"))))
1332 (propagated-inputs
1333 `(("julia-staticarrays" ,julia-staticarrays)))
1334 (build-system julia-build-system)
1335 (home-page "https://github.com/JuliaDiff/DiffResults.jl")
1336 (synopsis "In-place differentiation methods of primal values at multi-order")
1337 (description "This package provides the @code{DiffResult} type, which can
1338 be passed to in-place differentiation methods instead of an output buffer.")
1339 (license license:expat)))
1340
1341 (define-public julia-diffrules
1342 (package
1343 (name "julia-diffrules")
1344 (version "1.0.2")
1345 (source
1346 (origin
1347 (method git-fetch)
1348 (uri (git-reference
1349 (url "https://github.com/JuliaDiff/DiffRules.jl")
1350 (commit (string-append "v" version))))
1351 (file-name (git-file-name name version))
1352 (sha256
1353 (base32 "0cwjvj4gma7924fm3yas0nf0jlnwwx4v7fi79ii3s290lkdldzfl"))))
1354 (propagated-inputs
1355 `(("julia-nanmath" ,julia-nanmath)
1356 ("julia-specialfunctions" ,julia-specialfunctions)))
1357 (build-system julia-build-system)
1358 (home-page "https://github.com/JuliaDiff/DiffRules.jl")
1359 (synopsis "Primitive differentiation rules")
1360 (description "This package provides primitive differentiation rules that
1361 can be composed via various formulations of the chain rule. Using
1362 @code{DiffRules}, new differentiation rules can defined, query whether or not
1363 a given rule exists, and symbolically apply rules to simple Julia expressions.")
1364 (license license:expat)))
1365
1366 (define-public julia-difftests
1367 (package
1368 (name "julia-difftests")
1369 (version "0.1.1")
1370 (source
1371 (origin
1372 (method git-fetch)
1373 (uri (git-reference
1374 (url "https://github.com/JuliaDiff/DiffTests.jl")
1375 (commit (string-append "v" version))))
1376 (file-name (git-file-name name version))
1377 (sha256
1378 (base32 "1rxpnd5zi3pxgdd38l5jm2sxc3q6p7g57fqgll2dsiin07y3my57"))))
1379 (build-system julia-build-system)
1380 (home-page "https://github.com/JuliaDiff/DiffTests.jl")
1381 (synopsis "Common test functions for differentiation tools")
1382 (description "This package contains a common suite of test functions for
1383 stressing the robustness of differentiation tools.")
1384 (license license:expat)))
1385
1386 (define-public julia-dualnumbers
1387 (package
1388 (name "julia-dualnumbers")
1389 (version "0.6.5")
1390 (source
1391 (origin
1392 (method git-fetch)
1393 (uri (git-reference
1394 (url "https://github.com/JuliaDiff/DualNumbers.jl")
1395 (commit (string-append "v" version))))
1396 (file-name (git-file-name name version))
1397 (sha256
1398 (base32 "05vr5wbzqpchnb96b3pmn67x196mbfnkv7r9bdlz3gm56if4awk5"))))
1399 (build-system julia-build-system)
1400 (arguments
1401 `(#:phases
1402 (modify-phases %standard-phases
1403 (add-after 'link-depot 'adjust-test-suite
1404 (lambda _
1405 (substitute* "test/runtests.jl"
1406 ;; Seems to not play nicely with SpecialFunctions
1407 ((".*isempty.*") "")))))))
1408 (propagated-inputs
1409 `(("julia-calculus" ,julia-calculus)
1410 ("julia-nanmath" ,julia-nanmath)
1411 ("julia-specialfunctions" ,julia-specialfunctions)))
1412 (home-page "https://github.com/JuliaDiff/DualNumbers.jl")
1413 (synopsis "Represent dual numbers and for perform dual algebra")
1414 (description "The @code{DualNumbers} Julia package defines the @code{Dual}
1415 type to represent dual numbers, and supports standard mathematical operations on
1416 them. Conversions and promotions are defined to allow performing operations on
1417 combinations of dual numbers with predefined Julia numeric types.")
1418 (license license:expat)))
1419
1420 (define-public julia-ellipsisnotation
1421 (package
1422 (name "julia-ellipsisnotation")
1423 (version "1.1.0")
1424 (source
1425 (origin
1426 (method git-fetch)
1427 (uri (git-reference
1428 (url "https://github.com/ChrisRackauckas/EllipsisNotation.jl")
1429 (commit (string-append "v" version))))
1430 (file-name (git-file-name name version))
1431 (sha256
1432 (base32 "0py46kxl702r8pw3v7x4cqllf7yc91b0dr7vb60xh2qi7d6y3jc7"))))
1433 (build-system julia-build-system)
1434 (arguments
1435 `(#:phases
1436 (modify-phases %standard-phases
1437 (add-after 'link-depot 'adjust-test-suite
1438 (lambda _
1439 (substitute* "test/runtests.jl"
1440 ;; Seems to not play nicely with Julia-1.6.
1441 ((".*basic.jl.*") "")))))))
1442 (propagated-inputs
1443 `(("julia-arrayinterface" ,julia-arrayinterface)))
1444 (home-page "https://github.com/ChrisRackauckas/EllipsisNotation.jl")
1445 (synopsis "Elipsis notation implementation")
1446 (description "This implements the notation @code{..} for indexing arrays.
1447 It's similar to the Python @code{...} in that it means \"all of the columns
1448 before (or after)\".")
1449 (license license:expat)))
1450
1451 (define-public julia-example
1452 (let ((commit "f968c69dea24f851d0c7e686db23fa55826b5388"))
1453 (package
1454 (name "julia-example")
1455 (version "0.5.4") ;tag not created upstream
1456 (source
1457 (origin
1458 (method git-fetch)
1459 (uri (git-reference
1460 (url "https://github.com/JuliaLang/Example.jl")
1461 (commit commit)))
1462 (file-name (git-file-name name version))
1463 (sha256
1464 (base32 "1v3z0d6gh6wfbypffy9m9rhh36px6fm5wjzq0y6rbmc95r0qpqlx"))))
1465 (build-system julia-build-system)
1466 (home-page "https://github.com/JuliaLang/Example.jl")
1467 (synopsis "Module providing examples")
1468 (description "This package provides various examples.")
1469 (license license:expat))))
1470
1471 ;; ExproniconLite.jl is autogenerated from this package.
1472 (define-public julia-expronicon
1473 (package
1474 (name "julia-expronicon")
1475 (version "0.6.10")
1476 (source
1477 (origin
1478 (method git-fetch)
1479 (uri (git-reference
1480 (url "https://github.com/Roger-luo/Expronicon.jl")
1481 (commit (string-append "v" version))))
1482 (file-name (git-file-name name version))
1483 (sha256
1484 (base32 "0h8aaynqlxrkn8575k5vqmhzil4vvxchhf0bcxa6zwawp558gj2y"))))
1485 (build-system julia-build-system)
1486 (arguments
1487 `(#:phases
1488 (modify-phases %standard-phases
1489 (add-after 'link-depot 'skip-network-tests
1490 (lambda _
1491 (substitute* "test/runtests.jl"
1492 ;; This test tries to access the Julia package registry.
1493 ((".*expand\\.jl.*") "")))))))
1494 (propagated-inputs
1495 `(("julia-mlstyle" ,julia-mlstyle)))
1496 (native-inputs
1497 `(("julia-documenter" ,julia-documenter)))
1498 (home-page "https://expronicon.rogerluo.dev/dev/")
1499 (synopsis "Collective tools for metaprogramming on Julia Expr")
1500 (description "This package provides a collection of tools for
1501 metaprogramming on Julia Expr, the meta programming standard library for
1502 @code{MLStyle}.")
1503 (license license:expat)))
1504
1505 (define-public julia-exprtools
1506 (package
1507 (name "julia-exprtools")
1508 (version "0.1.6")
1509 (source
1510 (origin
1511 (method git-fetch)
1512 (uri (git-reference
1513 (url "https://github.com/invenia/ExprTools.jl")
1514 (commit (string-append "v" version))))
1515 (file-name (git-file-name name version))
1516 (sha256
1517 (base32 "058ax5d96jpym5w3g37ah1c4xq3fskwpjdhchakzax15vqzy7ab4"))))
1518 (build-system julia-build-system)
1519 (home-page "https://github.com/invenia/ExprTools.jl")
1520 (synopsis "Light-weight expression manipulation tools")
1521 (description "@code{ExprTools} provides tooling for working with Julia
1522 expressions during metaprogramming. This package aims to provide light-weight
1523 performant tooling without requiring additional package dependencies.")
1524 (license license:expat)))
1525
1526 (define-public julia-ffmpeg
1527 (package
1528 (name "julia-ffmpeg")
1529 (version "0.4.1")
1530 (source
1531 (origin
1532 (method git-fetch)
1533 (uri (git-reference
1534 (url "https://github.com/JuliaIO/FFMPEG.jl")
1535 (commit (string-append "v" version))))
1536 (file-name (git-file-name name version))
1537 (sha256
1538 (base32 "1ldxbp0kq3ip67x7sp82dz56aq4p5i0chspbgx2zgskr6jcbjj1b"))))
1539 (build-system julia-build-system)
1540 (propagated-inputs
1541 `(("julia-ffmpeg-jll" ,julia-ffmpeg-jll)
1542 ("julia-x264-jll" ,julia-x264-jll)))
1543 (home-page "https://github.com/JuliaIO/FFMPEG.jl")
1544 (synopsis "Julia Package for ffmpeg")
1545 (description "This package is made to be included into packages that just
1546 need the ffmpeg binaries + executables, and don't want the overhead of
1547 @code{VideoIO.jl}.")
1548 (license license:expat)))
1549
1550 (define-public julia-fileio
1551 (package
1552 (name "julia-fileio")
1553 (version "1.9.1")
1554 (source
1555 (origin
1556 (method git-fetch)
1557 (uri (git-reference
1558 (url "https://github.com/JuliaIO/FileIO.jl")
1559 (commit (string-append "v" version))))
1560 (file-name (git-file-name name version))
1561 (sha256
1562 (base32 "1b18x43i737g5q41n9818xbnc2pgd98q1m6yw3h29yri0clg4gfx"))))
1563 (build-system julia-build-system)
1564 (arguments
1565 `(#:phases
1566 (modify-phases %standard-phases
1567 (delete 'reset-gzip-timestamps)
1568 (add-after 'link-depot 'skip-network-tests
1569 (lambda _
1570 ;; These tests try to download audio/video files.
1571 (substitute* "test/query.jl"
1572 (("testset.*(MP4|OGG|MATROSKA).*" all)
1573 (string-append all "return\n")))
1574 (substitute* "test/loadsave.jl"
1575 (("testset.*CSVFiles.*" all)
1576 (string-append all "return\n")))
1577 ;; This test tries to download a Julia package.
1578 (substitute* "test/error_handling.jl"
1579 (("testset.*Not installed.*" all)
1580 (string-append all "return\n")))
1581 ;; This test tries to write to the store.
1582 ;; (Error says can't find User 0)
1583 (substitute* "test/runtests.jl"
1584 ((".*test_mimesave.*") "")))))))
1585 (propagated-inputs
1586 `(("julia-requires" ,julia-requires)))
1587 (native-inputs
1588 `(("julia-colortypes" ,julia-colortypes)
1589 ("julia-filepathsbase" ,julia-filepathsbase)
1590 ("julia-http" ,julia-http)))
1591 (home-page "https://github.com/JuliaIO/FileIO.jl")
1592 (synopsis "Main Package for IO, loading all different kind of files")
1593 (description "@code{FileIO} aims to provide a common framework for detecting
1594 file formats and dispatching to appropriate readers/writers. The two core
1595 functions in this package are called @code{load} and @code{save}, and offer
1596 high-level support for formatted files (in contrast with Julia's low-level
1597 @code{read} and @code{write}).")
1598 (license license:expat)))
1599
1600 (define-public julia-filepathsbase
1601 (package
1602 (name "julia-filepathsbase")
1603 (version "0.9.10")
1604 (source
1605 (origin
1606 (method git-fetch)
1607 (uri (git-reference
1608 (url "https://github.com/rofinn/FilePathsBase.jl")
1609 (commit (string-append "v" version))))
1610 (file-name (git-file-name name version))
1611 (sha256
1612 (base32 "136wm4ik6isrdanmpi4gdr1qw0qhr15i925qzjxbawk5hnyzwng9"))))
1613 (build-system julia-build-system)
1614 (arguments
1615 `(#:tests? #f)) ; Cycle with JLSO.jl
1616 (home-page "https://github.com/rofinn/FilePathsBase.jl")
1617 (synopsis "Filesystem path types in Julia")
1618 (description "@code{FilePathsBase.jl} provides a type based approach to
1619 working with filesystem paths in Julia.")
1620 (license license:expat)))
1621
1622 (define-public julia-fillarrays
1623 (package
1624 (name "julia-fillarrays")
1625 (version "0.12.6")
1626 (source
1627 (origin
1628 (method git-fetch)
1629 (uri (git-reference
1630 (url "https://github.com/JuliaArrays/FillArrays.jl")
1631 (commit (string-append "v" version))))
1632 (file-name (git-file-name name version))
1633 (sha256
1634 (base32 "1sx96pzrgyh8k7x2w8vmyi6cazlmp7rg1n7wbl47qfzqjggka6kz"))))
1635 (build-system julia-build-system)
1636 (inputs ;required by tests
1637 `(("julia-staticarrays" ,julia-staticarrays)))
1638 (home-page "https://github.com/JuliaArrays/FillArrays.jl")
1639 (synopsis "Lazy matrix representation")
1640 (description "This package lazily represents matrices filled with
1641 a single entry, as well as identity matrices. This package exports the
1642 following types: @code{Eye}, @code{Fill}, @code{Ones}, @code{Zeros},
1643 @code{Trues} and @code{Falses}.")
1644 (license license:expat)))
1645
1646 (define-public julia-finitediff
1647 (package
1648 (name "julia-finitediff")
1649 (version "2.8.1")
1650 (source
1651 (origin
1652 (method git-fetch)
1653 (uri (git-reference
1654 (url "https://github.com/JuliaDiff/FiniteDiff.jl")
1655 (commit (string-append "v" version))))
1656 (file-name (git-file-name name version))
1657 (sha256
1658 (base32 "105f6r0hq97n9mxf1nacmz94dpca66vzqj5p3zh4h0brshmggqnq"))))
1659 (build-system julia-build-system)
1660 (arguments
1661 `(#:phases
1662 (modify-phases %standard-phases
1663 (add-before 'check 'pre-check
1664 (lambda _
1665 ;; We don't want to run all the tests; the Downstream tests
1666 ;; try to download the package registry.
1667 (setenv "GROUP" "Core")
1668 #t)))))
1669 (propagated-inputs
1670 `(("julia-arrayinterface" ,julia-arrayinterface)
1671 ("julia-requires" ,julia-requires)
1672 ("julia-staticarrays" ,julia-staticarrays)))
1673 (native-inputs
1674 `(("julia-bandedmatrices" ,julia-bandedmatrices)
1675 ("julia-blockbandedmatrices" ,julia-blockbandedmatrices)
1676 ("julia-safetestsets" ,julia-safetestsets)))
1677 (home-page "https://github.com/JuliaDiff/FiniteDiff.jl")
1678 (synopsis "Calculations of gradients, Jacobians, and Hessians")
1679 (description "This package is for calculating derivatives, gradients,
1680 Jacobians, Hessians, etc. numerically. This library is for maximizing speed
1681 while giving a usable interface to end users in a way that specializes on array
1682 types and sparsity.")
1683 (license license:expat)))
1684
1685 (define-public julia-finitedifferences
1686 (package
1687 (name "julia-finitedifferences")
1688 (version "0.12.17")
1689 (source
1690 (origin
1691 (method git-fetch)
1692 (uri (git-reference
1693 (url "https://github.com/JuliaDiff/FiniteDifferences.jl")
1694 (commit (string-append "v" version))))
1695 (file-name (git-file-name name version))
1696 (sha256
1697 (base32 "09nsf9cgk49yrvprflnhd9h5rrgs280rgj8sad3csghxdx6jqk5c"))))
1698 (build-system julia-build-system)
1699 (arguments
1700 `(#:phases
1701 ,@(if (target-x86-32?)
1702 '((modify-phases %standard-phases
1703 (add-after 'unpack 'remove-failing-test-i686
1704 (lambda _
1705 ;; Machine Precision incorrectly handled
1706 (substitute* "test/methods.jl"
1707 (("@test central_fdm\\(15, 5, adapt=2\\)\\(exp, 1.0\\)")
1708 "@test_broken central_fdm(15, 5, adapt=2)(exp, 1.0)"))))))
1709 '(%standard-phases))))
1710 (inputs
1711 `(("julia-benchmarktools" ,julia-benchmarktools)))
1712 (propagated-inputs
1713 `(("julia-chainrulescore" ,julia-chainrulescore)
1714 ("julia-richardson" ,julia-richardson)
1715 ("julia-staticarrays" ,julia-staticarrays)))
1716 (home-page "https://github.com/JuliaDiff/FiniteDifferences.jl")
1717 (synopsis "Estimates derivatives with finite differences")
1718 (description "This package calculates approximate derivatives numerically
1719 using finite difference.")
1720 (license license:expat)))
1721
1722 (define-public julia-fixedpointnumbers
1723 (package
1724 (name "julia-fixedpointnumbers")
1725 (version "0.8.4")
1726 (source
1727 (origin
1728 (method git-fetch)
1729 (uri (git-reference
1730 (url "https://github.com/JuliaMath/FixedPointNumbers.jl")
1731 (commit (string-append "v" version))))
1732 (file-name (git-file-name name version))
1733 (sha256
1734 (base32 "0j0n40n04q9sk68wh9jq90m6c67k4ws02k41djjzkrqmpzv4rcdi"))))
1735 (build-system julia-build-system)
1736 (arguments
1737 `(#:phases
1738 (modify-phases %standard-phases
1739 (add-after 'link-depot 'disable-failing-test
1740 (lambda* (#:key outputs #:allow-other-keys)
1741 (substitute* "test/fixed.jl"
1742 ;; A deprecation warning is not thrown
1743 (("@test_logs.*:warn" all) (string-append "# " all)))
1744 #t)))))
1745 (propagated-inputs `(("julia-compat" ,julia-compat)))
1746 (home-page "https://github.com/JuliaMath/FixedPointNumbers.jl")
1747 (synopsis "Fixed point types for Julia")
1748 (description "@code{FixedPointNumbers.jl} implements fixed-point number
1749 types for Julia. A fixed-point number represents a fractional, or
1750 non-integral, number. In contrast with the more widely known floating-point
1751 numbers, with fixed-point numbers the decimal point doesn't \"float\":
1752 fixed-point numbers are effectively integers that are interpreted as being
1753 scaled by a constant factor. Consequently, they have a fixed number of
1754 digits (bits) after the decimal (radix) point.")
1755 (license license:expat)))
1756
1757 (define-public julia-formatting
1758 (package
1759 (name "julia-formatting")
1760 (version "0.4.2")
1761 (source
1762 (origin
1763 (method git-fetch)
1764 (uri (git-reference
1765 (url "https://github.com/JuliaIO/Formatting.jl")
1766 (commit (string-append "v" version))))
1767 (file-name (git-file-name name version))
1768 (sha256
1769 (base32 "0ma3q9my51rr38bb5712xkc4h3rq0wsfjb4ac6mdh9ywn8rqvrmh"))))
1770 (build-system julia-build-system)
1771 (home-page "https://github.com/JuliaIO/Formatting.jl")
1772 (synopsis "Julia package to provide Python-like formatting support")
1773 (description "This package offers Python-style general formatting and
1774 c-style numerical formatting.")
1775 (license license:expat)))
1776
1777 (define-public julia-forwarddiff
1778 (package
1779 (name "julia-forwarddiff")
1780 (version "0.10.18")
1781 (source
1782 (origin
1783 (method git-fetch)
1784 (uri (git-reference
1785 (url "https://github.com/JuliaDiff/ForwardDiff.jl")
1786 (commit (string-append "v" version))))
1787 (file-name (git-file-name name version))
1788 (sha256
1789 (base32 "1vb46x8mcn61g1l14qrk22c043khg2ml4q1ci7h4k2v34f2ak5fs"))))
1790 (build-system julia-build-system)
1791 (inputs ;required for tests
1792 `(("julia-calculus" ,julia-calculus)
1793 ("julia-difftests" ,julia-difftests)))
1794 (propagated-inputs
1795 `(("julia-commonsubexpressions" ,julia-commonsubexpressions)
1796 ("julia-diffresults" ,julia-diffresults)
1797 ("julia-diffrules" ,julia-diffrules)
1798 ("julia-nanmath" ,julia-nanmath)
1799 ("julia-specialfunctions" ,julia-specialfunctions)
1800 ("julia-staticarrays" ,julia-staticarrays)))
1801 (home-page "https://github.com/JuliaDiff/ForwardDiff.jl")
1802 (synopsis "Methods to take multidimensional derivatives")
1803 (description "This package implements methods to take derivatives,
1804 gradients, Jacobians, Hessians, and higher-order derivatives of native Julia
1805 functions (or any callable object, really) using forward mode automatic
1806 differentiation (AD).")
1807 (license license:expat)))
1808
1809 (define-public julia-functionwrappers
1810 (package
1811 (name "julia-functionwrappers")
1812 (version "1.1.2")
1813 (source
1814 (origin
1815 (method git-fetch)
1816 (uri (git-reference
1817 (url "https://github.com/yuyichao/FunctionWrappers.jl")
1818 (commit (string-append "v" version))))
1819 (file-name (git-file-name name version))
1820 (sha256
1821 (base32 "02jilpjr7px6138dx2w7ixricvfgsxqdk84d9dgviranibhnjcxa"))))
1822 (build-system julia-build-system)
1823 (arguments
1824 `(#:phases
1825 (modify-phases %standard-phases
1826 (add-after 'link-depot 'adjust-tests
1827 (lambda _
1828 (substitute* "test/runtests.jl"
1829 (("testset \\\"Abstract.*" all)
1830 (string-append all "return\n"))))))))
1831 (home-page "https://github.com/yuyichao/FunctionWrappers.jl")
1832 (synopsis "Type stable and efficient wrapper of arbitrary functions")
1833 (description "This package provides a type stable and efficient wrapper of
1834 arbitrary functions.")
1835 (license license:expat)))
1836
1837 (define-public julia-functors
1838 (package
1839 (name "julia-functors")
1840 (version "0.2.7")
1841 (source
1842 (origin
1843 (method git-fetch)
1844 (uri (git-reference
1845 (url "https://github.com/FluxML/Functors.jl")
1846 (commit (string-append "v" version))))
1847 (file-name (git-file-name name version))
1848 (sha256
1849 (base32 "03ry1wn1y2jssq65l29bi6q4ki041aa6gl1nd2w6cgl00k2mrxf3"))))
1850 (build-system julia-build-system)
1851 (home-page "https://fluxml.ai/Functors.jl/stable/")
1852 (synopsis "Design pattern for structures as in machine learning")
1853 (description "This package provides tools to express a design pattern for
1854 dealing with large/ nested structures, as in machine learning and
1855 optimisation. For large machine learning models it can be cumbersome or
1856 inefficient to work with parameters as one big, flat vector, and structs help
1857 in managing complexity; but it is also desirable to easily operate over all
1858 parameters at once, e.g. for changing precision or applying an optimiser
1859 update step.")
1860 (license license:expat)))
1861
1862 (define-public julia-fuzzycompletions
1863 (package
1864 (name "julia-fuzzycompletions")
1865 (version "0.4.1")
1866 (source
1867 (origin
1868 (method git-fetch)
1869 (uri (git-reference
1870 (url "https://github.com/JunoLab/FuzzyCompletions.jl")
1871 (commit (string-append "v" version))))
1872 (file-name (git-file-name name version))
1873 (sha256
1874 (base32 "07sv88c472n6w4x7diy952igbcfm1s104ysnnvprld83312siw06"))))
1875 (build-system julia-build-system)
1876 (arguments
1877 `(#:phases
1878 (modify-phases %standard-phases
1879 (add-after 'link-depot 'skip-failing-test
1880 (lambda _
1881 (substitute* "test/runtests.jl"
1882 ((".*RPLE.*") "")))))))
1883 (home-page "https://github.com/JunoLab/FuzzyCompletions.jl")
1884 (synopsis "Fuzzy completion provider for Julia")
1885 (description
1886 "FuzzyCompletions provides fuzzy completions for a Julia runtime session.")
1887 (license license:expat)))
1888
1889 (define-public julia-genericlinearalgebra
1890 (package
1891 (name "julia-genericlinearalgebra")
1892 (version "0.2.5")
1893 (source
1894 (origin
1895 (method git-fetch)
1896 (uri (git-reference
1897 (url "https://github.com/JuliaLinearAlgebra/GenericLinearAlgebra.jl")
1898 (commit (string-append "v" version))))
1899 (file-name (git-file-name name version))
1900 (sha256
1901 (base32 "0ndwypa397z3pwzdgc3s9plaqlqf63g3d4px5pvym5psgr6lnm3l"))))
1902 (build-system julia-build-system)
1903 (arguments
1904 `(#:phases
1905 (modify-phases %standard-phases
1906 (add-after 'link-depot 'adjust-test-suite
1907 (lambda _
1908 (substitute* "test/runtests.jl"
1909 ((".*lapack.*") "")))))))
1910 (native-inputs
1911 `(("julia-quaternions" ,julia-quaternions)))
1912 (home-page "https://github.com/JuliaLinearAlgebra/GenericLinearAlgebra.jl")
1913 (synopsis "Generic numerical linear algebra")
1914 (description "The purpose of this package is partly to extend linear algebra
1915 functionality in base to cover generic element types, e.g. @code{BigFloat} and
1916 @code{Quaternion}, and partly to be a place to experiment with fast linear
1917 algebra routines written in Julia (except for optimized BLAS).")
1918 (license license:expat)))
1919
1920 (define-public julia-genericschur
1921 (package
1922 (name "julia-genericschur")
1923 (version "0.5.1")
1924 (source
1925 (origin
1926 (method git-fetch)
1927 (uri (git-reference
1928 (url "https://github.com/RalphAS/GenericSchur.jl")
1929 (commit (string-append "v" version))))
1930 (file-name (git-file-name name version))
1931 (sha256
1932 (base32 "12x6lxzxm91y3k6s9dam46dq5hrby5sr0gy0fdfnp0xhjzdy2j0d"))))
1933 (build-system julia-build-system)
1934 (arguments
1935 `(#:phases
1936 (modify-phases %standard-phases
1937 (add-after 'link-depot 'adjust-test-suite
1938 (lambda _
1939 (substitute* "test/complex.jl"
1940 ;; expected Array{Int32,1}, got a value of type Array{Int64,1}
1941 (("A = _example") "#A = _example")
1942 (("schurtest\\(A,20\\)") ""))
1943 (substitute* "test/runtests.jl"
1944 ;; Test errors relating to liblapack.so
1945 ((".*complex\\.jl.*") "")
1946 ((".*real\\.jl.*") "")
1947 ;; GenericSVD is deprecated upstream
1948 ((".*gordschur\\.jl.*") "")))))))
1949 (home-page "https://github.com/RalphAS/GenericSchur.jl")
1950 (synopsis "Schur decomposition of matrices with generic element types")
1951 (description "The Schur decomposition is the workhorse for eigensystem
1952 analysis of dense matrices. The diagonal eigen-decomposition of normal
1953 (especially Hermitian) matrices is an important special case, but for non-normal
1954 matrices the Schur form is often more useful.")
1955 (license license:expat)))
1956
1957 (define-public julia-geometrybasics
1958 (package
1959 (name "julia-geometrybasics")
1960 (version "0.4.1")
1961 (source
1962 (origin
1963 (method git-fetch)
1964 (uri (git-reference
1965 (url "https://github.com/JuliaGeometry/GeometryBasics.jl")
1966 (commit (string-append "v" version))))
1967 (file-name (git-file-name name version))
1968 (sha256
1969 (base32 "057j3hjpli3q5b98cqkpi4p10x2k9pyksrz62hjmv1kb5qzdvhsj"))))
1970 (build-system julia-build-system)
1971 (arguments
1972 `(#:phases
1973 (modify-phases %standard-phases
1974 (add-after 'link-depot 'remove-earcut
1975 (lambda _
1976 (substitute* '("Project.toml"
1977 "src/GeometryBasics.jl")
1978 ((".*EarCut.*") ""))
1979 #t))
1980 (add-after 'link-depot 'skip-incompatible-test
1981 (lambda _
1982 (substitute* "test/runtests.jl"
1983 (("@testset.*MetaT and heterogeneous data.*" all)
1984 (string-append all "return\n")))
1985 #t)))))
1986 (propagated-inputs
1987 `(("julia-itertools" ,julia-itertools)
1988 ("julia-staticarrays" ,julia-staticarrays)
1989 ("julia-structarrays" ,julia-structarrays)
1990 ("julia-tables" ,julia-tables)))
1991 (native-inputs
1992 `(("julia-offsetarrays" ,julia-offsetarrays)))
1993 (home-page "https://github.com/JuliaGeometry/GeometryBasics.jl")
1994 (synopsis "Basic Geometry Types")
1995 (description "This package aims to offer a standard set of Geometry types,
1996 which easily work with metadata, query frameworks on geometries and different
1997 memory layouts. The aim is to create a solid basis for Graphics/Plotting,
1998 finite elements analysis, Geo applications, and general geometry manipulations
1999 - while offering a Julian API, that still allows performant C-interop.")
2000 (license license:expat)))
2001
2002 (define-public julia-gr
2003 (package
2004 (name "julia-gr")
2005 (version "0.58.1")
2006 (source
2007 (origin
2008 (method git-fetch)
2009 (uri (git-reference
2010 (url "https://github.com/jheinen/GR.jl")
2011 (commit (string-append "v" version))))
2012 (file-name (git-file-name name version))
2013 (sha256
2014 (base32 "18zxa1w2wmrf44c5l10qbh99zjdp7h94gxlymh47cf5kj5fc4xmx"))))
2015 (build-system julia-build-system)
2016 (propagated-inputs
2017 `(("julia-gr-jll" ,julia-gr-jll)))
2018 (home-page "https://github.com/jheinen/GR.jl")
2019 (synopsis "Plotting for Julia based on GR")
2020 (description "This module provides a Julia interface to GR, a framework for
2021 visualisation applications.")
2022 (license license:expat)))
2023
2024 (define-public julia-graphics
2025 (package
2026 (name "julia-graphics")
2027 (version "1.1.0")
2028 (source
2029 (origin
2030 (method git-fetch)
2031 (uri (git-reference
2032 (url "https://github.com/JuliaGraphics/Graphics.jl")
2033 (commit (string-append "v" version))))
2034 (file-name (git-file-name name version))
2035 (sha256
2036 (base32 "10h1s09v7qkvrjr6l678zamb1p248n8jv4rrwkf8g7d2bpfz9amn"))))
2037 (build-system julia-build-system)
2038 (propagated-inputs
2039 `(("julia-colors" ,julia-colors)
2040 ("julia-nanmath" ,julia-nanmath)))
2041 (home-page "https://github.com/JuliaGraphics/Graphics.jl")
2042 (synopsis "Base graphics in Julia")
2043 (description "@code{Graphics.jl} is an abstraction layer for graphical
2044 operations in Julia.")
2045 (license license:expat)))
2046
2047 (define-public julia-gumbo
2048 (package
2049 (name "julia-gumbo")
2050 (version "0.8.0")
2051 (source
2052 (origin
2053 (method git-fetch)
2054 (uri (git-reference
2055 (url "https://github.com/JuliaWeb/Gumbo.jl")
2056 (commit (string-append "v" version))))
2057 (file-name (git-file-name name version))
2058 (sha256
2059 (base32 "1g22dv3v7caakspv3pdahnqn937fzzsg9y87rj72hid9g8lxl1gm"))))
2060 (build-system julia-build-system)
2061 (propagated-inputs
2062 `(("julia-abstracttrees" ,julia-abstracttrees)
2063 ("julia-gumbo-jll" ,julia-gumbo-jll)))
2064 (home-page "https://github.com/JuliaWeb/Gumbo.jl")
2065 (synopsis "Julia wrapper around Google's gumbo C library for parsing HTML")
2066 (description "@code{Gumbo.jl} is a Julia wrapper around Google's gumbo
2067 library for parsing HTML.")
2068 (license license:expat)))
2069
2070 (define-public julia-http
2071 (package
2072 (name "julia-http")
2073 (version "0.9.12")
2074 (source
2075 (origin
2076 (method git-fetch)
2077 (uri (git-reference
2078 (url "https://github.com/JuliaWeb/HTTP.jl")
2079 (commit (string-append "v" version))))
2080 (file-name (git-file-name name version))
2081 (sha256
2082 (base32 "1jsyk3mhnwj4h19cxclx26igdqdrw51fd3k1hgav0nm67dy4cxyk"))))
2083 (build-system julia-build-system)
2084 (arguments
2085 `(#:phases
2086 (modify-phases %standard-phases
2087 (add-before 'install 'disable-network-tests
2088 (lambda _
2089 (substitute* "test/runtests.jl"
2090 (("\"async.jl") "# \"async.jl")
2091 (("\"client.jl") "# \"client.jl"))
2092 (substitute* "test/aws4.jl"
2093 (("@testset.*HTTP.request with AWS authentication.*" all)
2094 (string-append all "return\n")))
2095 (substitute* "test/insert_layers.jl"
2096 (("@testset.*Inserted final layer runs handler.*" all)
2097 (string-append all "return\n")))
2098 (substitute* "test/multipart.jl"
2099 (("@testset \"Setting of Content-Type.*" all)
2100 (string-append all "return\n"))
2101 (("@testset \"Deprecation of .*" all)
2102 (string-append all "return\n")))
2103 (substitute* "test/websockets.jl"
2104 (("@testset.*External Host.*" all)
2105 (string-append all "return\n")))
2106 (substitute* "test/messages.jl"
2107 (("@testset.*Read methods.*" all)
2108 (string-append all "return\n"))
2109 (("@testset.*Body - .*" all)
2110 (string-append all "return\n"))
2111 (("@testset.*Write to file.*" all)
2112 (string-append all "return\n")))
2113 #t)))))
2114 (propagated-inputs
2115 `(("julia-inifile" ,julia-inifile)
2116 ("julia-mbedtls" ,julia-mbedtls)
2117 ("julia-uris" ,julia-uris)))
2118 ;; required for tests
2119 (inputs
2120 `(("julia-json" ,julia-json)
2121 ("julia-bufferedstreams" ,julia-bufferedstreams)))
2122 (home-page "https://juliaweb.github.io/HTTP.jl/")
2123 (synopsis "HTTP support for Julia")
2124 (description "@code{HTTP.jl} is a Julia library for HTTP Messages,
2125 implementing both a client and a server.")
2126 (license license:expat)))
2127
2128 (define-public julia-identityranges
2129 (package
2130 (name "julia-identityranges")
2131 (version "0.3.1")
2132 (source
2133 (origin
2134 (method git-fetch)
2135 (uri (git-reference
2136 (url "https://github.com/JuliaArrays/IdentityRanges.jl")
2137 (commit (string-append "v" version))))
2138 (file-name (git-file-name name version))
2139 (sha256
2140 (base32 "0jvl4xn8f8k70sn473li5q62wbiycl5qi25b5k456h3a0j1lbiml"))))
2141 (build-system julia-build-system)
2142 (propagated-inputs
2143 `(("julia-offsetarrays" ,julia-offsetarrays)))
2144 (home-page "https://github.com/JuliaArrays/IdentityRanges.jl")
2145 (synopsis "Ranges that preserve indices of views")
2146 (description "@code{IdentityRanges} are Julia-language a helper type for
2147 creating \"views\" of arrays. They are a custom type of AbstractUnitRange that
2148 makes it easy to preserve the indices of array views. The key property of an
2149 @code{IdentityRange r} is that @code{r[i] == i} (hence the name of the
2150 type/package), and that they support arbitrary start/stop indices (i.e., not
2151 just starting at 1).")
2152 (license license:expat)))
2153
2154 (define-public julia-ifelse
2155 (package
2156 (name "julia-ifelse")
2157 (version "0.1.0")
2158 (source
2159 (origin
2160 (method git-fetch)
2161 (uri (git-reference
2162 (url "https://github.com/sciml/ifelse.jl")
2163 (commit (string-append "v" version))))
2164 (file-name (git-file-name name version))
2165 (sha256
2166 (base32 "1wrw842r8708fryf2ihp9mkmdrg27saa9nix2c31vs995k2fgr9w"))))
2167 (build-system julia-build-system)
2168 (home-page "https://github.com/sciml/ifelse.jl")
2169 (synopsis "Function form of the if-else conditional statement")
2170 (description "This package provides a convenient function form of the
2171 conditional ifelse. It is similar to @code{Core.ifelse} but it is extendable.")
2172 (license license:expat)))
2173
2174 (define-public julia-imageaxes
2175 (package
2176 (name "julia-imageaxes")
2177 (version "0.6.9")
2178 (source
2179 (origin
2180 (method git-fetch)
2181 (uri (git-reference
2182 (url "https://github.com/JuliaImages/ImageAxes.jl")
2183 (commit (string-append "v" version))))
2184 (file-name (git-file-name name version))
2185 (sha256
2186 (base32 "15zqxani1jjh8849s7rdps6b6prqdwv8yxx893y536vkpk7i07qd"))))
2187 (build-system julia-build-system)
2188 (propagated-inputs
2189 `(("julia-axisarrays" ,julia-axisarrays)
2190 ("julia-imagecore" ,julia-imagecore)
2191 ("julia-reexport" ,julia-reexport)
2192 ("julia-simpletraits" ,julia-simpletraits)))
2193 (native-inputs
2194 `(("julia-unitful" ,julia-unitful)))
2195 (home-page "https://github.com/JuliaImages/ImageAxes.jl")
2196 (synopsis "Julia package for giving \"meaning\" to the axes of an image")
2197 (description "This small package supports the representation of images as
2198 @code{AxisArrays} to endow the axes with \"meaning,\" and makes programming with
2199 such arrays easy via traits.")
2200 (license license:expat)))
2201
2202 (define-public julia-imagebase
2203 (package
2204 (name "julia-imagebase")
2205 (version "0.1.1")
2206 (source
2207 (origin
2208 (method git-fetch)
2209 (uri (git-reference
2210 (url "https://github.com/JuliaImages/ImageBase.jl")
2211 (commit (string-append "v" version))))
2212 (file-name (git-file-name name version))
2213 (sha256
2214 (base32 "1n63f2zs6ail9pcl7rzgv3l0z8v1idjsaza3zgvgy7iacxsdpcj2"))))
2215 (build-system julia-build-system)
2216 (arguments
2217 `(#:tests? #f)) ; Cycle with ImageMagick.jl.
2218 (propagated-inputs
2219 `(("julia-imagecore" ,julia-imagecore)
2220 ("julia-reexport" ,julia-reexport)))
2221 ;(native-inputs
2222 ; `(("julia-imagemagick" ,julia-imagemagick)
2223 ; ("julia-offsetarrays" ,julia-offsetarrays)
2224 ; ("julia-testimages" ,julia-testimages)))
2225 (home-page "https://github.com/JuliaImages/ImageBase.jl")
2226 (synopsis "Wrapper package around ImageCore")
2227 (description "This is a twin package to @code{ImageCore} with functions that
2228 are used among many of the packages in JuliaImages. The main purpose of this
2229 package is to reduce unnecessary compilation overhead from external
2230 dependencies.")
2231 (license license:expat)))
2232
2233 (define-public julia-imagecore
2234 (package
2235 (name "julia-imagecore")
2236 (version "0.9.1")
2237 (source
2238 (origin
2239 (method git-fetch)
2240 (uri (git-reference
2241 (url "https://github.com/JuliaImages/ImageCore.jl")
2242 (commit (string-append "v" version))))
2243 (file-name (git-file-name name version))
2244 (sha256
2245 (base32 "0h9m3pl3wic1jrgaqkdifz24cya5vxd3m6qdmm37pxg2y2ii2vcq"))))
2246 (build-system julia-build-system)
2247 (arguments
2248 `(#:tests? #f)) ; Cycle with ImageMagick.jl.
2249 (propagated-inputs
2250 `(("julia-abstractffts" ,julia-abstractffts)
2251 ("julia-colors" ,julia-colors)
2252 ("julia-colorvectorspace" ,julia-colorvectorspace)
2253 ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
2254 ("julia-graphics" ,julia-graphics)
2255 ("julia-mappedarrays" ,julia-mappedarrays)
2256 ("julia-mosaicviews" ,julia-mosaicviews)
2257 ("julia-offsetarrays" ,julia-offsetarrays)
2258 ("julia-paddedviews" ,julia-paddedviews)
2259 ("julia-reexport" ,julia-reexport)))
2260 ;(native-inputs
2261 ; `(("julia-aqua" ,julia-aqua)
2262 ; ("julia-colorvectorspace" ,julia-colorvectorspace)
2263 ; ("julia-documenter" ,julia-documenter)
2264 ; ("julia-fftw" ,julia-fftw)
2265 ; ("julia-imageinterminal" ,julia-imageinterminal)
2266 ; ("julia-imagemagick" ,julia-imagemagick)
2267 ; ("julia-referencetests" ,julia-referencetests)
2268 ; ("julia-statistics" ,julia-statistics)))
2269 (home-page "https://github.com/JuliaImages/ImageCore.jl")
2270 (synopsis "Julia types for representing images")
2271 (description "@code{ImageCore} is the lowest-level component of the system
2272 of packages designed to support image processing and computer vision.")
2273 (license license:expat)))
2274
2275 (define-public julia-imageinterminal
2276 (package
2277 (name "julia-imageinterminal")
2278 (version "0.4.7")
2279 (source
2280 (origin
2281 (method git-fetch)
2282 (uri (git-reference
2283 (url "https://github.com/JuliaImages/ImageInTerminal.jl")
2284 (commit (string-append "v" version))))
2285 (file-name (git-file-name name version))
2286 (sha256
2287 (base32 "0bbpzi7bv8jdiggq1wmcn67vnf96qagvwg0fk95s125wy5980xsl"))))
2288 (build-system julia-build-system)
2289 (arguments
2290 `(#:tests? #f)) ; Cycle with ReferenceTests.jl.
2291 (propagated-inputs
2292 `(("julia-crayons" ,julia-crayons)
2293 ("julia-imagebase" ,julia-imagebase)
2294 ("julia-imagecore" ,julia-imagecore)
2295 ("julia-requires" ,julia-requires)))
2296 ;(native-inputs
2297 ; `(("julia-coordinatetransformations" ,julia-coordinatetransformations)
2298 ; ("julia-imagemagick" ,julia-imagemagick)
2299 ; ("julia-imagetransformations" ,julia-imagetransformations)
2300 ; ("julia-offsetarrays" ,julia-offsetarrays)
2301 ; ("julia-referencetests" ,julia-referencetests)
2302 ; ("julia-rotations" ,julia-rotations)
2303 ; ("julia-sparsearrays" ,julia-sparsearrays)
2304 ; ("julia-testimages" ,julia-testimages)))
2305 (home-page "https://github.com/JuliaImages/ImageInTerminal.jl")
2306 (synopsis "Julia package for displaying images in the terminal")
2307 (description "@code{ImageInTerminal.jl} is a drop-in package that once
2308 imported changes a how a single @code{Colorant} and whole @code{Colorant} arrays
2309 (i.e. Images) are displayed in the interactive REPL. The displayed images will
2310 be downscaled to fit into the size of your active terminal session.")
2311 (license license:expat)))
2312
2313 (define-public julia-imagemagick
2314 (package
2315 (name "julia-imagemagick")
2316 (version "1.2.1")
2317 (source
2318 (origin
2319 (method git-fetch)
2320 (uri (git-reference
2321 (url "https://github.com/JuliaIO/ImageMagick.jl")
2322 (commit (string-append "v" version))))
2323 (file-name (git-file-name name version))
2324 (sha256
2325 (base32 "05vzv4jsj3l9pv6yrix28hlw7wnag0mqdfjwv8shn4x71hcfxl1p"))))
2326 (build-system julia-build-system)
2327 (arguments
2328 `(#:phases
2329 (modify-phases %standard-phases
2330 (add-after 'link-depot 'skip-failing-test
2331 (lambda _
2332 ;; These tests try to download from the imagemagick.org
2333 (substitute* "test/runtests.jl"
2334 ((".*readremote\\.jl.*") ""))
2335 ;; Tests with the color gray are hard.
2336 (substitute* "test/constructed_images.jl"
2337 (("test (b == aa)" _ test) (string-append "test_nowarn " test))
2338 (("test (B == map)" _ test) (string-append "test_nowarn " test)))
2339 #t)))))
2340 (propagated-inputs
2341 `(("julia-fileio" ,julia-fileio)
2342 ("julia-imagecore" ,julia-imagecore)
2343 ("julia-imagemagick-jll" ,julia-imagemagick-jll)))
2344 (native-inputs
2345 `(("julia-colors" ,julia-colors)
2346 ("julia-colorvectorspace" ,julia-colorvectorspace)
2347 ("julia-imagemetadata" ,julia-imagemetadata)
2348 ("julia-imageshow" ,julia-imageshow)
2349 ("julia-imagetransformations" ,julia-imagetransformations)
2350 ("julia-indirectarrays" ,julia-indirectarrays)
2351 ("julia-offsetarrays" ,julia-offsetarrays)
2352 ("julia-zipfile" ,julia-zipfile)))
2353 (home-page "https://github.com/JuliaIO/ImageMagick.jl")
2354 (synopsis "Thin wrapper for ImageMagick")
2355 (description "This package provides a wrapper around ImageMagick version 6.
2356 It was split off from @code{Images.jl} to make image I/O more modular.")
2357 (license license:expat)))
2358
2359 (define-public julia-imagemetadata
2360 (package
2361 (name "julia-imagemetadata")
2362 (version "0.9.6")
2363 (source
2364 (origin
2365 (method git-fetch)
2366 (uri (git-reference
2367 (url "https://github.com/JuliaImages/ImageMetadata.jl")
2368 (commit (string-append "v" version))))
2369 (file-name (git-file-name name version))
2370 (sha256
2371 (base32 "0iv154ms370xgcr56bwsjl13iwmy671cbxjl9ld5yfj85pclcwi1"))))
2372 (build-system julia-build-system)
2373 (propagated-inputs
2374 `(("julia-axisarrays" ,julia-axisarrays)
2375 ("julia-imageaxes" ,julia-imageaxes)
2376 ("julia-imagecore" ,julia-imagecore)
2377 ("julia-indirectarrays" ,julia-indirectarrays)))
2378 (native-inputs
2379 `(("julia-offsetarrays" ,julia-offsetarrays)
2380 ("julia-simpletraits" ,julia-simpletraits)
2381 ("julia-unitful" ,julia-unitful)))
2382 (home-page "https://github.com/JuliaImages/ImageMetadata.jl")
2383 (synopsis "Julia package for images having metadata")
2384 (description "@code{ImageMetadata} is a simple package providing utilities
2385 for working with images that have metadata attached. For example, you might
2386 want to associate an image with the date on which the picture was taken, or an
2387 MRI scan with patient data, or an astronomical image with sky coordinates and
2388 information about the detector used to acquire the image.")
2389 (license license:expat)))
2390
2391 (define-public julia-imageshow
2392 (package
2393 (name "julia-imageshow")
2394 (version "0.3.2")
2395 (source
2396 (origin
2397 (method git-fetch)
2398 (uri (git-reference
2399 (url "https://github.com/JuliaImages/ImageShow.jl")
2400 (commit (string-append "v" version))))
2401 (file-name (git-file-name name version))
2402 (sha256
2403 (base32 "00wq3ab8y6nyhxwc5lpz9dnslsmcr1vg3cjdkh7wb7k6a8bw98mh"))))
2404 (build-system julia-build-system)
2405 (arguments
2406 `(#:tests? #f)) ; cycle with ImageMagick.jl.
2407 (propagated-inputs
2408 `(("julia-fileio" ,julia-fileio)
2409 ("julia-imagebase" ,julia-imagebase)
2410 ("julia-imagecore" ,julia-imagecore)
2411 ("julia-offsetarrays" ,julia-offsetarrays)
2412 ("julia-stackviews" ,julia-stackviews)))
2413 ;(native-inputs
2414 ; `(("julia-imagedistances" ,julia-imagedistances)
2415 ; ("julia-imagemagick" ,julia-imagemagick)
2416 ; ("julia-suppressor" ,julia-suppressor)
2417 ; ("julia-testimages" ,julia-testimages)))
2418 (home-page "https://github.com/JuliaImages/ImageShow.jl")
2419 (synopsis
2420 "Inline graphical display of images in Julia graphical environments")
2421 (description "This package implements image @code{show} methods suitable
2422 for graphical platforms such as IJulia. It is intended to provide convenient
2423 inline presentation of greyscale or color images.")
2424 (license license:expat)))
2425
2426 (define-public julia-imagetransformations
2427 (package
2428 (name "julia-imagetransformations")
2429 (version "0.8.12")
2430 (source
2431 (origin
2432 (method git-fetch)
2433 (uri (git-reference
2434 (url "https://github.com/JuliaImages/ImageTransformations.jl")
2435 (commit (string-append "v" version))))
2436 (file-name (git-file-name name version))
2437 (sha256
2438 (base32 "0i8gw68hljshsy9wdl5mrpbb31irhmayqyglsxi7jwm88iy9pxhm"))))
2439 (build-system julia-build-system)
2440 (arguments
2441 `(#:tests? #f)) ; Cycle with ImageMagick.jl.
2442 (propagated-inputs
2443 `(("julia-axisalgorithms" ,julia-axisalgorithms)
2444 ("julia-colorvectorspace" ,julia-colorvectorspace)
2445 ("julia-coordinatetransformations" ,julia-coordinatetransformations)
2446 ("julia-identityranges" ,julia-identityranges)
2447 ("julia-imagecore" ,julia-imagecore)
2448 ("julia-interpolations" ,julia-interpolations)
2449 ("julia-offsetarrays" ,julia-offsetarrays)
2450 ("julia-rotations" ,julia-rotations)
2451 ("julia-staticarrays" ,julia-staticarrays)))
2452 ;(native-inputs
2453 ; `(("julia-imagemagick" ,julia-imagemagick)
2454 ; ("julia-referencetests" ,julia-referencetests)
2455 ; ("julia-testimages" ,julia-testimages)))
2456 (home-page "https://github.com/JuliaImages/ImageTransformations.jl")
2457 (synopsis "Geometric transformations on images for Julia")
2458 (description "This package provides support for image resizing, image
2459 rotation, and other spatial transformations of arrays.")
2460 (license license:expat)))
2461
2462 (define-public julia-indexing
2463 (package
2464 (name "julia-indexing")
2465 (version "1.1.1")
2466 (source
2467 (origin
2468 (method git-fetch)
2469 (uri (git-reference
2470 (url "https://github.com/andyferris/Indexing.jl")
2471 (commit (string-append "v" version))))
2472 (file-name (git-file-name name version))
2473 (sha256
2474 (base32 "1s7bz5aaj9sx753pcaixq83jgbk33adxgybpinjgzb9lzdv1ddgx"))))
2475 (build-system julia-build-system)
2476 (home-page "https://github.com/andyferris/Indexing.jl")
2477 (synopsis "Generalized indexing for Julia")
2478 (description "This package defines functions for getting multiple indices
2479 out of dictionaries, tuples, etc, extending this ability beyond
2480 @code{AbstractArray}.")
2481 (license license:expat)))
2482
2483 (define-public julia-indirectarrays
2484 (package
2485 (name "julia-indirectarrays")
2486 (version "0.5.1")
2487 (source
2488 (origin
2489 (method git-fetch)
2490 (uri (git-reference
2491 (url "https://github.com/JuliaArrays/IndirectArrays.jl")
2492 (commit (string-append "v" version))))
2493 (file-name (git-file-name name version))
2494 (sha256
2495 (base32 "0l0jq0jnr9z3k431ni82xycq7mqapgxrbrx4yyk6lycvi41ipm4s"))))
2496 (build-system julia-build-system)
2497 (native-inputs
2498 `(("julia-colors" ,julia-colors)
2499 ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
2500 ("julia-mappedarrays" ,julia-mappedarrays)))
2501 (home-page "https://github.com/JuliaArrays/IndirectArrays.jl")
2502 (synopsis "Julia implementation of indexed arrays")
2503 (description "An @code{IndirectArray} is one that encodes data using a
2504 combination of an @code{index} and a @code{value} table. Each element is
2505 assigned its own index, which is used to retrieve the value from the
2506 @code{value} table. Among other uses, @code{IndirectArrays} can represent
2507 indexed images, sometimes called \"colormap images\" or \"paletted images.\"")
2508 (license license:expat)))
2509
2510 (define-public julia-infinity
2511 (package
2512 (name "julia-infinity")
2513 (version "0.2.4")
2514 (source
2515 (origin
2516 (method git-fetch)
2517 (uri (git-reference
2518 (url "https://github.com/cjdoris/Infinity.jl")
2519 (commit (string-append "v" version))))
2520 (file-name (git-file-name name version))
2521 (sha256
2522 (base32 "1941lwvrdjnrynigzixxin3chpg1ba6xplvcwc89x0f6z658hwmm"))))
2523 (build-system julia-build-system)
2524 (arguments
2525 `(#:phases
2526 (modify-phases %standard-phases
2527 (add-after 'link-depot 'remove-timezones.jl
2528 (lambda _
2529 (substitute* "test/runtests.jl"
2530 (("using TimeZones.*") "")
2531 ((".*infextendedtime.*") ""))
2532 #t)))))
2533 (propagated-inputs
2534 `(("julia-requires" ,julia-requires)))
2535 (native-inputs
2536 `(("julia-compat" ,julia-compat)))
2537 (home-page "https://docs.juliahub.com/Infinity/")
2538 (synopsis "Representation of infinity in Julia")
2539 (description "This package provides representations for infinity and
2540 negative infinity in Julia.")
2541 (license license:expat)))
2542
2543 (define-public julia-inifile
2544 (package
2545 (name "julia-inifile")
2546 (version "0.5.0")
2547 (source
2548 (origin
2549 (method git-fetch)
2550 (uri (git-reference
2551 (url "https://github.com/JuliaIO/IniFile.jl")
2552 (commit "8ba59958495fa276d6489d2c3903e765d75e0bc0")))
2553 (file-name (git-file-name name version))
2554 (sha256
2555 (base32 "11h6f99jpbg729lplw841m68jprka7q3n8yw390bndlmcdsjabpd"))))
2556 (build-system julia-build-system)
2557 (home-page "https://github.com/JuliaIO/IniFile.jl")
2558 (synopsis "Reading Windows-style INI files")
2559 (description "This is a Julia package that defines an IniFile type that
2560 interfaces with @file{.ini} files.")
2561 (license license:expat)))
2562
2563 (define-public julia-interpolations
2564 (package
2565 (name "julia-interpolations")
2566 (version "0.13.3")
2567 (source
2568 (origin
2569 (method git-fetch)
2570 (uri (git-reference
2571 (url "https://github.com/JuliaMath/Interpolations.jl")
2572 (commit (string-append "v" version))))
2573 (file-name (git-file-name name version))
2574 (sha256
2575 (base32 "1236c20k388qlh7k74mhf7hkbn0vf7ss8b1rgh1a6aj0234ayfnc"))))
2576 (build-system julia-build-system)
2577 (arguments
2578 `(#:parallel-tests? #f))
2579 (propagated-inputs
2580 `(("julia-axisalgorithms" ,julia-axisalgorithms)
2581 ("julia-offsetarrays" ,julia-offsetarrays)
2582 ("julia-ratios" ,julia-ratios)
2583 ("julia-requires" ,julia-requires)
2584 ("julia-staticarrays" ,julia-staticarrays)
2585 ("julia-woodburymatrices" ,julia-woodburymatrices)))
2586 (native-inputs
2587 `(("julia-dualnumbers" ,julia-dualnumbers)
2588 ("julia-forwarddiff" ,julia-forwarddiff)
2589 ("julia-offsetarrays" ,julia-offsetarrays)
2590 ("julia-unitful" ,julia-unitful)
2591 ("julia-zygote" ,julia-zygote)))
2592 (home-page "https://github.com/JuliaMath/Interpolations.jl")
2593 (synopsis "Continuous interpolation of discrete datasets")
2594 (description "This package implements a variety of interpolation schemes for
2595 the Julia language. It has the goals of ease-of-use, broad algorithmic support,
2596 and exceptional performance.")
2597 (license license:expat)))
2598
2599 (define-public julia-intervalsets
2600 (package
2601 (name "julia-intervalsets")
2602 (version "0.5.3")
2603 (source
2604 (origin
2605 (method git-fetch)
2606 (uri (git-reference
2607 (url "https://github.com/JuliaMath/IntervalSets.jl")
2608 (commit (string-append "v" version))))
2609 (file-name (git-file-name name version))
2610 (sha256
2611 (base32 "0gsz89cd3iygbl5qr389k9vwpg7w1nk0s90g25nsmk34y9hifxag"))))
2612 (build-system julia-build-system)
2613 (propagated-inputs
2614 `(("julia-ellipsisnotation" ,julia-ellipsisnotation)))
2615 (native-inputs
2616 `(("julia-offsetarrays" ,julia-offsetarrays)))
2617 (home-page "https://github.com/JuliaMath/IntervalSets.jl")
2618 (synopsis "Interval Sets for Julia")
2619 (description "This package is intended to implement a \"minimal\" foundation
2620 for intervals upon which other packages might build. In particular, we
2621 encourage type-piracy for the reason that only one interval package can
2622 unambiguously define the @code{..} and @code{±} operators.")
2623 (license license:expat)))
2624
2625 (define-public julia-invertedindices
2626 (package
2627 (name "julia-invertedindices")
2628 (version "1.0.0")
2629 (source
2630 (origin
2631 (method git-fetch)
2632 (uri (git-reference
2633 (url "https://github.com/mbauman/InvertedIndices.jl")
2634 (commit (string-append "v" version))))
2635 (file-name (git-file-name name version))
2636 (sha256
2637 (base32 "1179z20yxnkyziip7gn26wr1g3k3ssl1ci7pig3khc900f62di46"))))
2638 (build-system julia-build-system)
2639 (native-inputs
2640 `(("julia-offsetarrays" ,julia-offsetarrays)))
2641 (home-page "https://github.com/mbauman/InvertedIndices.jl")
2642 (synopsis "Index type that allows for inverted selections")
2643 (description "This package just exports one type: the @code{InvertedIndex},
2644 or @code{Not} for short. It can wrap any supported index type and may be used
2645 as an index into any @code{AbstractArray} subtype, including OffsetArrays.")
2646 (license license:expat)))
2647
2648 (define-public julia-iocapture
2649 (package
2650 (name "julia-iocapture")
2651 (version "0.2.2")
2652 (source
2653 (origin
2654 (method git-fetch)
2655 (uri (git-reference
2656 (url "https://github.com/JuliaDocs/IOCapture.jl")
2657 (commit (string-append "v" version))))
2658 (file-name (git-file-name name version))
2659 (sha256
2660 (base32 "0v76wbvg80g9nx0rjbcna82zk61krly1y9yhyfrjv2pf7mcr4idb"))))
2661 (build-system julia-build-system)
2662 (home-page "https://github.com/JuliaDocs/IOCapture.jl")
2663 (synopsis "Capture standard output and error streams")
2664 (description "This package provides the @code{IOCapture.capture(f)}
2665 function, which captures the standard output and standard error, and returns it
2666 as a string together with the return value.")
2667 (license license:expat)))
2668
2669 (define-public julia-irtools
2670 (package
2671 (name "julia-irtools")
2672 (version "0.4.3")
2673 (source
2674 (origin
2675 (method git-fetch)
2676 (uri (git-reference
2677 (url "https://github.com/FluxML/IRTools.jl")
2678 (commit (string-append "v" version))))
2679 (file-name (git-file-name name version))
2680 (sha256
2681 (base32 "11334fcg2slpwcj0raxf457brhf7pxglgxc6cy8q58ggrpxqfqql"))))
2682 (build-system julia-build-system)
2683 (propagated-inputs
2684 `(("julia-macrotools" ,julia-macrotools)))
2685 (native-inputs
2686 `(("julia-documenter" ,julia-documenter)))
2687 (home-page "https://github.com/FluxML/IRTools.jl")
2688 (synopsis "Simple and flexible IR format")
2689 (description "This package provides a simple and flexible IR format,
2690 expressive enough to work with both lowered and typed Julia code, as well as
2691 external IRs. It can be used with Julia metaprogramming tools such as
2692 Cassette.")
2693 (license license:expat)))
2694
2695 (define-public julia-iteratorinterfaceextensions
2696 (package
2697 (name "julia-iteratorinterfaceextensions")
2698 (version "1.0.0")
2699 (source
2700 (origin
2701 (method git-fetch)
2702 (uri (git-reference
2703 (url "https://github.com/queryverse/IteratorInterfaceExtensions.jl")
2704 (commit (string-append "v" version))))
2705 (file-name (git-file-name name version))
2706 (sha256
2707 (base32 "1slpay1dhja8f9gy6z7b3psgvgcknn963dvfqqakvg1grk9ppa09"))))
2708 (build-system julia-build-system)
2709 (home-page "https://github.com/queryverse/IteratorInterfaceExtensions.jl")
2710 (synopsis "Traits for Julia iterators")
2711 (description "IteratorInterfaceExtensions defines a small number of
2712 extensions to the iterator interface.")
2713 (license license:expat)))
2714
2715 (define-public julia-itertools
2716 (package
2717 (name "julia-itertools")
2718 (version "1.3.0")
2719 (source
2720 (origin
2721 (method git-fetch)
2722 (uri (git-reference
2723 (url "https://github.com/JuliaCollections/IterTools.jl")
2724 (commit (string-append "v" version))))
2725 (file-name (git-file-name name version))
2726 (sha256
2727 (base32 "0haf974kcqj6arv4if97ahs4w3dmvslh6ab3hl57r9s41ic36xdq"))))
2728 (build-system julia-build-system)
2729 (home-page "https://github.com/JuliaCollections/IterTools.jl")
2730 (synopsis "Common functional iterator patterns")
2731 (description
2732 "Common functional iterator patterns (formerly @code{Iterators.jl}).")
2733 (license license:expat)))
2734
2735 (define-public julia-json
2736 (package
2737 (name "julia-json")
2738 (version "0.21.1")
2739 (source
2740 (origin
2741 (method git-fetch)
2742 (uri (git-reference
2743 (url "https://github.com/JuliaIO/JSON.jl")
2744 (commit (string-append "v" version))))
2745 (file-name (git-file-name name version))
2746 (sha256
2747 (base32 "1f9k613kbknmp4fgjxvjaw4d5sfbx8a5hmcszmp1w9rqfqngjx9m"))))
2748 (build-system julia-build-system)
2749 (propagated-inputs
2750 `(("julia-datastructures" ,julia-datastructures)
2751 ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
2752 ("julia-parsers" ,julia-parsers)
2753 ("julia-offsetarrays" ,julia-offsetarrays)))
2754 (home-page "https://github.com/JuliaIO/JSON.jl")
2755 (synopsis "JSON parsing and printing library for Julia")
2756 (description "@code{JSON.jl} is a pure Julia module which supports parsing
2757 and printing JSON documents.")
2758 (license license:expat)))
2759
2760 (define-public julia-json3
2761 (package
2762 (name "julia-json3")
2763 (version "1.9.0")
2764 (source
2765 (origin
2766 (method git-fetch)
2767 (uri (git-reference
2768 (url "https://github.com/quinnj/JSON3.jl")
2769 (commit (string-append "v" version))))
2770 (file-name (git-file-name name version))
2771 (sha256
2772 (base32 "11z5maz7v50wd99id8z7838higza0cllh2amkdkrlskbri3v2f17"))))
2773 (build-system julia-build-system)
2774 (propagated-inputs
2775 `(("julia-parsers" ,julia-parsers)
2776 ("julia-structtypes" ,julia-structtypes)))
2777 (home-page "https://github.com/quinnj/JSON3.jl")
2778 (synopsis "JSON package for Julia")
2779 (description "This package provides another JSON package for Julia, with a
2780 focus on speed and slick struct mapping.")
2781 (license license:expat)))
2782
2783 (define-public julia-latexstrings
2784 (package
2785 (name "julia-latexstrings")
2786 (version "1.2.1")
2787 (source
2788 (origin
2789 (method git-fetch)
2790 (uri (git-reference
2791 (url "https://github.com/stevengj/LaTeXStrings.jl")
2792 (commit (string-append "v" version))))
2793 (file-name (git-file-name name version))
2794 (sha256
2795 (base32 "117z27krcf8fydgp6mb0pgn75r4gng9qs7v90qb4bqzsry3faadp"))))
2796 (build-system julia-build-system)
2797 (native-inputs
2798 `(("julia-documenter" ,julia-documenter)))
2799 (home-page "https://github.com/stevengj/LaTeXStrings.jl")
2800 (synopsis "Input and display of LaTeX equation strings")
2801 (description "This is a small package to make it easier to type LaTeX
2802 equations in string literals in the Julia language.")
2803 (license license:expat)))
2804
2805 (define-public julia-lazyarrays
2806 (package
2807 (name "julia-lazyarrays")
2808 (version "0.22.2")
2809 (source
2810 (origin
2811 (method git-fetch)
2812 (uri (git-reference
2813 (url "https://github.com/JuliaArrays/LazyArrays.jl")
2814 (commit (string-append "v" version))))
2815 (file-name (git-file-name name version))
2816 (sha256
2817 (base32 "17rhlrmgfvdw8w62pg32ikr9j4xy2ylr7mx7ar0hnpzryv929rp5"))))
2818 (build-system julia-build-system)
2819 (arguments
2820 `(#:phases
2821 ,@(if (target-64bit?)
2822 '(%standard-phases)
2823 '((modify-phases %standard-phases
2824 (add-after 'unpack 'fix-tests-int32-i686
2825 (lambda _
2826 (substitute* "test/multests.jl"
2827 (("Int64") "Int32")))))))))
2828 (propagated-inputs
2829 `(("julia-arraylayouts" ,julia-arraylayouts)
2830 ("julia-fillarrays" ,julia-fillarrays)
2831 ("julia-macrotools" ,julia-macrotools)
2832 ("julia-matrixfactorizations" ,julia-matrixfactorizations)
2833 ("julia-staticarrays" ,julia-staticarrays)))
2834 (native-inputs
2835 `(("julia-tracker" ,julia-tracker)))
2836 (home-page "https://github.com/JuliaArrays/LazyArrays.jl")
2837 (synopsis "Lazy arrays and linear algebra")
2838 (description "This package supports lazy analogues of array operations like
2839 @code{vcat}, @code{hcat}, and multiplication. This helps with the
2840 implementation of matrix-free methods for iterative solvers.")
2841 (license license:expat)))
2842
2843 (define-public julia-logexpfunctions
2844 (package
2845 (name "julia-logexpfunctions")
2846 (version "0.2.4")
2847 (source
2848 (origin
2849 (method git-fetch)
2850 (uri (git-reference
2851 (url "https://github.com/JuliaStats/LogExpFunctions.jl")
2852 (commit (string-append "v" version))))
2853 (file-name (git-file-name name version))
2854 (sha256
2855 (base32 "0rvms3mmq8a1viqlyzdgs2ccddcy6j0c677dlb8m5nk6hkiwr16n"))))
2856 (build-system julia-build-system)
2857 (propagated-inputs
2858 `(("julia-docstringextensions" ,julia-docstringextensions)))
2859 (native-inputs
2860 `(("julia-offsetarrays" ,julia-offsetarrays)))
2861 (home-page "https://github.com/JuliaStats/LogExpFunctions.jl")
2862 (synopsis "Special functions based on @code{log} and @code{exp}")
2863 (description "Various special functions based on log and exp moved from
2864 @code{StatsFuns.jl} into a separate package, to minimize dependencies. These
2865 functions only use native Julia code, so there is no need to depend on
2866 @code{librmath} or similar libraries.")
2867 (license license:expat)))
2868
2869 (define-public julia-macrotools
2870 (package
2871 (name "julia-macrotools")
2872 (version "0.5.6")
2873 (source
2874 (origin
2875 (method git-fetch)
2876 (uri (git-reference
2877 (url "https://github.com/FluxML/MacroTools.jl")
2878 (commit (string-append "v" version))))
2879 (file-name (git-file-name name version))
2880 (sha256
2881 (base32 "0k4z2hyasd9cwxf4l61zk3w4ajs44k69wx6z1ghdn8f5p8xy217f"))))
2882 (build-system julia-build-system)
2883 (home-page "https://fluxml.ai/MacroTools.jl")
2884 (synopsis "Tools for working with Julia code and expressions")
2885 (description "This library provides tools for working with Julia code and
2886 expressions. This includes a template-matching system and code-walking tools
2887 that let you do deep transformations of code.")
2888 (license license:expat)))
2889
2890 (define-public julia-mappedarrays
2891 (package
2892 (name "julia-mappedarrays")
2893 (version "0.4.0")
2894 (source
2895 (origin
2896 (method git-fetch)
2897 (uri (git-reference
2898 (url "https://github.com/JuliaArrays/MappedArrays.jl")
2899 (commit (string-append "v" version))))
2900 (file-name (git-file-name name version))
2901 (sha256
2902 (base32 "0l5adird8m1cmnsxwhzi5hcr7q9bm1rf7a6018zc7kcn2yxdshy3"))))
2903 (build-system julia-build-system)
2904 (propagated-inputs
2905 `(("julia-fixedpointnumbers" ,julia-fixedpointnumbers)))
2906 (native-inputs
2907 `(("julia-colortypes" ,julia-colortypes)
2908 ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
2909 ("julia-offsetarrays" ,julia-offsetarrays)))
2910 (home-page "https://github.com/JuliaArrays/MappedArrays.jl")
2911 (synopsis "Lazy in-place transformations of arrays")
2912 (description "This package implements \"lazy\" in-place elementwise
2913 transformations of arrays for the Julia programming language. Explicitly, it
2914 provides a \"view\" M of an array A so that @code{M[i] = f(A[i])} for a
2915 specified (but arbitrary) function f, without ever having to compute M
2916 explicitly (in the sense of allocating storage for M). The name of the package
2917 comes from the fact that @code{M == map(f, A)}.")
2918 (license license:expat)))
2919
2920 (define-public julia-matrixfactorizations
2921 (package
2922 (name "julia-matrixfactorizations")
2923 (version "0.8.4")
2924 (source
2925 (origin
2926 (method git-fetch)
2927 (uri (git-reference
2928 (url "https://github.com/JuliaMatrices/MatrixFactorizations.jl")
2929 (commit (string-append "v" version))))
2930 (file-name (git-file-name name version))
2931 (sha256
2932 (base32 "15zvcv2l4iqmjpnqjyx2kry7a85p652nbjy9pj3wq0piksqcz4jb"))))
2933 (build-system julia-build-system)
2934 (arguments
2935 `(#:phases
2936 (modify-phases %standard-phases
2937 (add-after 'link-depot 'skip-failing-test
2938 (lambda _
2939 ;; Tests with math functions are hard.
2940 (substitute* "test/test_ul.jl"
2941 (("@test @inferred\\(logdet") "@test @test_nowarn(logdet")
2942 ;; Also skip the REPL test.
2943 (("test String") "test_nowarn String"))
2944 #t)))))
2945 (propagated-inputs
2946 `(("julia-arraylayouts" ,julia-arraylayouts)))
2947 (home-page "https://github.com/JuliaMatrices/MatrixFactorizations.jl")
2948 (synopsis "Julia package to contain non-standard matrix factorizations")
2949 (description "A Julia package to contain non-standard matrix factorizations.
2950 At the moment it implements the QL, RQ, and UL factorizations, a combined
2951 Cholesky factorization with inverse, and polar decompositions. In the future it
2952 may include other factorizations such as the LQ factorization.")
2953 (license license:expat)))
2954
2955 (define-public julia-mbedtls
2956 (package
2957 (name "julia-mbedtls")
2958 (version "1.0.3")
2959 (source
2960 (origin
2961 (method git-fetch)
2962 (uri (git-reference
2963 (url "https://github.com/JuliaLang/MbedTLS.jl")
2964 (commit (string-append "v" version))))
2965 (file-name (git-file-name name version))
2966 (sha256
2967 (base32 "0zjzf2r57l24n3k0gcqkvx3izwn5827iv9ak0lqix0aa5967wvfb"))))
2968 (build-system julia-build-system)
2969 (arguments
2970 `(#:phases
2971 (modify-phases %standard-phases
2972 (add-before 'install 'disable-network-tests
2973 ;; Tries to connect to httpbin.org
2974 (lambda _
2975 (substitute* "test/runtests.jl"
2976 (("testhost =") "return #"))
2977 #t)))))
2978 (propagated-inputs `(("julia-mbedtls-jll" ,julia-mbedtls-jll)))
2979 (home-page "https://github.com/JuliaLang/MbedTLS.jl")
2980 (synopsis "Apache's mbed TLS library wrapper")
2981 (description "@code{MbedTLS.jl} provides a wrapper around the @code{mbed
2982 TLS} and cryptography C library for Julia.")
2983 (license license:expat)))
2984
2985 (define-public julia-measurements
2986 (package
2987 (name "julia-measurements")
2988 (version "2.6.0")
2989 (source
2990 (origin
2991 (method git-fetch)
2992 (uri (git-reference
2993 (url "https://github.com/JuliaPhysics/Measurements.jl")
2994 (commit (string-append "v" version))))
2995 (file-name (git-file-name name version))
2996 (sha256
2997 (base32 "05p3f0gr4sv4maq8cix5fi8ldq0zagswqsd43xn6fhy046f936mz"))))
2998 (build-system julia-build-system)
2999 (propagated-inputs
3000 `(("julia-calculus" ,julia-calculus)
3001 ("julia-recipesbase" ,julia-recipesbase)
3002 ("julia-requires" ,julia-requires)))
3003 (native-inputs
3004 `(("julia-quadgk" ,julia-quadgk)
3005 ("julia-specialfunctions" ,julia-specialfunctions)
3006 ("julia-unitful" ,julia-unitful)))
3007 (home-page "https://juliaphysics.github.io/Measurements.jl/stable/")
3008 (synopsis "Error propagation calculator and library")
3009 (description "@code{Measurements.jl} is an error propagation calculator and
3010 library for physical measurements. It supports real and complex numbers with
3011 uncertainty, arbitrary precision calculations, operations with arrays, and
3012 numerical integration. The linear error propagation theory is employed to
3013 propagate the errors.")
3014 (license license:expat)))
3015
3016 (define-public julia-measures
3017 (package
3018 (name "julia-measures")
3019 (version "0.3.1")
3020 (source
3021 (origin
3022 (method git-fetch)
3023 (uri (git-reference
3024 (url "https://github.com/JuliaGraphics/Measures.jl")
3025 (commit (string-append "v" version))))
3026 (file-name (git-file-name name version))
3027 (sha256
3028 (base32 "0j34psrdijnqqn9zv0r2sknr1p9q0mmbjvjhmjra37bb5fh2gk8l"))))
3029 (build-system julia-build-system)
3030 (home-page "https://github.com/JuliaGraphics/Measures.jl")
3031 (synopsis "Unified measure and coordinates types")
3032 (description "This library generalizes and unifies the notion of measures
3033 used in Compose, Compose3D, and Escher. It allows building up and representing
3034 expressions involving differing types of units that are then evaluated,
3035 resolving them into absolute units.")
3036 (license license:expat)))
3037
3038 (define-public julia-media
3039 (package
3040 (name "julia-media")
3041 (version "0.5.0")
3042 (source
3043 (origin
3044 (method git-fetch)
3045 (uri (git-reference
3046 (url "https://github.com/JunoLab/Media.jl")
3047 (commit (string-append "v" version))))
3048 (file-name (git-file-name name version))
3049 (sha256
3050 (base32 "05jq9j3vs8yfj2lwz3sh1vk5rha06xdcikp9s2q3dn316vryy6di"))))
3051 (build-system julia-build-system)
3052 ;; Package without Project.toml
3053 (arguments
3054 '(#:julia-package-name "Media"
3055 #:julia-package-uuid "e89f7d12-3494-54d1-8411-f7d8b9ae1f27"))
3056 (propagated-inputs
3057 `(("julia-macrotools" ,julia-macrotools)))
3058 (home-page "https://github.com/JunoLab/Media.jl")
3059 (synopsis "Unified measure and coordinates types")
3060 (description "This package provides a display system which enables the
3061 user handle multiple input/output devices and decide what media types get
3062 displayed where.")
3063 (license license:expat)))
3064
3065 (define-public julia-missings
3066 (package
3067 (name "julia-missings")
3068 (version "1.0.2")
3069 (source
3070 (origin
3071 (method git-fetch)
3072 (uri (git-reference
3073 (url "https://github.com/JuliaData/Missings.jl")
3074 (commit (string-append "v" version))))
3075 (file-name (git-file-name name version))
3076 (sha256
3077 (base32 "1k481rm5lahmjyh34j177d4n10svgr0wm7ps5m3ar3xx6nr26ad5"))))
3078 (build-system julia-build-system)
3079 (propagated-inputs
3080 `(("julia-dataapi" ,julia-dataapi)))
3081 (home-page "https://github.com/JuliaData/Missings.jl")
3082 (synopsis "Additional missing value support for Julia")
3083 (description "This package provides additional functionality for working
3084 with @code{missing} values in Julia.")
3085 (license license:expat)))
3086
3087 (define-public julia-mlstyle
3088 (package
3089 (name "julia-mlstyle")
3090 (version "0.4.10")
3091 (source
3092 (origin
3093 (method git-fetch)
3094 (uri (git-reference
3095 (url "https://github.com/thautwarm/MLStyle.jl")
3096 (commit (string-append "v" version))))
3097 (file-name (git-file-name name version))
3098 (sha256
3099 (base32 "0h1cd7cr4c4cnpqyj3180113gdbvcc047lqphp8a8gq5smp3c059"))))
3100 (build-system julia-build-system)
3101 (native-inputs
3102 `(("julia-datastructures" ,julia-datastructures)))
3103 (home-page "https://thautwarm.github.io/MLStyle.jl/latest/")
3104 (synopsis "Julia functional programming infrastructures")
3105 (description "This package provides consistent and extensible functional
3106 programming infrastructures, and metaprogramming facilities.")
3107 (license license:expat)))
3108
3109 (define-public julia-mocking
3110 (package
3111 (name "julia-mocking")
3112 (version "0.7.3")
3113 (source
3114 (origin
3115 (method git-fetch)
3116 (uri (git-reference
3117 (url "https://github.com/invenia/Mocking.jl")
3118 (commit (string-append "v" version))))
3119 (file-name (git-file-name name version))
3120 (sha256
3121 (base32 "1cg2is83bjmrchmmxcgx57k8c9b9vlamrw38v4fdhbb6d4six5cg"))))
3122 (build-system julia-build-system)
3123 (propagated-inputs
3124 `(("julia-compat" ,julia-compat)
3125 ("julia-exprtools" ,julia-exprtools)))
3126 (home-page "https://github.com/invenia/Mocking.jl")
3127 (synopsis "Overload Julia function calls")
3128 (description "The purpose of this package is to allow Julia function calls
3129 to be temporarily overloaded for the purpose of testing.")
3130 (license license:expat)))
3131
3132 (define-public julia-mosaicviews
3133 (package
3134 (name "julia-mosaicviews")
3135 (version "0.3.3")
3136 (source
3137 (origin
3138 (method git-fetch)
3139 (uri (git-reference
3140 (url "https://github.com/JuliaArrays/MosaicViews.jl")
3141 (commit (string-append "v" version))))
3142 (file-name (git-file-name name version))
3143 (sha256
3144 (base32 "04fgxghyb7n2ji76xkb1r1fjhzsdbgmp5wsfyyn3yjcsdqbyp8pz"))))
3145 (build-system julia-build-system)
3146 (arguments
3147 `(#:tests? #f)) ; Cycle with ImageCore.jl
3148 (propagated-inputs
3149 `(("julia-mappedarrays" ,julia-mappedarrays)
3150 ("julia-paddedviews" ,julia-paddedviews)
3151 ("julia-stackviews" ,julia-stackviews)))
3152 ;(native-inputs
3153 ; `(("julia-colorvectorspace" ,julia-colorvectorspace)
3154 ; ("julia-imagecore" ,julia-imagecore)))
3155 (home-page "https://github.com/JuliaArrays/MosaicViews.jl")
3156 (synopsis
3157 "Lazily view a 3D or 4D array as an expanded 2D array as a matrix of slices")
3158 (description "When visualizing images, it is not uncommon to provide a 2D
3159 view of different image sources. For example, comparing multiple images of
3160 different sizes, getting a preview of machine learning dataset. This package
3161 aims to provide easy-to-use tools for such tasks.")
3162 (license license:expat)))
3163
3164 (define-public julia-msgpack
3165 (package
3166 (name "julia-msgpack")
3167 (version "1.1.0")
3168 (source
3169 (origin
3170 (method git-fetch)
3171 (uri (git-reference
3172 (url "https://github.com/JuliaIO/MsgPack.jl")
3173 (commit (string-append "v" version))))
3174 (file-name (git-file-name name version))
3175 (sha256
3176 (base32 "1layiqjf9si38pfdcszppgcy4zbfqgld7jlw8x645sm9b17b19fg"))))
3177 (build-system julia-build-system)
3178 (home-page "https://github.com/JuliaIO/MsgPack.jl")
3179 (synopsis "Julia MsgPack implementation")
3180 (description "@code{MsgPack.jl} is a MessagePack implementation in pure
3181 Julia, with type-driven, overloadable packing/unpacking functionality.")
3182 (license license:expat)))
3183
3184 (define-public julia-mutablearithmetics
3185 (package
3186 (name "julia-mutablearithmetics")
3187 (version "0.2.20")
3188 (source
3189 (origin
3190 (method git-fetch)
3191 (uri (git-reference
3192 (url "https://github.com/jump-dev/MutableArithmetics.jl")
3193 (commit (string-append "v" version))))
3194 (file-name (git-file-name name version))
3195 (sha256
3196 (base32 "1isyj8h4nx96cr6892d154v8pw1nhr7mjyz5bd6ffr2mkzb2bq4f"))))
3197 (build-system julia-build-system)
3198 (propagated-inputs
3199 `(("julia-offsetarrays" ,julia-offsetarrays)))
3200 (home-page "https://github.com/jump-dev/MutableArithmetics.jl")
3201 (synopsis "Interface for arithmetics on mutable types in Julia")
3202 (description "MutableArithmetics is a Julia package which allows:
3203 @itemize
3204 @item mutable types to implement mutable arithmetics
3205 @item algorithms that could exploit mutable arithmetics to exploit them while
3206 still being completely generic
3207 @end itemize")
3208 (license license:mpl2.0)))
3209
3210 (define-public julia-nanmath
3211 (package
3212 (name "julia-nanmath")
3213 (version "0.3.5")
3214 (source
3215 (origin
3216 (method git-fetch)
3217 (uri (git-reference
3218 (url "https://github.com/mlubin/NaNMath.jl")
3219 (commit (string-append "v" version))))
3220 (file-name (git-file-name name version))
3221 (sha256
3222 (base32 "1hczhz00qj99w63vp627kwk02l2sr2qmzc2rkwwkdwvzy670p25q"))))
3223 (build-system julia-build-system)
3224 (home-page "https://github.com/mlubin/NaNMath.jl")
3225 (synopsis "Implementations of basic math functions")
3226 (description "Implementations of basic math functions which return
3227 @code{NaN} instead of throwing a @code{DomainError}.")
3228 (license license:expat)))
3229
3230 (define-public julia-nlsolversbase
3231 (package
3232 (name "julia-nlsolversbase")
3233 (version "7.8.0")
3234 (source
3235 (origin
3236 (method git-fetch)
3237 (uri (git-reference
3238 (url "https://github.com/JuliaNLSolvers/NLSolversBase.jl")
3239 (commit (string-append "v" version))))
3240 (file-name (git-file-name name version))
3241 (sha256
3242 (base32 "0n8qh5a2ghjx1j70zxn0hmh8gzpa46kmjg8di879y9974bfk0f98"))))
3243 (build-system julia-build-system)
3244 (propagated-inputs
3245 `(("julia-diffresults" ,julia-diffresults)
3246 ("julia-finitediff" ,julia-finitediff)
3247 ("julia-forwarddiff" ,julia-forwarddiff)))
3248 (native-inputs
3249 `(("julia-optimtestproblems" ,julia-optimtestproblems)
3250 ("julia-recursivearraytools" ,julia-recursivearraytools)))
3251 (home-page "https://github.com/JuliaNLSolvers/NLSolversBase.jl")
3252 (synopsis "Optimization and equation solver software in JuliaNLSolvers")
3253 (description "This package aims at establishing common ground for Optim.jl,
3254 LineSearches.jl, and NLsolve.jl. The common ground is mainly the types used to
3255 hold objective related callables, information about the objectives, and an
3256 interface to interact with these types.")
3257 (license license:expat)))
3258
3259 (define-public julia-nnlib
3260 (package
3261 (name "julia-nnlib")
3262 (version "0.7.29")
3263 (source
3264 (origin
3265 (method git-fetch)
3266 (uri (git-reference
3267 (url "https://github.com/FluxML/NNlib.jl")
3268 (commit (string-append "v" version))))
3269 (file-name (git-file-name name version))
3270 (sha256
3271 (base32 "16vn5w5274kcywh1xp0zqjk5q10xrk125aznz5av6wifwrvghk8s"))))
3272 (build-system julia-build-system)
3273 (arguments
3274 `(#:phases
3275 (modify-phases %standard-phases
3276 (add-after 'link-depot 'skip-cuda-tests
3277 (lambda _
3278 (substitute* "test/runtests.jl"
3279 (("using CUDA") "")
3280 (("&& CUDA\\.functional\\(\\)") ""))
3281 (setenv "NNLIB_TEST_CUDA" "false"))))))
3282 (propagated-inputs
3283 `(("julia-adapt" ,julia-adapt)
3284 ("julia-chainrulescore" ,julia-chainrulescore)
3285 ("julia-requires" ,julia-requires)))
3286 (native-inputs
3287 `(("julia-chainrulestestutils" ,julia-chainrulestestutils)
3288 ("julia-stablerngs" ,julia-stablerngs)
3289 ("julia-zygote" ,julia-zygote)))
3290 (home-page "https://github.com/FluxML/NNlib.jl")
3291 (synopsis "Neural Network primitives with multiple backends")
3292 (description "This package will provide a library of functions useful for
3293 machine learning, such as softmax, sigmoid, convolutions and pooling. It
3294 doesn't provide any other \"high-level\" functionality like layers or AD.")
3295 (license license:expat)))
3296
3297 (define-public julia-optimtestproblems
3298 (package
3299 (name "julia-optimtestproblems")
3300 (version "2.0.2")
3301 (source
3302 (origin
3303 (method git-fetch)
3304 (uri (git-reference
3305 (url "https://github.com/JuliaNLSolvers/OptimTestProblems.jl")
3306 (commit (string-append "v" version))))
3307 (file-name (git-file-name name version))
3308 (sha256
3309 (base32 "10h47x5ws42pkqjccimaz0yxfvz41w0yazq6inamfk4lg5g2g3d9"))))
3310 (build-system julia-build-system)
3311 (arguments
3312 `(#:julia-package-name "OptimTestProblems"
3313 #:julia-package-uuid "cec144fc-5a64-5bc6-99fb-dde8f63e154c"))
3314 (home-page "https://github.com/JuliaNLSolvers/OptimTestProblems.jl")
3315 (synopsis "Collection of optimization test problems")
3316 (description "The purpose of this package is to provide test problems for
3317 JuliaNLSolvers packages.")
3318 (license license:expat)))
3319
3320 (define-public julia-orderedcollections
3321 (package
3322 (name "julia-orderedcollections")
3323 (version "1.4.1")
3324 (source
3325 (origin
3326 (method git-fetch)
3327 (uri (git-reference
3328 (url "https://github.com/JuliaCollections/OrderedCollections.jl")
3329 (commit (string-append "v" version))))
3330 (file-name (git-file-name name version))
3331 (sha256
3332 (base32 "0jaxcmvkp8zpqrz101yikdigz90s70i7in5wn8kybwzf0na3lhwf"))))
3333 (build-system julia-build-system)
3334 (home-page "https://github.com/JuliaCollections/OrderedCollections.jl")
3335 (synopsis "Associative containers that preserve insertion order")
3336 (description "This package implements @code{OrderedDicts} and
3337 @code{OrderedSets}, which are similar to containers in base Julia. However,
3338 during iteration the @code{Ordered*} containers return items in the order in
3339 which they were added to the collection.")
3340 (license license:expat)))
3341
3342 (define-public julia-offsetarrays
3343 (package
3344 (name "julia-offsetarrays")
3345 (version "1.10.3")
3346 (source
3347 (origin
3348 (method git-fetch)
3349 (uri (git-reference
3350 (url "https://github.com/JuliaArrays/OffsetArrays.jl")
3351 (commit (string-append "v" version))))
3352 (file-name (git-file-name name version))
3353 (sha256
3354 (base32 "0j5a8ar8yc0j9h87gwfyrcqm23wpyv5yv5gn8vzilpg4vr0fiasc"))))
3355 (build-system julia-build-system)
3356 (propagated-inputs
3357 `(("julia-adapt" ,julia-adapt)))
3358 ;; CatIndices depends on OffsetArrays, introducing a recursive dependency
3359 (arguments '(#:tests? #f))
3360 (home-page "https://juliaarrays.github.io/OffsetArrays.jl/stable/")
3361 (synopsis "Fortran-like arrays with arbitrary, zero or negative indices")
3362 (description "@code{OffsetArrays.jl} provides Julia users with arrays that
3363 have arbitrary indices, similar to those found in some other programming
3364 languages like Fortran.")
3365 (license license:expat)))
3366
3367 (define-public julia-paddedviews
3368 (package
3369 (name "julia-paddedviews")
3370 (version "0.5.8")
3371 (source
3372 (origin
3373 (method git-fetch)
3374 (uri (git-reference
3375 (url "https://github.com/JuliaArrays/PaddedViews.jl")
3376 (commit (string-append "v" version))))
3377 (file-name (git-file-name name version))
3378 (sha256
3379 (base32 "0ran2vj6ahlzib0g77y7g0jhavy3k9s2mqq23ybpgp9z677wf26h"))))
3380 (build-system julia-build-system)
3381 (propagated-inputs
3382 `(("julia-offsetarrays" ,julia-offsetarrays)))
3383 (native-inputs
3384 `(("julia-documenter" ,julia-documenter)))
3385 (home-page "https://github.com/JuliaArrays/PaddedViews.jl")
3386 (synopsis "Add virtual padding to the edges of an array")
3387 (description "@code{PaddedViews} provides a simple wrapper type,
3388 @code{PaddedView}, to add \"virtual\" padding to any array without copying data.
3389 Edge values not specified by the array are assigned a @code{fillvalue}.
3390 Multiple arrays may be \"promoted\" to have common indices using the
3391 @code{paddedviews} function.")
3392 (license license:expat)))
3393
3394 (define-public julia-parameters
3395 (package
3396 (name "julia-parameters")
3397 (version "0.12.2")
3398 (source
3399 (origin
3400 (method git-fetch)
3401 (uri (git-reference
3402 (url "https://github.com/mauro3/Parameters.jl")
3403 (commit (string-append "v" version))))
3404 (file-name (git-file-name name version))
3405 (sha256
3406 (base32 "0b8lawi7kcws4axfsdf023gyxca15irl648ciyi1kw3wghz3pfi2"))))
3407 (build-system julia-build-system)
3408 (propagated-inputs
3409 `(("julia-orderedcollections" ,julia-orderedcollections)
3410 ("julia-unpack" ,julia-unpack)))
3411 (home-page "https://github.com/mauro3/Parameters.jl")
3412 (synopsis "Numerical-model parameter helpers")
3413 (description "This package contains types with default field values, keyword
3414 constructors and (un-)pack macros. Keyword functions can be slow in Julia,
3415 however, the normal positional constructor is also provided and could be used in
3416 performance critical code.")
3417 (license license:expat)))
3418
3419 (define-public julia-parsers
3420 (package
3421 (name "julia-parsers")
3422 (version "1.1.0")
3423 (source
3424 (origin
3425 (method git-fetch)
3426 (uri (git-reference
3427 (url "https://github.com/JuliaData/Parsers.jl")
3428 (commit (string-append "v" version))))
3429 (file-name (git-file-name name version))
3430 (sha256
3431 (base32 "1gz3drd5334xrbx2ms33hiifkd0q1in4ywc92xvrkq3xgzdjqjdk"))))
3432 (build-system julia-build-system)
3433 (home-page "https://github.com/JuliaData/Parsers.jl")
3434 (synopsis "Fast parsing machinery for basic types in Julia")
3435 (description "@code{Parsers.jl} is a collection of type parsers and
3436 utilities for Julia.")
3437 (license license:expat)))
3438
3439 (define-public julia-pdmats
3440 (package
3441 (name "julia-pdmats")
3442 (version "0.11.1")
3443 (source
3444 (origin
3445 (method git-fetch)
3446 (uri (git-reference
3447 (url "https://github.com/JuliaStats/PDMats.jl")
3448 (commit (string-append "v" version))))
3449 (file-name (git-file-name name version))
3450 (sha256
3451 (base32 "0bc2gmpd30rkclvxyfnssjllp0pk63h0vvgr8862phm5ia83r8j0"))))
3452 (build-system julia-build-system)
3453 (home-page "https://github.com/JuliaStats/PDMats.jl")
3454 (synopsis
3455 "Uniform Interface for positive definite matrices of various structures")
3456 (description "PDMats.jl supports efficient computation on positive definite
3457 matrices of various structures. In particular, it provides uniform interfaces
3458 to use positive definite matrices of various structures for writing generic
3459 algorithms, while ensuring that the most efficient implementation is used in
3460 actual computation.")
3461 (license license:expat)))
3462
3463 (define-public julia-plotthemes
3464 (package
3465 (name "julia-plotthemes")
3466 (version "2.0.1")
3467 (source
3468 (origin
3469 (method git-fetch)
3470 (uri (git-reference
3471 (url "https://github.com/JuliaPlots/PlotThemes.jl")
3472 (commit (string-append "v" version))))
3473 (file-name (git-file-name name version))
3474 (sha256
3475 (base32 "1fd27w9z1vhz0d1bzrs5vcavpb5r5jviyh27d9c4ka37phz4xvmh"))))
3476 (build-system julia-build-system)
3477 (propagated-inputs
3478 `(("julia-plotutils" ,julia-plotutils)
3479 ("julia-requires" ,julia-requires)))
3480 (home-page "https://github.com/JuliaPlots/PlotThemes.jl")
3481 (synopsis "Themes for the Julia plotting package Plots.jl")
3482 (description
3483 "PlotThemes is a package to spice up the plots made with @code{Plots.jl}.")
3484 (license license:expat)))
3485
3486 (define-public julia-plotutils
3487 (package
3488 (name "julia-plotutils")
3489 (version "1.0.15")
3490 (source
3491 (origin
3492 (method git-fetch)
3493 (uri (git-reference
3494 (url "https://github.com/JuliaPlots/PlotUtils.jl")
3495 (commit (string-append "v" version))))
3496 (file-name (git-file-name name version))
3497 (sha256
3498 (base32 "12aw5gkkcfhpczv2w510k65w1j0hjnh825ihimi223v8plsi5105"))))
3499 (build-system julia-build-system)
3500 (propagated-inputs
3501 `(("julia-colors" ,julia-colors)
3502 ("julia-colorschemes" ,julia-colorschemes)
3503 ("julia-reexport" ,julia-reexport)))
3504 (native-inputs
3505 `(("julia-stablerngs" ,julia-stablerngs)))
3506 (home-page "https://github.com/JuliaPlots/PlotUtils.jl")
3507 (synopsis "Helper algorithms for building plotting components")
3508 (description "This package contains generic helper algorithms for building
3509 plotting components.")
3510 (license license:expat)))
3511
3512 (define-public julia-pooledarrays
3513 (package
3514 (name "julia-pooledarrays")
3515 (version "1.3.0")
3516 (source
3517 (origin
3518 (method git-fetch)
3519 (uri (git-reference
3520 (url "https://github.com/JuliaData/PooledArrays.jl")
3521 (commit (string-append "v" version))))
3522 (file-name (git-file-name name version))
3523 (sha256
3524 (base32 "0qdwvf1p5z6z0q4s4hn85ysd8wq47zy6hlzddc5ijvhk86ccqlrr"))))
3525 (build-system julia-build-system)
3526 (propagated-inputs
3527 `(("julia-dataapi" ,julia-dataapi)))
3528 (home-page "https://github.com/JuliaData/PooledArrays.jl")
3529 (synopsis "Pooled representation of arrays in Julia")
3530 (description "This package provides a pooled representation of arrays for
3531 purposes of compression when there are few unique elements.")
3532 (license license:expat)))
3533
3534 (define-public julia-positivefactorizations
3535 (package
3536 (name "julia-positivefactorizations")
3537 (version "0.2.4")
3538 (source
3539 (origin
3540 (method git-fetch)
3541 (uri (git-reference
3542 (url "https://github.com/timholy/PositiveFactorizations.jl")
3543 (commit (string-append "v" version))))
3544 (file-name (git-file-name name version))
3545 (sha256
3546 (base32 "1wxy6ak7f3hvibcgc8q88cgkf9zvi649mmjy1zlkx1qk80hgvz23"))))
3547 (build-system julia-build-system)
3548 (native-inputs
3549 `(("julia-forwarddiff" ,julia-forwarddiff)
3550 ("julia-reversediff" ,julia-reversediff)))
3551 (home-page "https://github.com/timholy/PositiveFactorizations.jl")
3552 (synopsis "Positive-definite \"approximations\" to matrices")
3553 (description "@code{PositiveFactorizations} is a package for computing a
3554 positive definite matrix decomposition (factorization) from an arbitrary
3555 symmetric input. The motivating application is optimization (Newton or
3556 quasi-Newton methods), in which the canonical search direction -H/g (H being the
3557 Hessian and g the gradient) may not be a descent direction if H is not positive
3558 definite.")
3559 (license license:expat)))
3560
3561 (define-public julia-preferences
3562 (package
3563 (name "julia-preferences")
3564 (version "1.2.2")
3565 (source
3566 (origin
3567 (method git-fetch)
3568 (uri (git-reference
3569 (url "https://github.com/JuliaPackaging/Preferences.jl")
3570 (commit (string-append "v" version))))
3571 (file-name (git-file-name name version))
3572 (sha256
3573 (base32 "1cail43iqzbi6m9v6981rhz47zf2lcvhs5ds5gdqvc9nx5frghxq"))))
3574 (build-system julia-build-system)
3575 (arguments
3576 `(#:tests? #f)) ; Tests try to mkdir /.julia
3577 (home-page "https://github.com/JuliaPackaging/Preferences.jl")
3578 (synopsis "Store configuration switches to TOML files")
3579 (description "The @code{Preferences} package provides an integrated way for
3580 packages to store configuration switches to persistent TOML files, and use those
3581 pieces of information at both run time and compile time in Julia. This enables
3582 the user to modify the behavior of a package, and have that choice reflected in
3583 everything from run time algorithm choice to code generation at compile time.")
3584 (license license:expat)))
3585
3586 (define-public julia-prettytables
3587 (package
3588 (name "julia-prettytables")
3589 (version "1.0.1")
3590 (source
3591 (origin
3592 (method git-fetch)
3593 (uri (git-reference
3594 (url "https://github.com/ronisbr/PrettyTables.jl")
3595 (commit (string-append "v" version))))
3596 (file-name (git-file-name name version))
3597 (sha256
3598 (base32 "1d1sd87kkwbar3l608h0adzws42cwdrmp1idxx7an6mfqcsdrijw"))))
3599 (build-system julia-build-system)
3600 (arguments
3601 `(#:phases
3602 (modify-phases %standard-phases
3603 (add-after 'link-depot 'skip-color-tests
3604 (lambda _
3605 (substitute* "test/text_backend.jl"
3606 ((".*colors\\.jl.*") ""))
3607 #t)))))
3608 (propagated-inputs
3609 `(("julia-crayons" ,julia-crayons)
3610 ("julia-formatting" ,julia-formatting)
3611 ("julia-reexport" ,julia-reexport)
3612 ("julia-tables" ,julia-tables)))
3613 (home-page "https://github.com/ronisbr/PrettyTables.jl")
3614 (synopsis "Print data in formatted tables")
3615 (description "This package has the purpose to print data in matrices in a
3616 human-readable format.")
3617 (license license:expat)))
3618
3619 (define-public julia-pycall
3620 (package
3621 (name "julia-pycall")
3622 (version "1.92.5")
3623 (source
3624 (origin
3625 (method git-fetch)
3626 (uri (git-reference
3627 (url "https://github.com/JuliaPy/PyCall.jl")
3628 (commit (string-append "v" version))))
3629 (file-name (git-file-name name version))
3630 (sha256
3631 (base32
3632 "1fj5d1ihnhnm0pl4hbx6hcd2bpdyhm8jiaqah2axsbd069j70saf"))))
3633 (build-system julia-build-system)
3634 (arguments
3635 `(#:imported-modules ((guix build python-build-system)
3636 ,@%julia-build-system-modules)
3637 #:modules ((guix build julia-build-system)
3638 (guix build utils)
3639 ((guix build python-build-system) #:prefix python:))
3640 #:phases
3641 (modify-phases %standard-phases
3642 (add-after 'link-depot 'remove-conda
3643 (lambda _
3644 (substitute* "Project.toml"
3645 ((".*Conda.*") ""))
3646 (substitute* (list "src/PyCall.jl"
3647 "test/runtests.jl")
3648 (("import Conda") ""))
3649 (substitute* "deps/depsutils.jl"
3650 (("Conda.PYTHONDIR") "\"/\""))
3651 #t))
3652 (add-after 'link-depot 'set-python
3653 (lambda* (#:key inputs outputs #:allow-other-keys)
3654 (let ((python (assoc-ref inputs "python")))
3655 (setenv "PYCALL_JL_RUNTIME_PYTHON"
3656 (string-append python "/bin/python3"))
3657 (with-output-to-file "deps/deps.jl"
3658 (lambda _
3659 (format #t
3660 "const python = \"~a/bin/python3\"~@
3661 const pyprogramname = \"~a/bin/python3\"~@
3662 const libpython = \"~a/lib/libpython~a.so.1.0\"~@
3663 const PYTHONHOME = \"~a\"~@
3664 const pyversion_build = v\"~a\"~@
3665 const conda = false~%"
3666 python
3667 python
3668 python
3669 (python:python-version python)
3670 python
3671 ,(package-version python))))
3672 #t)))
3673 (add-before 'check 'pre-check
3674 (lambda _
3675 (setenv "CI" "true")
3676 (setenv "JULIA_PKGEVAL" "true")
3677 #t)))))
3678 (propagated-inputs
3679 `(("julia-macrotools" ,julia-macrotools)
3680 ("julia-versionparsing" ,julia-versionparsing)))
3681 (inputs
3682 `(("python" ,python)))
3683 (native-inputs
3684 `(("python-numpy" ,python-numpy)))
3685 (home-page "https://github.com/JuliaPy/PyCall.jl")
3686 (synopsis "Call Python functions from the Julia language")
3687 (description "This package provides the ability to directly call and fully
3688 interoperate with Python from the Julia language. You can import arbitrary
3689 Python modules from Julia, call Python functions (with automatic conversion of
3690 types between Julia and Python), define Python classes from Julia methods, and
3691 share large data structures between Julia and Python without copying them.")
3692 (license license:expat)))
3693
3694 (define-public julia-pyplot
3695 (package
3696 (name "julia-pyplot")
3697 (version "2.10.0")
3698 (source
3699 (origin
3700 (method git-fetch)
3701 (uri (git-reference
3702 (url "https://github.com/JuliaPy/PyPlot.jl")
3703 (commit (string-append "v" version))))
3704 (file-name (git-file-name name version))
3705 (sha256
3706 (base32 "007zs0imfgs69f30pp2a3rc93kl0qiq7qjx6ig35z4wzkmps4skd"))))
3707 (build-system julia-build-system)
3708 (propagated-inputs
3709 `(("julia-colors" ,julia-colors)
3710 ("julia-latexstrings" ,julia-latexstrings)
3711 ("julia-pycall" ,julia-pycall)
3712 ("julia-versionparsing" ,julia-versionparsing)
3713 ;; python-matplotlib is expected to be available at runtime.
3714 ("python-matplotlib" ,python-matplotlib)))
3715 (home-page "https://github.com/JuliaPy/PyPlot.jl")
3716 (synopsis "Plotting for Julia based on matplotlib.pyplot")
3717 (description "This package provides a Julia interface to the Matplotlib
3718 plotting library from Python, and specifically to the @code{matplotlib.pyplot}
3719 module. PyPlot uses the Julia PyCall package to call Matplotlib directly from
3720 Julia with little or no overhead (arrays are passed without making a copy).")
3721 (license license:expat)))
3722
3723 (define-public julia-quadgk
3724 (package
3725 (name "julia-quadgk")
3726 (version "2.4.1")
3727 (source
3728 (origin
3729 (method git-fetch)
3730 (uri (git-reference
3731 (url "https://github.com/JuliaMath/QuadGK.jl")
3732 (commit (string-append "v" version))))
3733 (file-name (git-file-name name version))
3734 (sha256
3735 (base32 "1hy0629yai6xflgxaflk9764lzr1lzhlghimxk1aqi212q9c6n33"))))
3736 (build-system julia-build-system)
3737 (propagated-inputs
3738 `(("julia-datastructures" ,julia-datastructures)))
3739 (home-page "https://github.com/JuliaMath/QuadGK.jl")
3740 (synopsis "Adaptive 1d numerical Gauss–Kronrod integration")
3741 (description "This package provides support for one-dimensional numerical
3742 integration in Julia using adaptive Gauss-Kronrod quadrature. The code was
3743 originally part of Base Julia. It supports integration of arbitrary numeric
3744 types, including arbitrary precision (@code{BigFloat}), and even integration of
3745 arbitrary normed vector spaces (e.g. matrix-valued integrands).")
3746 (license license:expat)))
3747
3748 (define-public julia-quadmath
3749 (package
3750 (name "julia-quadmath")
3751 (version "0.5.5")
3752 (source
3753 (origin
3754 (method git-fetch)
3755 (uri (git-reference
3756 (url "https://github.com/JuliaMath/Quadmath.jl")
3757 (commit (string-append "v" version))))
3758 (file-name (git-file-name name version))
3759 (sha256
3760 (base32 "051biw4b9zni7cmh2f1yzifp1v8wazlfxrdz4p44lyd1wba6379w"))))
3761 (build-system julia-build-system)
3762 (arguments
3763 `(#:phases
3764 (modify-phases %standard-phases
3765 (add-after 'link-depot 'hardcode-libmath-location
3766 (lambda* (#:key inputs #:allow-other-keys)
3767 (let ((gcclib (assoc-ref inputs "gcc:lib")))
3768 (substitute* "src/Quadmath.jl"
3769 (("libgcc_s.so.1" lib) (string-append gcclib "/lib/" lib))
3770 (("libquadmath.so.0" lib) (string-append gcclib "/lib/" lib)))
3771 #t))))))
3772 (propagated-inputs
3773 `(("julia-requires" ,julia-requires)))
3774 (inputs
3775 `(("gcc:lib" ,gcc "lib")))
3776 (native-inputs
3777 `(("julia-specialfunctions" ,julia-specialfunctions)))
3778 (home-page "https://github.com/JuliaMath/Quadmath.jl")
3779 (synopsis "Float128 and libquadmath for the Julia language")
3780 (description "This is a Julia interface to @code{libquadmath}, providing a
3781 @code{Float128} type corresponding to the IEEE754 binary128 floating point
3782 format.")
3783 (license license:expat)))
3784
3785 (define-public julia-quaternions
3786 (package
3787 (name "julia-quaternions")
3788 (version "0.4.2")
3789 (source
3790 (origin
3791 (method git-fetch)
3792 (uri (git-reference
3793 (url "https://github.com/JuliaGeometry/Quaternions.jl")
3794 (commit (string-append "v" version))))
3795 (file-name (git-file-name name version))
3796 (sha256
3797 (base32 "1zhynyvchc50hywws2jznpkwydr3njh8cv84d2ylyabhcwwmil9s"))))
3798 (build-system julia-build-system)
3799 (propagated-inputs
3800 `(("julia-dualnumbers" ,julia-dualnumbers)))
3801 (home-page "https://github.com/JuliaGeometry/Quaternions.jl")
3802 (synopsis "Quaternion and dual-quaternion functionality")
3803 (description "Quaternions are best known for their suitability as
3804 representations of 3D rotational orientation. They can also be viewed as an
3805 extension of complex numbers.")
3806 (license license:expat)))
3807
3808 (define-public julia-queryoperators
3809 (package
3810 (name "julia-queryoperators")
3811 (version "0.9.3")
3812 (source
3813 (origin
3814 (method git-fetch)
3815 (uri (git-reference
3816 (url "https://github.com/queryverse/QueryOperators.jl")
3817 (commit (string-append "v" version))))
3818 (file-name (git-file-name name version))
3819 (sha256
3820 (base32 "06zm4cbn3x49lbpgshhdfvvmgz066qkc8q0d57igm5p8bcp6js22"))))
3821 (build-system julia-build-system)
3822 (propagated-inputs
3823 `(("julia-datastructures" ,julia-datastructures)
3824 ("julia-iteratorinterfaceextensions" ,julia-iteratorinterfaceextensions)
3825 ("julia-tableshowutils" ,julia-tableshowutils)))
3826 (home-page "https://github.com/queryverse/QueryOperators.jl")
3827 (synopsis "Query operators for Julia")
3828 (description "This package contains the underlying query operators that are
3829 exposed to users in @code{Query.jl}.")
3830 (license license:expat)))
3831
3832 (define-public julia-rangearrays
3833 (package
3834 (name "julia-rangearrays")
3835 (version "0.3.2")
3836 (source
3837 (origin
3838 (method git-fetch)
3839 (uri (git-reference
3840 (url "https://github.com/JuliaArrays/RangeArrays.jl")
3841 (commit (string-append "v" version))))
3842 (file-name (git-file-name name version))
3843 (sha256
3844 (base32 "1ihzfyfq1xihkjcvn7xmzfbn6igzidb4fkzdcxwfr5qkvi52gnmg"))))
3845 (build-system julia-build-system)
3846 (home-page "https://github.com/JuliaArrays/RangeArrays.jl")
3847 (synopsis "Array data structures with autogenerated columns")
3848 (description "The goal of RangeArrays is to provide efficient and convenient
3849 array data structures where the columns of the arrays are generated (on the fly)
3850 by Ranges.")
3851 (license license:expat)))
3852
3853 (define-public julia-ratios
3854 (package
3855 (name "julia-ratios")
3856 (version "0.4.0")
3857 (source
3858 (origin
3859 (method git-fetch)
3860 (uri (git-reference
3861 (url "https://github.com/timholy/Ratios.jl")
3862 (commit (string-append "v" version))))
3863 (file-name (git-file-name name version))
3864 (sha256
3865 (base32 "1a4fd4jq4qjply29rkwg3m1clfndjsbckj1b1dab1bc35h2c6yxh"))))
3866 (build-system julia-build-system)
3867 (home-page "https://github.com/timholy/Ratios.jl")
3868 (synopsis "Faster Rational-like types for Julia")
3869 (description "This package provides types similar to Julia's @code{Rational}
3870 type, which make some sacrifices but have better computational performance.")
3871 (license license:expat)))
3872
3873 (define-public julia-recipesbase
3874 (package
3875 (name "julia-recipesbase")
3876 (version "1.1.1")
3877 (source
3878 (origin
3879 (method git-fetch)
3880 (uri (git-reference
3881 (url "https://github.com/JuliaPlots/RecipesBase.jl")
3882 (commit (string-append "v" version))))
3883 (file-name (git-file-name name version))
3884 (sha256
3885 (base32 "1b6m5rz6wprj30rwvlxz4r1jv5gl0ay0f52kfmy2w7lqly7zhap5"))))
3886 (build-system julia-build-system)
3887 (home-page "https://github.com/JuliaPlots/RecipesBase.jl")
3888 (synopsis "Define transformation recipes on user types")
3889 (description "This package implements handy macros @code{@@recipe} and
3890 @code{@@series} which will define a custom transformation and attach attributes
3891 for user types. Its design is an attempt to simplify and generalize the summary
3892 and display of types and data from external packages. With this package it is
3893 possible to describe visualization routines that can be used as components in
3894 more complex visualizations.")
3895 (license license:expat)))
3896
3897 (define-public julia-recipespipeline
3898 (package
3899 (name "julia-recipespipeline")
3900 (version "0.3.4")
3901 (source
3902 (origin
3903 (method git-fetch)
3904 (uri (git-reference
3905 (url "https://github.com/JuliaPlots/RecipesPipeline.jl")
3906 (commit (string-append "v" version))))
3907 (file-name (git-file-name name version))
3908 (sha256
3909 (base32 "0zq4bzxvq36zr0va6iip3x97mgq5b4fwza8avszx1ryfqm3lg1f7"))))
3910 (build-system julia-build-system)
3911 (arguments
3912 `(#:tests? #f)) ; Cycle with Plots.jl.
3913 (propagated-inputs
3914 `(("julia-nanmath" ,julia-nanmath)
3915 ("julia-plotutils" ,julia-plotutils)
3916 ("julia-recipesbase" ,julia-recipesbase)))
3917 (home-page "http://juliaplots.org/RecipesPipeline.jl/dev/")
3918 (synopsis "Utilities for processing recipes")
3919 (description "This package was factored out of @code{Plots.jl} to allow any
3920 other plotting package to use the recipe pipeline. In short, the extremely
3921 lightweight @code{RecipesBase.jl} package can be depended on by any package to
3922 define \"recipes\": plot specifications of user-defined types, as well as custom
3923 plot types. @code{RecipePipeline.jl} contains the machinery to translate these
3924 recipes to full specifications for a plot.")
3925 (license license:expat)))
3926
3927 (define-public julia-recursivearraytools
3928 (package
3929 (name "julia-recursivearraytools")
3930 (version "2.16.1")
3931 (source
3932 (origin
3933 (method git-fetch)
3934 (uri (git-reference
3935 (url "https://github.com/SciML/RecursiveArrayTools.jl")
3936 (commit (string-append "v" version))))
3937 (file-name (git-file-name name version))
3938 (sha256
3939 (base32 "0vx8ndxrii53na7jsc2lki47wfpi77rn3y2r6xhiysx1qwr14msf"))))
3940 (build-system julia-build-system)
3941 (arguments
3942 `(#:tests? #f)) ; Cycle with OrdinaryDiffEq.jl.
3943 (propagated-inputs
3944 `(("julia-arrayinterface" ,julia-arrayinterface)
3945 ("julia-chainrulescore" ,julia-chainrulescore)
3946 ("julia-docstringextensions" ,julia-docstringextensions)
3947 ("julia-recipesbase" ,julia-recipesbase)
3948 ("julia-requires" ,julia-requires)
3949 ("julia-staticarrays" ,julia-staticarrays)
3950 ("julia-zygoterules" ,julia-zygoterules)))
3951 ;(native-inputs
3952 ; `(("julia-forwarddiff" ,julia-forwarddiff)
3953 ; ("julia-nlsolve" ,julia-nlsolve)
3954 ; ("julia-ordinarydiffeq" ,julia-ordinarydiffeq)
3955 ; ("julia-structarrays" ,julia-structarrays)
3956 ; ("julia-zygote" ,julia-zygote)))
3957 (home-page "https://github.com/SciML/RecursiveArrayTools.jl")
3958 (synopsis "Tools for handling objects like arrays of arrays and deeper nestings")
3959 (description "@code{RecursiveArrayTools.jl} is a set of tools for dealing with
3960 recursive arrays like arrays of arrays.")
3961 (license license:expat)))
3962
3963 (define-public julia-reexport
3964 (package
3965 (name "julia-reexport")
3966 (version "1.2.2")
3967 (source
3968 (origin
3969 (method git-fetch)
3970 (uri (git-reference
3971 (url "https://github.com/simonster/Reexport.jl")
3972 (commit (string-append "v" version))))
3973 (file-name (git-file-name name version))
3974 (sha256
3975 (base32 "0inf5q6f01ncd5c5wm8mwzv2hs627ng6xlh8dhrlflp321hbamwf"))))
3976 (build-system julia-build-system)
3977 (home-page "https://github.com/simonster/Reexport.jl")
3978 (synopsis "Re-export modules and symbols")
3979 (description "This package provides tools to re-export modules and symbols.")
3980 (license license:expat)))
3981
3982 (define-public julia-referencetests
3983 (package
3984 (name "julia-referencetests")
3985 (version "0.9.7")
3986 (source
3987 (origin
3988 (method git-fetch)
3989 (uri (git-reference
3990 (url "https://github.com/JuliaTesting/ReferenceTests.jl")
3991 (commit (string-append "v" version))))
3992 (file-name (git-file-name name version))
3993 (sha256
3994 (base32 "0mm6bjhs8a21pippww6b08b5frmnb9m6k8xrszrwq9zhc879zpc9"))))
3995 (build-system julia-build-system)
3996 (arguments
3997 `(#:tests? #f)) ; Cycle with ImageCore.jl through ImageMagick.jl.
3998 (propagated-inputs
3999 `(("julia-deepdiffs" ,julia-deepdiffs)
4000 ("julia-distances" ,julia-distances)
4001 ("julia-fileio" ,julia-fileio)
4002 ("julia-imagecore" ,julia-imagecore)
4003 ("julia-imageinterminal" ,julia-imageinterminal)))
4004 ;(native-inputs
4005 ; `(("julia-csvfiles" ,julia-csvfiles)
4006 ; ("julia-dataframes" ,julia-dataframes)
4007 ; ("julia-gr" ,julia-gr)
4008 ; ("julia-imagemagick" ,julia-imagemagick)
4009 ; ("julia-imagetransformations" ,julia-imagetransformations)
4010 ; ("julia-plots" ,julia-plots)
4011 ; ("julia-testimages" ,julia-testimages)))
4012 (home-page "https://juliatesting.github.io/ReferenceTests.jl/latest/")
4013 (synopsis "Utility package for comparing data against reference files")
4014 (description "@code{ReferenceTests.jl} is a Julia package that adds a couple
4015 of additional macros to your testing toolbox. In particular, it focuses on
4016 functionality for testing values against reference files, which in turn the
4017 package can help create and update if need be.")
4018 (license license:expat)))
4019
4020 (define-public julia-requires
4021 (package
4022 (name "julia-requires")
4023 (version "1.1.3")
4024 (source
4025 (origin
4026 (method git-fetch)
4027 (uri (git-reference
4028 (url "https://github.com/JuliaPackaging/Requires.jl/")
4029 (commit (string-append "v" version))))
4030 (file-name (git-file-name name version))
4031 (sha256
4032 (base32 "03hyfy7c0ma45b0y756j76awi3az2ii4bz4s8cxm3xw9yy1z7b01"))))
4033 (build-system julia-build-system)
4034 (arguments
4035 `(#:parallel-tests? #f))
4036 (inputs ;required for test
4037 `(("julia-example" ,julia-example)))
4038 (propagated-inputs
4039 `(("julia-colors" ,julia-colors)))
4040 (home-page "https://github.com/JuliaPackaging/Requires.jl/")
4041 (synopsis "Faster package loader")
4042 (description "This package make loading packages faster, maybe. It
4043 supports specifying glue code in packages which will load automatically when
4044 another package is loaded, so that explicit dependencies (and long load times)
4045 can be avoided.")
4046 (license license:expat)))
4047
4048 (define-public julia-reversediff
4049 (package
4050 (name "julia-reversediff")
4051 (version "1.9.0")
4052 (source
4053 (origin
4054 (method git-fetch)
4055 (uri (git-reference
4056 (url "https://github.com/JuliaDiff/ReverseDiff.jl")
4057 (commit (string-append "v" version))))
4058 (file-name (git-file-name name version))
4059 (sha256
4060 (base32 "1wrr6sqj2xl9grkvdp88rw3manxy9vbx28zq2wssya5ns1xabsnl"))))
4061 (build-system julia-build-system)
4062 (propagated-inputs
4063 `(("julia-diffresults" ,julia-diffresults)
4064 ("julia-diffrules" ,julia-diffrules)
4065 ("julia-forwarddiff" ,julia-forwarddiff)
4066 ("julia-functionwrappers" ,julia-functionwrappers)
4067 ("julia-macrotools" ,julia-macrotools)
4068 ("julia-nanmath" ,julia-nanmath)
4069 ("julia-specialfunctions" ,julia-specialfunctions)
4070 ("julia-staticarrays" ,julia-staticarrays)))
4071 (native-inputs
4072 `(("julia-difftests" ,julia-difftests)
4073 ("julia-fillarrays" ,julia-fillarrays)))
4074 (home-page "https://github.com/JuliaDiff/ReverseDiff.jl")
4075 (synopsis "Reverse Mode Automatic Differentiation for Julia")
4076 (description "@code{ReverseDiff.jl} is a fast and compile-able tape-based
4077 reverse mode @acronym{AD, automatic differentiation}, that implements methods to
4078 take gradients, Jacobians, Hessians, and higher-order derivatives of native
4079 Julia functions (or any callable object, really).")
4080 (license license:expat)))
4081
4082 (define-public julia-richardson
4083 (package
4084 (name "julia-richardson")
4085 (version "1.4.0")
4086 (source
4087 (origin
4088 (method git-fetch)
4089 (uri (git-reference
4090 (url "https://github.com/JuliaMath/Richardson.jl")
4091 (commit (string-append "v" version))))
4092 (file-name (git-file-name name version))
4093 (sha256
4094 (base32 "06v9ii3d7hh41fsrfklaa8ap55z5s017f888mrd1c18y4fx9i4nx"))))
4095 (build-system julia-build-system)
4096 (home-page "https://juliapackages.com/p/richardson")
4097 (synopsis "Extrapolate function using Richardson method")
4098 (description "This package provides a function extrapolate that
4099 extrapolates a given function @code{f(x)} to @code{f(x0)}, evaluating @code{f}
4100 only at a geometric sequence of points @code{> x0} (or optionally @code{<
4101 x0}). The key algorithm is Richardson extrapolation using a Neville–Aitken
4102 tableau, which adaptively increases the degree of an extrapolation polynomial
4103 until convergence is achieved to a desired tolerance (or convergence stalls
4104 due to e.g. floating-point errors). This allows one to obtain @code{f(x0)} to
4105 high-order accuracy, assuming that @code{f(x0+h)} has a Taylor series or some
4106 other power series in @code{h}.")
4107 (license license:expat)))
4108
4109 (define-public julia-rotations
4110 ;; This is the first commit with support for julia-1.6.
4111 (let ((commit "b599102535bc3534252c76f3fd4cf521f4741788")
4112 (revision "1"))
4113 (package
4114 (name "julia-rotations")
4115 (version (git-version "1.0.2" revision commit))
4116 (source
4117 (origin
4118 (method git-fetch)
4119 (uri (git-reference
4120 (url "https://github.com/JuliaGeometry/Rotations.jl")
4121 (commit commit)))
4122 (file-name (git-file-name name version))
4123 (sha256
4124 (base32 "01wwqbdmj61yiz7rkmams4xg7gb9hbmg325173846ky4b9x1wb19"))))
4125 (build-system julia-build-system)
4126 (propagated-inputs
4127 `(("julia-staticarrays" ,julia-staticarrays)))
4128 (native-inputs
4129 `(("julia-benchmarktools" ,julia-benchmarktools)
4130 ("julia-forwarddiff" ,julia-forwarddiff)
4131 ("julia-unitful" ,julia-unitful)))
4132 (home-page "https://github.com/JuliaGeometry/Rotations.jl")
4133 (synopsis "Julia implementations for different rotation parameterisations")
4134 (description "This package implements various 3D rotation parameterizations
4135 and defines conversions between them. At their heart, each rotation
4136 parameterization is a 3×3 unitary (orthogonal) matrix (based on the
4137 @code{StaticArrays.jl} package), and acts to rotate a 3-vector about the origin
4138 through matrix-vector multiplication.")
4139 (license license:expat))))
4140
4141 (define-public julia-safetestsets
4142 ;; The only release tag is the first commit in the repository.
4143 (let ((commit "e553edc4c753344d38349304b9ff5483c3b8ff21")
4144 (revision "1"))
4145 (package
4146 (name "julia-safetestsets")
4147 (version (git-version "0.0.1" revision commit))
4148 (source
4149 (origin
4150 (method git-fetch)
4151 (uri (git-reference
4152 (url "https://github.com/YingboMa/SafeTestsets.jl")
4153 (commit commit)))
4154 (file-name (git-file-name name version))
4155 (sha256
4156 (base32 "1fb1dfdmiw2ggx60hf70954xlps0r48fcb3k3dvxynlz7ylphp96"))))
4157 (build-system julia-build-system)
4158 (arguments
4159 `(#:julia-package-name "SafeTestsets"
4160 #:julia-package-uuid "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"))
4161 (native-inputs
4162 `(("julia-staticarrays" ,julia-staticarrays)))
4163 (home-page "https://github.com/YingboMa/SafeTestsets.jl")
4164 (synopsis "Julia's testset in a module")
4165 (description "This package contains the testset from Julia, packaged into
4166 a loadable module.")
4167 (license license:expat))))
4168
4169 (define-public julia-sass
4170 (package
4171 (name "julia-sass")
4172 (version "0.2.0")
4173 (source
4174 (origin
4175 (method git-fetch)
4176 (uri (git-reference
4177 (url "https://github.com/piever/Sass.jl")
4178 (commit (string-append "v" version))))
4179 (file-name (git-file-name name version))
4180 (sha256
4181 (base32 "0y7kkkj717h5cj659ssry89i5r64symr6pvhr6vv4qmaxrnjxj92"))))
4182 (build-system julia-build-system)
4183 (propagated-inputs
4184 `(("julia-libsass-jll" ,julia-libsass-jll)))
4185 (home-page "https://github.com/piever/Sass.jl")
4186 (synopsis "Compile scss and sass file to css")
4187 (description "This package provides a simple Julian API to use the
4188 @code{libsass} library to compile scss and sass files to css.")
4189 (license license:expat)))
4190
4191 (define-public julia-scratch
4192 (package
4193 (name "julia-scratch")
4194 (version "1.1.0")
4195 (source
4196 (origin
4197 (method git-fetch)
4198 (uri (git-reference
4199 (url "https://github.com/JuliaPackaging/Scratch.jl")
4200 (commit (string-append "v" version))))
4201 (file-name (git-file-name name version))
4202 (sha256
4203 (base32
4204 "09xni9rrrax17fxjz04j1b48mk9ffww5rcbagh66jklr89mrkqhx"))))
4205 (build-system julia-build-system)
4206 (arguments
4207 `(#:tests? #f)) ; Test suite tries to access the Julia package registry.
4208 (home-page "https://github.com/JuliaPackaging/Scratch.jl")
4209 (synopsis "Scratch spaces for all your persistent mutable data needs")
4210 (description "This repository implements the scratch spaces API for
4211 package-specific mutable containers of data. These spaces can contain datasets,
4212 text, binaries, or any other kind of data that would be convenient to store in
4213 a location specific to your package. As compared to Artifacts, these containers
4214 of data are mutable. Because the scratch space location on disk is not very
4215 user-friendly, scratch spaces should, in general, not be used for a storing
4216 files that the user must interact with through a file browser.")
4217 (license license:expat)))
4218
4219 (define-public julia-showoff
4220 (package
4221 (name "julia-showoff")
4222 (version "1.0.2")
4223 (source
4224 (origin
4225 (method git-fetch)
4226 (uri (git-reference
4227 (url "https://github.com/JuliaGraphics/Showoff.jl")
4228 (commit (string-append "v" version))))
4229 (file-name (git-file-name name version))
4230 (sha256
4231 (base32 "1g4hqvjjpwbrs7fnllyl5w66yj6qlvpvzpygym2nvf01m1ps6m53"))))
4232 (build-system julia-build-system)
4233 (home-page "https://github.com/JuliaGraphics/Showoff.jl")
4234 (synopsis "Nicely format an array of n things for tables and plots")
4235 (description "@code{Showoff} provides an interface for consistently
4236 formatting an array of n things, e.g. numbers, dates, unitful values. It's used
4237 in @code{Gadfly}, @code{Plots} and @code{Makie} to label axes and keys.")
4238 (license license:expat)))
4239
4240 (define-public julia-simpletraits
4241 (package
4242 (name "julia-simpletraits")
4243 (version "0.9.4")
4244 (source
4245 (origin
4246 (method git-fetch)
4247 (uri (git-reference
4248 (url "https://github.com/mauro3/SimpleTraits.jl")
4249 (commit (string-append "v" version))))
4250 (file-name (git-file-name name version))
4251 (sha256
4252 (base32 "1qvmkqcvhc2nilvkk36szccxdlcv9ls2i0ksxgl2yfjr3b3qlr05"))))
4253 (build-system julia-build-system)
4254 (propagated-inputs
4255 `(("julia-macrotools" ,julia-macrotools)))
4256 (home-page "https://github.com/mauro3/SimpleTraits.jl")
4257 (synopsis "Simple Traits for Julia")
4258 (description "This package provides a macro-based implementation of traits.
4259 The main idea behind traits is to group types outside the type-hierarchy and to
4260 make dispatch work with that grouping. The difference to Union-types is that
4261 types can be added to a trait after the creation of the trait, whereas Union
4262 types are fixed after creation.")
4263 (license license:expat)))
4264
4265 (define-public julia-sortingalgorithms
4266 (package
4267 (name "julia-sortingalgorithms")
4268 (version "1.0.1")
4269 (source
4270 (origin
4271 (method git-fetch)
4272 (uri (git-reference
4273 (url "https://github.com/JuliaCollections/SortingAlgorithms.jl")
4274 (commit (string-append "v" version))))
4275 (file-name (git-file-name name version))
4276 (sha256
4277 (base32 "173x77a80xnh99viqa3r7rgdaksvxaw8xyfqw09gwvp4p2zrxivb"))))
4278 (build-system julia-build-system)
4279 (arguments
4280 `(#:tests? #f)) ; cycle with StatsBase.jl
4281 (propagated-inputs
4282 `(("julia-datastructures" ,julia-datastructures)))
4283 ;(native-inputs
4284 ; `(("julia-statsbase" ,julia-statsbase)))
4285 (home-page "https://github.com/JuliaCollections/SortingAlgorithms.jl")
4286 (synopsis "Extra sorting algorithms extending Julia's sorting API")
4287 (description "The SortingAlgorithms package provides three sorting
4288 algorithms that can be used with Julia's standard sorting API: heapsort,
4289 timsort and radixsort.")
4290 (license license:expat)))
4291
4292 (define-public julia-specialfunctions
4293 (package
4294 (name "julia-specialfunctions")
4295 (version "1.6.0")
4296 (source
4297 (origin
4298 (method git-fetch)
4299 (uri (git-reference
4300 (url "https://github.com/JuliaMath/SpecialFunctions.jl")
4301 (commit (string-append "v" version))))
4302 (file-name (git-file-name name version))
4303 (sha256
4304 (base32 "0nfpnglx7zl9g20w2mgfkg17hcw9ri0shaq2rwplj0ij5pwz8yf0"))))
4305 (build-system julia-build-system)
4306 (inputs
4307 `(("julia-chainrulestestutils" ,julia-chainrulestestutils)))
4308 (propagated-inputs
4309 `(("julia-chainrulescore" ,julia-chainrulescore)
4310 ("julia-logexpfunctions" ,julia-logexpfunctions)
4311 ("julia-openspecfun-jll" ,julia-openspecfun-jll)))
4312 (home-page "https://github.com/JuliaMath/SpecialFunctions.jl")
4313 (synopsis "Special mathematical functions")
4314 (description "This package provides special mathematical functions,
4315 including Bessel, Hankel, Airy, error, Dawson, exponential (or sine and
4316 cosine) integrals, eta, zeta, digamma, inverse digamma, trigamma, and
4317 polygamma functions.")
4318 (license license:expat)))
4319
4320 (define-public julia-splitapplycombine
4321 (package
4322 (name "julia-splitapplycombine")
4323 (version "1.1.4")
4324 (source
4325 (origin
4326 (method git-fetch)
4327 (uri (git-reference
4328 (url "https://github.com/JuliaData/SplitApplyCombine.jl")
4329 (commit (string-append "v" version))))
4330 (file-name (git-file-name name version))
4331 (sha256
4332 (base32 "1qzaqvk57b0s5krzn8bxkzmr5kz6hi9dm3jbf2sl7z4vznsgbn9x"))))
4333 (build-system julia-build-system)
4334 (propagated-inputs
4335 `(("julia-dictionaries" ,julia-dictionaries)
4336 ("julia-indexing" ,julia-indexing)))
4337 (home-page "https://github.com/JuliaData/SplitApplyCombine.jl")
4338 (synopsis "Split-apply-combine strategies for Julia")
4339 (description "@code{SplitApplyCombine.jl} provides high-level, generic tools
4340 for manipulating data - particularly focussing on data in nested containers. An
4341 emphasis is placed on ensuring split-apply-combine strategies are easy to apply,
4342 and work reliably for arbitrary iterables and in an optimized way with the data
4343 structures included in Julia's standard library.")
4344 (license license:expat)))
4345
4346 (define-public julia-stablerngs
4347 (package
4348 (name "julia-stablerngs")
4349 (version "1.0.0")
4350 (source
4351 (origin
4352 (method git-fetch)
4353 (uri (git-reference
4354 (url "https://github.com/JuliaRandom/StableRNGs.jl")
4355 (commit (string-append "v" version))))
4356 (file-name (git-file-name name version))
4357 (sha256
4358 (base32 "1cw4wc38qbgmrrx0jjwjhynnarrzjkh0yyz242zj272brbci7p1r"))))
4359 (build-system julia-build-system)
4360 (home-page "https://github.com/JuliaRandom/StableRNGs.jl")
4361 (synopsis "Julia RNG with stable streams")
4362 (description "This package intends to provide a simple RNG with stable
4363 streams, suitable for tests in packages which need reproducible streams of
4364 random numbers across Julia versions. Indeed, the Julia RNGs provided by
4365 default are documented to have non-stable streams (which for example enables
4366 some performance improvements).")
4367 (license license:expat)))
4368
4369 (define-public julia-stackviews
4370 (package
4371 (name "julia-stackviews")
4372 (version "0.1.1")
4373 (source
4374 (origin
4375 (method git-fetch)
4376 (uri (git-reference
4377 (url "https://github.com/JuliaArrays/StackViews.jl")
4378 (commit (string-append "v" version))))
4379 (file-name (git-file-name name version))
4380 (sha256
4381 (base32 "1fwiaxdpx1z9dli3jr8kyraych0jbdiny3qklynf0r13px25r6i7"))))
4382 (build-system julia-build-system)
4383 (arguments
4384 `(#:phases
4385 (modify-phases %standard-phases
4386 (add-after 'link-depot 'skip-doctest
4387 (lambda _
4388 (substitute* "test/runtests.jl"
4389 ((".*doctest.*") ""))
4390 #t)))))
4391 (propagated-inputs
4392 `(("julia-offsetarrays" ,julia-offsetarrays)))
4393 (native-inputs
4394 `(("julia-aqua" ,julia-aqua)
4395 ("julia-documenter" ,julia-documenter)))
4396 (home-page "https://github.com/JuliaArrays/StackViews.jl")
4397 (synopsis "No more catcat")
4398 (description "StackViews provides only one array type: @code{StackView}.
4399 There are multiple ways to understand @code{StackView}:
4400 @itemize
4401 @item inverse of @code{eachslice}
4402 @item @code{cat} variant
4403 @item view object
4404 @item lazy version of @code{repeat} special case
4405 @end itemize")
4406 (license license:expat)))
4407
4408 (define-public julia-static
4409 (package
4410 (name "julia-static")
4411 (version "0.3.0")
4412 (source
4413 (origin
4414 (method git-fetch)
4415 (uri (git-reference
4416 (url "https://github.com/SciML/Static.jl")
4417 (commit (string-append "v" version))))
4418 (file-name (git-file-name name version))
4419 (sha256
4420 (base32 "19k7h47zhz3zz28i0l4b3cc0r07pzp8kf35z0yammpy361b644l2"))))
4421 (build-system julia-build-system)
4422 (propagated-inputs
4423 `(("julia-ifelse" ,julia-ifelse)))
4424 (native-inputs
4425 `(("julia-aqua" ,julia-aqua)))
4426 (home-page "https://github.com/SciML/Static.jl")
4427 (synopsis "Static types useful for dispatch and generated functions")
4428 (description "Static.jl defines a limited set of statically parameterized
4429 types and a common interface that is shared between them.")
4430 (license license:expat)))
4431
4432 (define-public julia-staticarrays
4433 (package
4434 (name "julia-staticarrays")
4435 (version "1.2.13")
4436 (source
4437 (origin
4438 (method git-fetch)
4439 (uri (git-reference
4440 (url "https://github.com/JuliaArrays/StaticArrays.jl")
4441 (commit (string-append "v" version))))
4442 (file-name (git-file-name name version))
4443 (sha256
4444 (base32 "041mijzgzm8r61a3gwspr2wcxjikqksvj2rbnl4gmcy41alqmx79"))))
4445 (build-system julia-build-system)
4446 (inputs
4447 `(("julia-benchmarktools" ,julia-benchmarktools)))
4448 (home-page "https://github.com/JuliaArrays/StaticArrays.jl")
4449 (synopsis "Statically sized arrays")
4450 (description "This package provides a framework for implementing
4451 statically sized arrays in Julia, using the abstract type
4452 @code{StaticArray{Size,T,N} <: AbstractArray{T,N}}. Subtypes of
4453 @code{StaticArray} will provide fast implementations of common array and
4454 linear algebra operations.")
4455 (license license:expat)))
4456
4457 (define-public julia-statsapi
4458 (package
4459 (name "julia-statsapi")
4460 (version "1.0.0")
4461 (source
4462 (origin
4463 (method git-fetch)
4464 (uri (git-reference
4465 (url "https://github.com/JuliaStats/StatsAPI.jl")
4466 (commit (string-append "v" version))))
4467 (file-name (git-file-name name version))
4468 (sha256
4469 (base32 "1k1c3s7i5wzkz4r9fyy4gd7wb97p0qgbc7bmaajm16zqipfmy2bv"))))
4470 (build-system julia-build-system)
4471 (home-page "https://juliastats.org/")
4472 (synopsis "Statistics-focused namespace for packages to share functions")
4473 (description "This package provides a namespace for data-related generic
4474 function definitions to solve the optional dependency problem; packages wishing
4475 to share and/or extend functions can avoid depending directly on each other by
4476 moving the function definition to @code{StatsAPI.jl} and each package taking a
4477 dependency on it.")
4478 (license license:expat)))
4479
4480 (define-public julia-statsbase
4481 (package
4482 (name "julia-statsbase")
4483 (version "0.33.8")
4484 (source
4485 (origin
4486 (method git-fetch)
4487 (uri (git-reference
4488 (url "https://github.com/JuliaStats/StatsBase.jl")
4489 (commit (string-append "v" version))))
4490 (file-name (git-file-name name version))
4491 (sha256
4492 (base32 "02y4pm5yvg713a2pn970bbcfkrn2h133rxbxk1da18svhqw3czhi"))))
4493 (build-system julia-build-system)
4494 (propagated-inputs
4495 `(("julia-dataapi" ,julia-dataapi)
4496 ("julia-datastructures" ,julia-datastructures)
4497 ("julia-missings" ,julia-missings)
4498 ("julia-sortingalgorithms" ,julia-sortingalgorithms)
4499 ("julia-statsapi" ,julia-statsapi)))
4500 (native-inputs
4501 `(("julia-stablerngs" ,julia-stablerngs)))
4502 (home-page "https://github.com/JuliaStats/StatsBase.jl")
4503 (synopsis "Basic statistics for Julia")
4504 (description "StatsBase.jl is a Julia package that provides basic support
4505 for statistics. Particularly, it implements a variety of statistics-related
4506 functions, such as scalar statistics, high-order moment computation, counting,
4507 ranking, covariances, sampling, and empirical density estimation.")
4508 (license license:expat)))
4509
4510 (define-public julia-stringdistances
4511 (package
4512 (name "julia-stringdistances")
4513 (version "0.10.0")
4514 (source
4515 (origin
4516 (method git-fetch)
4517 (uri (git-reference
4518 (url "https://github.com/matthieugomez/StringDistances.jl")
4519 (commit (string-append "v" version))))
4520 (file-name (git-file-name name version))
4521 (sha256
4522 (base32 "0n5707wplbibzhhv1xmshvc025d7xk6mnikclc3hvq5cdc0gy9f7"))))
4523 (build-system julia-build-system)
4524 (propagated-inputs
4525 `(("julia-distances" ,julia-distances)))
4526 (home-page "https://github.com/matthieugomez/StringDistances.jl")
4527 (synopsis "String Distances in Julia")
4528 (description "This package provides string distances in Julia. Distances
4529 are defined for @code{AbstractStrings}, and any iterator that define
4530 @code{length()}. The package also defines Distance \"modifiers\" that can be
4531 applied to any distance.")
4532 (license license:expat)))
4533
4534 (define-public julia-structarrays
4535 (package
4536 (name "julia-structarrays")
4537 (version "0.6.3")
4538 (source
4539 (origin
4540 (method git-fetch)
4541 (uri (git-reference
4542 (url "https://github.com/JuliaArrays/StructArrays.jl")
4543 (commit (string-append "v" version))))
4544 (file-name (git-file-name name version))
4545 (sha256
4546 (base32 "0rjcpyjwzg70n87q5r9c5i1qzigavncslxssm3rk5a3y549py56v"))))
4547 (build-system julia-build-system)
4548 (propagated-inputs
4549 `(("julia-dataapi" ,julia-dataapi)
4550 ("julia-staticarrays" ,julia-staticarrays)
4551 ("julia-tables" ,julia-tables)))
4552 (native-inputs
4553 `(("julia-documenter" ,julia-documenter)
4554 ("julia-offsetarrays" ,julia-offsetarrays)
4555 ("julia-pooledarrays" ,julia-pooledarrays)
4556 ("julia-typedtables" ,julia-typedtables)
4557 ("julia-weakrefstrings" ,julia-weakrefstrings)))
4558 (home-page "https://github.com/JuliaArrays/StructArrays.jl")
4559 (synopsis "Efficient implementation of struct arrays in Julia")
4560 (description "This package introduces the type @code{StructArray} which is
4561 an @code{AbstractArray} whose elements are @code{struct} (for example
4562 @code{NamedTuples}, or @code{ComplexF64}, or a custom user defined
4563 @code{struct}). While a @code{StructArray} iterates @code{structs}, the layout
4564 is column based (meaning each field of the @code{struct} is stored in a separate
4565 @code{Array}).")
4566 (license license:expat)))
4567
4568 (define-public julia-structtypes
4569 (package
4570 (name "julia-structtypes")
4571 (version "1.7.2")
4572 (source
4573 (origin
4574 (method git-fetch)
4575 (uri (git-reference
4576 (url "https://github.com/JuliaData/StructTypes.jl")
4577 (commit (string-append "v" version))))
4578 (file-name (git-file-name name version))
4579 (sha256
4580 (base32 "02mn4kkhn3927dk7945c9bjwlldihydxgn5ilmqqvs8dknvbw8p1"))))
4581 (build-system julia-build-system)
4582 (home-page "https://juliadata.github.io/StructTypes.jl/stable/")
4583 (synopsis "Abstract definitions and convenience methods for Julia objects")
4584 (description "This package provides the @code{StructTypes.StructType} trait
4585 for Julia types to declare the kind of \"struct\" they are, providing
4586 serialization/deserialization packages patterns and strategies to automatically
4587 construct objects.")
4588 (license license:expat)))
4589
4590 (define-public julia-suppressor
4591 (package
4592 (name "julia-suppressor")
4593 (version "0.2.0")
4594 (source
4595 (origin
4596 (method git-fetch)
4597 (uri (git-reference
4598 (url "https://github.com/JuliaIO/Suppressor.jl")
4599 (commit (string-append "v" version))))
4600 (file-name (git-file-name name version))
4601 (sha256
4602 (base32 "0v6pxvf8lzrqjc676snvlszh14ridl442g2h6syfjiy75pk7mdyc"))))
4603 (build-system julia-build-system)
4604 (home-page "https://github.com/JuliaIO/Suppressor.jl")
4605 (synopsis "Capture stdout and sterr")
4606 (description "Julia macros for suppressing and/or capturing output (stdout),
4607 warnings (stderr) or both streams at the same time.")
4608 (license license:expat)))
4609
4610 (define-public julia-tableiointerface
4611 (package
4612 (name "julia-tableiointerface")
4613 (version "0.1.6")
4614 (source
4615 (origin
4616 (method git-fetch)
4617 (uri (git-reference
4618 (url "https://github.com/lungben/TableIOInterface.jl")
4619 (commit (string-append "v" version))))
4620 (file-name (git-file-name name version))
4621 (sha256
4622 (base32 "0p2fi9jbyfg2j6rysv4if7dx8qw2mssb04i75j1zq607j8707kvn"))))
4623 (build-system julia-build-system)
4624 (home-page "https://github.com/lungben/TableIOInterface.jl")
4625 (synopsis "File formats based on file extensions")
4626 (description "This package determines tabular file formats based on file
4627 extensions. It is intended to be the base both for @code{TableIO.jl} and for
4628 the @code{Pluto.jl} tabular data import functionality.")
4629 (license license:expat)))
4630
4631 (define-public julia-tables
4632 (package
4633 (name "julia-tables")
4634 (version "1.4.4")
4635 (source
4636 (origin
4637 (method git-fetch)
4638 (uri (git-reference
4639 (url "https://github.com/JuliaData/Tables.jl")
4640 (commit (string-append "v" version))))
4641 (file-name (git-file-name name version))
4642 (sha256
4643 (base32 "1sqqagzqvav8b1rv5ywwbgy9ixvlmipq95fkwfwn0m8769i8jwzb"))))
4644 (build-system julia-build-system)
4645 (propagated-inputs
4646 `(("julia-dataapi" ,julia-dataapi)
4647 ("julia-datavalueinterfaces" ,julia-datavalueinterfaces)
4648 ("julia-iteratorinterfaceextensions" ,julia-iteratorinterfaceextensions)
4649 ("julia-tabletraits" ,julia-tabletraits)))
4650 (native-inputs
4651 `(("julia-datavalues" ,julia-datavalues)
4652 ("julia-queryoperators" ,julia-queryoperators)))
4653 (home-page "https://github.com/JuliaData/Tables.jl")
4654 (synopsis "Interface for tables in Julia")
4655 (description "The @code{Tables.jl} package provides simple, yet powerful
4656 interface functions for working with all kinds tabular data.")
4657 (license license:expat)))
4658
4659 (define-public julia-tableshowutils
4660 ;; The 0.2.5 release is not fully compatable with newer versions of Julia.
4661 (let ((commit "c4e02d8b9bbb31fc81ed6618955e9b1c7cb04460")
4662 (revision "1"))
4663 (package
4664 (name "julia-tableshowutils")
4665 (version "0.2.5")
4666 (source
4667 (origin
4668 (method git-fetch)
4669 (uri (git-reference
4670 (url "https://github.com/queryverse/TableShowUtils.jl")
4671 (commit commit)))
4672 (file-name (git-file-name name version))
4673 (sha256
4674 (base32 "0gp3hpj3jvzfhkp9r345vfic2j2n2s60729wv38hwn75csp74cg5"))))
4675 (build-system julia-build-system)
4676 (propagated-inputs
4677 `(("julia-datavalues" ,julia-datavalues)
4678 ("julia-json" ,julia-json)))
4679 (home-page "https://github.com/queryverse/TableShowUtils.jl")
4680 (synopsis "Implement show for TableTraits.jl types")
4681 (description "This package provides some common helper functions that make
4682 it easier to implement various @code{Base.show} functions for types that
4683 participate in the @code{TableTraits.jl} ecosystem.")
4684 (license license:expat))))
4685
4686 (define-public julia-tabletraits
4687 (package
4688 (name "julia-tabletraits")
4689 (version "1.0.1")
4690 (source
4691 (origin
4692 (method git-fetch)
4693 (uri (git-reference
4694 (url "https://github.com/queryverse/TableTraits.jl")
4695 (commit (string-append "v" version))))
4696 (file-name (git-file-name name version))
4697 (sha256
4698 (base32 "08ssb2630wm6j8f2qa985mn2vfibfm5kjcn4ayl2qkhfcyp8daw4"))))
4699 (build-system julia-build-system)
4700 (propagated-inputs
4701 `(("julia-iteratorinterfaceextensions" ,julia-iteratorinterfaceextensions)))
4702 (home-page "https://github.com/queryverse/TableTraits.jl")
4703 (synopsis "Traits for Julia tables")
4704 (description "TableTraits defines a generic interface for tabular data.")
4705 (license license:expat)))
4706
4707 (define-public julia-tensorcore
4708 (package
4709 (name "julia-tensorcore")
4710 (version "0.1.1")
4711 (source
4712 (origin
4713 (method git-fetch)
4714 (uri (git-reference
4715 (url "https://github.com/JuliaMath/TensorCore.jl")
4716 (commit (string-append "v" version))))
4717 (file-name (git-file-name name version))
4718 (sha256
4719 (base32 "1sy3in4a1rl3l2vk0cm9mzg2nkva7syhr7i35si0kbzhkdwpbqjy"))))
4720 (build-system julia-build-system)
4721 (home-page "https://github.com/JuliaMath/TensorCore.jl")
4722 (synopsis "Tensor-algebra definitions")
4723 (description "This package is intended as a lightweight foundation for
4724 tensor operations across the Julia ecosystem. Currently it exports three
4725 operations: @acronym{hadamard, elementwise multiplication}, @acronym{tensor,
4726 product preserves all dimensions}, and @acronym{boxdot, contracts neighboring
4727 dimensions}.")
4728 (license license:expat)))
4729
4730 (define-public julia-testimages
4731 (package
4732 (name "julia-testimages")
4733 (version "1.5.0")
4734 (source
4735 (origin
4736 (method git-fetch)
4737 (uri (git-reference
4738 (url "https://github.com/JuliaImages/TestImages.jl")
4739 (commit (string-append "v" version))))
4740 (file-name (git-file-name name version))
4741 (sha256
4742 (base32 "1lnfsmx33qspyvxw0cykwh7il8xykjpcw1080sisn95ngz2qhdmy"))))
4743 (build-system julia-build-system)
4744 (arguments
4745 `(#:tests? #f)) ; cycle with ImageMagick.jl
4746 (propagated-inputs
4747 `(("julia-axisarrays" ,julia-axisarrays)
4748 ("julia-colortypes" ,julia-colortypes)
4749 ("julia-fileio" ,julia-fileio)
4750 ("julia-offsetarrays" ,julia-offsetarrays)
4751 ("julia-stringdistances" ,julia-stringdistances)))
4752 ;(native-inputs
4753 ; `(("julia-colors" ,julia-colors)
4754 ; ("julia-fixedpointnumbers" ,julia-fixedpointnumbers)
4755 ; ("julia-imagecontrastadjustment" ,julia-imagecontrastadjustment)
4756 ; ("julia-imagemagick" ,julia-imagemagick)
4757 ; ("julia-ometiff" ,julia-ometiff)
4758 ; ("julia-referencetests" ,julia-referencetests)))
4759 (home-page "https://testimages.juliaimages.org/")
4760 (synopsis "Standard test images for Julia")
4761 (description "This package provides a convenient Julia interface for loading
4762 standard named test images and example images for the internal usage in
4763 @code{JuliaImages}. This can be used in conjunction with the @code{Images}
4764 package.")
4765 (license license:expat)))
4766
4767 (define-public julia-tracker
4768 (package
4769 (name "julia-tracker")
4770 (version "0.2.12")
4771 (source
4772 (origin
4773 (method git-fetch)
4774 (uri (git-reference
4775 (url "https://github.com/FluxML/Tracker.jl")
4776 (commit (string-append "v" version))))
4777 (file-name (git-file-name name version))
4778 (sha256
4779 (base32 "1s4mdywbp7nli7z985fqaj1rs4i6d92b1jx3lhg0qhk1s5wc0v8j"))
4780 (patches (search-patches "julia-tracker-16-compat.patch"))))
4781 (build-system julia-build-system)
4782 (propagated-inputs
4783 `(("julia-adapt" ,julia-adapt)
4784 ("julia-diffrules" ,julia-diffrules)
4785 ("julia-forwarddiff" ,julia-forwarddiff)
4786 ("julia-macrotools" ,julia-macrotools)
4787 ("julia-nanmath" ,julia-nanmath)
4788 ("julia-nnlib" ,julia-nnlib)
4789 ("julia-requires" ,julia-requires)
4790 ("julia-specialfunctions" ,julia-specialfunctions)))
4791 (native-inputs
4792 `(("julia-pdmats" ,julia-pdmats)))
4793 (home-page "https://github.com/FluxML/Tracker.jl")
4794 (synopsis "Operator overloading reverse-mode automatic differentiator")
4795 (description "@code{Tracker.jl} previously provided @code{Flux.jl} with
4796 automatic differentiation for its machine learning platform.")
4797 (license license:expat)))
4798
4799 (define-public julia-transcodingstreams
4800 (package
4801 (name "julia-transcodingstreams")
4802 (version "0.9.6")
4803 (source
4804 (origin
4805 (method git-fetch)
4806 (uri (git-reference
4807 (url "https://github.com/JuliaIO/TranscodingStreams.jl")
4808 (commit (string-append "v" version))))
4809 (file-name (git-file-name name version))
4810 (sha256
4811 (base32 "1w3klii293caqiclfh28jggv7f53xclm9fr6xmw38brwrn1hjb48"))))
4812 (build-system julia-build-system)
4813 (arguments
4814 `(#:tests? #f)) ; Circular dependency with various codecs.
4815 (home-page "https://github.com/JuliaIO/TranscodingStreams.jl")
4816 (synopsis "Fast I/O transcoding data streams")
4817 (description "This package provides tools for transcoding data streams
4818 which are:
4819 @itemize
4820 @item fast: small overhead and specialized methods
4821 @item consistent: basic I/O operations work as expected
4822 @item generic: support any I/O objects like files, buffers, pipes, etc.
4823 @item extensible: easy definition for new codec to transcode data
4824 @end itemize")
4825 (license license:expat)))
4826
4827 (define-public julia-typedtables
4828 (package
4829 (name "julia-typedtables")
4830 (version "1.4.0")
4831 (source
4832 (origin
4833 (method git-fetch)
4834 (uri (git-reference
4835 (url "https://github.com/JuliaData/TypedTables.jl")
4836 (commit (string-append "v" version))))
4837 (file-name (git-file-name name version))
4838 (sha256
4839 (base32 "0nk6zhqvl2r8yhjdhb59kxq0srd3vy4ysg4d8rszj9a43dnn3w3i"))))
4840 (build-system julia-build-system)
4841 (propagated-inputs
4842 `(("julia-adapt" ,julia-adapt)
4843 ("julia-splitapplycombine" ,julia-splitapplycombine)
4844 ("julia-tables" ,julia-tables)))
4845 (home-page "https://github.com/JuliaData/TypedTables.jl")
4846 (synopsis "Column-based storage for data analysis in Julia")
4847 (description "@code{TypedTables.jl} provides two column-based storage
4848 containers: @code{Table} and @code{FlexTable}, both of which represent an array
4849 of @code{NamedTuples}. This package is designed to be lightweight, easy-to-use
4850 and fast, and presents a very minimal new interface to learn.")
4851 (license license:expat)))
4852
4853 (define-public julia-unpack
4854 (package
4855 (name "julia-unpack")
4856 (version "1.0.2")
4857 (source
4858 (origin
4859 (method git-fetch)
4860 (uri (git-reference
4861 (url "https://github.com/mauro3/UnPack.jl")
4862 (commit (string-append "v" version))))
4863 (file-name (git-file-name name version))
4864 (sha256
4865 (base32 "066v1px72zidnvhl0rczhh07rcfwvli0jx5nprrgyi1dvj3mps2a"))))
4866 (build-system julia-build-system)
4867 (home-page "https://github.com/mauro3/UnPack.jl")
4868 (synopsis "Pack and Unpack macros for Julia")
4869 (description "The @code{@@unpack} and @code{@@pack!} macros work to unpack
4870 types, modules, and dictionaries.")
4871 (license license:expat)))
4872
4873 (define-public julia-uris
4874 (package
4875 (name "julia-uris")
4876 (version "1.3.0")
4877 (source
4878 (origin
4879 (method git-fetch)
4880 (uri (git-reference
4881 (url "https://github.com/JuliaWeb/URIs.jl")
4882 (commit (string-append "v" version))))
4883 (file-name (git-file-name name version))
4884 (sha256
4885 (base32 "0kp4hg3kknkm2smlcizqfd33l9x4vkahc2714gnbjp39fj285b92"))))
4886 (build-system julia-build-system)
4887 (arguments
4888 '(#:julia-package-name "URIs" ;required to run tests
4889 #:julia-package-uuid "5c2747f8-b7ea-4ff2-ba2e-563bfd36b1d4"
4890 #:phases
4891 (modify-phases %standard-phases
4892 (add-before 'check 'change-dir
4893 ;; Tests must be run from the testdir
4894 (lambda* (#:key source outputs #:allow-other-keys)
4895 (let ((out (assoc-ref outputs "out")))
4896 (chdir
4897 (string-append out "/share/julia/loadpath/URIs/test")))
4898 #t)))))
4899 ;; required for tests
4900 (inputs `(("julia-json" ,julia-json)))
4901 (home-page "https://github.com/JuliaWeb/URIs.jl")
4902 (synopsis "URI parsing in Julia")
4903 (description "@code{URIs.jl} is a Julia package that allows parsing and
4904 working with @acronym{URIs,Uniform Resource Identifiers}, as defined in RFC
4905 3986.")
4906 (license license:expat)))
4907
4908 (define-public julia-unitful
4909 (package
4910 (name "julia-unitful")
4911 (version "1.9.0")
4912 (source
4913 (origin
4914 (method git-fetch)
4915 (uri (git-reference
4916 (url "https://github.com/PainterQubits/Unitful.jl")
4917 (commit (string-append "v" version))))
4918 (file-name (git-file-name name version))
4919 (sha256
4920 (base32 "10qwscd15dnmvx116dwvg99m7kmwgmj5ahdkq7psiq48lcc554gq"))))
4921 (build-system julia-build-system)
4922 (arguments
4923 `(#:parallel-tests? #f))
4924 (propagated-inputs
4925 `(("julia-constructionbase" ,julia-constructionbase)))
4926 (home-page "https://painterqubits.github.io/Unitful.jl/stable/")
4927 (synopsis "Physical units in Julia")
4928 (description "This package supports SI units and also many other unit
4929 system.")
4930 (license license:expat)))
4931
4932 (define-public julia-versionparsing
4933 (package
4934 (name "julia-versionparsing")
4935 (version "1.2.0")
4936 (source
4937 (origin
4938 (method git-fetch)
4939 (uri (git-reference
4940 (url "https://github.com/JuliaInterop/VersionParsing.jl")
4941 (commit (string-append "v" version))))
4942 (file-name (git-file-name name version))
4943 (sha256
4944 (base32 "060s72dsnpavgilf7f7315lw2sn4npk8lkndmj6bg7i23hppiwva"))))
4945 (build-system julia-build-system)
4946 (home-page "https://github.com/JuliaInterop/VersionParsing.jl")
4947 (synopsis "Flexible VersionNumber parsing in Julia")
4948 (description "The @code{VersionParsing} package implements flexible parsing
4949 of version-number strings into Julia's built-in @code{VersionNumber} type, via
4950 the @code{vparse(string)} function. Unlike the @code{VersionNumber(string)}
4951 constructor, @code{vparse(string)} can handle version-number strings in a much
4952 wider range of formats than are encompassed by the semver standard. This is
4953 useful in order to support @code{VersionNumber} comparisons applied to
4954 \"foreign\" version numbers from external packages.")
4955 (license license:expat)))
4956
4957 (define-public julia-weakrefstrings
4958 (package
4959 (name "julia-weakrefstrings")
4960 (version "1.1.0")
4961 (source
4962 (origin
4963 (method git-fetch)
4964 (uri (git-reference
4965 (url "https://github.com/JuliaData/WeakRefStrings.jl")
4966 (commit (string-append "v" version))))
4967 (file-name (git-file-name name version))
4968 (sha256
4969 (base32 "14h1vdnc3rx87w6v2rr59lgb4kai2hd1wzqpxhmzsi8karg2z219"))))
4970 (build-system julia-build-system)
4971 (propagated-inputs
4972 `(("julia-dataapi" ,julia-dataapi)
4973 ("julia-parsers" ,julia-parsers)))
4974 (home-page "https://github.com/JuliaData/WeakRefStrings.jl")
4975 (synopsis "Efficient string representation and transfer in Julia")
4976 (description "This package provides a minimal String type for Julia that
4977 allows for efficient string representation and transfer")
4978 (license license:expat)))
4979
4980 (define-public julia-woodburymatrices
4981 (package
4982 (name "julia-woodburymatrices")
4983 (version "0.5.3")
4984 (source
4985 (origin
4986 (method git-fetch)
4987 (uri (git-reference
4988 (url "https://github.com/timholy/WoodburyMatrices.jl")
4989 (commit (string-append "v" version))))
4990 (file-name (git-file-name name version))
4991 (sha256
4992 (base32 "04yykivi8zrbryxlmb0p5xa6lma8iq22r5s863117dnnqj5gaffd"))))
4993 (build-system julia-build-system)
4994 (home-page "https://github.com/timholy/WoodburyMatrices.jl")
4995 (synopsis "Support for the Woodbury matrix identity for Julia")
4996 (description "This package provides support for the Woodbury matrix identity
4997 for the Julia programming language. This is a generalization of the
4998 Sherman-Morrison formula. Note that the Woodbury matrix identity is notorious
4999 for floating-point roundoff errors, so be prepared for a certain amount of
5000 inaccuracy in the result.")
5001 (license license:expat)))
5002
5003 (define-public julia-zipfile
5004 (package
5005 (name "julia-zipfile")
5006 (version "0.9.3")
5007 (source
5008 (origin
5009 (method git-fetch)
5010 (uri (git-reference
5011 (url "https://github.com/fhs/ZipFile.jl")
5012 (commit (string-append "v" version))))
5013 (file-name (git-file-name name version))
5014 (sha256
5015 (base32
5016 "15bm3ki5mb9nvqs2byznrryq0bilnjcvsfy3k05hxhk9vapilw7k"))))
5017 (build-system julia-build-system)
5018 (propagated-inputs
5019 `(("julia-zlib-jll" ,julia-zlib-jll)))
5020 (home-page "https://github.com/fhs/ZipFile.jl")
5021 (synopsis "Read/Write ZIP archives in Julia")
5022 (description "This module provides support for reading and writing ZIP
5023 archives in Julia.")
5024 (license license:expat)))
5025
5026 (define-public julia-zygoterules
5027 (package
5028 (name "julia-zygoterules")
5029 (version "0.2.1")
5030 (source
5031 (origin
5032 (method git-fetch)
5033 (uri (git-reference
5034 (url "https://github.com/FluxML/ZygoteRules.jl")
5035 (commit (string-append "v" version))))
5036 (file-name (git-file-name name version))
5037 (sha256
5038 (base32 "07i2mf6rr5b8i6l82qgwl5arsb5pwyyzyfasgnszhdqllk9501bs"))))
5039 (build-system julia-build-system)
5040 (propagated-inputs
5041 `(("julia-macrotools" ,julia-macrotools)))
5042 (home-page "https://github.com/FluxML/ZygoteRules.jl")
5043 (synopsis "Add minimal custom gradients to Zygote")
5044 (description "Minimal package which enables to add custom gradients to
5045 Zygote, without depending on Zygote itself.")
5046 (license license:expat)))
5047
5048 (define-public julia-zygote
5049 (package
5050 (name "julia-zygote")
5051 (version "0.6.17")
5052 (source
5053 (origin
5054 (method git-fetch)
5055 (uri (git-reference
5056 (url "https://github.com/FluxML/Zygote.jl")
5057 (commit (string-append "v" version))))
5058 (file-name (git-file-name name version))
5059 (sha256
5060 (base32 "1cx66sp30s34ln6p0fpqk1ggjxfxg2gp8791zz3cl85dmk4dl14b"))))
5061 (build-system julia-build-system)
5062 (arguments
5063 `(#:tests? #f)) ;require CUDA, not packaged yet
5064 (propagated-inputs
5065 `(("julia-abstractffs" ,julia-abstractffts)
5066 ("julia-chainrules" ,julia-chainrules)
5067 ("julia-diffrules" ,julia-diffrules)
5068 ("julia-fillarrays" ,julia-fillarrays)
5069 ("julia-forwarddiff" ,julia-forwarddiff)
5070 ("julia-irtools" ,julia-irtools)
5071 ("julia-macrotools" ,julia-macrotools)
5072 ("julia-nanmath" ,julia-nanmath)
5073 ("julia-requires" ,julia-requires)
5074 ("julia-specialfunctions" ,julia-specialfunctions)
5075 ("julia-zygote-rules" ,julia-zygoterules)))
5076 (home-page "https://fluxml.ai/Zygote.jl")
5077 (synopsis "Automatic differentiation in Julia")
5078 (description "Zygote provides source-to-source automatic
5079 differentiation (AD) in Julia, and is the next-generation AD system for the
5080 Flux differentiable programming framework.")
5081 (license license:expat)))