blind_index 2.6.1 → 2.7.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: '029d937b71e363d78763235de48d94c66baf25e11b394ef99d7fc6d72b21f0c8'
4
- data.tar.gz: 6db3c888725fab40d6fae23315ecff70d5cb61ef01972ea9da99346537811233
3
+ metadata.gz: '09a84d8781deda821fd4cb201a99f0817a0138cce41f2b8feee581fc75d7fd4d'
4
+ data.tar.gz: 257e5c5d3504e90bb2ffa90dca2cdd21c853d0a3708d64b05cf044b324506cbe
5
5
  SHA512:
6
- metadata.gz: 92f8322d3603fa9d419e34fdf2592a08e728405e1dc9a45ac57dbf46715fbb8e34179f03d3948e41617df00b1df93ab07d84cbec364ca058cba4631bff3f2fec
7
- data.tar.gz: f29bd6c7479c52b00650e3c726807ca6dc68a535e2dd9e2fd9cafca7f7a0b4d43cea7f5bff0916896f8750761858f2ec3392af573680274674a1a3cb95293b66
6
+ metadata.gz: d4bb3008b73f2e5587d7655384380b7323b8c73303e1634f1e279c14022728ca77d1b4a4259c5afa1bfd134a0fd69c26035316ac8f3a5b3005b269be617c2de1
7
+ data.tar.gz: 164b7986d27128b8830dddf90fe4501081da58e4b8995ab2dc6cb57ae697fc33da378824bfcec0d32ae12ded0795b61d2814f45d6af65ecdbbd95179a9a6be03
data/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## 2.7.0 (2025-05-04)
2
+
3
+ - Dropped support for Ruby < 3.2 and Active Record < 7.1
4
+ - Dropped support for Mongoid < 8
5
+
6
+ ## 2.6.2 (2025-02-23)
7
+
8
+ - Fixed querying with normalized attributes
9
+
1
10
  ## 2.6.1 (2024-11-01)
2
11
 
3
12
  - Fixed issue with `includes` and Active Record 7
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2017-2024 Andrew Kane
1
+ Copyright (c) 2017-2025 Andrew Kane
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  of this software and associated documentation files (the "Software"), to deal
@@ -14,12 +14,20 @@ module BlindIndex
14
14
  # https://github.com/rails/rails/commit/56f30962b84fc53b76001301fb830c1594fd377e
15
15
  def build(attribute, value, *args)
16
16
  if table.has_blind_indexes? && (bi = table.send(:klass).blind_indexes[attribute.name.to_sym]) && !value.is_a?(ActiveRecord::StatementCache::Substitute)
17
+ model = table.send(:klass)
18
+ attribute_name = attribute.name.to_sym
19
+ cast =
20
+ if model.respond_to?(:normalized_attributes) && model.normalized_attributes.include?(attribute_name)
21
+ ->(v) { model.normalize_value_for(attribute_name, v) }
22
+ else
23
+ ->(v) { v }
24
+ end
17
25
  attribute = attribute.relation[bi[:bidx_attribute]]
18
26
  value =
19
27
  if value.is_a?(Array) || (defined?(Set) && value.is_a?(Set))
20
- value.map { |v| BlindIndex.generate_bidx(v, **bi) }
28
+ value.map { |v| BlindIndex.generate_bidx(cast.call(v), **bi) }
21
29
  else
22
- BlindIndex.generate_bidx(value, **bi)
30
+ BlindIndex.generate_bidx(cast.call(value), **bi)
23
31
  end
24
32
  end
25
33
 
@@ -1,3 +1,3 @@
1
1
  module BlindIndex
2
- VERSION = "2.6.1"
2
+ VERSION = "2.7.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blind_index
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.1
4
+ version: 2.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kane
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-11-01 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: activesupport
@@ -16,14 +15,14 @@ dependencies:
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: '7'
18
+ version: '7.1'
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: '7'
25
+ version: '7.1'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: argon2-kdf
29
28
  requirement: !ruby/object:Gem::Requirement
@@ -38,7 +37,6 @@ dependencies:
38
37
  - - ">="
39
38
  - !ruby/object:Gem::Version
40
39
  version: '0.2'
41
- description:
42
40
  email: andrew@ankane.org
43
41
  executables: []
44
42
  extensions: []
@@ -58,7 +56,6 @@ homepage: https://github.com/ankane/blind_index
58
56
  licenses:
59
57
  - MIT
60
58
  metadata: {}
61
- post_install_message:
62
59
  rdoc_options: []
63
60
  require_paths:
64
61
  - lib
@@ -66,15 +63,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
66
63
  requirements:
67
64
  - - ">="
68
65
  - !ruby/object:Gem::Version
69
- version: '3.1'
66
+ version: '3.2'
70
67
  required_rubygems_version: !ruby/object:Gem::Requirement
71
68
  requirements:
72
69
  - - ">="
73
70
  - !ruby/object:Gem::Version
74
71
  version: '0'
75
72
  requirements: []
76
- rubygems_version: 3.5.16
77
- signing_key:
73
+ rubygems_version: 3.6.7
78
74
  specification_version: 4
79
75
  summary: Securely search encrypted database fields
80
76
  test_files: []