shipeasy-sdk 1.7.0 → 2.1.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 +87 -268
- data/bin/shipeasy-skill +8 -0
- data/docs/skill/SKILL.md +148 -0
- data/lib/shipeasy/client.rb +71 -0
- data/lib/shipeasy/config.rb +271 -5
- data/lib/shipeasy/{sdk/flags_client.rb → engine.rb} +56 -11
- data/lib/shipeasy/sdk/anon_id.rb +1 -1
- data/lib/shipeasy/sdk/openfeature.rb +42 -15
- data/lib/shipeasy/sdk/skill.rb +76 -0
- data/lib/shipeasy/sdk/version.rb +1 -1
- data/lib/shipeasy-sdk.rb +8 -7
- metadata +9 -4
data/lib/shipeasy-sdk.rb
CHANGED
|
@@ -3,7 +3,8 @@ require_relative "shipeasy/config"
|
|
|
3
3
|
require_relative "shipeasy/sdk/murmur3"
|
|
4
4
|
require_relative "shipeasy/sdk/eval"
|
|
5
5
|
require_relative "shipeasy/sdk/sticky_store"
|
|
6
|
-
require_relative "shipeasy/
|
|
6
|
+
require_relative "shipeasy/engine"
|
|
7
|
+
require_relative "shipeasy/client"
|
|
7
8
|
require_relative "shipeasy/sdk/anon_id"
|
|
8
9
|
require_relative "shipeasy/sdk/rack_middleware"
|
|
9
10
|
require_relative "shipeasy/i18n/label_fetcher"
|
|
@@ -19,16 +20,16 @@ end
|
|
|
19
20
|
|
|
20
21
|
module Shipeasy
|
|
21
22
|
module SDK
|
|
22
|
-
# Convenience constructor. Reads api_key + base_url
|
|
23
|
-
# config when omitted
|
|
24
|
-
#
|
|
23
|
+
# Convenience constructor for a heavyweight Engine. Reads api_key + base_url
|
|
24
|
+
# from the gem-wide config when omitted. Most apps should prefer
|
|
25
|
+
# `Shipeasy.configure { … }` + `Shipeasy::Client.new(user)` instead.
|
|
25
26
|
def self.new_client(api_key: Shipeasy.config.api_key, base_url: Shipeasy.config.base_url)
|
|
26
|
-
|
|
27
|
+
Shipeasy::Engine.new(api_key: api_key, base_url: base_url)
|
|
27
28
|
end
|
|
28
29
|
|
|
29
30
|
# ---- see() module-level facade --------------------------------------
|
|
30
31
|
#
|
|
31
|
-
# Backed by a default client, registered when
|
|
32
|
+
# Backed by a default client, registered when an Engine is constructed
|
|
32
33
|
# (last constructed wins). Mirrors the package-level see() in the TS/Python
|
|
33
34
|
# SDKs so callers can `Shipeasy::SDK.see(e).causes_the(...).to(...)` without
|
|
34
35
|
# threading a client reference through every call site. A call before any
|
|
@@ -38,7 +39,7 @@ module Shipeasy
|
|
|
38
39
|
@see_default_mutex = Mutex.new
|
|
39
40
|
|
|
40
41
|
# Register the client backing the module-level see() funcs. Called
|
|
41
|
-
# automatically from
|
|
42
|
+
# automatically from Engine#initialize; also exposed for explicit use.
|
|
42
43
|
def self.set_default_client(client)
|
|
43
44
|
@see_default_mutex.synchronize { @see_default_client = client }
|
|
44
45
|
client
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: shipeasy-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 2.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Shipeasy, Inc.
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-06-
|
|
11
|
+
date: 2026-06-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rspec
|
|
@@ -58,25 +58,30 @@ description: Server SDK for Shipeasy. Polls /sdk/flags and /sdk/experiments, eva
|
|
|
58
58
|
/ i18n_t view helpers for the Shipeasy string-manager CDN.
|
|
59
59
|
email:
|
|
60
60
|
- sdk@shipeasy.ai
|
|
61
|
-
executables:
|
|
61
|
+
executables:
|
|
62
|
+
- shipeasy-skill
|
|
62
63
|
extensions: []
|
|
63
64
|
extra_rdoc_files: []
|
|
64
65
|
files:
|
|
65
66
|
- LICENSE
|
|
66
67
|
- README.md
|
|
68
|
+
- bin/shipeasy-skill
|
|
69
|
+
- docs/skill/SKILL.md
|
|
67
70
|
- lib/shipeasy-sdk.rb
|
|
71
|
+
- lib/shipeasy/client.rb
|
|
68
72
|
- lib/shipeasy/config.rb
|
|
73
|
+
- lib/shipeasy/engine.rb
|
|
69
74
|
- lib/shipeasy/i18n/label_fetcher.rb
|
|
70
75
|
- lib/shipeasy/i18n/railtie.rb
|
|
71
76
|
- lib/shipeasy/i18n/view_helpers.rb
|
|
72
77
|
- lib/shipeasy/sdk/anon_id.rb
|
|
73
78
|
- lib/shipeasy/sdk/eval.rb
|
|
74
|
-
- lib/shipeasy/sdk/flags_client.rb
|
|
75
79
|
- lib/shipeasy/sdk/murmur3.rb
|
|
76
80
|
- lib/shipeasy/sdk/openfeature.rb
|
|
77
81
|
- lib/shipeasy/sdk/rack_middleware.rb
|
|
78
82
|
- lib/shipeasy/sdk/railtie.rb
|
|
79
83
|
- lib/shipeasy/sdk/see.rb
|
|
84
|
+
- lib/shipeasy/sdk/skill.rb
|
|
80
85
|
- lib/shipeasy/sdk/sticky_store.rb
|
|
81
86
|
- lib/shipeasy/sdk/telemetry.rb
|
|
82
87
|
- lib/shipeasy/sdk/version.rb
|