aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/elixir.scm
blob: 1b881862a9b5f007af5ff6671e73dfbebe37767d (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
@@ -2523,7 +2523,7 @@ Rust.")
(define-public rust-async-compression-0.3
(package
(name "rust-async-compression")
- (version "0.3.5")
+ (version "0.3.7")
(source
(origin
(method url-fetch)
@@ -2531,24 +2531,30 @@ Rust.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "164dfy1wrl9qbj95rvcpkfbrkpz3c1s7mk288sv9cwp7rj5pc8ch"))))
+ "0dwm5zgi560m1xy30k3a4sg96mlfkjdk8jl6a1dk4d72ah8iyb5p"))))
(build-system cargo-build-system)
(arguments
- `(#:cargo-inputs
+ ;; FIXME: Tests fail with "error[E0432]: unresolved import `syn::export`"
+ ;; when compiling ntest_test_cases v0.3.4.
+ `(#:tests? #false
+ #:cargo-inputs
(("rust-brotli" ,rust-brotli-3)
("rust-bytes" ,rust-bytes-0.5)
- ("rust-bzip2" ,rust-bzip2-0.3)
+ ("rust-bzip2" ,rust-bzip2-0.4)
("rust-flate2" ,rust-flate2-1)
("rust-futures-core" ,rust-futures-core-0.3)
("rust-futures-io" ,rust-futures-io-0.3)
("rust-memchr" ,rust-memchr-2)
- ("rust-pin-project-lite" ,rust-pin-project-lite-0.1)
+ ("rust-pin-project-lite" ,rust-pin-project-lite-0.2)
("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio" ,rust-tokio-0.3)
+ ("rust-tokio" ,rust-tokio-1)
("rust-xz2" ,rust-xz2-0.1)
- ("rust-zstd" ,rust-zstd-0.5)
- ("rust-zstd-safe" ,rust-zstd-safe-2))
+ ("rust-zstd" ,rust-zstd-0.6)
+ ("rust-zstd-safe" ,rust-zstd-safe-3))
#:cargo-development-inputs
- (("rust-bytes" ,rust-bytes-0.5)
+ (("rust-bytes" ,rust-bytes-1)
+ ("rust-bytes" ,rust-bytes-0.5)
("rust-futures" ,rust-futures-0.3)
("rust-futures-test" ,rust-futures-test-0.3)
("rust-ntest" ,rust-ntest-0.3)
@@ -2556,7 +2562,11 @@ Rust.")
("rust-proptest-derive" ,rust-proptest-derive-0.1)
("rust-rand" ,rust-rand-0.7)
("rust-timebomb" ,rust-timebomb-0.1)
- ("rust-tokio" ,rust-tokio-0.2))))
+ ("rust-tokio" ,rust-tokio-1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio" ,rust-tokio-0.3)
+ ("rust-tokio-util" ,rust-tokio-util-0.4)
+ ("rust-tokio-util" ,rust-tokio-util-0.6))))
(home-page "https://github.com/Nemo157/async-compression")
(synopsis "Adaptors between compression crates and Rust's modern asynchronous IO types")
(description "This package provides adaptors between compression crates
(string-append prefix (which "git")))) (substitute* '("lib/mix/lib/mix/release.ex" "lib/mix/lib/mix/tasks/release.init.ex") (("#!/bin/sh") (string-append "#!" (which "sh")))) (substitute* "bin/elixir" (("ERTS_BIN=") (string-append "ERTS_BIN=" ;; Elixir Releases will prepend to ERTS_BIN the path of a copy of erl. ;; We detect if a release is being generated by checking the initial ERTS_BIN ;; value: if it's empty, we are not in release mode and can point to the actual ;; erl binary in Guix store. "\nif [ -z \"$ERTS_BIN\" ]; then ERTS_BIN=" (string-drop-right (which "erl") 3) "; fi"))) (substitute* "bin/mix" (("#!/usr/bin/env elixir") (string-append "#!" out "/bin/elixir")))) #t)) (add-before 'build 'make-current ;; The Elixir compiler checks whether or not to compile files by ;; inspecting their timestamps. When the timestamp is equal to the ;; epoch no compilation will be performed. Some tests fail when ;; files are older than Jan 1, 2000. (lambda _ (for-each (lambda (file) (let ((recent 1400000000)) (utime file recent recent 0 0))) (find-files "." ".*")) #t)) (add-before 'check 'set-home (lambda* (#:key inputs #:allow-other-keys) ;; Some tests require access to a home directory. (setenv "HOME" "/tmp") #t)) (delete 'configure)))) (inputs `(("erlang" ,erlang))) (home-page "https://elixir-lang.org/") (synopsis "Elixir programming language") (description "Elixir is a dynamic, functional language used to build scalable and maintainable applications. Elixir leverages the Erlang VM, known for running low-latency, distributed and fault-tolerant systems, while also being successfully used in web development and the embedded software domain.") (license license:asl2.0)))