konsierge-notifier 0.1.4 → 0.1.6

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: 4a93ee3c22745d24690a2e49fb7a68967a71e21de56a59a36db188fbd8d6939b
4
- data.tar.gz: 93f25d25fcef4eccebbace9db5739498cd6d9da2c8cc66718eae800c12b789e4
3
+ metadata.gz: cc425bfa6f9517f101566c0eafc628825b199bab158a745ed774bed0c671cc6f
4
+ data.tar.gz: dd3e91fcbdedebf8b0103dcb10fb092b7c1075202f5073c75b78e2289855f569
5
5
  SHA512:
6
- metadata.gz: b9f8ebefb28f9d14d3c2e9e8db1e96532ae45887d7efbed26fb6840cf1d18e9dd9616ebb2d23525a7f2ebf3fba56fd493c49542cb247309f554671c8f8a42328
7
- data.tar.gz: 6c382b95e199108845f9e763cc27c5c142ffbd49dec73fd93e147dbd5aa7350f35315e5b73446f4f14969df81ef00eabad16273e79f4b91796f4faa5f7d35f36
6
+ metadata.gz: 7b52bc1f695f699711c5d0a195db9828787919daafaa71b968a4be790eac813aa36ee7302c559998c4f4af5b2229c7f329352a0cb818487edc73c24f67e837ac
7
+ data.tar.gz: 05fb8eecec7b5d8f2f9f5db32bc8a3f0290271d08ba9ddd096d491bb0c1645f9e61542f50c1652d399c835b6e090c06183c8a029e33fa1f5be75ecb738e7ff00
@@ -25,8 +25,8 @@ Gem::Specification.new do |spec|
25
25
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
26
26
  spec.require_paths = ['lib']
27
27
 
28
- spec.add_dependency 'dotenv', '~> 2.7'
29
- spec.add_dependency 'erb', '~> 2.0'
28
+ spec.add_dependency 'dotenv', '>= 2.0'
29
+ spec.add_dependency 'erb', '>= 2.0'
30
30
  spec.add_dependency 'telegram-bot', '~> 0.16.1'
31
31
 
32
32
  spec.metadata['rubygems_mfa_required'] = 'true'
@@ -5,17 +5,18 @@ require_relative 'adapters/telegram'
5
5
  module Konsierge
6
6
  module Notifier
7
7
  class Configuration
8
+ class Error < StandardError; end
9
+
8
10
  ADAPTER_IMPLEMENTATIONS = {
9
11
  telegram: Adapters::Telegram
10
12
  }.freeze
11
13
 
12
- attr_accessor :app_name, :adapter, :chat_id, :bot_enabled, :message_template_path, :error_template_path, :logger,
13
- :parse_mode
14
+ attr_accessor :app_name, :adapter, :chat_id, :bot_enabled,
15
+ :message_template_path, :error_template_path, :logger, :parse_mode
14
16
 
15
17
  def initialize
16
18
  @app_name = nil
17
19
  @adapter = :telegram
18
- @adapter_class = ADAPTER_IMPLEMENTATIONS[@adapter.to_s.to_sym]
19
20
  @chat_id = ENV.fetch('TELEGRAM_CHANNEL_ID', nil)
20
21
  @bot_enabled = ENV.fetch('TELEGRAM_BOT_ENABLED', false)
21
22
  @message_template_path = File.expand_path('templates/telegram/message.html.erb', __dir__)
@@ -30,8 +31,13 @@ module Konsierge
30
31
  end
31
32
  end
32
33
 
33
- def adapter_instance
34
- @adapter_instance ||= @adapter_class.new
34
+ def adapter_class
35
+ unless ADAPTER_IMPLEMENTATIONS[@adapter]
36
+ error_msg = "#{@adapter} must be one of #{ADAPTER_IMPLEMENTATIONS.keys.join(', ')}"
37
+ raise Error, error_msg
38
+ end
39
+
40
+ ADAPTER_IMPLEMENTATIONS[@adapter.to_s.to_sym]
35
41
  end
36
42
  end
37
43
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Konsierge
4
4
  module Notifier
5
- VERSION = '0.1.4'
5
+ VERSION = '0.1.6'
6
6
  end
7
7
  end
@@ -3,6 +3,7 @@
3
3
  require 'logger'
4
4
  require 'telegram/bot'
5
5
 
6
+ require_relative 'notifier/version'
6
7
  require_relative 'notifier/configuration'
7
8
  require_relative 'notifier/adapters/telegram'
8
9
  require_relative 'notifier/rails_report_subscriber'
@@ -20,12 +21,16 @@ module Konsierge
20
21
  yield(config)
21
22
  end
22
23
 
24
+ def adapter_instance
25
+ @adapter_instance ||= config.adapter_class.new
26
+ end
27
+
23
28
  def send_message(...)
24
- config.adapter_instance.send_message(...)
29
+ adapter_instance.send_message(...)
25
30
  end
26
31
 
27
32
  def send_error(...)
28
- config.adapter_instance.send_error(...)
33
+ adapter_instance.send_error(...)
29
34
  end
30
35
 
31
36
  alias report_error send_error
@@ -33,7 +38,7 @@ module Konsierge
33
38
  private
34
39
 
35
40
  def subscribe_on_reporter
36
- return unless defined?(Rails) && VERSION > '0.1.3' && Gem::Version.new(Rails.version).segments.first
41
+ return unless Gem::Version.new(::Rails.version).segments.first >= 7
37
42
 
38
43
  config.logger.debug { 'Konsierge notifier is subscribing to Rails error reporter...' }
39
44
  Rails.error.subscribe(RailsReportSubscriber.new)
metadata CHANGED
@@ -1,41 +1,40 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: konsierge-notifier
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Rybolovlev
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-07-03 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: dotenv
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
- - - "~>"
16
+ - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: '2.7'
18
+ version: '2.0'
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
- - - "~>"
23
+ - - ">="
25
24
  - !ruby/object:Gem::Version
26
- version: '2.7'
25
+ version: '2.0'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: erb
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
- - - "~>"
30
+ - - ">="
32
31
  - !ruby/object:Gem::Version
33
32
  version: '2.0'
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
- - - "~>"
37
+ - - ">="
39
38
  - !ruby/object:Gem::Version
40
39
  version: '2.0'
41
40
  - !ruby/object:Gem::Dependency
@@ -83,12 +82,10 @@ files:
83
82
  - mise.toml
84
83
  - sig/konsierge.rbs
85
84
  - sig/konsierge/notifier.rbs
86
- homepage:
87
85
  licenses: []
88
86
  metadata:
89
87
  source_code_uri: https://gitlab.konsierge.com/digitalbox/gem/konsierge-notifier
90
88
  rubygems_mfa_required: 'true'
91
- post_install_message:
92
89
  rdoc_options: []
93
90
  require_paths:
94
91
  - lib
@@ -103,8 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
103
100
  - !ruby/object:Gem::Version
104
101
  version: '0'
105
102
  requirements: []
106
- rubygems_version: 3.1.6
107
- signing_key:
103
+ rubygems_version: 3.6.8
108
104
  specification_version: 4
109
105
  summary: Notifier for Konsierge.
110
106
  test_files: []