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