ollama_chat 0.0.45 → 0.0.47

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: 2cea88b35f4e6aec1cc59628b482483af5b8cb692a07a7a0f44c5a0b0c379e84
4
- data.tar.gz: dccc2ea134cbc9c34b0c2484d265e69fb3bec7b313893f0a7692a4ec5aab4079
3
+ metadata.gz: 606d0102070df89245765895902a4eb5667b314a2b346e61ce94b67c454adfd3
4
+ data.tar.gz: 6c9fb7771899175764dbd0bf65896451abad3543455d5fbd0ebea6f6cabb8a02
5
5
  SHA512:
6
- metadata.gz: 8670b04279892f1da316908e5df1f15c10adfc3dc6e2b727a0a4debabc35d0083b697c442815d90d1078c214f67d0654e2f6ddf5ce3293fc0b63ad273ef14632
7
- data.tar.gz: 461308bbd61624f130cc5090421197e0573b40d1516d383f4973179259c66b652163be5976fd9400a51cfe17a271450727527c97b9bd81d1168d7ff974f4c619
6
+ metadata.gz: 1f764fae5fefd51548b9a163f59c7683bc7e8cfb1aed0051f5026ce0244a4daa57bcbd46e8babd51d05ed0ce316a58ef14ac16487011015b030069eceb78b813
7
+ data.tar.gz: aad92496be8c60d3de20aea0af9d46977ad67bf1c12806ff0cc5f2ae9712bc3bd66be99a845a4f01a9ab88fa5558161338fa925242ed8aa7a1e8f4fa153ab53d
data/CHANGES.md CHANGED
@@ -1,5 +1,41 @@
1
1
  # Changes
2
2
 
3
+ ## 2025-12-23 v0.0.47
4
+
5
+ - Handle existing socket file conflicts gracefully by implementing logic to
6
+ detect and manage conflicts
7
+ - Added user prompt to remove stale socket files when conflicts occur during
8
+ socket creation
9
+ - Improved error handling for `Errno::EEXIST` exceptions during socket creation
10
+ process
11
+ - Enhanced user experience with clear warnings and recovery options for socket
12
+ file conflicts
13
+ - Socket file cleanup now uses `FileUtils.rm_f` for safe removal of conflicting
14
+ files
15
+ - Added retry mechanism after successful socket file removal to ensure proper
16
+ socket creation
17
+ - Exit with error code **1** when user declines socket file removal prompt
18
+ - Add changelog file to gem distribution using `GemHadar` with filename
19
+ `CHANGES.md`
20
+ - Update `unix_socks` dependency to include minimum version **0.2.2** by
21
+ bumping `gem_hadar` development dependency to **>= 2.16.0** in
22
+ `ollama_chat.gemspec`
23
+
24
+ ## 2025-12-20 v0.0.46
25
+
26
+ - Updated `rake` command in `.all_images.yml` to use `bundle exec rake spec`
27
+ for consistent test execution
28
+ - Added `bigdecimal` dependency with version **3.1** to ensure proper decimal
29
+ arithmetic operations
30
+ - Updated test expectation for `puts` to include an empty string parameter in the argument list
31
+ - Updated `documentrix` dependency to version **0.0.4** or higher for runtime dependencies
32
+ - Updated `ollama-ruby` dependency from version **1.16** to **1.18** and then to **1.19**
33
+ - Updated `unix_socks` dependency from version **0.1** to **1.2**
34
+ - Updated required Ruby version from `~> 3.2` to `>= 3.2` to allow usage with Ruby **3.2** and higher
35
+ - Added Ruby **4.0-rc** image configuration with script settings
36
+ - Updated `rubygems` version from **3.7.2** to **4.0.2**
37
+ - Updated `gem_hadar` development dependency from ~> **2.8** to ~> **2.10**
38
+
3
39
  ## 2025-12-10 v0.0.45
4
40
 
5
41
  - Enhanced `OllamaChat::FollowChat` class output formatting
data/Rakefile CHANGED
@@ -28,7 +28,7 @@ GemHadar do
28
28
 
29
29
  readme 'README.md'
30
30
 
31
- required_ruby_version '~> 3.2'
31
+ required_ruby_version '>= 3.2'
32
32
 
33
33
  executables << 'ollama_chat' << 'ollama_chat_send'
34
34
 
@@ -36,10 +36,14 @@ GemHadar do
36
36
  'static.yml' => {}
37
37
  )
38
38
 
39
+ changelog do
40
+ filename 'CHANGES.md'
41
+ end
42
+
39
43
  dependency 'excon', '~> 1.0'
40
- dependency 'ollama-ruby', '~> 1.16'
41
- dependency 'documentrix', '~> 0.0', '>= 0.0.2'
42
- dependency 'unix_socks', '~> 0.1'
44
+ dependency 'ollama-ruby', '~> 1.18'
45
+ dependency 'documentrix', '>= 0.0.4'
46
+ dependency 'unix_socks', '~> 0.2', '>= 0.2.2'
43
47
  dependency 'rss', '~> 0.3'
44
48
  dependency 'term-ansicolor', '~> 1.11'
45
49
  dependency 'redis', '~> 5.0'
@@ -47,10 +51,11 @@ GemHadar do
47
51
  dependency 'reverse_markdown', '~> 3.0'
48
52
  dependency 'kramdown-ansi', '~> 0.3'
49
53
  dependency 'complex_config', '~> 0.22', '>= 0.22.2'
50
- dependency 'tins', '~> 1.47'
54
+ dependency 'tins', '~> 1.51'
51
55
  dependency 'search_ui', '~> 0.0'
52
56
  dependency 'amatch', '~> 0.4'
53
57
  dependency 'pdf-reader', '~> 2.0'
58
+ dependency 'bigdecimal', '~> 3.1'
54
59
  dependency 'csv', '~> 3.0'
55
60
  dependency 'const_conf', '~> 0.3'
56
61
  development_dependency 'all_images', '~> 0.6'
@@ -1,4 +1,5 @@
1
1
  require 'digest/md5'
2
+ require 'fileutils'
2
3
 
3
4
  # A module that provides server socket functionality for OllamaChat
4
5
  #
@@ -106,5 +107,19 @@ module OllamaChat::ServerSocket
106
107
  self.server_socket_message = message
107
108
  Process.kill :INT, $$
108
109
  end
110
+ rescue Errno::EEXIST
111
+ socket_path = server.server_socket_path
112
+ STDERR.puts <<~EOT
113
+ Warning! Socket file exists at: #{socket_path}
114
+ This may indicate that another #{File.basename($0)} process is already
115
+ running using the same directory or that a previous process left a stale
116
+ socket file.
117
+ EOT
118
+ if ask?(prompt: 'Do you want to remove the existing socket file and continue? (y/n) ') =~ /\Ay/i
119
+ FileUtils.rm_f socket_path
120
+ retry
121
+ else
122
+ exit 1
123
+ end
109
124
  end
110
125
  end
@@ -1,6 +1,6 @@
1
1
  module OllamaChat
2
2
  # OllamaChat version
3
- VERSION = '0.0.45'
3
+ VERSION = '0.0.47'
4
4
  VERSION_ARRAY = VERSION.split('.').map(&:to_i) # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
data/ollama_chat.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: ollama_chat 0.0.45 ruby lib
2
+ # stub: ollama_chat 0.0.47 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "ollama_chat".freeze
6
- s.version = "0.0.45".freeze
6
+ s.version = "0.0.47".freeze
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib".freeze]
@@ -17,14 +17,14 @@ Gem::Specification.new do |s|
17
17
  s.homepage = "https://github.com/flori/ollama_chat".freeze
18
18
  s.licenses = ["MIT".freeze]
19
19
  s.rdoc_options = ["--title".freeze, "OllamaChat - A command-line interface (CLI) for interacting with an Ollama AI model.".freeze, "--main".freeze, "README.md".freeze]
20
- s.required_ruby_version = Gem::Requirement.new("~> 3.2".freeze)
21
- s.rubygems_version = "3.7.2".freeze
20
+ s.required_ruby_version = Gem::Requirement.new(">= 3.2".freeze)
21
+ s.rubygems_version = "4.0.2".freeze
22
22
  s.summary = "A command-line interface (CLI) for interacting with an Ollama AI model.".freeze
23
23
  s.test_files = ["spec/assets/example.rb".freeze, "spec/ollama_chat/chat_spec.rb".freeze, "spec/ollama_chat/clipboard_spec.rb".freeze, "spec/ollama_chat/follow_chat_spec.rb".freeze, "spec/ollama_chat/information_spec.rb".freeze, "spec/ollama_chat/kramdown_ansi_spec.rb".freeze, "spec/ollama_chat/message_list_spec.rb".freeze, "spec/ollama_chat/message_output_spec.rb".freeze, "spec/ollama_chat/model_handling_spec.rb".freeze, "spec/ollama_chat/parsing_spec.rb".freeze, "spec/ollama_chat/server_socket_spec.rb".freeze, "spec/ollama_chat/source_fetching_spec.rb".freeze, "spec/ollama_chat/switches_spec.rb".freeze, "spec/ollama_chat/utils/cache_fetcher_spec.rb".freeze, "spec/ollama_chat/utils/fetcher_spec.rb".freeze, "spec/ollama_chat/utils/file_argument_spec.rb".freeze, "spec/ollama_chat/web_searching_spec.rb".freeze, "spec/spec_helper.rb".freeze]
24
24
 
25
25
  s.specification_version = 4
26
26
 
27
- s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 2.8".freeze])
27
+ s.add_development_dependency(%q<gem_hadar>.freeze, [">= 2.16.0".freeze])
28
28
  s.add_development_dependency(%q<all_images>.freeze, ["~> 0.6".freeze])
29
29
  s.add_development_dependency(%q<rspec>.freeze, ["~> 3.2".freeze])
30
30
  s.add_development_dependency(%q<kramdown>.freeze, ["~> 2.0".freeze])
@@ -33,9 +33,9 @@ Gem::Specification.new do |s|
33
33
  s.add_development_dependency(%q<simplecov>.freeze, [">= 0".freeze])
34
34
  s.add_development_dependency(%q<context_spook>.freeze, [">= 0".freeze])
35
35
  s.add_runtime_dependency(%q<excon>.freeze, ["~> 1.0".freeze])
36
- s.add_runtime_dependency(%q<ollama-ruby>.freeze, ["~> 1.16".freeze])
37
- s.add_runtime_dependency(%q<documentrix>.freeze, ["~> 0.0".freeze, ">= 0.0.2".freeze])
38
- s.add_runtime_dependency(%q<unix_socks>.freeze, ["~> 0.1".freeze])
36
+ s.add_runtime_dependency(%q<ollama-ruby>.freeze, ["~> 1.18".freeze])
37
+ s.add_runtime_dependency(%q<documentrix>.freeze, [">= 0.0.4".freeze])
38
+ s.add_runtime_dependency(%q<unix_socks>.freeze, ["~> 0.2".freeze, ">= 0.2.2".freeze])
39
39
  s.add_runtime_dependency(%q<rss>.freeze, ["~> 0.3".freeze])
40
40
  s.add_runtime_dependency(%q<term-ansicolor>.freeze, ["~> 1.11".freeze])
41
41
  s.add_runtime_dependency(%q<redis>.freeze, ["~> 5.0".freeze])
@@ -43,10 +43,11 @@ Gem::Specification.new do |s|
43
43
  s.add_runtime_dependency(%q<reverse_markdown>.freeze, ["~> 3.0".freeze])
44
44
  s.add_runtime_dependency(%q<kramdown-ansi>.freeze, ["~> 0.3".freeze])
45
45
  s.add_runtime_dependency(%q<complex_config>.freeze, ["~> 0.22".freeze, ">= 0.22.2".freeze])
46
- s.add_runtime_dependency(%q<tins>.freeze, ["~> 1.47".freeze])
46
+ s.add_runtime_dependency(%q<tins>.freeze, ["~> 1.51".freeze])
47
47
  s.add_runtime_dependency(%q<search_ui>.freeze, ["~> 0.0".freeze])
48
48
  s.add_runtime_dependency(%q<amatch>.freeze, ["~> 0.4".freeze])
49
49
  s.add_runtime_dependency(%q<pdf-reader>.freeze, ["~> 2.0".freeze])
50
+ s.add_runtime_dependency(%q<bigdecimal>.freeze, ["~> 3.1".freeze])
50
51
  s.add_runtime_dependency(%q<csv>.freeze, ["~> 3.0".freeze])
51
52
  s.add_runtime_dependency(%q<const_conf>.freeze, ["~> 0.3".freeze])
52
53
  end
@@ -43,7 +43,7 @@ describe OllamaChat::FollowChat do
43
43
  prompt_eval_count: 7,
44
44
  load_duration: 33.45,
45
45
  )
46
- expect(output).to receive(:puts).with("", /eval_duration/)
46
+ expect(output).to receive(:puts).with("", "", /eval_duration/)
47
47
  follow_chat.call(response)
48
48
  end
49
49
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ollama_chat
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.45
4
+ version: 0.0.47
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Frank
@@ -13,16 +13,16 @@ dependencies:
13
13
  name: gem_hadar
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
- - - "~>"
16
+ - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '2.8'
18
+ version: 2.16.0
19
19
  type: :development
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: '2.8'
25
+ version: 2.16.0
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: all_images
28
28
  requirement: !ruby/object:Gem::Requirement
@@ -141,48 +141,48 @@ dependencies:
141
141
  requirements:
142
142
  - - "~>"
143
143
  - !ruby/object:Gem::Version
144
- version: '1.16'
144
+ version: '1.18'
145
145
  type: :runtime
146
146
  prerelease: false
147
147
  version_requirements: !ruby/object:Gem::Requirement
148
148
  requirements:
149
149
  - - "~>"
150
150
  - !ruby/object:Gem::Version
151
- version: '1.16'
151
+ version: '1.18'
152
152
  - !ruby/object:Gem::Dependency
153
153
  name: documentrix
154
154
  requirement: !ruby/object:Gem::Requirement
155
155
  requirements:
156
- - - "~>"
157
- - !ruby/object:Gem::Version
158
- version: '0.0'
159
156
  - - ">="
160
157
  - !ruby/object:Gem::Version
161
- version: 0.0.2
158
+ version: 0.0.4
162
159
  type: :runtime
163
160
  prerelease: false
164
161
  version_requirements: !ruby/object:Gem::Requirement
165
162
  requirements:
166
- - - "~>"
167
- - !ruby/object:Gem::Version
168
- version: '0.0'
169
163
  - - ">="
170
164
  - !ruby/object:Gem::Version
171
- version: 0.0.2
165
+ version: 0.0.4
172
166
  - !ruby/object:Gem::Dependency
173
167
  name: unix_socks
174
168
  requirement: !ruby/object:Gem::Requirement
175
169
  requirements:
176
170
  - - "~>"
177
171
  - !ruby/object:Gem::Version
178
- version: '0.1'
172
+ version: '0.2'
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ version: 0.2.2
179
176
  type: :runtime
180
177
  prerelease: false
181
178
  version_requirements: !ruby/object:Gem::Requirement
182
179
  requirements:
183
180
  - - "~>"
184
181
  - !ruby/object:Gem::Version
185
- version: '0.1'
182
+ version: '0.2'
183
+ - - ">="
184
+ - !ruby/object:Gem::Version
185
+ version: 0.2.2
186
186
  - !ruby/object:Gem::Dependency
187
187
  name: rss
188
188
  requirement: !ruby/object:Gem::Requirement
@@ -293,14 +293,14 @@ dependencies:
293
293
  requirements:
294
294
  - - "~>"
295
295
  - !ruby/object:Gem::Version
296
- version: '1.47'
296
+ version: '1.51'
297
297
  type: :runtime
298
298
  prerelease: false
299
299
  version_requirements: !ruby/object:Gem::Requirement
300
300
  requirements:
301
301
  - - "~>"
302
302
  - !ruby/object:Gem::Version
303
- version: '1.47'
303
+ version: '1.51'
304
304
  - !ruby/object:Gem::Dependency
305
305
  name: search_ui
306
306
  requirement: !ruby/object:Gem::Requirement
@@ -343,6 +343,20 @@ dependencies:
343
343
  - - "~>"
344
344
  - !ruby/object:Gem::Version
345
345
  version: '2.0'
346
+ - !ruby/object:Gem::Dependency
347
+ name: bigdecimal
348
+ requirement: !ruby/object:Gem::Requirement
349
+ requirements:
350
+ - - "~>"
351
+ - !ruby/object:Gem::Version
352
+ version: '3.1'
353
+ type: :runtime
354
+ prerelease: false
355
+ version_requirements: !ruby/object:Gem::Requirement
356
+ requirements:
357
+ - - "~>"
358
+ - !ruby/object:Gem::Version
359
+ version: '3.1'
346
360
  - !ruby/object:Gem::Dependency
347
361
  name: csv
348
362
  requirement: !ruby/object:Gem::Requirement
@@ -505,7 +519,7 @@ require_paths:
505
519
  - lib
506
520
  required_ruby_version: !ruby/object:Gem::Requirement
507
521
  requirements:
508
- - - "~>"
522
+ - - ">="
509
523
  - !ruby/object:Gem::Version
510
524
  version: '3.2'
511
525
  required_rubygems_version: !ruby/object:Gem::Requirement
@@ -514,7 +528,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
514
528
  - !ruby/object:Gem::Version
515
529
  version: '0'
516
530
  requirements: []
517
- rubygems_version: 3.7.2
531
+ rubygems_version: 4.0.2
518
532
  specification_version: 4
519
533
  summary: A command-line interface (CLI) for interacting with an Ollama AI model.
520
534
  test_files: