alarmable 2.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.
- checksums.yaml +4 -4
- data/.github/workflows/release.yml +1 -1
- data/.github/workflows/test.yml +1 -1
- data/.rubocop.yml +1 -1
- data/Appraisals +6 -0
- data/CHANGELOG.md +6 -0
- data/alarmable.gemspec +2 -2
- data/docker-compose.yml +1 -1
- data/gemfiles/rails_8.1.gemfile +23 -0
- data/lib/alarmable/version.rb +1 -1
- data/lib/alarmable.rb +0 -10
- metadata +10 -9
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d4c5fb3a2af50ea846e77391b001656aae22d3d42e03e4f69cacfd7b327e849d
|
|
4
|
+
data.tar.gz: a4c351bd05b94b86e67be9facf8b70459ff6515ef97b8c82548d78ae1b3e9438
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 48c45a04e459087749066905301acb1b915bf54e0c44d9c4dc6e0625f3392f7cfb35a8659f62ea66d2b30cced45950396a61c51183320e6669e77b7c895b84b5
|
|
7
|
+
data.tar.gz: 33971096ba1d0a6df18fb82882e5b0c9cde69fd13fc96c34168795f1053c71fdc6b47508b9ab1814b27b4ab907fa1b6330ccf286a0af90b45c002536460ff2dd
|
data/.github/workflows/test.yml
CHANGED
data/.rubocop.yml
CHANGED
data/Appraisals
CHANGED
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
* TODO: Replace this bullet point with an actual description of a change.
|
|
4
4
|
|
|
5
|
+
### 2.1.0 (24 October 2025)
|
|
6
|
+
|
|
7
|
+
* Upgraded PostgreSQL to 17.6. ([#23](https://github.com/hausgold/alarmable/pull/23))
|
|
8
|
+
* Dropped Reek. ([#24](https://github.com/hausgold/alarmable/pull/24))
|
|
9
|
+
* Added support for Rails 8.1 ([#25](https://github.com/hausgold/alarmable/pull/25))
|
|
10
|
+
|
|
5
11
|
### 2.0.0 (28 June 2025)
|
|
6
12
|
|
|
7
13
|
* Upgraded PostgreSQL to 17.5. ([#20](https://github.com/hausgold/alarmable/pull/20))
|
data/alarmable.gemspec
CHANGED
|
@@ -40,9 +40,9 @@ Gem::Specification.new do |spec|
|
|
|
40
40
|
spec.add_dependency 'activejob-cancel', '~> 0.3'
|
|
41
41
|
spec.add_dependency 'activerecord', '>= 7.1'
|
|
42
42
|
spec.add_dependency 'activesupport', '>= 7.1'
|
|
43
|
-
spec.add_dependency 'base64', '
|
|
43
|
+
spec.add_dependency 'base64', '>= 0.3'
|
|
44
44
|
spec.add_dependency 'bigdecimal', '~> 3.1'
|
|
45
45
|
spec.add_dependency 'hashdiff', '~> 1.0'
|
|
46
|
-
spec.add_dependency 'mutex_m', '
|
|
46
|
+
spec.add_dependency 'mutex_m', '>= 0.3'
|
|
47
47
|
spec.add_dependency 'zeitwerk', '~> 2.6'
|
|
48
48
|
end
|
data/docker-compose.yml
CHANGED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# This file was generated by Appraisal
|
|
2
|
+
|
|
3
|
+
source "https://rubygems.org"
|
|
4
|
+
|
|
5
|
+
gem "appraisal", "~> 2.4"
|
|
6
|
+
gem "bundler", "~> 2.6"
|
|
7
|
+
gem "countless", "~> 2.0"
|
|
8
|
+
gem "guard-rspec", "~> 4.7"
|
|
9
|
+
gem "pg", "~> 1.4"
|
|
10
|
+
gem "railties", ">= 7.1"
|
|
11
|
+
gem "rake", "~> 13.0"
|
|
12
|
+
gem "rspec", "~> 3.12"
|
|
13
|
+
gem "rubocop"
|
|
14
|
+
gem "rubocop-rails"
|
|
15
|
+
gem "rubocop-rspec"
|
|
16
|
+
gem "simplecov", ">= 0.22"
|
|
17
|
+
gem "yard", ">= 0.9.28"
|
|
18
|
+
gem "yard-activesupport-concern", ">= 0.0.1"
|
|
19
|
+
gem "activejob", "~> 8.1.0"
|
|
20
|
+
gem "activerecord", "~> 8.1.0"
|
|
21
|
+
gem "activesupport", "~> 8.1.0"
|
|
22
|
+
|
|
23
|
+
gemspec path: "../"
|
data/lib/alarmable/version.rb
CHANGED
data/lib/alarmable.rb
CHANGED
|
@@ -66,8 +66,6 @@ module Alarmable
|
|
|
66
66
|
|
|
67
67
|
class_methods do
|
|
68
68
|
# Getter/Setter
|
|
69
|
-
#
|
|
70
|
-
# :reek:Attribute because thats what this thing is about
|
|
71
69
|
attr_accessor :alarm_job, :alarm_base_date_property
|
|
72
70
|
end
|
|
73
71
|
|
|
@@ -107,7 +105,6 @@ module Alarmable
|
|
|
107
105
|
# setting.
|
|
108
106
|
#
|
|
109
107
|
# rubocop:disable Style/GuardClause -- because its fine like this
|
|
110
|
-
# :reek:NilCheck because we validate concern usage
|
|
111
108
|
def validate_alarm_settings
|
|
112
109
|
raise 'Alarmable +alarm_job+ is not configured' if alarm_job.nil?
|
|
113
110
|
unless alarm_job.is_a? Class
|
|
@@ -131,8 +128,6 @@ module Alarmable
|
|
|
131
128
|
# @param channel [String] The alarm channel
|
|
132
129
|
# @param before_minutes [Integer] The minutes before the alarm starts
|
|
133
130
|
# @return [String] The unique alarm id
|
|
134
|
-
#
|
|
135
|
-
# :reek:UtilityFunction because its a utility, for sure
|
|
136
131
|
def alarm_id(channel, before_minutes)
|
|
137
132
|
(Digest::MD5.new << "#{channel}#{before_minutes}").to_s
|
|
138
133
|
end
|
|
@@ -148,9 +143,6 @@ module Alarmable
|
|
|
148
143
|
# Example: { "alarm id": "job id" }
|
|
149
144
|
#
|
|
150
145
|
# rubocop:disable Metrics/AbcSize -- because its already broken down
|
|
151
|
-
# :reek:TooManyStatements because see above
|
|
152
|
-
# :reek:NilCheck because we dont want to cancel 'nil' job id
|
|
153
|
-
# :reek:DuplicateMethodCall because hash access is fast
|
|
154
146
|
def reschedule_alarm_job(alarm)
|
|
155
147
|
# Symbolize the hash keys (just to be sure).
|
|
156
148
|
alarm = alarm.symbolize_keys
|
|
@@ -181,8 +173,6 @@ module Alarmable
|
|
|
181
173
|
|
|
182
174
|
# Initiate a reschedule for each alarm in the alarm settings and
|
|
183
175
|
# cancel all left-overs.
|
|
184
|
-
#
|
|
185
|
-
# :reek:TooManyStatements because its already broken down
|
|
186
176
|
def reschedule_alarm_jobs
|
|
187
177
|
# Perform the reschedule of all the current alarms.
|
|
188
178
|
new_alarm_jobs = alarms.each_with_object({}) do |alarm, memo|
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: alarmable
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Hermann Mayer
|
|
@@ -69,16 +69,16 @@ dependencies:
|
|
|
69
69
|
name: base64
|
|
70
70
|
requirement: !ruby/object:Gem::Requirement
|
|
71
71
|
requirements:
|
|
72
|
-
- - "
|
|
72
|
+
- - ">="
|
|
73
73
|
- !ruby/object:Gem::Version
|
|
74
|
-
version: 0.
|
|
74
|
+
version: '0.3'
|
|
75
75
|
type: :runtime
|
|
76
76
|
prerelease: false
|
|
77
77
|
version_requirements: !ruby/object:Gem::Requirement
|
|
78
78
|
requirements:
|
|
79
|
-
- - "
|
|
79
|
+
- - ">="
|
|
80
80
|
- !ruby/object:Gem::Version
|
|
81
|
-
version: 0.
|
|
81
|
+
version: '0.3'
|
|
82
82
|
- !ruby/object:Gem::Dependency
|
|
83
83
|
name: bigdecimal
|
|
84
84
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -111,16 +111,16 @@ dependencies:
|
|
|
111
111
|
name: mutex_m
|
|
112
112
|
requirement: !ruby/object:Gem::Requirement
|
|
113
113
|
requirements:
|
|
114
|
-
- - "
|
|
114
|
+
- - ">="
|
|
115
115
|
- !ruby/object:Gem::Version
|
|
116
|
-
version: 0.3
|
|
116
|
+
version: '0.3'
|
|
117
117
|
type: :runtime
|
|
118
118
|
prerelease: false
|
|
119
119
|
version_requirements: !ruby/object:Gem::Requirement
|
|
120
120
|
requirements:
|
|
121
|
-
- - "
|
|
121
|
+
- - ">="
|
|
122
122
|
- !ruby/object:Gem::Version
|
|
123
|
-
version: 0.3
|
|
123
|
+
version: '0.3'
|
|
124
124
|
- !ruby/object:Gem::Dependency
|
|
125
125
|
name: zeitwerk
|
|
126
126
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -174,6 +174,7 @@ files:
|
|
|
174
174
|
- gemfiles/rails_7.1.gemfile
|
|
175
175
|
- gemfiles/rails_7.2.gemfile
|
|
176
176
|
- gemfiles/rails_8.0.gemfile
|
|
177
|
+
- gemfiles/rails_8.1.gemfile
|
|
177
178
|
- lib/alarmable.rb
|
|
178
179
|
- lib/alarmable/version.rb
|
|
179
180
|
licenses:
|