diff --git a/gherkin-2.11.6-relax-json-dependency.patch b/gherkin-2.11.6-relax-json-dependency.patch new file mode 100644 index 0000000..853b67c --- /dev/null +++ b/gherkin-2.11.6-relax-json-dependency.patch @@ -0,0 +1,29 @@ +--- specifications/gherkin-2.11.6.gemspec.orig 2013-02-18 08:45:39.000000000 +0100 ++++ specifications/gherkin-2.11.6.gemspec 2013-02-18 08:46:59.129973696 +0100 +@@ -22,7 +22,7 @@ + + if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then + s.add_development_dependency(%q, [">= 0.8.2"]) +- s.add_runtime_dependency(%q, [">= 1.7.6"]) ++ s.add_runtime_dependency(%q, [">= 1.7.5"]) + s.add_development_dependency(%q, [">= 1.2.1"]) + s.add_development_dependency(%q, [">= 10.0.3"]) + s.add_development_dependency(%q, [">= 1.2.3"]) +@@ -35,7 +35,7 @@ + s.add_development_dependency(%q, [">= 3.1.4"]) + else + s.add_dependency(%q, [">= 0.8.2"]) +- s.add_dependency(%q, [">= 1.7.6"]) ++ s.add_dependency(%q, [">= 1.7.5"]) + s.add_dependency(%q, [">= 1.2.1"]) + s.add_dependency(%q, [">= 10.0.3"]) + s.add_dependency(%q, [">= 1.2.3"]) +@@ -49,7 +49,7 @@ + end + else + s.add_dependency(%q, [">= 0.8.2"]) +- s.add_dependency(%q, [">= 1.7.6"]) ++ s.add_dependency(%q, [">= 1.7.5"]) + s.add_dependency(%q, [">= 1.2.1"]) + s.add_dependency(%q, [">= 10.0.3"]) + s.add_dependency(%q, [">= 1.2.3"]) diff --git a/rubygem-gherkin.spec b/rubygem-gherkin.spec index 2f8e350..00df763 100644 --- a/rubygem-gherkin.spec +++ b/rubygem-gherkin.spec @@ -1,23 +1,29 @@ %global gem_name gherkin # %%check section needs cucumber, however cucumber depends on gherkin. -%{!?need_bootstrap: %global need_bootstrap 0} +%{!?need_bootstrap: %global need_bootstrap 1} Summary: Fast Gherkin lexer/parser Name: rubygem-%{gem_name} -Version: 2.12.2 +Version: 2.11.6 Release: 2%{?dist} Group: Development/Languages License: MIT URL: http://github.com/cucumber/gherkin Source0: http://rubygems.org/gems/%{gem_name}-%{version}.gem + +Patch1: gherkin-2.11.6-relax-json-dependency.patch + +Requires: ruby(release) +Requires: ruby(rubygems) +Requires: rubygem(json) BuildRequires: rubygems-devel BuildRequires: ruby-devel -BuildRequires: rubygem(multi_json) %if 0%{?need_bootstrap} < 1 BuildRequires: rubygem(cucumber) %endif BuildRequires: rubygem(rspec) +Provides: rubygem(%{gem_name}) = %{version} %package doc Summary: Documentation for %{name} @@ -33,8 +39,13 @@ A fast Gherkin lexer/parser based on the Ragel State Machine Compiler. %prep +%setup -q -c -T %gem_install -n %{SOURCE0} +pushd .%{gem_dir} +%patch1 -p0 +popd + %build pushd .%{gem_instdir} pushd ext @@ -53,9 +64,9 @@ mkdir -p %{buildroot}%{gem_dir} cp -a .%{gem_dir}/* \ %{buildroot}%{gem_dir}/ -mkdir -p %{buildroot}%{gem_extdir_mri} -cp -a .%{gem_extdir_mri}/* %{buildroot}%{gem_extdir_mri}/ - +mkdir -p %{buildroot}%{gem_extdir_mri}/lib +# the .so files go in the extdir, so remove them from lib +find %{buildroot}%{gem_instdir}/lib -iname '*.so' -exec mv {} %{buildroot}%{gem_extdir_mri}/lib \; rm -rf %{buildroot}%{gem_instdir}/ext # remove hidden dirs @@ -75,15 +86,17 @@ pushd .%{gem_instdir} export GEM_HOME="../../" # kill bundler for features and specs sed -i '7,8d' features/support/env.rb -sed -i '21,22d' spec/spec_helper.rb +sed -i '7,8d' spec/spec_helper.rb # link the cucumber here for two features ln -s %{gem_dir}/gems/cucumber-`cucumber --version`/ ../cucumber -# 2 failed on arm because they test fallback ruby lexers +# There is some encoding error runnign test suite with Ruby 2.0 in both, +# Cucumber and RSpec test suites: +# https://github.com/cucumber/gherkin/issues/232 +# run cucumber features - 16 failed because they test fallback ruby lexers # but these are not installed by default (even if using normal gem install) -LANG=en_US.utf8 cucumber || LANG=en_US.utf8 cucumber | grep '2 failed' || exit 1 -# 4 failed (15 on arm) because they test fallback ruby lexers -LANG=en_US.utf8 rspec spec | grep '286 examples, 4 failures' || \ -LANG=en_US.utf8 rspec spec | grep '286 examples, 15 failures' || LANG=en_US.utf8 rspec spec +LANG=en_US.utf8 cucumber | grep '16 failed' +# run specs, 93 fail because of the reason mentioned above +LANG=en_US.utf8 rspec spec | grep '280 examples, 93 failures' popd %endif @@ -114,27 +127,6 @@ popd %{gem_instdir}/tasks %changelog -* Mon Aug 18 2014 Fedora Release Engineering - 2.12.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Thu Jun 19 2014 Josef Stribny - 2.12.2-1 -- Update to gherkin 2.12.2 - -* Sun Jun 08 2014 Fedora Release Engineering - 2.11.6-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Mon Apr 14 2014 Vít Ondruch - 2.11.6-5 -- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.1 - -* Tue Aug 6 2013 Mamoru TASAKA - 2.11.6-5 -- Again enable test suite - -* Tue Aug 6 2013 Mamoru TASAKA - 2.11.6-4 -- Bootstrap - -* Sun Aug 04 2013 Fedora Release Engineering - 2.11.6-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - * Wed Feb 20 2013 Vít Ondruch - 2.11.6-2 - Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 - Add bootstrap code. diff --git a/sources b/sources index fab43c3..ea27438 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -051e9965eae582ec354263a8da758dfb gherkin-2.12.2.gem +91a79a6a4fe03f51f039f7006581c468 gherkin-2.11.6.gem