diff options
Diffstat (limited to 'gnu/packages/julia-xyz.scm')
-rw-r--r-- | gnu/packages/julia-xyz.scm | 1334 |
1 files changed, 919 insertions, 415 deletions
diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm index 38a82c7de2..816ca9c85b 100644 --- a/gnu/packages/julia-xyz.scm +++ b/gnu/packages/julia-xyz.scm @@ -23,13 +23,8 @@ #:use-module (guix packages) #:use-module (guix git-download) #:use-module (guix build-system julia) - #:use-module (gnu packages compression) #:use-module (gnu packages gcc) - #:use-module (gnu packages image) - #:use-module (gnu packages imagemagick) - #:use-module (gnu packages maths) - #:use-module (gnu packages tls) - #:use-module (gnu packages web)) + #:use-module (gnu packages julia-jll)) (define-public julia-abstractffts (package @@ -121,6 +116,30 @@ be GPU compatible without throwing away the wrapper.") provides functions to run a few automatable checks for Julia packages.") (license license:expat))) +(define-public julia-arraylayouts + (package + (name "julia-arraylayouts") + (version "0.7.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaMatrices/ArrayLayouts.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "01725v4jp8h8zwn85splw907r206h1hnp205pchmzjin7h4659xz")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-fillarrays" ,julia-fillarrays))) + (home-page "https://github.com/JuliaMatrices/ArrayLayouts.jl") + (synopsis "Array layouts and general fast linear algebra") + (description "This package implements a trait-based framework for describing +array layouts such as column major, row major, etc. that can be dispatched to +appropriate BLAS or optimised Julia linear algebra routines. This supports a +much wider class of matrix types than Julia's in-built @code{StridedArray}.") + (license license:expat))) + (define-public julia-benchmarktools (package (name "julia-benchmarktools") @@ -309,6 +328,31 @@ between colors, simulating color blindness, parsing colors, and generating color scales for graphics.") (license license:expat))) +(define-public julia-colorschemes + (package + (name "julia-colorschemes") + (version "3.12.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaGraphics/ColorSchemes.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "08k39hbdf3jn0001f7qxa99xvagrnh9764911hs6cmxkvp061sa4")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-colors" ,julia-colors) + ("julia-colortypes" ,julia-colortypes) + ("julia-fixedpointnumbers" ,julia-fixedpointnumbers) + ("julia-staticarrays" ,julia-staticarrays))) + (home-page "https://github.com/JuliaGraphics/ColorSchemes.jl") + (synopsis "Colorschemes, colormaps, gradients, and palettes") + (description "This package provides a collection of colorschemes.") + (license license:expat))) + (define-public julia-colortypes (package (name "julia-colortypes") @@ -379,50 +423,6 @@ provides a macro that lets you use the latest syntax in a backwards-compatible way.") (license license:expat))) -;;; TODO: Remove this autogenerated source package -;;; and build it from realse source using <https://github.com/JuliaPackaging/Yggdrasil/> -(define-public julia-compilersupportlibraries-jll - (package - (name "julia-compilersupportlibraries-jll") - (version "0.4.0+1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/CompilerSupportLibraries_jll.jl") - (commit (string-append "CompilerSupportLibraries-v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "03j6xdvps259mhdzpjqf41l65w2l9sahvxg4wrp34hcf69wkrzpy")))) - (build-system julia-build-system) - (arguments - `(#:tests? #f ; no runtests.jl - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'override-binary-path - (lambda* (#:key inputs #:allow-other-keys) - (map - (lambda (wrapper) - (substitute* wrapper - (("generate_wrapper_header.*") - (string-append - "generate_wrapper_header(\"CompilerSupportLibraries\", \"" - (assoc-ref inputs "gfortran:lib") "\")\n")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$")) - #t))))) - (inputs ;required by artifacts - `(("gfortran:lib" ,gfortran "lib"))) - (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers))) - (home-page "https://github.com/JuliaBinaryWrappers/CompilerSupportLibraries_jll.jl") - (synopsis "Internal wrappers") - (description "This package provides compiler support for libraries. It is -an autogenerated source package constructed using @code{BinaryBuilder.jl}. The -originating @code{build_tarballs.jl} script can be found on the community -build tree Yggdrasil.") - (license license:expat))) - (define-public julia-constructionbase (package (name "julia-constructionbase") @@ -465,6 +465,29 @@ both the 256 color and 24 bit true color extensions, and the different text styles available to terminals.") (license license:expat))) +(define-public julia-dataapi + (package + (name "julia-dataapi") + (version "1.6.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaData/DataAPI.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "14sfvkz169zcbap3gdwpj16qsap783h86fd07flfxk822abam11w")))) + (build-system julia-build-system) + (home-page "https://github.com/JuliaData/DataAPI.jl") + (synopsis "Data-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 DataAPI.jl and each package taking a +dependency on it.") + (license license:expat))) + (define-public julia-datastructures (package (name "julia-datastructures") @@ -489,6 +512,82 @@ including, @code{CircularBuffer}, @code{Queue}, @code{Stack}, @code{Accumulators}, @code{LinkedLists}, @code{SortedDicts} and many others.") (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 "Interface for DataValues.jl") + (description "This package allows a few \"forward\" definitions for the +@code{DataValues.jl} package that other packages can utilize for integration +without having to take direct dependencies.") + (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 @code{DataValue} that is used +to represent missing data.") + (license license:expat))) + +(define-public julia-dictionaries + (package + (name "julia-dictionaries") + (version "0.3.8") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/andyferris/Dictionaries.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1j88f6qa5hqm64n5q3jy08a02gwp7by401s03n5x7575p58iqqh2")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-indexing" ,julia-indexing))) + (home-page "https://github.com/andyferris/Dictionaries.jl") + (synopsis "Alternative interface for dictionaries in Julia") + (description "This package provides an alternative interface for +dictionaries in Julia, for improved productivity and performance.") + (license license:expat))) + (define-public julia-docstringextensions (package (name "julia-docstringextensions") @@ -599,6 +698,51 @@ stressing the robustness of differentiation tools.") (description "This package provides various examples.") (license license:expat)))) +(define-public julia-exprtools + (package + (name "julia-exprtools") + (version "0.1.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/invenia/ExprTools.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1lwxi9fx9farf1jdv42gv43xs3f3i3js2xnvr5gf6d0xfx0g6b6a")))) + (build-system julia-build-system) + (home-page "https://github.com/invenia/ExprTools.jl") + (synopsis "Light-weight expression manipulation tools") + (description "@code{ExprTools} provides tooling for working with Julia +expressions during metaprogramming. This package aims to provide light-weight +performant tooling without requiring additional package dependencies.") + (license license:expat))) + +(define-public julia-ffmpeg + (package + (name "julia-ffmpeg") + (version "0.4.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaIO/FFMPEG.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1kwqixwhnnxs59xsw2k44xxnkx5fn4y49g58l5snfbszycxq7lls")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-ffmpeg-jll" ,julia-ffmpeg-jll) + ("julia-x264-jll" ,julia-x264-jll))) + (home-page "https://github.com/JuliaIO/FFMPEG.jl") + (synopsis "Julia Package for ffmpeg") + (description "This package is made to be included into packages that just +need the ffmpeg binaries + executables, and don't want the overhead of +@code{VideoIO.jl}.") + (license license:expat))) + (define-public julia-fillarrays (package (name "julia-fillarrays") @@ -684,6 +828,26 @@ scaled by a constant factor. Consequently, they have a fixed number of digits (bits) after the decimal (radix) point.") (license license:expat))) +(define-public julia-formatting + (package + (name "julia-formatting") + (version "0.4.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaIO/Formatting.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0ma3q9my51rr38bb5712xkc4h3rq0wsfjb4ac6mdh9ywn8rqvrmh")))) + (build-system julia-build-system) + (home-page "https://github.com/JuliaIO/Formatting.jl") + (synopsis "Julia package to provide Python-like formatting support") + (description "This package offers Python-style general formatting and +c-style numerical formatting.") + (license license:expat))) + (define-public julia-forwarddiff (package (name "julia-forwarddiff") @@ -716,6 +880,49 @@ functions (or any callable object, really) using forward mode automatic differentiation (AD).") (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-graphics + (package + (name "julia-graphics") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaGraphics/Graphics.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "10h1s09v7qkvrjr6l678zamb1p248n8jv4rrwkf8g7d2bpfz9amn")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-colors" ,julia-colors) + ("julia-nanmath" ,julia-nanmath))) + (home-page "https://github.com/JuliaGraphics/Graphics.jl") + (synopsis "Base graphics in Julia") + (description "@code{Graphics.jl} is an abstraction layer for graphical +operations in Julia.") + (license license:expat))) + (define-public julia-gumbo (package (name "julia-gumbo") @@ -739,45 +946,6 @@ differentiation (AD).") library for parsing HTML.") (license license:expat))) -(define-public julia-gumbo-jll - (package - (name "julia-gumbo-jll") - (version "0.10.1+1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/Gumbo_jll.jl") - (commit (string-append "Gumbo-v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "00a182x5hfpjzyvrxdn8wh4h67q899p5dzqp19a5s22si4g41k76")))) - (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) - (let ((gumbo (string-append (assoc-ref inputs "gumbo-parser")))) - (for-each - (lambda (wrapper) - (substitute* wrapper - (("(const libgumbo = )\"(.*)\"" all const libname) - (string-append const "\"" gumbo "/lib/" libname "\"\n")) - (("(global artifact_dir =).*" all m) - (string-append m " \"" gumbo "\"")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$")))))))) - (inputs - `(("gumbo-parser" ,gumbo-parser))) - (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers))) - (home-page "https://github.com/JuliaBinaryWrappers/Gumbo_jll.jl") - (synopsis "Gumbo HTML parsing library wrappers") - (description "This package provides a wrapper for Gumbo HTML parsing library.") - (license license:expat))) - (define-public julia-http (package (name "julia-http") @@ -856,47 +1024,52 @@ implementing both a client and a server.") conditional ifelse. It is similar to @code{Core.ifelse} but it is extendable.") (license license:expat))) -(define-public julia-imagemagick-jll +(define-public julia-indexing (package - (name "julia-imagemagick-jll") - (version "6.9.10-12+3") + (name "julia-indexing") + (version "1.1.1") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/ImageMagick_jll.jl") - (commit (string-append "ImageMagick-v" version)))) + (url "https://github.com/andyferris/Indexing.jl") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "1a0vnnjl52yqi7jgpr0dmx5ah5nlpylv5hc8aw2l89b9f36ff8jg")))) + (base32 "1s7bz5aaj9sx753pcaixq83jgbk33adxgybpinjgzb9lzdv1ddgx")))) (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 - ;; Make sure we match the current library. - (("libMagickWand-6.Q16.so.6") "libMagickWand-6.Q16.so.7") - (("artifact\"ImageMagick\"") - (string-append "\"" (assoc-ref inputs "imagemagick") "\"")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$"))))))) - (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers) - ("julia-jpegturbo-jll" ,julia-jpegturbo-jll) - ("julia-libpng-jll" ,julia-libpng-jll) - ("julia-libtiff-jll" ,julia-libtiff-jll) - ("julia-zlib-jll" ,julia-zlib-jll))) - (inputs - `(("imagemagick" ,imagemagick))) - (home-page "https://github.com/JuliaBinaryWrappers/ImageMagick_jll.jl") - (synopsis "Imagemagick library wrappers") - (description "This package provides a wrapper for Imagemagick.") + (home-page "https://github.com/andyferris/Indexing.jl") + (synopsis "Generalized indexing for Julia") + (description "This package defines functions for getting multiple indices +out of dictionaries, tuples, etc, extending this ability beyond +@code{AbstractArray}.") + (license license:expat))) + +(define-public julia-indirectarrays + (package + (name "julia-indirectarrays") + (version "0.5.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaArrays/IndirectArrays.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0l0jq0jnr9z3k431ni82xycq7mqapgxrbrx4yyk6lycvi41ipm4s")))) + (build-system julia-build-system) + (native-inputs + `(("julia-colors" ,julia-colors) + ("julia-fixedpointnumbers" ,julia-fixedpointnumbers) + ("julia-mappedarrays" ,julia-mappedarrays))) + (home-page "https://github.com/JuliaArrays/IndirectArrays.jl") + (synopsis "Julia implementation of indexed arrays") + (description "An @code{IndirectArray} is one that encodes data using a +combination of an @code{index} and a @code{value} table. Each element is +assigned its own index, which is used to retrieve the value from the +@code{value} table. Among other uses, @code{IndirectArrays} can represent +indexed images, sometimes called \"colormap images\" or \"paletted images.\"") (license license:expat))) (define-public julia-inifile @@ -919,6 +1092,29 @@ conditional ifelse. It is similar to @code{Core.ifelse} but it is extendable.") interfaces with @file{.ini} files.") (license license:expat))) +(define-public julia-invertedindices + (package + (name "julia-invertedindices") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mbauman/InvertedIndices.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1179z20yxnkyziip7gn26wr1g3k3ssl1ci7pig3khc900f62di46")))) + (build-system julia-build-system) + (native-inputs + `(("julia-offsetarrays" ,julia-offsetarrays))) + (home-page "https://github.com/mbauman/InvertedIndices.jl") + (synopsis "Index type that allows for inverted selections") + (description "This package just exports one type: the @code{InvertedIndex}, +or @code{Not} for short. It can wrap any supported index type and may be used +as an index into any @code{AbstractArray} subtype, including OffsetArrays.") + (license license:expat))) + (define-public julia-iocapture (package (name "julia-iocapture") @@ -966,84 +1162,24 @@ external IRs. It can be used with Julia metaprogramming tools such as Cassette.") (license license:expat))) -(define-public julia-jllwrappers - (package - (name "julia-jllwrappers") - (version "1.3.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JuliaPackaging/JLLWrappers.jl") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0v7xhsv9z16d657yp47vgc86ggc01i1wigqh3n0d7i1s84z7xa0h")))) - (arguments - ;; Wants to download stuff - '(#:tests? #f - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'custom-override-path - (lambda* (#:key inputs #:allow-other-keys) - ;; Make @generate_wrapper_header take an optional argument that - ;; guix packagers can pass to override the default "override" - ;; binary path. This won't be needed when something like - ;; https://github.com/JuliaPackaging/JLLWrappers.jl/pull/27 - ;; will be merged. - (substitute* "src/wrapper_generators.jl" - (("generate_wrapper_header.*") - "generate_wrapper_header(src_name, override_path = nothing)\n") - (("pkg_dir = .*" all) - (string-append - all "\n" "override = something(override_path," - "joinpath(dirname(pkg_dir), \"override\"))\n")) - (("@static if isdir.*") "@static if isdir($override)\n") - (("return joinpath.*") "return $override\n")) - #t))))) - (build-system julia-build-system) - (home-page "https://github.com/JuliaPackaging/JLLWrappers.jl") - (synopsis "Julia macros used by JLL packages") - (description "This package contains Julia macros that enable JLL packages -to generate themselves. It is not intended to be used by users, but rather is -used in autogenerated packages via @code{BinaryBuilder.jl}.") - (license license:expat))) - -(define-public julia-jpegturbo-jll +(define-public julia-iteratorinterfaceextensions (package - (name "julia-jpegturbo-jll") - (version "2.0.1+2") + (name "julia-iteratorinterfaceextensions") + (version "1.0.0") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/JpegTurbo_jll.jl") - (commit (string-append "JpegTurbo-v" version)))) + (url "https://github.com/queryverse/IteratorInterfaceExtensions.jl") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "1xp1x0hrj337bgwwffwpyq7xg031j2a38fim29lixqa0a0y80x6y")))) + (base32 "1slpay1dhja8f9gy6z7b3psgvgcknn963dvfqqakvg1grk9ppa09")))) (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 - (("artifact\"JpegTurbo\"") - (string-append "\"" (assoc-ref inputs "libjpeg-turbo") "\"")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$"))))))) - (inputs - `(("libjpeg-turbo" ,libjpeg-turbo))) - (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers))) - (home-page "https://github.com/JuliaBinaryWrappers/JpegTurbo_jll.jl") - (synopsis "Libjpeg-turbo library wrappers") - (description "This package provides a wrapper for the libjpeg-turbo library.") + (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-json @@ -1071,103 +1207,90 @@ used in autogenerated packages via @code{BinaryBuilder.jl}.") and printing JSON documents.") (license license:expat))) -(define-public julia-libpng-jll +(define-public julia-macrotools (package - (name "julia-libpng-jll") - (version "1.6.37+5") + (name "julia-macrotools") + (version "0.5.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/FluxML/MacroTools.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0k4z2hyasd9cwxf4l61zk3w4ajs44k69wx6z1ghdn8f5p8xy217f")))) + (build-system julia-build-system) + (home-page "https://fluxml.ai/MacroTools.jl") + (synopsis "Tools for working with Julia code and expressions") + (description "This library provides tools for working with Julia code and +expressions. This includes a template-matching system and code-walking tools +that let you do deep transformations of code.") + (license license:expat))) + +(define-public julia-mappedarrays + (package + (name "julia-mappedarrays") + (version "0.4.0") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/LibPNG_jll.jl") - (commit (string-append "libpng-v" version)))) + (url "https://github.com/JuliaArrays/MappedArrays.jl") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "10azxv26j8r193dg9i9x7ajm3frhwbhj8zzi40fj59fxm81xz6dx")))) + (base32 "0l5adird8m1cmnsxwhzi5hcr7q9bm1rf7a6018zc7kcn2yxdshy3")))) (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 - (("artifact\"libpng\"") - (string-append "\"" (assoc-ref inputs "libpng") "\"")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$"))))))) - (inputs - `(("libpng" ,libpng))) (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers) - ("julia-zlib-jll" ,julia-zlib-jll))) - (home-page "https://github.com/JuliaBinaryWrappers/LibPNG_jll.jl") - (synopsis "Libpng library wrappers") - (description "This package provides a wrapper for the libpng library.") + `(("julia-fixedpointnumbers" ,julia-fixedpointnumbers))) + (native-inputs + `(("julia-colortypes" ,julia-colortypes) + ("julia-fixedpointnumbers" ,julia-fixedpointnumbers) + ("julia-offsetarrays" ,julia-offsetarrays))) + (home-page "https://github.com/JuliaArrays/MappedArrays.jl") + (synopsis "Lazy in-place transformations of arrays") + (description "This package implements \"lazy\" in-place elementwise +transformations of arrays for the Julia programming language. Explicitly, it +provides a \"view\" M of an array A so that @code{M[i] = f(A[i])} for a +specified (but arbitrary) function f, without ever having to compute M +explicitly (in the sense of allocating storage for M). The name of the package +comes from the fact that @code{M == map(f, A)}.") (license license:expat))) -(define-public julia-libtiff-jll +(define-public julia-matrixfactorizations (package - (name "julia-libtiff-jll") - (version "4.1.0+1") + (name "julia-matrixfactorizations") + (version "0.8.3") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/Libtiff_jll.jl") - (commit (string-append "Libtiff-v" version)))) + (url "https://github.com/JuliaMatrices/MatrixFactorizations.jl") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "07zzhmwmh2g4645ghv76z40hza2ghlb7sw15b1pii7f9kfcsgf45")))) + (base32 "14c6w1vhyf4pi4454pdp6ryczsxn9pgjg99fg9bkdj03xg5fsxb8")))) (build-system julia-build-system) (arguments - '(#:tests? #f ; no runtests - #:phases + `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'override-binary-path - (lambda* (#:key inputs #:allow-other-keys) - (map - (lambda (wrapper) - (substitute* wrapper - (("artifact\"Libtiff\"") - (string-append "\"" (assoc-ref inputs "libtiff") "\"")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$"))))))) - (inputs - `(("libtiff" ,libtiff))) + (add-after 'unpack 'skip-failing-test + (lambda _ + ;; Tests with math functions are hard. + (substitute* "test/test_ul.jl" + (("@test @inferred\\(logdet") "@test @test_nowarn(logdet") + ;; Also skip the REPL test. + (("test String") "test_nowarn String")) + #t))))) (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers) - ("julia-jpegturbo-jll" ,julia-jpegturbo-jll) - ("julia-zlib-jll" ,julia-zlib-jll) - ("julia-zstd-jll" ,julia-zstd-jll))) - (home-page "https://github.com/JuliaBinaryWrappers/Libtiff_jll.jl") - (synopsis "Libtiff library wrappers") - (description "This package provides a wrapper for libtiff") - (license license:expat))) - -(define-public julia-macrotools - (package - (name "julia-macrotools") - (version "0.5.6") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/FluxML/MacroTools.jl") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0k4z2hyasd9cwxf4l61zk3w4ajs44k69wx6z1ghdn8f5p8xy217f")))) - (build-system julia-build-system) - (home-page "https://fluxml.ai/MacroTools.jl") - (synopsis "Tools for working with Julia code and expressions") - (description "This library provides tools for working with Julia code and -expressions. This includes a template-matching system and code-walking tools -that let you do deep transformations of code.") + `(("julia-arraylayouts" ,julia-arraylayouts))) + (home-page "https://github.com/JuliaMatrices/MatrixFactorizations.jl") + (synopsis "Julia package to contain non-standard matrix factorizations") + (description "A Julia package to contain non-standard matrix factorizations. +At the moment it implements the QL, RQ, and UL factorizations, a combined +Cholesky factorization with inverse, and polar decompositions. In the future it +may include other factorizations such as the LQ factorization.") (license license:expat))) (define-public julia-mbedtls @@ -1200,44 +1323,70 @@ that let you do deep transformations of code.") TLS} and cryptography C library for Julia.") (license license:expat))) -(define-public julia-mbedtls-jll +(define-public julia-measures (package - (name "julia-mbedtls-jll") - ;; version 2.25.0+0 is not compatible with current mbedtls 2.23.0, - ;; upgrade this when mbedtls is updated in guix - (version "2.24.0+1") + (name "julia-measures") + (version "0.3.1") (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/MbedTLS_jll.jl") - (commit (string-append "MbedTLS-v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0kk9dlxdh7yms21npgrdfmjbj8q8ng6kdhrzw3jr2d7rp696kp99")))) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaGraphics/Measures.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0j34psrdijnqqn9zv0r2sknr1p9q0mmbjvjhmjra37bb5fh2gk8l")))) (build-system julia-build-system) - (arguments - '(#:tests? #f ; No runtests.jl - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'override-binary-path - (lambda* (#:key inputs #:allow-other-keys) - (map - (lambda (wrapper) - (substitute* wrapper - (("generate_wrapper_header.*") - (string-append - "generate_wrapper_header(\"MbedTLS\", \"" - (assoc-ref inputs "mbedtls-apache") "\")\n")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$")) - #t))))) - (inputs `(("mbedtls-apache" ,mbedtls-apache))) - (propagated-inputs `(("julia-jllwrappers" ,julia-jllwrappers))) - (home-page "https://github.com/JuliaBinaryWrappers/MbedTLS_jll.jl") - (synopsis "Apache's mbed TLS binary wrappers") - (description "This Julia module provides @code{mbed TLS} libraries and -wrappers.") + (home-page "https://github.com/JuliaGraphics/Measures.jl") + (synopsis "Unified measure and coordinates types") + (description "This library generalizes and unifies the notion of measures +used in Compose, Compose3D, and Escher. It allows building up and representing +expressions involving differing types of units that are then evaluated, +resolving them into absolute units.") + (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 "Additional missing value support for Julia") + (description "This package provides additional functionality for working +with @code{missing} values in Julia.") + (license license:expat))) + +(define-public julia-mocking + (package + (name "julia-mocking") + (version "0.7.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/invenia/Mocking.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "10jz716v6i3gpd403rmcrip6cncjl9lqr12cdl321x1994a5g8ck")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-exprtools" ,julia-exprtools))) + (home-page "https://github.com/invenia/Mocking.jl") + (synopsis "Overload Julia function calls") + (description "The purpose of this package is to allow Julia function calls +to be temporarily overloaded for the purpose of testing.") (license license:expat))) (define-public julia-msgpack @@ -1280,6 +1429,28 @@ Julia, with type-driven, overloadable packing/unpacking functionality.") @code{NaN} instead of throwing a @code{DomainError}.") (license license:expat))) +(define-public julia-optimtestproblems + (package + (name "julia-optimtestproblems") + (version "2.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaNLSolvers/OptimTestProblems.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "10h47x5ws42pkqjccimaz0yxfvz41w0yazq6inamfk4lg5g2g3d9")))) + (build-system julia-build-system) + (arguments + `(#:julia-package-name "OptimTestProblems")) + (home-page "https://github.com/JuliaNLSolvers/OptimTestProblems.jl") + (synopsis "Collection of optimization test problems") + (description "The purpose of this package is to provide test problems for +JuliaNLSolvers packages.") + (license license:expat))) + (define-public julia-orderedcollections (package (name "julia-orderedcollections") @@ -1327,52 +1498,6 @@ have arbitrary indices, similar to those found in some other programming languages like Fortran.") (license license:expat))) -;;; TODO: Remove this autogenerated source package -;;; and build it from realse source using <https://github.com/JuliaPackaging/Yggdrasil/> -(define-public julia-openspecfun-jll -(let ((commit "6c505cce3bdcd9cd2b15b4f9362ec3a42c4da71c")) - (package - (name "julia-openspecfun-jll") - (version "0.5.3+4") ;tag not created upstream - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0bl2gcgndsbiwhwy8fl070cjm1fyf9kxj6gkikgirmzgjl29iakn")))) - (build-system julia-build-system) - (arguments - `(#:tests? #f ; no runtests.jl - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'override-binary-path - (lambda* (#:key inputs #:allow-other-keys) - (map - (lambda (wrapper) - (substitute* wrapper - (("generate_wrapper_header.*") - (string-append - "generate_wrapper_header(\"OpenSpecFun\", \"" - (assoc-ref inputs "openspecfun") "\")\n")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$")) - #t))))) - (inputs - `(("openspecfun" ,openspecfun))) - (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers) - ("julia-compilersupportlibraries-jll" ,julia-compilersupportlibraries-jll))) - (home-page "https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl") - (synopsis "Internal wrappers") - (description "This package provides a wrapper for OpenSpecFun. It is an -autogenerated source package constructed using @code{BinaryBuilder.jl}. The -originating @code{build_tarballs.jl} script can be found on the community -build tree Yggdrasil.") - (license license:expat)))) - (define-public julia-parameters (package (name "julia-parameters") @@ -1442,6 +1567,193 @@ algorithms, while ensuring that the most efficient implementation is used in actual computation.") (license license:expat))) +(define-public julia-plotthemes + (package + (name "julia-plotthemes") + (version "2.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaPlots/PlotThemes.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1fd27w9z1vhz0d1bzrs5vcavpb5r5jviyh27d9c4ka37phz4xvmh")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-plotutils" ,julia-plotutils) + ("julia-requires" ,julia-requires))) + (home-page "https://github.com/JuliaPlots/PlotThemes.jl") + (synopsis "Themes for the Julia plotting package Plots.jl") + (description + "PlotThemes is a package to spice up the plots made with @code{Plots.jl}.") + (license license:expat))) + +(define-public julia-plotutils + (package + (name "julia-plotutils") + (version "1.0.10") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaPlots/PlotUtils.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1jimdkp590g7s33w7i431nn7mp1phjy9gdjs88zyqsmq5hxldacg")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-colors" ,julia-colors) + ("julia-colorschemes" ,julia-colorschemes) + ("julia-reexport" ,julia-reexport))) + (native-inputs + `(("julia-stablerngs" ,julia-stablerngs))) + (home-page "https://github.com/JuliaPlots/PlotUtils.jl") + (synopsis "Helper algorithms for building plotting components") + (description "This package contains generic helper algorithms for building +plotting components.") + (license license:expat))) + +(define-public julia-pooledarrays + (package + (name "julia-pooledarrays") + (version "1.2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaData/PooledArrays.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0ihvhzkxdw4qf0i6sbrickhdcwkmlin9zyixxn9xvgzm8nc0iwqy")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-dataapi" ,julia-dataapi))) + (home-page "https://github.com/JuliaData/PooledArrays.jl") + (synopsis "Pooled representation of arrays in Julia") + (description "This package provides a pooled representation of arrays for +purposes of compression when there are few unique elements.") + (license license:expat))) + +(define-public julia-prettytables + (package + (name "julia-prettytables") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ronisbr/PrettyTables.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1d1sd87kkwbar3l608h0adzws42cwdrmp1idxx7an6mfqcsdrijw")))) + (build-system julia-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'skip-color-tests + (lambda _ + (substitute* "test/text_backend.jl" + ((".*colors\\.jl.*") "")) + #t))))) + (propagated-inputs + `(("julia-crayons" ,julia-crayons) + ("julia-formatting" ,julia-formatting) + ("julia-reexport" ,julia-reexport) + ("julia-tables" ,julia-tables))) + (home-page "https://github.com/ronisbr/PrettyTables.jl") + (synopsis "Print data in formatted tables") + (description "This package has the purpose to print data in matrices in a +human-readable format.") + (license license:expat))) + +(define-public julia-quadmath + (package + (name "julia-quadmath") + (version "0.5.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaMath/Quadmath.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "051biw4b9zni7cmh2f1yzifp1v8wazlfxrdz4p44lyd1wba6379w")))) + (build-system julia-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'hardcode-libmath-location + (lambda* (#:key inputs #:allow-other-keys) + (let ((gcclib (assoc-ref inputs "gcc:lib"))) + (substitute* "src/Quadmath.jl" + (("libgcc_s.so.1" lib) (string-append gcclib "/lib/" lib)) + (("libquadmath.so.0" lib) (string-append gcclib "/lib/" lib))) + #t)))))) + (propagated-inputs + `(("julia-requires" ,julia-requires))) + (inputs + `(("gcc:lib" ,gcc "lib"))) + (native-inputs + `(("julia-specialfunctions" ,julia-specialfunctions))) + (home-page "https://github.com/JuliaMath/Quadmath.jl") + (synopsis "Float128 and libquadmath for the Julia language") + (description "This is a Julia interface to @code{libquadmath}, providing a +@code{Float128} type corresponding to the IEEE754 binary128 floating point +format.") + (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) + (propagated-inputs + `(("julia-datastructures" ,julia-datastructures) + ("julia-iteratorinterfaceextensions" ,julia-iteratorinterfaceextensions) + ("julia-tableshowutils" ,julia-tableshowutils))) + (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 @code{Query.jl}.") + (license license:expat))) + +(define-public julia-rangearrays + (package + (name "julia-rangearrays") + (version "0.3.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaArrays/RangeArrays.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1ihzfyfq1xihkjcvn7xmzfbn6igzidb4fkzdcxwfr5qkvi52gnmg")))) + (build-system julia-build-system) + (home-page "https://github.com/JuliaArrays/RangeArrays.jl") + (synopsis "Array data structures with autogenerated columns") + (description "The goal of RangeArrays is to provide efficient and convenient +array data structures where the columns of the arrays are generated (on the fly) +by Ranges.") + (license license:expat))) + (define-public julia-recipesbase (package (name "julia-recipesbase") @@ -1565,6 +1877,34 @@ other power series in @code{h}.") a loadable module.") (license license:expat)))) +(define-public julia-scratch + (package + (name "julia-scratch") + (version "1.0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaPackaging/Scratch.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "06n0rc7grlg9igkdlrql83q0zpc97bh2hfzj5mw4spfik8ahw2aa")))) + (build-system julia-build-system) + (arguments + `(#:tests? #f)) ; Test suite tries to access the Julia package registry. + (home-page "https://github.com/JuliaPackaging/Scratch.jl") + (synopsis "Scratch spaces for all your persistent mutable data needs") + (description "This repository implements the scratch spaces API for +package-specific mutable containers of data. These spaces can contain datasets, +text, binaries, or any other kind of data that would be convenient to store in +a location specific to your package. As compared to Artifacts, these containers +of data are mutable. Because the scratch space location on disk is not very +user-friendly, scratch spaces should, in general, not be used for a storing +files that the user must interact with through a file browser.") + (license license:expat))) + (define-public julia-sortingalgorithms (package (name "julia-sortingalgorithms") @@ -1621,6 +1961,32 @@ cosine) integrals, eta, zeta, digamma, inverse digamma, trigamma, and polygamma functions.") (license license:expat))) +(define-public julia-splitapplycombine + (package + (name "julia-splitapplycombine") + (version "1.1.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaData/SplitApplyCombine.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1qzaqvk57b0s5krzn8bxkzmr5kz6hi9dm3jbf2sl7z4vznsgbn9x")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-dictionaries" ,julia-dictionaries) + ("julia-indexing" ,julia-indexing))) + (home-page "https://github.com/JuliaData/SplitApplyCombine.jl") + (synopsis "Split-apply-combine strategies for Julia") + (description "@code{SplitApplyCombine.jl} provides high-level, generic tools +for manipulating data - particularly focussing on data in nested containers. An +emphasis is placed on ensuring split-apply-combine strategies are easy to apply, +and work reliably for arbitrary iterables and in an optimized way with the data +structures included in Julia's standard library.") + (license license:expat))) + (define-public julia-stablerngs (package (name "julia-stablerngs") @@ -1693,6 +2059,29 @@ statically sized arrays in Julia, using the abstract type linear algebra operations.") (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/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 @code{StatsAPI.jl} and each package taking a +dependency on it.") + (license license:expat))) + (define-public julia-suppressor (package (name "julia-suppressor") @@ -1713,6 +2102,152 @@ linear algebra operations.") warnings (stderr) or both streams at the same time.") (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 "This package determines tabular file formats based on file +extensions. It is intended to be the base both for @code{TableIO.jl} and for +the @code{Pluto.jl} tabular data import functionality.") + (license license:expat))) + +(define-public julia-tables + (package + (name "julia-tables") + (version "1.4.3") + (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 "0yfjl4v1vglsk9wr7gbqgya4kk3a0q0i6zhi9xdgvnqsqzqrsc7c")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-dataapi" ,julia-dataapi) + ("julia-datavalueinterfaces" ,julia-datavalueinterfaces) + ("julia-iteratorinterfaceextensions" ,julia-iteratorinterfaceextensions) + ("julia-tabletraits" ,julia-tabletraits))) + (native-inputs + `(("julia-datavalues" ,julia-datavalues) + ("julia-queryoperators" ,julia-queryoperators))) + (home-page "https://github.com/JuliaData/Tables.jl") + (synopsis "Interface for tables in Julia") + (description "The @code{Tables.jl} package provides simple, yet powerful +interface functions for working with all kinds tabular data.") + (license license:expat))) + +(define-public julia-tableshowutils + ;; The 0.2.5 release is not fully compatable with newer versions of Julia. + (let ((commit "c4e02d8b9bbb31fc81ed6618955e9b1c7cb04460") + (revision "1")) + (package + (name "julia-tableshowutils") + (version "0.2.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/queryverse/TableShowUtils.jl") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0gp3hpj3jvzfhkp9r345vfic2j2n2s60729wv38hwn75csp74cg5")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-datavalues" ,julia-datavalues) + ("julia-json" ,julia-json))) + (home-page "https://github.com/queryverse/TableShowUtils.jl") + (synopsis "Implement show for TableTraits.jl types") + (description "This package provides some common helper functions that make +it easier to implement various @code{Base.show} functions for types that +participate in the @code{TableTraits.jl} ecosystem.") + (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-tensorcore + (package + (name "julia-tensorcore") + (version "0.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaMath/TensorCore.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1sy3in4a1rl3l2vk0cm9mzg2nkva7syhr7i35si0kbzhkdwpbqjy")))) + (build-system julia-build-system) + (home-page "https://github.com/JuliaMath/TensorCore.jl") + (synopsis "Tensor-algebra definitions") + (description "This package is intended as a lightweight foundation for +tensor operations across the Julia ecosystem. Currently it exports three +operations: @acronym{hadamard, elementwise multiplication}, @acronym{tensor, +product preserves all dimensions}, and @acronym{boxdot, contracts neighboring +dimensions}.") + (license license:expat))) + +(define-public julia-typedtables + (package + (name "julia-typedtables") + (version "1.2.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaData/TypedTables.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "06k5h7ybsh29b6kiy0p62rp9b2q3xi9jk8p9wf0kq907p5kvfnfy")))) + (build-system julia-build-system) + (propagated-inputs + `(("julia-adapt" ,julia-adapt) + ("julia-splitapplycombine" ,julia-splitapplycombine) + ("julia-tables" ,julia-tables))) + (home-page "https://github.com/JuliaData/TypedTables.jl") + (synopsis "Column-based storage for data analysis in Julia") + (description "@code{TypedTables.jl} provides two column-based storage +containers: @code{Table} and @code{FlexTable}, both of which represent an array +of @code{NamedTuples}. This package is designed to be lightweight, easy-to-use +and fast, and presents a very minimal new interface to learn.") + (license license:expat))) + (define-public julia-unpack (package (name "julia-unpack") @@ -1789,105 +2324,74 @@ working with @acronym{URIs,Uniform Resource Identifiers}, as defined in RFC system.") (license license:expat))) -(define-public julia-zipfile +(define-public julia-versionparsing (package - (name "julia-zipfile") - (version "0.9.3") + (name "julia-versionparsing") + (version "1.2.0") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/fhs/ZipFile.jl") + (url "https://github.com/JuliaInterop/VersionParsing.jl") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "15bm3ki5mb9nvqs2byznrryq0bilnjcvsfy3k05hxhk9vapilw7k")))) + (base32 "060s72dsnpavgilf7f7315lw2sn4npk8lkndmj6bg7i23hppiwva")))) (build-system julia-build-system) - (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.") + (home-page "https://github.com/JuliaInterop/VersionParsing.jl") + (synopsis "Flexible VersionNumber parsing in Julia") + (description "The @code{VersionParsing} package implements flexible parsing +of version-number strings into Julia's built-in @code{VersionNumber} type, via +the @code{vparse(string)} function. Unlike the @code{VersionNumber(string)} +constructor, @code{vparse(string)} can handle version-number strings in a much +wider range of formats than are encompassed by the semver standard. This is +useful in order to support @code{VersionNumber} comparisons applied to +\"foreign\" version numbers from external packages.") (license license:expat))) -(define-public julia-zlib-jll +(define-public julia-weakrefstrings (package - (name "julia-zlib-jll") - (version "1.2.12+1") + (name "julia-weakrefstrings") + (version "0.6.2") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/Zlib_jll.jl") - (commit (string-append "Zlib-v" version)))) + (url "https://github.com/JuliaData/WeakRefStrings.jl") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "05ih0haqapkzr40swvq63cafnqlc4yp6yfa1wvdyq8v3n4kxhfqa")))) + (base32 "0129mf1axxycb1ans3idlvw8ch0hmdrl80q98jw63f99zz3ddipr")))) (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(\"Zlib\", \"" - (assoc-ref inputs "zlib") "\")\n")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$"))))))) - (inputs - `(("zlib" ,zlib))) (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers))) - (home-page "https://github.com/JuliaBinaryWrappers/Zlib_jll.jl") - (synopsis "Zlib library wrappers") - (description "This package provides a wrapper for Zlib.") + `(("julia-dataapi" ,julia-dataapi))) + (home-page "https://github.com/JuliaData/WeakRefStrings.jl") + (synopsis "Efficient string representation and transfer in Julia") + (description "This package provides a minimal String type for Julia that +allows for efficient string representation and transfer") (license license:expat))) -(define-public julia-zstd-jll +(define-public julia-zipfile (package - (name "julia-zstd-jll") - (version "1.5.0+0") + (name "julia-zipfile") + (version "0.9.3") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/JuliaBinaryWrappers/Zstd_jll.jl") - (commit (string-append "Zstd-v" version)))) + (url "https://github.com/fhs/ZipFile.jl") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 - "15g5wsvga4p9bjmx97xqwqdnfzfbwfl6c4a9iaphcncwgcrnw6y6")))) + "15bm3ki5mb9nvqs2byznrryq0bilnjcvsfy3k05hxhk9vapilw7k")))) (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(\"Zstd\", \"" - (assoc-ref inputs "zstd:lib") "\")\n")))) - ;; There's a Julia file for each platform, override them all - (find-files "src/wrappers/" "\\.jl$"))))))) - (inputs - `(("zstd:lib" ,zstd "lib"))) (propagated-inputs - `(("julia-jllwrappers" ,julia-jllwrappers))) - (home-page "https://github.com/JuliaBinaryWrappers/Zstd_jll.jl") - (synopsis "Zstd library wrappers") - (description "This package provides a wrapper for the zstd library.") + `(("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-zygoterules |