pipe-ruby 1.0.0 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 195a31eb3c9e9ddb6f80a553703cf0501c50b72f
4
- data.tar.gz: abfdff691c25899d33931d210180c423a612550f
2
+ SHA256:
3
+ metadata.gz: fbadf311c963de6b2d2b3afb84a0f2b77289a87a8845113bf50f151ed75f5f2e
4
+ data.tar.gz: 4ce615623a052ebfbdb74e09ada70331e51d2030af9e0103ea32f01f1545b6d9
5
5
  SHA512:
6
- metadata.gz: 6e245799adc6c83fd32ac002b45fafd1475b03beec178e0b99871f4dd891185c912d0bcc7f4dd2bf9f7e2e87777b55a8bbeafbc496a8062b113eb71c86aebed3
7
- data.tar.gz: 84c1fe2750d276eaf7d673f2040e018102f31c3de8f98ceb7a83c3161e5b46f832241dc58fa4fdac5b850ea33617d5709fbdb5b9ce68cbd278f17e75fc283686
6
+ metadata.gz: 01ee3e1028218949442ac2ee4367e20664fa338f286214963a61ecfa957339530f029d67fba56f319358c6b31fecc13d2047884f7a7409425ded43871286d904
7
+ data.tar.gz: 1f5ff71f0f374c2366f97c5acdb8265afb5652fd9819e3d407d7e49a03c0d1f4551fe91d2bc307e2d5ce7a72c9aa573ff1a9b92d5dd77fa8b17599d426e0c90c
data/lib/pipe/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Pipe
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.2"
3
3
  end
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,8 @@
1
1
  require "pry"
2
2
  require "pipe"
3
+ require "simplecov"
4
+
5
+ SimpleCov.start
3
6
 
4
7
  module VerifyAndResetHelpers
5
8
  def verify(object)
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pipe-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Matthews, Paul Hanyzewski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-02-26 00:00:00.000000000 Z
11
+ date: 2023-09-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.7'
19
+ version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.7'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: 12.3.3
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: 12.3.3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.1'
47
+ version: '3.9'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.1'
54
+ version: '3.9'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: pry
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: simplecov
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  description: ''
70
84
  email:
71
85
  - devs@teamsnap.com
@@ -73,13 +87,6 @@ executables: []
73
87
  extensions: []
74
88
  extra_rdoc_files: []
75
89
  files:
76
- - ".gitignore"
77
- - ".rspec"
78
- - CHANGELOG.md
79
- - Gemfile
80
- - LICENSE.txt
81
- - README.md
82
- - Rakefile
83
90
  - lib/pipe.rb
84
91
  - lib/pipe/config.rb
85
92
  - lib/pipe/ext/inflection.rb
@@ -87,12 +94,11 @@ files:
87
94
  - lib/pipe/iterator.rb
88
95
  - lib/pipe/reducer.rb
89
96
  - lib/pipe/version.rb
90
- - pipe-ruby.gemspec
91
97
  - spec/pipe/config_spec.rb
92
98
  - spec/pipe/iterator_spec.rb
93
99
  - spec/pipe/reducer_spec.rb
94
100
  - spec/spec_helper.rb
95
- homepage: ''
101
+ homepage: https://github.com/teamsnap/pipe-ruby
96
102
  licenses:
97
103
  - MIT
98
104
  metadata: {}
@@ -102,17 +108,16 @@ require_paths:
102
108
  - lib
103
109
  required_ruby_version: !ruby/object:Gem::Requirement
104
110
  requirements:
105
- - - "~>"
111
+ - - ">="
106
112
  - !ruby/object:Gem::Version
107
- version: '2.1'
113
+ version: '2.3'
108
114
  required_rubygems_version: !ruby/object:Gem::Requirement
109
115
  requirements:
110
116
  - - ">="
111
117
  - !ruby/object:Gem::Version
112
118
  version: '0'
113
119
  requirements: []
114
- rubyforge_project:
115
- rubygems_version: 2.5.2.3
120
+ rubygems_version: 3.2.22
116
121
  signing_key:
117
122
  specification_version: 4
118
123
  summary: Ruby implementation of the UNIX pipe
data/.gitignore DELETED
@@ -1,14 +0,0 @@
1
- /.bundle/
2
- /.yardoc
3
- /Gemfile.lock
4
- /_yardoc/
5
- /coverage/
6
- /doc/
7
- /pkg/
8
- /spec/reports/
9
- /tmp/
10
- *.bundle
11
- *.so
12
- *.o
13
- *.a
14
- mkmf.log
data/.rspec DELETED
@@ -1 +0,0 @@
1
- --color
data/CHANGELOG.md DELETED
@@ -1,4 +0,0 @@
1
- # Change Log
2
-
3
- ## 1.0.0 (2020-02-25)
4
- - remove pipe-ruby error handling
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in pipe-ruby.gemspec
4
- gemspec
data/LICENSE.txt DELETED
@@ -1,22 +0,0 @@
1
- Copyright (c) 2015 TeamSnap
2
-
3
- MIT License
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining
6
- a copy of this software and associated documentation files (the
7
- "Software"), to deal in the Software without restriction, including
8
- without limitation the rights to use, copy, modify, merge, publish,
9
- distribute, sublicense, and/or sell copies of the Software, and to
10
- permit persons to whom the Software is furnished to do so, subject to
11
- the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be
14
- included in all copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md DELETED
@@ -1,152 +0,0 @@
1
- # Pipe
2
-
3
- `pipe-ruby` is an implementation of the UNIX pipe command. It exposes two
4
- instance methods, `pipe` and `pipe_each`.
5
-
6
- ## Installation
7
-
8
- Add this line to your application's Gemfile:
9
-
10
- ```ruby
11
- gem "pipe-ruby", :require => "pipe"
12
- ```
13
-
14
- After bundling, include the `Pipe` module in your class(es)
15
-
16
- ```ruby
17
- class MyClass
18
- include Pipe
19
-
20
- # ...
21
- end
22
- ```
23
-
24
- ## Default Usage
25
-
26
- ### #pipe
27
-
28
- ```ruby
29
- pipe(subject, :through => [
30
- :method1, :method2#, ...
31
- ])
32
- ```
33
-
34
- Just as with the UNIX pipe, `subject` will be passed as the first argument to
35
- `method1`. The results of `method1` will be passed to `method2` and on and
36
- on. The result of the last method called will be returned from the pipe.
37
-
38
- ### #pipe_each
39
-
40
- ```ruby
41
- pipe_each([subj1, subj2], :through => [
42
- :method1, :method2#, ...
43
- ])
44
- ```
45
-
46
- `pipe_each` calls `pipe`, passing each individual subject. It will return a
47
- mapped array of the responses.
48
-
49
- ## Configurable Options
50
-
51
- After implementing the `pipe` method in a few different places, we found that a
52
- slightly different version was needed for each use case. `Pipe::Config` allows
53
- for this customization per call or per class implementation. There are four
54
- configurable options. Here they are with their defaults:
55
-
56
- ```ruby
57
- Pipe::Config.new(
58
- :skip_on => false, # a truthy value or proc which tells pipe to skip
59
- # the next method in the `through` array
60
-
61
- :stop_on => false # a truthy value or proc which tells pipe to stop
62
- # processing and return the current value
63
- )
64
- ```
65
-
66
- A `Pipe::Config` object can be passed to the pipe method one of three ways.
67
-
68
- NOTE: The options below are in priority order, meaning an override of the
69
- `pipe_config` method will take precedence over an override of the `@pipe_config`
70
- instance variable.
71
-
72
- You can pass it to pipe when called:
73
-
74
- ```ruby
75
- class MyClass
76
- include Pipe
77
-
78
- def my_method
79
- config = Pipe::Config.new(:skip_on => false)
80
- subject = Object.new
81
-
82
- pipe(subject, :config => config, :through => [
83
- # ...
84
- ])
85
- end
86
-
87
- # ...
88
- end
89
- ```
90
-
91
- Or override the `pipe_config` method:
92
-
93
- ```ruby
94
- class MyClass
95
- include Pipe
96
-
97
- def pipe_config
98
- Pipe::Config.new(:skip_on => false)
99
- end
100
-
101
- # ...
102
- end
103
- ```
104
-
105
- Or you can assign it to the `@pipe_config` instance variable:
106
-
107
- ```ruby
108
- class MyClass
109
- include Pipe
110
-
111
- def initialize
112
- @pipe_config = Pipe::Config.new(:skip_on => false)
113
- end
114
-
115
- # ...
116
- end
117
- ```
118
-
119
- ## Skipping / Stopping Execution
120
-
121
- At the beginning of each iteration, `Pipe::Config#stop_on` is called. If it
122
- returns truthy, execution will be stopped and the current value of subject will
123
- be returned. A falsey response will allow the execution to move forward.
124
-
125
- If not stopped, `Pipe::Config#skip_on` will be called. Truthy responses will
126
- cause the current value of subject to be passed to the next iteration without
127
- calling the method specified in the current iteration. Falsey responses will
128
- allow the specified method to be called.
129
-
130
- Both skip_on and stop_on will receive three arguments when they're called, the
131
- current value of subject, the method to be called on this iteration and the
132
- value of `#through`.
133
-
134
- ## Contributing
135
-
136
- First: please check out our [style guides](https://github.com/teamsnap/guides/tree/master/ruby)...
137
- we will hold you to them :)
138
-
139
- 1. Fork it ( https://github.com/[my-github-username]/pipe-ruby/fork )
140
- 2. Create your feature branch (`git checkout -b my-new-feature`)
141
- 3. Make sure you're green (`bundle exec rspec`)
142
- 4. Commit your changes (`git commit -am 'Add some feature'`)
143
- 5. Push to the branch (`git push origin my-new-feature`)
144
- 6. Create a new Pull Request
145
-
146
- ## Testing
147
-
148
- `bundle exec rspec`
149
-
150
- We like to have good coverage of each major feature. Before contributing with a
151
- PR, please make sure you've added tests and are fully green.
152
-
data/Rakefile DELETED
@@ -1,2 +0,0 @@
1
- require "bundler/gem_tasks"
2
-
data/pipe-ruby.gemspec DELETED
@@ -1,26 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'pipe/version'
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = "pipe-ruby"
8
- spec.version = Pipe::VERSION
9
- spec.authors = ["Dan Matthews, Paul Hanyzewski"]
10
- spec.email = ["devs@teamsnap.com"]
11
- spec.summary = %q{Ruby implementation of the UNIX pipe}
12
- spec.description = %q{}
13
- spec.homepage = ""
14
- spec.license = "MIT"
15
-
16
- spec.files = `git ls-files -z`.split("\x0")
17
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
- spec.require_paths = ["lib"]
20
- spec.required_ruby_version = "~> 2.1"
21
-
22
- spec.add_development_dependency "bundler", "~> 1.7"
23
- spec.add_development_dependency "rake", "~> 10.0"
24
- spec.add_development_dependency "rspec", "~> 3.1"
25
- spec.add_development_dependency "pry"
26
- end