stack-service-base 0.0.41 → 0.0.43

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: 57f6986e2b0af7274d88d02271380e15e4b36023eba82a12a365089df93ae282
4
- data.tar.gz: 11a89bb1fd1a2c8ec4ff862ab737f5f9040a4861e46ea68b871b255738071a93
3
+ metadata.gz: a670d387ec1edda06519a4c51253cb3d95feabb4b1ffab3d3441dfe8e9cfbd27
4
+ data.tar.gz: bdfd38f6d1ba5c8d3557428f3c4225a357e8d2fd33b0966af4064ab4873442f5
5
5
  SHA512:
6
- metadata.gz: 00c30180960fa2df2be60564508524d7958d99933014555a920af23c53367b92951038cbbc429a2ed6d12f8bf9bd51bb09c83447638fba32b3b47f265f9ca05b
7
- data.tar.gz: 86118fcf28ab9a9edb5791558a78a00671f670e901b1fadecd5c3a07a9c264682d8b68c386b3543f7bccedb66da757c09aa47cd0bf7801c9969438de0bf87a23
6
+ metadata.gz: f4fa3e8377585fe010e2a676b844ae83c0792c8b66cc15c3bc5c7a08c3b23c21081bc3530c11412718d03785a9fadc86adc34a476704d9264ffd8af97544f89e
7
+ data.tar.gz: 0e6af2cef996f0c35c8048a09fb42a8a6aca0809eb02d3c02a196132b4df034fdce261281276989d7af573af53d6473aa7fe7be9b3bf3706998293b8b1ae57f4
@@ -17,6 +17,10 @@ CONSOLE_LOGGER = Class.new {
17
17
  def warn(...) = Console.logger.warn(...)
18
18
  def error(...) = Console.logger.error(...)
19
19
  def fatal(...) = Console.logger.fatal(...)
20
+ def exception(e)
21
+ backtrace = e.backtrace.join "\n" rescue ''
22
+ Console.logger.fatal(e.message, backtrace)
23
+ end
20
24
  }.new
21
25
 
22
26
  if QUIET
@@ -109,7 +113,14 @@ else
109
113
 
110
114
  def fatal(...) = do_log(:fatal, ...)
111
115
 
112
- def do_log(name, *args)
116
+ def exception(e)
117
+ backtrace = e.backtrace.join "\n" rescue ''
118
+ do_log(:fatal, e.message, backtrace)
119
+ end
120
+
121
+ def do_log(name, prefix_, *args)
122
+ prefix = prefix_.class == String ? prefix_ : prefix_.inspect
123
+
113
124
  debug_level = name[/(\d+)/, 1].to_i
114
125
  unless debug_level > LOG_DEPTH
115
126
  if TRACE_METHODS
@@ -117,13 +128,13 @@ else
117
128
  call_stack_fiber = call_stack[Fiber.current.__id__] ||= []
118
129
  last = call_stack_fiber[-3] ? call_stack_fiber[-3].join('.').gsub('Class:', '').gsub(/[#<>]/, '') : ''
119
130
  last += find_context
120
- msg = "\e[33m#{last}:\e[0m \e[38;5;254m" + args.flatten.map(&:inspect).join(', ')
131
+ msg = "\e[33m#{last}:\e[0m \e[38;5;254m#{prefix}"
121
132
  else
122
- msg = args.flatten.map(&:inspect).join(', ')
133
+ msg = "#{prefix}"
123
134
  end
124
135
  _name = name.to_s.gsub(/\d/, '')
125
136
  _name = 'info' if _name == '<<'
126
- Console.logger.send _name.to_s.gsub(/\d/, ''), msg
137
+ Console.logger.send _name.to_s.gsub(/\d/, ''), msg, *args
127
138
  end
128
139
  end
129
140
  }.new
File without changes
@@ -7,6 +7,17 @@ if Bundler.definition.specs.any? { |spec| spec.name == 'sinatra' }
7
7
 
8
8
  module Sinatra
9
9
  module SSBaseSinatra
10
+ module AddPublic
11
+ def static!(options={})
12
+ super
13
+ path = File.expand_path "#{__dir__}/public/#{Sinatra::Base::URI_INSTANCE.unescape(request.path_info)}"
14
+ return unless File.file?(path)
15
+
16
+ env['sinatra.static_file'] = path
17
+ cache_control(*settings.static_cache_control) if settings.static_cache_control?
18
+ send_file path, options.merge(disposition: nil)
19
+ end
20
+ end
10
21
  module FindTemplate
11
22
  def find_template(views, name, engine, &block)
12
23
  super
@@ -21,6 +32,9 @@ if Bundler.definition.specs.any? { |spec| spec.name == 'sinatra' }
21
32
  def self.registered(app)
22
33
  # app.helpers MyHelpers
23
34
  Sinatra::Templates.prepend FindTemplate
35
+ Sinatra::Base.prepend AddPublic
36
+ app.set :static, true
37
+
24
38
  app.get '/ssbase_info' do
25
39
  slim :ssbase_info
26
40
  end
@@ -1,3 +1,3 @@
1
1
  module StackServiceBase
2
- VERSION = '0.0.41'
2
+ VERSION = '0.0.43'
3
3
  end
@@ -1,3 +1,11 @@
1
+ script src='/ssbase/main.js'
2
+
1
3
  h1 SSBase info
2
- p
3
- | version = #{StackServiceBase::VERSION}
4
+ pre _
5
+ version = #{StackServiceBase::VERSION}
6
+ OTEL_ENABLED = #{::OTEL_ENABLED}
7
+ PERFORMANCE = #{::PERFORMANCE}
8
+ QUIET = #{::QUIET}
9
+ NATS_ENABLED = #{::NATS_ENABLED}
10
+ CONSOLE_LEVEL = #{ENV['CONSOLE_LEVEL']}
11
+ CONSOLE_OUTPUT = #{ENV['CONSOLE_OUTPUT']}
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stack-service-base
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.41
4
+ version: 0.0.43
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artyom B
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-09-29 00:00:00.000000000 Z
11
+ date: 2025-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
@@ -244,6 +244,7 @@ files:
244
244
  - lib/stack-service-base/project_template/home/src/spec/spec_helper.rb
245
245
  - lib/stack-service-base/prometheus.rb
246
246
  - lib/stack-service-base/prometheus_parser.rb
247
+ - lib/stack-service-base/public/ssbase/main.js
247
248
  - lib/stack-service-base/rack_helpers.rb
248
249
  - lib/stack-service-base/sinatra_ext.rb
249
250
  - lib/stack-service-base/version.rb