From 9ab992df37a361171ea653a321417ccd77df1f43 Mon Sep 17 00:00:00 2001 From: Christopher Vollick <0@psycoti.ca> Date: Mon, 23 Jan 2023 18:02:33 -0500 Subject: [PATCH] Resync Guix Dependencies with Gemfile I tried running this under Guix and it didn't even build. It turns out a lint rule got added that doesn't allow license to have that value any longer, and a few changes to the dependencies of the project have been made without those same changes being reflected in the guix definition. Also, one of the dependencies that made it upstream works upstream, but fails in our definition due to a bundler version issue. A few of these changes may even be out of date by now, in terms of both guix upstream or pointing at branches we don't need to point at due to upstream taking patches, but I wanted to make the minimal set of changes here to make the Gemfile and the Guix have the same information. A later commit can change *both* to point at upstream, etc, if they so choose. --- jmp-pay.scm | 192 ++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 147 insertions(+), 45 deletions(-) diff --git a/jmp-pay.scm b/jmp-pay.scm index fe636bc9557878638abe70012d2e38956478cd80..901dde01081cdbd53ba9bdfc90f0ed54a46d6374 100644 --- a/jmp-pay.scm +++ b/jmp-pay.scm @@ -43,40 +43,6 @@ "https://github.com/brandonhilkert/sucker_punch") (license license:expat))) -(define-public ruby-niceogiri - (package - (name "ruby-niceogiri") - (version "1.1.2") - (source - (origin - (method url-fetch) - (uri (rubygems-uri "niceogiri" version)) - (sha256 - (base32 - "1ha93211bc9cvh23s9w89zz7rq8irpf64ccd9arvg8v1sxg2798a")))) - (build-system ruby-build-system) - (arguments - `(#:test-target "spec" - #:phases - (modify-phases %standard-phases - (add-after 'extract-gemspec 'less-strict-dependencies - (lambda _ - (substitute* "niceogiri.gemspec" - (("2.7") "3.8") - ((".*guard-rspec.*") "\n")) - #t))))) - (propagated-inputs - `(("ruby-nokogiri" ,ruby-nokogiri))) - (native-inputs - `(("ruby-rspec" ,ruby-rspec) - ("ruby-yard" ,ruby-yard))) - (synopsis "Make dealing with XML less painful") - (description - "Make dealing with XML less painful") - (home-page - "https://github.com/benlangfeld/Niceogiri") - (license license:expat))) - (define-public ruby-countdownlatch (package (name "ruby-countdownlatch") @@ -100,14 +66,19 @@ (define-public ruby-blather (package (name "ruby-blather") - (version "2.0.0") + (version "37fb26593aa776dd91965796e4d9ff79b05f334a") (source (origin - (method url-fetch) - (uri (rubygems-uri "blather" version)) + (method git-fetch) + ;; Download from GitHub because the rubygems version requires old + ;; version of bundler Rakefile. + (uri (git-reference + (url "https://github.com/adhearsion/blather") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "05ry2x835fj4pzk61282pcz86n018cr39zbgwbi213md74i90s7c")))) + "0k9viwpbd4ifmiv22x2vh2vvc5wgvcxg7x7bwn5nkc5aspisxlq2")))) (build-system ruby-build-system) (arguments `(#:phases @@ -411,14 +382,14 @@ (define-public ruby-dhall (package (name "ruby-dhall") - (version "0.5.2") + (version "0.5.3.fixed") (source (origin (method url-fetch) (uri (rubygems-uri "dhall" version)) (sha256 (base32 - "09wcq8xc1ynld04r2f332bx8cn7rjc4afaq8hm1dr2fc35jlpn6m")))) + "1qn7fpiakzpllks43m7r3wh6a2rypxgg02y09zzk27lhqv6bbbrz")))) (build-system ruby-build-system) (arguments ;; No test in gem archive @@ -592,14 +563,16 @@ (define-public ruby-bandwidth-iris (package (name "ruby-bandwidth-iris") - (version "4.0.0") + (version "list-port-ins") (source (origin - (method url-fetch) - (uri (rubygems-uri "ruby-bandwidth-iris" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/singpolyma/ruby-bandwidth-iris") + (commit version))) (sha256 (base32 - "16bbx6y0ni3jl190ddr6xfbi2rbcikqfm2ghzr53445fpk6g12zc")))) + "0vab3fbkps6kvkph38ssfk7s9j646l4gz8p1q4glvi26js0v9rhc")))) (build-system ruby-build-system) (arguments ; Tests don't require helper for some reason, so all fail... @@ -692,7 +665,7 @@ (description "WEBrick is an HTTP server toolkit that can be configured as an HTTPS server, a proxy server, and a virtual-host server.") (home-page "https://github.com/ruby/webrick") - (license (list #f #f)))) + (license #f))) (define-public ruby-interception (package @@ -772,6 +745,132 @@ (home-page "https://github.com/rantly-rb/rantly") (license license:expat))) +(define-public ruby-em-promise.rb + (package + (name "ruby-em-promise.rb") + (version "0.0.5") + (source (origin + (method url-fetch) + (uri (rubygems-uri "em_promise.rb" version)) + (sha256 + (base32 + "00rkmacyf6i2gq0giaxzwr24ygrwwzndrq7kkbpqcq9glk01w692")))) + (build-system ruby-build-system) + (arguments + ;; No rakefile + `(#:tests? #f)) + (propagated-inputs (list ruby-eventmachine ruby-promise.rb)) + (synopsis "A subclass of promise.rb Promise for EventMachine.") + (description + "This package provides a subclass of promise.rb Promise for EventMachine.") + (home-page "https://git.singpolyma.net/em_promise.rb") + (license #f))) + +(define-public ruby-em-socksify + (package + (name "ruby-em-socksify") + (version "0.3.2") + (source (origin + (method url-fetch) + (uri (rubygems-uri "em-socksify" version)) + (sha256 + (base32 + "0rk43ywaanfrd8180d98287xv2pxyl7llj291cwy87g1s735d5nk")))) + (build-system ruby-build-system) + (arguments + ;; Tests are broken + `(#:tests? #f)) + (propagated-inputs (list ruby-eventmachine)) + (synopsis "Transparent proxy support for any EventMachine protocol") + (description "Transparent proxy support for any EventMachine protocol") + (home-page "https://github.com/igrigorik/em-socksify") + (license license:expat))) + +(define-public ruby-rspec-collection-matchers + (package + (name "ruby-rspec-collection-matchers") + (version "1.2.0") + (source (origin + (method url-fetch) + (uri (rubygems-uri "rspec-collection_matchers" version)) + (sha256 + (base32 + "1864xlxl7mi6mvjyp85a0gc10cyvpf6bj8lc86sf8737wlzn12ks")))) + (build-system ruby-build-system) + (arguments + ;; No rakefile + `(#:tests? #f)) + (propagated-inputs (list ruby-rspec-expectations)) + (synopsis + "Collection cardinality matchers, extracted from rspec-expectations") + (description + "Collection cardinality matchers, extracted from rspec-expectations") + (home-page "https://github.com/rspec/rspec-collection_matchers") + (license license:expat))) + +(define-public ruby-cookiejar + (package + (name "ruby-cookiejar") + (version "0.3.3") + (source (origin + (method url-fetch) + (uri (rubygems-uri "cookiejar" version)) + (sha256 + (base32 + "0q0kmbks9l3hl0wdq744hzy97ssq9dvlzywyqv9k9y1p3qc9va2a")))) + (build-system ruby-build-system) + (native-inputs + `(("ruby-rspec" ,ruby-rspec) + ("ruby-rspec-collection-matchers" ,ruby-rspec-collection-matchers) + ("ruby-yard" ,ruby-yard))) + (synopsis + "Allows for parsing and returning cookies in Ruby HTTP client code") + (description + "Allows for parsing and returning cookies in Ruby HTTP client code") + (home-page "http://alkaline-solutions.com") + (license #f))) + +(define-public ruby-em-http-request + (package + (name "ruby-em-http-request") + (version "1.1.7") + (source (origin + (method url-fetch) + (uri (rubygems-uri "em-http-request" version)) + (sha256 + (base32 + "1azx5rgm1zvx7391sfwcxzyccs46x495vb34ql2ch83f58mwgyqn")))) + (build-system ruby-build-system) + (arguments + ;; Tests need a whole other set of dependencies + `(#:tests? #f)) + (propagated-inputs (list ruby-addressable ruby-cookiejar ruby-em-socksify + ruby-eventmachine ruby-http-parser.rb)) + (synopsis "EventMachine based, async HTTP Request client") + (description "EventMachine based, async HTTP Request client") + (home-page "http://github.com/igrigorik/em-http-request") + (license license:expat))) + +(define-public ruby-em-synchrony + (package + (name "ruby-em-synchrony") + (version "1.0.6") + (source (origin + (method url-fetch) + (uri (rubygems-uri "em-synchrony" version)) + (sha256 + (base32 + "1jh6ygbcvapmarqiap79i6yl05bicldr2lnmc46w1fyrhjk70x3f")))) + (build-system ruby-build-system) + (arguments + ;; Tests need a whole other set of dependencies + `(#:tests? #f)) + (propagated-inputs (list ruby-eventmachine)) + (synopsis "Fiber aware EventMachine libraries") + (description "Fiber aware EventMachine libraries") + (home-page "http://github.com/igrigorik/em-synchrony") + (license license:expat))) + (define %source-dir (dirname (current-filename))) (define %git-dir (string-append %source-dir "/.git")) @@ -833,6 +932,9 @@ ("ruby-pg" ,ruby-pg) ("ruby-redis" ,ruby-redis) ("ruby-roda" ,ruby-roda) + ("ruby-em-promise.rb" ,ruby-em-promise.rb) + ("ruby-em-synchrony" ,ruby-em-synchrony) + ("ruby-em-http-request" ,ruby-em-http-request) ("ruby-bandwidth-iris" ,ruby-bandwidth-iris) ("ruby-sentry" ,ruby-sentry) ("ruby" ,ruby) ;; Normally ruby-build-system adds this for us