safeshield 1.4.5__tar.gz → 1.4.7__tar.gz

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.

Potentially problematic release.


This version of safeshield might be problematic. Click here for more details.

Files changed (36) hide show
  1. {safeshield-1.4.5 → safeshield-1.4.7}/PKG-INFO +1 -1
  2. {safeshield-1.4.5 → safeshield-1.4.7}/safeshield.egg-info/PKG-INFO +1 -1
  3. {safeshield-1.4.5 → safeshield-1.4.7}/setup.py +1 -1
  4. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/utilities.py +12 -5
  5. {safeshield-1.4.5 → safeshield-1.4.7}/LICENSE +0 -0
  6. {safeshield-1.4.5 → safeshield-1.4.7}/README.md +0 -0
  7. {safeshield-1.4.5 → safeshield-1.4.7}/safeshield.egg-info/SOURCES.txt +0 -0
  8. {safeshield-1.4.5 → safeshield-1.4.7}/safeshield.egg-info/dependency_links.txt +0 -0
  9. {safeshield-1.4.5 → safeshield-1.4.7}/safeshield.egg-info/requires.txt +0 -0
  10. {safeshield-1.4.5 → safeshield-1.4.7}/safeshield.egg-info/top_level.txt +0 -0
  11. {safeshield-1.4.5 → safeshield-1.4.7}/setup.cfg +0 -0
  12. {safeshield-1.4.5 → safeshield-1.4.7}/validator/__init__.py +0 -0
  13. {safeshield-1.4.5 → safeshield-1.4.7}/validator/core/__init__.py +0 -0
  14. {safeshield-1.4.5 → safeshield-1.4.7}/validator/core/validator.py +0 -0
  15. {safeshield-1.4.5 → safeshield-1.4.7}/validator/database/__init__.py +0 -0
  16. {safeshield-1.4.5 → safeshield-1.4.7}/validator/database/detector.py +0 -0
  17. {safeshield-1.4.5 → safeshield-1.4.7}/validator/database/manager.py +0 -0
  18. {safeshield-1.4.5 → safeshield-1.4.7}/validator/exceptions.py +0 -0
  19. {safeshield-1.4.5 → safeshield-1.4.7}/validator/factory.py +0 -0
  20. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/__init__.py +0 -0
  21. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/array.py +0 -0
  22. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/base.py +0 -0
  23. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/basic.py +0 -0
  24. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/boolean.py +0 -0
  25. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/comparison.py +0 -0
  26. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/date.py +0 -0
  27. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/files.py +0 -0
  28. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/format.py +0 -0
  29. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/numeric.py +0 -0
  30. {safeshield-1.4.5 → safeshield-1.4.7}/validator/rules/string.py +0 -0
  31. {safeshield-1.4.5 → safeshield-1.4.7}/validator/services/__init__.py +0 -0
  32. {safeshield-1.4.5 → safeshield-1.4.7}/validator/services/rule_conflict.py +0 -0
  33. {safeshield-1.4.5 → safeshield-1.4.7}/validator/services/rule_error_handler.py +0 -0
  34. {safeshield-1.4.5 → safeshield-1.4.7}/validator/services/rule_preparer.py +0 -0
  35. {safeshield-1.4.5 → safeshield-1.4.7}/validator/utils/__init__.py +0 -0
  36. {safeshield-1.4.5 → safeshield-1.4.7}/validator/utils/string.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: safeshield
3
- Version: 1.4.5
3
+ Version: 1.4.7
4
4
  Summary: Library for Help Validation Control
5
5
  Home-page: https://github.com/WunsunTarniho/py-guard
6
6
  Author: Wunsun Tarniho
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: safeshield
3
- Version: 1.4.5
3
+ Version: 1.4.7
4
4
  Summary: Library for Help Validation Control
5
5
  Home-page: https://github.com/WunsunTarniho/py-guard
6
6
  Author: Wunsun Tarniho
@@ -7,7 +7,7 @@ def get_requirements():
7
7
 
8
8
  setup(
9
9
  name="safeshield", # Nama package di PyPI
10
- version="1.4.5",
10
+ version="1.4.7",
11
11
  packages=find_packages(),
12
12
  install_requires=get_requirements(),
13
13
  author="Wunsun Tarniho",
@@ -283,12 +283,19 @@ class ExcludeIfRule(ExcludeRule):
283
283
 
284
284
  class ExcludeUnlessRule(ExcludeRule):
285
285
  def validate(self, field: str, value: Any, params: List[str]) -> bool:
286
- conditions = [(f.strip(), v.strip()) for f, v in zip(params[::2], params[1::2])]
286
+ all_conditions_met = False
287
287
 
288
- all_conditions_met = all(
289
- self.get_field_value(f) == v
290
- for f, v in conditions
291
- )
288
+ if len(params) == 1 and callable(params[0]):
289
+ all_conditions_met = params[0](self.validator.data)
290
+ elif len(params) == 1 and isinstance(params[0], bool):
291
+ all_conditions_met = params[0]
292
+ else:
293
+ conditions = [(f.strip(), v.strip()) for f, v in zip(params[::2], params[1::2])]
294
+
295
+ all_conditions_met = all(
296
+ self.get_field_value(f) == v
297
+ for f, v in conditions
298
+ )
292
299
 
293
300
  if not all_conditions_met:
294
301
  return super().validate(field, value, params)
File without changes
File without changes
File without changes