searchjoy 1.4.0 → 1.5.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: 8cf724213575a2323c78822f1408257cfe241c8aedcac6332b63d33c498d8e0d
4
- data.tar.gz: 1d341523ee3ce338b7ef2ed6d4760f6d5bfa3dab106caf42aab36758a291b03f
3
+ metadata.gz: '029600b3c7cc4ec9d15dab6698dd9874e2b651a38ebdfdf15c2b2a685a9174e8'
4
+ data.tar.gz: 0e8400de4613ba31f23a678f15855bbad718aba61f1ed60deba3a5a4e7163468
5
5
  SHA512:
6
- metadata.gz: 18e7a9446163b517b1b1a53be70ef441e886dd6224fedc875dbd963136185e1255c4795712d00ed3d292c4ee827adc69ef6ac4f2cf68fffc8ebcbbf021f6bcf2
7
- data.tar.gz: d681037228730ca9b774792c627b754d45477f1fee9f7e2cf906af17fd8a939f2a19b1324543af13796b444a588087df80d46012c4582ae791a61fd03b624671
6
+ metadata.gz: 8eab6b10ac86001395011df330926bce444e2f422c166e3bd3543e07fa42c8246dedf4073bee2c1469ce841cf25fe5d72b5473ffbd549a62cbaba8bc896a070d
7
+ data.tar.gz: 7d6c7f8f1ef7a605524cc3068174e130475277b7ca77498c9b99c8d1ac96e7df94c3303d6b643d0ac28aeb88a861067b4a2773af115634ba3f23d4f871618310
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## 1.5.0 (2026-04-08)
2
+
3
+ - Fixed error with long queries with MySQL
4
+ - Dropped support for Ruby < 3.3 and Rails < 7.2
5
+
1
6
  ## 1.4.0 (2025-04-03)
2
7
 
3
8
  - Dropped support for Ruby < 3.2 and Rails < 7.1
@@ -1,17 +1,17 @@
1
1
  module Searchjoy
2
2
  class SearchesController < ActionController::Base
3
- protect_from_forgery with: :exception
4
-
5
- layout "searchjoy/application"
6
-
7
3
  http_basic_authenticate_with name: ENV["SEARCHJOY_USERNAME"], password: ENV["SEARCHJOY_PASSWORD"] if ENV["SEARCHJOY_PASSWORD"]
8
4
 
5
+ protect_from_forgery with: :exception
6
+
9
7
  before_action :set_time_zone
10
8
  before_action :set_search_types
11
9
  before_action :set_search_type, only: [:index, :overview]
12
10
  before_action :set_time_range, only: [:index, :overview]
13
11
  before_action :set_searches, only: [:index, :overview]
14
12
 
13
+ layout "searchjoy/application"
14
+
15
15
  def index
16
16
  if params[:sort] == "conversion_rate"
17
17
  @searches.sort_by! { |s| [s["conversion_rate"].to_f, s["query"]] }
@@ -6,6 +6,7 @@ module Searchjoy
6
6
  belongs_to :user, optional: true
7
7
  has_many :conversions
8
8
 
9
+ before_save :truncate_query
9
10
  before_save :set_normalized_query
10
11
 
11
12
  def convert(convertable = nil)
@@ -41,6 +42,11 @@ module Searchjoy
41
42
 
42
43
  protected
43
44
 
45
+ def truncate_query
46
+ limit = self.class.type_for_attribute(:query).limit rescue nil
47
+ self.query = query.first(limit) if query && limit
48
+ end
49
+
44
50
  def set_normalized_query
45
51
  self.normalized_query = query.downcase if query
46
52
  end
@@ -1,3 +1,3 @@
1
1
  module Searchjoy
2
- VERSION = "1.4.0"
2
+ VERSION = "1.5.0"
3
3
  end
metadata CHANGED
@@ -1,56 +1,56 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: searchjoy
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kane
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-04-03 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
- name: chartkick
13
+ name: activerecord
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '5'
18
+ version: '7.2'
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - ">="
24
24
  - !ruby/object:Gem::Version
25
- version: '5'
25
+ version: '7.2'
26
26
  - !ruby/object:Gem::Dependency
27
- name: groupdate
27
+ name: chartkick
28
28
  requirement: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: '6'
32
+ version: '5'
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: '6'
39
+ version: '5'
40
40
  - !ruby/object:Gem::Dependency
41
- name: activerecord
41
+ name: groupdate
42
42
  requirement: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
- version: '7.1'
46
+ version: '6'
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
- version: '7.1'
53
+ version: '6'
54
54
  email: andrew@ankane.org
55
55
  executables: []
56
56
  extensions: []
@@ -90,14 +90,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
90
90
  requirements:
91
91
  - - ">="
92
92
  - !ruby/object:Gem::Version
93
- version: '3.2'
93
+ version: '3.3'
94
94
  required_rubygems_version: !ruby/object:Gem::Requirement
95
95
  requirements:
96
96
  - - ">="
97
97
  - !ruby/object:Gem::Version
98
98
  version: '0'
99
99
  requirements: []
100
- rubygems_version: 3.6.2
100
+ rubygems_version: 4.0.10
101
101
  specification_version: 4
102
102
  summary: Search analytics made easy
103
103
  test_files: []