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