kirei 0.9.2 → 0.9.3

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: f515625a7b5fda4fb1218d126c8c1c98c720186176d0b5eb3c01a2330de49017
4
- data.tar.gz: b47e63f5d3f9298523809f151040ed5fd78168ffb7616645a48b45f0b02ad74a
3
+ metadata.gz: e4a3c571b78f3b40e68be644fd1600d01e4d4cc6d4801ff391bd19d2f4c9b309
4
+ data.tar.gz: 38e2ebe1345eea2e527f9538627436d1aa15970ccf4cc2531d0a18a371589bd9
5
5
  SHA512:
6
- metadata.gz: 6eb332b813b427ecfaca012b17b3ba18729f7569fdb08544ee65bd5b52e6e20671e1c0185abee8dfd6d191ed4ce22d001bb1c2c2d8281bd96a2809ea151f7447
7
- data.tar.gz: 35d98ccc9bd0f1bc9d81425229925c02e666a9d973d956bdd57ed181384c53e890feb30ae24e4225cc4ed5ea68e173d86cc1163d60e5075f74f60802a2dd50de
6
+ metadata.gz: b9f0950c53791800f8815ea62c7b5f3f97697b9f6f8095070f49d80a35dfccee84d5b47ab6d5ec34864f9d25bc7c542b9e2cf9ebfd61bc6d9b84d5ad2dee7bf2
7
+ data.tar.gz: c842729e9d31eceff4e4c50d592ed592658156632b7353707030c7e07064b216d3530116405f957b16ce00f9ea9be24ae4b8edeb28c1bfe9b7924e3ac7b69a2d
data/README.md CHANGED
@@ -6,7 +6,7 @@ Kirei's main advantages over other frameworks are its strict typing, low memory
6
6
 
7
7
  > Kirei (きれい) is a Japanese adjective that primarily means "beautiful" or "pretty." It can also be used to describe something that is "clean" or "neat."
8
8
 
9
- 👉 AI-generated wiki available on [DeepWiki.com](https://deepwiki.com/swiknaba/kirei).
9
+ 👉 AI-generated wiki available on [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/swiknaba/kirei)
10
10
 
11
11
  ## Why another Ruby framework?
12
12
 
@@ -23,6 +23,7 @@ module Kirei
23
23
 
24
24
  sig { params(env: RackEnvType).returns(RackResponseType) }
25
25
  def call(env)
26
+ statsd_timing_tags = T.let({}, T::Hash[String, T.untyped])
26
27
  start = Process.clock_gettime(Process::CLOCK_MONOTONIC, :float_millisecond)
27
28
  status = 500 # we use it in the "ensure" block, so we need to define early (Sorbet doesn't like `status ||= 418`)
28
29
 
@@ -90,11 +91,8 @@ module Kirei
90
91
  },
91
92
  )
92
93
 
93
- statsd_timing_tags = {
94
- "controller" => controller.name,
95
- "route" => route.action,
96
- }
97
- Logging::Metric.inject_defaults(statsd_timing_tags)
94
+ statsd_timing_tags["controller"] = controller.name
95
+ statsd_timing_tags["route"] = route.action
98
96
 
99
97
  status, headers, response_body = case http_verb
100
98
  when Verb::HEAD, Verb::OPTIONS, Verb::TRACE, Verb::CONNECT
@@ -126,8 +124,9 @@ module Kirei
126
124
  ]
127
125
  ensure
128
126
  stop = Process.clock_gettime(Process::CLOCK_MONOTONIC, :float_millisecond)
129
- if start # early return for 404
127
+ if start && statsd_timing_tags # early return for 404
130
128
  latency_in_ms = stop - start
129
+ Logging::Metric.inject_defaults(statsd_timing_tags)
131
130
  App.config.metrics_backend.measure("request", latency_in_ms, tags: statsd_timing_tags)
132
131
 
133
132
  Kirei::Logging::Logger.call(
data/lib/kirei/version.rb CHANGED
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module Kirei
5
- VERSION = "0.9.2"
5
+ VERSION = "0.9.3"
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kirei
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
4
+ version: 0.9.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ludwig Reinmiedl