magick-feature-flags 0.9.1 → 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 +4 -4
- data/lib/magick/feature.rb +15 -0
- data/lib/magick/version.rb +1 -1
- 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: bfff098bb1fa4ba5e28d7b86b59eda158cb9e1b7149be23496178dc9196c07af
|
|
4
|
+
data.tar.gz: 26ba6fa53c9458414fc4a98658e0c5ca27dff438e922b462f12e4704c49edf91
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 90edea21a3b7746ac9600ae0394df31b11a6f9999766ece5354f83cf27f2ca266fc0f7ddc6f502bee7120dda4c38dbc7ff10ba574d8be384b7396927486ef8aa
|
|
7
|
+
data.tar.gz: ac2d52839931565733231f31d3e474d1bb1f83a4248cd46992405be5c1e86dfbff64456bdd21d16e2f2bf9e9ad12284245209112370de0de3a6de3c02e206713
|
data/lib/magick/feature.rb
CHANGED
|
@@ -378,6 +378,21 @@ module Magick
|
|
|
378
378
|
end
|
|
379
379
|
|
|
380
380
|
def enable(user_id: nil)
|
|
381
|
+
# Check if this feature is a dependency of any disabled features
|
|
382
|
+
# If a main feature that depends on this feature is disabled, prevent enabling this dependency
|
|
383
|
+
dependent_features = find_dependent_features
|
|
384
|
+
disabled_dependents = dependent_features.select do |dep_feature_name|
|
|
385
|
+
dep_feature = Magick.features[dep_feature_name.to_s] || Magick[dep_feature_name]
|
|
386
|
+
# Check if the dependent feature (main feature) is disabled
|
|
387
|
+
dep_feature && !dep_feature.enabled?
|
|
388
|
+
end
|
|
389
|
+
|
|
390
|
+
unless disabled_dependents.empty?
|
|
391
|
+
# Return false if any main feature that depends on this feature is disabled
|
|
392
|
+
# This prevents enabling a dependency when the main feature is disabled
|
|
393
|
+
return false
|
|
394
|
+
end
|
|
395
|
+
|
|
381
396
|
# Clear all targeting to enable globally
|
|
382
397
|
@targeting = {}
|
|
383
398
|
save_targeting
|
data/lib/magick/version.rb
CHANGED