diff options
Diffstat (limited to 'gn/packages')
-rw-r--r-- | gn/packages/julia.scm | 900 |
1 files changed, 738 insertions, 162 deletions
diff --git a/gn/packages/julia.scm b/gn/packages/julia.scm index ec23891..b9ab537 100644 --- a/gn/packages/julia.scm +++ b/gn/packages/julia.scm @@ -34,18 +34,6 @@ (arguments `(#:phases (modify-phases %standard-phases - ;; This is a super ugly hack. Some JULIA environment variable should - ;; be tuned so it can find the artifact directory. - (add-after 'unpack 'symlink-zlib-into-artifact-directory - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((julia-dir (string-append (assoc-ref outputs "out") - "/share/julia"))) - (mkdir-p julia-dir) - (symlink - (string-append (assoc-ref inputs "julia-zlib-jll") - "/share/julia/artifacts") - (string-append julia-dir "/artifacts"))) - #t)) ;(add-after 'precompile 'check ; (lambda* (#:key outputs #:allow-other-keys) ; (let* ((out (assoc-ref outputs "out")) @@ -90,93 +78,10 @@ (native-inputs `(("julia-packagecompiler" ,julia-packagecompiler))))) -(define-public julia-zipfile - (package - (name "julia-zipfile") - (version "0.9.1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/fhs/ZipFile.jl") - (commit (string-append "v" version)))) - ;(file-name (git-file-name name version)) - (file-name "ZipFile") - (sha256 - (base32 - "1fpvlhfqg5kgq5vchlf8dyc73r6dzki0dz7plddc3bnr0ld00rlw")))) - (build-system julia-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - ;; This is a super ugly hack. Some JULIA environment variable should - ;; be tuned so it can find the artifact directory. - (add-after 'unpack 'symlink-zlib-into-artifact-directory - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((julia-dir (string-append (assoc-ref outputs "out") - "/share/julia"))) - (mkdir-p julia-dir) - (symlink - (string-append (assoc-ref inputs "julia-zlib-jll") - "/share/julia/artifacts") - (string-append julia-dir "/artifacts"))) - #t))))) - (propagated-inputs - `(("julia-zlib-jll" ,julia-zlib-jll))) - (home-page "https://github.com/fhs/ZipFile.jl") - (synopsis "Read/Write ZIP archives in Julia") - (description "This module provides support for reading and writing ZIP -archives in Julia.") - (license license:expat))) - -(define-public julia-zlib-jll - (package - (name "julia-zlib-jll") - (version "1.2.11+9") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/Zlib_jll.jl") - (commit (string-append "Zlib-v" version)))) - ;(file-name (git-file-name name version)) - (file-name "Zlib_jll") - (sha256 - (base32 - "0m9n8dp4bwhkyjag1szmhz02k0bxzm4ka2ia2jh8crnd1qi8w9dz")))) - (build-system julia-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'symlink-zlib-into-artifact-directory - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((artifacts (string-append (assoc-ref outputs "out") - "/share/julia/artifacts"))) - (mkdir-p artifacts) - (symlink - (assoc-ref inputs "zlib") - ;; from git-tree-sha1 in Artifacts.toml - (string-append - artifacts - ,(match (%current-system) - ("x86_64-linux" "/7846a2956a213715c2c76632f3461cef87d9d545") - ("i686-linux" "/c8456cbd00982236828623bbc63f21b9b7b03821") - ("armhf-linux" "/748c38025b5596a5005a87ac2b9476603cf8615b") - ("aarch64-linux" "/3dd0c7cd5424c8746a1a32034ba1b10458f20b3b") - (_ "/UNSUPPORTED"))))) - #t))))) - (native-inputs - `(("zlib" ,zlib))) - (home-page "https://github.com/JuliaBinaryWrappers/Zlib_jll.jl") - (synopsis "Autogenerated package constructed using BinaryBuilder.jl") - (description "This is an autogenerated package constructed using -@url{https://github.com/JuliaPackaging/BinaryBuilder.jl, BinaryBuilder.jl}.") - (license license:expat))) - (define-public julia-packagecompiler (package (name "julia-packagecompiler") - (version "1.1.1") + (version "1.2.5") (source (origin (method git-fetch) @@ -186,7 +91,7 @@ archives in Julia.") (file-name (git-file-name name version)) (sha256 (base32 - "1s9xc17i308fdpyvkz1w6qb1h7yncdr2jgk1szfvygxd6yzkv1b4")))) + "1yyvqfix7ys3p24hyxi75r6ifyw0mplbry8rvd0vp0h77g6q357i")))) (build-system julia-build-system) (arguments `(;#:tests? #f @@ -461,21 +366,20 @@ distributed computing.") (file-name (git-file-name name version)) (sha256 (base32 - "000000000000000000000000000000000parjginwi81jbzr1vgd")))) + "1rxv9cml5r8gp0qgqdp61hqbgvv55ncyfzbim4iqfmbaj4ji9fmp")))) (build-system julia-build-system) (arguments `(;#:tests? #f - ;#:julia-package-name "PackageCompiler" )) (propagated-inputs `( ;("julia-fillarrays" ,julia-fillarrays) ;("julia-distributed" ,julia-distributed) - ;("julia-pdmats" ,julia-pdmats) + ("julia-pdmats" ,julia-pdmats) ;("julia-quadgk" ,julia-quadgk) ;("julia-specialfunctions" ,julia-specialfunctions) - ;("julia-statsbase" ,julia-statsbase) - ;("julia-statsfuns" ,julia-statsfuns) + ("julia-statsbase" ,julia-statsbase) + ("julia-statsfuns" ,julia-statsfuns) )) (home-page "https://github.com/JuliaStats/Distributions.jl") (synopsis "probability distributions and associated functions") @@ -505,8 +409,7 @@ distributed computing.") "1d4mdjc56w0hrc50qia361zfp8zapq163cqgagkbbjn0k83zp21x")))) (build-system julia-build-system) (arguments - `(;#:tests? #f ; LoadError: UndefVarError: iocapture not defined - )) + `(#:tests? #f)) ; LoadError: UndefVarError: iocapture not defined (propagated-inputs `(("julia-docstringextensions" ,julia-docstringextensions) ("julia-iocapture" ,julia-iocapture) @@ -566,48 +469,6 @@ distributed computing.") (native-inputs `()) (properties '((hidden? . #t))))) -(define-public julia-docstringextensions - (package - (name "julia-docstringextensions") - (version "0.8.4") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JuliaDocs/DocStringExtensions.jl") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1fazv87f0j6hw03frx0gqgq9qpjbddqgccm9998a3329wrrs6gwd")))) - (build-system julia-build-system) - (home-page "https://juliadocs.github.io/DocStringExtensions.jl/latest") - (synopsis "Extensions for Julia's docsystem") - (description "This package provides extensions for Julia's docsystem.") - (license license:expat))) - -(define-public julia-iocapture - (package - (name "julia-iocapture") - (version "0.2.1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JuliaDocs/IOCapture.jl") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0ajlfh8f1g23bx5f8h70nrgr0zfwxaqnpxlka8l4qhjmnfqxl43a")))) - (build-system julia-build-system) - (home-page "https://github.com/JuliaDocs/IOCapture.jl") - (synopsis "Capture standard output and error streams") - (description "Provides the @code{IOCapture.capture(f)} function, captures -the standard output and standard error, and returns it as a string, together -with the return value.") - (license license:expat))) - (define-public julia-documentermarkdown (package (name "julia-documentermarkdown") @@ -647,18 +508,14 @@ with the return value.") (base32 "02y4pm5yvg713a2pn970bbcfkrn2h133rxbxk1da18svhqw3czhi")))) (build-system julia-build-system) - (arguments - `(;#:tests? #f - ;#:julia-package-name "PackageCompiler" - )) (propagated-inputs - `( - ("julia-dataapi" ,julia-dataapi) + `(("julia-dataapi" ,julia-dataapi) ("julia-datastructures" ,julia-datastructures) - ;("julia-missings" ,julia-missings) - ("julia-sortingalgorithms" ,julia-sortingalgorithms) - ;("julia-statsapi" ,julia-statsapi) - )) + ("julia-missings" ,julia-missings) + ("julia-sortingalgorithms" ,julia-sortingalgorithms-1) + ("julia-statsapi" ,julia-statsapi))) + (native-inputs + `(("julia-stablerngs" ,julia-stablerngs))) (home-page "https://github.com/JuliaStats/StatsBase.jl") (synopsis "Basic statistics for Julia") (description "StatsBase.jl is a Julia package that provides basic support for statistics. Particularly, it implements a variety of statistics-related functions, such as scalar statistics, high-order moment computation, counting, ranking, covariances, sampling, and empirical density estimation.") @@ -693,6 +550,35 @@ with the return value.") )) )) +(define-public julia-statsbase-0.16 + (package + (inherit julia-statsbase) + (name "julia-statsbase") + (version "0.16.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaStats/StatsBase.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03lcls1hj1pvd80r5dx3hngzxdw51cffl1fyqf3nq205pvrqr1s1")))) + (arguments + `(;#:tests? #f + #:julia-package-name "StatsBase" + )) + (propagated-inputs + `( + ("julia-compat" ,julia-compat) + ;("julia-datastructures" ,julia-datastructures) + ;("julia-missings" ,julia-missings) + ;("julia-sortingalgorithms" ,julia-sortingalgorithms) + ;("julia-statsapi" ,julia-statsapi) + )) + )) + (define-public julia-dataapi (package (name "julia-dataapi") @@ -729,7 +615,7 @@ with the return value.") "1nz96sccgl6h6aknck59gmy1yrzx356kk9z68svj2g6yialprv1j")))) (build-system julia-build-system) (arguments - `(;#:tests? #f + `(#:tests? #f ; cycle with statsbase #:julia-package-name "SortingAlgorithms" )) (propagated-inputs @@ -738,7 +624,41 @@ with the return value.") )) (native-inputs `( - ;("julia-statsbase" ,julia-statsbase-0.11) + ;("julia-statsbase" ,julia-statsbase-0.16) + )) + (home-page "https://github.com/JuliaCollections/SortingAlgorithms.jl") + (synopsis "extra sorting algorithms extending Julia's sorting API") + (description "The SortingAlgorithms package provides three sorting algorithms that can be used with Julia's standard sorting API: heapsort, timsort and radixsort.") + (license license:expat))) + +(define-public julia-sortingalgorithms-1 + (package + (name "julia-sortingalgorithms") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaCollections/SortingAlgorithms.jl") + ;; Tagging releases is hard: + ;; https://github.com/JuliaCollections/SortingAlgorithms.jl/issues/41#issuecomment-840587380 + (commit "aa2b98d384ddd132aae0219e68fb63b92513cb35"))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "13zbx18psxrg4fvkqgp0m7g484vrama2xm6902bbls30801hgljg")))) + (build-system julia-build-system) + (arguments + `(#:tests? #f ; cycle with statsbase + ;#:julia-package-name "SortingAlgorithms" + )) + (propagated-inputs + `( + ("julia-datastructures" ,julia-datastructures) + )) + (native-inputs + `( + ;("julia-statsbase" ,julia-statsbase) )) (home-page "https://github.com/JuliaCollections/SortingAlgorithms.jl") (synopsis "extra sorting algorithms extending Julia's sorting API") @@ -1233,7 +1153,9 @@ with the return value.") )) (home-page "https://github.com/JuliaIO/BSON.jl") (synopsis "Binary JSON serialisation format") - (description "BSON.jl is a Julia package for working with the Binary JSON serialisation format. It can be used as a general store for Julia data structures.") + (description "@code{BSON.jl} is a Julia package for working with the Binary +JSON serialisation format. It can be used as a general store for Julia data +structures.") (license license:expat))) (define-public julia-dataframes @@ -1288,7 +1210,7 @@ with the return value.") `(("julia-orderedcollections" ,julia-orderedcollections) ("julia-unpack" ,julia-unpack))) (home-page "https://github.com/mauro3/Parameters.jl") - (synopsis " Types with default field values, keyword constructors and (un-)pack macros") + (synopsis "Types with default field values, keyword constructors and (un-)pack macros") (description "This is a package I use to handle numerical-model parameters, thus the name. However, it should be useful otherwise too.") (license license:expat))) @@ -1308,6 +1230,660 @@ with the return value.") "066v1px72zidnvhl0rczhh07rcfwvli0jx5nprrgyi1dvj3mps2a")))) (build-system julia-build-system) (home-page "https://github.com/mauro3/UnPack.jl") - (synopsis "`@pack` and `@unpack` macros") - (description "The @unpack and @pack! macros work to unpack types, modules, and dictionaries (and can be customized for other types too, see next section).") + (synopsis "Pack and Unpack macros for Julia") + (description "The @code{@@unpack} and @code{@@pack!} macros work to unpack +types, modules, and dictionaries.") + (license license:expat))) + +;; TODO: unbundle javascript calls to cdn.jsdelivr.net +(define-public julia-pluto + (package + (name "julia-pluto") + (version "0.14.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fonsp/Pluto.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dvgrj0likniafs06hrwfndbshqr5khdqdyylganc1m81652rz5x")))) + (build-system julia-build-system) + (arguments + `(#:tests? #f)) ; Many tests need network connectivity or a browser. + (propagated-inputs + `(("julia-configurations" ,julia-configurations) + ("julia-fuzzycompletions" ,julia-fuzzycompletions) + ("julia-http" ,julia-http) + ("julia-msgpack" ,julia-msgpack) + ("julia-tableiointerface" ,julia-tableiointerface))) + (home-page "https://github.com/fonsp/Pluto.jl") + (synopsis "Simple reactive notebooks for Julia") + (description "A Pluto notebook is made up of small blocks of Julia code +(cells) and together they form a reactive notebook. When you change a variable, +Pluto automatically re-runs the cells that refer to it. Cells can even be +placed in arbitrary order - intelligent syntax analysis figures out the +dependencies between them and takes care of execution.") + (license license:expat))) + +(define-public julia-plutoui + (package + (name "julia-plutoui") + (version "0.7.9") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fonsp/PlutoUI.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0p159b4m0nxbz36ll5kf082vb806n2f26ma145pbhp749aldzplp")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-json" ,julia-json) + ("julia-reexport" ,julia-reexport) + ("julia-suppressor" ,julia-suppressor))) + (home-page "https://github.com/fonsp/PlutoUI.jl") + (synopsis "Helper package for Julia Pluto") + (description "A tiny package to make html\"<input>\" a bit more Julian. Use +it with the @code{@@bind} macro in Pluto.") + (license license:expat))) + +(define-public julia-configurations + (package + (name "julia-configurations") + (version "0.15.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Roger-luo/Configurations.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dz1h64nqgcv6ai70pfv2dv4mqx9rqmh08196k7j73bqlc6r00w1")))) + (build-system julia-build-system) + (arguments + `(#:tests? #f)) ; cannot find test/option.toml + (propagated-inputs + `(("julia-crayons" ,julia-crayons) + ("julia-exproniconlite" ,julia-exproniconlite) + ("julia-orderedcollections" ,julia-orderedcollections) + ("julia-toml" ,julia-toml))) + (home-page "https://configurations.rogerluo.dev/stable") + (synopsis "Options & Configurations made easy") + (description "Configurations is a Julia Language package.") + (license license:expat))) + +;; XXX: Part of base Julia as of 1.6+ +(define-public julia-toml + (package + (name "julia-toml") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaLang/TOML.jl") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "15qmgy3jpyw6h938kg2fc9h896rbskdjgaimj118p3mg4mln4gci")))) + (build-system julia-build-system) + (home-page "https://github.com/JuliaLang/TOML.jl") + (synopsis "TOML parser for TOML 1.0 written in Julia") + (description "TOML v1.0.0 parser for Julia.") + (license license:expat))) + +(define-public julia-expronicon + (package + (name "julia-expronicon") + (version "0.6.9") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Roger-luo/Expronicon.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0lbzfn1li2ph02z6hl5286bj6bf17g63vfp6qn4cz40d760fcw8a")))) + (build-system julia-build-system) + (arguments + `(;#:tests? #f + )) + (propagated-inputs + `( + ;("julia-mlstyle" ,julia-mlstyle) + )) + (home-page "https://expronicon.rogerluo.dev/") + (synopsis "Collective tools for metaprogramming on Julia Expr") + (description "Collective tools for metaprogramming on Julia Expr.") + (license license:expat))) + +(define-public julia-exproniconlite + (package + (name "julia-exproniconlite") + (version "0.6.8") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Roger-luo/ExproniconLite.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02zm5r3fi7zx4fnr2ikxpapb9rvmnqvklrfyd4j9418q1mryh04l")))) + (build-system julia-build-system) + (native-inputs + `(("julia-documenter" ,julia-documenter))) + (home-page "https://expronicon.rogerluo.dev/") + (synopsis "Collective tools for metaprogramming on Julia Expr") + (description "no fancy pattern matching, no dependencies, Light-weight Expronicon for low latency. + + this package is generated by Expronicon, please refer to Expronicon for any issues") + (license license:expat))) + +(define-public julia-crayons + (package + (name "julia-crayons") + (version "4.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/KristofferC/Crayons.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0v3zhjlnb2914bxcj4myl8pgb7m31p77aj2k1bckmqs96jdph10z")))) + (build-system julia-build-system) + (home-page "https://github.com/KristofferC/Crayons.jl") + (synopsis "Colored and styled strings for terminals") + (description "Crayons is a package that makes it simple to write strings in different colors and styles to terminals. It supports the 16 system colors, both the 256 color and 24 bit true color extensions, and the different text styles available to terminals.") + (license license:expat))) + +(define-public julia-fuzzycompletions + (package + (name "julia-fuzzycompletions") + (version "0.4.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JunoLab/FuzzyCompletions.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07sv88c472n6w4x7diy952igbcfm1s104ysnnvprld83312siw06")))) + (build-system julia-build-system) + (home-page "https://github.com/JunoLab/FuzzyCompletions.jl") + (synopsis "Fuzzy completion provider for Julia") + (description "FuzzyCompletions provides fuzzy completions for a Julia runtime session.") + (license license:expat))) + +(define-public julia-tableiointerface + (package + (name "julia-tableiointerface") + (version "0.1.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/lungben/TableIOInterface.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0p2fi9jbyfg2j6rysv4if7dx8qw2mssb04i75j1zq607j8707kvn")))) + (build-system julia-build-system) + (home-page "https://github.com/lungben/TableIOInterface.jl") + (synopsis "File formats based on file extensions") + (description "Tiny package for determination of tabular file formats based on file extensions. + + It is intended to be the base both for TableIO.jl and for the Pluto.jl tabular data import functionality.") + (license license:expat))) + +(define-public julia-tables + (package + (name "julia-tables") + (version "1.4.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaData/Tables.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1q0wh4031zdp40k44jaix19pzy6cnwsa2p0zfz6799jbyqkg4kr1")))) + (build-system julia-build-system) + (arguments + `(;#:tests? #f + )) + (propagated-inputs + `( + ("julia-dataapi" ,julia-dataapi) + ("julia-datavalueinterfaces" ,julia-datavalueinterfaces) + ("julia-datavalues" ,julia-datavalues) + ("julia-tabletraits" ,julia-tabletraits) + ("julia-queryoperators" ,julia-queryoperators) + )) + (native-inputs + `( + ;("julia-imagemagick" ,julia-imagemagick) + )) + (home-page "https://github.com/JuliaData/Tables.jl") + (synopsis "Interface for tables in Julia") + (description "The Tables.jl package provides simple, yet powerful interface functions for working with all kinds tabular data.") + (license license:expat))) + +(define-public julia-datavalueinterfaces + (package + (name "julia-datavalueinterfaces") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/queryverse/DataValueInterfaces.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0g2wj6q7jj956nx6g7dk8x7w1c4l2xcmnr1kq5x8s8fild9kslg8")))) + (build-system julia-build-system) + (home-page "https://github.com/queryverse/DataValueInterfaces.jl") + (synopsis "") + (description "This package allows a few \"forward\" definitions for the DataValues.jl package that other packages can utilize for integration without having to take direct dependencies.") + (license license:expat))) + +(define-public julia-tabletraits + (package + (name "julia-tabletraits") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/queryverse/TableTraits.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "08ssb2630wm6j8f2qa985mn2vfibfm5kjcn4ayl2qkhfcyp8daw4")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-iteratorinterfaceextensions" ,julia-iteratorinterfaceextensions))) + (home-page "https://github.com/queryverse/TableTraits.jl") + (synopsis "Traits for julia tables") + (description "TableTraits defines a generic interface for tabular data.") + (license license:expat))) + +(define-public julia-iteratorinterfaceextensions + (package + (name "julia-iteratorinterfaceextensions") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/queryverse/IteratorInterfaceExtensions.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1slpay1dhja8f9gy6z7b3psgvgcknn963dvfqqakvg1grk9ppa09")))) + (build-system julia-build-system) + (home-page "https://github.com/queryverse/IteratorInterfaceExtensions.jl") + (synopsis "Traits for julia iterators") + (description "IteratorInterfaceExtensions defines a small number of extensions to the iterator interface.") + (license license:expat))) + +(define-public julia-datavalues + (package + (name "julia-datavalues") + (version "0.4.13") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/queryverse/DataValues.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "15j3hrqq6nazn533bfsvg32xznacbzsl303j1qs48av59ppnvhhv")))) + (build-system julia-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'skip-known-failing-tests + (lambda _ + ;; See upstream report: + ;; https://github.com/queryverse/DataValues.jl/issues/83 + (substitute* "test/array/test_reduce.jl" + ((".*DataValue\\(mapreduce.*") "") + ((".*DataValue\\(method\\(f.*") "")) + #t))))) + (propagated-inputs + `(("julia-datavalueinterfaces" ,julia-datavalueinterfaces))) + (home-page "https://github.com/queryverse/DataValues.jl") + (synopsis "Missing values for julia") + (description "This package provides the type DataValue that is used to represent missing data.") + (license license:expat))) + +(define-public julia-queryoperators + (package + (name "julia-queryoperators") + (version "0.9.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/queryverse/QueryOperators.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "06zm4cbn3x49lbpgshhdfvvmgz066qkc8q0d57igm5p8bcp6js22")))) + (build-system julia-build-system) + (arguments + `(;#:tests? #f + )) + (propagated-inputs + `( + ("julia-datastructures" ,julia-datastructures) + ("julia-iteratorinterfaceextensions" ,julia-iteratorinterfaceextensions) + ("julia-tableshowutils" ,julia-tableshowutils) + )) + (native-inputs + `( + ;("julia-imagemagick" ,julia-imagemagick) + )) + (home-page "https://github.com/queryverse/QueryOperators.jl") + (synopsis "Query operators for julia") + (description "This package contains the underlying query operators that are exposed to users in Query.jl.") + (license license:expat))) + +(define-public julia-tableshowutils + (package + (name "julia-tableshowutils") + (version "0.2.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/queryverse/TableShowUtils.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x1ivz35xbc38x4zm720a6wycqb5gl8dfsxz83ss5gc5rdrcxm2j")))) + (build-system julia-build-system) + (arguments + `(#:julia-package-name "TableShowUtils")) + (propagated-inputs + `(("julia-datavalues" ,julia-datavalues) + ("julia-json" ,julia-json))) + (home-page "https://github.com/queryverse/TableShowUtils.jl") + (synopsis "helpers for implementing show for TableTraits.jl types") + (description "This package provides some common helper functions that make it easier to implement various Base.show functions for types that participate in the TableTraits.jl ecosystem.") + (license license:expat))) + +(define-public julia-missings + (package + (name "julia-missings") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaData/Missings.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "131ma44yvswvj85jdjhm37frzfz46cc60lwj65a9jcmgc77dshsm")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-dataapi" ,julia-dataapi))) + (home-page "https://github.com/JuliaData/Missings.jl") + (synopsis "Missing value support for Julia") + (description "Part of Julia since 1.0") + (license license:expat))) + +(define-public julia-statsapi + (package + (name "julia-statsapi") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com.cnpmjs.org/JuliaStats/StatsAPI.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1k1c3s7i5wzkz4r9fyy4gd7wb97p0qgbc7bmaajm16zqipfmy2bv")))) + (build-system julia-build-system) + (home-page "https://juliastats.org/") + (synopsis "Statistics-focused namespace for packages to share functions") + (description "This package provides a namespace for data-related generic function definitions to solve the optional dependency problem; packages wishing to share and/or extend functions can avoid depending directly on each other by moving the function definition to StatsAPI.jl and each package taking a dependency on it.") + (license license:expat))) + +(define-public julia-stablerngs + (package + (name "julia-stablerngs") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaRandom/StableRNGs.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1cw4wc38qbgmrrx0jjwjhynnarrzjkh0yyz242zj272brbci7p1r")))) + (build-system julia-build-system) + (home-page "https://github.com/JuliaRandom/StableRNGs.jl") + (synopsis "Julia RNG with stable streams") + (description "This package intends to provide a simple RNG with stable streams, suitable for tests in packages which need reproducible streams of random numbers across Julia versions. Indeed, the Julia RNGs provided by default are documented to have non-stable streams (which for example enables some performance improvements).") + (license license:expat))) + +(define-public julia-pdmats + (package + (name "julia-pdmats") + (version "0.11.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaStats/PDMats.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1gyhfjmb0qlqgx2398b356cph25bnpjagcslckv41bzyf8pg3ybl")))) + (build-system julia-build-system) + (home-page "https://github.com/JuliaStats/PDMats.jl") + (synopsis "Uniform Interface for positive definite matrices of various structures") + (description "PDMats.jl supports efficient computation on positive definite matrices of various structures. In particular, it provides uniform interfaces to use positive definite matrices of various structures for writing generic algorithms, while ensuring that the most efficient implementation is used in actual computation.") + (license license:expat))) + +(define-public julia-statsfuns + (package + (name "julia-statsfuns") + (version "0.9.8") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaStats/StatsFuns.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1zl46p9gbx9xkjnnpd45csshqvq2i94mxw10karpr8xkx8msyk3k")))) + (build-system julia-build-system) + (propagated-inputs + `( + ("julia-logexpfunctions" ,julia-logexpfunctions) + ("julia-rmath" ,julia-rmath) + ("julia-specialfunctions" ,julia-specialfunctions) + )) + (home-page "https://github.com/JuliaStats/StatsFuns.jl") + (synopsis "Mathematical functions related to statistics") + (description "This package provides a collection of mathematical constants and numerical functions for statistical computing.") + (license license:expat))) + +(define-public julia-logexpfunctions + (package + (name "julia-logexpfunctions") + (version "0.2.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaStats/LogExpFunctions.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1dv4ghd23f96276wcc9ibkazbgx0y0xkr8na6z82r3b786vz974a")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-docstringextensions" ,julia-docstringextensions))) + (native-inputs + `(("julia-offsetarrays" ,julia-offsetarrays))) + (home-page "https://github.com/JuliaStats/LogExpFunctions.jl") + (synopsis "special functions based on `log` and `exp`") + (description "Various special functions based on log and exp moved from StatsFuns.jl into a separate package, to minimize dependencies. These functions only use native Julia code, so there is no need to depend on librmath or similar libraries.") + (license license:expat))) + +(define-public rmath-julia + (package + (name "rmath-julia") + (version "0.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaStats/Rmath-julia") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "11a6h3wwmpnb2d55pkm6av111b3pxlvxfnbz8b0n77afpllgb8j2")))) + (build-system julia-build-system) + (arguments + `(#:tests? #f ; Test not defined, tests not often run upstream. + #:phases + (modify-phases %standard-phases + (delete 'precompile) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "julia" "test.jl")) + #t)) + (add-before 'install 'build + (lambda _ + (invoke "make"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "src/libRmath-julia.so" (string-append out "/lib")) + #t)))))) + (home-page "https://github.com/JuliaStats/Rmath-julia") + (synopsis "Rmath library from R") + (description "This is a slightly modified version of the standalone Rmath library from R, built to be used with the Rmath.jl Julia package. + + The main difference is that it is built to allow defining custom random number generating functions via C function pointers (see include/callback.h). When using the library, these should be defined before calling any of the random functions.") + (properties '((hidden? . #t))) + (license license:gpl2))) + +(define-public julia-rmath + (package + (name "julia-rmath") + (version "0.7.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaStats/Rmath.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0cam16ff4v2fl7c9j1wx2ahgjhwba9mk2q6qv3zdknnnqj6w664s")))) + (build-system julia-build-system) + (arguments + `(;#:tests? #f ; Test not defined + #:phases + (modify-phases %standard-phases + ;(add-after 'unpack 'patch-source + ; (lambda _ + ; ;; see upstream julia bug + ; (substitute* "src/Rmath.jl" + ; (("libRmath\\)") "libRmath_path)")) + ; #t)) + ) + )) + (propagated-inputs + `( + ("julia-rmath-jll" ,julia-rmath-jll) + )) + (native-inputs + `( + ;("julia-offsetarrays" ,julia-offsetarrays) + )) + (home-page "https://github.com/JuliaStats/Rmath.jl") + (synopsis "functions that emulate R's d-p-q-r functions for probability distributions") + (description " + + Archive of functions that emulate R's d-p-q-r functions for probability distributions.") + (license license:expat))) + +(define-public julia-rmath-jll + (package + (name "julia-rmath-jll") + (version "0.3.0+0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaBinaryWrappers/Rmath_jll.jl") + (commit (string-append "Rmath-v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1idshxhj60bvra4i1xxpyh2prx1lq9nfrvlc47b68jixfpfkxrlg")))) + (build-system julia-build-system) + (arguments + '(#:tests? #f ; no runtests + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'override-binary-path + (lambda* (#:key inputs #:allow-other-keys) + (map + (lambda (wrapper) + (substitute* wrapper + (("generate_wrapper_header.*") + (string-append + "generate_wrapper_header(\"Rmath\", \"" + (assoc-ref inputs "rmath") "\")\n")))) + ;; There's a Julia file for each platform, override them all + (find-files "src/wrappers/" "\\.jl$"))))))) + (inputs + `(("rmath" ,rmath-julia))) + (propagated-inputs + `(("julia-jllwrappers" ,julia-jllwrappers))) + (home-page "https://github.com/JuliaBinaryWrappers/Rmath_jll.jl") + (synopsis "Rmath library wrappers") + (description "This package provides a wrapper for Rmath.") (license license:expat))) |