safeshield 1.6.5__tar.gz → 1.6.8__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.
Files changed (38) hide show
  1. {safeshield-1.6.5/safeshield.egg-info → safeshield-1.6.8}/PKG-INFO +1 -1
  2. {safeshield-1.6.5 → safeshield-1.6.8/safeshield.egg-info}/PKG-INFO +1 -1
  3. {safeshield-1.6.5 → safeshield-1.6.8}/setup.py +1 -1
  4. {safeshield-1.6.5 → safeshield-1.6.8}/validator/factory.py +2 -2
  5. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/base.py +1 -1
  6. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/comparison.py +17 -7
  7. {safeshield-1.6.5 → safeshield-1.6.8}/LICENSE +0 -0
  8. {safeshield-1.6.5 → safeshield-1.6.8}/MANIFEST.in +0 -0
  9. {safeshield-1.6.5 → safeshield-1.6.8}/README.md +0 -0
  10. {safeshield-1.6.5 → safeshield-1.6.8}/requirements.txt +0 -0
  11. {safeshield-1.6.5 → safeshield-1.6.8}/safeshield.egg-info/SOURCES.txt +0 -0
  12. {safeshield-1.6.5 → safeshield-1.6.8}/safeshield.egg-info/dependency_links.txt +0 -0
  13. {safeshield-1.6.5 → safeshield-1.6.8}/safeshield.egg-info/requires.txt +0 -0
  14. {safeshield-1.6.5 → safeshield-1.6.8}/safeshield.egg-info/top_level.txt +0 -0
  15. {safeshield-1.6.5 → safeshield-1.6.8}/setup.cfg +0 -0
  16. {safeshield-1.6.5 → safeshield-1.6.8}/validator/__init__.py +0 -0
  17. {safeshield-1.6.5 → safeshield-1.6.8}/validator/core/__init__.py +0 -0
  18. {safeshield-1.6.5 → safeshield-1.6.8}/validator/core/validator.py +0 -0
  19. {safeshield-1.6.5 → safeshield-1.6.8}/validator/database/__init__.py +0 -0
  20. {safeshield-1.6.5 → safeshield-1.6.8}/validator/database/detector.py +0 -0
  21. {safeshield-1.6.5 → safeshield-1.6.8}/validator/database/manager.py +0 -0
  22. {safeshield-1.6.5 → safeshield-1.6.8}/validator/exceptions.py +0 -0
  23. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/__init__.py +0 -0
  24. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/array.py +0 -0
  25. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/basic.py +0 -0
  26. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/boolean.py +0 -0
  27. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/date.py +0 -0
  28. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/files.py +0 -0
  29. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/format.py +0 -0
  30. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/numeric.py +0 -0
  31. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/string.py +0 -0
  32. {safeshield-1.6.5 → safeshield-1.6.8}/validator/rules/utilities.py +0 -0
  33. {safeshield-1.6.5 → safeshield-1.6.8}/validator/services/__init__.py +0 -0
  34. {safeshield-1.6.5 → safeshield-1.6.8}/validator/services/rule_conflict.py +0 -0
  35. {safeshield-1.6.5 → safeshield-1.6.8}/validator/services/rule_error_handler.py +0 -0
  36. {safeshield-1.6.5 → safeshield-1.6.8}/validator/services/rule_preparer.py +0 -0
  37. {safeshield-1.6.5 → safeshield-1.6.8}/validator/utils/__init__.py +0 -0
  38. {safeshield-1.6.5 → safeshield-1.6.8}/validator/utils/string.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: safeshield
3
- Version: 1.6.5
3
+ Version: 1.6.8
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.4
2
2
  Name: safeshield
3
- Version: 1.6.5
3
+ Version: 1.6.8
4
4
  Summary: Library for Help Validation Control
5
5
  Home-page: https://github.com/WunsunTarniho/py-guard
6
6
  Author: Wunsun Tarniho
@@ -10,7 +10,7 @@ def get_requirements():
10
10
 
11
11
  setup(
12
12
  name="safeshield",
13
- version="1.6.5",
13
+ version="1.6.8",
14
14
  packages=find_packages(),
15
15
  install_requires=get_requirements(),
16
16
  author="Wunsun Tarniho",
@@ -19,10 +19,10 @@ class RuleFactory:
19
19
  _name = name
20
20
 
21
21
  def validate(self, field: str, value: Any, params: List[str]) -> bool:
22
- return validate_func(field, value, params)
22
+ return validate_func(self, field, value, params)
23
23
 
24
24
  def message(self, field: str, params: List[str]) -> str:
25
- return message_func(field, params)
25
+ return message_func(self, field, params)
26
26
 
27
27
  cls._rules[name] = NewRule
28
28
 
@@ -90,7 +90,7 @@ class Rule(ABC):
90
90
 
91
91
  def replacements(self, field, value) -> Dict[str, str]:
92
92
  """Default replacements for all rules"""
93
- return {':attribute': self._get_display_name(field), 'value': value }
93
+ return {':attribute': self._get_display_name(field), ':value': value }
94
94
 
95
95
  def _get_display_name(self, fields: str) -> str:
96
96
  single_input = isinstance(fields, str)
@@ -10,13 +10,17 @@ class MinRule(Rule):
10
10
 
11
11
  def validate(self, field: str, value: Any, params: List[str]) -> bool:
12
12
  try:
13
- min_val = float(params[0])
13
+ min_val = float(self.get_field_value(params[0], params[0]))
14
14
  except ValueError:
15
15
  return False
16
+
17
+ try:
18
+ numeric_value = float(value)
19
+ return min_val < numeric_value
20
+ except ValueError:
21
+ pass
16
22
 
17
- if isinstance(value, (int, float)):
18
- return value >= min_val
19
- elif isinstance(value, str):
23
+ if isinstance(value, str):
20
24
  try:
21
25
  return len(value) >= min_val
22
26
  except ValueError:
@@ -42,7 +46,10 @@ class MaxRule(Rule):
42
46
 
43
47
  def validate(self, field: str, value: Any, params: List[str]) -> bool:
44
48
  try:
45
- max_val = float(params[0])
49
+ try:
50
+ max_val = float(self.get_field_value(params[0], params[0]))
51
+ except ValueError:
52
+ return False
46
53
 
47
54
  # Handle Werkzeug/Flask FileStorage
48
55
  if hasattr(value, 'content_length'): # Flask/Werkzeug
@@ -66,8 +73,11 @@ class MaxRule(Rule):
66
73
  pass
67
74
 
68
75
  # Numeric validation
69
- if isinstance(value, (int, float)):
70
- return value <= max_val
76
+ try:
77
+ numeric_value = float(value)
78
+ return numeric_value <= max_val
79
+ except ValueError:
80
+ pass
71
81
 
72
82
  # String/collection length validation
73
83
  if isinstance(value, (str, list, dict, set, tuple)):
File without changes
File without changes
File without changes
File without changes
File without changes