slack-ruby-bot-server-events-app-mentions 0.1.1 → 0.2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: affc5cd99fdbcf4891338bc5aa17d1235f492cdcb2c8af3f3a67f8267e313f73
4
- data.tar.gz: 20dd50373ea240e406c33d27086ff750e81ab653639f1c2a054a64e7dae76dc2
3
+ metadata.gz: 745ac436854eec93f83aa30df9a786b5de9d9d600b23b25a6abecae3784ea090
4
+ data.tar.gz: 3b250c5fd6fe5ff170a5b8a63d2c8b378eb8d0f19daee0e356217b2ee046e855
5
5
  SHA512:
6
- metadata.gz: f54d54eb50c1898ed78fa11f61b76f23ef89a7ff68b28daf40e4ea53c33e2ad5825c4857bba35dc7ecaad4c186bec6c871bee2908aaf015e63b33a8e107379eb
7
- data.tar.gz: 48a211d3aad002eee845a15f22a99a2ebc934ed220a98814938b2e576bcc1862479f77d084edd085401102deca4563e159d1511a242356e16ecfce4a88975754
6
+ metadata.gz: cdf77bc72b70c7952bb6ae612b8c135baf7978c7ec1625dd389475f88129d97135c9d55aa8f1bd04136f2ee45130da3f243521cd4ab97e390b13c7c6f7dad148
7
+ data.tar.gz: 704f413e775c8c5ae6fb5c864228ec48f644319d024e7694efaa960ef9a5e642381cccaaff4ca7807224bad8cbeb55d9a365095741d4a8a4d34116a08b439fe5
@@ -0,0 +1,22 @@
1
+ ---
2
+ name: danger
3
+ on: [pull_request]
4
+ jobs:
5
+ danger:
6
+ runs-on: ubuntu-latest
7
+ env:
8
+ BUNDLE_GEMFILE: Gemfile.danger
9
+ steps:
10
+ - uses: actions/checkout@v2
11
+ with:
12
+ fetch-depth: 0
13
+ - name: Set up Ruby
14
+ uses: ruby/setup-ruby@v1
15
+ with:
16
+ ruby-version: 2.7
17
+ bundler-cache: true
18
+ - name: Run Danger
19
+ run: |
20
+ # the personal token is public, this is ok, base64 encode to avoid tripping Github
21
+ TOKEN=$(echo -n Z2hwX0xNQ3VmanBFeTBvYkZVTWh6NVNqVFFBOEUxU25abzBqRUVuaAo= | base64 --decode)
22
+ DANGER_GITHUB_API_TOKEN=$TOKEN bundle exec danger --verbose
@@ -0,0 +1,16 @@
1
+ ---
2
+ name: lint
3
+ on: [push, pull_request]
4
+ jobs:
5
+ lint:
6
+ name: RuboCop
7
+ runs-on: ubuntu-latest
8
+ steps:
9
+ - uses: actions/checkout@v2
10
+ - name: Set up Ruby
11
+ uses: ruby/setup-ruby@v1
12
+ with:
13
+ ruby-version: 3.4
14
+ bundler-cache: true
15
+ - name: Run RuboCop
16
+ run: bundle exec rubocop
@@ -0,0 +1,32 @@
1
+ ---
2
+ name: test with mongodb
3
+ on: [push, pull_request]
4
+ jobs:
5
+ test:
6
+ runs-on: ubuntu-latest
7
+ strategy:
8
+ matrix:
9
+ entry:
10
+ - { ruby: 3.1, mongoid: 6.4.8, mongodb: 4.4 }
11
+ - { ruby: 3.1, mongoid: 7.3.0, mongodb: 5.0 }
12
+ - { ruby: 3.1, mongoid: 7.3.0, mongodb: 5.0 }
13
+ - { ruby: 3.2, mongoid: 8.1.11, mongodb: 6.0 }
14
+ - { ruby: 3.4, mongoid: 8.1.11, mongodb: 7.0 }
15
+ - { ruby: 3.4, mongoid: 9.0.8, mongodb: 8.0 }
16
+ name: test (ruby=${{ matrix.entry.ruby }}, mongoid=${{ matrix.entry.mongoid }}, mongodb=${{ matrix.entry.mongodb }})
17
+ steps:
18
+ - uses: actions/checkout@v2
19
+ - uses: ruby/setup-ruby@v1
20
+ with:
21
+ ruby-version: ${{ matrix.entry.ruby }}
22
+ - uses: supercharge/mongodb-github-action@1.7.0
23
+ with:
24
+ mongodb-version: ${{ matrix.entry.mongodb }}
25
+ - name: Test
26
+ run: |
27
+ bundle install
28
+ bundle exec rake spec
29
+ env:
30
+ DATABASE_ADAPTER: mongoid
31
+ DATABASE_URL: "mongodb://localhost"
32
+ MONGOID_VERSION: ${{ matrix.entry.mongoid }}
@@ -0,0 +1,39 @@
1
+ ---
2
+ name: test with postgresql
3
+ on: [push, pull_request]
4
+ jobs:
5
+ test:
6
+ runs-on: ubuntu-latest
7
+ strategy:
8
+ matrix:
9
+ entry:
10
+ - { ruby: 3.1, postgresql: 11 }
11
+ - { ruby: 3.1, postgresql: 14 }
12
+ - { ruby: 3.1, postgresql: 14 }
13
+ - { ruby: 3.2, postgresql: 15 }
14
+ - { ruby: 3.3, postgresql: 16 }
15
+ - { ruby: 3.4, postgresql: 17 }
16
+ name: test (ruby=${{ matrix.entry.ruby }}, postgresql=${{ matrix.entry.postgresql }})
17
+ services:
18
+ postgres:
19
+ image: postgres:${{ matrix.entry.postgresql }}
20
+ env:
21
+ POSTGRES_USER: test
22
+ POSTGRES_PASSWORD: password
23
+ POSTGRES_DB: slack_ruby_bot_server_events_test
24
+ ports:
25
+ - 5432:5432
26
+ # needed because the postgres container does not provide a healthcheck
27
+ options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
28
+ steps:
29
+ - uses: actions/checkout@v2
30
+ - uses: ruby/setup-ruby@v1
31
+ with:
32
+ ruby-version: ${{ matrix.entry.ruby }}
33
+ - name: Test
34
+ run: |
35
+ bundle install
36
+ bundle exec rake spec
37
+ env:
38
+ DATABASE_ADAPTER: activerecord
39
+ DATABASE_URL: postgres://test:password@localhost/slack_ruby_bot_server_events_test
data/.rubocop.yml CHANGED
@@ -1,3 +1,6 @@
1
+ AllCops:
2
+ NewCops: enable
3
+
1
4
  Metrics:
2
5
  Enabled: false
3
6
 
@@ -13,3 +16,6 @@ Style/ModuleFunction:
13
16
 
14
17
  inherit_from: .rubocop_todo.yml
15
18
 
19
+ plugins:
20
+ - rubocop-rake
21
+ - rubocop-rspec
data/.rubocop_todo.yml CHANGED
@@ -1,14 +1,89 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2020-11-30 08:47:05 -0500 using RuboCop version 0.81.0.
3
+ # on 2025-09-22 13:51:00 UTC using RuboCop version 1.80.2.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
9
  # Offense count: 1
10
- # Configuration parameters: ExpectMatchingDefinition, Regex, IgnoreExecutableScripts, AllowedAcronyms.
10
+ # Configuration parameters: Severity.
11
+ Gemspec/RequiredRubyVersion:
12
+ Exclude:
13
+ - 'slack-ruby-bot-server-events-app-mentions.gemspec'
14
+
15
+ # Offense count: 1
16
+ # Configuration parameters: AllowedParentClasses.
17
+ Lint/MissingSuper:
18
+ Exclude:
19
+ - 'lib/slack-ruby-bot-server-events-app-mentions/mentions/mention.rb'
20
+
21
+ # Offense count: 1
22
+ # Configuration parameters: ExpectMatchingDefinition, CheckDefinitionPathHierarchy, CheckDefinitionPathHierarchyRoots, Regex, IgnoreExecutableScripts, AllowedAcronyms.
23
+ # CheckDefinitionPathHierarchyRoots: lib, spec, test, src
11
24
  # AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
12
25
  Naming/FileName:
13
26
  Exclude:
27
+ - 'Rakefile.rb'
14
28
  - 'lib/slack-ruby-bot-server-events-app-mentions.rb'
29
+
30
+ # Offense count: 1
31
+ # Configuration parameters: Mode, AllowedMethods, AllowedPatterns, AllowBangMethods, WaywardPredicates.
32
+ # AllowedMethods: call
33
+ # WaywardPredicates: nonzero?
34
+ Naming/PredicateMethod:
35
+ Exclude:
36
+ - 'lib/slack-ruby-bot-server-events-app-mentions/mentions/mention.rb'
37
+
38
+ # Offense count: 6
39
+ RSpec/AnyInstance:
40
+ Exclude:
41
+ - 'spec/slack-ruby-bot-server-events-app-mentions/config/handlers_spec.rb'
42
+ - 'spec/slack-ruby-bot-server-events-app-mentions/mentions/mention_spec.rb'
43
+ - 'spec/slack-ruby-bot-server-events-app-mentions/mentions/regexp_mention_spec.rb'
44
+
45
+ # Offense count: 5
46
+ # Configuration parameters: Prefixes, AllowedPatterns.
47
+ # Prefixes: when, with, without
48
+ RSpec/ContextWording:
49
+ Exclude:
50
+ - 'spec/slack-ruby-bot-server-events-app-mentions/config/handlers_spec.rb'
51
+
52
+ # Offense count: 4
53
+ # This cop supports unsafe autocorrection (--autocorrect-all).
54
+ # Configuration parameters: SkipBlocks, EnforcedStyle, OnlyStaticConstants.
55
+ # SupportedStyles: described_class, explicit
56
+ RSpec/DescribedClass:
57
+ Exclude:
58
+ - 'spec/slack-ruby-bot-server-events-app-mentions/config/handlers_spec.rb'
59
+
60
+ # Offense count: 2
61
+ # Configuration parameters: CountAsOne.
62
+ RSpec/ExampleLength:
63
+ Max: 8
64
+
65
+ # Offense count: 5
66
+ # Configuration parameters: CustomTransform, IgnoreMethods, IgnoreMetadata.
67
+ RSpec/SpecFilePathFormat:
68
+ Exclude:
69
+ - '**/spec/routing/**/*'
70
+ - 'spec/slack-ruby-bot-server-events-app-mentions/config/handlers_spec.rb'
71
+ - 'spec/slack-ruby-bot-server-events-app-mentions/config_spec.rb'
72
+ - 'spec/slack-ruby-bot-server-events-app-mentions/mentions/mention_spec.rb'
73
+ - 'spec/slack-ruby-bot-server-events-app-mentions/mentions/regexp_mention_spec.rb'
74
+ - 'spec/slack-ruby-bot-server-events-app-mentions/version_spec.rb'
75
+
76
+ # Offense count: 1
77
+ # This cop supports unsafe autocorrection (--autocorrect-all).
78
+ # Configuration parameters: EnforcedStyle.
79
+ # SupportedStyles: always, always_true, never
80
+ Style/FrozenStringLiteralComment:
81
+ Exclude:
82
+ - '**/*.arb'
83
+ - 'spec/database_adapters/activerecord/activerecord.rb'
84
+
85
+ # Offense count: 1
86
+ # This cop supports unsafe autocorrection (--autocorrect-all).
87
+ Style/GlobalStdStream:
88
+ Exclude:
89
+ - 'spec/database_adapters/activerecord/activerecord.rb'
data/CHANGELOG.md CHANGED
@@ -1,9 +1,14 @@
1
1
  ### Changelog
2
2
 
3
- #### 0.1.1 (01/06/2021)
3
+ #### 0.2.0 (2025/09/22)
4
+
5
+ * [#4](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/pull/4): Replaced Travis-CI with GHA - [@dblock](https://github.com/dblock).
6
+ * [#4](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/pull/4): Upgraded RuboCop to 1.80.2 - [@dblock](https://github.com/dblock).
7
+
8
+ #### 0.1.1 (2021/01/06)
4
9
 
5
10
  * [#1](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/pull/1): Fix: fetch text via hash accessor - [@robholland](https://github.com/robholland).
6
11
 
7
- #### 0.1.0 (11/30/2020)
12
+ #### 0.1.0 (2020/11/30)
8
13
 
9
14
  * Initial public release - [@dblock](https://github.com/dblock).
data/Gemfile CHANGED
@@ -2,21 +2,22 @@
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- case ENV['DATABASE_ADAPTER']
6
- when 'mongoid' then
5
+ case ENV.fetch('DATABASE_ADAPTER', nil)
6
+ when 'mongoid'
7
7
  gem 'kaminari-mongoid'
8
8
  gem 'mongoid'
9
9
  gem 'mongoid-scroll'
10
- when 'activerecord' then
11
- gem 'activerecord', '~> 5.0.0'
12
- gem 'otr-activerecord', '~> 1.2.1'
13
- gem 'virtus'
14
- gem 'cursor_pagination' # rubocop:disable Bundler/OrderedGems
10
+ when 'activerecord'
11
+ gem 'activerecord'
12
+ gem 'mutex_m'
13
+ gem 'otr-activerecord'
14
+ gem 'pagy_cursor'
15
15
  gem 'pg'
16
+ gem 'virtus'
16
17
  when nil
17
18
  warn "Missing ENV['DATABASE_ADAPTER']."
18
19
  else
19
- warn "Invalid ENV['DATABASE_ADAPTER']: #{ENV['DATABASE_ADAPTER']}."
20
+ warn "Invalid ENV['DATABASE_ADAPTER']: #{ENV.fetch('DATABASE_ADAPTER', nil)}."
20
21
  end
21
22
 
22
23
  gemspec
@@ -30,11 +31,9 @@ group :development, :test do
30
31
  gem 'rack-test'
31
32
  gem 'rake'
32
33
  gem 'rspec'
33
- gem 'rubocop', '0.81.0'
34
+ gem 'rubocop', '1.80.2'
35
+ gem 'rubocop-rake'
36
+ gem 'rubocop-rspec'
34
37
  gem 'vcr'
35
38
  gem 'webmock'
36
39
  end
37
-
38
- group :test do
39
- gem 'slack-ruby-danger', '~> 0.1.0', require: false
40
- end
data/Gemfile.danger ADDED
@@ -0,0 +1,6 @@
1
+ source 'https://rubygems.org'
2
+
3
+ group :test do
4
+ gem 'danger-toc', '~> 0.2.0', require: false
5
+ gem 'slack-ruby-danger', '~> 0.2.0', require: false
6
+ end
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2020 Daniel Doubrovkine & Contributors
3
+ Copyright (c) 2020-2025 Daniel Doubrovkine & Contributors
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -2,10 +2,22 @@ Slack Ruby Bot Server Events App Mentions
2
2
  =========================================
3
3
 
4
4
  [![Gem Version](https://badge.fury.io/rb/slack-ruby-bot-server-events-app-mentions.svg)](https://badge.fury.io/rb/slack-ruby-bot-server-events-app-mentions)
5
- [![Build Status](https://travis-ci.org/slack-ruby/slack-ruby-bot-server-events-app-mentions.svg?branch=master)](https://travis-ci.org/slack-ruby/slack-ruby-bot-server-events-app-mentions)
5
+ [![lint](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/actions/workflows/rubocop.yml/badge.svg)](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/actions/workflows/rubocop.yml)
6
+ [![test with mongodb](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/actions/workflows/test-mongodb.yml/badge.svg)](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/actions/workflows/test-mongodb.yml)
7
+ [![test with postgresql](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/actions/workflows/test-postgresql.yml/badge.svg)](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions/actions/workflows/test-postgresql.yml)
6
8
 
7
9
  An extension to [slack-ruby-bot-server-events](https://github.com/slack-ruby/slack-ruby-bot-server-events) that makes it easier to handle [app mentions](https://api.slack.com/events/app_mention) - message events that directly mention your bot user.
8
10
 
11
+ ### Table of Contents
12
+
13
+ - [Sample](#sample)
14
+ - [Usage](#usage)
15
+ - [Gemfile](#gemfile)
16
+ - [Configure OAuth Scopes](#configure-oauth-scopes)
17
+ - [Implement Mentions](#implement-mentions)
18
+ - [Configure Handlers](#configure-handlers)
19
+ - [Copyright & License](#copyright--license)
20
+
9
21
  ### Sample
10
22
 
11
23
  See [slack-ruby/slack-ruby-bot-server-events-app-mentions-sample](https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions-sample) for a working sample.
@@ -71,6 +83,6 @@ end
71
83
 
72
84
  ### Copyright & License
73
85
 
74
- Copyright [Daniel Doubrovkine](http://code.dblock.org) and Contributors, 2020
86
+ Copyright [Daniel Doubrovkine](http://code.dblock.org) and Contributors, 2020-2025
75
87
 
76
88
  [MIT License](LICENSE)
data/Rakefile CHANGED
@@ -7,7 +7,7 @@ require 'rspec/core'
7
7
  require 'rspec/core/rake_task'
8
8
 
9
9
  RSpec::Core::RakeTask.new(:spec) do |spec|
10
- spec.pattern = FileList['spec/**/*_spec.rb'].exclude(%r{ext\/(?!#{ENV['DATABASE_ADAPTER']})})
10
+ spec.pattern = FileList['spec/**/*_spec.rb'].exclude(%r{ext/(?!#{ENV.fetch('DATABASE_ADAPTER', nil)})})
11
11
  end
12
12
 
13
13
  require 'rubocop/rake_task'
@@ -8,7 +8,7 @@ SlackRubyBotServer::Events.configure do |config|
8
8
  team = Team.where(team_id: event['team_id']).first
9
9
  next unless team
10
10
 
11
- bot_regexp = Regexp.new("^\<\@#{team.bot_user_id}\>[[:space:]]*")
11
+ bot_regexp = Regexp.new("^<@#{team.bot_user_id}>[[:space:]]*")
12
12
 
13
13
  data = Slack::Messages::Message.new(data).merge(
14
14
  text: data['text'].gsub(bot_regexp, ''),
@@ -3,7 +3,7 @@
3
3
  module SlackRubyBotServer
4
4
  module Events
5
5
  module AppMentions
6
- VERSION = '0.1.1'
6
+ VERSION = '0.2.0'
7
7
  end
8
8
  end
9
9
  end
@@ -17,4 +17,5 @@ Gem::Specification.new do |spec|
17
17
  spec.require_paths = ['lib']
18
18
 
19
19
  spec.add_dependency 'slack-ruby-bot-server-events'
20
+ spec.metadata['rubygems_mfa_required'] = 'true'
20
21
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: slack-ruby-bot-server-events-app-mentions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Doubrovkine
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2021-01-06 00:00:00.000000000 Z
10
+ date: 2025-09-22 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: slack-ruby-bot-server-events
@@ -24,22 +23,25 @@ dependencies:
24
23
  - - ">="
25
24
  - !ruby/object:Gem::Version
26
25
  version: '0'
27
- description:
28
26
  email:
29
27
  - dblock@dblock.org
30
28
  executables: []
31
29
  extensions: []
32
30
  extra_rdoc_files: []
33
31
  files:
32
+ - ".github/workflows/danger.yml"
33
+ - ".github/workflows/rubocop.yml"
34
+ - ".github/workflows/test-mongodb.yml"
35
+ - ".github/workflows/test-postgresql.yml"
34
36
  - ".gitignore"
35
37
  - ".rspec"
36
38
  - ".rubocop.yml"
37
39
  - ".rubocop_todo.yml"
38
- - ".travis.yml"
39
40
  - CHANGELOG.md
40
41
  - CONTRIBUTING.md
41
42
  - Dangerfile
42
43
  - Gemfile
44
+ - Gemfile.danger
43
45
  - LICENSE
44
46
  - README.md
45
47
  - RELEASING.md
@@ -55,8 +57,8 @@ files:
55
57
  - slack-ruby-bot-server-events-app-mentions.gemspec
56
58
  homepage: https://github.com/slack-ruby/slack-ruby-bot-server-events-app-mentions
57
59
  licenses: []
58
- metadata: {}
59
- post_install_message:
60
+ metadata:
61
+ rubygems_mfa_required: 'true'
60
62
  rdoc_options: []
61
63
  require_paths:
62
64
  - lib
@@ -71,8 +73,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
71
73
  - !ruby/object:Gem::Version
72
74
  version: '0'
73
75
  requirements: []
74
- rubygems_version: 3.1.3
75
- signing_key:
76
+ rubygems_version: 3.6.2
76
77
  specification_version: 4
77
78
  summary: Adds commands to slack-ruby-bot-server-events.
78
79
  test_files: []
data/.travis.yml DELETED
@@ -1,17 +0,0 @@
1
- language: ruby
2
-
3
- cache: bundler
4
-
5
- matrix:
6
- include:
7
- - rvm: 2.6.6
8
- script:
9
- - bundle exec danger
10
- - rvm: 2.6.6
11
- env: DATABASE_ADAPTER=activerecord
12
- services:
13
- - postgresql
14
- - rvm: 2.6.6
15
- env: DATABASE_ADAPTER=mongoid
16
- services:
17
- - mongodb