checkoff 0.222.0 → 0.225.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.
Files changed (260) hide show
  1. checksums.yaml +4 -4
  2. data/checkoff.gemspec +10 -5
  3. data/lib/checkoff/attachments.rb +1 -0
  4. data/lib/checkoff/cli.rb +1 -1
  5. data/lib/checkoff/clients.rb +2 -1
  6. data/lib/checkoff/custom_fields.rb +2 -1
  7. data/lib/checkoff/events.rb +2 -1
  8. data/lib/checkoff/internal/asana_event_enrichment.rb +1 -0
  9. data/lib/checkoff/internal/asana_event_filter.rb +1 -0
  10. data/lib/checkoff/internal/config_loader.rb +2 -2
  11. data/lib/checkoff/internal/logging.rb +6 -5
  12. data/lib/checkoff/internal/project_hashes.rb +1 -0
  13. data/lib/checkoff/internal/project_selector_evaluator.rb +2 -1
  14. data/lib/checkoff/internal/project_timing.rb +1 -0
  15. data/lib/checkoff/internal/search_url/custom_field_param_converter.rb +1 -0
  16. data/lib/checkoff/internal/search_url/custom_field_variant.rb +1 -0
  17. data/lib/checkoff/internal/search_url/date_param_converter.rb +1 -0
  18. data/lib/checkoff/internal/search_url/parser.rb +1 -0
  19. data/lib/checkoff/internal/search_url/results_merger.rb +1 -0
  20. data/lib/checkoff/internal/search_url/simple_param_converter.rb +1 -0
  21. data/lib/checkoff/internal/search_url.rb +1 -0
  22. data/lib/checkoff/internal/section_selector_evaluator.rb +2 -1
  23. data/lib/checkoff/internal/selector_classes/common/function_evaluator.rb +1 -0
  24. data/lib/checkoff/internal/selector_classes/common.rb +1 -0
  25. data/lib/checkoff/internal/selector_classes/function_evaluator.rb +1 -0
  26. data/lib/checkoff/internal/selector_classes/project/function_evaluator.rb +1 -0
  27. data/lib/checkoff/internal/selector_classes/project.rb +1 -0
  28. data/lib/checkoff/internal/selector_classes/section/function_evaluator.rb +3 -1
  29. data/lib/checkoff/internal/selector_classes/section.rb +1 -0
  30. data/lib/checkoff/internal/selector_classes/task/function_evaluator.rb +1 -0
  31. data/lib/checkoff/internal/selector_classes/task.rb +1 -0
  32. data/lib/checkoff/internal/selector_evaluator.rb +5 -4
  33. data/lib/checkoff/internal/task_hashes.rb +1 -0
  34. data/lib/checkoff/internal/task_selector_evaluator.rb +2 -1
  35. data/lib/checkoff/internal/task_timing.rb +1 -0
  36. data/lib/checkoff/internal/thread_local.rb +1 -0
  37. data/lib/checkoff/monkeypatches/resource_marshalling.rb +1 -0
  38. data/lib/checkoff/my_tasks.rb +2 -1
  39. data/lib/checkoff/portfolios.rb +12 -9
  40. data/lib/checkoff/project_selectors.rb +1 -0
  41. data/lib/checkoff/projects.rb +3 -1
  42. data/lib/checkoff/resources.rb +1 -0
  43. data/lib/checkoff/section_selectors.rb +1 -0
  44. data/lib/checkoff/sections.rb +4 -4
  45. data/lib/checkoff/subtasks.rb +1 -0
  46. data/lib/checkoff/tags.rb +67 -17
  47. data/lib/checkoff/task_searches.rb +1 -0
  48. data/lib/checkoff/task_selectors.rb +1 -0
  49. data/lib/checkoff/tasks.rb +2 -2
  50. data/lib/checkoff/timelines.rb +1 -0
  51. data/lib/checkoff/timing.rb +1 -0
  52. data/lib/checkoff/version.rb +2 -1
  53. data/lib/checkoff/workspaces.rb +2 -1
  54. data/lib/checkoff.rb +1 -0
  55. data/rbi/checkoff.rbi +4529 -0
  56. data/sig/checkoff.rbs +3749 -0
  57. metadata +4 -205
  58. data/.circleci/config.yml +0 -291
  59. data/.envrc +0 -9
  60. data/.git-hooks/pre_commit/circle_ci.rb +0 -25
  61. data/.git-hooks/pre_commit/punchlist.rb +0 -51
  62. data/.git-hooks/pre_commit/solargraph_typecheck.rb +0 -76
  63. data/.gitattributes +0 -6
  64. data/.gitignore +0 -61
  65. data/.markdownlint_style.rb +0 -3
  66. data/.mdlrc +0 -1
  67. data/.overcommit.yml +0 -114
  68. data/.rubocop.yml +0 -143
  69. data/.rubocop_todo.yml +0 -90
  70. data/.solargraph.yml +0 -35
  71. data/.yamllint.yml +0 -8
  72. data/CODE_OF_CONDUCT.md +0 -133
  73. data/CONTRIBUTING.rst +0 -75
  74. data/DEVELOPMENT.md +0 -69
  75. data/GLOSSARY.md +0 -16
  76. data/Gemfile +0 -66
  77. data/Gemfile.lock +0 -336
  78. data/LICENSE +0 -21
  79. data/Makefile +0 -121
  80. data/bin/brakeman +0 -27
  81. data/bin/bump +0 -29
  82. data/bin/checkoff +0 -29
  83. data/bin/console +0 -15
  84. data/bin/overcommit +0 -29
  85. data/bin/overcommit_branch +0 -114
  86. data/bin/rake +0 -29
  87. data/bin/rubocop +0 -27
  88. data/bin/setup +0 -8
  89. data/bin/solargraph +0 -27
  90. data/bin/sord +0 -27
  91. data/bin/spoom +0 -27
  92. data/bin/srb +0 -27
  93. data/bin/srb-rbi +0 -27
  94. data/bin/tapioca +0 -27
  95. data/bin/yard +0 -27
  96. data/config/annotations_asana.rb +0 -254
  97. data/config/annotations_misc.rb +0 -68
  98. data/config/env.1p +0 -2
  99. data/docs/.gitignore +0 -3
  100. data/docs/cookiecutter_input.json +0 -17
  101. data/docs/example_project.png +0 -0
  102. data/fix.sh +0 -534
  103. data/metrics/bigfiles_high_water_mark +0 -1
  104. data/metrics/brakeman_high_water_mark +0 -1
  105. data/metrics/bundle-audit_high_water_mark +0 -1
  106. data/metrics/cane_high_water_mark +0 -1
  107. data/metrics/eslint_high_water_mark +0 -1
  108. data/metrics/flake8_high_water_mark +0 -1
  109. data/metrics/flay_high_water_mark +0 -1
  110. data/metrics/flog_high_water_mark +0 -1
  111. data/metrics/jscs_high_water_mark +0 -1
  112. data/metrics/mdl_high_water_mark +0 -1
  113. data/metrics/pep8_high_water_mark +0 -1
  114. data/metrics/punchlist_high_water_mark +0 -1
  115. data/metrics/pycodestyle_high_water_mark +0 -1
  116. data/metrics/rails_best_practices_high_water_mark +0 -1
  117. data/metrics/rubocop_high_water_mark +0 -1
  118. data/metrics/scalastyle_high_water_mark +0 -1
  119. data/metrics/shellcheck_high_water_mark +0 -1
  120. data/package.json +0 -9
  121. data/rakelib/citest.rake +0 -4
  122. data/rakelib/clear_metrics.rake +0 -9
  123. data/rakelib/console.rake +0 -15
  124. data/rakelib/default.rake +0 -4
  125. data/rakelib/doc.rake +0 -6
  126. data/rakelib/gem_tasks.rake +0 -3
  127. data/rakelib/localtest.rake +0 -4
  128. data/rakelib/overcommit.rake +0 -6
  129. data/rakelib/quality.rake +0 -4
  130. data/rakelib/repl.rake +0 -4
  131. data/rakelib/test.rake +0 -10
  132. data/rakelib/trigger_next_builds.rake +0 -7
  133. data/rakelib/undercover.rake +0 -8
  134. data/requirements_dev.txt +0 -2
  135. data/sorbet/config +0 -4
  136. data/sorbet/rbi/annotations/.gitattributes +0 -1
  137. data/sorbet/rbi/annotations/activesupport.rbi +0 -453
  138. data/sorbet/rbi/annotations/faraday.rbi +0 -17
  139. data/sorbet/rbi/annotations/minitest.rbi +0 -119
  140. data/sorbet/rbi/annotations/mocha.rbi +0 -34
  141. data/sorbet/rbi/annotations/rainbow.rbi +0 -269
  142. data/sorbet/rbi/annotations/webmock.rbi +0 -9
  143. data/sorbet/rbi/dsl/.gitattributes +0 -1
  144. data/sorbet/rbi/dsl/active_support/callbacks.rbi +0 -23
  145. data/sorbet/rbi/gems/.gitattributes +0 -1
  146. data/sorbet/rbi/gems/activesupport@7.1.5.rbi +0 -18746
  147. data/sorbet/rbi/gems/addressable@2.8.6.rbi +0 -1994
  148. data/sorbet/rbi/gems/ansi@1.5.0.rbi +0 -688
  149. data/sorbet/rbi/gems/asana@0.10.6-ab9393136d9ca59b75e42a661fdddc1c65c8f7c3.rbi +0 -6142
  150. data/sorbet/rbi/gems/ast@2.4.2.rbi +0 -585
  151. data/sorbet/rbi/gems/backport@1.2.0.rbi +0 -523
  152. data/sorbet/rbi/gems/base64@0.2.0.rbi +0 -509
  153. data/sorbet/rbi/gems/benchmark@0.4.0.rbi +0 -618
  154. data/sorbet/rbi/gems/bigdecimal@3.1.5.rbi +0 -78
  155. data/sorbet/rbi/gems/brakeman@6.2.2.rbi +0 -222
  156. data/sorbet/rbi/gems/builder@3.2.4.rbi +0 -505
  157. data/sorbet/rbi/gems/bump@0.10.0.rbi +0 -169
  158. data/sorbet/rbi/gems/cache@0.4.1.rbi +0 -211
  159. data/sorbet/rbi/gems/cache_method@0.2.7.rbi +0 -293
  160. data/sorbet/rbi/gems/chef-utils@18.3.0.rbi +0 -9
  161. data/sorbet/rbi/gems/childprocess@5.1.0.rbi +0 -383
  162. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -3427
  163. data/sorbet/rbi/gems/concurrent-ruby@1.2.3.rbi +0 -11591
  164. data/sorbet/rbi/gems/connection_pool@2.4.1.rbi +0 -9
  165. data/sorbet/rbi/gems/crack@0.4.5.rbi +0 -145
  166. data/sorbet/rbi/gems/diff-lcs@1.5.1.rbi +0 -969
  167. data/sorbet/rbi/gems/docile@1.4.0.rbi +0 -377
  168. data/sorbet/rbi/gems/drb@2.2.1.rbi +0 -1347
  169. data/sorbet/rbi/gems/e2mmap@0.1.0.rbi +0 -9
  170. data/sorbet/rbi/gems/erubi@1.13.0.rbi +0 -152
  171. data/sorbet/rbi/gems/faraday-em_http@1.0.0.rbi +0 -222
  172. data/sorbet/rbi/gems/faraday-em_synchrony@1.0.0.rbi +0 -126
  173. data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +0 -136
  174. data/sorbet/rbi/gems/faraday-httpclient@1.0.1.rbi +0 -145
  175. data/sorbet/rbi/gems/faraday-multipart@1.0.4.rbi +0 -259
  176. data/sorbet/rbi/gems/faraday-net_http@1.0.1.rbi +0 -142
  177. data/sorbet/rbi/gems/faraday-net_http_persistent@1.2.0.rbi +0 -118
  178. data/sorbet/rbi/gems/faraday-patron@1.0.0.rbi +0 -125
  179. data/sorbet/rbi/gems/faraday-rack@1.0.0.rbi +0 -133
  180. data/sorbet/rbi/gems/faraday-retry@1.0.3.rbi +0 -198
  181. data/sorbet/rbi/gems/faraday@1.10.3.rbi +0 -2729
  182. data/sorbet/rbi/gems/faraday_middleware-multi_json@0.0.6.rbi +0 -29
  183. data/sorbet/rbi/gems/faraday_middleware@1.2.0.rbi +0 -1004
  184. data/sorbet/rbi/gems/gli@2.22.0.rbi +0 -9
  185. data/sorbet/rbi/gems/hashdiff@1.0.1.rbi +0 -351
  186. data/sorbet/rbi/gems/i18n@1.14.6.rbi +0 -2359
  187. data/sorbet/rbi/gems/imagen@0.1.8.rbi +0 -340
  188. data/sorbet/rbi/gems/iniparse@1.5.0.rbi +0 -899
  189. data/sorbet/rbi/gems/jaro_winkler@1.6.0.rbi +0 -22
  190. data/sorbet/rbi/gems/json@2.7.1.rbi +0 -1562
  191. data/sorbet/rbi/gems/jwt@2.7.1.rbi +0 -1405
  192. data/sorbet/rbi/gems/kramdown-parser-gfm@1.1.0.rbi +0 -128
  193. data/sorbet/rbi/gems/kramdown@2.4.0.rbi +0 -3272
  194. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +0 -14238
  195. data/sorbet/rbi/gems/logger@1.6.2.rbi +0 -923
  196. data/sorbet/rbi/gems/mdl@0.13.0.rbi +0 -445
  197. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -273
  198. data/sorbet/rbi/gems/mime-types-data@3.2023.1205.rbi +0 -127
  199. data/sorbet/rbi/gems/mime-types@3.5.1.rbi +0 -1252
  200. data/sorbet/rbi/gems/minitest-profile@0.0.2.rbi +0 -136
  201. data/sorbet/rbi/gems/minitest-reporters@1.6.1.rbi +0 -1014
  202. data/sorbet/rbi/gems/minitest@5.21.1.rbi +0 -1539
  203. data/sorbet/rbi/gems/mixlib-cli@2.1.8.rbi +0 -314
  204. data/sorbet/rbi/gems/mixlib-config@3.0.27.rbi +0 -581
  205. data/sorbet/rbi/gems/mixlib-shellout@3.2.7.rbi +0 -629
  206. data/sorbet/rbi/gems/mocha@2.1.0.rbi +0 -12
  207. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +0 -268
  208. data/sorbet/rbi/gems/multi_xml@0.6.0.rbi +0 -102
  209. data/sorbet/rbi/gems/multipart-post@2.3.0.rbi +0 -234
  210. data/sorbet/rbi/gems/mutex_m@0.3.0.rbi +0 -97
  211. data/sorbet/rbi/gems/netrc@0.11.0.rbi +0 -159
  212. data/sorbet/rbi/gems/nokogiri@1.17.0.rbi +0 -8201
  213. data/sorbet/rbi/gems/oauth2@1.4.11.rbi +0 -833
  214. data/sorbet/rbi/gems/overcommit@0.64.1.rbi +0 -2400
  215. data/sorbet/rbi/gems/parallel@1.23.0.rbi +0 -274
  216. data/sorbet/rbi/gems/parser@3.2.2.4.rbi +0 -7253
  217. data/sorbet/rbi/gems/prism@1.2.0.rbi +0 -39085
  218. data/sorbet/rbi/gems/pry@0.14.2.rbi +0 -10070
  219. data/sorbet/rbi/gems/public_suffix@5.0.4.rbi +0 -936
  220. data/sorbet/rbi/gems/punchlist@1.3.2.rbi +0 -173
  221. data/sorbet/rbi/gems/racc@1.8.1.rbi +0 -162
  222. data/sorbet/rbi/gems/rack@3.1.8.rbi +0 -4896
  223. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +0 -403
  224. data/sorbet/rbi/gems/rake@13.1.0.rbi +0 -3022
  225. data/sorbet/rbi/gems/rbi@0.2.1.rbi +0 -4535
  226. data/sorbet/rbi/gems/rbs@2.8.4.rbi +0 -5613
  227. data/sorbet/rbi/gems/regexp_parser@2.8.3.rbi +0 -3750
  228. data/sorbet/rbi/gems/reverse_markdown@2.1.1.rbi +0 -390
  229. data/sorbet/rbi/gems/rexml@3.3.9.rbi +0 -4964
  230. data/sorbet/rbi/gems/rubocop-ast@1.30.0.rbi +0 -7061
  231. data/sorbet/rbi/gems/rubocop-minitest@0.34.5.rbi +0 -2577
  232. data/sorbet/rbi/gems/rubocop-performance@1.20.2.rbi +0 -3262
  233. data/sorbet/rbi/gems/rubocop-rake@0.6.0.rbi +0 -329
  234. data/sorbet/rbi/gems/rubocop-rspec@3.0.0.rbi +0 -7546
  235. data/sorbet/rbi/gems/rubocop@1.59.0.rbi +0 -57238
  236. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +0 -1318
  237. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +0 -9
  238. data/sorbet/rbi/gems/rugged@1.6.3.rbi +0 -1577
  239. data/sorbet/rbi/gems/securerandom@0.4.0.rbi +0 -75
  240. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +0 -217
  241. data/sorbet/rbi/gems/simplecov-lcov@0.8.0.rbi +0 -256
  242. data/sorbet/rbi/gems/simplecov@0.22.0.rbi +0 -2149
  243. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi +0 -9
  244. data/sorbet/rbi/gems/solargraph-rails@1.1.0-9dc37915bd4f3b169046e34db6fb32193ab347d8.rbi +0 -320
  245. data/sorbet/rbi/gems/solargraph@0.50.1-904b9304770a59fac393c5cc3cad481e5bdf0fd8.rbi +0 -9396
  246. data/sorbet/rbi/gems/source_finder@3.2.1.rbi +0 -317
  247. data/sorbet/rbi/gems/spoom@1.5.0.rbi +0 -4932
  248. data/sorbet/rbi/gems/tapioca@0.16.5.rbi +0 -3617
  249. data/sorbet/rbi/gems/thor@1.3.2.rbi +0 -4378
  250. data/sorbet/rbi/gems/tilt@2.4.0.rbi +0 -933
  251. data/sorbet/rbi/gems/tomlrb@2.0.3.rbi +0 -9
  252. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +0 -5918
  253. data/sorbet/rbi/gems/undercover@0.5.0.rbi +0 -433
  254. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -66
  255. data/sorbet/rbi/gems/webmock@3.19.1.rbi +0 -1769
  256. data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +0 -435
  257. data/sorbet/rbi/gems/yard@0.9.37.rbi +0 -18406
  258. data/sorbet/rbi/todo.rbi +0 -11
  259. data/sorbet/tapioca/config.yml +0 -13
  260. data/sorbet/tapioca/require.rb +0 -4
data/rakelib/test.rake DELETED
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'rake/testtask'
4
-
5
- Rake::TestTask.new do |t|
6
- t.libs << 'test/unit'
7
- t.libs << 'lib/checkoff'
8
- t.test_files = FileList['test/unit/**/test*.rb']
9
- # t.verbose = true
10
- end
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- desc 'Generate plate-spinner build'
4
- task :trigger_next_builds do
5
- sh 'set -x; curl -f -v -X POST https://circleci.com/api/v1/project/apiology/' \
6
- 'plate-spinner/tree/main?circle-token=${CIRCLE_TOKEN:?}'
7
- end
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- desc 'Ensure PR changes are fully covered by tests'
4
- task :undercover do |_t|
5
- ret =
6
- system('if git branch -r | grep origin/main; then undercover --compare origin/main; fi')
7
- raise unless ret
8
- end
data/requirements_dev.txt DELETED
@@ -1,2 +0,0 @@
1
- pip==23.3.1
2
- yamllint==1.35.1
data/sorbet/config DELETED
@@ -1,4 +0,0 @@
1
- --dir
2
- .
3
- --ignore=tmp/
4
- --ignore=vendor/
@@ -1 +0,0 @@
1
- **/*.rbi linguist-vendored=true
@@ -1,453 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This file was pulled from a central RBI files repository.
5
- # Please run `bin/tapioca annotations` to update it.
6
-
7
- module ActiveSupport::Testing::Declarative
8
- sig { params(name: String, block: T.proc.bind(T.untyped).void).void }
9
- def test(name, &block); end
10
- end
11
-
12
- class ActiveSupport::EnvironmentInquirer
13
- sig { returns(T::Boolean) }
14
- def development?; end
15
-
16
- sig { returns(T::Boolean) }
17
- def production?; end
18
-
19
- sig { returns(T::Boolean) }
20
- def test?; end
21
-
22
- # @method_missing: delegated to String through ActiveSupport::StringInquirer
23
- sig { returns(T::Boolean) }
24
- def staging?; end
25
- end
26
-
27
- module ActiveSupport::Testing::SetupAndTeardown::ClassMethods
28
- sig { params(args: T.untyped, block: T.nilable(T.proc.bind(T.untyped).void)).void }
29
- def setup(*args, &block); end
30
-
31
- sig { params(args: T.untyped, block: T.nilable(T.proc.bind(T.untyped).void)).void }
32
- def teardown(*args, &block); end
33
- end
34
-
35
- class ActiveSupport::TestCase
36
- sig { params(args: T.untyped, block: T.nilable(T.proc.bind(T.attached_class).void)).void }
37
- def self.setup(*args, &block); end
38
-
39
- sig { params(args: T.untyped, block: T.nilable(T.proc.bind(T.attached_class).void)).void }
40
- def self.teardown(*args, &block); end
41
-
42
- sig { params(name: String, block: T.proc.bind(T.attached_class).void).void }
43
- def self.test(name, &block); end
44
- end
45
-
46
- class ActiveSupport::TimeWithZone
47
- # @shim: Methods on ActiveSupport::TimeWithZone are delegated to `Time` using `method_missing
48
- include ::DateAndTime::Zones
49
-
50
- # @shim: Methods on ActiveSupport::TimeWithZone are delegated to `Time` using `method_missing
51
- include ::DateAndTime::Calculations
52
-
53
- sig { returns(FalseClass) }
54
- def blank?; end
55
-
56
- # @shim: since `present?` is always true, `presence` always returns `self`
57
- sig { returns(T.self_type) }
58
- def presence; end
59
-
60
- # @shim: since `blank?` is always false, `present?` always returns `true`
61
- sig { returns(TrueClass) }
62
- def present?; end
63
- end
64
-
65
- class Object
66
- sig { returns(T::Boolean) }
67
- def blank?; end
68
-
69
- sig { returns(FalseClass) }
70
- def html_safe?; end
71
-
72
- sig { returns(T.nilable(T.self_type)) }
73
- def presence; end
74
-
75
- sig { params(another_object: T.untyped).returns(T.nilable(T.self_type)) }
76
- def presence_in(another_object); end
77
-
78
- sig { returns(T::Boolean) }
79
- def present?; end
80
- end
81
-
82
- class Hash
83
- sig { returns(T::Boolean) }
84
- def blank?; end
85
-
86
- sig { returns(T::Boolean) }
87
- def present?; end
88
-
89
- sig { returns(T::Boolean) }
90
- def extractable_options?; end
91
- end
92
-
93
- class Array
94
- sig { returns(T::Boolean) }
95
- def blank?; end
96
-
97
- sig { returns(T::Boolean) }
98
- def present?; end
99
-
100
- sig { params(position: Integer).returns(T.self_type) }
101
- def from(position); end
102
-
103
- sig { params(position: Integer).returns(T.self_type) }
104
- def to(position); end
105
-
106
- sig { params(elements: T.untyped).returns(T::Array[T.untyped]) }
107
- def including(*elements); end
108
-
109
- sig { params(elements: T.untyped).returns(T.self_type) }
110
- def excluding(*elements); end
111
-
112
- sig { params(elements: T.untyped).returns(T.self_type) }
113
- def without(*elements); end
114
-
115
- sig { returns(T.nilable(Elem)) }
116
- def second; end
117
-
118
- sig { returns(T.nilable(Elem)) }
119
- def third; end
120
-
121
- sig { returns(T.nilable(Elem)) }
122
- def fourth; end
123
-
124
- sig { returns(T.nilable(Elem)) }
125
- def fifth; end
126
-
127
- sig { returns(T.nilable(Elem)) }
128
- def forty_two; end
129
-
130
- sig { returns(T.nilable(Elem)) }
131
- def third_to_last; end
132
-
133
- sig { returns(T.nilable(Elem)) }
134
- def second_to_last; end
135
-
136
- sig { params(options: T::Hash[T.untyped, T.untyped]).returns(String) }
137
- def to_sentence(options = {}); end
138
-
139
- sig { params(format: Symbol).returns(String) }
140
- def to_fs(format = :default); end
141
-
142
- sig { params(format: Symbol).returns(String) }
143
- def to_formatted_s(format = :default); end
144
-
145
- sig { returns(String) }
146
- def to_xml; end
147
-
148
- sig { returns(T::Hash[T.untyped, T.untyped]) }
149
- def extract_options!; end
150
-
151
- sig { type_parameters(:FillType).params(number: Integer, fill_with: T.type_parameter(:FillType), block: T.nilable(T.proc.params(group: T::Array[T.any(Elem, T.type_parameter(:FillType))]).void)).returns(T::Array[T::Array[T.any(Elem, T.type_parameter(:FillType))]]) }
152
- def in_groups(number, fill_with = T.unsafe(nil), &block); end
153
-
154
- sig { type_parameters(:FillType).params(number: Integer, fill_with: T.type_parameter(:FillType), block: T.nilable(T.proc.params(group: T::Array[T.any(Elem, T.type_parameter(:FillType))]).void)).returns(T::Array[T::Array[T.any(Elem, T.type_parameter(:FillType))]]) }
155
- def in_groups_of(number, fill_with = T.unsafe(nil), &block); end
156
-
157
- sig { params(value: T.untyped, block: T.nilable(T.proc.params(element: Elem).returns(T.untyped))).returns(T::Array[T::Array[Elem]]) }
158
- def split(value = nil, &block); end
159
-
160
- sig { params(block: T.nilable(T.proc.params(element: Elem).returns(T.untyped))).returns(T.any(T::Array[Elem], T::Enumerator[Elem])) }
161
- def extract!(&block); end
162
-
163
- sig { returns(ActiveSupport::ArrayInquirer) }
164
- def inquiry; end
165
-
166
- sig { params(object: T.untyped).returns(T::Array[T.untyped]) }
167
- def self.wrap(object); end
168
- end
169
-
170
- class Date
171
- sig { returns(FalseClass) }
172
- def blank?; end
173
-
174
- # @shim: since `present?` is always true, `presence` always returns `self`
175
- sig { returns(T.self_type) }
176
- def presence; end
177
-
178
- # @shim: since `blank?` is always false, `present?` always returns `true`
179
- sig { returns(TrueClass) }
180
- def present?; end
181
- end
182
-
183
- class DateTime
184
- sig { returns(FalseClass) }
185
- def blank?; end
186
-
187
- # @shim: since `present?` is always true, `presence` always returns `self`
188
- sig { returns(T.self_type) }
189
- def presence; end
190
-
191
- # @shim: since `blank?` is always false, `present?` always returns `true`
192
- sig { returns(TrueClass) }
193
- def present?; end
194
- end
195
-
196
- class NilClass
197
- sig { returns(TrueClass) }
198
- def blank?; end
199
-
200
- # @shim: since `present?` is always false, `presence` always returns `nil`
201
- sig { returns(NilClass) }
202
- def presence; end
203
-
204
- # @shim: since `blank?` is always true, `present?` always returns `false`
205
- sig { returns(FalseClass) }
206
- def present?; end
207
- end
208
-
209
- class FalseClass
210
- sig { returns(TrueClass) }
211
- def blank?; end
212
-
213
- # @shim: since `present?` is always false, `presence` always returns `nil`
214
- sig { returns(NilClass) }
215
- def presence; end
216
-
217
- # @shim: since `blank?` is always true, `present?` always returns `false`
218
- sig { returns(FalseClass) }
219
- def present?; end
220
- end
221
-
222
- class TrueClass
223
- sig { returns(FalseClass) }
224
- def blank?; end
225
-
226
- # @shim: since `present?` is always true, `presence` always returns `self`
227
- sig { returns(T.self_type) }
228
- def presence; end
229
-
230
- # @shim: since `blank?` is always false, `present?` always returns `true`
231
- sig { returns(TrueClass) }
232
- def present?; end
233
- end
234
-
235
- class Numeric
236
- sig { returns(FalseClass) }
237
- def blank?; end
238
-
239
- sig { returns(TrueClass) }
240
- def html_safe?; end
241
-
242
- # @shim: since `present?` is always true, `presence` always returns `self`
243
- sig { returns(T.self_type) }
244
- def presence; end
245
-
246
- # @shim: since `blank?` is always false, `present?` always returns `true`
247
- sig { returns(TrueClass) }
248
- def present?; end
249
- end
250
-
251
- class Time
252
- sig { returns(FalseClass) }
253
- def blank?; end
254
-
255
- # @shim: since `present?` is always true, `presence` always returns `self`
256
- sig { returns(T.self_type) }
257
- def presence; end
258
-
259
- # @shim: since `blank?` is always false, `present?` always returns `true`
260
- sig { returns(TrueClass) }
261
- def present?; end
262
-
263
- sig { returns(ActiveSupport::TimeZone) }
264
- def self.zone; end
265
-
266
- sig { returns(T.any(ActiveSupport::TimeWithZone, ::Time)) }
267
- def self.current; end
268
- end
269
-
270
- class Symbol
271
- sig { returns(T::Boolean) }
272
- def blank?; end
273
-
274
- sig { returns(T::Boolean) }
275
- def present?; end
276
-
277
- # alias for `#start_with?`
278
- sig { params(string_or_regexp: T.any(String, Regexp)).returns(T::Boolean) }
279
- def starts_with?(*string_or_regexp); end
280
-
281
- # alias for `#end_with?`
282
- sig { params(string_or_regexp: T.any(String, Regexp)).returns(T::Boolean) }
283
- def ends_with?(*string_or_regexp); end
284
- end
285
-
286
- class String
287
- sig { returns(TrueClass) }
288
- def acts_like_string?; end
289
-
290
- # This is the subset of `#[]` sigs that have just 1 parameter.
291
- # https://github.com/sorbet/sorbet/blob/40ad87b4dc7be23fa00c1369ac9f927053c68907/rbi/core/string.rbi#L270-L303
292
- sig { params(position: Integer).returns(T.nilable(String)) }
293
- sig { params(position: T.any(T::Range[Integer], Regexp)).returns(T.nilable(String)) }
294
- sig { params(position: String).returns(T.nilable(String)) }
295
- def at(position); end
296
-
297
- sig { returns(String) }
298
- def as_json; end
299
-
300
- sig { returns(T::Boolean) }
301
- def blank?; end
302
-
303
- sig { params(first_letter: Symbol).returns(String) }
304
- def camelcase(first_letter = :upper); end
305
-
306
- sig { params(first_letter: Symbol).returns(String) }
307
- def camelize(first_letter = :upper); end
308
-
309
- sig { returns(String) }
310
- def classify; end
311
-
312
- sig { returns(T.untyped) }
313
- def constantize; end
314
-
315
- sig { returns(String) }
316
- def dasherize; end
317
-
318
- sig { returns(String) }
319
- def deconstantize; end
320
-
321
- sig { returns(String) }
322
- def demodulize; end
323
-
324
- # alias for `#end_with?`
325
- sig { params(string_or_regexp: T.any(String, Regexp)).returns(T::Boolean) }
326
- def ends_with?(*string_or_regexp); end
327
-
328
- sig { returns(String) }
329
- def downcase_first; end
330
-
331
- sig { params(string: String).returns(T::Boolean) }
332
- def exclude?(string); end
333
-
334
- sig { params(limit: Integer).returns(String) }
335
- def first(limit = 1); end
336
-
337
- sig { params(separate_class_name_and_id_with_underscore: T::Boolean).returns(String) }
338
- def foreign_key(separate_class_name_and_id_with_underscore = true); end
339
-
340
- sig { params(position: Integer).returns(String) }
341
- def from(position); end
342
-
343
- sig { returns(ActiveSupport::SafeBuffer) }
344
- def html_safe; end
345
-
346
- sig { params(capitalize: T::Boolean, keep_id_suffix: T::Boolean).returns(String) }
347
- def humanize(capitalize: true, keep_id_suffix: false); end
348
-
349
- sig { params(zone: T.nilable(T.any(ActiveSupport::TimeZone, String))).returns(T.any(ActiveSupport::TimeWithZone, Time)) }
350
- def in_time_zone(zone = ::Time.zone); end
351
-
352
- sig { params(amount: Integer, indent_string: T.nilable(String), indent_empty_lines: T::Boolean).returns(String) }
353
- def indent(amount, indent_string = nil, indent_empty_lines = false); end
354
-
355
- sig { params(amount: Integer, indent_string: T.nilable(String), indent_empty_lines: T::Boolean).returns(T.nilable(String)) }
356
- def indent!(amount, indent_string = nil, indent_empty_lines = false); end
357
-
358
- sig { returns(ActiveSupport::StringInquirer) }
359
- def inquiry; end
360
-
361
- sig { returns(T::Boolean) }
362
- def is_utf8?; end
363
-
364
- sig { params(limit: Integer).returns(String) }
365
- def last(limit = 1); end
366
-
367
- sig { returns(ActiveSupport::Multibyte::Chars) }
368
- def mb_chars; end
369
-
370
- sig { params(separator: String, preserve_case: T::Boolean, locale: T.nilable(Symbol)).returns(String) }
371
- def parameterize(separator: "-", preserve_case: false, locale: nil); end
372
-
373
- sig { params(count: T.nilable(T.any(Integer, Symbol)), locale: T.nilable(Symbol)).returns(String) }
374
- def pluralize(count = nil, locale = :en); end
375
-
376
- sig { returns(T::Boolean) }
377
- def present?; end
378
-
379
- sig { params(patterns: T.any(String, Regexp)).returns(String) }
380
- def remove(*patterns); end
381
-
382
- sig { params(patterns: T.any(String, Regexp)).returns(String) }
383
- def remove!(*patterns); end
384
-
385
- sig { returns(T.untyped) }
386
- def safe_constantize; end
387
-
388
- sig { params(locale: Symbol).returns(String) }
389
- def singularize(locale = :en); end
390
-
391
- sig { returns(String) }
392
- def squish; end
393
-
394
- sig { returns(String) }
395
- def squish!; end
396
-
397
- # alias for `#start_with?`
398
- sig { params(string_or_regexp: T.any(String, Regexp)).returns(T::Boolean) }
399
- def starts_with?(*string_or_regexp); end
400
-
401
- sig { returns(String) }
402
- def strip_heredoc; end
403
-
404
- sig { returns(String) }
405
- def tableize; end
406
-
407
- sig { params(keep_id_suffix: T::Boolean).returns(String) }
408
- def titlecase(keep_id_suffix: false); end
409
-
410
- sig { params(keep_id_suffix: T::Boolean).returns(String) }
411
- def titleize(keep_id_suffix: false); end
412
-
413
- sig { params(position: Integer).returns(String) }
414
- def to(position); end
415
-
416
- sig { returns(::Date) }
417
- def to_date; end
418
-
419
- sig { returns(::DateTime) }
420
- def to_datetime; end
421
-
422
- sig { params(form: T.nilable(Symbol)).returns(T.nilable(Time)) }
423
- def to_time(form = :local); end
424
-
425
- sig { params(truncate_to: Integer, options: T::Hash[Symbol, T.anything]).returns(String) }
426
- def truncate(truncate_to, options = {}); end
427
-
428
- sig { params(truncate_to: Integer, omission: T.nilable(String)).returns(String) }
429
- def truncate_bytes(truncate_to, omission: "…"); end
430
-
431
- sig { params(words_count: Integer, options: T::Hash[Symbol, T.anything]).returns(String) }
432
- def truncate_words(words_count, options = {}); end
433
-
434
- sig { returns(String) }
435
- def underscore; end
436
-
437
- sig { returns(String) }
438
- def upcase_first; end
439
- end
440
-
441
- class ActiveSupport::ErrorReporter
442
- # @version >= 7.1.0.beta1
443
- sig { type_parameters(:Block, :Fallback).params(error_classes: T.class_of(Exception), severity: T.nilable(Symbol), context: T.nilable(T::Hash[Symbol, T.untyped]), fallback: T.nilable(T.proc.returns(T.type_parameter(:Fallback))), source: T.nilable(String), blk: T.proc.returns(T.type_parameter(:Block))).returns(T.any(T.type_parameter(:Block), T.type_parameter(:Fallback))) }
444
- def handle(*error_classes, severity: T.unsafe(nil), context: T.unsafe(nil), fallback: T.unsafe(nil), source: T.unsafe(nil), &blk); end
445
-
446
- # @version >= 7.1.0.beta1
447
- sig { type_parameters(:Block).params(error_classes: T.class_of(Exception), severity: T.nilable(Symbol), context: T.nilable(T::Hash[Symbol, T.untyped]), source: T.nilable(String), blk: T.proc.returns(T.type_parameter(:Block))).returns(T.type_parameter(:Block)) }
448
- def record(*error_classes, severity: T.unsafe(nil), context: T.unsafe(nil), source: T.unsafe(nil), &blk); end
449
-
450
- # @version >= 7.1.0.beta1
451
- sig { params(error: Exception, handled: T::Boolean, severity: T.nilable(Symbol), context: T::Hash[Symbol, T.untyped], source: T.nilable(String)).void }
452
- def report(error, handled: true, severity: T.unsafe(nil), context: T.unsafe(nil), source: T.unsafe(nil)); end
453
- end
@@ -1,17 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This file was pulled from a central RBI files repository.
5
- # Please run `bin/tapioca annotations` to update it.
6
-
7
- module Faraday
8
- class << self
9
- sig { params(url: T.untyped, options: T::Hash[Symbol, T.untyped], block: T.nilable(T.proc.params(connection: Faraday::Connection).void)).returns(Faraday::Connection) }
10
- def new(url = nil, options = {}, &block); end
11
- end
12
- end
13
-
14
- class Faraday::Response
15
- sig { returns(T::Boolean) }
16
- def success?; end
17
- end
@@ -1,119 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This file was pulled from a central RBI files repository.
5
- # Please run `bin/tapioca annotations` to update it.
6
-
7
- module Minitest::Assertions
8
- sig { params(test: T.anything, msg: T.anything).returns(TrueClass) }
9
- def assert(test, msg = nil); end
10
-
11
- sig { params(obj: T.anything, msg: T.anything).returns(TrueClass) }
12
- def assert_empty(obj, msg = nil); end
13
-
14
- sig { params(exp: T.anything, act: T.anything, msg: T.anything).returns(TrueClass) }
15
- def assert_equal(exp, act, msg = nil); end
16
-
17
- sig { params(exp: T.anything, act: T.anything, delta: Numeric, msg: T.anything).returns(TrueClass) }
18
- def assert_in_delta(exp, act, delta = T.unsafe(nil), msg = nil); end
19
-
20
- sig { params(a: T.anything, b: T.anything, epsilon: Numeric, msg: T.anything).returns(TrueClass) }
21
- def assert_in_epsilon(a, b, epsilon = T.unsafe(nil), msg = nil); end
22
-
23
- sig { params(collection: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
24
- def assert_includes(collection, obj, msg = nil); end
25
-
26
- sig { params(cls: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
27
- def assert_instance_of(cls, obj, msg = nil); end
28
-
29
- sig { params(cls: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
30
- def assert_kind_of(cls, obj, msg = nil); end
31
-
32
- sig { params(matcher: T.any(String, Regexp), obj: T.anything, msg: T.anything).returns(MatchData) }
33
- def assert_match(matcher, obj, msg = nil); end
34
-
35
- sig { params(obj: T.anything, msg: T.anything).returns(TrueClass) }
36
- def assert_nil(obj, msg = nil); end
37
-
38
- sig { params(o1: T.anything, op: T.any(Symbol, String), o2: T.anything, msg: T.anything).returns(TrueClass) }
39
- def assert_operator(o1, op, o2 = T.unsafe(nil), msg = nil); end
40
-
41
- sig { params(stdout: T.nilable(T.any(String, Regexp)), stderr: T.nilable(T.any(String, Regexp)), block: T.proc.void).returns(T::Boolean) }
42
- def assert_output(stdout = nil, stderr = nil, &block); end
43
-
44
- sig { params(path: T.any(String, Pathname), msg: T.anything).returns(TrueClass) }
45
- def assert_path_exists(path, msg = nil); end
46
-
47
- sig { params(block: T.proc.void).returns(TrueClass) }
48
- def assert_pattern(&block); end
49
-
50
- sig { params(o1: T.anything, op: T.any(String, Symbol), msg: T.anything).returns(TrueClass) }
51
- def assert_predicate(o1, op, msg = nil); end
52
-
53
- sig { params(exp: NilClass, block: T.proc.void).returns(StandardError) }
54
- sig { type_parameters(:T).params(exp: T.any(T::Class[T.type_parameter(:T)], Regexp, String), block: T.proc.void).returns(T.type_parameter(:T)) }
55
- def assert_raises(*exp, &block); end
56
-
57
- sig { params(obj: T.anything, meth: T.any(String, Symbol), msg: T.anything, include_all: T::Boolean).returns(TrueClass) }
58
- def assert_respond_to(obj, meth, msg = nil, include_all: false); end
59
-
60
- sig { params(exp: T.anything, act: T.anything, msg: T.anything).returns(TrueClass) }
61
- def assert_same(exp, act, msg = nil); end
62
-
63
- sig { params(send_ary: T::Array[T.anything], m: T.anything).returns(T::Boolean) }
64
- def assert_send(send_ary, m = nil); end
65
-
66
- sig { params(block: T.proc.void).returns(T::Boolean) }
67
- def assert_silent(&block); end
68
-
69
- sig { params(sym: Symbol, msg: T.anything, block: T.proc.void).returns(T.anything) }
70
- def assert_throws(sym, msg = nil, &block); end
71
-
72
- sig { params(test: T.anything, msg: T.anything).returns(TrueClass) }
73
- def refute(test, msg = nil); end
74
-
75
- sig { params(obj: T.anything, msg: T.anything).returns(TrueClass) }
76
- def refute_empty(obj, msg = nil); end
77
-
78
- sig { params(exp: T.anything, act: T.anything, msg: T.anything).returns(TrueClass) }
79
- def refute_equal(exp, act, msg = nil); end
80
-
81
- sig { params(exp: T.anything, act: T.anything, delta: Numeric, msg: T.anything).returns(TrueClass) }
82
- def refute_in_delta(exp, act, delta = T.unsafe(nil), msg = nil); end
83
-
84
- sig { params(a: T.anything, b: T.anything, epsilon: Numeric, msg: T.anything).returns(TrueClass) }
85
- def refute_in_epsilon(a, b, epsilon = T.unsafe(nil), msg = nil); end
86
-
87
- sig { params(collection: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
88
- def refute_includes(collection, obj, msg = nil); end
89
-
90
- sig { params(cls: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
91
- def refute_instance_of(cls, obj, msg = nil); end
92
-
93
- sig { params(cls: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
94
- def refute_kind_of(cls, obj, msg = nil); end
95
-
96
- sig { params(matcher: T.any(String, Regexp), obj: T.anything, msg: T.anything).returns(TrueClass) }
97
- def refute_match(matcher, obj, msg = nil); end
98
-
99
- sig { params(obj: T.anything, msg: T.anything).returns(TrueClass) }
100
- def refute_nil(obj, msg = nil); end
101
-
102
- sig { params(block: T.proc.void).returns(TrueClass) }
103
- def refute_pattern(&block); end
104
-
105
- sig { params(o1: T.anything, op: T.any(Symbol, String), o2: T.anything, msg: T.anything).returns(TrueClass) }
106
- def refute_operator(o1, op, o2 = T.unsafe(nil), msg = nil); end
107
-
108
- sig { params(path: T.any(String, Pathname), msg: T.anything).returns(TrueClass) }
109
- def refute_path_exists(path, msg = nil); end
110
-
111
- sig { params(o1: T.anything, op: T.any(String, Symbol), msg: T.anything).returns(TrueClass) }
112
- def refute_predicate(o1, op, msg = nil); end
113
-
114
- sig { params(obj: T.anything, meth: T.any(String, Symbol), msg: T.anything, include_all: T::Boolean).returns(TrueClass) }
115
- def refute_respond_to(obj, meth, msg = nil, include_all: false); end
116
-
117
- sig { params(exp: T.anything, act: T.anything, msg: T.anything).returns(TrueClass) }
118
- def refute_same(exp, act, msg = nil); end
119
- end
@@ -1,34 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This file was pulled from a central RBI files repository.
5
- # Please run `bin/tapioca annotations` to update it.
6
-
7
- module Mocha::API
8
- sig { params(arguments: T.untyped).returns(Mocha::Mock) }
9
- def mock(*arguments); end
10
-
11
- sig { params(arguments: T.untyped).returns(T.untyped) }
12
- def stub(*arguments); end
13
- end
14
-
15
- module Mocha::ClassMethods
16
- sig { returns(Mocha::Mock) }
17
- def any_instance; end
18
- end
19
-
20
- class Mocha::Expectation
21
- sig { params(expected_parameters_or_matchers: T.untyped, kwargs: T.untyped, matching_block: T.nilable(T.proc.params(actual_parameters: T.untyped).void)).returns(Mocha::Expectation) }
22
- def with(*expected_parameters_or_matchers, **kwargs, &matching_block); end
23
-
24
- sig { params(values: T.untyped).returns(Mocha::Expectation) }
25
- def returns(*values); end
26
- end
27
-
28
- module Mocha::ObjectMethods
29
- sig { params(expected_methods_vs_return_values: T.untyped).returns(Mocha::Expectation) }
30
- def expects(expected_methods_vs_return_values); end
31
-
32
- sig { params(stubbed_methods_vs_return_values: T.untyped).returns(Mocha::Expectation) }
33
- def stubs(stubbed_methods_vs_return_values); end
34
- end