optify-config 1.21.1 → 1.22.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/ext/optify_ruby/Cargo.toml +3 -3
- data/ext/optify_ruby/src/lib.rs +15 -6
- data/ext/optify_ruby/src/preferences.rs +7 -7
- data/lib/optify_ruby/provider_module.rb +3 -3
- data/rbi/optify.rbi +16 -4
- data/sig/optify.rbs +13 -4
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 367040794aae445c29dfb8f3b862646581bae8c80246b466a29b251e9f4a8e8d
|
|
4
|
+
data.tar.gz: 8e2cf0d20283b62deed32e069eb29e386190213b597e8f6d96b72754f0e09cf3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 077d952c13624304ec24741b4e74cd805abfebeb6c57a06a96ac9c6c95cbb84b8261df142f91ebb7e1a0b904c033ebd369e15154fef4ce8dee40c3adad126872
|
|
7
|
+
data.tar.gz: 4a9ce58a9318c72e9b16c30b59d2f5c95fc3a44000d86510c07ec7ae138fc9c865fbaf6bb3679e5fb413ac61633865d90e3fcedfa57db11ed20b827c88323cc2
|
data/ext/optify_ruby/Cargo.toml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "optify_ruby"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.24.0"
|
|
4
4
|
edition = "2021"
|
|
5
5
|
|
|
6
6
|
description = "optify bindings for Ruby"
|
|
@@ -22,6 +22,6 @@ crate-type = ["cdylib"]
|
|
|
22
22
|
[dependencies]
|
|
23
23
|
magnus = "0.8.2"
|
|
24
24
|
# Can't put a relative path here because then others can't install the source gem: https://github.com/juharris/optify/pull/176
|
|
25
|
-
optify = "1.
|
|
25
|
+
optify = "1.3.0"
|
|
26
26
|
rb-sys = { version = "0.9.124", default-features = false, features = ["ruby-static"] }
|
|
27
|
-
serde_json = "1.0.
|
|
27
|
+
serde_json = "1.0.149"
|
data/ext/optify_ruby/src/lib.rs
CHANGED
|
@@ -712,18 +712,27 @@ fn init(ruby: &Ruby) -> Result<(), magnus::Error> {
|
|
|
712
712
|
.define_method("dup", method!(MutGetOptionsPreferences::clone, 0))?;
|
|
713
713
|
get_options_preferences_class.define_method(
|
|
714
714
|
"are_configurable_strings_enabled?",
|
|
715
|
-
method!(
|
|
716
|
-
MutGetOptionsPreferences::are_configurable_strings_enabled,
|
|
717
|
-
0
|
|
718
|
-
),
|
|
715
|
+
method!(MutGetOptionsPreferences::are_configurable_values_enabled, 0),
|
|
719
716
|
)?;
|
|
720
717
|
get_options_preferences_class.define_method(
|
|
721
718
|
"disable_configurable_strings",
|
|
722
|
-
method!(MutGetOptionsPreferences::
|
|
719
|
+
method!(MutGetOptionsPreferences::disable_configurable_values, 0),
|
|
723
720
|
)?;
|
|
724
721
|
get_options_preferences_class.define_method(
|
|
725
722
|
"enable_configurable_strings",
|
|
726
|
-
method!(MutGetOptionsPreferences::
|
|
723
|
+
method!(MutGetOptionsPreferences::enable_configurable_values, 0),
|
|
724
|
+
)?;
|
|
725
|
+
get_options_preferences_class.define_method(
|
|
726
|
+
"are_configurable_values_enabled?",
|
|
727
|
+
method!(MutGetOptionsPreferences::are_configurable_values_enabled, 0),
|
|
728
|
+
)?;
|
|
729
|
+
get_options_preferences_class.define_method(
|
|
730
|
+
"disable_configurable_values",
|
|
731
|
+
method!(MutGetOptionsPreferences::disable_configurable_values, 0),
|
|
732
|
+
)?;
|
|
733
|
+
get_options_preferences_class.define_method(
|
|
734
|
+
"enable_configurable_values",
|
|
735
|
+
method!(MutGetOptionsPreferences::enable_configurable_values, 0),
|
|
727
736
|
)?;
|
|
728
737
|
get_options_preferences_class.define_method(
|
|
729
738
|
"overrides?",
|
|
@@ -17,17 +17,17 @@ impl MutGetOptionsPreferences {
|
|
|
17
17
|
Self(RefCell::new(GetOptionsPreferences::new()))
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
// Configurable
|
|
21
|
-
pub fn
|
|
22
|
-
self.0.borrow().
|
|
20
|
+
// Configurable Values Section
|
|
21
|
+
pub fn are_configurable_values_enabled(&self) -> bool {
|
|
22
|
+
self.0.borrow().are_configurable_values_enabled
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
pub fn
|
|
26
|
-
self.0.borrow_mut().
|
|
25
|
+
pub fn disable_configurable_values(&self) {
|
|
26
|
+
self.0.borrow_mut().are_configurable_values_enabled = false;
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
pub fn
|
|
30
|
-
self.0.borrow_mut().
|
|
29
|
+
pub fn enable_configurable_values(&self) {
|
|
30
|
+
self.0.borrow_mut().are_configurable_values_enabled = true;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
// Constraints Section
|
|
@@ -128,8 +128,8 @@ module Optify
|
|
|
128
128
|
end
|
|
129
129
|
|
|
130
130
|
# Features are filtered, so we don't need the constraints in the cache key.
|
|
131
|
-
|
|
132
|
-
cache_key = [key, feature_names,
|
|
131
|
+
are_configurable_values_enabled = preferences&.are_configurable_values_enabled? || false
|
|
132
|
+
cache_key = [key, feature_names, are_configurable_values_enabled, config_class]
|
|
133
133
|
ProviderModule._cache_getset(
|
|
134
134
|
@cache, #: as !nil
|
|
135
135
|
cache_key,
|
|
@@ -141,7 +141,7 @@ module Optify
|
|
|
141
141
|
# We already know there are no overrides because we checked above.
|
|
142
142
|
cache_miss_preferences = GetOptionsPreferences.new
|
|
143
143
|
cache_miss_preferences.skip_feature_name_conversion = true
|
|
144
|
-
cache_miss_preferences.
|
|
144
|
+
cache_miss_preferences.enable_configurable_values if are_configurable_values_enabled
|
|
145
145
|
|
|
146
146
|
_get_options(key, feature_names, config_class, nil, cache_miss_preferences)
|
|
147
147
|
end
|
data/rbi/optify.rbi
CHANGED
|
@@ -78,19 +78,31 @@ module Optify
|
|
|
78
78
|
|
|
79
79
|
# Preferences when getting options.
|
|
80
80
|
class GetOptionsPreferences
|
|
81
|
-
#
|
|
82
|
-
# They are disabled by default.
|
|
81
|
+
# Deprecated: Use `are_configurable_values_enabled?` instead.
|
|
83
82
|
sig { returns(T::Boolean) }
|
|
84
83
|
def are_configurable_strings_enabled?; end
|
|
85
84
|
|
|
86
|
-
#
|
|
85
|
+
# Deprecated: Use `disable_configurable_values` instead.
|
|
87
86
|
sig { void }
|
|
88
87
|
def disable_configurable_strings; end
|
|
89
88
|
|
|
90
|
-
#
|
|
89
|
+
# Deprecated: Use `enable_configurable_values` instead.
|
|
91
90
|
sig { void }
|
|
92
91
|
def enable_configurable_strings; end
|
|
93
92
|
|
|
93
|
+
# Indicates if configurable values, such as strings and lists, are enabled.
|
|
94
|
+
# They are disabled by default.
|
|
95
|
+
sig { returns(T::Boolean) }
|
|
96
|
+
def are_configurable_values_enabled?; end
|
|
97
|
+
|
|
98
|
+
# Disable configurable values which default to disabled.
|
|
99
|
+
sig { void }
|
|
100
|
+
def disable_configurable_values; end
|
|
101
|
+
|
|
102
|
+
# Enable configurable values which default to disabled.
|
|
103
|
+
sig { void }
|
|
104
|
+
def enable_configurable_values; end
|
|
105
|
+
|
|
94
106
|
# Set constraints for the current request to limit the features that can be enabled.
|
|
95
107
|
sig { params(value: T.nilable(T::Hash[T.untyped, T.untyped])).void }
|
|
96
108
|
def constraints=(value); end
|
data/sig/optify.rbs
CHANGED
|
@@ -55,16 +55,25 @@ end
|
|
|
55
55
|
|
|
56
56
|
# Preferences when getting options.
|
|
57
57
|
class Optify::GetOptionsPreferences
|
|
58
|
-
#
|
|
59
|
-
# They are disabled by default.
|
|
58
|
+
# Deprecated: Use `are_configurable_values_enabled?` instead.
|
|
60
59
|
def are_configurable_strings_enabled?: () -> bool
|
|
61
60
|
|
|
62
|
-
#
|
|
61
|
+
# Deprecated: Use `disable_configurable_values` instead.
|
|
63
62
|
def disable_configurable_strings: () -> void
|
|
64
63
|
|
|
65
|
-
#
|
|
64
|
+
# Deprecated: Use `enable_configurable_values` instead.
|
|
66
65
|
def enable_configurable_strings: () -> void
|
|
67
66
|
|
|
67
|
+
# Indicates if configurable values, such as strings and lists, are enabled.
|
|
68
|
+
# They are disabled by default.
|
|
69
|
+
def are_configurable_values_enabled?: () -> bool
|
|
70
|
+
|
|
71
|
+
# Disable configurable values which default to disabled.
|
|
72
|
+
def disable_configurable_values: () -> void
|
|
73
|
+
|
|
74
|
+
# Enable configurable values which default to disabled.
|
|
75
|
+
def enable_configurable_values: () -> void
|
|
76
|
+
|
|
68
77
|
# Set constraints for the current request to limit the features that can be enabled.
|
|
69
78
|
def constraints=: (::Hash[untyped, untyped]? value) -> void
|
|
70
79
|
|