From 126fcee655438578b8a8ab2196abc9d9ecebb2e0 Mon Sep 17 00:00:00 2001 From: MSVSphere Packaging Team Date: Wed, 10 Jan 2024 04:11:36 +0300 Subject: [PATCH] import rubygem-cucumber-7.1.0-3.1.el9 --- .gitignore | 3 + .rubygem-cucumber.metadata | 3 + ...Pass-the-registry-to-the-Wire-plugin.patch | 70 ++++ ...ration-when-filtering-backtrace-test.patch | 33 ++ ...nfiguration-when-filtering-backtrace.patch | 41 +++ SPECS/rubygem-cucumber.spec | 303 ++++++++++++++++++ 6 files changed, 453 insertions(+) create mode 100644 .gitignore create mode 100644 .rubygem-cucumber.metadata create mode 100644 SOURCES/rubygem-cucumber-3.1.2-Pass-the-registry-to-the-Wire-plugin.patch create mode 100644 SOURCES/rubygem-cucumber-3.1.2-Respect-Ruby-configuration-when-filtering-backtrace-test.patch create mode 100644 SOURCES/rubygem-cucumber-3.1.2-Respect-Ruby-configuration-when-filtering-backtrace.patch create mode 100644 SPECS/rubygem-cucumber.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4868c59 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +SOURCES/cucumber-7.1.0.gem +SOURCES/rubygem-cucumber-7.1.0-features.txz +SOURCES/rubygem-cucumber-7.1.0-spec.txz diff --git a/.rubygem-cucumber.metadata b/.rubygem-cucumber.metadata new file mode 100644 index 0000000..ec83679 --- /dev/null +++ b/.rubygem-cucumber.metadata @@ -0,0 +1,3 @@ +69ef8ba2d78c8d5b8027d89b695b64af5461d1ab SOURCES/cucumber-7.1.0.gem +00affc8ea1a15f5114c502c64569286ed0ec3923 SOURCES/rubygem-cucumber-7.1.0-features.txz +6598605eefa726b3a5d89105d4d0e0c06136a0c7 SOURCES/rubygem-cucumber-7.1.0-spec.txz diff --git a/SOURCES/rubygem-cucumber-3.1.2-Pass-the-registry-to-the-Wire-plugin.patch b/SOURCES/rubygem-cucumber-3.1.2-Pass-the-registry-to-the-Wire-plugin.patch new file mode 100644 index 0000000..b0b8f2d --- /dev/null +++ b/SOURCES/rubygem-cucumber-3.1.2-Pass-the-registry-to-the-Wire-plugin.patch @@ -0,0 +1,70 @@ +From 486e4fe98b93580b63b504579d99c37790f4557d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Rasmusson?= +Date: Mon, 23 Jul 2018 13:35:05 +0200 +Subject: [PATCH] Pass the registry to the Wire plugin. + +Also, the class StepArgument is only used in the Wire plugin, so move +it to Cucumber-Wire. +--- + lib/cucumber/glue/step_definition.rb | 1 - + lib/cucumber/runtime.rb | 2 +- + lib/cucumber/step_argument.rb | 25 -------------------------- + 3 files changed, 1 insertion(+), 27 deletions(-) + delete mode 100644 lib/cucumber/step_argument.rb + +diff --git a/lib/cucumber/glue/step_definition.rb b/lib/cucumber/glue/step_definition.rb +index 81b3630b4..a8f43c0f2 100644 +--- a/lib/cucumber/glue/step_definition.rb ++++ b/lib/cucumber/glue/step_definition.rb +@@ -1,7 +1,6 @@ + # frozen_string_literal: true + + require 'cucumber/step_match' +-require 'cucumber/step_argument' + require 'cucumber/core_ext/string' + require 'cucumber/glue/invoke_in_world' + +diff --git a/lib/cucumber/runtime.rb b/lib/cucumber/runtime.rb +index fa9f88e0d..f60cf64b9 100644 +--- a/lib/cucumber/runtime.rb ++++ b/lib/cucumber/runtime.rb +@@ -273,7 +273,7 @@ def load_step_definitions + end + + def install_wire_plugin +- Cucumber::Wire::Plugin.new(@configuration).install if @configuration.all_files_to_load.any? { |f| f =~ %r{\.wire$} } ++ Cucumber::Wire::Plugin.new(@configuration, @support_code.registry).install if @configuration.all_files_to_load.any? { |f| f =~ /\.wire$/ } + end + + def log +diff --git a/lib/cucumber/step_argument.rb b/lib/cucumber/step_argument.rb +deleted file mode 100644 +index c5d0cf076..000000000 +--- a/lib/cucumber/step_argument.rb ++++ /dev/null +@@ -1,25 +0,0 @@ +-# frozen_string_literal: true +- +-module Cucumber +- # Defines the location and value of a captured argument from the step +- # text +- class StepArgument +- def self.arguments_from(regexp, step_name) +- match = regexp.match(step_name) +- if match +- n = 0 +- match.captures.map do |val| +- n += 1 +- offset = match.offset(n)[0] +- new(offset, val) +- end +- end +- end +- +- attr_reader :offset, :val +- +- def initialize(offset, val) +- @offset, @val = offset, val +- end +- end +-end diff --git a/SOURCES/rubygem-cucumber-3.1.2-Respect-Ruby-configuration-when-filtering-backtrace-test.patch b/SOURCES/rubygem-cucumber-3.1.2-Respect-Ruby-configuration-when-filtering-backtrace-test.patch new file mode 100644 index 0000000..2bb0b4a --- /dev/null +++ b/SOURCES/rubygem-cucumber-3.1.2-Respect-Ruby-configuration-when-filtering-backtrace-test.patch @@ -0,0 +1,33 @@ +From 68fae17f1439a3ad29453cf10951bd3b5131fd6f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?V=C3=ADt=20Ondruch?= +Date: Wed, 27 Feb 2019 15:40:37 +0100 +Subject: [PATCH] Respect Ruby configuration when filtering backtrace. + +The Ruby might be configured to be installed into various locations. Be +smarter about filtering backtrace to properly remove all traces of +standard library. + +Fixes #1341. +--- + spec/cucumber/formatter/backtrace_filter_spec.rb | 4 +++- + 1 files changed, 3 insertions(+), 1 deletions(-) + +diff --git a/spec/cucumber/formatter/backtrace_filter_spec.rb b/spec/cucumber/formatter/backtrace_filter_spec.rb +index f51748a5..27563a63 100644 +--- a/spec/cucumber/formatter/backtrace_filter_spec.rb ++++ b/spec/cucumber/formatter/backtrace_filter_spec.rb +@@ -14,8 +14,10 @@ module Cucumber + _anything__minitest__anything_ + _anything__test/unit__anything_ + _anything__Xgem/ruby__anything_ +- _anything__lib/ruby/__anything_ + _anything__.rbenv/versions/2.3/bin/bundle__anything_) ++ trace << "_anything__#{RbConfig::CONFIG['rubyarchdir']}__anything_" ++ trace << "_anything__#{RbConfig::CONFIG['rubylibdir']}__anything_" ++ + @exception = Exception.new + @exception.set_backtrace(trace) + end +-- +2.20.1 + diff --git a/SOURCES/rubygem-cucumber-3.1.2-Respect-Ruby-configuration-when-filtering-backtrace.patch b/SOURCES/rubygem-cucumber-3.1.2-Respect-Ruby-configuration-when-filtering-backtrace.patch new file mode 100644 index 0000000..2960f51 --- /dev/null +++ b/SOURCES/rubygem-cucumber-3.1.2-Respect-Ruby-configuration-when-filtering-backtrace.patch @@ -0,0 +1,41 @@ +From 68fae17f1439a3ad29453cf10951bd3b5131fd6f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?V=C3=ADt=20Ondruch?= +Date: Wed, 27 Feb 2019 15:40:37 +0100 +Subject: [PATCH] Respect Ruby configuration when filtering backtrace. + +The Ruby might be configured to be installed into various locations. Be +smarter about filtering backtrace to properly remove all traces of +standard library. + +Fixes #1341. +--- + lib/cucumber/formatter/backtrace_filter.rb | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/lib/cucumber/formatter/backtrace_filter.rb b/lib/cucumber/formatter/backtrace_filter.rb +index d0359e34..d58df52a 100644 +--- a/lib/cucumber/formatter/backtrace_filter.rb ++++ b/lib/cucumber/formatter/backtrace_filter.rb +@@ -13,15 +13,17 @@ module Cucumber + minitest + test/unit + .gem/ruby +- lib/ruby/ + bin/bundle + ) ++ ++ @backtrace_filters << RbConfig::CONFIG['rubyarchdir'] ++ @backtrace_filters << RbConfig::CONFIG['rubylibdir'] + + if ::Cucumber::JRUBY + @backtrace_filters << 'org/jruby/' + end + +- BACKTRACE_FILTER_PATTERNS = Regexp.new(@backtrace_filters.join('|')) ++ BACKTRACE_FILTER_PATTERNS = Regexp.new(@backtrace_filters.compact.join('|')) + + class BacktraceFilter + def initialize(exception) +-- +2.20.1 + diff --git a/SPECS/rubygem-cucumber.spec b/SPECS/rubygem-cucumber.spec new file mode 100644 index 0000000..a676bf1 --- /dev/null +++ b/SPECS/rubygem-cucumber.spec @@ -0,0 +1,303 @@ +%global gem_name cucumber + +# Enable bootstrap until dependencies are in epel9 +%global bootstrap 0 + +Name: rubygem-%{gem_name} +Version: 7.1.0 +Release: 3%{?dist}.1 +Summary: Tool to execute plain-text documents as functional tests +License: MIT +URL: https://cucumber.io/ +Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem +# git clone --no-checkout https://github.com/cucumber/cucumber-ruby.git +# git -C cucumber-ruby archive -v -o rubygem-cucumber-7.1.0-spec.txz v7.1.0 spec/ cucumber.yml +Source1: %{name}-%{version}-spec.txz +# git clone --no-checkout https://github.com/cucumber/cucumber-ruby.git +# git -C cucumber-ruby archive -v -o rubygem-cucumber-7.1.0-features.txz v7.1.0 features/ +Source2: %{name}-%{version}-features.txz +BuildRequires: ruby(release) +BuildRequires: rubygems-devel +BuildRequires: ruby +# These are for tests, disable until dependencies are in epel9 +%if %{bootstrap} +BuildRequires: rubygem(aruba) +BuildRequires: rubygem(builder) +BuildRequires: rubygem(cucumber-core) +BuildRequires: rubygem(cucumber-wire) +BuildRequires: rubygem(cucumber-create-meta) +BuildRequires: rubygem(multi_test) +BuildRequires: rubygem(mime-types) +BuildRequires: rubygem(webrick) +BuildRequires: rubygem(nokogiri) +BuildRequires: rubygem(rspec) +BuildRequires: rubygem(rake) +%endif +BuildArch: noarch + +%description +Cucumber lets software development teams describe how software should behave +in plain text. The text is written in a business-readable domain-specific +language and serves as documentation, automated tests and development-aid. + + +%package doc +Summary: Documentation for %{name} +Requires: %{name} = %{version}-%{release} +BuildArch: noarch + +%description doc +Documentation for %{name}. + +%prep +%setup -q -n %{gem_name}-%{version} -b 1 -b 2 + +# The rubygem-cucumber-html-formatter is currently not packaged in Fedora. +%gemspec_remove_dep -g cucumber-html-formatter + +# Relax requires. +%gemspec_remove_dep -g diff-lcs "~> 1.4", ">= 1.4.4" +%gemspec_add_dep -g diff-lcs ">= 1.3" + +%gemspec_remove_dep -g cucumber-gherkin "~> 22.0", ">= 22.0.0" +%gemspec_add_dep -g cucumber-gherkin ">= 20.0" + +%gemspec_remove_dep -g cucumber-cucumber-expressions "~> 14.0", ">= 14.0.0" +%gemspec_add_dep -g cucumber-cucumber-expressions ">= 12.1" + +%gemspec_remove_dep -g cucumber-messages "~> 17.1", ">= 17.1.1" +%gemspec_add_dep -g cucumber-messages ">= 17.0" + +%build +# Create the gem as gem install only works on a gem file +gem build ../%{gem_name}-%{version}.gemspec + +# %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir +# by default, so that we can move it into the buildroot in %%install +%gem_install + +%install +mkdir -p %{buildroot}%{gem_dir} +cp -a .%{gem_dir}/* \ + %{buildroot}%{gem_dir}/ + + +mkdir -p %{buildroot}%{_bindir} +cp -pa .%{_bindir}/* \ + %{buildroot}%{_bindir}/ + +find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x + +%check +# Disable tests until dependencies are in epel9 +%if %{bootstrap} +pushd .%{gem_instdir} +# Cucumber.yml is needed for both test suites. +# Used as fixture for rspec and options for cucumber. +ln -s %{_builddir}/cucumber.yml cucumber.yml + +ln -s %{_builddir}/spec spec +# We don't need Pry. +sed -i '/require.*pry/ s/^/#/' spec/spec_helper.rb + +rspec -Ilib spec + +ln -s %{_builddir}/features features + +# Skip the test that requires rubygem-cucumber-html-formatter, +# which is currently not packaged in Fedora. +sed -i -e '/^ Scenario: output html to stdout$/i @skip' \ + features/docs/formatters/html.feature + +# Use RUBYOPT to make sure that the Cucumber from current directory has +# precedence over system Cucumber, which is pulled in as Aruba dependency. +RUBYOPT=-Ilib cucumber --tags 'not @skip' +popd +%endif + +%files +%dir %{gem_instdir} +%{_bindir}/cucumber +%license %{gem_instdir}/LICENSE +%{gem_instdir}/bin +%{gem_libdir} +%exclude %{gem_cache} +%{gem_spec} + +%files doc +%doc %{gem_docdir} +%doc %{gem_instdir}/CONTRIBUTING.md +%doc %{gem_instdir}/README.md +%doc %{gem_instdir}/CHANGELOG.md + +%changelog +* Wed Jan 10 2024 MSVSphere Packaging Team - 7.1.0-3.1 +- Rebuilt for MSVSphere 9.3 + +* Mon Jun 06 2022 Troy Dawson - 0.13.1-7.1 +- Disable test dependencies and tests, until they are in epel9 + +* Sun Jan 30 2022 Mamoru TASAKA - 7.1.0-3 +- BR: rubygem(rake) due to recent rubygem(rspec-core) dependency change + +* Fri Jan 21 2022 Fedora Release Engineering - 7.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Oct 27 2021 Jarek Prokop - 7.1.0-1 +- Update to cucumber 7.1.0. + +* Mon Sep 06 2021 Pavel Valena - 7.0.0-1 +- Update to cucumber 7.0.0. + Resolves: rhbz#1842885 + +* Fri Jul 23 2021 Fedora Release Engineering - 3.1.2-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 3.1.2-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Aug 01 2020 Fedora Release Engineering - 3.1.2-9 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 3.1.2-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Thu Jan 30 2020 Fedora Release Engineering - 3.1.2-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Jul 26 2019 Fedora Release Engineering - 3.1.2-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Feb 27 2019 Vít Ondruch - 3.1.2-5 +- Properly filter Ruby StdLib locations from backtrace. + +* Sat Feb 02 2019 Fedora Release Engineering - 3.1.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Sep 14 2018 Vít Ondruch - 3.1.2-3 +- Remove step argument test case to tix FTBFS. + +* Fri Sep 07 2018 Vít Ondruch - 3.1.2-2 +- Fix wire protocol. + +* Thu Aug 23 2018 Jaroslav Prokop - 3.1.2-1 +- Update to Cucumber 3.1.2. + +* Sat Jul 14 2018 Fedora Release Engineering - 2.4.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 2.4.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 2.4.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Fri Jan 20 2017 Vít Ondruch - 2.4.0-1 +- Update to Cucumber 2.4.0. + +* Thu Nov 24 2016 Vít Ondruch - 2.3.3-2 +- Fix FTBFS. + +* Tue Apr 05 2016 Vít Ondruch - 2.3.3-1 +- Update to Cucumber 2.3.3. + +* Thu Feb 04 2016 Fedora Release Engineering - 1.3.18-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Thu Jun 18 2015 Fedora Release Engineering - 1.3.18-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Fri Jan 16 2015 Mamoru TASAKA - 1.3.18-1 +- 1.3.18 + ref: https://github.com/cucumber/cucumber/issues/781 + +* Wed Jun 18 2014 Josef Stribny - 1.3.15-1 +- Update to cucumber 1.3.15 + +* Sun Jun 08 2014 Fedora Release Engineering - 1.2.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Aug 04 2013 Fedora Release Engineering - 1.2.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Sat Feb 23 2013 Vít Ondruch - 1.2.1-3 +- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 +- Drop useless build requires. + +* Thu Feb 14 2013 Fedora Release Engineering - 1.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Tue Nov 13 2012 Mo Morsi - 1.2.1-1 +- Update cucumber to version 1.2.1 + +* Sat Jul 21 2012 Fedora Release Engineering - 1.1.9-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Mar 27 2012 Jeroen van Meeuwen - 1.1.9-1 +- Update cucumber to version 1.1.9 + +* Wed Feb 01 2012 Bohuslav Kabrda - 1.0.1-3 +- Rebuilt for Ruby 1.9.3. + +* Sat Jan 14 2012 Fedora Release Engineering - 1.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Jul 12 2011 Mo Morsi - 1.0.1-1 +- update to latest upstream release + +* Wed Feb 09 2011 Fedora Release Engineering - 0.10.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Fri Feb 04 2011 Michal Fojtik - 0.10.0-1 +- Version bump + +* Mon Sep 27 2010 Michal Fojtik - 0.9.0-4 +- Fixed JSON version again + +* Fri Sep 24 2010 Michal Fojtik - 0.9.0-3 +- Fixed JSON version + +* Fri Sep 24 2010 Michal Fojtik - 0.9.0-2 +- Fixed gherkin version in dependency list + +* Fri Sep 24 2010 Michal Fojtik - 0.9.0-1 +- Version bump to match upstream +- Fixed dependency issue with new gherkin package + +* Wed Aug 04 2010 Michal Fojtik - 0.8.3-4 +- Fixed JSON version + +* Wed Aug 04 2010 Michal Fojtik - 0.8.3-3 +- Removed JSON patch (JSON updated in Fedora) + +* Sun Aug 01 2010 Michal Fojtik - 0.8.3-2 +- Patched Rakefile and replaced rspec beta version dependency +- Patched Rakefile and downgraded JSON dependency + +* Wed Jun 30 2010 Michal Fojtik - 0.8.3-1 +- Newer release + +* Sun Oct 18 2009 Lubomir Rintel (Good Data) - 0.4.2-1 +- Newer release + +* Mon Oct 12 2009 Lubomir Rintel (Good Data) - 0.4.0-1 +- Newer release + +* Fri Jun 26 2009 Lubomir Rintel (Good Data) - 0.3.10-3 +- Get rid of duplicate files (thanks to Mamoru Tasaka) + +* Mon Jun 08 2009 Lubomir Rintel (Good Data) - 0.3.10-2 +- Use geminstdir macro where appropriate +- Do not move examples around +- Depend on ruby(abi) +- Replace defines with globals + +* Fri Jun 05 2009 Lubomir Rintel (Good Data) - 0.3.10-1 +- Package generated by gem2rpm +- Move examples into documentation +- Remove empty files +- Fix up License