cucumber-core 13.0.1 → 13.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ad4f7b28922147c39edbb73ea0cc78a2498357ddfee82b7a19dad2653d0d5efc
4
- data.tar.gz: 1d86bebdb84c5439d1603328ec9e354e48e0d35b83b58141fe06e57ca861c700
3
+ metadata.gz: 316b17fd47e74b8055e37ac53e4296afba193bbef01c33aab2b1b23bab504f33
4
+ data.tar.gz: ee20eef6a171a3eee2be083bd1e9b3e1f5e480cca6e19eb08bde3d714b52b17e
5
5
  SHA512:
6
- metadata.gz: a6eba48583279d8df9c67d996f6b9fecd2573e9d1b82a9524bb4b70902b9203368e34c2bf0094a8d3656672362099c07da5d40156e2cb70145fff2f0803599a4
7
- data.tar.gz: f01ca79cc71953bb8fb97f4f02bb2f609835a0194ed7f35cd3fe96fc8133dd4187af2d0f04225e05977762374a4b51863471c20c4216725f92392aebad073a62
6
+ metadata.gz: 6ca13a986fc61358b40d294878954952144d6a7555a7bfba029497c4c2b435bb430928207136ab13273895b0300f596c1636cfee085535cff4a8889ad524fe9d
7
+ data.tar.gz: afdcbcf708ee258ef33bc8dcc776cbf71affd67c9bd9b5b2e31c01337b8512212237c1b24ce7a43849d2ee231abcead619d4b3e4b8274db1f8fd0d91f3ee67f3
data/CHANGELOG.md CHANGED
@@ -10,12 +10,17 @@ Please visit [cucumber/CONTRIBUTING.md](https://github.com/cucumber/cucumber/blo
10
10
 
11
11
  ## [Unreleased]
12
12
 
13
+ ## [13.0.2] - 2024-03-21
14
+ ### Changed
15
+ - Added CI testing for Ruby 3.3
16
+ - Fixed up a few minor rubocop offenses in the codebase around Array structuring
17
+
13
18
  ## [13.0.1] - 2024-01-31
14
19
  ### Changed
15
20
  - Fixed up a few styling / layout cops in the tests
16
21
 
17
22
  ### Fixed
18
- - The `Passed` `Result` class was missing the strict keyword argument handling
23
+ - The `Cucumber::Core::Test::Result::Passed` class was missing the strict keyword argument handling
19
24
 
20
25
  ## [13.0.0] - 2023-12-05
21
26
  ### Changed
@@ -55,7 +60,8 @@ See upgrading notes for [13.0.0.md](upgrading_notes/13.0.0.md#upgrading-to-1300)
55
60
  ### Changed
56
61
  - Updated `cucumber-gherkin` and `cucumber-messages`
57
62
 
58
- [Unreleased]: https://github.com/cucumber/cucumber-ruby-core/compare/v13.0.1...HEAD
63
+ [Unreleased]: https://github.com/cucumber/cucumber-ruby-core/compare/v13.0.2...HEAD
64
+ [13.0.2]: https://github.com/cucumber/cucumber-ruby-core/compare/v13.0.1...v13.0.2
59
65
  [13.0.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v13.0.0...v13.0.1
60
66
  [13.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v12.0.0...v13.0.0
61
67
  [12.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v11.1.0...v12.0.0
data/README.md CHANGED
@@ -50,14 +50,14 @@ or install the gem directly:
50
50
 
51
51
  ### Supported platforms
52
52
 
53
+ - Ruby 3.3
53
54
  - Ruby 3.2
54
55
  - Ruby 3.1
55
56
  - Ruby 3.0
56
57
  - Ruby 2.7
57
58
  - Ruby 2.6
58
59
  - Ruby 2.5
59
- - Ruby 2.4
60
- - JRuby 9.2 (with [some limitations](https://github.com/cucumber/cucumber-ruby/blob/main/docs/jruby-limitations.md))
60
+ - JRuby 9.4 (with [some limitations](https://github.com/cucumber/cucumber-ruby/blob/main/docs/jruby-limitations.md))
61
61
 
62
62
  ## Usage
63
63
 
@@ -1,11 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'cucumber/core/test/case'
4
- require 'cucumber/core/test/step'
5
- require 'cucumber/core/test/tag'
6
- require 'cucumber/core/test/doc_string'
7
4
  require 'cucumber/core/test/data_table'
5
+ require 'cucumber/core/test/doc_string'
8
6
  require 'cucumber/core/test/empty_multiline_argument'
7
+ require 'cucumber/core/test/hook_step'
8
+ require 'cucumber/core/test/step'
9
+ require 'cucumber/core/test/tag'
9
10
  require 'cucumber/messages'
10
11
 
11
12
  module Cucumber
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'cucumber/core/test/step'
4
+
5
+ module Cucumber
6
+ module Core
7
+ module Test
8
+ class HookStep < Step
9
+ def initialize(id, text, location, action)
10
+ super(id, text, location, Test::EmptyMultilineArgument.new, action)
11
+ end
12
+
13
+ def hook?
14
+ true
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -8,8 +8,8 @@ module Cucumber
8
8
  module Core
9
9
  module Test
10
10
  module Result
11
- TYPES = [:failed, :flaky, :skipped, :undefined, :pending, :passed, :unknown].freeze
12
- STRICT_AFFECTED_TYPES = [:flaky, :undefined, :pending].freeze
11
+ TYPES = %i[failed flaky skipped undefined pending passed unknown].freeze
12
+ STRICT_AFFECTED_TYPES = %i[flaky undefined pending].freeze
13
13
 
14
14
  def self.ok?(type, strict: StrictConfiguration.new)
15
15
  class_name = type.to_s.slice(0, 1).capitalize + type.to_s.slice(1..-1)
@@ -59,16 +59,6 @@ module Cucumber
59
59
  "#<#{self.class}: #{location}>"
60
60
  end
61
61
  end
62
-
63
- class HookStep < Step
64
- def initialize(id, text, location, action)
65
- super(id, text, location, Test::EmptyMultilineArgument.new, action)
66
- end
67
-
68
- def hook?
69
- true
70
- end
71
- end
72
62
  end
73
63
  end
74
64
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 13.0.1
4
+ version: 13.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aslak Hellesøy
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2024-01-31 00:00:00.000000000 Z
15
+ date: 2024-03-21 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: cucumber-gherkin
@@ -80,40 +80,28 @@ dependencies:
80
80
  requirements:
81
81
  - - "~>"
82
82
  - !ruby/object:Gem::Version
83
- version: '13.0'
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- version: 13.0.6
83
+ version: '13.1'
87
84
  type: :development
88
85
  prerelease: false
89
86
  version_requirements: !ruby/object:Gem::Requirement
90
87
  requirements:
91
88
  - - "~>"
92
89
  - !ruby/object:Gem::Version
93
- version: '13.0'
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: 13.0.6
90
+ version: '13.1'
97
91
  - !ruby/object:Gem::Dependency
98
92
  name: rspec
99
93
  requirement: !ruby/object:Gem::Requirement
100
94
  requirements:
101
95
  - - "~>"
102
96
  - !ruby/object:Gem::Version
103
- version: '3.11'
104
- - - ">="
105
- - !ruby/object:Gem::Version
106
- version: 3.11.0
97
+ version: '3.13'
107
98
  type: :development
108
99
  prerelease: false
109
100
  version_requirements: !ruby/object:Gem::Requirement
110
101
  requirements:
111
102
  - - "~>"
112
103
  - !ruby/object:Gem::Version
113
- version: '3.11'
114
- - - ">="
115
- - !ruby/object:Gem::Version
116
- version: 3.11.0
104
+ version: '3.13'
117
105
  - !ruby/object:Gem::Dependency
118
106
  name: rubocop
119
107
  requirement: !ruby/object:Gem::Requirement
@@ -177,7 +165,6 @@ extensions: []
177
165
  extra_rdoc_files: []
178
166
  files:
179
167
  - CHANGELOG.md
180
- - CONTRIBUTING.md
181
168
  - LICENSE
182
169
  - README.md
183
170
  - lib/cucumber/core.rb
@@ -203,6 +190,7 @@ files:
203
190
  - lib/cucumber/core/test/filters/locations_filter.rb
204
191
  - lib/cucumber/core/test/filters/name_filter.rb
205
192
  - lib/cucumber/core/test/filters/tag_filter.rb
193
+ - lib/cucumber/core/test/hook_step.rb
206
194
  - lib/cucumber/core/test/location.rb
207
195
  - lib/cucumber/core/test/result.rb
208
196
  - lib/cucumber/core/test/runner.rb
@@ -237,5 +225,5 @@ requirements: []
237
225
  rubygems_version: 3.3.5
238
226
  signing_key:
239
227
  specification_version: 4
240
- summary: cucumber-core-13.0.1
228
+ summary: cucumber-core-13.0.2
241
229
  test_files: []
data/CONTRIBUTING.md DELETED
@@ -1,186 +0,0 @@
1
- # Contributing to Cucumber Ruby Core
2
-
3
- Thank you for considering contributing to Cucumber!
4
-
5
- If you are not sure your contribution is related to `cucumber-ruby-core`, please
6
- consider taking a look at [`cucumber-ruby`'s CONTRIBUTING.md](https://github.com/cucumber/cucumber-ruby/blob/main/CONTRIBUTING.md) first.
7
-
8
- ## Code of Conduct
9
-
10
- Everyone interacting in this codebase and issue tracker is expected to follow
11
- the Cucumber [code of conduct](https://cucumber.io/conduct).
12
-
13
- ## How can I contribute?
14
-
15
- If you just want to know how to contribute to the code of `cucumber-ruby-core`,
16
- go to [Contribute to the code](#contribute-to-the-code).
17
-
18
- ## Report bugs and submit feature requests
19
-
20
- The short version is:
21
-
22
- - Try to check there is not already an issue or pull request that deals with
23
- your bug or request
24
- - Explain your issue and include as much details as possible to help other
25
- people reproduce your problem or understand your request
26
- - Consider submitting a pull request if you feel confident enough
27
-
28
- You can find more details for each of these steps in the following sections.
29
-
30
- ### Look for existing issues and pull requests
31
-
32
- Search in [the current repository][cucumber-ruby-core-issues], in the
33
- [mono-repo][cucumber/common-issues], but also in the
34
- [whole cucumber organization][cucumber-issues] if the problem or feature has already
35
- been reported. If you find an issue or pull request which is still open, add
36
- comments to it instead of opening a new one.
37
-
38
- If you're not sure, don't hesitate to just open a new issue. We can always merge
39
- and de-duplicate later.
40
-
41
- ### Submitting a pull request
42
-
43
- When submitting a pull request:
44
-
45
- - create a [draft pull request][how-to-create-a-draft-pr]
46
- - try to follow the instructions in the [template](.github/PULL_REQUEST_TEMPLATE.md)
47
- - if possible, [sign your commits]
48
- - update CHANGELOG.md with your changes
49
- - once the PR is ready, request for reviews
50
-
51
- More info on [how to contribute to the code](#contribute-to-the-code) can be
52
- found below.
53
-
54
- ### Opening a new issue
55
-
56
- To open a good issue, be clear and precise.
57
-
58
- If you report a problem, the reader must be able to reproduce it easily.
59
- Please do your best to create a [minimal, reproducible example][minimal-reproducible-example].
60
-
61
- Consider submitting a pull request. Even if you think you cannot fix it by
62
- yourself, a pull request with a failing test is always welcome.
63
-
64
- If your request is for an enhancement - a new feature - try to be specific and
65
- support your request with referenced facts and include examples to illustrate
66
- your proposal.
67
-
68
- ## Contribute to the code
69
-
70
- ### Development environment
71
-
72
- Development environment for `cucumber-ruby-core` is a simple Ruby environment with
73
- Bundler. Use a [supported Ruby version](./README.md#supported-platforms), make
74
- sure [Bundler] is set-up, and voilà!
75
-
76
- You can then [fork][how-to-fork] and clone the repository. If your environment
77
- is set-up properly, the following commands should install the dependencies and
78
- execute all the tests successfully.
79
-
80
- ```shell
81
- bundle install
82
- bundle exec rake
83
- ```
84
-
85
- You can now create a branch for your changes and [submit a pull request](#submitting-a-pull-request)!
86
-
87
- ### Working with local cucumber dependencies
88
-
89
- You may need to use local dependencies instead of released gems for `cucumber-gherkin`
90
- or `cucumber-messages`. To do so the [`Gemfile`](./Gemfile) for `cucumber-core`
91
- allows you to specify a local path for your gems using environment variables:
92
-
93
- CUCUMBER_GHERKIN_RUBY
94
- CUCUMBER_MESSAGES_RUBY
95
-
96
- For example, the following would use a local version of `cucumber-gherkin` with
97
- the `rake` command:
98
-
99
- ```shell
100
- CUCUMBER_GHERKIN_RUBY=../common/gherkin/ruby bundle exec rake
101
- ```
102
-
103
- In the same way, if you want to test your changes to `cucumber-core` with a local
104
- `cucumber-ruby`, checkout [`cucumber-ruby`][cucumber-ruby] and do your tests with
105
- `CUCUMBER_RUBY_CORE` pointing to your local `cucumber-core`:
106
-
107
- ```shell
108
- ~/cucumber-ruby-core> cd ../cucumber-ruby
109
- ~/cucumber-ruby> CUCUMBER_RUBY_CORE=../cucumber-ruby-core bundle exec rake
110
- ```
111
-
112
- ### Using a local Gemfile
113
-
114
- A local Gemfile allows you to use your prefer set of gems for your own
115
- development workflow, like gems dedicated to debugging. Such gems are not part
116
- of `cucumber-ruby` standard `Gemfile`.
117
-
118
- `Gemfile.local`, `Gemfile.local.lock` and `.bundle` have been added to
119
- `.gitignore` so local changes cannot be accidentaly commited and pushed to the
120
- repository.
121
-
122
- A `Gemfile.local` may look like this:
123
-
124
- ```ruby
125
- # Gemfile.local
126
-
127
- # Include the regular Gemfile
128
- eval File.read('Gemfile')
129
-
130
- # Include your favorites development gems
131
- group :development do
132
- gem 'byebug'
133
- gem 'pry'
134
- gem 'pry-byebug'
135
-
136
- gem 'debase', require: false
137
- gem 'ruby-debug-ide', require: false
138
- end
139
- ```
140
-
141
- Then you can execute bundler with the `--gemfile` flag:
142
- `bundle install --gemfile Gemfile.local`, or with an environment variable:
143
- `BUNDLE_GEMFILE=Gemfile.local bundle [COMMAND]`.
144
-
145
- To use your local Gemfile per default, you can also execute
146
- `bundle config set --local gemfile Gemfile.local`.
147
-
148
- ### First timer? Welcome!
149
-
150
- Looking for something simple to begin with? Look at issues with the label
151
- '[good first issue](https://github.com/cucumber/cucumber-ruby-core/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)'.
152
-
153
- ### Having trouble getting started with the code? We're here to help!
154
-
155
- If you have trouble setting-up your development environment, or getting started
156
- with the code, you can join us on [Slack][community-slack]. You will find there
157
- a lot of contributors.
158
-
159
- Full-time maintainers are also available. We would be please to have 1:1 pairing
160
- sessions to help you getting started. Look for
161
- [Matt Wynne](https://cucumberbdd.slack.com/team/U590XDLF3) or
162
- [Aurélien Reeves](https://cucumberbdd.slack.com/team/U011BB95MC7) on
163
- [Slack][community-slack].
164
-
165
- ### Additional documentation and notice
166
-
167
- You can find additional documentation in the [docs](./docs) directory such as
168
- (non-exhaustive list):
169
-
170
- - [How to release cucumber-ruby-core](./docs/RELEASE_PROCESS.md) (for maintainers)
171
- - [Overview of cucumber-ruby-core](./docs/ARCHITECTURE.md)
172
-
173
- <!-- Links -->
174
-
175
- [community-slack]: https://cucumberbdd.slack.com/
176
- [cucumber/common]: https://github.com/cucumber/common
177
- [cucumber-ruby]: https://github.com/cucumber/cucumber-ruby
178
- [cucumber-ruby-core]: https://github.com/cucumber/cucumber-ruby-core
179
- [cucumber-ruby-core-issues]: https://github.com/cucumber/cucumber-ruby-core/search?q=is%3Aissue
180
- [cucumber/common-issues]: https://github.com/cucumber/common/search?q=is%3Aissue
181
- [cucumber-issues]: https://github.com/search?q=is%3Aissue+user%3Acucumber
182
- [how-to-create-a-draft-pr]: https://docs.github.com/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests
183
- [how-to-fork]: https://docs.github.com/github/collaborating-with-pull-requests/working-with-forks/about-forks
184
- [sign your commits]: https://docs.github.com/en/github/authenticating-to-github/managing-commit-signature-verification/signing-commits
185
- [minimal-reproducible-example]: https://stackoverflow.com/help/minimal-reproducible-example
186
- [Bundler]: https://bundler.io/