aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/rails.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-03-09 14:55:41 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-03-28 22:22:34 -0400
commit70cc03a855b4eb69f6fbfc34c6620c062e6807dd (patch)
tree55fe5a8e77b46d29cb16dbca91c32c8cfbdec3ae /gnu/packages/rails.scm
parent2be67a5824a94b9612c7f436346c6ede40827703 (diff)
downloadguix-70cc03a855b4eb69f6fbfc34c6620c062e6807dd.tar
guix-70cc03a855b4eb69f6fbfc34c6620c062e6807dd.tar.gz
gnu: ruby-actioncable: Update to 7.0.4.3 and enable tests.
* gnu/packages/rails.scm (ruby-actioncable): Update to 7.0.4.3. [source]: Use ruby-rail-monorepo. [arguments]: Drop #:tests?. Add #:phases argument. [native-inputs]: New field.
Diffstat (limited to 'gnu/packages/rails.scm')
-rw-r--r--gnu/packages/rails.scm66
1 files changed, 45 insertions, 21 deletions
diff --git a/gnu/packages/rails.scm b/gnu/packages/rails.scm
index d3712a93c9..43db167671 100644
--- a/gnu/packages/rails.scm
+++ b/gnu/packages/rails.scm
@@ -553,28 +553,52 @@ applications. These work with any Rack-compatible server.")
(define-public ruby-actioncable
(package
- (name "ruby-actioncable")
- (version "6.1.3")
- (source
- (origin
- (method url-fetch)
- (uri (rubygems-uri "actioncable" version))
- (sha256
- (base32
- "1cgb1l0gml1vklxka2djpi5q5b4bgzgm5pahzfjvvgm5vzvrvi9v"))))
- (build-system ruby-build-system)
- (arguments
- '(;; No included tests
- #:tests? #f))
- (propagated-inputs
- (list ruby-actionpack ruby-activesupport ruby-nio4r
- ruby-websocket-driver))
- (synopsis "Integrate integrates WebSockets with Rails applications")
- (description
- "Action Cable integrates WebSockets with Rails applications. Through
+ (name "ruby-actioncable")
+ (version %ruby-rails-version)
+ (source ruby-rails-monorepo)
+ (build-system ruby-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'extract-gemspec 'chdir
+ (lambda _
+ (chdir "actioncable")))
+ (delete 'check) ;moved after install phase
+ (add-after 'install 'check
+ (assoc-ref %standard-phases 'check))
+ (add-before 'check 'set-GEM_PATH
+ (lambda _
+ (setenv "GEM_PATH" (string-append
+ (getenv "GEM_PATH") ":"
+ #$output "/lib/ruby/vendor_ruby"))))
+ (add-before 'check 'disable-problematic-tests
+ (lambda _
+ ;; There are multiple client test failures (see:
+ ;; https://github.com/rails/rails/issues/47617).
+ (delete-file "test/client_test.rb")))
+ (add-before 'check 'start-redis
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "redis-server" "--daemonize" "yes")))))))
+ (native-inputs
+ (list redis
+ ruby-activerecord
+ ruby-pg
+ ruby-puma
+ ruby-redis
+ ruby-websocket-client-simple))
+ (propagated-inputs
+ (list ruby-actionpack
+ ruby-activesupport
+ ruby-nio4r
+ ruby-websocket-driver))
+ (synopsis "Integrate integrates WebSockets with Rails applications")
+ (description
+ "Action Cable integrates WebSockets with Rails applications. Through
WebSockets it allows for real-time features in web applications.")
- (home-page "https://rubyonrails.org/")
- (license license:expat)))
+ (home-page "https://rubyonrails.org/")
+ (license license:expat)))
(define-public ruby-activejob
(package