tanshuku 0.0.19 → 0.0.20

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: 0ed630fab007e97649b1a2517683823bf23c4fef612c21bbd87e31f8e34647b5
4
- data.tar.gz: c2d9fa9e3e3f173fd69ccaf5826ce4e9cc0adea43729410fda75c0d10d6e60da
3
+ metadata.gz: 3d76c6fcc6d013d882135ed4c89e391504b97ffb872316f9427b9834f006ed0a
4
+ data.tar.gz: 74f8abca0448be56006ffe1a22cbf9041216feb34cdf165624a93d160a1b666c
5
5
  SHA512:
6
- metadata.gz: c38c594c794df3292bea69efe4446b12a5cb8ce807abcc967e1bc93d2bc1910c41a5d57caa24a465737991277c6523f78a455dbd8ec32d669276f6f7f7bfb06e
7
- data.tar.gz: b30d56b5b4fb085f59a0cb4e2c51a9bf661dfae892a6d349138b14a374b7233777341e8f9914d13f2d121e06caee0534ca56c6552e24db8779494a6b1118b360
6
+ metadata.gz: 80fed95fdb6a8797f29e2e87a2d8cd9f6bc39ee8757a05ae8c9c3d4ad3bc2ab99f884e798d210f621229135738851e4982f1a330eaabcca7819398f55fd28b40
7
+ data.tar.gz: 402363cc346ffaed626cfbfe32f54a4e479b44cc070e4ebb2bb3648145cef6cb36e009393fcffefe73a90decb895dab3725721b680a42f95f54a2f77e1c7ff32
data/README.md CHANGED
@@ -4,19 +4,19 @@ Tanshuku is a simple and small Rails engine that makes it easier to shorten URLs
4
4
 
5
5
  ## Key Features
6
6
 
7
- * Generates a unique key for a URL.
8
- * The uniqueness is ensured at database level.
9
- * Creates no additional shortened URL record if the given URL has already been shortened.
10
- * You can create an additional record for the same URL with using a different namespace from existing records'.
11
- * Checks its existence considering the performance.
12
- * Provides a Rails controller and action for finding a shortened URL record and redirecting to its original, i.e., non-shortened, URL.
13
- * The redirection is done with 301 HTTP status.
7
+ - Generates a unique key for a URL.
8
+ - The uniqueness is ensured at database level.
9
+ - Creates no additional shortened URL record if the given URL has already been shortened.
10
+ - You can create an additional record for the same URL with using a different namespace from existing records’.
11
+ - Checks its existence considering the performance.
12
+ - Provides a Rails controller and action for finding a shortened URL record and redirecting to its original, i.e., non-shortened, URL.
13
+ - The redirection is done with 301 HTTP status.
14
14
 
15
15
  ## Usage
16
16
 
17
17
  ### 1. Mount `Tanshuku::Engine`
18
18
 
19
- For example, the following code generates a routing `` GET `/t/:key` to `Tanshuku::UrlsController#show` ``. When your Rails app receives a request to `/t/abcdefghij0123456789`, `Tanshuku::UrlsController#show` will be called and a `Tanshuku::Url` record with a key `abcdefghij0123456789` will be found. Then the request will be redirected to the `Tanshuku::Url` record's original URL.
19
+ For example, the following code generates a routing `` GET `/t/:key` to `Tanshuku::UrlsController#show` ``. When your Rails app receives a request to `/t/abcdefghij0123456789`, `Tanshuku::UrlsController#show` will be called and a `Tanshuku::Url` record with a key `abcdefghij0123456789` will be found. Then the request will be redirected to the `Tanshuku::Url` records original URL.
20
20
 
21
21
  ```rb
22
22
  # config/routes.rb
@@ -31,9 +31,9 @@ end
31
31
 
32
32
  **Note**: This step is optional.
33
33
 
34
- **Note**: An initializer file for configuration can be generated by `bin/rails generate tanshuku:install`. See the "[Installation](#installation)" section below for more information.
34
+ **Note**: An initializer file for configuration can be generated by `bin/rails generate tanshuku:install`. See the [Installation](#installation) section below for more information.
35
35
 
36
- **Note**: Mutating a `Tanshuku::Configuration` object is thread-***unsafe***. It is recommended to use `Tanshuku.configure` for configuration.
36
+ **Note**: Mutating a `Tanshuku::Configuration` object is thread-**_unsafe_**. It is recommended to use `Tanshuku.configure` for configuration.
37
37
 
38
38
  #### `config.default_url_options`
39
39
 
@@ -72,7 +72,7 @@ end
72
72
 
73
73
  #### More information
74
74
 
75
- cf. [`Tanshuku::Configuration`'s API documentation](https://kg8m.github.io/tanshuku/Tanshuku/Configuration.html)
75
+ cf. [`Tanshuku::Configuration`’s API documentation](https://kg8m.github.io/tanshuku/Tanshuku/Configuration.html)
76
76
 
77
77
  ### 3. Generate shortened URLs
78
78
 
@@ -115,10 +115,10 @@ Tanshuku::Url.shorten("https://google.com/", url_options: { protocol: :http })
115
115
  You can create additional records for the same URL with specifying a namespace.
116
116
 
117
117
  ```rb
118
- # When no record exists for "https://google.com/", a new record will be created.
118
+ # When no record exists for https://google.com/”, a new record will be created.
119
119
  Tanshuku::Url.shorten("https://google.com/") #=> "https://example.com/t/abc012def345ghi678j9"
120
120
 
121
- # Even when a record already exists for "https://google.com/", an additional record will be created if namespace is
121
+ # Even when a record already exists for https://google.com/”, an additional record will be created if namespace is
122
122
  # specified.
123
123
  Tanshuku::Url.shorten("https://google.com/", namespace: "a") #=> "https://example.com/t/ab01cd23ef45gh67ij89"
124
124
  Tanshuku::Url.shorten("https://google.com/", namespace: "b") #=> "https://example.com/t/a0b1c2d3e4f5g6h7i8j9"
@@ -131,7 +131,7 @@ Tanshuku::Url.shorten("https://google.com/", namespace: "a") #=> "https://examp
131
131
 
132
132
  #### More information
133
133
 
134
- cf. [`Tanshuku::Url.shorten`'s API documentation](https://kg8m.github.io/tanshuku/Tanshuku/Url.html#shorten-class_method)
134
+ cf. [`Tanshuku::Url.shorten`’s API documentation](https://kg8m.github.io/tanshuku/Tanshuku/Url.html#shorten-class_method)
135
135
 
136
136
  ### 4. Share the shortened URLs
137
137
 
@@ -143,7 +143,7 @@ When a user clicks a link with a shortened URL, your Rails app redirects the use
143
143
 
144
144
  ### 1. Enable Tanshuku
145
145
 
146
- Add `gem "tanshuku"` to your application's `Gemfile`.
146
+ Add `gem "tanshuku"` to your applications `Gemfile`.
147
147
 
148
148
  ```rb
149
149
  # Gemfile
@@ -168,19 +168,19 @@ bin/rails db:migrate
168
168
 
169
169
  ## Q&A
170
170
 
171
- ### What does "tanshuku" mean?
171
+ ### Q. What does tanshuku mean?
172
172
 
173
- "Tanshuku" is a Japanese word "短縮." It means "shortening." "短縮URL" in Japanese means "shortened URL" in English.
173
+ A. “Tanshuku is a Japanese word “短縮.” It means shortening.” And “短縮URL in Japanese means shortened URL in English.
174
174
 
175
- ### \*\* (anything you want) isn't implemented?
175
+ ### Q. \*\* (anything you want) isnt implemented?
176
176
 
177
- Does Tanshuku have some missing features? Please [create an issue](https://github.com/kg8m/tanshuku/issues/new).
177
+ A. Does Tanshuku have some missing features? Please [create an issue](https://github.com/kg8m/tanshuku/issues/new).
178
178
 
179
179
  ## How to develop
180
180
 
181
181
  1. Fork this repository
182
182
  1. `git clone` your fork
183
- 1. `bundle install`
183
+ 1. `bundle install` and `rake steep:prepare`
184
184
  1. Update sources
185
185
  1. `rake`
186
186
  1. Fix `rake` errors if `rake` fails
@@ -13,7 +13,7 @@ module Tanshuku
13
13
  # @return [String] Original, i.e., non-shortened, URL of the record.
14
14
  #
15
15
  # @!attribute [rw] hashed_url
16
- # @return [String] A hashed string of the record's original URL.
16
+ # @return [String] A hashed string of the records original URL.
17
17
  # @note This attribute is used for uniqueness of the original URL.
18
18
  # @api private
19
19
  #
@@ -29,12 +29,12 @@ module Tanshuku
29
29
  validates :url, length: { maximum: proc { Tanshuku.config.max_url_length } }
30
30
  validates :url, format: { with: proc { Tanshuku.config.url_pattern } }, allow_blank: true
31
31
 
32
- # Don't validate uniqueness of unique attributes. Raise ActiveRecord::RecordNotUnique instead if the attributes get
32
+ # Dont validate uniqueness of unique attributes. Raise ActiveRecord::RecordNotUnique instead if the attributes get
33
33
  # duplicated. Then rescue the exception and try to retry.
34
34
  # validates :url, :hashed_url, :key, uniqueness: true
35
35
 
36
36
  # Shortens a URL. Builds and saves a {Tanshuku::Url} record with generating a unique key for the given URL and
37
- # namespace. Then returns the record's shortened URL with the given URL options.
37
+ # namespace. Then returns the records shortened URL with the given URL options.
38
38
  #
39
39
  # @note
40
40
  # If a {Tanshuku::Url} record already exists, no additional record will be created and the existing record will be
@@ -45,7 +45,7 @@ module Tanshuku
45
45
  #
46
46
  # @param original_url [String] The original, i.e., non-shortened, URL.
47
47
  # @param namespace [String] A namespace for shorteting URL. Shortened URLs are unique in namespaces.
48
- # @param url_options [Hash] An option for Rails' +url_for+.
48
+ # @param url_options [Hash] An option for Rails +url_for+.
49
49
  #
50
50
  # @return [String] A shortened URL if succeeded to shorten the original URL.
51
51
  # @return [String] The original URL if failed to shorten it.
@@ -61,10 +61,10 @@ module Tanshuku
61
61
  # Tanshuku::Url.shorten("https://google.com/", url_options: { protocol: :http })
62
62
  # #=> "http://example.com/t/abcde01234fghij56789"
63
63
  # @example With a namespace.
64
- # # When no record exists for "https://google.com/", a new record will be created.
64
+ # # When no record exists for https://google.com/”, a new record will be created.
65
65
  # Tanshuku::Url.shorten("https://google.com/") #=> "https://example.com/t/abc012def345ghi678j9"
66
66
  #
67
- # # Even when a record already exists for "https://google.com/", an additional record will be created if namespace
67
+ # # Even when a record already exists for https://google.com/”, an additional record will be created if namespace
68
68
  # # is specified.
69
69
  # Tanshuku::Url.shorten("https://google.com/", namespace: "a") #=> "https://example.com/t/ab01cd23ef45gh67ij89"
70
70
  # Tanshuku::Url.shorten("https://google.com/", namespace: "b") #=> "https://example.com/t/a0b1c2d3e4f5g6h7i8j9"
@@ -131,7 +131,7 @@ module Tanshuku
131
131
 
132
132
  # Hashes a URL.
133
133
  #
134
- # @note This method calls {Tanshuku::Configuration#url_hasher}'s +call+ and returns its return value.
134
+ # @note This method calls {Tanshuku::Configuration#url_hasher}s +call+ and returns its return value.
135
135
  #
136
136
  # @param url [String] A non-hashed URL.
137
137
  # @param namespace [String] A namespace for the URL.
@@ -143,7 +143,7 @@ module Tanshuku
143
143
 
144
144
  # Generates a unique key for a shortened URL.
145
145
  #
146
- # @note This method calls {Tanshuku::Configuration#key_generator}'s +call+ and returns its return value.
146
+ # @note This method calls {Tanshuku::Configuration#key_generator}s +call+ and returns its return value.
147
147
  #
148
148
  # @return [String] Depends on your {Tanshuku::Configuration#key_generator} configuration.
149
149
  def self.generate_key
@@ -152,7 +152,7 @@ module Tanshuku
152
152
 
153
153
  # Reports an exception when failed to shorten a URL.
154
154
  #
155
- # @note This method calls {Tanshuku::Configuration#exception_reporter}'s +call+ and returns its return value.
155
+ # @note This method calls {Tanshuku::Configuration#exception_reporter}s +call+ and returns its return value.
156
156
  #
157
157
  # @param exception [Exception] An error instance at shortening a URL.
158
158
  # @param original_url [String] The original URL failed to shorten.
@@ -162,9 +162,9 @@ module Tanshuku
162
162
  Tanshuku.config.exception_reporter.call(exception:, original_url:)
163
163
  end
164
164
 
165
- # The record's shortened URL.
165
+ # The records shortened URL.
166
166
  #
167
- # @param url_options [Hash] An option for Rails' +url_for+.
167
+ # @param url_options [Hash] An option for Rails +url_for+.
168
168
  #
169
169
  # @return [String] A shortened URL.
170
170
  def shortened_url(url_options = {})
@@ -11,7 +11,7 @@ module Tanshuku
11
11
  # Calls +Digest::SHA512.hexdigest+ with the given URL string and the given namespace.
12
12
  #
13
13
  # @param url [String] A URL to hash.
14
- # @param namespace [String] A namespace for the URL's uniqueness.
14
+ # @param namespace [String] A namespace for the URLs uniqueness.
15
15
  #
16
16
  # @return [String] A SHA512 digest string from the given url and namespace.
17
17
  def self.call(url, namespace:)
@@ -45,7 +45,7 @@ module Tanshuku
45
45
  include ActiveModel::Attributes
46
46
 
47
47
  # @!attribute [rw] default_url_options
48
- # Default URL options for Rails' +url_for+. Defaults to +{}+.
48
+ # Default URL options for Rails +url_for+. Defaults to +{}+.
49
49
  #
50
50
  # @return [Hash]
51
51
  # @return [void] If you set an invalid object.
@@ -102,7 +102,7 @@ module Tanshuku
102
102
  # @return [Integer]
103
103
  # @return [void] If you set an invalid object.
104
104
  #
105
- # @note Don't forget to fix the limit of the +tanshuku_urls.key+ column if you change this value.
105
+ # @note Dont forget to fix the limit of the +tanshuku_urls.key+ column if you change this value.
106
106
  #
107
107
  # @note
108
108
  # The example below means that {Tanshuku::Url#key} has 10-char string.
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Tanshuku
4
- # Tanshuku's Rails engine.
4
+ # Tanshukus Rails engine.
5
5
  #
6
6
  # @note
7
7
  # The example below generates a routing +GET `/t/:key` to `Tanshuku::UrlsController#show`+. When your Rails app
8
8
  # receives a request to +/t/abcdefghij0123456789+, +Tanshuku::UrlsController#show+ will be called and a
9
9
  # +Tanshuku::Url+ record with a key +abcdefghij0123456789+ will be found. Then the request will be redirected to the
10
- # +Tanshuku::Url+ record's original URL.
10
+ # +Tanshuku::Url+ records original URL.
11
11
  #
12
12
  # @example To mount Tanshuku to your Rails app
13
13
  # # config/routes.rb
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Tanshuku
4
- VERSION = "0.0.19"
4
+ VERSION = "0.0.20"
5
5
  end
data/lib/tanshuku.rb CHANGED
@@ -4,7 +4,7 @@ require_relative "tanshuku/configuration"
4
4
  require_relative "tanshuku/engine"
5
5
  require_relative "tanshuku/version"
6
6
 
7
- # Tanshuku's namespace.
7
+ # Tanshukus namespace.
8
8
  module Tanshuku
9
9
  # Returns a configuration object for Tanshuku.
10
10
  #
@@ -0,0 +1,67 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "English"
4
+ require "io/console"
5
+ require "paint"
6
+ require "pty"
7
+
8
+ class CheckAll
9
+ TASKNAMES = %i[rubocop spec steep:check yard:check].freeze
10
+ LINE = Paint["-" * (IO.console or raise).winsize[1], :bold]
11
+ TITLE_TEMPLATE = Paint["\n#{LINE}\nExecute: %<command>s\n#{LINE}\n\n", :bold]
12
+
13
+ attr_reader :failed_commands
14
+
15
+ def self.call
16
+ new.call
17
+ end
18
+
19
+ def initialize
20
+ @failed_commands = []
21
+ end
22
+
23
+ def call
24
+ TASKNAMES.map { |taskname| Thread.new(taskname, &executor) }.each(&:join)
25
+ output_result
26
+ end
27
+
28
+ private
29
+
30
+ def executor
31
+ lambda do |taskname|
32
+ command = "bundle exec rake #{taskname}"
33
+
34
+ outputs = []
35
+ outputs << format(TITLE_TEMPLATE, command:)
36
+
37
+ # Use `PTY.spawn` to get colorized outputs of each command.
38
+ PTY.spawn(command) do |reader, writer, pid|
39
+ writer.close
40
+
41
+ while (output = reader.gets)
42
+ outputs << output
43
+ end
44
+
45
+ Process.wait(pid)
46
+ end
47
+ failed_commands << command unless $CHILD_STATUS&.success?
48
+
49
+ puts outputs.join
50
+ end
51
+ end
52
+
53
+ def output_result
54
+ puts ""
55
+ puts LINE
56
+ puts Paint["Result", :bold]
57
+ puts LINE
58
+
59
+ if failed_commands.empty?
60
+ puts Paint["\nAll checks are OK.", :green, :bold]
61
+ else
62
+ puts Paint["\nChecks failed!!\n", :red, :bold]
63
+ puts failed_commands.map { |command| " - #{command}" }.join("\n")
64
+ abort ""
65
+ end
66
+ end
67
+ end
@@ -2,7 +2,7 @@
2
2
  sources:
3
3
  - type: git
4
4
  name: ruby/gem_rbs_collection
5
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
5
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
6
6
  remote: https://github.com/ruby/gem_rbs_collection.git
7
7
  repo_dir: gems
8
8
  path: ".gem_rbs_collection"
@@ -12,7 +12,7 @@ gems:
12
12
  source:
13
13
  type: git
14
14
  name: ruby/gem_rbs_collection
15
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
15
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
16
16
  remote: https://github.com/ruby/gem_rbs_collection.git
17
17
  repo_dir: gems
18
18
  - name: actionpack
@@ -20,7 +20,7 @@ gems:
20
20
  source:
21
21
  type: git
22
22
  name: ruby/gem_rbs_collection
23
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
23
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
24
24
  remote: https://github.com/ruby/gem_rbs_collection.git
25
25
  repo_dir: gems
26
26
  - name: actionview
@@ -28,7 +28,7 @@ gems:
28
28
  source:
29
29
  type: git
30
30
  name: ruby/gem_rbs_collection
31
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
31
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
32
32
  remote: https://github.com/ruby/gem_rbs_collection.git
33
33
  repo_dir: gems
34
34
  - name: activejob
@@ -36,7 +36,7 @@ gems:
36
36
  source:
37
37
  type: git
38
38
  name: ruby/gem_rbs_collection
39
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
39
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
40
40
  remote: https://github.com/ruby/gem_rbs_collection.git
41
41
  repo_dir: gems
42
42
  - name: activemodel
@@ -44,7 +44,7 @@ gems:
44
44
  source:
45
45
  type: git
46
46
  name: ruby/gem_rbs_collection
47
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
47
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
48
48
  remote: https://github.com/ruby/gem_rbs_collection.git
49
49
  repo_dir: gems
50
50
  - name: activerecord
@@ -52,7 +52,7 @@ gems:
52
52
  source:
53
53
  type: git
54
54
  name: ruby/gem_rbs_collection
55
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
55
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
56
56
  remote: https://github.com/ruby/gem_rbs_collection.git
57
57
  repo_dir: gems
58
58
  - name: activestorage
@@ -60,7 +60,7 @@ gems:
60
60
  source:
61
61
  type: git
62
62
  name: ruby/gem_rbs_collection
63
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
63
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
64
64
  remote: https://github.com/ruby/gem_rbs_collection.git
65
65
  repo_dir: gems
66
66
  - name: activesupport
@@ -68,9 +68,17 @@ gems:
68
68
  source:
69
69
  type: git
70
70
  name: ruby/gem_rbs_collection
71
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
71
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
72
72
  remote: https://github.com/ruby/gem_rbs_collection.git
73
73
  repo_dir: gems
74
+ - name: base64
75
+ version: '0'
76
+ source:
77
+ type: stdlib
78
+ - name: bigdecimal
79
+ version: '0'
80
+ source:
81
+ type: stdlib
74
82
  - name: cgi
75
83
  version: '0'
76
84
  source:
@@ -80,7 +88,15 @@ gems:
80
88
  source:
81
89
  type: git
82
90
  name: ruby/gem_rbs_collection
83
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
91
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
92
+ remote: https://github.com/ruby/gem_rbs_collection.git
93
+ repo_dir: gems
94
+ - name: connection_pool
95
+ version: '2.4'
96
+ source:
97
+ type: git
98
+ name: ruby/gem_rbs_collection
99
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
84
100
  remote: https://github.com/ruby/gem_rbs_collection.git
85
101
  repo_dir: gems
86
102
  - name: date
@@ -91,12 +107,16 @@ gems:
91
107
  version: '0'
92
108
  source:
93
109
  type: stdlib
110
+ - name: erb
111
+ version: '0'
112
+ source:
113
+ type: stdlib
94
114
  - name: globalid
95
115
  version: '1.1'
96
116
  source:
97
117
  type: git
98
118
  name: ruby/gem_rbs_collection
99
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
119
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
100
120
  remote: https://github.com/ruby/gem_rbs_collection.git
101
121
  repo_dir: gems
102
122
  - name: i18n
@@ -104,9 +124,13 @@ gems:
104
124
  source:
105
125
  type: git
106
126
  name: ruby/gem_rbs_collection
107
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
127
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
108
128
  remote: https://github.com/ruby/gem_rbs_collection.git
109
129
  repo_dir: gems
130
+ - name: io-console
131
+ version: '0'
132
+ source:
133
+ type: stdlib
110
134
  - name: logger
111
135
  version: '0'
112
136
  source:
@@ -116,7 +140,7 @@ gems:
116
140
  source:
117
141
  type: git
118
142
  name: ruby/gem_rbs_collection
119
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
143
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
120
144
  remote: https://github.com/ruby/gem_rbs_collection.git
121
145
  repo_dir: gems
122
146
  - name: minitest
@@ -136,7 +160,7 @@ gems:
136
160
  source:
137
161
  type: git
138
162
  name: ruby/gem_rbs_collection
139
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
163
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
140
164
  remote: https://github.com/ruby/gem_rbs_collection.git
141
165
  repo_dir: gems
142
166
  - name: rack
@@ -144,7 +168,7 @@ gems:
144
168
  source:
145
169
  type: git
146
170
  name: ruby/gem_rbs_collection
147
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
171
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
148
172
  remote: https://github.com/ruby/gem_rbs_collection.git
149
173
  repo_dir: gems
150
174
  - name: rails-dom-testing
@@ -152,7 +176,7 @@ gems:
152
176
  source:
153
177
  type: git
154
178
  name: ruby/gem_rbs_collection
155
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
179
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
156
180
  remote: https://github.com/ruby/gem_rbs_collection.git
157
181
  repo_dir: gems
158
182
  - name: railties
@@ -160,9 +184,13 @@ gems:
160
184
  source:
161
185
  type: git
162
186
  name: ruby/gem_rbs_collection
163
- revision: 87fba082504c606c03edf724cdf2e119bcd46c8c
187
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
164
188
  remote: https://github.com/ruby/gem_rbs_collection.git
165
189
  repo_dir: gems
190
+ - name: rdoc
191
+ version: '0'
192
+ source:
193
+ type: stdlib
166
194
  - name: securerandom
167
195
  version: '0'
168
196
  source:
@@ -175,6 +203,14 @@ gems:
175
203
  version: '0'
176
204
  source:
177
205
  type: stdlib
206
+ - name: thor
207
+ version: '1.2'
208
+ source:
209
+ type: git
210
+ name: ruby/gem_rbs_collection
211
+ revision: 8149bc3fc0f720d935dc0592dc8886e03052f65f
212
+ remote: https://github.com/ruby/gem_rbs_collection.git
213
+ repo_dir: gems
178
214
  - name: time
179
215
  version: '0'
180
216
  source:
@@ -0,0 +1,16 @@
1
+ class CheckAll
2
+ TASKNAMES: Array[Symbol]
3
+ LINE: String
4
+ TITLE_TEMPLATE: String
5
+
6
+ attr_reader failed_commands: Array[String]
7
+
8
+ def self.call: () -> void
9
+
10
+ def call: () -> void
11
+
12
+ private
13
+
14
+ def executor: () -> ^(*String) -> void
15
+ def output_result: () -> void
16
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tanshuku
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.19
4
+ version: 0.0.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - kg8m
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-25 00:00:00.000000000 Z
11
+ date: 2023-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -62,6 +62,7 @@ files:
62
62
  - lib/tanshuku/configuration.rb
63
63
  - lib/tanshuku/engine.rb
64
64
  - lib/tanshuku/version.rb
65
+ - lib/tasks/check_all.rb
65
66
  - rbs_collection.lock.yaml
66
67
  - rbs_collection.yaml
67
68
  - sig/app/controllers/tanshuku/urls_controller.rbs
@@ -72,6 +73,7 @@ files:
72
73
  - sig/lib/tanshuku/configuration.rbs
73
74
  - sig/lib/tanshuku/engine.rbs
74
75
  - sig/lib/tanshuku/version.rbs
76
+ - sig/lib/tasks/check_all.rbs
75
77
  homepage: https://github.com/kg8m/tanshuku
76
78
  licenses:
77
79
  - MIT