slack-ruby-client 1.0.0 → 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.
Files changed (239) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +1 -0
  3. data/.github/workflows/integration_test.yml +45 -0
  4. data/.github/workflows/lint.yml +14 -0
  5. data/.github/workflows/pr_lint.yml +21 -0
  6. data/.github/workflows/test.yml +37 -0
  7. data/.gitignore +4 -3
  8. data/.rubocop.yml +6 -1
  9. data/.rubocop_todo.yml +88 -34
  10. data/.ruby-version +1 -0
  11. data/CHANGELOG.md +36 -0
  12. data/CONTRIBUTING.md +6 -5
  13. data/Gemfile +13 -1
  14. data/Gemfile.danger +6 -0
  15. data/README.md +78 -76
  16. data/RELEASING.md +2 -2
  17. data/SECURITY.md +9 -0
  18. data/UPGRADING.md +28 -0
  19. data/bin/commands/admin_analytics.rb +16 -10
  20. data/bin/commands/admin_apps.rb +48 -42
  21. data/bin/commands/admin_apps_approved.rb +17 -11
  22. data/bin/commands/admin_apps_requests.rb +28 -11
  23. data/bin/commands/admin_apps_restricted.rb +17 -11
  24. data/bin/commands/admin_audit_anomaly_allow.rb +29 -0
  25. data/bin/commands/admin_auth_policy.rb +37 -31
  26. data/bin/commands/admin_barriers.rb +44 -38
  27. data/bin/commands/admin_conversations.rb +221 -163
  28. data/bin/commands/admin_conversations_ekm.rb +17 -11
  29. data/bin/commands/admin_conversations_restrictAccess.rb +35 -29
  30. data/bin/commands/admin_emoji.rb +50 -44
  31. data/bin/commands/admin_inviteRequests.rb +34 -28
  32. data/bin/commands/admin_inviteRequests_approved.rb +16 -10
  33. data/bin/commands/admin_inviteRequests_denied.rb +16 -10
  34. data/bin/commands/admin_roles.rb +46 -0
  35. data/bin/commands/admin_teams.rb +26 -20
  36. data/bin/commands/admin_teams_admins.rb +16 -10
  37. data/bin/commands/admin_teams_owners.rb +16 -10
  38. data/bin/commands/admin_teams_settings.rb +59 -53
  39. data/bin/commands/admin_usergroups.rb +45 -39
  40. data/bin/commands/admin_users.rb +91 -85
  41. data/bin/commands/admin_users_session.rb +72 -66
  42. data/bin/commands/admin_users_unsupportedVersions.rb +21 -0
  43. data/bin/commands/api.rb +14 -8
  44. data/bin/commands/apps.rb +15 -9
  45. data/bin/commands/apps_connections.rb +13 -7
  46. data/bin/commands/apps_event_authorizations.rb +16 -10
  47. data/bin/commands/apps_manifest.rb +48 -41
  48. data/bin/commands/auth.rb +21 -15
  49. data/bin/commands/auth_teams.rb +16 -10
  50. data/bin/commands/bookmarks.rb +59 -0
  51. data/bin/commands/bots.rb +15 -9
  52. data/bin/commands/calls.rb +49 -43
  53. data/bin/commands/calls_participants.rb +24 -18
  54. data/bin/commands/chat.rb +150 -141
  55. data/bin/commands/chat_scheduledMessages.rb +19 -13
  56. data/bin/commands/conversations.rb +233 -225
  57. data/bin/commands/dialog.rb +15 -9
  58. data/bin/commands/dnd.rb +46 -40
  59. data/bin/commands/emoji.rb +14 -7
  60. data/bin/commands/files.rb +112 -83
  61. data/bin/commands/files_comments.rb +15 -9
  62. data/bin/commands/files_remote.rb +73 -67
  63. data/bin/commands/functions_workflows_steps.rb +22 -0
  64. data/bin/commands/functions_workflows_steps_responses.rb +22 -0
  65. data/bin/commands/migration.rb +16 -10
  66. data/bin/commands/oauth.rb +18 -12
  67. data/bin/commands/oauth_v2.rb +28 -22
  68. data/bin/commands/openid_connect.rb +26 -20
  69. data/bin/commands/pins.rb +33 -26
  70. data/bin/commands/reactions.rb +52 -46
  71. data/bin/commands/reminders.rb +53 -47
  72. data/bin/commands/rtm.rb +15 -24
  73. data/bin/commands/search.rb +43 -37
  74. data/bin/commands/stars.rb +38 -32
  75. data/bin/commands/team.rb +47 -38
  76. data/bin/commands/team_billing.rb +13 -7
  77. data/bin/commands/team_preferences.rb +13 -7
  78. data/bin/commands/team_profile.rb +14 -8
  79. data/bin/commands/tooling_tokens.rb +14 -8
  80. data/bin/commands/usergroups.rb +64 -58
  81. data/bin/commands/usergroups_users.rb +27 -21
  82. data/bin/commands/users.rb +111 -105
  83. data/bin/commands/users_admin.rb +28 -22
  84. data/bin/commands/users_prefs.rb +13 -7
  85. data/bin/commands/users_profile.rb +26 -20
  86. data/bin/commands/views.rb +47 -39
  87. data/bin/commands/workflows.rb +36 -30
  88. data/bin/slack +48 -43
  89. data/lib/slack/real_time/api/message.rb +3 -2
  90. data/lib/slack/real_time/api/templates/event_handler.erb +5 -1
  91. data/lib/slack/real_time/api/typing.rb +2 -1
  92. data/lib/slack/real_time/client.rb +10 -28
  93. data/lib/slack/real_time/config.rb +3 -3
  94. data/lib/slack/real_time/models/channel.rb +4 -0
  95. data/lib/slack/real_time/models/{group.rb → mpim.rb} +1 -1
  96. data/lib/slack/real_time/models.rb +2 -1
  97. data/lib/slack/real_time/stores/base.rb +25 -9
  98. data/lib/slack/real_time/stores/starter.rb +323 -309
  99. data/lib/slack/real_time/stores/store.rb +265 -198
  100. data/lib/slack/real_time/stores.rb +1 -7
  101. data/lib/slack/version.rb +1 -1
  102. data/lib/slack/web/api/endpoints/admin_analytics.rb +2 -2
  103. data/lib/slack/web/api/endpoints/admin_apps.rb +2 -2
  104. data/lib/slack/web/api/endpoints/admin_apps_requests.rb +16 -0
  105. data/lib/slack/web/api/endpoints/admin_audit_anomaly_allow.rb +34 -0
  106. data/lib/slack/web/api/endpoints/admin_auth_policy.rb +7 -7
  107. data/lib/slack/web/api/endpoints/admin_barriers.rb +8 -8
  108. data/lib/slack/web/api/endpoints/admin_conversations.rb +110 -28
  109. data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +6 -6
  110. data/lib/slack/web/api/endpoints/admin_emoji.rb +9 -9
  111. data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +2 -2
  112. data/lib/slack/web/api/endpoints/admin_roles.rb +73 -0
  113. data/lib/slack/web/api/endpoints/admin_teams.rb +2 -2
  114. data/lib/slack/web/api/endpoints/admin_teams_admins.rb +1 -1
  115. data/lib/slack/web/api/endpoints/admin_teams_owners.rb +1 -1
  116. data/lib/slack/web/api/endpoints/admin_teams_settings.rb +11 -11
  117. data/lib/slack/web/api/endpoints/admin_usergroups.rb +7 -7
  118. data/lib/slack/web/api/endpoints/admin_users.rb +16 -16
  119. data/lib/slack/web/api/endpoints/admin_users_session.rb +8 -8
  120. data/lib/slack/web/api/endpoints/admin_users_unsupportedVersions.rb +25 -0
  121. data/lib/slack/web/api/endpoints/apps.rb +2 -2
  122. data/lib/slack/web/api/endpoints/apps_connections.rb +1 -1
  123. data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +1 -1
  124. data/lib/slack/web/api/endpoints/apps_manifest.rb +8 -6
  125. data/lib/slack/web/api/endpoints/bookmarks.rb +88 -0
  126. data/lib/slack/web/api/endpoints/bots.rb +1 -1
  127. data/lib/slack/web/api/endpoints/calls.rb +5 -5
  128. data/lib/slack/web/api/endpoints/calls_participants.rb +4 -4
  129. data/lib/slack/web/api/endpoints/chat.rb +37 -31
  130. data/lib/slack/web/api/endpoints/conversations.rb +38 -34
  131. data/lib/slack/web/api/endpoints/dialog.rb +2 -2
  132. data/lib/slack/web/api/endpoints/dnd.rb +1 -1
  133. data/lib/slack/web/api/endpoints/emoji.rb +2 -0
  134. data/lib/slack/web/api/endpoints/files.rb +45 -10
  135. data/lib/slack/web/api/endpoints/files_comments.rb +2 -2
  136. data/lib/slack/web/api/endpoints/files_remote.rb +8 -8
  137. data/lib/slack/web/api/endpoints/functions_workflows_steps.rb +28 -0
  138. data/lib/slack/web/api/endpoints/functions_workflows_steps_responses.rb +28 -0
  139. data/lib/slack/web/api/endpoints/migration.rb +1 -1
  140. data/lib/slack/web/api/endpoints/oauth_v2.rb +2 -2
  141. data/lib/slack/web/api/endpoints/pins.rb +5 -3
  142. data/lib/slack/web/api/endpoints/reactions.rb +4 -4
  143. data/lib/slack/web/api/endpoints/reminders.rb +5 -5
  144. data/lib/slack/web/api/endpoints/rtm.rb +0 -23
  145. data/lib/slack/web/api/endpoints/search.rb +3 -3
  146. data/lib/slack/web/api/endpoints/team.rb +13 -1
  147. data/lib/slack/web/api/endpoints/tooling_tokens.rb +1 -1
  148. data/lib/slack/web/api/endpoints/usergroups.rb +5 -5
  149. data/lib/slack/web/api/endpoints/usergroups_users.rb +3 -3
  150. data/lib/slack/web/api/endpoints/users.rb +4 -4
  151. data/lib/slack/web/api/endpoints/users_admin.rb +2 -2
  152. data/lib/slack/web/api/endpoints/users_profile.rb +1 -1
  153. data/lib/slack/web/api/endpoints/views.rb +16 -11
  154. data/lib/slack/web/api/endpoints/workflows.rb +4 -4
  155. data/lib/slack/web/api/endpoints.rb +12 -0
  156. data/lib/slack/web/api/errors.rb +146 -8
  157. data/lib/slack/web/api/mixins/conversations.id.rb +1 -1
  158. data/lib/slack/web/api/mixins/users.id.rb +1 -1
  159. data/lib/slack/web/api/mixins/users.search.rb +2 -1
  160. data/lib/slack/web/api/patches/{chat.1.patch → chat.attachments-blocks.patch} +13 -14
  161. data/lib/slack/web/api/patches/{dialog.1.open-json-support.patch → dialog.encoded-json.patch} +4 -4
  162. data/lib/slack/web/api/patches/views.view-json.patch +55 -0
  163. data/lib/slack/web/api/templates/command.erb +18 -12
  164. data/lib/slack/web/api/templates/method.erb +1 -1
  165. data/lib/slack/web/config.rb +2 -2
  166. data/lib/slack/web/faraday/connection.rb +4 -4
  167. data/lib/slack/web/faraday/request.rb +2 -0
  168. data/lib/slack/web/faraday/response/raise_error.rb +2 -10
  169. data/lib/slack/web/faraday/response/wrap_error.rb +1 -1
  170. data/lib/slack-ruby-client.rb +2 -1
  171. data/lib/tasks/real_time.rake +44 -24
  172. data/lib/tasks/web.rake +9 -8
  173. data/slack-ruby-client.gemspec +5 -14
  174. data/spec/fixtures/slack/web/rtm_connect.yml +85 -1
  175. data/spec/integration/integration_spec.rb +1 -1
  176. data/spec/slack/events/config_spec.rb +2 -0
  177. data/spec/slack/events/request_spec.rb +5 -1
  178. data/spec/slack/messages/formatting_spec.rb +10 -0
  179. data/spec/slack/real_time/api/message_spec.rb +1 -1
  180. data/spec/slack/real_time/api/ping_spec.rb +1 -1
  181. data/spec/slack/real_time/api/typing_spec.rb +1 -1
  182. data/spec/slack/real_time/client_spec.rb +91 -127
  183. data/spec/slack/real_time/event_handlers/bot_spec.rb +19 -17
  184. data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +1 -1
  185. data/spec/slack/real_time/event_handlers/im_spec.rb +30 -27
  186. data/spec/slack/real_time/event_handlers/{group_spec.rb → private_channel_spec.rb} +35 -27
  187. data/spec/slack/real_time/event_handlers/{channel_spec.rb → public_channel_spec.rb} +27 -23
  188. data/spec/slack/real_time/event_handlers/team_spec.rb +7 -8
  189. data/spec/slack/real_time/event_handlers/user_spec.rb +6 -5
  190. data/spec/slack/real_time/stores/store_spec.rb +50 -0
  191. data/spec/slack/slack_spec.rb +5 -4
  192. data/spec/slack/version_spec.rb +1 -1
  193. data/spec/slack/web/api/endpoints/admin_apps_requests_spec.rb +5 -0
  194. data/spec/slack/web/api/endpoints/admin_audit_anomaly_allow_spec.rb +8 -0
  195. data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +31 -0
  196. data/spec/slack/web/api/endpoints/admin_roles_spec.rb +30 -0
  197. data/spec/slack/web/api/endpoints/admin_users_unsupportedVersions_spec.rb +8 -0
  198. data/spec/slack/web/api/endpoints/bookmarks_spec.rb +40 -0
  199. data/spec/slack/web/api/endpoints/custom_specs/chat_spec.rb +45 -17
  200. data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +6 -2
  201. data/spec/slack/web/api/endpoints/custom_specs/views_spec.rb +33 -16
  202. data/spec/slack/web/api/endpoints/files_spec.rb +13 -0
  203. data/spec/slack/web/api/endpoints/functions_workflows_steps_responses_spec.rb +13 -0
  204. data/spec/slack/web/api/endpoints/functions_workflows_steps_spec.rb +13 -0
  205. data/spec/slack/web/api/mixins/conversations_spec.rb +2 -0
  206. data/spec/slack/web/api/mixins/users_spec.rb +2 -0
  207. data/spec/slack/web/api/pagination/cursor_spec.rb +11 -7
  208. data/spec/slack/web/client_spec.rb +39 -11
  209. data/spec/slack/web/faraday/response/raise_error_spec.rb +1 -1
  210. data/spec/support/real_time/connected_client.rb +1 -1
  211. data/spec/support/real_time/loaded_client.rb +120 -0
  212. metadata +45 -197
  213. data/.travis.yml +0 -29
  214. data/bin/commands/admin_conversations_whitelist.rb +0 -37
  215. data/bin/commands/apps_permissions.rb +0 -23
  216. data/bin/commands/apps_permissions_resources.rb +0 -15
  217. data/bin/commands/apps_permissions_scopes.rb +0 -13
  218. data/bin/commands/apps_permissions_users.rb +0 -26
  219. data/bin/commands/channels.rb +0 -23
  220. data/bin/commands/groups.rb +0 -14
  221. data/bin/commands/im.rb +0 -6
  222. data/bin/commands/mpim.rb +0 -6
  223. data/bin/commands.rb +0 -66
  224. data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +0 -64
  225. data/lib/slack/web/api/endpoints/apps_permissions.rb +0 -36
  226. data/lib/slack/web/api/endpoints/apps_permissions_resources.rb +0 -31
  227. data/lib/slack/web/api/endpoints/apps_permissions_scopes.rb +0 -21
  228. data/lib/slack/web/api/endpoints/apps_permissions_users.rb +0 -50
  229. data/lib/slack/web/api/endpoints/channels.rb +0 -25
  230. data/lib/slack/web/api/endpoints/groups.rb +0 -13
  231. data/lib/slack/web/api/endpoints/im.rb +0 -13
  232. data/lib/slack/web/api/endpoints/mpim.rb +0 -13
  233. data/lib/slack/web/api/endpoints/presence.rb +0 -23
  234. data/lib/slack/web/api/patches/views.1.view-json.patch +0 -40
  235. data/lib/slack/web/api/patches/views.1.views-published.patch +0 -16
  236. data/lib/slack/web/api/templates/commands.erb +0 -6
  237. data/spec/fixtures/slack/web/rtm_start.yml +0 -815
  238. data/spec/slack/real_time/rtm_start_spec.rb +0 -14
  239. data/spec/slack/real_time/store_spec.rb +0 -12
@@ -26,7 +26,7 @@ RSpec.describe Slack::Web::Faraday::Response::RaiseError do
26
26
  let(:body) { { 'ok' => 'true' } }
27
27
 
28
28
  it 'is nil' do
29
- expect(raise_error_obj.on_complete(env)).to eq nil
29
+ expect(raise_error_obj.on_complete(env)).to be_nil
30
30
  end
31
31
  end
32
32
 
@@ -11,7 +11,7 @@ RSpec.shared_context 'connected client' do |opts|
11
11
  config.store_class = (opts || {})[:store_class] || Slack::RealTime::Stores::Store
12
12
  end
13
13
  allow(Slack::RealTime::Socket).to(
14
- receive(:new).with(url, ping: 30, logger: Slack::Logger.default).and_return(socket)
14
+ receive(:new).with(url, { ping: 30, logger: Slack::Logger.default }).and_return(socket)
15
15
  )
16
16
  allow(socket).to receive(:start_sync)
17
17
  allow(socket).to receive(:connect!)
@@ -0,0 +1,120 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.shared_context 'loaded client' do
4
+ before do
5
+ client.users['U07KECJ77'] = Slack::RealTime::Models::User.new(
6
+ id: 'U07KECJ77',
7
+ team_id: 'T04KB5WQH',
8
+ name: 'aws',
9
+ deleted: true,
10
+ profile: { title: '', real_name: 'AWS Cloud', display_name: 'aws' },
11
+ is_bot: true,
12
+ is_app_user: false,
13
+ updated: 1504224679,
14
+ presence: 'away'
15
+ )
16
+ client.users['U0J1GAHN1'] = Slack::RealTime::Models::User.new(
17
+ id: 'U0J1GAHN1',
18
+ team_id: 'T04KB5WQH',
19
+ name: 'travis-ci',
20
+ deleted: false,
21
+ color: '5a4592',
22
+ presence: 'away',
23
+ real_name: 'travis-ci',
24
+ tz: 'America\/Los_Angeles',
25
+ tz_label: 'Pacific Standard Time',
26
+ profile: {
27
+ title: 'Used for Travis-CI integration tests on https://github.com/dblock/slack-ruby-client.',
28
+ real_name: 'travis-ci',
29
+ bot_id: 'B0J1L75DY',
30
+ team: 'T04KB5WQH'
31
+ }
32
+ )
33
+
34
+ client.bots['B0751JU2H'] = Slack::RealTime::Models::Bot.new(
35
+ id: 'B0751JU2H',
36
+ name: 'bot',
37
+ deleted: false,
38
+ updated: 1435864714
39
+ )
40
+
41
+ client.public_channels['C0HNTD0CW'] = Slack::RealTime::Models::Channel.new(
42
+ id: 'C0HNTD0CW',
43
+ name: 'chess',
44
+ is_channel: true,
45
+ is_group: false,
46
+ is_im: false,
47
+ is_mpim: false,
48
+ is_private: false,
49
+ created: 1452005790,
50
+ is_archived: false,
51
+ is_general: false,
52
+ unlinked: 0,
53
+ name_normalized: 'chess',
54
+ is_shared: false,
55
+ is_org_shared: false,
56
+ is_pending_ext_shared: false,
57
+ pending_shared: [],
58
+ parent_conversation: nil,
59
+ creator: 'U04KB5WQR',
60
+ is_ext_shared: false,
61
+ shared_team_ids: ['T04KB5WQH'],
62
+ pending_connected_team_ids: [],
63
+ has_pins: false,
64
+ is_member: false,
65
+ previous_names: [],
66
+ priority: 0
67
+ )
68
+ client.public_channels['C0HLE0BBL'] = Slack::RealTime::Models::Channel.new(
69
+ id: 'C0HLE0BBL',
70
+ name: 'gifs',
71
+ is_channel: true,
72
+ is_group: false,
73
+ is_im: false,
74
+ is_mpim: false,
75
+ is_private: false,
76
+ created: 1451913914,
77
+ is_archived: true,
78
+ is_general: false
79
+ )
80
+ client.public_channels['C0JHNAB5H'] = Slack::RealTime::Models::Channel.new(
81
+ id: 'C0JHNAB5H',
82
+ name: 'rubybot-test',
83
+ is_channel: true,
84
+ is_group: false,
85
+ is_private: false,
86
+ members: %w[U0J1GAHN1 U07518DTL]
87
+ )
88
+
89
+ client.public_channels['C0BTNJI59'] = Slack::RealTime::Models::Channel.new(
90
+ id: 'C0BTNJI59',
91
+ name: 'recent-priv-chan',
92
+ is_channel: true,
93
+ is_group: false,
94
+ is_private: true,
95
+ members: %w[U0J1GAHN1 U07518DTL]
96
+ )
97
+ client.private_channels['G0K7EV5A7'] = Slack::RealTime::Models::Channel.new(
98
+ id: 'G0K7EV5A7',
99
+ name: 'mpdm-dblock--rubybot--player1-1',
100
+ is_channel: false,
101
+ is_group: true,
102
+ is_im: false,
103
+ is_mpim: true,
104
+ is_private: true,
105
+ is_archived: false,
106
+ members: %w[U04KB5WQR U0J1GAHN1 U07518DTL],
107
+ created: 1453561861,
108
+ creator: 'U04KB5WQR'
109
+ )
110
+
111
+ client.ims['D0J1H6QTV'] = Slack::RealTime::Models::Im.new(
112
+ id: 'D0J1H6QTV',
113
+ is_im: true,
114
+ is_archived: false,
115
+ is_open: true,
116
+ user: 'U04KB5WQR',
117
+ created: 1452270861
118
+ )
119
+ end
120
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: slack-ruby-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Doubrovkine
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-21 00:00:00.000000000 Z
11
+ date: 2023-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -16,16 +16,16 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.0'
19
+ version: '2.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.0'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: faraday_middleware
28
+ name: faraday-mashify
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: gli
42
+ name: faraday-multipart
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -53,7 +53,7 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: hashie
56
+ name: gli
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
@@ -67,7 +67,7 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: websocket-driver
70
+ name: hashie
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="
@@ -80,160 +80,6 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: activesupport
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: erubis
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: json-schema
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: rake
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: '13'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - "~>"
137
- - !ruby/object:Gem::Version
138
- version: '13'
139
- - !ruby/object:Gem::Dependency
140
- name: rspec
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: '0'
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - ">="
151
- - !ruby/object:Gem::Version
152
- version: '0'
153
- - !ruby/object:Gem::Dependency
154
- name: rubocop
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - "~>"
158
- - !ruby/object:Gem::Version
159
- version: 0.93.1
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - "~>"
165
- - !ruby/object:Gem::Version
166
- version: 0.93.1
167
- - !ruby/object:Gem::Dependency
168
- name: rubocop-performance
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - "~>"
172
- - !ruby/object:Gem::Version
173
- version: 1.5.2
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - "~>"
179
- - !ruby/object:Gem::Version
180
- version: 1.5.2
181
- - !ruby/object:Gem::Dependency
182
- name: rubocop-rspec
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - "~>"
186
- - !ruby/object:Gem::Version
187
- version: 1.39.0
188
- type: :development
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - "~>"
193
- - !ruby/object:Gem::Version
194
- version: 1.39.0
195
- - !ruby/object:Gem::Dependency
196
- name: timecop
197
- requirement: !ruby/object:Gem::Requirement
198
- requirements:
199
- - - ">="
200
- - !ruby/object:Gem::Version
201
- version: '0'
202
- type: :development
203
- prerelease: false
204
- version_requirements: !ruby/object:Gem::Requirement
205
- requirements:
206
- - - ">="
207
- - !ruby/object:Gem::Version
208
- version: '0'
209
- - !ruby/object:Gem::Dependency
210
- name: vcr
211
- requirement: !ruby/object:Gem::Requirement
212
- requirements:
213
- - - ">="
214
- - !ruby/object:Gem::Version
215
- version: '0'
216
- type: :development
217
- prerelease: false
218
- version_requirements: !ruby/object:Gem::Requirement
219
- requirements:
220
- - - ">="
221
- - !ruby/object:Gem::Version
222
- version: '0'
223
- - !ruby/object:Gem::Dependency
224
- name: webmock
225
- requirement: !ruby/object:Gem::Requirement
226
- requirements:
227
- - - ">="
228
- - !ruby/object:Gem::Version
229
- version: '0'
230
- type: :development
231
- prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- requirements:
234
- - - ">="
235
- - !ruby/object:Gem::Version
236
- version: '0'
237
83
  description:
238
84
  email: dblock@dblock.org
239
85
  executables:
@@ -242,37 +88,43 @@ extensions: []
242
88
  extra_rdoc_files: []
243
89
  files:
244
90
  - ".github/FUNDING.yml"
91
+ - ".github/workflows/integration_test.yml"
92
+ - ".github/workflows/lint.yml"
93
+ - ".github/workflows/pr_lint.yml"
94
+ - ".github/workflows/test.yml"
245
95
  - ".gitignore"
246
96
  - ".gitmodules"
247
97
  - ".rspec"
248
98
  - ".rubocop.yml"
249
99
  - ".rubocop_todo.yml"
250
- - ".travis.yml"
100
+ - ".ruby-version"
251
101
  - CHANGELOG.md
252
102
  - CONTRIBUTING.md
253
103
  - Dangerfile
254
104
  - Gemfile
105
+ - Gemfile.danger
255
106
  - LICENSE.md
256
107
  - README.md
257
108
  - RELEASING.md
258
109
  - Rakefile
110
+ - SECURITY.md
259
111
  - UPGRADING.md
260
- - bin/commands.rb
261
112
  - bin/commands/admin_analytics.rb
262
113
  - bin/commands/admin_apps.rb
263
114
  - bin/commands/admin_apps_approved.rb
264
115
  - bin/commands/admin_apps_requests.rb
265
116
  - bin/commands/admin_apps_restricted.rb
117
+ - bin/commands/admin_audit_anomaly_allow.rb
266
118
  - bin/commands/admin_auth_policy.rb
267
119
  - bin/commands/admin_barriers.rb
268
120
  - bin/commands/admin_conversations.rb
269
121
  - bin/commands/admin_conversations_ekm.rb
270
122
  - bin/commands/admin_conversations_restrictAccess.rb
271
- - bin/commands/admin_conversations_whitelist.rb
272
123
  - bin/commands/admin_emoji.rb
273
124
  - bin/commands/admin_inviteRequests.rb
274
125
  - bin/commands/admin_inviteRequests_approved.rb
275
126
  - bin/commands/admin_inviteRequests_denied.rb
127
+ - bin/commands/admin_roles.rb
276
128
  - bin/commands/admin_teams.rb
277
129
  - bin/commands/admin_teams_admins.rb
278
130
  - bin/commands/admin_teams_owners.rb
@@ -280,21 +132,18 @@ files:
280
132
  - bin/commands/admin_usergroups.rb
281
133
  - bin/commands/admin_users.rb
282
134
  - bin/commands/admin_users_session.rb
135
+ - bin/commands/admin_users_unsupportedVersions.rb
283
136
  - bin/commands/api.rb
284
137
  - bin/commands/apps.rb
285
138
  - bin/commands/apps_connections.rb
286
139
  - bin/commands/apps_event_authorizations.rb
287
140
  - bin/commands/apps_manifest.rb
288
- - bin/commands/apps_permissions.rb
289
- - bin/commands/apps_permissions_resources.rb
290
- - bin/commands/apps_permissions_scopes.rb
291
- - bin/commands/apps_permissions_users.rb
292
141
  - bin/commands/auth.rb
293
142
  - bin/commands/auth_teams.rb
143
+ - bin/commands/bookmarks.rb
294
144
  - bin/commands/bots.rb
295
145
  - bin/commands/calls.rb
296
146
  - bin/commands/calls_participants.rb
297
- - bin/commands/channels.rb
298
147
  - bin/commands/chat.rb
299
148
  - bin/commands/chat_scheduledMessages.rb
300
149
  - bin/commands/conversations.rb
@@ -304,10 +153,9 @@ files:
304
153
  - bin/commands/files.rb
305
154
  - bin/commands/files_comments.rb
306
155
  - bin/commands/files_remote.rb
307
- - bin/commands/groups.rb
308
- - bin/commands/im.rb
156
+ - bin/commands/functions_workflows_steps.rb
157
+ - bin/commands/functions_workflows_steps_responses.rb
309
158
  - bin/commands/migration.rb
310
- - bin/commands/mpim.rb
311
159
  - bin/commands/oauth.rb
312
160
  - bin/commands/oauth_v2.rb
313
161
  - bin/commands/openid_connect.rb
@@ -364,8 +212,8 @@ files:
364
212
  - lib/slack/real_time/models/base.rb
365
213
  - lib/slack/real_time/models/bot.rb
366
214
  - lib/slack/real_time/models/channel.rb
367
- - lib/slack/real_time/models/group.rb
368
215
  - lib/slack/real_time/models/im.rb
216
+ - lib/slack/real_time/models/mpim.rb
369
217
  - lib/slack/real_time/models/team.rb
370
218
  - lib/slack/real_time/models/user.rb
371
219
  - lib/slack/real_time/socket.rb
@@ -380,16 +228,17 @@ files:
380
228
  - lib/slack/web/api/endpoints/admin_apps_approved.rb
381
229
  - lib/slack/web/api/endpoints/admin_apps_requests.rb
382
230
  - lib/slack/web/api/endpoints/admin_apps_restricted.rb
231
+ - lib/slack/web/api/endpoints/admin_audit_anomaly_allow.rb
383
232
  - lib/slack/web/api/endpoints/admin_auth_policy.rb
384
233
  - lib/slack/web/api/endpoints/admin_barriers.rb
385
234
  - lib/slack/web/api/endpoints/admin_conversations.rb
386
235
  - lib/slack/web/api/endpoints/admin_conversations_ekm.rb
387
236
  - lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb
388
- - lib/slack/web/api/endpoints/admin_conversations_whitelist.rb
389
237
  - lib/slack/web/api/endpoints/admin_emoji.rb
390
238
  - lib/slack/web/api/endpoints/admin_inviteRequests.rb
391
239
  - lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb
392
240
  - lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb
241
+ - lib/slack/web/api/endpoints/admin_roles.rb
393
242
  - lib/slack/web/api/endpoints/admin_teams.rb
394
243
  - lib/slack/web/api/endpoints/admin_teams_admins.rb
395
244
  - lib/slack/web/api/endpoints/admin_teams_owners.rb
@@ -397,21 +246,18 @@ files:
397
246
  - lib/slack/web/api/endpoints/admin_usergroups.rb
398
247
  - lib/slack/web/api/endpoints/admin_users.rb
399
248
  - lib/slack/web/api/endpoints/admin_users_session.rb
249
+ - lib/slack/web/api/endpoints/admin_users_unsupportedVersions.rb
400
250
  - lib/slack/web/api/endpoints/api.rb
401
251
  - lib/slack/web/api/endpoints/apps.rb
402
252
  - lib/slack/web/api/endpoints/apps_connections.rb
403
253
  - lib/slack/web/api/endpoints/apps_event_authorizations.rb
404
254
  - lib/slack/web/api/endpoints/apps_manifest.rb
405
- - lib/slack/web/api/endpoints/apps_permissions.rb
406
- - lib/slack/web/api/endpoints/apps_permissions_resources.rb
407
- - lib/slack/web/api/endpoints/apps_permissions_scopes.rb
408
- - lib/slack/web/api/endpoints/apps_permissions_users.rb
409
255
  - lib/slack/web/api/endpoints/auth.rb
410
256
  - lib/slack/web/api/endpoints/auth_teams.rb
257
+ - lib/slack/web/api/endpoints/bookmarks.rb
411
258
  - lib/slack/web/api/endpoints/bots.rb
412
259
  - lib/slack/web/api/endpoints/calls.rb
413
260
  - lib/slack/web/api/endpoints/calls_participants.rb
414
- - lib/slack/web/api/endpoints/channels.rb
415
261
  - lib/slack/web/api/endpoints/chat.rb
416
262
  - lib/slack/web/api/endpoints/chat_scheduledMessages.rb
417
263
  - lib/slack/web/api/endpoints/conversations.rb
@@ -421,15 +267,13 @@ files:
421
267
  - lib/slack/web/api/endpoints/files.rb
422
268
  - lib/slack/web/api/endpoints/files_comments.rb
423
269
  - lib/slack/web/api/endpoints/files_remote.rb
424
- - lib/slack/web/api/endpoints/groups.rb
425
- - lib/slack/web/api/endpoints/im.rb
270
+ - lib/slack/web/api/endpoints/functions_workflows_steps.rb
271
+ - lib/slack/web/api/endpoints/functions_workflows_steps_responses.rb
426
272
  - lib/slack/web/api/endpoints/migration.rb
427
- - lib/slack/web/api/endpoints/mpim.rb
428
273
  - lib/slack/web/api/endpoints/oauth.rb
429
274
  - lib/slack/web/api/endpoints/oauth_v2.rb
430
275
  - lib/slack/web/api/endpoints/openid_connect.rb
431
276
  - lib/slack/web/api/endpoints/pins.rb
432
- - lib/slack/web/api/endpoints/presence.rb
433
277
  - lib/slack/web/api/endpoints/reactions.rb
434
278
  - lib/slack/web/api/endpoints/reminders.rb
435
279
  - lib/slack/web/api/endpoints/rtm.rb
@@ -460,14 +304,12 @@ files:
460
304
  - lib/slack/web/api/mixins/users.id.rb
461
305
  - lib/slack/web/api/mixins/users.search.json
462
306
  - lib/slack/web/api/mixins/users.search.rb
463
- - lib/slack/web/api/patches/chat.1.patch
464
- - lib/slack/web/api/patches/dialog.1.open-json-support.patch
465
- - lib/slack/web/api/patches/views.1.view-json.patch
466
- - lib/slack/web/api/patches/views.1.views-published.patch
307
+ - lib/slack/web/api/patches/chat.attachments-blocks.patch
308
+ - lib/slack/web/api/patches/dialog.encoded-json.patch
309
+ - lib/slack/web/api/patches/views.view-json.patch
467
310
  - lib/slack/web/api/schema/group.json
468
311
  - lib/slack/web/api/schema/method.json
469
312
  - lib/slack/web/api/templates/command.erb
470
- - lib/slack/web/api/templates/commands.erb
471
313
  - lib/slack/web/api/templates/endpoints.erb
472
314
  - lib/slack/web/api/templates/errors.erb
473
315
  - lib/slack/web/api/templates/method.erb
@@ -496,7 +338,6 @@ files:
496
338
  - spec/fixtures/slack/web/conversations_setTopic_paginated.yml
497
339
  - spec/fixtures/slack/web/paginated_users_list.yml
498
340
  - spec/fixtures/slack/web/rtm_connect.yml
499
- - spec/fixtures/slack/web/rtm_start.yml
500
341
  - spec/fixtures/slack/web/users_info.yml
501
342
  - spec/fixtures/slack/web/users_list.yml
502
343
  - spec/fixtures/slack/web/views_open_error.yml
@@ -513,15 +354,14 @@ files:
513
354
  - spec/slack/real_time/concurrency/with_concurrency_spec.rb
514
355
  - spec/slack/real_time/concurrency/without_concurrency_spec.rb
515
356
  - spec/slack/real_time/event_handlers/bot_spec.rb
516
- - spec/slack/real_time/event_handlers/channel_spec.rb
517
357
  - spec/slack/real_time/event_handlers/event_handlers_spec.rb
518
- - spec/slack/real_time/event_handlers/group_spec.rb
519
358
  - spec/slack/real_time/event_handlers/im_spec.rb
359
+ - spec/slack/real_time/event_handlers/private_channel_spec.rb
360
+ - spec/slack/real_time/event_handlers/public_channel_spec.rb
520
361
  - spec/slack/real_time/event_handlers/team_spec.rb
521
362
  - spec/slack/real_time/event_handlers/user_spec.rb
522
363
  - spec/slack/real_time/rtm_connect_spec.rb
523
- - spec/slack/real_time/rtm_start_spec.rb
524
- - spec/slack/real_time/store_spec.rb
364
+ - spec/slack/real_time/stores/store_spec.rb
525
365
  - spec/slack/slack_spec.rb
526
366
  - spec/slack/version_spec.rb
527
367
  - spec/slack/web/api/endpoints/admin_analytics_spec.rb
@@ -529,6 +369,7 @@ files:
529
369
  - spec/slack/web/api/endpoints/admin_apps_requests_spec.rb
530
370
  - spec/slack/web/api/endpoints/admin_apps_restricted_spec.rb
531
371
  - spec/slack/web/api/endpoints/admin_apps_spec.rb
372
+ - spec/slack/web/api/endpoints/admin_audit_anomaly_allow_spec.rb
532
373
  - spec/slack/web/api/endpoints/admin_auth_policy_spec.rb
533
374
  - spec/slack/web/api/endpoints/admin_barriers_spec.rb
534
375
  - spec/slack/web/api/endpoints/admin_conversations_ekm_spec.rb
@@ -538,6 +379,7 @@ files:
538
379
  - spec/slack/web/api/endpoints/admin_inviteRequests_approved_spec.rb
539
380
  - spec/slack/web/api/endpoints/admin_inviteRequests_denied_spec.rb
540
381
  - spec/slack/web/api/endpoints/admin_inviteRequests_spec.rb
382
+ - spec/slack/web/api/endpoints/admin_roles_spec.rb
541
383
  - spec/slack/web/api/endpoints/admin_teams_admins_spec.rb
542
384
  - spec/slack/web/api/endpoints/admin_teams_owners_spec.rb
543
385
  - spec/slack/web/api/endpoints/admin_teams_settings_spec.rb
@@ -545,12 +387,14 @@ files:
545
387
  - spec/slack/web/api/endpoints/admin_usergroups_spec.rb
546
388
  - spec/slack/web/api/endpoints/admin_users_session_spec.rb
547
389
  - spec/slack/web/api/endpoints/admin_users_spec.rb
390
+ - spec/slack/web/api/endpoints/admin_users_unsupportedVersions_spec.rb
548
391
  - spec/slack/web/api/endpoints/api_spec.rb
549
392
  - spec/slack/web/api/endpoints/apps_connections_spec.rb
550
393
  - spec/slack/web/api/endpoints/apps_event_authorizations_spec.rb
551
394
  - spec/slack/web/api/endpoints/apps_manifest_spec.rb
552
395
  - spec/slack/web/api/endpoints/apps_spec.rb
553
396
  - spec/slack/web/api/endpoints/auth_teams_spec.rb
397
+ - spec/slack/web/api/endpoints/bookmarks_spec.rb
554
398
  - spec/slack/web/api/endpoints/bots_spec.rb
555
399
  - spec/slack/web/api/endpoints/calls_participants_spec.rb
556
400
  - spec/slack/web/api/endpoints/calls_spec.rb
@@ -566,6 +410,8 @@ files:
566
410
  - spec/slack/web/api/endpoints/files_comments_spec.rb
567
411
  - spec/slack/web/api/endpoints/files_remote_spec.rb
568
412
  - spec/slack/web/api/endpoints/files_spec.rb
413
+ - spec/slack/web/api/endpoints/functions_workflows_steps_responses_spec.rb
414
+ - spec/slack/web/api/endpoints/functions_workflows_steps_spec.rb
569
415
  - spec/slack/web/api/endpoints/migration_spec.rb
570
416
  - spec/slack/web/api/endpoints/oauth_spec.rb
571
417
  - spec/slack/web/api/endpoints/oauth_v2_spec.rb
@@ -601,12 +447,14 @@ files:
601
447
  - spec/support/real_time/concurrency/mock.rb
602
448
  - spec/support/real_time/connected_client.rb
603
449
  - spec/support/real_time/event.rb
450
+ - spec/support/real_time/loaded_client.rb
604
451
  - spec/support/token.rb
605
452
  - spec/support/vcr.rb
606
453
  homepage: http://github.com/slack-ruby/slack-ruby-client
607
454
  licenses:
608
455
  - MIT
609
- metadata: {}
456
+ metadata:
457
+ rubygems_mfa_required: 'true'
610
458
  post_install_message:
611
459
  rdoc_options: []
612
460
  require_paths:
@@ -615,14 +463,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
615
463
  requirements:
616
464
  - - ">="
617
465
  - !ruby/object:Gem::Version
618
- version: '0'
466
+ version: '2.7'
619
467
  required_rubygems_version: !ruby/object:Gem::Requirement
620
468
  requirements:
621
469
  - - ">="
622
470
  - !ruby/object:Gem::Version
623
471
  version: 1.3.6
624
472
  requirements: []
625
- rubygems_version: 3.0.6
473
+ rubygems_version: 3.1.6
626
474
  signing_key:
627
475
  specification_version: 4
628
476
  summary: Slack Web and RealTime API client.
data/.travis.yml DELETED
@@ -1,29 +0,0 @@
1
- language: ruby
2
-
3
- cache: bundler
4
-
5
- rvm:
6
- - 2.5.3
7
- - 2.6.0
8
- - 2.7.1
9
- - 3.0.2
10
- - ruby-head
11
- - jruby-head
12
-
13
- matrix:
14
- include:
15
- - rvm: 2.4.1
16
- script:
17
- - bundle exec danger
18
- - rvm: 2.5.3
19
- env: CONCURRENCY=async-websocket
20
- allow_failures:
21
- - rvm: ruby-head
22
- - rvm: jruby-head
23
-
24
- git:
25
- submodules: false
26
-
27
- before_install:
28
- - gem update bundler
29
- - gem update --system