* [bug#34514] [PATCH 02/34] gnu: Add ruby-lino.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-18 22:42 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 03/34] gnu: Add ruby-terraform Christopher Baines
` (32 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-lino): New variable.
---
gnu/packages/ruby.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index a0b7ea86ad..e554808318 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -1248,6 +1248,32 @@ the GNOME Libxml2 XML toolkit.")
(home-page "https://xml4r.github.com/libxml-ruby")
(license license:expat)))
+(define-public ruby-lino
+ (package
+ (name "ruby-lino")
+ (version "1.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "lino" version))
+ (sha256
+ (base32
+ "11d29g0fk372b9fcpyr0k6hxm2b4j4igpysmi542hgbbgqgp9cd3"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-hamster" ,ruby-hamster)
+ ("ruby-open4" ,ruby-open4)))
+ (synopsis "Build and execute commands in Ruby")
+ (description
+ "@code{Lino} provides an interface to run external commands. It provides
+a interface to add options as well as managing the standard input, output and
+error streams.")
+ (home-page "https://github.com/tobyclemson/lino")
+ (license license:expat)))
+
(define-public ruby-xml-simple
(package
(name "ruby-xml-simple")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 02/34] gnu: Add ruby-lino.
2019-02-17 19:22 ` [bug#34514] [PATCH 02/34] gnu: Add ruby-lino Christopher Baines
@ 2019-02-18 22:42 ` Ricardo Wurmus
0 siblings, 0 replies; 69+ messages in thread
From: Ricardo Wurmus @ 2019-02-18 22:42 UTC (permalink / raw)
To: Christopher Baines; +Cc: 34514
Christopher Baines <mail@cbaines.net> writes:
> * gnu/packages/ruby.scm (ruby-lino): New variable.
[…]
> + (arguments
> + '(;; No included tests
> + #:tests? #f))
This is nitpicking, but I’d prefer to have this all on one line
(including the comment).
> + (propagated-inputs
> + `(("ruby-hamster" ,ruby-hamster)
> + ("ruby-open4" ,ruby-open4)))
> + (synopsis "Build and execute commands in Ruby")
> + (description
> + "@code{Lino} provides an interface to run external commands. It provides
> +a interface to add options as well as managing the standard input,
> output and
“an interface”.
--
Ricardo
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 03/34] gnu: Add ruby-terraform.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 02/34] gnu: Add ruby-lino Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-18 22:43 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 04/34] gnu: Add ruby-que Christopher Baines
` (31 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-terraform): New variable.
---
gnu/packages/ruby.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index e554808318..b307bc2257 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -3735,6 +3735,30 @@ of terminal output.")
;; There is no mention of the "or later" clause.
(license license:gpl2)))
+(define-public ruby-terraform
+ (package
+ (name "ruby-terraform")
+ (version "0.20.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "ruby-terraform" version))
+ (sha256
+ (base32
+ "1czpak24v570ysnk8waj1sblfm1vqh1sdwh934x4ai90ribhlbzf"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-lino" ,ruby-lino)))
+ (synopsis "Ruby wrapper around the Terraform command line interface")
+ (description
+ "This package provides a Ruby wrapper around the the Terraform command line
+interface so that Terraform can be more easily invoked from Ruby code.")
+ (home-page "https://github.com/infrablocks/ruby_terraform")
+ (license license:expat)))
+
(define-public ruby-pstree
(package
(name "ruby-pstree")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 03/34] gnu: Add ruby-terraform.
2019-02-17 19:22 ` [bug#34514] [PATCH 03/34] gnu: Add ruby-terraform Christopher Baines
@ 2019-02-18 22:43 ` Ricardo Wurmus
2019-02-19 22:43 ` Christopher Baines
0 siblings, 1 reply; 69+ messages in thread
From: Ricardo Wurmus @ 2019-02-18 22:43 UTC (permalink / raw)
To: Christopher Baines; +Cc: 34514
Christopher Baines <mail@cbaines.net> writes:
> * gnu/packages/ruby.scm (ruby-terraform): New variable.
[…]
> +(define-public ruby-terraform
> + (package
> + (name "ruby-terraform")
> + (version "0.20.0")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (rubygems-uri "ruby-terraform" version))
> + (sha256
> + (base32
> + "1czpak24v570ysnk8waj1sblfm1vqh1sdwh934x4ai90ribhlbzf"))))
The indentation isn’t right here.
> + (build-system ruby-build-system)
> + (arguments
> + '(;; No included tests
> + #:tests? #f))
Could you please put this all on one line?
--
Ricardo
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 03/34] gnu: Add ruby-terraform.
2019-02-18 22:43 ` Ricardo Wurmus
@ 2019-02-19 22:43 ` Christopher Baines
0 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-19 22:43 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: 34514
[-- Attachment #1: Type: text/plain, Size: 1002 bytes --]
Ricardo Wurmus <rekado@elephly.net> writes:
> Christopher Baines <mail@cbaines.net> writes:
>
>> * gnu/packages/ruby.scm (ruby-terraform): New variable.
> […]
>> +(define-public ruby-terraform
>> + (package
>> + (name "ruby-terraform")
>> + (version "0.20.0")
>> + (source
>> + (origin
>> + (method url-fetch)
>> + (uri (rubygems-uri "ruby-terraform" version))
>> + (sha256
>> + (base32
>> + "1czpak24v570ysnk8waj1sblfm1vqh1sdwh934x4ai90ribhlbzf"))))
>
> The indentation isn’t right here.
Good spot, I've fixed this now.
>> + (build-system ruby-build-system)
>> + (arguments
>> + '(;; No included tests
>> + #:tests? #f))
>
> Could you please put this all on one line?
Ok. I've taken to putting the comment inline, as this is syntactically
next to the #:tests? argument and this makes it easier to add additional
arguments, as you don't have to shuffle the comment around. I'm happy to
just put it inline though.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 962 bytes --]
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 04/34] gnu: Add ruby-que.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 02/34] gnu: Add ruby-lino Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 03/34] gnu: Add ruby-terraform Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-18 22:45 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 05/34] gnu: Add ruby-rbnacl Christopher Baines
` (30 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-que): New variable.
---
gnu/packages/ruby.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index b307bc2257..9bcdbec4fd 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -6038,6 +6038,28 @@ requirement specifications systems like Cucumber.")
(home-page "https://rubyworks.github.io/qed")
(license license:bsd-2)))
+(define-public ruby-que
+ (package
+ (name "ruby-que")
+ (version "1.0.0.beta3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "que" version))
+ (sha256
+ (base32
+ "0gr9pb814d4qj3ds98g6cjrdk7wv0yg8aqbm7c1lmgl87jkg8q04"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (synopsis "Job queue using PostgreSQL written in Ruby")
+ (description
+ "This package provides a job queue that uses PostgreSQL for storing jobs
+and locking between worker processes.")
+ (home-page "https://github.com/chanks/que")
+ (license license:expat)))
+
(define-public ruby-ae
(package
(name "ruby-ae")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 05/34] gnu: Add ruby-rbnacl.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (2 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 04/34] gnu: Add ruby-que Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-18 22:47 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 06/34] gnu: Add ruby-jwt Christopher Baines
` (29 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-rbnacl): New variable.
---
gnu/packages/ruby.scm | 56 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 9bcdbec4fd..b17a03e7cc 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -35,6 +35,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages dbm)
#:use-module (gnu packages rails)
@@ -1336,6 +1337,61 @@ same log file.")
(home-page "https://github.com/bdurand/lumberjack")
(license license:expat)))
+(define-public ruby-rbnacl
+ (package
+ (name "ruby-rbnacl")
+ (version "6.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "rbnacl" version))
+ (sha256
+ (base32
+ "0ajxy5kj2jw09wdsla3jmha8w07vj5l14288xr9djpl327g3lzhn"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-unnecessary-dependencies
+ (lambda _
+ ;; Coveralls relates to a network service, and Rubocop to code
+ ;; linting and both are unnecessary to run the tests
+ (substitute* "Gemfile"
+ ((".*rubocop.*") "\n")
+ ((".*guard-rspec.*") "\n")
+ ((".*coveralls.*") "\n"))
+ (substitute* "spec/spec_helper.rb"
+ (("require \"coveralls\"") "")
+ (("Coveralls.wear!") ""))))
+ (add-after 'unpack 'use-libsodium-from-store
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("lib/rbnacl/init.rb"
+ "lib/rbnacl/sodium.rb")
+ (("\"sodium\", \"libsodium\\.so\\.18\", \"libsodium\\.so\\.23\"")
+ (string-append "\""
+ (assoc-ref inputs "libsodium") "/lib/libsodium.so"
+ "\"")))))
+ ;; Run Rspec directly to avoid the Rubocop dependency in the Rakefile
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "rspec"))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-ffi" ,ruby-ffi)))
+ (inputs
+ `(("libsodium" ,libsodium)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec)))
+ (synopsis "Ruby FFI binding to libsodium")
+ (description
+ "This package provides Ruby FFI bindings to the Networking and
+Cryptography (NaCl) library, also known as libsodium. This provides a
+high-level toolkit for building cryptographic systems and protocols.")
+ (home-page "https://github.com/crypto-rb/rbnacl")
+ (license license:expat)))
+
(define-public ruby-nenv
(package
(name "ruby-nenv")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 05/34] gnu: Add ruby-rbnacl.
2019-02-17 19:22 ` [bug#34514] [PATCH 05/34] gnu: Add ruby-rbnacl Christopher Baines
@ 2019-02-18 22:47 ` Ricardo Wurmus
2019-02-19 22:20 ` Christopher Baines
0 siblings, 1 reply; 69+ messages in thread
From: Ricardo Wurmus @ 2019-02-18 22:47 UTC (permalink / raw)
To: Christopher Baines; +Cc: 34514
Christopher Baines <mail@cbaines.net> writes:
> * gnu/packages/ruby.scm (ruby-rbnacl): New variable.
[…]
> + (add-after 'unpack 'remove-unnecessary-dependencies
> + (lambda _
> + ;; Coveralls relates to a network service, and Rubocop to code
> + ;; linting and both are unnecessary to run the tests
> + (substitute* "Gemfile"
> + ((".*rubocop.*") "\n")
> + ((".*guard-rspec.*") "\n")
> + ((".*coveralls.*") "\n"))
> + (substitute* "spec/spec_helper.rb"
> + (("require \"coveralls\"") "")
> + (("Coveralls.wear!") ""))))
Please end this phase with #T as substitute* has no defined return value.
> + (add-after 'unpack 'use-libsodium-from-store
> + (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* '("lib/rbnacl/init.rb"
> + "lib/rbnacl/sodium.rb")
> + (("\"sodium\", \"libsodium\\.so\\.18\", \"libsodium\\.so\\.23\"")
> + (string-append "\""
> + (assoc-ref inputs "libsodium") "/lib/libsodium.so"
> + "\"")))))
Same here.
This regexp looks brittle. Can we do without the “18” and “23”?
--
Ricardo
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 05/34] gnu: Add ruby-rbnacl.
2019-02-18 22:47 ` Ricardo Wurmus
@ 2019-02-19 22:20 ` Christopher Baines
0 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-19 22:20 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: 34514
[-- Attachment #1: Type: text/plain, Size: 1562 bytes --]
Ricardo Wurmus <rekado@elephly.net> writes:
> Christopher Baines <mail@cbaines.net> writes:
>
>> * gnu/packages/ruby.scm (ruby-rbnacl): New variable.
> […]
>> + (add-after 'unpack 'remove-unnecessary-dependencies
>> + (lambda _
>> + ;; Coveralls relates to a network service, and Rubocop to code
>> + ;; linting and both are unnecessary to run the tests
>> + (substitute* "Gemfile"
>> + ((".*rubocop.*") "\n")
>> + ((".*guard-rspec.*") "\n")
>> + ((".*coveralls.*") "\n"))
>> + (substitute* "spec/spec_helper.rb"
>> + (("require \"coveralls\"") "")
>> + (("Coveralls.wear!") ""))))
>
> Please end this phase with #T as substitute* has no defined return value.
Ah, yes, I've tweaked the patch.
>> + (add-after 'unpack 'use-libsodium-from-store
>> + (lambda* (#:key inputs #:allow-other-keys)
>> + (substitute* '("lib/rbnacl/init.rb"
>> + "lib/rbnacl/sodium.rb")
>> + (("\"sodium\", \"libsodium\\.so\\.18\", \"libsodium\\.so\\.23\"")
>> + (string-append "\""
>> + (assoc-ref inputs "libsodium") "/lib/libsodium.so"
>> + "\"")))))
>
> Same here.
>
> This regexp looks brittle. Can we do without the “18” and “23”?
Sure, I've replaced it by "ffi_lib \\[.+\\]". That should do the trick
without being specific about the filenames.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 962 bytes --]
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 06/34] gnu: Add ruby-jwt.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (3 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 05/34] gnu: Add ruby-rbnacl Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-20 11:54 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 07/34] gnu: Add ruby-multi-xml Christopher Baines
` (28 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-jwt): New variable.
---
gnu/packages/ruby.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index b17a03e7cc..5b4d52ac4a 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -3952,6 +3952,43 @@ a native C extension.")
(home-page "https://flori.github.com/json")
(license license:ruby)))
+(define-public ruby-jwt
+ (package
+ (name "ruby-jwt")
+ (version "2.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "jwt" version))
+ (sha256
+ (base32
+ "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-unnecessary-dependencies
+ (lambda _
+ (substitute* "spec/spec_helper.rb"
+ (("require 'simplecov.*") "\n")
+ ;; Use [].each to disable running the SimpleCov configuration
+ ;; block
+ (("SimpleCov\\.configure") "[].each")
+ (("require 'codeclimate-test-reporter'") "")
+ (("require 'codacy-coverage'") "")
+ (("Codacy::Reporter\\.start") "")))))))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-rbnacl" ,ruby-rbnacl)))
+ (synopsis "Ruby implementation of the JSON Web Token standard")
+ (description
+ "This package provides a pure Ruby implementation of the RFC 7519 OAuth
+@acronym{JWT, JSON Web Token} standard.")
+ (home-page "https://github.com/jwt/ruby-jwt")
+ (license license:expat)))
+
;; Even though this package only provides bindings for a Mac OSX API it is
;; required by "ruby-listen" at runtime.
(define-public ruby-rb-fsevent
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 06/34] gnu: Add ruby-jwt.
2019-02-17 19:22 ` [bug#34514] [PATCH 06/34] gnu: Add ruby-jwt Christopher Baines
@ 2019-02-20 11:54 ` Ricardo Wurmus
2019-03-02 12:34 ` Christopher Baines
0 siblings, 1 reply; 69+ messages in thread
From: Ricardo Wurmus @ 2019-02-20 11:54 UTC (permalink / raw)
To: Christopher Baines; +Cc: 34514
Christopher Baines <mail@cbaines.net> writes:
> * gnu/packages/ruby.scm (ruby-jwt): New variable.
> ---
> gnu/packages/ruby.scm | 37 +++++++++++++++++++++++++++++++++++++
> 1 file changed, 37 insertions(+)
>
> diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
> index b17a03e7cc..5b4d52ac4a 100644
> --- a/gnu/packages/ruby.scm
> +++ b/gnu/packages/ruby.scm
> @@ -3952,6 +3952,43 @@ a native C extension.")
> (home-page "https://flori.github.com/json")
> (license license:ruby)))
>
> +(define-public ruby-jwt
> + (package
> + (name "ruby-jwt")
> + (version "2.1.0")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (rubygems-uri "jwt" version))
> + (sha256
> + (base32
> + "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky"))))
> + (build-system ruby-build-system)
> + (arguments
> + '(#:test-target "test"
> + #:phases
> + (modify-phases %standard-phases
> + (add-after 'unpack 'remove-unnecessary-dependencies
> + (lambda _
> + (substitute* "spec/spec_helper.rb"
> + (("require 'simplecov.*") "\n")
> + ;; Use [].each to disable running the SimpleCov configuration
> + ;; block
> + (("SimpleCov\\.configure") "[].each")
> + (("require 'codeclimate-test-reporter'") "")
> + (("require 'codacy-coverage'") "")
> + (("Codacy::Reporter\\.start") "")))))))
Please end this lambda with #T.
> + "This package provides a pure Ruby implementation of the RFC 7519 OAuth
> +@acronym{JWT, JSON Web Token} standard.")
If ’guix lint’ doesn’t complain about the use of @acronym (I’ve never
used it in a description) it’s all good.
--
Ricardo
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 06/34] gnu: Add ruby-jwt.
2019-02-20 11:54 ` Ricardo Wurmus
@ 2019-03-02 12:34 ` Christopher Baines
0 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-03-02 12:34 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: 34514
[-- Attachment #1: Type: text/plain, Size: 1981 bytes --]
Ricardo Wurmus <rekado@elephly.net> writes:
> Christopher Baines <mail@cbaines.net> writes:
>
>> * gnu/packages/ruby.scm (ruby-jwt): New variable.
>> ---
>> gnu/packages/ruby.scm | 37 +++++++++++++++++++++++++++++++++++++
>> 1 file changed, 37 insertions(+)
>>
>> diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
>> index b17a03e7cc..5b4d52ac4a 100644
>> --- a/gnu/packages/ruby.scm
>> +++ b/gnu/packages/ruby.scm
>> @@ -3952,6 +3952,43 @@ a native C extension.")
>> (home-page "https://flori.github.com/json")
>> (license license:ruby)))
>>
>> +(define-public ruby-jwt
>> + (package
>> + (name "ruby-jwt")
>> + (version "2.1.0")
>> + (source
>> + (origin
>> + (method url-fetch)
>> + (uri (rubygems-uri "jwt" version))
>> + (sha256
>> + (base32
>> + "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky"))))
>> + (build-system ruby-build-system)
>> + (arguments
>> + '(#:test-target "test"
>> + #:phases
>> + (modify-phases %standard-phases
>> + (add-after 'unpack 'remove-unnecessary-dependencies
>> + (lambda _
>> + (substitute* "spec/spec_helper.rb"
>> + (("require 'simplecov.*") "\n")
>> + ;; Use [].each to disable running the SimpleCov configuration
>> + ;; block
>> + (("SimpleCov\\.configure") "[].each")
>> + (("require 'codeclimate-test-reporter'") "")
>> + (("require 'codacy-coverage'") "")
>> + (("Codacy::Reporter\\.start") "")))))))
>
> Please end this lambda with #T.
Good spot, I'll add #t.
>> + "This package provides a pure Ruby implementation of the RFC 7519 OAuth
>> +@acronym{JWT, JSON Web Token} standard.")
>
> If ’guix lint’ doesn’t complain about the use of @acronym (I’ve never
> used it in a description) it’s all good.
Yep, it seems to be fine with it :)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 962 bytes --]
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 07/34] gnu: Add ruby-multi-xml.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (4 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 06/34] gnu: Add ruby-jwt Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-20 17:04 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 08/34] gnu: Add ruby-oauth2 Christopher Baines
` (27 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-multi-xml): New variable.
---
gnu/packages/ruby.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 5b4d52ac4a..1a981a5bb3 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -3019,6 +3019,28 @@ options and parsing command line flags.")
(base32
"00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n"))))))
+(define-public ruby-multi-xml
+ (package
+ (name "ruby-multi-xml")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "multi_xml" version))
+ (sha256
+ (base32
+ "0lmd4f401mvravi1i1yq7b2qjjli0yq7dfc4p1nj5nwajp7r6hyj"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (synopsis "Provides swappable XML backends for Ruby")
+ (description
+ "Provides swappable XML backends utilizing LibXML, Nokogiri, Ox, or
+REXML.")
+ (home-page "https://github.com/sferik/multi_xml")
+ (license license:expat)))
+
(define-public ruby-multipart-post
(package
(name "ruby-multipart-post")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 08/34] gnu: Add ruby-oauth2.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (5 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 07/34] gnu: Add ruby-multi-xml Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-20 17:08 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 09/34] gnu: Add ruby-omniauth Christopher Baines
` (26 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-oauth2): New variable.
---
gnu/packages/ruby.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 1a981a5bb3..0063a1f7c5 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -1097,6 +1097,34 @@ complexity.")
(home-page "https://github.com/ThoughtWorksStudios/saikuro_treemap")
(license license:expat)))
+(define-public ruby-oauth2
+ (package
+ (name "ruby-oauth2")
+ (version "1.4.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "oauth2" version))
+ (sha256
+ (base32
+ "0av6nlb5y2sm6m8fx669ywrqa9858yqaqfqzny75nqp3anag89qh"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-faraday" ,ruby-faraday)
+ ("ruby-jwt" ,ruby-jwt)
+ ("ruby-multi-json" ,ruby-multi-json)
+ ("ruby-multi-xml" ,ruby-multi-xml)
+ ("ruby-rack" ,ruby-rack)))
+ (synopsis "Ruby wrapper for the OAuth 2.0")
+ (description
+ "This package provides a Ruby wrapper for the OAuth 2.0 protocol built
+with a similar style to the original OAuth spec.")
+ (home-page "https://github.com/oauth-xx/oauth2")
+ (license license:expat)))
+
(define-public ruby-open4
(package
(name "ruby-open4")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 09/34] gnu: Add ruby-omniauth.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (6 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 08/34] gnu: Add ruby-oauth2 Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-20 20:34 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 10/34] gnu: Add ruby-warden Christopher Baines
` (25 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packags/ruby.scm (ruby-omniauth): New variable.
---
gnu/packages/ruby.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 0063a1f7c5..78415ecc9e 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -1125,6 +1125,31 @@ with a similar style to the original OAuth spec.")
(home-page "https://github.com/oauth-xx/oauth2")
(license license:expat)))
+(define-public ruby-omniauth
+ (package
+ (name "ruby-omniauth")
+ (version "1.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "omniauth" version))
+ (sha256
+ (base32
+ "1p16h1rp8by05k8gfw17xjhgwp60dk8qmj1xalv1n23kmxfsxb1x"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No incldued tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-hashie" ,ruby-hashie)
+ ("ruby-rack" ,ruby-rack)))
+ (synopsis "Generalized Rack framework for multiple-provider authentication")
+ (description
+ "This package provides a generalized Rack framework for multiple-provider
+authentication.")
+ (home-page "https://github.com/omniauth/omniauth")
+ (license license:expat)))
+
(define-public ruby-open4
(package
(name "ruby-open4")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 10/34] gnu: Add ruby-warden.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (7 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 09/34] gnu: Add ruby-omniauth Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-20 20:35 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 11/34] gnu: Add ruby-warden-oauth2 Christopher Baines
` (24 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-warden): New variable.
---
gnu/packages/ruby.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 78415ecc9e..a67da64ce5 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -5739,6 +5739,29 @@ support to both Ruby and JRuby. It uses @code{unf_ext} on CRuby and
(home-page "https://github.com/knu/ruby-unf")
(license license:bsd-2)))
+(define-public ruby-warden
+ (package
+ (name "ruby-warden")
+ (version "1.2.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "warden" version))
+ (sha256
+ (base32
+ "1fr9n9i9r82xb6i61fdw4xgc7zjv7fsdrr4k0njchy87iw9fl454"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-rack" ,ruby-rack)))
+ (synopsis "Rack middleware providing authentication")
+ (description
+ "Rack middleware that provides authentication for rack applications.")
+ (home-page "https://github.com/wardencommunity/warden")
+ (license license:expat)))
+
(define-public ruby-webmock-2
(package
(name "ruby-webmock")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 11/34] gnu: Add ruby-warden-oauth2.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (8 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 10/34] gnu: Add ruby-warden Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-20 20:36 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 12/34] gnu: Add ruby-with-advisory-lock Christopher Baines
` (23 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-warden-oauth2): New variable.
---
gnu/packages/ruby.scm | 48 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index a67da64ce5..7a883c2366 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -5762,6 +5762,54 @@ support to both Ruby and JRuby. It uses @code{unf_ext} on CRuby and
(home-page "https://github.com/wardencommunity/warden")
(license license:expat)))
+(define-public ruby-warden-oauth2
+ (package
+ (name "ruby-warden-oauth2")
+ (version "0.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "warden-oauth2" version))
+ (sha256
+ (base32
+ "1z9154lvzrnnfjbjkmirh4n811nygp6pm2fa6ikr7y1ysa4zv3cz"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:test-target "spec"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-unnecessary-dependencies
+ (lambda _
+ (substitute* "Gemfile"
+ ;; All of these gems relate to development, and are unnecessary
+ ;; when running the tests
+ (("gem 'guard-bundler'") "")
+ (("gem 'guard'") "")
+ (("gem 'guard-rspec'") "")
+ (("gem 'rb-fsevent'") "")
+ (("gem 'pry'") "")
+ (("gem 'growl'") ""))
+ #t))
+ ;; The test suite doesn't work with rspec@2, and this is incompatible
+ ;; with the current version of Rake, so invoke Rspec directly
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "bundle" "exec" "rspec"))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-warden" ,ruby-warden)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec-2)
+ ("ruby-rack-test" ,ruby-rack-test)))
+ (synopsis "OAuth 2.0 strategies for Warden")
+ (description
+ "This library extends Warden to support OAuth 2.0 authorized API
+requests.")
+ (home-page "https://github.com/opperator/warden-oauth2")
+ (license license:expat)))
+
(define-public ruby-webmock-2
(package
(name "ruby-webmock")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 12/34] gnu: Add ruby-with-advisory-lock.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (9 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 11/34] gnu: Add ruby-warden-oauth2 Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-20 22:11 ` Ricardo Wurmus
2019-02-17 19:22 ` [bug#34514] [PATCH 13/34] gnu: Add ruby-omniauth-oauth2 Christopher Baines
` (22 subsequent siblings)
33 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/rails.scm (ruby-with-advisory-lock): New variable.
---
gnu/packages/rails.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/rails.scm b/gnu/packages/rails.scm
index 2d7ccceff7..739f97090d 100644
--- a/gnu/packages/rails.scm
+++ b/gnu/packages/rails.scm
@@ -413,6 +413,34 @@ application bootup, plugins, generators, and Rake tasks.")
"https://github.com/rails/sprockets-rails")
(license license:expat)))
+(define-public ruby-with-advisory-lock
+ (package
+ (name "ruby-with-advisory-lock")
+ (version "4.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "with_advisory_lock" version))
+ (sha256
+ (base32
+ "1k37hxgmaqgsd54gplm5xim9nw3ghvqsbzaw7q4q64ha1nbd9a41"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; TODO Tests require a running MySQL service
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-activerecord" ,ruby-activerecord)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-yard" ,ruby-yard)
+ ("ruby-mysql2" ,ruby-mysql2)))
+ (synopsis "Advisory locking for ActiveRecord")
+ (description
+ "Adds advisory locking to ActiveRecord for PostgreSQL and MySQL. SQLite
+is also supported, but this uses the filesystem for locks.")
+ (home-page "http://closuretree.github.io/with_advisory_lock/")
+ (license license:expat)))
+
(define-public ruby-rails
(package
(name "ruby-rails")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 13/34] gnu: Add ruby-omniauth-oauth2.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (10 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 12/34] gnu: Add ruby-with-advisory-lock Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 14/34] gnu: Add ruby-test-construct Christopher Baines
` (21 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-omniauth-oauth2): New variable.
---
gnu/packages/ruby.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 7a883c2366..f203b1f4f2 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -1150,6 +1150,48 @@ authentication.")
(home-page "https://github.com/omniauth/omniauth")
(license license:expat)))
+(define-public ruby-omniauth-oauth2
+ (package
+ (name "ruby-omniauth-oauth2")
+ (version "1.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "omniauth-oauth2" version))
+ (sha256
+ (base32
+ "11mi36l9d97r77q99jnafdc1yaa0a9wahhpp7dj7ank8q52g7g79"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-unnecessary-dependencies
+ (lambda _
+ ;; The coveralls gem submits coverage information to an online
+ ;; service, and is unnecessary when running the tests
+ (substitute* "Gemfile"
+ ((".*coveralls\"") ""))
+ (substitute* "spec/helper.rb"
+ (("require \"coveralls\"") "")
+ (("Coveralls::SimpleCov::Formatter") ""))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-oauth2" ,ruby-oauth2)
+ ("ruby-omniauth" ,ruby-omniauth)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-simplecov" ,ruby-simplecov)
+ ("ruby-rack-test" ,ruby-rack-test)
+ ("ruby-webmock" ,ruby-webmock-2)))
+ (synopsis "Abstract OAuth2 strategy for OmniAuth")
+ (description
+ "This library provides a generic OAuth2 strategy for OmniAuth. It
+doesn't provide a way to gather user information, so should be used as a
+building block for authentication strategies.")
+ (home-page "https://github.com/omniauth/omniauth-oauth2")
+ (license license:expat)))
+
(define-public ruby-open4
(package
(name "ruby-open4")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 14/34] gnu: Add ruby-test-construct.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (11 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 13/34] gnu: Add ruby-omniauth-oauth2 Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 15/34] gnu: Add ruby-minitest-around Christopher Baines
` (20 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-test-construct): New variable.
---
gnu/packages/ruby.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index f203b1f4f2..31a3e9a4a6 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -2165,6 +2165,29 @@ use GNU gettext tools for maintenance.")
(home-page "http://ranguba.org/packnga/")
(license license:lgpl2.0+)))
+(define-public ruby-test-construct
+ (package
+ (name "ruby-test-construct")
+ (version "2.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "test_construct" version))
+ (sha256
+ (base32
+ "1a2ym3l068d0pxzzr95kvqx87zpdsarxslz9ygd4qfm9frrz0kgj"))))
+ (build-system ruby-build-system)
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-mocha" ,ruby-mocha)
+ ("ruby-rspec" ,ruby-rspec)))
+ (synopsis "Creates temporary files and directories for testing")
+ (description
+ "TestConstruct is a @acronym{DSL, Domain Specific Language} for creating
+temporary files and directories during tests.")
+ (home-page "https://github.com/bhb/test_construct")
+ (license license:expat)))
+
(define-public ruby-test-unit
(package
(name "ruby-test-unit")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 15/34] gnu: Add ruby-minitest-around.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (12 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 14/34] gnu: Add ruby-test-construct Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 16/34] gnu: Add libsass Christopher Baines
` (19 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-minitest-around): New variable.
---
gnu/packages/ruby.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 31a3e9a4a6..dbfd601d31 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -2765,6 +2765,40 @@ facilities supporting TDD, BDD, mocking, and benchmarking.")
(delete-file "test/minitest/test_minitest_spec.rb")
#t)))))))
+(define-public ruby-minitest-around
+ (package
+ (name "ruby-minitest-around")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "minitest-around" version))
+ (sha256
+ (base32
+ "15ywnqx0719jl9c25yqfshmwcir57i5f4hr1ra9v9vay9ylcwndr"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'extract-gemspec 'remove-unnecessary-dependency-versions
+ (lambda _
+ (substitute* "minitest-around.gemspec"
+ (("%q<cucumber>.*") "%q<cucumber>, [\">= 0\"])\n"))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-minitest" ,ruby-minitest)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-cucumber" ,ruby-cucumber)
+ ("ruby-bump" ,ruby-bump)
+ ("ruby-test-construct" ,ruby-test-construct)))
+ (synopsis "Run code around tests in Minitest")
+ (description
+ "This library provides a way to run code around tests in Minitest,
+written using either the unit test or spec style.")
+ (home-page "https://github.com/splattael/minitest-around")
+ (license license:expat)))
+
(define-public ruby-minitest-sprint
(package
(name "ruby-minitest-sprint")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 16/34] gnu: Add libsass.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (13 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 15/34] gnu: Add ruby-minitest-around Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 17/34] gnu: sassc: Update and improve the package Christopher Baines
` (18 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/web.scm (libsass): New variable.
---
gnu/packages/web.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index d8bab34e51..ed2a7df2e1 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -24,6 +24,7 @@
;;; Copyright © 2017 Petter <petter@mykolab.ch>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
@@ -1248,6 +1249,40 @@ minimum to provide high performance operation.")
;; bundled CuTest framework uses a different non-copyleft license.
(license (list l:asl2.0 (l:non-copyleft "file://test/CuTest-README.txt")))))
+(define-public libsass
+ (package
+ (name "libsass")
+ (version "3.5.5")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sass/libsass.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0830pjcvhzxh6yixj82x5k5r1xnadjqzi16kp53213icbly0r9ma"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'bootstrap 'set-LIBSASS_VERSION
+ (lambda _
+ (setenv "LIBSASS_VERSION" ,version)
+ #t)))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
+ (home-page "https://sass-lang.com/libsass")
+ (synopsis "SASS Compiler, implemented as a C/C++ library")
+ (description
+ "LibSass is a @acronym{SASS,Syntactically awesome style sheets} compiler
+library designed for portability and efficiency. To actually compile SASS
+stylesheets, you'll need to use another program that uses this library,
+@var{sassc} for example.")
+ (license l:expat)))
+
(define-public sassc
;; libsass must be statically linked and it isn't included in the sassc
;; release tarballs, hence this odd package recipe.
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 17/34] gnu: sassc: Update and improve the package.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (14 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 16/34] gnu: Add libsass Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 18/34] gnu: Add ruby-sassc Christopher Baines
` (17 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
Now that libsass is packaged, change the sassc package to build a dynamically
linked binary. Also update the version, and change the source to the Git
repository, rather than the archives from GitHub.
* gnu/packages/web.scm (sassc): Update to 3.5.0.
[source]: Change to the Git repository.
[arguments]: Tweak to link against libsass.
---
gnu/packages/web.scm | 95 +++++++++++++++++++++-----------------------
1 file changed, 46 insertions(+), 49 deletions(-)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index ed2a7df2e1..49fbfd1f8d 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -1284,56 +1284,53 @@ stylesheets, you'll need to use another program that uses this library,
(license l:expat)))
(define-public sassc
- ;; libsass must be statically linked and it isn't included in the sassc
- ;; release tarballs, hence this odd package recipe.
- (let* ((version "3.4.5")
- (libsass
- (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/sass/libsass/archive/"
- version ".tar.gz"))
- (file-name (string-append "libsass-" version ".tar.gz"))
- (sha256
- (base32
- "1j22138l5ymqjfj5zan9d2hipa3ahjmifgpjahqy1smlg5sb837x")))))
- (package
- (name "sassc")
- (version version)
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/sass/sassc/archive/"
- version ".tar.gz"))
- (file-name (string-append "sassc-" version ".tar.gz"))
- (sha256
- (base32
- "1xk4kmmvziz9sal3swpqa10q0s289xjpcz8aggmly8mvxvmngsi9"))))
- (build-system gnu-build-system)
- (arguments
- `(#:make-flags
- (list "CC=gcc"
- (string-append "PREFIX=" (assoc-ref %outputs "out")))
- #:test-target "test"
- ;; FIXME: "make test" rebuilds the application and gets lost in a
- ;; non-existing directory.
- #:tests? #f
- #:phases
- (modify-phases %standard-phases
- (delete 'bootstrap)
- (delete 'configure)
- (add-after 'unpack 'unpack-libsass-and-set-path
- (lambda* (#:key inputs #:allow-other-keys)
- (invoke "tar" "xvf" (assoc-ref inputs "libsass"))
- (setenv "SASS_LIBSASS_PATH"
- (string-append (getcwd) "/libsass-" ,version))
- #t)))))
- (inputs
- `(("libsass" ,libsass)))
- (synopsis "CSS pre-processor")
- (description "SassC is a compiler written in C for the CSS pre-processor
+ (package
+ (name "sassc")
+ (version "3.5.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sass/sassc.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0jsfz1zg4gwk0dq8i92ll12axs3s70wsdsmdyi71zx8zmvib5nl6"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags
+ (list "CC=gcc"
+ (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ ;; I don't believe sassc contains any tests
+ #:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-Makefile
+ (lambda _
+ (substitute* "Makefile"
+ (("build-shared: \\$\\(RESOURCES\\) \\$\\(OBJECTS\\) \\$\\(LIB_SHARED\\)")
+ "build-shared: $(RESOURCES) $(OBJECTS)")
+ (("\\$\\(SASSC_EXE\\): libsass build")
+ "$(SASSC_EXE): build")
+ (("install: libsass-install-\\$\\(BUILD\\) \\\\")
+ "install: \\"))
+ #t))
+ ;; This phase fails for some reason
+ (delete 'bootstrap)
+ ;; There is no configure script
+ (delete 'configure)
+ (add-before 'build 'setup-environment
+ (lambda _
+ (setenv "BUILD" "shared")
+ (setenv "SASSC_VERSION" ,version)
+ #t)))))
+ (inputs
+ `(("libsass" ,libsass)))
+ (synopsis "CSS pre-processor")
+ (description "SassC is a compiler written in C for the CSS pre-processor
language known as SASS.")
- (home-page "http://sass-lang.com/libsass")
- (license l:expat))))
+ (home-page "http://sass-lang.com/libsass")
+ (license l:expat)))
\f
(define-public perl-apache-logformat-compiler
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 18/34] gnu: Add ruby-sassc.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (15 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 17/34] gnu: sassc: Update and improve the package Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-17 19:22 ` [bug#34514] [PATCH 19/34] gnu: Add ruby-markaby Christopher Baines
` (16 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-sassc): New variable.
---
gnu/packages/ruby.scm | 74 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 74 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index dbfd601d31..ab17c20d62 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -7340,6 +7340,80 @@ the @file{spec} directory.")
features that don't exist yet like variables, nesting, mixins and inheritance.")
(license license:expat)))
+(define-public ruby-sassc
+ (package
+ (name "ruby-sassc")
+ (version "2.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "sassc" version))
+ (sha256
+ (base32
+ "0xw8wyr27108x4gbidvb71ngxvn00h6c11xsrxby4c6h92zs06dn"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ ;; TODO: This would be better as a snippet, but the ruby-build-system
+ ;; doesn't seem to support that
+ (add-after 'unpack 'remove-libsass
+ (lambda _
+ (delete-file-recursively "ext")
+ #t))
+ (add-after 'unpack 'dont-check-the-libsass-version
+ (lambda _
+ (substitute* "test/native_test.rb"
+ (("assert_equal.*Native\\.version") ""))
+ #t))
+ (add-after 'unpack 'remove-git-from-gemspec
+ (lambda _
+ (substitute* "sassc.gemspec"
+ (("`git ls-files -z`") "`find . -type f -print0 |sort -z`")
+ (("`git submodule --quiet foreach pwd`") "''"))
+ #t))
+ (add-after 'unpack 'remove-extensions-from-gemspec
+ (lambda _
+ (substitute* "sassc.gemspec"
+ (("\\[\"ext/Rakefile\"\\]") "[]"))
+ #t))
+ (add-after 'unpack 'fix-Rakefile
+ (lambda _
+ (substitute* "Rakefile"
+ (("test: 'libsass:compile'") ":test"))
+ #t))
+ (add-after 'unpack 'remove-unnecessary-dependencies
+ (lambda _
+ (substitute* "test/test_helper.rb"
+ (("require \"pry\"") ""))
+ #t))
+ (add-before 'build 'patch-native.rb
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "lib/sassc/native.rb"
+ ((".*gem_root = spec.gem_dir") "")
+ (("ffi_lib .*\n")
+ (string-append
+ "ffi_lib '" (assoc-ref inputs "libsass") "/lib/libsass.so'")))))
+ ;; The gemspec still references the libsass files, so just keep the
+ ;; one in the gem.
+ (delete 'extract-gemspec))))
+ (propagated-inputs
+ `(("ruby-ffi" ,ruby-ffi)
+ ("ruby-rake" ,ruby-rake)))
+ (inputs
+ `(("libsass" ,libsass)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-minitest-around" ,ruby-minitest-around)
+ ("ruby-test-construct" ,ruby-test-construct)))
+ (synopsis "Use libsss from Ruby")
+ (description
+ "This library provides Ruby q@acronym{FFI, Foreign Function Interface}
+bindings to the libsass library. This enables rendering
+@acronym{SASS,Syntactically awesome style sheets} from Ruby code.")
+ (home-page "https://github.com/sass/sassc-ruby")
+ (license license:expat)))
+
(define-public ruby-jekyll-sass-converter
(package
(name "ruby-jekyll-sass-converter")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 19/34] gnu: Add ruby-markaby.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (16 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 18/34] gnu: Add ruby-sassc Christopher Baines
@ 2019-02-17 19:22 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 20/34] gnu: Add ruby-temple Christopher Baines
` (15 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:22 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-markaby): New variable.
---
gnu/packages/ruby.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index ab17c20d62..8fe0e9b60f 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -2213,6 +2213,43 @@ It allows writing tests, checking results and automated testing in Ruby.")
(home-page "https://test-unit.github.io/")
(license (list license:psfl license:ruby))))
+(define-public ruby-markaby
+ (package
+ (name "ruby-markaby")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "markaby" version))
+ (sha256
+ (base32
+ "1j4jc31ycydbkh5h3q6zwidzpavg3g5mbb5lqyaczd3jrq78rd7i"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ ;; Run rspec manually without using the Rakefile, as the versions of
+ ;; Rake and RSpec 2 are incompatible:
+ ;;
+ ;; NoMethodError: undefined method `last_comment'
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "rspec"))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-builder" ,ruby-builder)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec-2)))
+ (synopsis "Write HTML pages in pure Ruby")
+ (description
+ "Markaby allows writing HTML packages in pure Ruby. This is similar to
+the functionality provided by @acronym{ERB, Embeded Ruby}, but without the
+mixture of HTML and additional ERB syntax.")
+ (home-page "http://markaby.github.io/")
+ (license license:expat)))
+
(define-public ruby-maruku
(package
(name "ruby-maruku")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 20/34] gnu: Add ruby-temple.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (17 preceding siblings ...)
2019-02-17 19:22 ` [bug#34514] [PATCH 19/34] gnu: Add ruby-markaby Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 21/34] gnu: Add ruby-haml Christopher Baines
` (14 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-temple): New variable.
---
gnu/packages/ruby.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 8fe0e9b60f..f47802a389 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -2093,6 +2093,28 @@ localization.")
(home-page "https://github.com/ruby-gettext/locale")
(license (list license:lgpl3+ license:ruby))))
+(define-public ruby-temple
+ (package
+ (name "ruby-temple")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "temple" version))
+ (sha256
+ (base32
+ "00nxf610nzi4n1i2lkby43nrnarvl89fcl6lg19406msr0k3ycmq"))))
+ (build-system ruby-build-system)
+ (native-inputs
+ `(("ruby-tilt" ,ruby-tilt)
+ ("ruby-bacon" ,ruby-bacon)
+ ("ruby-erubis" ,ruby-erubis)))
+ (synopsis "Template compilation framework in Ruby")
+ (description
+ "Abstraction and a framework for compiling templates to pure Ruby.")
+ (home-page "https://github.com/judofyr/temple")
+ (license license:expat)))
+
(define-public ruby-text
(package
(name "ruby-text")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 21/34] gnu: Add ruby-haml.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (18 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 20/34] gnu: Add ruby-temple Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 22/34] gnu: Add ruby-tilt Christopher Baines
` (13 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-haml): New variable.
---
gnu/packages/ruby.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index f47802a389..6548ef095e 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -1661,6 +1661,34 @@ failure.")
(home-page "https://github.com/thekompanee/fuubar")
(license license:expat)))
+(define-public ruby-haml
+ (package
+ (name "ruby-haml")
+ (version "5.0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "haml" version))
+ (sha256
+ (base32
+ "1q0a9fvqh8kn6wm97fcks6qzbjd400bv8bx748w8v87m7p4klhac"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-tilt" ,ruby-tilt)
+ ("ruby-temple" ,ruby-temple)))
+ (synopsis "Haml is a Ruby library to generate HTML documents")
+ (description
+ "@acronym{Haml, HTML Abstraction Markup Language} is a layer on top of
+HTML or XML that is designed to express the structure of documents using
+indentation rather than closing tags. It was originally envisioned as a
+plugin for Ruby on Rails, but it can function as a stand-alone templating
+engine.")
+ (home-page "http://haml.info/")
+ (license license:expat)))
+
(define-public ruby-hamster
(package
(name "ruby-hamster")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 22/34] gnu: Add ruby-tilt.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (19 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 21/34] gnu: Add ruby-haml Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 23/34] gnu: Add ruby-sass-rails Christopher Baines
` (12 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-tilt): New variable.
---
gnu/packages/ruby.scm | 46 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 6548ef095e..1fed53f392 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -3744,6 +3744,52 @@ file or directories are modified.")
(home-page "http://guardgem.org/")
(license license:expat)))
+(define-public ruby-tilt
+ (package
+ (name "ruby-tilt")
+ (version "2.0.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "tilt" version))
+ (sha256
+ (base32
+ "0ca4k0clwf0rkvy7726x4nxpjxkpv67w043i39saxgldxd97zmwz"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-some-dependencies
+ (lambda _
+ (substitute* "Gemfile"
+ ;; TODO ronn is used for generating the manual
+ (("gem 'ronn'.*") "\n")
+ ;; ruby-haml has a runtime dependency on ruby-tilt, so don't
+ ;; pass it in as a native-input
+ (("gem 'haml'.*") "\n")
+ ;; TODO Not all of these gems are packaged for Guix yet:
+ ;; less, coffee-script, livescript, babel-transpiler,
+ ;; typescript-node
+ (("if can_execjs") "if false")
+ ;; Disable the secondary group to reduce the number of
+ ;; dependencies. None of the normal approaches work, so patch
+ ;; the Gemfile instead.
+ (("group :secondary") "[].each"))
+ #t)))))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-yard" ,ruby-yard)
+ ("ruby-builder" ,ruby-builder)
+ ("ruby-erubis" ,ruby-erubis)
+ ("ruby-markaby" ,ruby-markaby)
+ ("ruby-sassc" ,ruby-sassc)))
+ (synopsis "Generic interface to multiple Ruby template engines")
+ (description
+ "Tilt is a thin interface over a number of different Ruby template
+engines in an attempt to make their usage as generic as possible.")
+ (home-page "https://github.com/rtomayko/tilt/")
+ (license license:expat)))
+
(define-public ruby-thread-safe
(package
(name "ruby-thread-safe")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 23/34] gnu: Add ruby-sass-rails.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (20 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 22/34] gnu: Add ruby-tilt Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 24/34] gnu: Add ruby-dep Christopher Baines
` (11 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/rails.scm (ruby-sass-rails): New variable.
---
gnu/packages/rails.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/rails.scm b/gnu/packages/rails.scm
index 739f97090d..cdce500e2b 100644
--- a/gnu/packages/rails.scm
+++ b/gnu/packages/rails.scm
@@ -65,6 +65,34 @@ migration.")
(home-page "https://github.com/rails/spring")
(license license:expat)))
+(define-public ruby-sass-rails
+ (package
+ (name "ruby-sass-rails")
+ (version "5.0.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "sass-rails" version))
+ (sha256
+ (base32
+ "1wa63sbsimrsf7nfm8h0m1wbsllkfxvd7naph5d1j6pbc555ma7s"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-railties" ,ruby-railties)
+ ("ruby-sass" ,ruby-sass)
+ ("ruby-sprockets" ,ruby-sprockets)
+ ("ruby-sprockets-rails" ,ruby-sprockets-rails)
+ ("ruby-tilt" ,ruby-tilt)))
+ (synopsis "Sass adapter for the Rails asset pipeline")
+ (description
+ "This library integrates the SASS stylesheet language in to Ruby on
+Rails.")
+ (home-page "https://github.com/rails/sass-rails")
+ (license license:expat)))
+
(define-public ruby-debug-inspector
(package
(name "ruby-debug-inspector")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 24/34] gnu: Add ruby-dep.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (21 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 23/34] gnu: Add ruby-sass-rails Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 25/34] gnu: ruby-jekyll-watch: Update to 2.1.2 Christopher Baines
` (10 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-dep): New variable.
---
gnu/packages/ruby.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 1fed53f392..e4d75e4a76 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -3650,6 +3650,28 @@ rate.")
(home-page "https://github.com/paul/progress_bar")
(license license:wtfpl2)))
+(define-public ruby-dep
+ (package
+ (name "ruby-dep")
+ (version "1.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "ruby_dep" version))
+ (sha256
+ (base32
+ "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (synopsis "Creates a version constraint of supported Rubies")
+ (description
+ "Creates a version constraint of supported Rubies, suitable for a gemspec
+file.")
+ (home-page "https://github.com/e2/ruby_dep")
+ (license license:expat)))
+
(define-public ruby-progressbar
(package
(name "ruby-progressbar")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 25/34] gnu: ruby-jekyll-watch: Update to 2.1.2.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (22 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 24/34] gnu: Add ruby-dep Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 26/34] gnu: Remove ruby-listen-3.0 Christopher Baines
` (9 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-jekyll-watch): Update to 2.1.2.
[propagated-inputs]: Change to use ruby-listen, rather than ruby-listen-3.0.
---
gnu/packages/ruby.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index e4d75e4a76..69f3933f31 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -7594,16 +7594,16 @@ in Jekyll.")
(define-public ruby-jekyll-watch
(package
(name "ruby-jekyll-watch")
- (version "2.0.0")
+ (version "2.1.2")
(source (origin
(method url-fetch)
(uri (rubygems-uri "jekyll-watch" version))
(sha256
(base32
- "0m7scvj3ki8bmyx5v8pzibpg6my10nycnc28lip98dskf8iakprp"))))
+ "1s9ly83sp8albvgdff12xy2h4xd8lm6z2fah4lzmk2yvp85jzdzv"))))
(build-system ruby-build-system)
(propagated-inputs
- `(("ruby-listen-3.0" ,ruby-listen-3.0)))
+ `(("ruby-listen" ,ruby-listen)))
(arguments
;; No rakefile
`(#:tests? #f))
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 26/34] gnu: Remove ruby-listen-3.0.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (23 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 25/34] gnu: ruby-jekyll-watch: Update to 2.1.2 Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 27/34] gnu: ruby-listen: Enable running the tests Christopher Baines
` (8 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
This was used by ruby-jekyll-watch, but that's now been upgraded and now uses
the ruby-listen package.
* gnu/packages/ruby.scm (ruby-listen-3.0): Remove this variable.
---
gnu/packages/ruby.scm | 11 -----------
1 file changed, 11 deletions(-)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 69f3933f31..0323f89a1c 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -4362,17 +4362,6 @@ you about the changes.")
(home-page "https://github.com/guard/listen")
(license license:expat)))
-(define-public ruby-listen-3.0
- (package
- (inherit ruby-listen)
- (version "3.0.8")
- (source (origin
- (method url-fetch)
- (uri (rubygems-uri "listen" version))
- (sha256
- (base32
- "1l0y7hbyfiwpvk172r28hsdqsifq1ls39hsfmzi1vy4ll0smd14i"))))))
-
(define-public ruby-loofah
(package
(name "ruby-loofah")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 27/34] gnu: ruby-listen: Enable running the tests.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (24 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 26/34] gnu: Remove ruby-listen-3.0 Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 28/34] gnu: Add ruby-bindex Christopher Baines
` (7 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-listen)[source]: Switch to the Git repository,
as this includes the tests.
[arguments]: Set #:test-target and tweak the Rakefile to avoid requiring
Rubocop unnecessarily.
[native-inputs]: Add bundler and ruby-rspec for running the test suite.
[inputs]: Add ruby-thor, as this is used for bin/listen.
[propagated-inputs]: Add ruby-dep, as this is listed as a runtime dependency
in the gemspec.
---
gnu/packages/ruby.scm | 35 +++++++++++++++++++++++++++++------
1 file changed, 29 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 0323f89a1c..0c5fe2896b 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -4346,16 +4346,39 @@ a native C extension.")
(version "3.1.5")
(source
(origin
- (method url-fetch)
- (uri (rubygems-uri "listen" version))
+ ;; The gem does not include a Rakefile, so fetch from the Git
+ ;; repository.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/guard/listen.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx"))))
+ "1hqmkfa9f2xb5jlvqbafdxjd5ax75jm8gqj5nh3k22xq0kacsvgg"))))
(build-system ruby-build-system)
- (arguments '(#:tests? #f)) ; no tests
+ (arguments
+ `(#:test-target "spec"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'remove-unnecessary-dependencies'
+ (lambda _
+ (substitute* "Rakefile"
+ ;; Rubocop is for code linting, and is unnecessary for running
+ ;; the tests.
+ ((".*rubocop.*") ""))
+ #t)))))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec)))
+ (inputs
+ `(;; ruby-thor is used for the command line interface, and is referenced
+ ;; in the wrapper, and therefore just needs to be an input.
+ ("ruby-thor" ,ruby-thor)))
(propagated-inputs
- `(("ruby-rb-inotify" ,ruby-rb-inotify)
- ("ruby-rb-fsevent" ,ruby-rb-fsevent)))
+ `(("ruby-rb-fsevent" ,ruby-rb-fsevent)
+ ("ruby-rb-inotify" ,ruby-rb-inotify)
+ ("ruby-dep" ,ruby-dep)))
(synopsis "Listen to file modifications")
(description "The Listen gem listens to file modifications and notifies
you about the changes.")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 28/34] gnu: Add ruby-bindex.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (25 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 27/34] gnu: ruby-listen: Enable running the tests Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 29/34] gnu: Add ruby-web-console Christopher Baines
` (6 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-bindex): New variable.
---
gnu/packages/ruby.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 0c5fe2896b..60b5e4b0e7 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -5446,6 +5446,31 @@ boolean expression used by Cucumber.")
(home-page "https://github.com/cucumber/tag-expressions-ruby")
(license license:expat)))
+(define-public ruby-bindex
+ (package
+ (name "ruby-bindex")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "bindex" version))
+ (sha256
+ (base32
+ "1wvhf4v8sk5x8li03pcc0v0wglmyv7ikvvg05bnms83dfy7s4k8i"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:test-target "default"))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rake-compiler" ,ruby-rake-compiler)))
+ (synopsis "Provides access for bindings relating to Ruby exceptions")
+ (description
+ "@code{bindex} provides a way to access the bindings that relate to
+exceptions in Ruby, providing more information about the context in which the
+exception occurred.")
+ (home-page "https://github.com/gsamokovarov/bindex")
+ (license license:expat)))
+
(define-public ruby-bio-logger
(package
(name "ruby-bio-logger")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 29/34] gnu: Add ruby-web-console.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (26 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 28/34] gnu: Add ruby-bindex Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 30/34] gnu: Add ruby-execjs Christopher Baines
` (5 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/rails.scm (ruby-web-console): New variable.
---
gnu/packages/rails.scm | 56 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/gnu/packages/rails.scm b/gnu/packages/rails.scm
index cdce500e2b..8823791405 100644
--- a/gnu/packages/rails.scm
+++ b/gnu/packages/rails.scm
@@ -441,6 +441,62 @@ application bootup, plugins, generators, and Rake tasks.")
"https://github.com/rails/sprockets-rails")
(license license:expat)))
+(define-public ruby-web-console
+ (package
+ (name "ruby-web-console")
+ (version "3.7.0")
+ (source
+ (origin
+ ;; Download from GitHub as test files are not provided in the gem.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rails/web-console.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ir999p8cnm3l3zwbgpwxxcq1vwkj8d0d3r24362cyaf4v1rglq2"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-Gemfile
+ (lambda _
+ (substitute* "Gemfile"
+ ;; Remove the github bit from the Gemfile, so that the Guix
+ ;; packages are used.
+ ((", github: .*") "\n")
+ ;; The usual methods of not loading this group don't work, so
+ ;; patch the Gemfile.
+ (("group :development") "[].each")
+ ;; tzinfo-data is propagated by ruby-activesupport, but it
+ ;; needs to be in the Gemfile to become available.
+ (("group :test do") "group :test do\n gem 'tzinfo-data'"))
+ #t))
+ (add-after 'unpack 'fix-mocha-minitest-require
+ (lambda _
+ (substitute* "test/test_helper.rb"
+ ;; This chanegd in recent versions of Mocha
+ (("mocha/minitest") "mocha/mini_test"))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-actionview" ,ruby-actionview)
+ ("ruby-activemodel" ,ruby-activemodel)
+ ("ruby-bindex" ,ruby-bindex)
+ ("ruby-railties" ,ruby-railties)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rails" ,ruby-rails)
+ ("ruby-mocha" ,ruby-mocha)
+ ("ruby-simplecov" ,ruby-simplecov)))
+ (synopsis "Debugging tool for your Ruby on Rails applications")
+ (description
+ "This package allows you to create an interactive Ruby session in your
+browser. Those sessions are launched automatically in case of an error and
+can also be launched manually in any page.")
+ (home-page "https://github.com/rails/web-console")
+ (license license:expat)))
+
(define-public ruby-with-advisory-lock
(package
(name "ruby-with-advisory-lock")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 30/34] gnu: Add ruby-execjs.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (27 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 29/34] gnu: Add ruby-web-console Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 31/34] gnu: ruby: Update some RSpec packages Christopher Baines
` (4 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-execjs): New variable.
---
gnu/packages/ruby.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 60b5e4b0e7..2c49b1587c 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -49,6 +49,7 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
+ #:use-module (gnu packages node)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages ragel)
@@ -1296,6 +1297,39 @@ support.")
(home-page "http://www.kuwata-lab.com/erubis/")
(license license:expat)))
+(define-public ruby-execjs
+ (package
+ (name "ruby-execjs")
+ (version "2.7.0")
+ (source
+ (origin
+ ;; fetch from github as the gem does not contain testing code
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rails/execjs.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0c0vd2mmqq3ar4plbwi2wsbr31vn4h45i19r5km66skydnnbp1y6"))))
+ (build-system ruby-build-system)
+ (native-inputs
+ `(("bundler" ,bundler)
+ ;; The test suite tests all the available backends. Currenly, this just
+ ;; means the node backend.
+ ;;
+ ;; PASSED: test:node
+ ;; SKIPPED: test:duktape, ;; test:javascriptcore, test:jscript,
+ ;; test:miniracer, test:rubyracer, ;; test:rubyrhino, test:v8
+ ("node" ,node)))
+ (synopsis "ExecJS lets you run JavaScript code from Ruby")
+ (description
+ "ExecJS lets you run JavaScript code from Ruby. It automatically picks a
+runtime to evaluate your JavaScript program, then returns the result to you as
+a Ruby object.")
+ (home-page "https://github.com/rails/execjs")
+ (license license:expat)))
+
(define-public ruby-orderedhash
(package
(name "ruby-orderedhash")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 31/34] gnu: ruby: Update some RSpec packages.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (28 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 30/34] gnu: Add ruby-execjs Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 32/34] gnu: Add ruby-rspec-rails Christopher Baines
` (3 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-rspec-support): Update to 3.8.0.
(ruby-rspec-core): Update to 3.8.0.
(ruby-rspec-expectations): Update to 3.8.2.
(ruby-rspec-mocks): Update to 3.8.0.
(ruby-rspec): Update to 3.8.0.
---
gnu/packages/ruby.scm | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 2c49b1587c..385a1338e9 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -311,13 +311,13 @@ notebook).")
(define ruby-rspec-support
(package
(name "ruby-rspec-support")
- (version "3.5.0")
+ (version "3.8.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "rspec-support" version))
(sha256
(base32
- "10vf3k3d472y573mag2kzfsfrf6rv355s13kadnpryk8d36yq5r0"))))
+ "0p3m7drixrlhvj2zpc38b11x145bvm311x6f33jjcxmvcm0wq609"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; avoid dependency cycles
@@ -329,13 +329,13 @@ notebook).")
(define-public ruby-rspec-core
(package
(name "ruby-rspec-core")
- (version "3.5.4")
+ (version "3.8.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "rspec-core" version))
(sha256
(base32
- "1nacs062qbr98fx6czf1vwppn1js956nv2c8vfwj6i65axdfs46i"))))
+ "1p1s5bnbqp3sxk67y0fh0x884jjym527r0vgmhbm81w7aq6b7l4p"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; avoid dependency cycles
@@ -382,13 +382,13 @@ standard diff-like tool.")
(define-public ruby-rspec-expectations
(package
(name "ruby-rspec-expectations")
- (version "3.5.0")
+ (version "3.8.2")
(source (origin
(method url-fetch)
(uri (rubygems-uri "rspec-expectations" version))
(sha256
(base32
- "0bbqfrb1x8gmwf8x2xhhwvvlhwbbafq4isbvlibxi6jk602f09gs"))))
+ "18l21hy1zdc2pgc2yb17k3n2al1khpfr0z6pijlm852iz6vj0dkm"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; avoid dependency cycles
@@ -474,13 +474,13 @@ eq(1)\\}}.")
(define-public ruby-rspec-mocks
(package
(name "ruby-rspec-mocks")
- (version "3.5.0")
+ (version "3.8.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "rspec-mocks" version))
(sha256
(base32
- "0nl3ksivh9wwrjjd47z5dggrwx40v6gpb3a0gzbp1gs06a5dmk24"))))
+ "06y508cjqycb4yfhxmb3nxn0v9xqf17qbd46l1dh4xhncinr4fyp"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; avoid dependency cycles
@@ -531,13 +531,13 @@ RSpec tests.")
(define-public ruby-rspec
(package
(name "ruby-rspec")
- (version "3.5.0")
+ (version "3.8.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "rspec" version))
(sha256
(base32
- "16g3mmih999f0b6vcz2c3qsc7ks5zy4lj1rzjh8hf6wk531nvc6s"))))
+ "15ppasvb9qrscwlyjz67ppw1lnxiqnkzx5vkx1bd8x5n3dhikxc3"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; avoid dependency cycles
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 32/34] gnu: Add ruby-rspec-rails.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (29 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 31/34] gnu: ruby: Update some RSpec packages Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 33/34] gnu: Add ruby-autoprefixer-rails Christopher Baines
` (2 subsequent siblings)
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-rspec-support): Export this variable, so that
it's accessible from the (gnu packages rails) module.
* gnu/packages/rails.scm (ruby-rspec-rails): New variable.
---
gnu/packages/rails.scm | 30 ++++++++++++++++++++++++++++++
gnu/packages/ruby.scm | 2 +-
2 files changed, 31 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/rails.scm b/gnu/packages/rails.scm
index 8823791405..339b68d580 100644
--- a/gnu/packages/rails.scm
+++ b/gnu/packages/rails.scm
@@ -174,6 +174,36 @@ an almost zero-configuration persistence layer for applications.")
(home-page "https://rubyonrails.org")
(license license:expat)))
+(define-public ruby-rspec-rails
+ (package
+ (name "ruby-rspec-rails")
+ (version "3.8.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "rspec-rails" version))
+ (sha256
+ (base32
+ "1pf6n9l4sw1arlax1bdbm1znsvl8cgna2n6k6yk1bi8vz2n73ls1"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-actionpack" ,ruby-actionpack)
+ ("ruby-activesupport" ,ruby-activesupport)
+ ("ruby-railties" ,ruby-railties)
+ ("ruby-rspec-core" ,ruby-rspec-core)
+ ("ruby-rspec-expectations" ,ruby-rspec-expectations)
+ ("ruby-rspec-mocks" ,ruby-rspec-mocks)
+ ("ruby-rspec-support" ,ruby-rspec-support)))
+ (synopsis "Use RSpec to test Ruby on Rails applications")
+ (description
+ "This package provides support for using RSpec to test Ruby on Rails
+applications, in pace of the default Minitest testing library.")
+ (home-page "https://github.com/rspec/rspec-rails")
+ (license license:expat)))
+
(define-public ruby-rails-html-sanitizer
(package
(name "ruby-rails-html-sanitizer")
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 385a1338e9..921c5dc8d4 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -308,7 +308,7 @@ notebook).")
;; RSpec is the dominant testing library for Ruby projects. Even RSpec's
;; dependencies use RSpec for their test suites! To avoid these circular
;; dependencies, we disable tests for all of the RSpec-related packages.
-(define ruby-rspec-support
+(define-public ruby-rspec-support
(package
(name "ruby-rspec-support")
(version "3.8.0")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 33/34] gnu: Add ruby-autoprefixer-rails.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (30 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 32/34] gnu: Add ruby-rspec-rails Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-17 19:23 ` [bug#34514] [PATCH 34/34] gnu: Add ruby-rerun Christopher Baines
2019-02-18 22:40 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Ricardo Wurmus
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/rails.scm (ruby-autoprefixer-rails): New variable.
---
gnu/packages/rails.scm | 53 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)
diff --git a/gnu/packages/rails.scm b/gnu/packages/rails.scm
index 339b68d580..2c2954e9cb 100644
--- a/gnu/packages/rails.scm
+++ b/gnu/packages/rails.scm
@@ -22,6 +22,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
+ #:use-module (gnu packages node)
#:use-module (gnu packages ruby)
#:use-module (guix build-system ruby))
@@ -123,6 +124,58 @@ API.")
"https://github.com/banister/debug_inspector")
(license license:expat)))
+(define-public ruby-autoprefixer-rails
+ (package
+ (name "ruby-autoprefixer-rails")
+ (version "9.4.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "autoprefixer-rails" version))
+ (sha256
+ (base32
+ "0fxbfl3xrrjj84n98x24yzxbz4nvm6c492dxj41kkrl9z97ga13i"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:test-target "spec"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'extract-gemspec 'remove-unnecessary-dependencies
+ (lambda _
+ ;; Remove the testing of compass, as it's use is deprecated, and
+ ;; it's unpackaged for Guix
+ (substitute* "autoprefixer-rails.gemspec"
+ ((".*%q<compass>.*") "\n")
+ (("\"spec/compass_spec\\.rb\"\\.freeze, ") ""))
+ (delete-file "spec/compass_spec.rb")
+
+ (substitute* "Gemfile"
+ ;; Remove overly strict requirement on sprockets
+ ((", '>= 4\\.0\\.0\\.beta1'") "")
+ ;; The mini_racer gem isn't packaged yet, and it's not directly
+ ;; required, as other backends for ruby-execjs can be used.
+ (("gem 'mini_racer'") "")
+ ;; For some reason, this is required for the gems to be picked
+ ;; up
+ (("gemspec") "gemspec\ngem 'tzinfo-data'\ngem 'sass'"))
+ #t)))))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rails" ,ruby-rails)
+ ("ruby-rspec-rails" ,ruby-rspec-rails)
+ ;; This is needed for a test, but I'm unsure why
+ ("ruby-sass" ,ruby-sass)
+ ;; This is used as the ruby-execjs runtime
+ ("node" ,node)))
+ (propagated-inputs
+ `(("ruby-execjs" ,ruby-execjs)))
+ (synopsis "Parse CSS and add vendor prefixes to CSS rules")
+ (description
+ "Parse CSS and add vendor prefixes to CSS rules using values from the Can
+I Use website.")
+ (home-page "https://github.com/ai/autoprefixer-rails")
+ (license license:expat)))
+
(define-public ruby-activemodel
(package
(name "ruby-activemodel")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 34/34] gnu: Add ruby-rerun.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (31 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 33/34] gnu: Add ruby-autoprefixer-rails Christopher Baines
@ 2019-02-17 19:23 ` Christopher Baines
2019-02-18 22:40 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Ricardo Wurmus
33 siblings, 0 replies; 69+ messages in thread
From: Christopher Baines @ 2019-02-17 19:23 UTC (permalink / raw)
To: 34514
* gnu/packages/ruby.scm (ruby-rerun): New variable.
---
gnu/packages/ruby.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 921c5dc8d4..d045e412b0 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -2713,6 +2713,31 @@ conversion to (X)HTML.")
(home-page "https://github.com/vmg/redcarpet")
(license license:expat)))
+(define-public ruby-rerun
+ (package
+ (name "ruby-rerun")
+ (version "0.13.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "rerun" version))
+ (sha256
+ (base32
+ "1cskvxk8z8vmfail8na7hj91hs0qnvds9nydj04zi3dbddgnbmvz"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(;; No included tests
+ #:tests? #f))
+ (propagated-inputs
+ `(("ruby-listen" ,ruby-listen)))
+ (synopsis "Run a process, and restart when some monitored files change")
+ (description
+ "Rerun is a tool to launch programs, then monitor the filesystem, and
+restart the program when any of the monitored files change. It's written in
+Ruby, but can be used for all programs.")
+ (home-page "https://github.com/alexch/rerun/")
+ (license license:expat)))
+
(define-public ruby-mocha
(package
(name "ruby-mocha")
--
2.20.1
^ permalink raw reply related [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster.
2019-02-17 19:22 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Christopher Baines
` (32 preceding siblings ...)
2019-02-17 19:23 ` [bug#34514] [PATCH 34/34] gnu: Add ruby-rerun Christopher Baines
@ 2019-02-18 22:40 ` Ricardo Wurmus
2019-02-19 22:55 ` Christopher Baines
33 siblings, 1 reply; 69+ messages in thread
From: Ricardo Wurmus @ 2019-02-18 22:40 UTC (permalink / raw)
To: Christopher Baines; +Cc: 34514
Christopher Baines <mail@cbaines.net> writes:
> * gnu/packages/ruby.scm (ruby-hamster): New variable.
[…]
> + (add-after 'unpack 'remove-unnecessary-dependencies
> + (lambda _
> + ;; pry is a debugging tool, and is unnecessary when running the
> + ;; tests
> + (substitute* "spec/lib/hamster/vector/insert_spec.rb"
> + (("require 'pry'") ""))
> + (substitute* "spec/spec_helper.rb"
> + (("require \"pry\"") "")
We have a ruby-pry package. Wouldn’t it be nicer to add it instead of
patching the sources?
> + ;; CodeClimate is an online service, and is unnecessary for
> + ;; running the tests
> + (("require \"codeclimate-test-reporter\"") "")
> + (("CodeClimate.*\n") ""))
Okay.
--
Ricardo
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster.
2019-02-18 22:40 ` [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster Ricardo Wurmus
@ 2019-02-19 22:55 ` Christopher Baines
2019-02-20 7:48 ` Ricardo Wurmus
0 siblings, 1 reply; 69+ messages in thread
From: Christopher Baines @ 2019-02-19 22:55 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: 34514
[-- Attachment #1: Type: text/plain, Size: 1284 bytes --]
Ricardo Wurmus <rekado@elephly.net> writes:
> Christopher Baines <mail@cbaines.net> writes:
>
>> * gnu/packages/ruby.scm (ruby-hamster): New variable.
> […]
>> + (add-after 'unpack 'remove-unnecessary-dependencies
>> + (lambda _
>> + ;; pry is a debugging tool, and is unnecessary when running the
>> + ;; tests
>> + (substitute* "spec/lib/hamster/vector/insert_spec.rb"
>> + (("require 'pry'") ""))
>> + (substitute* "spec/spec_helper.rb"
>> + (("require \"pry\"") "")
>
> We have a ruby-pry package. Wouldn’t it be nicer to add it instead of
> patching the sources?
It would make the package definition simpler, but it would lead to
redundant rebuilds of this package, and all of it's dependants if the
ruby-pry package changed.
The ideal situation would be for things like this to be optional, but I
think where this isn't the case, it's worth putting some effort in to
the package definition to avoid unnecessary dependencies.
>> + ;; CodeClimate is an online service, and is unnecessary for
>> + ;; running the tests
>> + (("require \"codeclimate-test-reporter\"") "")
>> + (("CodeClimate.*\n") ""))
>
> Okay.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 962 bytes --]
^ permalink raw reply [flat|nested] 69+ messages in thread
* [bug#34514] [PATCH 01/34] gnu: Add ruby-hamster.
2019-02-19 22:55 ` Christopher Baines
@ 2019-02-20 7:48 ` Ricardo Wurmus
0 siblings, 0 replies; 69+ messages in thread
From: Ricardo Wurmus @ 2019-02-20 7:48 UTC (permalink / raw)
To: Christopher Baines; +Cc: 34514
Christopher Baines <mail@cbaines.net> writes:
> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Christopher Baines <mail@cbaines.net> writes:
>>
>>> * gnu/packages/ruby.scm (ruby-hamster): New variable.
>> […]
>>> + (add-after 'unpack 'remove-unnecessary-dependencies
>>> + (lambda _
>>> + ;; pry is a debugging tool, and is unnecessary when running the
>>> + ;; tests
>>> + (substitute* "spec/lib/hamster/vector/insert_spec.rb"
>>> + (("require 'pry'") ""))
>>> + (substitute* "spec/spec_helper.rb"
>>> + (("require \"pry\"") "")
>>
>> We have a ruby-pry package. Wouldn’t it be nicer to add it instead of
>> patching the sources?
>
> It would make the package definition simpler, but it would lead to
> redundant rebuilds of this package, and all of it's dependants if the
> ruby-pry package changed.
>
> The ideal situation would be for things like this to be optional, but I
> think where this isn't the case, it's worth putting some effort in to
> the package definition to avoid unnecessary dependencies.
Okay, sounds fine to me.
--
Ricardo
^ permalink raw reply [flat|nested] 69+ messages in thread