deimos-ruby 2.5.0 → 2.5.1

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: 7a0b8bc495e0ef1c93a1f3a7d4b721ecd0ec149df866c0281e572c032ba25de5
4
- data.tar.gz: 9426813c28bb569ee16e1f453b9f636baf309197ed59a25a337146852aec029a
3
+ metadata.gz: bb760f9bdfc09803add56c38f786d3328cf67f797223458bcef0fc396a81661e
4
+ data.tar.gz: 3ef94bb9b7f94303c82dbfd7728e92bb53e400e4de2f42d1b7c0fab84bed6850
5
5
  SHA512:
6
- metadata.gz: bc7752b7345504f327c2c415dc90c58b31a3d6a92175eef71c31dcb66ecc358d7580bc79d7cd6b78c2df71bc8a45fab554d89018d6d85c2d23f91d652569f55c
7
- data.tar.gz: b21aead2768acf0045a91175405a38352763a6ed85b7adc78fc70bdf1ea6dbf4cd993a94ac038c1275e7be6821bd623ab2e5b665f4509d7ce299dfba465e964d
6
+ metadata.gz: 686616760e7bc0ae6a019885058b8b8446cf4b5ef187d1908c16755ec92fb4efecbd3e63719837fd351c332e9f22c4e5ce46e928b3bd45a10dccb547c5344599
7
+ data.tar.gz: 29697e83e3fb628b625a9ffd8af5357d2d452bef473d8ce6a9decb6519539be681a1fd49d1c8f17e61c75e277eeb293e9443a4158f0601110f843849f3813d24
data/CHANGELOG.md CHANGED
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## Unreleased
9
9
 
10
+ ## 2.5.1 - 2026-03-18
11
+
12
+ - Fix: Outbox producer would swallow ActiveRecord errors except for uniqueness.
13
+
10
14
  ## 2.5.0 - 2026-03-04
11
15
 
12
16
  - Breaking: `process_message?` in batch consumption now receives the full Kafka message object instead of just the payload, allowing tombstones to be identified via the message key and metadata.
@@ -18,7 +18,7 @@ module Deimos
18
18
  def lock(topic, lock_id) # rubocop:disable Naming/PredicateMethod
19
19
  # Try to create it - it's fine if it already exists
20
20
  begin
21
- self.create(topic: topic, last_processed_at: Time.zone.now)
21
+ self.create!(topic: topic, last_processed_at: Time.zone.now)
22
22
  rescue ActiveRecord::RecordNotUnique
23
23
  # continue on
24
24
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Deimos
4
- VERSION = '2.5.0'
4
+ VERSION = '2.5.1'
5
5
  end
@@ -11,6 +11,11 @@ each_db_config(Deimos::KafkaTopicInfo) do
11
11
  expect(described_class.last.locked_by).to eq('def')
12
12
  end
13
13
 
14
+ it 'should raise an error if the create fails for a non-unique reason' do
15
+ allow(described_class).to receive(:create!).and_raise(ActiveRecord::ActiveRecordError, 'some other error')
16
+ expect { described_class.lock('my-topic', 'abc') }.to raise_error(ActiveRecord::ActiveRecordError)
17
+ end
18
+
14
19
  it "should lock the topic if it's old" do
15
20
  described_class.create!(topic: 'my-topic', locked_by: 'abc', error: true,
16
21
  locked_at: 2.minutes.ago)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deimos-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0
4
+ version: 2.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Orner
@@ -711,7 +711,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
711
711
  - !ruby/object:Gem::Version
712
712
  version: '0'
713
713
  requirements: []
714
- rubygems_version: 4.0.3
714
+ rubygems_version: 4.0.6
715
715
  specification_version: 4
716
716
  summary: Kafka libraries for Ruby.
717
717
  test_files: []