From d40de1fb810aeff30cf84fc5e051bb77e0b6ceeb Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 31 Jan 2022 12:28:05 +0200 Subject: gnu: Add julia-linesearches. * gnu/packages/julia-xyz.scm (julia-linesearches): New variable. --- gnu/packages/julia-xyz.scm | 45 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) (limited to 'gnu/packages/julia-xyz.scm') diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm index e30cf39dc9..7de0c32113 100644 --- a/gnu/packages/julia-xyz.scm +++ b/gnu/packages/julia-xyz.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2020, 2021 Nicolò Balzarotti ;;; Copyright © 2021, 2022 Simon Tournier -;;; Copyright © 2021 Efraim Flashner +;;; Copyright © 2021, 2022 Efraim Flashner ;;; Copyright © 2021 Vinicius Monego ;;; Copyright © 2021 jgart ;;; @@ -3104,6 +3104,49 @@ equations in string literals in the Julia language.") implementation of matrix-free methods for iterative solvers.") (license license:expat))) +(define-public julia-linesearches + (package + (name "julia-linesearches") + (version "7.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JuliaNLSolvers/LineSearches.jl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1qc4la07w6s1xhcyd0hvbnpr31zc1a2ssgyybc8biv5m00g0dnr0")))) + (build-system julia-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'link-depot 'skip-optim-tests + (lambda _ + (substitute* "test/examples.jl" + ;; Prevent a cycle with Optim.jl. + (("^ SKIPFILE.*") "") + (("^ #SKIPFILE") " SKIPFILE")))) + (add-after 'link-depot 'skip-doublefloats-tests + (lambda _ + (substitute* "test/runtests.jl" + (("using DoubleFloats.*") "") + ((".*arbitrary_precision\\.jl.*") ""))))))) + (propagated-inputs + (list julia-nlsolversbase + julia-nanmath + julia-parameters)) + (native-inputs + ;; DoubleFloats.jl transitively depends on TimeZones.jl, which is currently + ;; unpackageable due to its oversized Artifacts.toml. + (list ;julia-doublefloats + julia-optimtestproblems)) + (home-page "https://github.com/JuliaNLSolvers/LineSearches.jl") + (synopsis "Line search methods for optimization and root-finding") + (description "This package provides an interface to line search algorithms +implemented in Julia.") + (license license:expat))) + (define-public julia-logexpfunctions (package (name "julia-logexpfunctions") -- cgit v1.2.3