janus-ar 0.13.0 → 0.14.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 385d7c8b2d818661697a772e2c32d382bea82e11a01548812d6e0bd50b729eb5
4
- data.tar.gz: 3314da59cac901b3d453c763d426ffeacafa98586f7530b8dd52421b185ed968
3
+ metadata.gz: 3b4012fc9260dbab0c2d86b585d800968f45dd463e39d63bc512320ce3c78665
4
+ data.tar.gz: 4790e30c5f89242b39174d3ae4de12cb4c848461c494133dbdd4e3f5caee4221
5
5
  SHA512:
6
- metadata.gz: a108987d5c2d0fc9daa7de2b0f934a89f03bc877f6b8fc93c49af724e2aa55727b2a9bd912e5727cb91b16676cdf76bc089e8ffcbef9ca4bfd2132acd90623b1
7
- data.tar.gz: a4b3fbf3e1b3b9b932454952048441954048ea0571947aa5ede324eb166bf7890bee96e4d0e2d1419cb0b551dc1a19ee47acd04f79e7718d589773e697cdff42
6
+ metadata.gz: 3d2f60f04c8e234453e61a6a549099e905389b9e845707611cfb4d3f81b93490fbfd8dd9727fa5c90700d3183ec88de4bb4b503e9782baa9b9736879f811916b
7
+ data.tar.gz: b70f8246e567c80c8dba2423127f573a7988483d9e5078c7e9b7efae78d0f6ef6efeb2cbefa58c1b145291f8930b171d255dbfad43adcc85bf03ac0f8dae9d85
data/Gemfile.lock CHANGED
@@ -64,7 +64,7 @@ GEM
64
64
  diff-lcs (>= 1.2.0, < 2.0)
65
65
  rspec-support (~> 3.13.0)
66
66
  rspec-support (3.13.1)
67
- rubocop (1.63.0)
67
+ rubocop (1.63.1)
68
68
  json (~> 2.3)
69
69
  language_server-protocol (>= 3.17.0)
70
70
  parallel (~> 1.10)
data/README.md CHANGED
@@ -15,6 +15,8 @@ Janus ActiveRecord is generic primary/replica proxy for ActiveRecord 7.1+ and My
15
15
 
16
16
  Janus is heavily inspired by [Makara](https://github.com/instacart/makara) from TaskRabbit and then Instacart. Unfortunately this project is unmaintained and broke for us with Rails 7.1. This is an attempt to start afresh on the project. It is definitely not as fully featured as Makara at this stage.
17
17
 
18
+ Learn more about its origins: [https://tech.olioex.com/ruby/2024/04/16/introducing-janus.html](https://tech.olioex.com/ruby/2024/04/16/introducing-janus.html).
19
+
18
20
  ## Installation
19
21
 
20
22
  Use the current version of the gem from [rubygems](https://rubygems.org/gems/janus-ar) in your `Gemfile`.
@@ -32,7 +32,7 @@ module ActiveRecord
32
32
  SQL_REPLICA_MATCHERS = [/\A\s*(select|with.+\)\s*select)\s/i].freeze
33
33
  SQL_ALL_MATCHERS = [/\A\s*set\s/i].freeze
34
34
  SQL_SKIP_ALL_MATCHERS = [/\A\s*set\s+local\s/i].freeze
35
- WRITE_PREFIXES = %w(INSERT UPDATE DELETE LOCK CREATE GRANT DROP ALTER).freeze
35
+ WRITE_PREFIXES = %w(INSERT UPDATE DELETE LOCK CREATE GRANT DROP ALTER TRUNCATE FLUSH).freeze
36
36
 
37
37
  attr_reader :config
38
38
 
data/lib/janus/version.rb CHANGED
@@ -4,7 +4,7 @@ module Janus
4
4
  unless defined?(::Janus::VERSION)
5
5
  module VERSION
6
6
  MAJOR = 0
7
- MINOR = 13
7
+ MINOR = 14
8
8
  PATCH = 0
9
9
  PRE = nil
10
10
 
@@ -16,7 +16,7 @@ RSpec.describe ActiveRecord::ConnectionAdapters::JanusMysql2Adapter do
16
16
  }
17
17
  it { expect(described_class::SQL_REPLICA_MATCHERS).to eq([/\A\s*(select|with.+\)\s*select)\s/i]) }
18
18
  it { expect(described_class::SQL_ALL_MATCHERS).to eq([/\A\s*set\s/i]) }
19
- it { expect(described_class::WRITE_PREFIXES).to eq %w(INSERT UPDATE DELETE LOCK CREATE GRANT DROP ALTER) }
19
+ it { expect(described_class::WRITE_PREFIXES).to eq %w(INSERT UPDATE DELETE LOCK CREATE GRANT DROP ALTER TRUNCATE FLUSH) }
20
20
 
21
21
  let(:database) { 'test' }
22
22
  let(:primary_config) do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: janus-ar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.0
4
+ version: 0.14.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lloyd Watkin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-15 00:00:00.000000000 Z
11
+ date: 2024-04-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord