tina4ruby 3.13.85 → 3.13.86

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.
data/lib/tina4/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Tina4
4
- VERSION = "3.13.85"
4
+ VERSION = "3.13.86"
5
5
  end
data/lib/tina4.rb CHANGED
@@ -30,7 +30,6 @@ require_relative "tina4/shutdown"
30
30
  require_relative "tina4/background"
31
31
  require_relative "tina4/localization"
32
32
  require_relative "tina4/container"
33
- require_relative "tina4/queue"
34
33
  require_relative "tina4/service"
35
34
  require_relative "tina4/service_runner"
36
35
  require_relative "tina4/events"
@@ -38,7 +37,6 @@ require_relative "tina4/plan"
38
37
  require_relative "tina4/project_index"
39
38
  require_relative "tina4/dev_admin"
40
39
  require_relative "tina4/feedback"
41
- require_relative "tina4/messenger"
42
40
  require_relative "tina4/dev_mailbox"
43
41
  require_relative "tina4/ai"
44
42
  require_relative "tina4/cache"
@@ -50,7 +48,6 @@ require_relative "tina4/error_overlay"
50
48
  require_relative "tina4/test_client"
51
49
  require_relative "tina4/test"
52
50
  require_relative "tina4/docs"
53
- require_relative "tina4/docstore"
54
51
  require_relative "tina4/context"
55
52
  require_relative "tina4/mcp"
56
53
  require_relative "tina4/realtime"
@@ -113,6 +110,26 @@ module Tina4
113
110
  autoload :MqttTimeoutError, File.expand_path("tina4/mqtt", __dir__)
114
111
  autoload :MqttMessage, File.expand_path("tina4/mqtt_message", __dir__)
115
112
  autoload :Testing, File.expand_path("tina4/testing", __dir__)
113
+ # Queue / Messenger / DocStore were the last three optional subsystems still
114
+ # loaded eagerly, so every `require "tina4"` paid for a queue backend, an
115
+ # SMTP/IMAP client and a JSON1 document store even in an app that talks to
116
+ # none of them. Every reference to them across the framework is inside a
117
+ # method body (CLI commands, dev-admin handlers, MCP tools), so autoload
118
+ # resolves them on first real use. `defined?(Tina4::Queue)` still answers
119
+ # "constant" against an autoload entry WITHOUT triggering the load, so the
120
+ # `if defined?(Tina4::Queue)` guards in dev_admin keep working and stay lazy.
121
+ # queue.rb defines Job as well as Queue -- BOTH need an entry. An autoload
122
+ # table is explicit where a `require` was implicit, so every constant a
123
+ # newly-lazy file defines has to be listed or it becomes a NameError. Missing
124
+ # Job here took the whole spec suite down to 0 examples.
125
+ autoload :Queue, File.expand_path("tina4/queue", __dir__)
126
+ autoload :Job, File.expand_path("tina4/queue", __dir__)
127
+ autoload :Messenger, File.expand_path("tina4/messenger", __dir__)
128
+ autoload :MessengerError, File.expand_path("tina4/messenger", __dir__)
129
+ autoload :MessengerConnectionError, File.expand_path("tina4/messenger", __dir__)
130
+ autoload :DevMessengerProxy, File.expand_path("tina4/messenger", __dir__)
131
+ autoload :IMAP_CONNECTION_ERRORS, File.expand_path("tina4/messenger", __dir__)
132
+ autoload :DocStore, File.expand_path("tina4/docstore", __dir__)
116
133
  autoload :ScssCompiler, File.expand_path("tina4/scss_compiler", __dir__)
117
134
  autoload :FakeData, File.expand_path("tina4/seeder", __dir__)
118
135
  autoload :WSDL, File.expand_path("tina4/wsdl", __dir__)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tina4ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.13.85
4
+ version: 3.13.86
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tina4 Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-07-24 00:00:00.000000000 Z
11
+ date: 2026-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack