guix/gnu/packages/julia-xyz.scm

127 lines
5.2 KiB
Scheme
Raw Normal View History

;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020, 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages julia-xyz)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system julia))
(define-public julia-compat
(package
(name "julia-compat")
(version "3.25.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaLang/Compat.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1m4r5i8mq29xjp3mllh6047n5a78sdyld57m15anrnsjgaapcgby"))))
(build-system julia-build-system)
(home-page "https://github.com/JuliaLang/Compat.jl")
(synopsis "Compatibility across Julia versions")
(description "The Compat package is designed to ease interoperability
between older and newer versions of the Julia language. The Compat package
provides a macro that lets you use the latest syntax in a backwards-compatible
way.")
(license license:expat)))
(define-public julia-datastructures
(package
(name "julia-datastructures")
(version "0.18.9")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaCollections/DataStructures.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0hdqp8ipsqdw5bqqkdvz4j6n67x80sj5azr9vzyxwjfsgkfbnk2l"))))
(propagated-inputs
`(("julia-compat" ,julia-compat)
("julia-orderedcollections" ,julia-orderedcollections)))
(build-system julia-build-system)
(home-page "https://github.com/JuliaCollections/DataStructures.jl")
(synopsis "Julia module providing different data structures")
(description "This package implements a variety of data structures,
including, @code{CircularBuffer}, @code{Queue}, @code{Stack},
@code{Accumulators}, @code{LinkedLists}, @code{SortedDicts} and many others.")
(license license:expat)))
(define-public julia-fixedpointnumbers
(package
(name "julia-fixedpointnumbers")
(version "0.8.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaMath/FixedPointNumbers.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0j0n40n04q9sk68wh9jq90m6c67k4ws02k41djjzkrqmpzv4rcdi"))))
(build-system julia-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-failing-test
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "test/fixed.jl"
;; A deprecation warning is not thrown
(("@test_logs.*:warn" all) (string-append "# " all)))
#t)))))
(propagated-inputs `(("julia-compat" ,julia-compat)))
(home-page "https://github.com/JuliaMath/FixedPointNumbers.jl")
(synopsis "Fixed point types for Julia")
(description "@code{FixedPointNumbers.jl} implements fixed-point number
types for Julia. A fixed-point number represents a fractional, or
non-integral, number. In contrast with the more widely known floating-point
numbers, with fixed-point numbers the decimal point doesn't \"float\":
fixed-point numbers are effectively integers that are interpreted as being
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-orderedcollections
(package
(name "julia-orderedcollections")
(version "1.3.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaCollections/OrderedCollections.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0sfip1ixghsz91q2s7d62rgzw3gppg42fg6bccxlplqa3hfmbycf"))))
(build-system julia-build-system)
(home-page "https://github.com/JuliaCollections/OrderedCollections.jl")
(synopsis "Associative containers that preserve insertion order")
(description "This package implements @code{OrderedDicts} and
@code{OrderedSets}, which are similar to containers in base Julia. However,
during iteration the @code{Ordered*} containers return items in the order in
which they were added to the collection.")
(license license:expat)))