mudis 0.6.0 → 0.7.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 +4 -4
- data/README.md +695 -590
- data/lib/example_mudis_server_config.md +39 -0
- data/lib/mudis/version.rb +3 -3
- data/lib/mudis.rb +521 -521
- data/lib/mudis_client.rb +68 -0
- data/lib/mudis_config.rb +25 -25
- data/lib/mudis_server.rb +79 -0
- data/sig/mudis.rbs +56 -56
- data/sig/mudis_config.rbs +10 -10
- data/spec/eviction_spec.rb +29 -29
- data/spec/guardrails_spec.rb +138 -138
- data/spec/memory_guard_spec.rb +33 -33
- data/spec/metrics_spec.rb +34 -34
- data/spec/mudis_spec.rb +183 -183
- data/spec/namespace_spec.rb +69 -69
- data/spec/reset_spec.rb +31 -31
- metadata +6 -7
data/spec/reset_spec.rb
CHANGED
@@ -1,31 +1,31 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "spec_helper"
|
4
|
-
|
5
|
-
RSpec.describe "Mudis Reset Features" do
|
6
|
-
before { Mudis.reset! }
|
7
|
-
|
8
|
-
describe ".reset!" do
|
9
|
-
it "clears all stores, memory, and metrics" do
|
10
|
-
Mudis.write("reset_key", "value")
|
11
|
-
expect(Mudis.read("reset_key")).to eq("value")
|
12
|
-
Mudis.reset!
|
13
|
-
expect(Mudis.metrics[:hits]).to eq(0)
|
14
|
-
expect(Mudis.all_keys).to be_empty
|
15
|
-
expect(Mudis.read("reset_key")).to be_nil
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
describe ".reset_metrics!" do
|
20
|
-
it "resets only the metrics without clearing cache" do
|
21
|
-
Mudis.write("metrics_key", "value")
|
22
|
-
Mudis.read("metrics_key")
|
23
|
-
Mudis.read("missing_key")
|
24
|
-
expect(Mudis.metrics[:hits]).to eq(1)
|
25
|
-
expect(Mudis.metrics[:misses]).to eq(1)
|
26
|
-
Mudis.reset_metrics!
|
27
|
-
expect(Mudis.metrics[:hits]).to eq(0)
|
28
|
-
expect(Mudis.read("metrics_key")).to eq("value")
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "spec_helper"
|
4
|
+
|
5
|
+
RSpec.describe "Mudis Reset Features" do
|
6
|
+
before { Mudis.reset! }
|
7
|
+
|
8
|
+
describe ".reset!" do
|
9
|
+
it "clears all stores, memory, and metrics" do
|
10
|
+
Mudis.write("reset_key", "value")
|
11
|
+
expect(Mudis.read("reset_key")).to eq("value")
|
12
|
+
Mudis.reset!
|
13
|
+
expect(Mudis.metrics[:hits]).to eq(0)
|
14
|
+
expect(Mudis.all_keys).to be_empty
|
15
|
+
expect(Mudis.read("reset_key")).to be_nil
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
describe ".reset_metrics!" do
|
20
|
+
it "resets only the metrics without clearing cache" do
|
21
|
+
Mudis.write("metrics_key", "value")
|
22
|
+
Mudis.read("metrics_key")
|
23
|
+
Mudis.read("missing_key")
|
24
|
+
expect(Mudis.metrics[:hits]).to eq(1)
|
25
|
+
expect(Mudis.metrics[:misses]).to eq(1)
|
26
|
+
Mudis.reset_metrics!
|
27
|
+
expect(Mudis.metrics[:hits]).to eq(0)
|
28
|
+
expect(Mudis.read("metrics_key")).to eq("value")
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mudis
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- kiebor81
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date: 2025-
|
10
|
+
date: 2025-10-21 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: climate_control
|
@@ -41,7 +40,6 @@ dependencies:
|
|
41
40
|
description: Mudis is a fast, thread-safe, in-memory, sharded LRU cache for Ruby applications.
|
42
41
|
Inspired by Redis, it provides value serialization, optional compression, per-key
|
43
42
|
expiry, and metric tracking in a lightweight, dependency-free package.
|
44
|
-
email:
|
45
43
|
executables: []
|
46
44
|
extensions: []
|
47
45
|
extra_rdoc_files:
|
@@ -49,9 +47,12 @@ extra_rdoc_files:
|
|
49
47
|
- sig/mudis_config.rbs
|
50
48
|
files:
|
51
49
|
- README.md
|
50
|
+
- lib/example_mudis_server_config.md
|
52
51
|
- lib/mudis.rb
|
53
52
|
- lib/mudis/version.rb
|
53
|
+
- lib/mudis_client.rb
|
54
54
|
- lib/mudis_config.rb
|
55
|
+
- lib/mudis_server.rb
|
55
56
|
- sig/mudis.rbs
|
56
57
|
- sig/mudis_config.rbs
|
57
58
|
- spec/eviction_spec.rb
|
@@ -65,7 +66,6 @@ homepage: https://github.com/kiebor81/mudis
|
|
65
66
|
licenses:
|
66
67
|
- MIT
|
67
68
|
metadata: {}
|
68
|
-
post_install_message:
|
69
69
|
rdoc_options: []
|
70
70
|
require_paths:
|
71
71
|
- lib
|
@@ -80,8 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
80
80
|
- !ruby/object:Gem::Version
|
81
81
|
version: '0'
|
82
82
|
requirements: []
|
83
|
-
rubygems_version: 3.
|
84
|
-
signing_key:
|
83
|
+
rubygems_version: 3.6.2
|
85
84
|
specification_version: 4
|
86
85
|
summary: A fast in-memory, thread-safe and high performance Ruby LRU cache with compression
|
87
86
|
and auto-expiry.
|