params_keeper_rails 1.0.0 → 1.2.1

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: e3849671b65b09469406cf424369f6738686eb9a
4
- data.tar.gz: 0cd0bf4977454d69558c1c3f4556ccbd99d9bf62
2
+ SHA256:
3
+ metadata.gz: dbfc02008104f20c4213f259cf2ba429cf259f407e580ffe717ec8f8031c1cad
4
+ data.tar.gz: 50ec13a553a8a94a534f21622c728de197fcc492bfc34cbab98a7209534540ef
5
5
  SHA512:
6
- metadata.gz: a0450d4f2c493ec326d95fe97e641a9d8e9838252c44c3585badb4b4eaee3091523b7d5e240f258930626a9e920e50704bf904585406b00d772ae30759f9142c
7
- data.tar.gz: 7d8833985dc7d95fc448ea23a1caec19489dd80cf4426fb452bd95644b523e4c535a53489631415309572c106ac432cc11f0b17ef903bbbf352dbab8cf1bb78b
6
+ metadata.gz: 81446f14b629abffbb74e55949cd2dbe0e11c2e5941604a68e3ff1a05d668bcffe396497ccb58d13b0da0287de28f6b416481285d013b75df92af67fe5e62451
7
+ data.tar.gz: abb1b559084ffba8fd1a9bab5ba238416fe10e8148603bce8178be53d86054e683fe0af7fb9813e767e6baf13eb88a6708de9eea59b88bea65a075ee63ea1cba
@@ -0,0 +1,42 @@
1
+ name: CI
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ test:
7
+ runs-on: ubuntu-16.04
8
+ strategy:
9
+ fail-fast: false
10
+ matrix:
11
+ ruby: [2.3, 2.4, 2.5, 2.6, 2.7, 3.0]
12
+ gemfile: ['rails50', 'rails51', 'rails52', 'rails60', 'rails61']
13
+ exclude:
14
+ - ruby: 2.3
15
+ gemfile: rails60
16
+ - ruby: 2.3
17
+ gemfile: rails61
18
+ - ruby: 2.4
19
+ gemfile: rails60
20
+ - ruby: 2.4
21
+ gemfile: rails61
22
+ - ruby: 3.0
23
+ gemfile: rails50
24
+ - ruby: 3.0
25
+ gemfile: rails51
26
+ - ruby: 3.0
27
+ gemfile: rails52
28
+
29
+ name: ruby ${{ matrix.ruby }}, ${{ matrix.gemfile }}
30
+
31
+ env:
32
+ BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
33
+
34
+ steps:
35
+ - uses: actions/checkout@v2
36
+ - uses: ruby/setup-ruby@v1
37
+ with:
38
+ ruby-version: ${{ matrix.ruby }}
39
+ bundler-cache: true
40
+ - name: Run test
41
+ run: |
42
+ bundle exec rspec
data/.gitignore CHANGED
@@ -1,15 +1,8 @@
1
1
  /.bundle/
2
- /.yardoc
3
2
  /.project
4
3
  /Gemfile.lock
5
- /gemfiles/.bundle
6
- /gemfiles/vendor
7
4
  /gemfiles/*gemfile.lock
8
- /_yardoc/
9
5
  /coverage/
10
- /doc/
11
6
  /log/
12
7
  /pkg/
13
- /spec/reports/
14
- /tmp/
15
- /vendor/
8
+ /spec/dummy/log/
data/CHANGELOG.md ADDED
@@ -0,0 +1,36 @@
1
+ # CHANGELOG
2
+
3
+ ## 1.2.1
4
+
5
+ * Fix order of options to be resolved for hidden fields.
6
+
7
+ ## 1.2.0
8
+
9
+ * Support multiple configs.
10
+ * Support hidden fields for `form_with` with GET method. (Rails => 5.1)
11
+
12
+ ## 1.1.2
13
+
14
+ * Fix url_for helper outside of controller.
15
+
16
+ ## 1.1.1
17
+
18
+ * Support symbolized :to config.
19
+
20
+ ## 1.1.0
21
+
22
+ Features:
23
+
24
+ * Add :url_options config.
25
+
26
+ Changes:
27
+
28
+ * Change :args to :for.
29
+
30
+ Fixes:
31
+
32
+ * Refactoring.
33
+
34
+ ## 1.0.0
35
+
36
+ * First release.
data/Gemfile CHANGED
@@ -1,4 +1,3 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- # Specify your gem's dependencies in params_keeper_rails.gemspec
4
3
  gemspec
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # ParamsKeeperRails
2
2
 
3
- A rails gem for keeping specific parameters through links.
3
+ A rails controller extension for keeping specific parameters through links.
4
4
 
5
5
  ## Dependencies
6
6
 
@@ -29,51 +29,90 @@ class ExamplesController < ApplicationController
29
29
  keep_params :key1, :key2
30
30
  ```
31
31
 
32
- Parameters are kept if destination controller is same as current controller.
32
+ Parameters are kept via `url_for` if destination controller is same as current controller.
33
33
  For example:
34
34
 
35
35
  ```ruby
36
36
  GET "/examples?key1=**&key2=**"
37
37
 
38
- # hash argument
39
- url_for(action: :show) #=> '/examples/:id?key1=**&key2=**'
38
+ # hash arg
39
+ url_for(action: :index) #=> '/examples?key1=**&key2=**'
40
40
 
41
- # string and active model arguments don't keep parameters by defalut
41
+ # parameters are not kept if string or model arg is specified
42
42
  url_for('/examples') #=> '/examples'
43
43
  url_for(@example) #=> '/examples/:id'
44
44
 
45
45
  # parameters are not kept if destination controller is different from current controller
46
46
  url_for(controller: 'examples2', action: :index) #=> '/examples2'
47
47
 
48
- # parameters are not kept if you set keep_params: false
48
+ # parameters are not kept if you put "keep_params: false" into args
49
49
  url_for(action: :show, keep_params: false) #=> '/examples/:id'
50
50
  ```
51
51
 
52
- Specify class of url_for argument:
52
+ Parameters are kept for form with GET method via hidden fields.
53
+ This feature is supported by `form_with` for rails >= 5.1.
53
54
 
54
55
  ```ruby
55
- keep_params :key1, :key2, args: [:hash] # only hash argument like url_for(action: :show) keeps parameters
56
- keep_params :key1, :key2, args: [:string] # only string argument like url_for('/examples') keeps parameters
57
- keep_params :key1, :key2, args: [:model] # only model argument like url_for(@example) keeps parameters
56
+ <%= form_with url: { action: :index}, method: :get do %>
57
+ <%= submit_tag 'submit' %>
58
+ <% end %>
59
+ #=> ...<input type="hidden" name="key1" value="**" />
60
+ # <input type="hidden" name="key2" value="**" /></form>
58
61
  ```
59
62
 
63
+ ## Options
64
+
65
+ ### Argument type
66
+
67
+ Enable only specific argument type of url_for:
68
+
69
+ ```ruby
70
+ # hash arg (same as default behaviour)
71
+ keep_params :key1, :key2, for: :hash
72
+ url_for(action: :index) #=> '/examples?key1=**&key2=**'
73
+
74
+ # string arg
75
+ keep_params :key1, :key2, for: :string
76
+ url_for('/examples') #=> '/examples?key1=**&key2=**'
77
+
78
+ # model arg
79
+ keep_params :key1, :key2, for: :model
80
+ url_for(@example) #=> '/examples/:id?key1=**&key2=**'
81
+ ```
82
+
83
+ `:for` allows to set multiple argument type as follows:
84
+
85
+ ```ruby
86
+ keep_params :key1, :key2, for: [:hash, :model]
87
+ ```
88
+
89
+ ### Multiple controllers
90
+
60
91
  Keep parameters throught multiple controllers:
61
92
 
62
93
  ```ruby
63
94
  class ExamplesController < ApplicationController
64
95
  include ParamsKeeper::Controller
65
- keep_params :key1, :key2, to: %w(examples nested_examples)
96
+ keep_params :key1, :key2, to: %w(examples examples2)
66
97
  end
67
98
 
68
- class NestedExamplesController < ApplicationController
99
+ class Examples2Controller < ApplicationController
69
100
  include ParamsKeeper::Controller
70
- keep_params :key1, :key2, to: %w(examples nested_examples)
101
+ keep_params :key1, :key2, to: %w(examples examples2)
71
102
  end
72
103
  ```
73
104
 
105
+ ### Default parameters
106
+
107
+ Specify default parameters:
108
+
109
+ ```ruby
110
+ keep_params :key1, :key2, url_options: { fixed_param: :something }
111
+ ```
112
+
74
113
  ## Contributing
75
114
 
76
- Bug reports and pull requests are welcome on GitHub at https://github.com/kanety/params_keeper_rails. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
115
+ Bug reports and pull requests are welcome on GitHub at https://github.com/kanety/params_keeper_rails.
77
116
 
78
117
  ## License
79
118
 
@@ -1,6 +1,5 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem "rails", "~> 5.0.5"
3
+ gem "rails", "~> 5.0.0"
4
4
 
5
- # Specify your gem's dependencies in params_keeper_rails.gemspec
6
5
  gemspec path: "../"
@@ -1,6 +1,5 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem "rails", "~> 5.1.3"
3
+ gem "rails", "~> 5.1.0"
4
4
 
5
- # Specify your gem's dependencies in params_keeper_rails.gemspec
6
5
  gemspec path: "../"
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem "rails", "~> 5.2.0"
4
+
5
+ gemspec path: "../"
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem "rails", "~> 6.0.0"
4
+
5
+ gemspec path: "../"
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem "rails", "~> 6.1.0"
4
+
5
+ gemspec path: "../"
@@ -0,0 +1,12 @@
1
+ module ParamsKeeper
2
+ class Config
3
+ attr_accessor :keys, :to, :for, :url_options
4
+
5
+ def initialize(keys, options = {})
6
+ @keys = Array(keys)
7
+ @to = Array(options[:to])
8
+ @for = Array(options[:for] || :hash)
9
+ @url_options = options[:url_options] || {}
10
+ end
11
+ end
12
+ end
@@ -1,64 +1,33 @@
1
- require 'params_keeper/helper'
1
+ module ParamsKeeper
2
+ module Controller
3
+ extend ActiveSupport::Concern
2
4
 
3
- module ParamsKeeper::Controller
4
- extend ActiveSupport::Concern
5
-
6
- included do
7
- class_attribute :keep_params_keys, :keep_params_configs
8
- helper ParamsKeeper::Helper
9
- end
5
+ included do
6
+ class_attribute :keep_params_configs
7
+ helper ParamsKeeper::Helper
8
+ end
10
9
 
11
- def url_for(options = nil)
12
- return super if options.is_a?(Hash) && options.delete(:keep_params) == false
10
+ def url_for(options = nil)
11
+ ParamsKeeper::UrlFor.new(self, self, options).call || super
12
+ end
13
13
 
14
- configs = self.class.keep_params_configs
15
- keys = self.class.keep_params_keys
16
- return super if keys.blank?
14
+ def redirect_to(options = {}, response_options = {})
15
+ return super unless options.is_a?(String)
17
16
 
18
- if configs.key?(:args)
19
- args = Array(configs[:args])
20
- return super if (options.is_a?(Hash) && !args.include?(:hash)) ||
21
- (options.is_a?(String) && !args.include?(:string)) ||
22
- (options.class.respond_to?(:model_name) && !args.include?(:model))
23
- elsif !options.is_a?(Hash)
24
- return super
17
+ url = ParamsKeeper::UrlFor.new(self, self, options).call
18
+ url ? super(url, response_options) : super
25
19
  end
26
20
 
27
- if options.is_a?(Hash)
28
- if keep_params?(options, configs)
29
- super(ParamsKeeper::Helper.merge_params(options, params, keys))
30
- else
31
- super
32
- end
33
- else
34
- url = super(options)
35
- url_opts = begin
36
- Rails.application.routes.recognize_path(url)
37
- rescue ActionController::RoutingError
38
- nil
39
- end
40
- if url_opts && keep_params?(url_opts, configs)
41
- super(ParamsKeeper::Helper.merge_params(url_opts, params, keys))
42
- else
43
- url
21
+ class_methods do
22
+ def keep_params(*args)
23
+ options = args.last.is_a?(Hash) ? args.pop : {}
24
+ config = ParamsKeeper::Config.new(args, options)
25
+ self.keep_params_configs = keep_params_configs.to_a + [config]
44
26
  end
45
- end
46
- end
47
-
48
- def keep_params?(options, configs)
49
- controller = options[:controller].to_s
50
- if configs[:to]
51
- target = [controller, controller_name, controller_path]
52
- Array(configs[:to]).any? { |c| c.to_s.in?(target) }
53
- else
54
- controller.blank? || controller.in?([controller_name, controller_path])
55
- end
56
- end
57
27
 
58
- class_methods do
59
- def keep_params(*args)
60
- self.keep_params_configs = args.last.is_a?(Hash) ? args.pop : {}
61
- self.keep_params_keys = Array(args)
28
+ def clear_keep_params!
29
+ self.keep_params_configs = nil
30
+ end
62
31
  end
63
32
  end
64
33
  end
@@ -1,12 +1,23 @@
1
- module ParamsKeeper::Helper
2
- def url_for(options = nil)
3
- controller.url_for(options)
4
- end
1
+ module ParamsKeeper
2
+ module Helper
3
+ def url_for(url_options = nil)
4
+ return super unless controller
5
+
6
+ ParamsKeeper::UrlFor.new(self, controller, url_options).call || super
7
+ end
8
+
9
+ def form_with(**options, &block)
10
+ return super unless controller
11
+ return super if options[:method].to_s.downcase != 'get'
5
12
 
6
- class << self
7
- def merge_params(options, params, keep_params_keys)
8
- keeps = params.to_unsafe_h.deep_symbolize_keys.slice(*keep_params_keys.to_a)
9
- options.reverse_merge(keeps)
13
+ html = super
14
+ url_options = options[:url] || options[:model]
15
+ hidden_fields = ParamsKeeper::HiddenFields.new(controller, url_options).call
16
+ if hidden_fields.present?
17
+ html.sub('</form>') { "#{hidden_fields}</form>" }.html_safe
18
+ else
19
+ html
20
+ end
10
21
  end
11
22
  end
12
23
  end
@@ -0,0 +1,19 @@
1
+ module ParamsKeeper
2
+ class HiddenFields
3
+ def initialize(controller, url_options)
4
+ @controller = controller
5
+ @url_options = url_options
6
+ end
7
+
8
+ def call
9
+ return if @controller.class.keep_params_configs.blank?
10
+
11
+ params = ParamsKeeper::Resolver.new(@controller, @url_options).call
12
+ return if params.blank?
13
+
14
+ CGI.parse(params.to_query).flat_map do |key, values|
15
+ values.map { |value| @controller.view_context.hidden_field_tag(key, value, id: nil) }
16
+ end.join.html_safe
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,87 @@
1
+ module ParamsKeeper
2
+ class Resolver
3
+ def initialize(controller, url_options)
4
+ @controller = controller
5
+ @url_options = url_options
6
+ @cache = {}
7
+ end
8
+
9
+ def call
10
+ return {} if configs.blank? || skip_url_options?
11
+
12
+ configs.each_with_object({}) do |config, params|
13
+ if target_config?(config)
14
+ params.merge!(extract_params(config))
15
+ end
16
+ end
17
+ end
18
+
19
+ def url_options_hash
20
+ if @url_options.is_a?(Hash)
21
+ @url_options
22
+ else
23
+ recognize_path(base_url_for(@url_options))
24
+ end
25
+ end
26
+
27
+ private
28
+
29
+ def configs
30
+ @controller.class.keep_params_configs
31
+ end
32
+
33
+ def skip_url_options?
34
+ if @url_options.is_a?(Hash)
35
+ @url_options.delete(:keep_params) == false
36
+ else
37
+ false
38
+ end
39
+ end
40
+
41
+ def target_config?(config)
42
+ target_url_options?(config) && target_controller?(config)
43
+ end
44
+
45
+ def target_url_options?(config)
46
+ (config.for.include?(:hash) && @url_options.is_a?(Hash)) ||
47
+ (config.for.include?(:string) && @url_options.is_a?(String)) ||
48
+ (config.for.include?(:model) && @url_options.class.respond_to?(:model_name))
49
+ end
50
+
51
+ def target_controller?(config)
52
+ dests = destination_controllers(url_options_hash)
53
+ if config.to.present?
54
+ (dests & config.to.map(&:to_s)).present?
55
+ else
56
+ (dests & current_controllers).present?
57
+ end
58
+ end
59
+
60
+ def destination_controllers(url_options_hash)
61
+ if url_options_hash[:controller].present?
62
+ [url_options_hash[:controller].to_s]
63
+ else
64
+ current_controllers
65
+ end
66
+ end
67
+
68
+ def current_controllers
69
+ [@controller.controller_name, @controller.controller_path]
70
+ end
71
+
72
+ def recognize_path(url)
73
+ @cache[url] ||= Rails.application.routes.recognize_path(url)
74
+ rescue ActionController::RoutingError
75
+ {}
76
+ end
77
+
78
+ def extract_params(config)
79
+ params = @controller.request.params.deep_symbolize_keys
80
+ params.slice(*config.keys).merge(config.url_options)
81
+ end
82
+
83
+ def base_url_for(url_options)
84
+ @controller.method(:url_for).super_method.call(url_options)
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,25 @@
1
+ module ParamsKeeper
2
+ class UrlFor
3
+ def initialize(caller, controller, url_options)
4
+ @caller = caller
5
+ @controller = controller
6
+ @url_options = url_options
7
+ end
8
+
9
+ def call
10
+ return if @controller.class.keep_params_configs.blank?
11
+
12
+ resolver = ParamsKeeper::Resolver.new(@controller, @url_options)
13
+ params = resolver.call
14
+ return if params.blank?
15
+
16
+ base_url_for(resolver.url_options_hash.reverse_merge(params))
17
+ end
18
+
19
+ private
20
+
21
+ def base_url_for(url_options)
22
+ @caller.method(:url_for).super_method.call(url_options)
23
+ end
24
+ end
25
+ end
@@ -1,3 +1,3 @@
1
1
  module ParamsKeeper
2
- VERSION = "1.0.0"
2
+ VERSION = "1.2.1"
3
3
  end
@@ -1,3 +1,8 @@
1
1
  require 'active_support'
2
2
  require 'params_keeper/version'
3
+ require 'params_keeper/config'
4
+ require 'params_keeper/resolver'
5
+ require 'params_keeper/url_for'
6
+ require 'params_keeper/hidden_fields'
7
+ require 'params_keeper/helper'
3
8
  require 'params_keeper/controller'
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["kaneta@sitebridge.co.jp"]
11
11
 
12
12
  spec.summary = %q{keep specific parameters through links.}
13
- spec.description = %q{A rails gem for keeping specific parameters through links.}
13
+ spec.description = %q{A rails controller extension for keeping specific parameters through links.}
14
14
  spec.homepage = "https://github.com/kanety/params_keeper_rails"
15
15
  spec.license = "MIT"
16
16
 
@@ -26,6 +26,5 @@ Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency "rake"
27
27
  spec.add_development_dependency "rspec"
28
28
  spec.add_development_dependency "rspec-rails"
29
- spec.add_development_dependency "rails-controller-testing"
30
29
  spec.add_development_dependency "simplecov"
31
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: params_keeper_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yoshikazu Kaneta
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-09-04 00:00:00.000000000 Z
11
+ date: 2021-03-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -66,20 +66,6 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: rails-controller-testing
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'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: simplecov
85
71
  requirement: !ruby/object:Gem::Requirement
@@ -94,27 +80,34 @@ dependencies:
94
80
  - - ">="
95
81
  - !ruby/object:Gem::Version
96
82
  version: '0'
97
- description: A rails gem for keeping specific parameters through links.
83
+ description: A rails controller extension for keeping specific parameters through
84
+ links.
98
85
  email:
99
86
  - kaneta@sitebridge.co.jp
100
87
  executables: []
101
88
  extensions: []
102
89
  extra_rdoc_files: []
103
90
  files:
91
+ - ".github/workflows/ci.yml"
104
92
  - ".gitignore"
105
93
  - ".rspec"
106
- - ".travis.yml"
94
+ - CHANGELOG.md
107
95
  - CODE_OF_CONDUCT.md
108
96
  - Gemfile
109
97
  - LICENSE.txt
110
98
  - README.md
111
99
  - Rakefile
112
- - bin/console
113
- - bin/setup
114
100
  - gemfiles/rails50.gemfile
115
101
  - gemfiles/rails51.gemfile
102
+ - gemfiles/rails52.gemfile
103
+ - gemfiles/rails60.gemfile
104
+ - gemfiles/rails61.gemfile
105
+ - lib/params_keeper/config.rb
116
106
  - lib/params_keeper/controller.rb
117
107
  - lib/params_keeper/helper.rb
108
+ - lib/params_keeper/hidden_fields.rb
109
+ - lib/params_keeper/resolver.rb
110
+ - lib/params_keeper/url_for.rb
118
111
  - lib/params_keeper/version.rb
119
112
  - lib/params_keeper_rails.rb
120
113
  - params_keeper_rails.gemspec
@@ -137,8 +130,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
137
130
  - !ruby/object:Gem::Version
138
131
  version: '0'
139
132
  requirements: []
140
- rubyforge_project:
141
- rubygems_version: 2.6.13
133
+ rubygems_version: 3.1.2
142
134
  signing_key:
143
135
  specification_version: 4
144
136
  summary: keep specific parameters through links.
data/.travis.yml DELETED
@@ -1,8 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 2.3.4
4
- - 2.4.1
5
- gemfile:
6
- - gemfiles/rails50.gemfile
7
- - gemfiles/rails51.gemfile
8
- before_install: gem install bundler -v 1.15.3
data/bin/console DELETED
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require "bundler/setup"
4
- require "params_keeper/controller"
5
-
6
- # You can add fixtures and/or initialization code here to make experimenting
7
- # with your gem easier. You can also use a different console, if you like.
8
-
9
- # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
11
- # Pry.start
12
-
13
- require "irb"
14
- IRB.start
data/bin/setup DELETED
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
- IFS=$'\n\t'
4
- set -vx
5
-
6
- bundle install
7
-
8
- # Do any other automated setup that you need to do here