ipt 1.0.1 → 2.1.0
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 +5 -5
- data/.github/workflows/test.yml +41 -0
- data/.gitignore +0 -1
- data/Gemfile.lock +318 -0
- data/README.md +1 -1
- data/bin/tapioca +29 -0
- data/ipt.gemspec +15 -8
- data/lib/pt.rb +8 -9
- data/lib/pt/action.rb +42 -24
- data/lib/pt/cli.rb +1 -1
- data/lib/pt/client.rb +2 -3
- data/lib/pt/configuration.rb +1 -1
- data/lib/pt/data_row.rb +1 -0
- data/lib/pt/data_table.rb +1 -2
- data/lib/pt/io.rb +16 -7
- data/lib/pt/version.rb +2 -1
- data/sorbet/config +3 -0
- data/sorbet/rbi/gems/activesupport.rbi +671 -0
- data/sorbet/rbi/gems/activesupport@6.1.3.2.rbi +63 -0
- data/sorbet/rbi/gems/addressable.rbi +147 -0
- data/sorbet/rbi/gems/addressable@2.7.0.rbi +8 -0
- data/sorbet/rbi/gems/anyway_config.rbi +197 -0
- data/sorbet/rbi/gems/anyway_config@2.1.0.rbi +8 -0
- data/sorbet/rbi/gems/aruba.rbi +917 -0
- data/sorbet/rbi/gems/aruba@0.14.14.rbi +1342 -0
- data/sorbet/rbi/gems/ast.rbi +49 -0
- data/sorbet/rbi/gems/ast@2.4.2.rbi +54 -0
- data/sorbet/rbi/gems/axiom-types@0.1.1.rbi +8 -0
- data/sorbet/rbi/gems/builder@3.2.4.rbi +15 -0
- data/sorbet/rbi/gems/childprocess.rbi +107 -0
- data/sorbet/rbi/gems/childprocess@3.0.0.rbi +135 -0
- data/sorbet/rbi/gems/coderay.rbi +285 -0
- data/sorbet/rbi/gems/coderay@1.1.3.rbi +1005 -0
- data/sorbet/rbi/gems/coercible@1.0.0.rbi +8 -0
- data/sorbet/rbi/gems/colorize.rbi +82 -0
- data/sorbet/rbi/gems/colorize@0.8.1.rbi +39 -0
- data/sorbet/rbi/gems/commander@4.6.0.rbi +8 -0
- data/sorbet/rbi/gems/concurrent-ruby.rbi +1590 -0
- data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +8 -0
- data/sorbet/rbi/gems/config.rbi +124 -0
- data/sorbet/rbi/gems/config@3.1.0.rbi +8 -0
- data/sorbet/rbi/gems/contracts.rbi +391 -0
- data/sorbet/rbi/gems/contracts@0.16.1.rbi +592 -0
- data/sorbet/rbi/gems/cucumber-core.rbi +628 -0
- data/sorbet/rbi/gems/cucumber-core@9.0.0.rbi +8 -0
- data/sorbet/rbi/gems/cucumber-create-meta.rbi +27 -0
- data/sorbet/rbi/gems/cucumber-create-meta@4.0.0.rbi +8 -0
- data/sorbet/rbi/gems/cucumber-cucumber-expressions.rbi +216 -0
- data/sorbet/rbi/gems/cucumber-cucumber-expressions@12.1.1.rbi +8 -0
- data/sorbet/rbi/gems/cucumber-gherkin.rbi +289 -0
- data/sorbet/rbi/gems/cucumber-gherkin@18.1.1.rbi +8 -0
- data/sorbet/rbi/gems/cucumber-html-formatter@13.0.0.rbi +8 -0
- data/sorbet/rbi/gems/cucumber-messages.rbi +872 -0
- data/sorbet/rbi/gems/cucumber-messages@15.0.0.rbi +8 -0
- data/sorbet/rbi/gems/cucumber-tag-expressions.rbi +53 -0
- data/sorbet/rbi/gems/cucumber-tag-expressions@3.0.1.rbi +8 -0
- data/sorbet/rbi/gems/cucumber-wire.rbi +161 -0
- data/sorbet/rbi/gems/cucumber-wire@5.0.0.rbi +8 -0
- data/sorbet/rbi/gems/cucumber.rbi +1876 -0
- data/sorbet/rbi/gems/cucumber@6.0.0.rbi +8 -0
- data/sorbet/rbi/gems/declarative.rbi +75 -0
- data/sorbet/rbi/gems/declarative@0.0.20.rbi +8 -0
- data/sorbet/rbi/gems/deep_merge.rbi +26 -0
- data/sorbet/rbi/gems/deep_merge@1.2.1.rbi +8 -0
- data/sorbet/rbi/gems/descendants_tracker@0.0.4.rbi +8 -0
- data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +8 -0
- data/sorbet/rbi/gems/dry-configurable@0.12.1.rbi +8 -0
- data/sorbet/rbi/gems/dry-container@0.7.2.rbi +8 -0
- data/sorbet/rbi/gems/dry-core@0.5.0.rbi +8 -0
- data/sorbet/rbi/gems/dry-equalizer@0.3.0.rbi +8 -0
- data/sorbet/rbi/gems/dry-inflector@0.2.0.rbi +8 -0
- data/sorbet/rbi/gems/dry-initializer@3.0.4.rbi +8 -0
- data/sorbet/rbi/gems/dry-logic@1.2.0.rbi +8 -0
- data/sorbet/rbi/gems/dry-schema@1.6.2.rbi +8 -0
- data/sorbet/rbi/gems/dry-types@1.5.1.rbi +8 -0
- data/sorbet/rbi/gems/dry-validation@1.6.0.rbi +8 -0
- data/sorbet/rbi/gems/equalizer.rbi +23 -0
- data/sorbet/rbi/gems/equalizer@0.0.11.rbi +8 -0
- data/sorbet/rbi/gems/equatable.rbi +26 -0
- data/sorbet/rbi/gems/equatable@0.5.0.rbi +8 -0
- data/sorbet/rbi/gems/excon.rbi +378 -0
- data/sorbet/rbi/gems/excon@0.81.0.rbi +8 -0
- data/sorbet/rbi/gems/faraday-excon.rbi +28 -0
- data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +8 -0
- data/sorbet/rbi/gems/faraday-net_http.rbi +32 -0
- data/sorbet/rbi/gems/faraday-net_http@1.0.1.rbi +8 -0
- data/sorbet/rbi/gems/faraday-net_http_persistent.rbi +24 -0
- data/sorbet/rbi/gems/faraday-net_http_persistent@1.1.0.rbi +8 -0
- data/sorbet/rbi/gems/faraday.rbi +606 -0
- data/sorbet/rbi/gems/faraday@1.4.1.rbi +8 -0
- data/sorbet/rbi/gems/faraday_middleware.rbi +19 -0
- data/sorbet/rbi/gems/faraday_middleware@1.0.0.rbi +8 -0
- data/sorbet/rbi/gems/ffi.rbi +560 -0
- data/sorbet/rbi/gems/ffi@1.15.0.rbi +849 -0
- data/sorbet/rbi/gems/formatador.rbi +52 -0
- data/sorbet/rbi/gems/formatador@0.2.5.rbi +8 -0
- data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +49 -0
- data/sorbet/rbi/gems/guard-rspec@4.7.3.rbi +233 -0
- data/sorbet/rbi/gems/guard.rbi +397 -0
- data/sorbet/rbi/gems/guard@2.16.2.rbi +615 -0
- data/sorbet/rbi/gems/highline.rbi +567 -0
- data/sorbet/rbi/gems/highline@2.0.3.rbi +8 -0
- data/sorbet/rbi/gems/i18n.rbi +133 -0
- data/sorbet/rbi/gems/i18n@1.8.10.rbi +8 -0
- data/sorbet/rbi/gems/ice_nine@0.11.2.rbi +8 -0
- data/sorbet/rbi/gems/listen.rbi +301 -0
- data/sorbet/rbi/gems/listen@3.5.1.rbi +476 -0
- data/sorbet/rbi/gems/lumberjack.rbi +299 -0
- data/sorbet/rbi/gems/lumberjack@1.2.8.rbi +431 -0
- data/sorbet/rbi/gems/method_source.rbi +64 -0
- data/sorbet/rbi/gems/method_source@1.0.0.rbi +72 -0
- data/sorbet/rbi/gems/middleware.rbi +32 -0
- data/sorbet/rbi/gems/middleware@0.1.0.rbi +8 -0
- data/sorbet/rbi/gems/mime-types-data.rbi +17 -0
- data/sorbet/rbi/gems/mime-types-data@3.2021.0225.rbi +8 -0
- data/sorbet/rbi/gems/mime-types.rbi +218 -0
- data/sorbet/rbi/gems/mime-types@3.3.1.rbi +8 -0
- data/sorbet/rbi/gems/mini_mime.rbi +52 -0
- data/sorbet/rbi/gems/mini_mime@1.1.0.rbi +8 -0
- data/sorbet/rbi/gems/minitest@5.14.4.rbi +8 -0
- data/sorbet/rbi/gems/multi_json.rbi +62 -0
- data/sorbet/rbi/gems/multi_json@1.15.0.rbi +8 -0
- data/sorbet/rbi/gems/multi_test.rbi +28 -0
- data/sorbet/rbi/gems/multi_test@0.1.2.rbi +8 -0
- data/sorbet/rbi/gems/multipart-post.rbi +53 -0
- data/sorbet/rbi/gems/multipart-post@2.1.1.rbi +8 -0
- data/sorbet/rbi/gems/necromancer.rbi +135 -0
- data/sorbet/rbi/gems/necromancer@0.3.0.rbi +8 -0
- data/sorbet/rbi/gems/nenv.rbi +60 -0
- data/sorbet/rbi/gems/nenv@0.3.0.rbi +88 -0
- data/sorbet/rbi/gems/notiffany.rbi +215 -0
- data/sorbet/rbi/gems/notiffany@0.1.3.rbi +323 -0
- data/sorbet/rbi/gems/paint.rbi +31 -0
- data/sorbet/rbi/gems/paint@2.2.1.rbi +8 -0
- data/sorbet/rbi/gems/parlour.rbi +840 -0
- data/sorbet/rbi/gems/parlour@6.0.0.rbi +1610 -0
- data/sorbet/rbi/gems/parser.rbi +1517 -0
- data/sorbet/rbi/gems/parser@3.0.1.1.rbi +1726 -0
- data/sorbet/rbi/gems/pastel.rbi +128 -0
- data/sorbet/rbi/gems/pastel@0.6.1.rbi +8 -0
- data/sorbet/rbi/gems/protobuf-cucumber.rbi +1520 -0
- data/sorbet/rbi/gems/protobuf-cucumber@3.10.8.rbi +8 -0
- data/sorbet/rbi/gems/pry.rbi +1898 -0
- data/sorbet/rbi/gems/pry@0.14.1.rbi +2486 -0
- data/sorbet/rbi/gems/public_suffix.rbi +104 -0
- data/sorbet/rbi/gems/public_suffix@4.0.6.rbi +8 -0
- data/sorbet/rbi/gems/rainbow.rbi +118 -0
- data/sorbet/rbi/gems/rainbow@3.0.0.rbi +153 -0
- data/sorbet/rbi/gems/rake.rbi +647 -0
- data/sorbet/rbi/gems/rake@10.5.0.rbi +805 -0
- data/sorbet/rbi/gems/rb-fsevent@0.11.0.rbi +8 -0
- data/sorbet/rbi/gems/rb-inotify@0.10.1.rbi +8 -0
- data/sorbet/rbi/gems/representable.rbi +227 -0
- data/sorbet/rbi/gems/representable@3.1.1.rbi +8 -0
- data/sorbet/rbi/gems/rspec-core.rbi +1932 -0
- data/sorbet/rbi/gems/rspec-core@3.10.1.rbi +2455 -0
- data/sorbet/rbi/gems/rspec-expectations.rbi +1151 -0
- data/sorbet/rbi/gems/rspec-expectations@3.10.1.rbi +1652 -0
- data/sorbet/rbi/gems/rspec-mocks.rbi +1100 -0
- data/sorbet/rbi/gems/rspec-mocks@3.10.2.rbi +1462 -0
- data/sorbet/rbi/gems/rspec-support.rbi +280 -0
- data/sorbet/rbi/gems/rspec-support@3.10.2.rbi +509 -0
- data/sorbet/rbi/gems/rspec.rbi +15 -0
- data/sorbet/rbi/gems/rspec@3.10.0.rbi +38 -0
- data/sorbet/rbi/gems/ruby-next-core.rbi +76 -0
- data/sorbet/rbi/gems/ruby-next-core@0.12.0.rbi +7 -0
- data/sorbet/rbi/gems/ruby2_keywords@0.0.4.rbi +8 -0
- data/sorbet/rbi/gems/shellany.rbi +29 -0
- data/sorbet/rbi/gems/shellany@0.0.1.rbi +28 -0
- data/sorbet/rbi/gems/spoom.rbi +872 -0
- data/sorbet/rbi/gems/spoom@1.1.1.rbi +1193 -0
- data/sorbet/rbi/gems/sys-uname.rbi +66 -0
- data/sorbet/rbi/gems/sys-uname@1.2.2.rbi +8 -0
- data/sorbet/rbi/gems/tapioca.rbi +39 -0
- data/sorbet/rbi/gems/tapioca@0.4.23.rbi +1230 -0
- data/sorbet/rbi/gems/terminal-table.rbi +166 -0
- data/sorbet/rbi/gems/terminal-table@3.0.0.rbi +8 -0
- data/sorbet/rbi/gems/thor.rbi +537 -0
- data/sorbet/rbi/gems/thor@1.1.0.rbi +838 -0
- data/sorbet/rbi/gems/thread_safe@0.3.6.rbi +8 -0
- data/sorbet/rbi/gems/tracker_api.rbi +33 -0
- data/sorbet/rbi/gems/tracker_api@1.13.0.rbi +21 -0
- data/sorbet/rbi/gems/trailblazer-option.rbi +22 -0
- data/sorbet/rbi/gems/trailblazer-option@0.1.1.rbi +8 -0
- data/sorbet/rbi/gems/tty-color.rbi +41 -0
- data/sorbet/rbi/gems/tty-color@0.3.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-command@0.1.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-cursor@0.3.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-pager.rbi +41 -0
- data/sorbet/rbi/gems/tty-pager@0.4.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-platform.rbi +36 -0
- data/sorbet/rbi/gems/tty-platform@0.1.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-progressbar.rbi +164 -0
- data/sorbet/rbi/gems/tty-progressbar@0.9.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-prompt@0.6.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-screen.rbi +40 -0
- data/sorbet/rbi/gems/tty-screen@0.5.1.rbi +8 -0
- data/sorbet/rbi/gems/tty-spinner.rbi +40 -0
- data/sorbet/rbi/gems/tty-spinner@0.2.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-table.rbi +417 -0
- data/sorbet/rbi/gems/tty-table@0.5.0.rbi +8 -0
- data/sorbet/rbi/gems/tty-which.rbi +22 -0
- data/sorbet/rbi/gems/tty-which@0.1.0.rbi +8 -0
- data/sorbet/rbi/gems/tty.rbi +126 -0
- data/sorbet/rbi/gems/tty@0.5.0.rbi +8 -0
- data/sorbet/rbi/gems/tzinfo.rbi +588 -0
- data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +8 -0
- data/sorbet/rbi/gems/uber.rbi +18 -0
- data/sorbet/rbi/gems/uber@0.1.0.rbi +8 -0
- data/sorbet/rbi/gems/unicode-display_width.rbi +17 -0
- data/sorbet/rbi/gems/unicode-display_width@1.7.0.rbi +8 -0
- data/sorbet/rbi/gems/unicode_utils.rbi +171 -0
- data/sorbet/rbi/gems/unicode_utils@1.4.0.rbi +8 -0
- data/sorbet/rbi/gems/vcr.rbi +582 -0
- data/sorbet/rbi/gems/vcr@6.0.0.rbi +782 -0
- data/sorbet/rbi/gems/verse.rbi +87 -0
- data/sorbet/rbi/gems/verse@0.4.0.rbi +8 -0
- data/sorbet/rbi/gems/virtus@1.0.5.rbi +8 -0
- data/sorbet/rbi/gems/wisper@1.6.1.rbi +8 -0
- data/sorbet/rbi/gems/zeitwerk.rbi +139 -0
- data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +8 -0
- data/sorbet/rbi/hidden-definitions/errors.txt +8695 -0
- data/sorbet/rbi/hidden-definitions/hidden.rbi +18529 -0
- data/sorbet/rbi/sorbet-typed/lib/activesupport/>=6/activesupport.rbi +37 -0
- data/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1850 -0
- data/sorbet/rbi/sorbet-typed/lib/faraday/all/faraday.rbi +756 -0
- data/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +108 -0
- data/sorbet/rbi/sorbet-typed/lib/parlour/6.0.0/parlour.rbi +1903 -0
- data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +276 -0
- data/sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi +645 -0
- data/sorbet/rbi/sorbet-typed/lib/rspec-core/all/rspec-core.rbi +1891 -0
- data/sorbet/rbi/sorbet-typed/lib/thor/all/thor.rbi +905 -0
- data/sorbet/rbi/todo.rbi +23 -0
- data/sorbet/tapioca/require.rb +4 -0
- metadata +341 -23
data/lib/pt.rb
CHANGED
@@ -1,13 +1,12 @@
|
|
1
|
+
# typed: strict
|
1
2
|
require 'tracker_api'
|
2
|
-
require "
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
require 'pt/io'
|
8
|
-
require 'pt/configuration'
|
9
|
-
require 'pt/cli'
|
3
|
+
require "zeitwerk"
|
4
|
+
|
5
|
+
loader = Zeitwerk::Loader.for_gem
|
6
|
+
loader.inflector.inflect("pt" => "PT", "io" => "IO", "cli"=> "CLI")
|
7
|
+
loader.setup
|
10
8
|
|
11
9
|
module PT
|
12
|
-
# Your code goes here...
|
13
10
|
end
|
11
|
+
|
12
|
+
loader.eager_load
|
data/lib/pt/action.rb
CHANGED
@@ -1,5 +1,24 @@
|
|
1
|
+
# typed: false
|
2
|
+
|
3
|
+
require "tty-editor"
|
4
|
+
require "tty-prompt"
|
5
|
+
|
1
6
|
module PT
|
2
7
|
module Action
|
8
|
+
def prompt
|
9
|
+
@prompt ||= TTY::Prompt
|
10
|
+
.new
|
11
|
+
.on(:keypress) do |event|
|
12
|
+
if event.value == "j"
|
13
|
+
prompt.trigger(:keydown)
|
14
|
+
end
|
15
|
+
|
16
|
+
if event.value == "k"
|
17
|
+
prompt.trigger(:keyup)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
3
22
|
def show_story(story)
|
4
23
|
clear
|
5
24
|
title('========================================='.red)
|
@@ -171,33 +190,39 @@ module PT
|
|
171
190
|
# set title
|
172
191
|
title = ask("Name for the new task:")
|
173
192
|
|
193
|
+
owners = []
|
174
194
|
# set owner
|
175
|
-
if
|
195
|
+
if prompt.yes?('Do you want to assign it now? (y/n)')
|
176
196
|
members = @client.get_members
|
177
|
-
|
178
|
-
|
179
|
-
|
197
|
+
member_choices = members.map(&:person).map do |p|
|
198
|
+
{
|
199
|
+
name: "[#{p.initials}] #{p.name}",
|
200
|
+
value: p
|
201
|
+
}
|
202
|
+
end
|
203
|
+
owners = prompt.multi_select("Select member?", member_choices, min: 1)
|
180
204
|
end
|
181
205
|
|
182
206
|
# set story type
|
183
|
-
type =
|
184
|
-
menu.
|
185
|
-
menu.choice(
|
186
|
-
menu.choice(
|
187
|
-
menu.choice(
|
188
|
-
menu.choice(
|
189
|
-
menu.default
|
207
|
+
type = prompt.select("Please set type of story:") do |menu|
|
208
|
+
menu.enum "."
|
209
|
+
menu.choice("feature")
|
210
|
+
menu.choice("bug")
|
211
|
+
menu.choice("chore")
|
212
|
+
menu.choice("release")
|
213
|
+
menu.default("feature")
|
190
214
|
end
|
191
215
|
|
192
|
-
description = edit_using_editor if
|
193
|
-
|
216
|
+
description = edit_using_editor if prompt.yes?('Do you want to write description now?(y/n)')
|
217
|
+
story_args = {
|
194
218
|
name: title,
|
195
|
-
owner_ids:
|
219
|
+
owner_ids: owners.map(&:id),
|
196
220
|
requested_by_id: Settings[:user_id],
|
197
221
|
story_type: type,
|
198
222
|
description: description
|
199
|
-
|
200
|
-
|
223
|
+
}
|
224
|
+
story = @client.create_story(story_args)
|
225
|
+
congrats("#{type.capitalize} has been created \n #{story.url}")
|
201
226
|
story
|
202
227
|
end
|
203
228
|
|
@@ -250,15 +275,8 @@ module PT
|
|
250
275
|
def edit_using_editor(content=nil)
|
251
276
|
editor = ENV.fetch('EDITOR') { 'vi' }
|
252
277
|
temp_path = "/tmp/editor-#{ Process.pid }.txt"
|
278
|
+
TTY::Editor.open(temp_path, text: content)
|
253
279
|
File.write(temp_path, content) if content
|
254
|
-
system "#{ editor } #{ temp_path }"
|
255
|
-
begin
|
256
|
-
content = File.read(temp_path)
|
257
|
-
File.delete(temp_path)
|
258
|
-
content
|
259
|
-
rescue
|
260
|
-
""
|
261
|
-
end
|
262
280
|
end
|
263
281
|
|
264
282
|
def choose_person
|
data/lib/pt/cli.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# typed: false
|
1
2
|
require 'yaml'
|
2
3
|
require 'highline'
|
3
4
|
require 'tempfile'
|
@@ -27,7 +28,6 @@ module PT
|
|
27
28
|
|
28
29
|
def initialize(*args)
|
29
30
|
super
|
30
|
-
@io = HighLine.new
|
31
31
|
@config = PT::Configuration.new
|
32
32
|
@client = @config.client || Client.new
|
33
33
|
@project = @client.project
|
data/lib/pt/client.rb
CHANGED
@@ -1,8 +1,9 @@
|
|
1
|
+
# typed: false
|
1
2
|
require 'uri'
|
2
3
|
require 'tracker_api'
|
3
4
|
|
4
5
|
module PT
|
5
|
-
class Client
|
6
|
+
class Client
|
6
7
|
|
7
8
|
STORY_FIELDS=':default,requested_by(initials),owners(initials),tasks(complete,description),comments(text,file_attachment_ids,person(initials))'
|
8
9
|
|
@@ -10,7 +11,6 @@ module PT
|
|
10
11
|
|
11
12
|
def initialize
|
12
13
|
@client = TrackerApi::Client.new(token: Settings[:pivotal_api_key])
|
13
|
-
self.__setobj__(@client)
|
14
14
|
@limit = Settings[:limit] || 10
|
15
15
|
end
|
16
16
|
|
@@ -128,6 +128,5 @@ module PT
|
|
128
128
|
def create_story(args)
|
129
129
|
project.create_story(args)
|
130
130
|
end
|
131
|
-
|
132
131
|
end
|
133
132
|
end
|
data/lib/pt/configuration.rb
CHANGED
data/lib/pt/data_row.rb
CHANGED
data/lib/pt/data_table.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# typed: true
|
1
2
|
# require 'hirb'
|
2
3
|
# require 'hirb-unicode'
|
3
4
|
require 'terminal-table'
|
@@ -6,8 +7,6 @@ module PT
|
|
6
7
|
|
7
8
|
class DataTable
|
8
9
|
|
9
|
-
# extend ::Hirb::Console
|
10
|
-
|
11
10
|
def initialize(dataset, title=nil)
|
12
11
|
@title = title
|
13
12
|
@rows = dataset.map{ |row| DataRow.new(row, dataset) }
|
data/lib/pt/io.rb
CHANGED
@@ -1,4 +1,9 @@
|
|
1
|
-
|
1
|
+
# typed: false
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
require "tty-prompt"
|
5
|
+
require "tty-markdown"
|
6
|
+
|
2
7
|
module PT
|
3
8
|
module IO
|
4
9
|
|
@@ -22,7 +27,7 @@ module PT
|
|
22
27
|
end
|
23
28
|
|
24
29
|
def compact_message(*msg)
|
25
|
-
|
30
|
+
TTY::Markdown.parse "#{split_lines(msg)}"
|
26
31
|
end
|
27
32
|
|
28
33
|
def error(*msg)
|
@@ -34,12 +39,16 @@ module PT
|
|
34
39
|
exit
|
35
40
|
end
|
36
41
|
|
42
|
+
def prompt
|
43
|
+
@prompt ||= TTY::Prompt.new
|
44
|
+
end
|
45
|
+
|
37
46
|
def ask(msg)
|
38
|
-
|
47
|
+
prompt.ask(msg)
|
39
48
|
end
|
40
49
|
|
41
50
|
def ask_secret(msg)
|
42
|
-
|
51
|
+
prompt.mask(msg)
|
43
52
|
end
|
44
53
|
|
45
54
|
def user_s
|
@@ -90,7 +99,7 @@ module PT
|
|
90
99
|
end
|
91
100
|
|
92
101
|
def select_story_from_paginated_table(options={}, &block)
|
93
|
-
|
102
|
+
prompt_message = "Please select a story"
|
94
103
|
page = 0
|
95
104
|
no_request = false
|
96
105
|
begin
|
@@ -101,12 +110,12 @@ module PT
|
|
101
110
|
title = (options[:title] || 'Stories').to_s + " [#{current_page}/#{total_page}]"
|
102
111
|
table = TasksTable.new(stories, title)
|
103
112
|
clear
|
104
|
-
say "Pivotal Tracker Command Line v#{PT::VERSION}".magenta
|
113
|
+
prompt.say "Pivotal Tracker Command Line v#{PT::VERSION}".magenta
|
105
114
|
say '========================================================================================='.green
|
106
115
|
help = "[num]: select | [f]ilter | #{'[n]ext |' if current_page < total_page} #{'[p]revious |' if current_page > 1} [c]reate | [r]efresh | [q]uit"
|
107
116
|
say help.green
|
108
117
|
say '========================================================================================='.green
|
109
|
-
case story = select(
|
118
|
+
case story = select(prompt_message, table)
|
110
119
|
when TrackerApi::Resources::Story
|
111
120
|
say "Action for >> '#{story.name.green}'[#{story.story_type}]"
|
112
121
|
action = (options[:default_action] ? send("#{options[:default_action]}_story", story) : choose_action(story))
|
data/lib/pt/version.rb
CHANGED
data/sorbet/config
ADDED
@@ -0,0 +1,671 @@
|
|
1
|
+
# This file is autogenerated. Do not edit it by hand. Regenerate it with:
|
2
|
+
# srb rbi gems
|
3
|
+
|
4
|
+
# typed: ignore
|
5
|
+
#
|
6
|
+
# If you would like to make changes to this file, great! Please create the gem's shim here:
|
7
|
+
#
|
8
|
+
# https://github.com/sorbet/sorbet-typed/new/master?filename=lib/activesupport/all/activesupport.rbi
|
9
|
+
#
|
10
|
+
# activesupport-6.1.3.2
|
11
|
+
|
12
|
+
class Hash
|
13
|
+
def _deep_transform_keys_in_object!(object, &block); end
|
14
|
+
def _deep_transform_keys_in_object(object, &block); end
|
15
|
+
def as_json(options = nil); end
|
16
|
+
def assert_valid_keys(*valid_keys); end
|
17
|
+
def blank?; end
|
18
|
+
def deep_merge!(other_hash, &block); end
|
19
|
+
def deep_merge(other_hash, &block); end
|
20
|
+
def deep_stringify_keys!; end
|
21
|
+
def deep_stringify_keys; end
|
22
|
+
def deep_symbolize_keys!; end
|
23
|
+
def deep_symbolize_keys; end
|
24
|
+
def deep_transform_keys!(&block); end
|
25
|
+
def deep_transform_keys(&block); end
|
26
|
+
def except!(*keys); end
|
27
|
+
def except(*keys); end
|
28
|
+
def extract!(*keys); end
|
29
|
+
def extractable_options?; end
|
30
|
+
def nested_under_indifferent_access; end
|
31
|
+
def reverse_merge!(other_hash); end
|
32
|
+
def reverse_merge(other_hash); end
|
33
|
+
def reverse_update(other_hash); end
|
34
|
+
def slice!(*keys); end
|
35
|
+
def stringify_keys!; end
|
36
|
+
def stringify_keys; end
|
37
|
+
def symbolize_keys!; end
|
38
|
+
def symbolize_keys; end
|
39
|
+
def to_options!; end
|
40
|
+
def to_options; end
|
41
|
+
def with_defaults!(other_hash); end
|
42
|
+
def with_defaults(other_hash); end
|
43
|
+
def with_indifferent_access; end
|
44
|
+
end
|
45
|
+
module ActiveSupport
|
46
|
+
def parse_json_times; end
|
47
|
+
def parse_json_times=(val); end
|
48
|
+
def self.escape_html_entities_in_json(**, &&); end
|
49
|
+
def self.escape_html_entities_in_json=(arg); end
|
50
|
+
def self.json_encoder(**, &&); end
|
51
|
+
def self.json_encoder=(arg); end
|
52
|
+
def self.parse_json_times; end
|
53
|
+
def self.parse_json_times=(val); end
|
54
|
+
def self.time_precision(**, &&); end
|
55
|
+
def self.time_precision=(arg); end
|
56
|
+
def self.use_standard_json_time_format(**, &&); end
|
57
|
+
def self.use_standard_json_time_format=(arg); end
|
58
|
+
extend ActiveSupport::LazyLoadHooks
|
59
|
+
end
|
60
|
+
class ActiveSupport::HashWithIndifferentAccess < Hash
|
61
|
+
def [](key); end
|
62
|
+
def []=(key, value); end
|
63
|
+
def assoc(key); end
|
64
|
+
def compact; end
|
65
|
+
def convert_key(key); end
|
66
|
+
def convert_value(value, conversion: nil); end
|
67
|
+
def deep_stringify_keys!; end
|
68
|
+
def deep_stringify_keys; end
|
69
|
+
def deep_symbolize_keys; end
|
70
|
+
def default(*args); end
|
71
|
+
def delete(key); end
|
72
|
+
def dig(*args); end
|
73
|
+
def dup; end
|
74
|
+
def except(*keys); end
|
75
|
+
def extractable_options?; end
|
76
|
+
def fetch(key, *extras); end
|
77
|
+
def fetch_values(*indices, &block); end
|
78
|
+
def has_key?(key); end
|
79
|
+
def include?(key); end
|
80
|
+
def initialize(constructor = nil); end
|
81
|
+
def key?(key); end
|
82
|
+
def member?(key); end
|
83
|
+
def merge!(*other_hashes, &block); end
|
84
|
+
def merge(*hashes, &block); end
|
85
|
+
def nested_under_indifferent_access; end
|
86
|
+
def regular_update(*arg0); end
|
87
|
+
def regular_writer(arg0, arg1); end
|
88
|
+
def reject(*args, &block); end
|
89
|
+
def replace(other_hash); end
|
90
|
+
def reverse_merge!(other_hash); end
|
91
|
+
def reverse_merge(other_hash); end
|
92
|
+
def select(*args, &block); end
|
93
|
+
def self.[](*args); end
|
94
|
+
def set_defaults(target); end
|
95
|
+
def slice!(*keys); end
|
96
|
+
def slice(*keys); end
|
97
|
+
def store(key, value); end
|
98
|
+
def stringify_keys!; end
|
99
|
+
def stringify_keys; end
|
100
|
+
def symbolize_keys; end
|
101
|
+
def to_hash; end
|
102
|
+
def to_options!; end
|
103
|
+
def to_options; end
|
104
|
+
def transform_keys!; end
|
105
|
+
def transform_keys(*args, &block); end
|
106
|
+
def transform_values(*args, &block); end
|
107
|
+
def update(*other_hashes, &block); end
|
108
|
+
def update_with_single_argument(other_hash, block); end
|
109
|
+
def values_at(*keys); end
|
110
|
+
def with_defaults!(other_hash); end
|
111
|
+
def with_defaults(other_hash); end
|
112
|
+
def with_indifferent_access; end
|
113
|
+
def without(*keys); end
|
114
|
+
end
|
115
|
+
class Object < BasicObject
|
116
|
+
def as_json(options = nil); end
|
117
|
+
def blank?; end
|
118
|
+
def instance_values; end
|
119
|
+
def instance_variable_names; end
|
120
|
+
def presence; end
|
121
|
+
def present?; end
|
122
|
+
include ActiveSupport::Tryable
|
123
|
+
end
|
124
|
+
class NilClass
|
125
|
+
def as_json(options = nil); end
|
126
|
+
def blank?; end
|
127
|
+
def try!(_method_name = nil, *arg1); end
|
128
|
+
def try(_method_name = nil, *arg1); end
|
129
|
+
end
|
130
|
+
class FalseClass
|
131
|
+
def as_json(options = nil); end
|
132
|
+
def blank?; end
|
133
|
+
end
|
134
|
+
class TrueClass
|
135
|
+
def as_json(options = nil); end
|
136
|
+
def blank?; end
|
137
|
+
end
|
138
|
+
class Array
|
139
|
+
def as_json(options = nil); end
|
140
|
+
def blank?; end
|
141
|
+
def extract_options!; end
|
142
|
+
end
|
143
|
+
class String
|
144
|
+
def as_json(options = nil); end
|
145
|
+
def blank?; end
|
146
|
+
def camelcase(first_letter = nil); end
|
147
|
+
def camelize(first_letter = nil); end
|
148
|
+
def classify; end
|
149
|
+
def constantize; end
|
150
|
+
def dasherize; end
|
151
|
+
def deconstantize; end
|
152
|
+
def demodulize; end
|
153
|
+
def foreign_key(separate_class_name_and_id_with_underscore = nil); end
|
154
|
+
def humanize(capitalize: nil, keep_id_suffix: nil); end
|
155
|
+
def is_utf8?; end
|
156
|
+
def mb_chars; end
|
157
|
+
def parameterize(separator: nil, preserve_case: nil, locale: nil); end
|
158
|
+
def pluralize(count = nil, locale = nil); end
|
159
|
+
def safe_constantize; end
|
160
|
+
def singularize(locale = nil); end
|
161
|
+
def tableize; end
|
162
|
+
def titlecase(keep_id_suffix: nil); end
|
163
|
+
def titleize(keep_id_suffix: nil); end
|
164
|
+
def underscore; end
|
165
|
+
def upcase_first; end
|
166
|
+
end
|
167
|
+
class Numeric
|
168
|
+
def as_json(options = nil); end
|
169
|
+
def blank?; end
|
170
|
+
end
|
171
|
+
class Time
|
172
|
+
def as_json(options = nil); end
|
173
|
+
def blank?; end
|
174
|
+
def formatted_offset(colon = nil, alternate_utc_string = nil); end
|
175
|
+
def rfc3339(fraction_digits = nil); end
|
176
|
+
def to_default_s; end
|
177
|
+
def to_formatted_s(format = nil); end
|
178
|
+
end
|
179
|
+
module ActiveSupport::Tryable
|
180
|
+
def try!(method_name = nil, *args, &b); end
|
181
|
+
def try(method_name = nil, *args, &b); end
|
182
|
+
end
|
183
|
+
class Delegator < BasicObject
|
184
|
+
include ActiveSupport::Tryable
|
185
|
+
end
|
186
|
+
module ActiveSupport::LazyLoadHooks
|
187
|
+
def execute_hook(name, base, options, block); end
|
188
|
+
def on_load(name, options = nil, &block); end
|
189
|
+
def run_load_hooks(name, base = nil); end
|
190
|
+
def self.extended(base); end
|
191
|
+
def with_execution_control(name, block, once); end
|
192
|
+
end
|
193
|
+
module ActiveSupport::Inflector
|
194
|
+
def apply_inflections(word, rules, locale = nil); end
|
195
|
+
def camelize(term, uppercase_first_letter = nil); end
|
196
|
+
def classify(table_name); end
|
197
|
+
def const_regexp(camel_cased_word); end
|
198
|
+
def constantize(camel_cased_word); end
|
199
|
+
def dasherize(underscored_word); end
|
200
|
+
def deconstantize(path); end
|
201
|
+
def demodulize(path); end
|
202
|
+
def foreign_key(class_name, separate_class_name_and_id_with_underscore = nil); end
|
203
|
+
def humanize(lower_case_and_underscored_word, capitalize: nil, keep_id_suffix: nil); end
|
204
|
+
def inflections(locale = nil); end
|
205
|
+
def ordinal(number); end
|
206
|
+
def ordinalize(number); end
|
207
|
+
def parameterize(string, separator: nil, preserve_case: nil, locale: nil); end
|
208
|
+
def pluralize(word, locale = nil); end
|
209
|
+
def safe_constantize(camel_cased_word); end
|
210
|
+
def singularize(word, locale = nil); end
|
211
|
+
def tableize(class_name); end
|
212
|
+
def titleize(word, keep_id_suffix: nil); end
|
213
|
+
def transliterate(string, replacement = nil, locale: nil); end
|
214
|
+
def underscore(camel_cased_word); end
|
215
|
+
def upcase_first(string); end
|
216
|
+
extend ActiveSupport::Inflector
|
217
|
+
extend ActiveSupport::Inflector
|
218
|
+
end
|
219
|
+
class ActiveSupport::Inflector::Inflections
|
220
|
+
def acronym(word); end
|
221
|
+
def acronyms; end
|
222
|
+
def acronyms_camelize_regex; end
|
223
|
+
def acronyms_underscore_regex; end
|
224
|
+
def clear(scope = nil); end
|
225
|
+
def define_acronym_regex_patterns; end
|
226
|
+
def human(rule, replacement); end
|
227
|
+
def humans; end
|
228
|
+
def initialize; end
|
229
|
+
def initialize_dup(orig); end
|
230
|
+
def irregular(singular, plural); end
|
231
|
+
def plural(rule, replacement); end
|
232
|
+
def plurals; end
|
233
|
+
def self.instance(locale = nil); end
|
234
|
+
def singular(rule, replacement); end
|
235
|
+
def singulars; end
|
236
|
+
def uncountable(*words); end
|
237
|
+
def uncountables; end
|
238
|
+
end
|
239
|
+
class ActiveSupport::Inflector::Inflections::Uncountables < Array
|
240
|
+
def <<(*word); end
|
241
|
+
def add(words); end
|
242
|
+
def delete(entry); end
|
243
|
+
def initialize; end
|
244
|
+
def to_regex(string); end
|
245
|
+
def uncountable?(str); end
|
246
|
+
end
|
247
|
+
module ActiveSupport::Multibyte
|
248
|
+
def self.proxy_class; end
|
249
|
+
def self.proxy_class=(klass); end
|
250
|
+
end
|
251
|
+
class Module
|
252
|
+
def cattr_accessor(*syms, instance_reader: nil, instance_writer: nil, instance_accessor: nil, default: nil, &blk); end
|
253
|
+
def cattr_reader(*syms, instance_reader: nil, instance_accessor: nil, default: nil, location: nil); end
|
254
|
+
def cattr_writer(*syms, instance_writer: nil, instance_accessor: nil, default: nil, location: nil); end
|
255
|
+
def delegate(*methods, to: nil, prefix: nil, allow_nil: nil, private: nil); end
|
256
|
+
def delegate_missing_to(target, allow_nil: nil); end
|
257
|
+
def deprecate(*method_names); end
|
258
|
+
def mattr_accessor(*syms, instance_reader: nil, instance_writer: nil, instance_accessor: nil, default: nil, &blk); end
|
259
|
+
def mattr_reader(*syms, instance_reader: nil, instance_accessor: nil, default: nil, location: nil); end
|
260
|
+
def mattr_writer(*syms, instance_writer: nil, instance_accessor: nil, default: nil, location: nil); end
|
261
|
+
def method_visibility(method); end
|
262
|
+
def redefine_method(method, &block); end
|
263
|
+
def redefine_singleton_method(method, &block); end
|
264
|
+
def silence_redefinition_of_method(method); end
|
265
|
+
end
|
266
|
+
class Module::DelegationError < NoMethodError
|
267
|
+
end
|
268
|
+
module ActiveSupport::JSON
|
269
|
+
def self.convert_dates_from(data); end
|
270
|
+
def self.decode(json); end
|
271
|
+
def self.encode(value, options = nil); end
|
272
|
+
def self.parse_error; end
|
273
|
+
end
|
274
|
+
module ActiveSupport::BigDecimalWithDefaultFormat
|
275
|
+
def to_s(format = nil); end
|
276
|
+
end
|
277
|
+
class ActiveSupport::TimeZone
|
278
|
+
def <=>(zone); end
|
279
|
+
def =~(re); end
|
280
|
+
def at(*args); end
|
281
|
+
def encode_with(coder); end
|
282
|
+
def formatted_offset(colon = nil, alternate_utc_string = nil); end
|
283
|
+
def init_with(coder); end
|
284
|
+
def initialize(name, utc_offset = nil, tzinfo = nil); end
|
285
|
+
def iso8601(str); end
|
286
|
+
def local(*args); end
|
287
|
+
def local_to_utc(time, dst = nil); end
|
288
|
+
def match?(re); end
|
289
|
+
def name; end
|
290
|
+
def now; end
|
291
|
+
def parse(str, now = nil); end
|
292
|
+
def parts_to_time(parts, now); end
|
293
|
+
def period_for_local(time, dst = nil); end
|
294
|
+
def period_for_utc(time); end
|
295
|
+
def periods_for_local(time); end
|
296
|
+
def rfc3339(str); end
|
297
|
+
def self.[](arg); end
|
298
|
+
def self.all; end
|
299
|
+
def self.clear; end
|
300
|
+
def self.country_zones(country_code); end
|
301
|
+
def self.create(*arg0); end
|
302
|
+
def self.find_tzinfo(name); end
|
303
|
+
def self.load_country_zones(code); end
|
304
|
+
def self.new(name); end
|
305
|
+
def self.seconds_to_utc_offset(seconds, colon = nil); end
|
306
|
+
def self.us_zones; end
|
307
|
+
def self.zones_map; end
|
308
|
+
def strptime(str, format, now = nil); end
|
309
|
+
def time_now; end
|
310
|
+
def to_s; end
|
311
|
+
def today; end
|
312
|
+
def tomorrow; end
|
313
|
+
def tzinfo; end
|
314
|
+
def utc_offset; end
|
315
|
+
def utc_to_local(time); end
|
316
|
+
def yesterday; end
|
317
|
+
include Comparable
|
318
|
+
end
|
319
|
+
class DateTime < Date
|
320
|
+
def <=>(other); end
|
321
|
+
def advance(options); end
|
322
|
+
def ago(seconds); end
|
323
|
+
def as_json(options = nil); end
|
324
|
+
def at_beginning_of_day; end
|
325
|
+
def at_beginning_of_hour; end
|
326
|
+
def at_beginning_of_minute; end
|
327
|
+
def at_end_of_day; end
|
328
|
+
def at_end_of_hour; end
|
329
|
+
def at_end_of_minute; end
|
330
|
+
def at_midday; end
|
331
|
+
def at_middle_of_day; end
|
332
|
+
def at_midnight; end
|
333
|
+
def at_noon; end
|
334
|
+
def beginning_of_day; end
|
335
|
+
def beginning_of_hour; end
|
336
|
+
def beginning_of_minute; end
|
337
|
+
def change(options); end
|
338
|
+
def default_inspect; end
|
339
|
+
def end_of_day; end
|
340
|
+
def end_of_hour; end
|
341
|
+
def end_of_minute; end
|
342
|
+
def formatted_offset(colon = nil, alternate_utc_string = nil); end
|
343
|
+
def getgm; end
|
344
|
+
def getlocal(utc_offset = nil); end
|
345
|
+
def getutc; end
|
346
|
+
def gmtime; end
|
347
|
+
def in(seconds); end
|
348
|
+
def inspect; end
|
349
|
+
def localtime(utc_offset = nil); end
|
350
|
+
def midday; end
|
351
|
+
def middle_of_day; end
|
352
|
+
def midnight; end
|
353
|
+
def noon; end
|
354
|
+
def nsec; end
|
355
|
+
def offset_in_seconds; end
|
356
|
+
def readable_inspect; end
|
357
|
+
def seconds_since_midnight; end
|
358
|
+
def seconds_since_unix_epoch; end
|
359
|
+
def seconds_until_end_of_day; end
|
360
|
+
def self.civil_from_format(utc_or_local, year, month = nil, day = nil, hour = nil, min = nil, sec = nil); end
|
361
|
+
def self.current; end
|
362
|
+
def since(seconds); end
|
363
|
+
def subsec; end
|
364
|
+
def to_default_s; end
|
365
|
+
def to_f; end
|
366
|
+
def to_formatted_s(format = nil); end
|
367
|
+
def to_i; end
|
368
|
+
def usec; end
|
369
|
+
def utc; end
|
370
|
+
def utc?; end
|
371
|
+
def utc_offset; end
|
372
|
+
end
|
373
|
+
module DateAndTime
|
374
|
+
end
|
375
|
+
module DateAndTime::Zones
|
376
|
+
def in_time_zone(zone = nil); end
|
377
|
+
def time_with_zone(time, zone); end
|
378
|
+
end
|
379
|
+
class Date
|
380
|
+
def as_json(options = nil); end
|
381
|
+
def default_inspect; end
|
382
|
+
def readable_inspect; end
|
383
|
+
def to_default_s; end
|
384
|
+
def to_formatted_s(format = nil); end
|
385
|
+
include DateAndTime::Zones
|
386
|
+
end
|
387
|
+
module ActiveSupport::ToJsonWithActiveSupportEncoder
|
388
|
+
def to_json(options = nil); end
|
389
|
+
end
|
390
|
+
class Struct
|
391
|
+
def as_json(options = nil); end
|
392
|
+
end
|
393
|
+
class Symbol
|
394
|
+
def as_json(options = nil); end
|
395
|
+
end
|
396
|
+
class Float < Numeric
|
397
|
+
def as_json(options = nil); end
|
398
|
+
end
|
399
|
+
class BigDecimal < Numeric
|
400
|
+
def as_json(options = nil); end
|
401
|
+
end
|
402
|
+
class Regexp
|
403
|
+
def as_json(options = nil); end
|
404
|
+
end
|
405
|
+
module Enumerable
|
406
|
+
def as_json(options = nil); end
|
407
|
+
end
|
408
|
+
class IO
|
409
|
+
def as_json(options = nil); end
|
410
|
+
end
|
411
|
+
class Range
|
412
|
+
def as_json(options = nil); end
|
413
|
+
end
|
414
|
+
class URI::Generic
|
415
|
+
def as_json(options = nil); end
|
416
|
+
end
|
417
|
+
class Pathname
|
418
|
+
def as_json(options = nil); end
|
419
|
+
end
|
420
|
+
class IPAddr
|
421
|
+
def as_json(options = nil); end
|
422
|
+
end
|
423
|
+
class Process::Status
|
424
|
+
def as_json(options = nil); end
|
425
|
+
end
|
426
|
+
class Exception
|
427
|
+
def as_json(options = nil); end
|
428
|
+
end
|
429
|
+
module ActiveSupport::JSON::Encoding
|
430
|
+
def self.escape_html_entities_in_json; end
|
431
|
+
def self.escape_html_entities_in_json=(arg0); end
|
432
|
+
def self.json_encoder; end
|
433
|
+
def self.json_encoder=(arg0); end
|
434
|
+
def self.time_precision; end
|
435
|
+
def self.time_precision=(arg0); end
|
436
|
+
def self.use_standard_json_time_format; end
|
437
|
+
def self.use_standard_json_time_format=(arg0); end
|
438
|
+
end
|
439
|
+
class ActiveSupport::JSON::Encoding::JSONGemEncoder
|
440
|
+
def encode(value); end
|
441
|
+
def initialize(options = nil); end
|
442
|
+
def jsonify(value); end
|
443
|
+
def options; end
|
444
|
+
def stringify(jsonified); end
|
445
|
+
end
|
446
|
+
class ActiveSupport::JSON::Encoding::JSONGemEncoder::EscapedString < String
|
447
|
+
def to_json(*arg0); end
|
448
|
+
def to_s; end
|
449
|
+
end
|
450
|
+
module ActiveSupport::Notifications
|
451
|
+
def self.instrument(name, payload = nil); end
|
452
|
+
def self.instrumenter; end
|
453
|
+
def self.monotonic_subscribe(pattern = nil, callback = nil, &block); end
|
454
|
+
def self.notifier; end
|
455
|
+
def self.notifier=(arg0); end
|
456
|
+
def self.publish(name, *args); end
|
457
|
+
def self.subscribe(pattern = nil, callback = nil, &block); end
|
458
|
+
def self.subscribed(callback, pattern = nil, monotonic: nil, &block); end
|
459
|
+
def self.unsubscribe(subscriber_or_name); end
|
460
|
+
end
|
461
|
+
class ActiveSupport::Notifications::Instrumenter
|
462
|
+
def finish(name, payload); end
|
463
|
+
def finish_with_state(listeners_state, name, payload); end
|
464
|
+
def id; end
|
465
|
+
def initialize(notifier); end
|
466
|
+
def instrument(name, payload = nil); end
|
467
|
+
def start(name, payload); end
|
468
|
+
def unique_id; end
|
469
|
+
end
|
470
|
+
class ActiveSupport::Notifications::Event
|
471
|
+
def <<(event); end
|
472
|
+
def allocations; end
|
473
|
+
def children; end
|
474
|
+
def cpu_time; end
|
475
|
+
def duration; end
|
476
|
+
def end; end
|
477
|
+
def finish!; end
|
478
|
+
def idle_time; end
|
479
|
+
def initialize(name, start, ending, transaction_id, payload); end
|
480
|
+
def name; end
|
481
|
+
def now; end
|
482
|
+
def now_allocations; end
|
483
|
+
def now_cpu; end
|
484
|
+
def parent_of?(event); end
|
485
|
+
def payload; end
|
486
|
+
def payload=(arg0); end
|
487
|
+
def start!; end
|
488
|
+
def time; end
|
489
|
+
def transaction_id; end
|
490
|
+
end
|
491
|
+
class ActiveSupport::Notifications::Fanout
|
492
|
+
def finish(name, id, payload, listeners = nil); end
|
493
|
+
def initialize; end
|
494
|
+
def listeners_for(name); end
|
495
|
+
def listening?(name); end
|
496
|
+
def lock; end
|
497
|
+
def locked?; end
|
498
|
+
def publish(name, *args); end
|
499
|
+
def start(name, id, payload); end
|
500
|
+
def subscribe(pattern = nil, callable = nil, monotonic: nil, &block); end
|
501
|
+
def synchronize(&block); end
|
502
|
+
def try_lock; end
|
503
|
+
def unlock; end
|
504
|
+
def unsubscribe(subscriber_or_name); end
|
505
|
+
def wait; end
|
506
|
+
include Mutex_m
|
507
|
+
end
|
508
|
+
module ActiveSupport::Notifications::Fanout::Subscribers
|
509
|
+
def self.new(pattern, listener, monotonic); end
|
510
|
+
def self.wrap_all(pattern, subscriber); end
|
511
|
+
end
|
512
|
+
class ActiveSupport::Notifications::Fanout::Subscribers::Matcher
|
513
|
+
def ===(name); end
|
514
|
+
def exclusions; end
|
515
|
+
def initialize(pattern); end
|
516
|
+
def pattern; end
|
517
|
+
def self.wrap(pattern); end
|
518
|
+
def unsubscribe!(name); end
|
519
|
+
end
|
520
|
+
class ActiveSupport::Notifications::Fanout::Subscribers::Evented
|
521
|
+
def finish(name, id, payload); end
|
522
|
+
def initialize(pattern, delegate); end
|
523
|
+
def matches?(name); end
|
524
|
+
def pattern; end
|
525
|
+
def publish(name, *args); end
|
526
|
+
def start(name, id, payload); end
|
527
|
+
def subscribed_to?(name); end
|
528
|
+
def unsubscribe!(name); end
|
529
|
+
end
|
530
|
+
class ActiveSupport::Notifications::Fanout::Subscribers::Timed < ActiveSupport::Notifications::Fanout::Subscribers::Evented
|
531
|
+
def finish(name, id, payload); end
|
532
|
+
def publish(name, *args); end
|
533
|
+
def start(name, id, payload); end
|
534
|
+
end
|
535
|
+
class ActiveSupport::Notifications::Fanout::Subscribers::MonotonicTimed < ActiveSupport::Notifications::Fanout::Subscribers::Evented
|
536
|
+
def finish(name, id, payload); end
|
537
|
+
def publish(name, *args); end
|
538
|
+
def start(name, id, payload); end
|
539
|
+
end
|
540
|
+
class ActiveSupport::Notifications::Fanout::Subscribers::EventObject < ActiveSupport::Notifications::Fanout::Subscribers::Evented
|
541
|
+
def build_event(name, id, payload); end
|
542
|
+
def finish(name, id, payload); end
|
543
|
+
def start(name, id, payload); end
|
544
|
+
end
|
545
|
+
class ActiveSupport::Notifications::Fanout::Subscribers::AllMessages
|
546
|
+
def finish(name, id, payload); end
|
547
|
+
def initialize(delegate); end
|
548
|
+
def matches?(arg0); end
|
549
|
+
def publish(name, *args); end
|
550
|
+
def start(name, id, payload); end
|
551
|
+
def subscribed_to?(name); end
|
552
|
+
def unsubscribe!(*arg0); end
|
553
|
+
end
|
554
|
+
module ActiveSupport::PerThreadRegistry
|
555
|
+
def instance; end
|
556
|
+
def method_missing(name, *args, &block); end
|
557
|
+
def self.extended(object); end
|
558
|
+
end
|
559
|
+
class ActiveSupport::Notifications::InstrumentationRegistry
|
560
|
+
def initialize; end
|
561
|
+
def instrumenter_for(notifier); end
|
562
|
+
extend ActiveSupport::PerThreadRegistry
|
563
|
+
end
|
564
|
+
class ActiveSupport::Deprecation
|
565
|
+
def self.allow(**, &&); end
|
566
|
+
def self.behavior(**, &&); end
|
567
|
+
def self.behavior=(arg); end
|
568
|
+
def self.debug(**, &&); end
|
569
|
+
def self.debug=(arg); end
|
570
|
+
def self.deprecate_methods(**, &&); end
|
571
|
+
def self.deprecation_horizon(**, &&); end
|
572
|
+
def self.deprecation_horizon=(arg); end
|
573
|
+
def self.deprecation_warning(deprecated_method_name, message = nil, caller_backtrace = nil); end
|
574
|
+
def self.disallowed_behavior(**, &&); end
|
575
|
+
def self.disallowed_behavior=(arg); end
|
576
|
+
def self.disallowed_warnings(**, &&); end
|
577
|
+
def self.disallowed_warnings=(arg); end
|
578
|
+
def self.gem_name(**, &&); end
|
579
|
+
def self.gem_name=(arg); end
|
580
|
+
def self.initialize(**, &&); end
|
581
|
+
def self.silence(**, &&); end
|
582
|
+
def self.silenced(**, &&); end
|
583
|
+
def self.silenced=(arg); end
|
584
|
+
def self.warn(message = nil, callstack = nil); end
|
585
|
+
extend ActiveSupport::Deprecation::InstanceDelegator::ClassMethods
|
586
|
+
extend Singleton::SingletonClassMethods
|
587
|
+
include ActiveSupport::Deprecation::Behavior
|
588
|
+
include ActiveSupport::Deprecation::Disallowed
|
589
|
+
include ActiveSupport::Deprecation::InstanceDelegator
|
590
|
+
include ActiveSupport::Deprecation::MethodWrapper
|
591
|
+
include ActiveSupport::Deprecation::Reporting
|
592
|
+
include Singleton
|
593
|
+
end
|
594
|
+
module ActiveSupport::Deprecation::InstanceDelegator
|
595
|
+
def self.included(base); end
|
596
|
+
end
|
597
|
+
module ActiveSupport::Deprecation::InstanceDelegator::ClassMethods
|
598
|
+
def include(included_module); end
|
599
|
+
def method_added(method_name); end
|
600
|
+
end
|
601
|
+
module ActiveSupport::Deprecation::InstanceDelegator::OverrideDelegators
|
602
|
+
def deprecation_warning(deprecated_method_name, message = nil, caller_backtrace = nil); end
|
603
|
+
def warn(message = nil, callstack = nil); end
|
604
|
+
end
|
605
|
+
class ActiveSupport::DeprecationException < StandardError
|
606
|
+
end
|
607
|
+
module ActiveSupport::Deprecation::Behavior
|
608
|
+
def arity_coerce(behavior); end
|
609
|
+
def behavior; end
|
610
|
+
def behavior=(behavior); end
|
611
|
+
def debug; end
|
612
|
+
def debug=(arg0); end
|
613
|
+
def disallowed_behavior; end
|
614
|
+
def disallowed_behavior=(behavior); end
|
615
|
+
end
|
616
|
+
module ActiveSupport::Deprecation::Reporting
|
617
|
+
def _extract_callstack(callstack); end
|
618
|
+
def allow(allowed_warnings = nil, if: nil, &block); end
|
619
|
+
def deprecated_method_warning(method_name, message = nil); end
|
620
|
+
def deprecation_caller_message(callstack); end
|
621
|
+
def deprecation_message(callstack, message = nil); end
|
622
|
+
def deprecation_warning(deprecated_method_name, message = nil, caller_backtrace = nil); end
|
623
|
+
def extract_callstack(callstack); end
|
624
|
+
def gem_name; end
|
625
|
+
def gem_name=(arg0); end
|
626
|
+
def ignored_callstack(path); end
|
627
|
+
def silence(&block); end
|
628
|
+
def silenced; end
|
629
|
+
def silenced=(arg0); end
|
630
|
+
def warn(message = nil, callstack = nil); end
|
631
|
+
end
|
632
|
+
module ActiveSupport::Deprecation::Disallowed
|
633
|
+
def deprecation_disallowed?(message); end
|
634
|
+
def disallowed_warnings; end
|
635
|
+
def disallowed_warnings=(arg0); end
|
636
|
+
def explicitly_allowed?(message); end
|
637
|
+
end
|
638
|
+
module ActiveSupport::Deprecation::DeprecatedConstantAccessor
|
639
|
+
def self.included(base); end
|
640
|
+
end
|
641
|
+
module ActiveSupport::Deprecation::MethodWrapper
|
642
|
+
def deprecate_methods(target_module, *method_names); end
|
643
|
+
end
|
644
|
+
class ActiveSupport::Deprecation::DeprecationProxy
|
645
|
+
def inspect; end
|
646
|
+
def method_missing(called, *args, &block); end
|
647
|
+
def self.new(*args, &block); end
|
648
|
+
end
|
649
|
+
class ActiveSupport::Deprecation::DeprecatedObjectProxy < ActiveSupport::Deprecation::DeprecationProxy
|
650
|
+
def initialize(object, message, deprecator = nil); end
|
651
|
+
def target; end
|
652
|
+
def warn(callstack, called, args); end
|
653
|
+
end
|
654
|
+
class ActiveSupport::Deprecation::DeprecatedInstanceVariableProxy < ActiveSupport::Deprecation::DeprecationProxy
|
655
|
+
def initialize(instance, method, var = nil, deprecator = nil); end
|
656
|
+
def target; end
|
657
|
+
def warn(callstack, called, args); end
|
658
|
+
end
|
659
|
+
class ActiveSupport::Deprecation::DeprecatedConstantProxy < Module
|
660
|
+
def class; end
|
661
|
+
def const_missing(name); end
|
662
|
+
def hash(**, &&); end
|
663
|
+
def initialize(old_const, new_const, deprecator = nil, message: nil); end
|
664
|
+
def inspect; end
|
665
|
+
def instance_methods(**, &&); end
|
666
|
+
def method_missing(called, *args, &block); end
|
667
|
+
def name(**, &&); end
|
668
|
+
def respond_to?(**, &&); end
|
669
|
+
def self.new(*args, **options, &block); end
|
670
|
+
def target; end
|
671
|
+
end
|