ransacklib 1.1.0.dev0__tar.gz → 1.1.0.dev1__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 (20) hide show
  1. {ransacklib-1.1.0.dev0/ransacklib.egg-info → ransacklib-1.1.0.dev1}/PKG-INFO +1 -1
  2. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/pyproject.toml +1 -1
  3. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransack/__init__.py +8 -2
  4. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransack/transformer.py +4 -2
  5. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1/ransacklib.egg-info}/PKG-INFO +1 -1
  6. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/LICENSE +0 -0
  7. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/README.rst +0 -0
  8. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransack/exceptions.py +0 -0
  9. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransack/function.py +0 -0
  10. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransack/operator.py +0 -0
  11. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransack/parser.py +0 -0
  12. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransack/py.typed +0 -0
  13. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransacklib.egg-info/SOURCES.txt +0 -0
  14. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransacklib.egg-info/dependency_links.txt +0 -0
  15. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransacklib.egg-info/requires.txt +0 -0
  16. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/ransacklib.egg-info/top_level.txt +0 -0
  17. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/setup.cfg +0 -0
  18. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/tests/test_operator.py +0 -0
  19. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/tests/test_parser.py +0 -0
  20. {ransacklib-1.1.0.dev0 → ransacklib-1.1.0.dev1}/tests/test_transformer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ransacklib
3
- Version: 1.1.0.dev0
3
+ Version: 1.1.0.dev1
4
4
  Summary: A modern, extensible language for manipulation with structured data
5
5
  Author-email: "Rajmund H. Hruška" <rajmund.hruska@cesnet.cz>
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "ransacklib"
7
- dynamic = ["version"]
7
+ version = "1.1.0.dev1"
8
8
  description = "A modern, extensible language for manipulation with structured data"
9
9
  license = "MIT"
10
10
  readme = "README.rst"
@@ -1,8 +1,13 @@
1
+ from importlib.metadata import PackageNotFoundError, version
2
+
1
3
  from .exceptions import EvaluationError, ParseError, RansackError, ShapeError
2
4
  from .parser import Parser
3
- from .transformer import Filter, get_values
5
+ from .transformer import Filter, SQLInterpreter, get_values
4
6
 
5
- __version__ = "1.1.0.dev0"
7
+ try:
8
+ __version__ = version("ransacklib")
9
+ except PackageNotFoundError:
10
+ __version__ = "0.0.0"
6
11
 
7
12
  __all__ = (
8
13
  "EvaluationError",
@@ -10,6 +15,7 @@ __all__ = (
10
15
  "ParseError",
11
16
  "Parser",
12
17
  "RansackError",
18
+ "SQLInterpreter",
13
19
  "ShapeError",
14
20
  "get_values",
15
21
  )
@@ -958,8 +958,10 @@ class SQLInterpreter(Interpreter):
958
958
  return self._binary_operation("contains", l_tree, r_tree)
959
959
 
960
960
  def exists_op(self, path: Token) -> tuple[str, type[bool]]:
961
- return f"{path!s} is not null", bool
961
+ var, _ = self.var_from_data(TokenWrapper(path, path))
962
+ return f"{var!s} is not null", bool
962
963
 
963
964
  def exists_with_default(self, path: Token, default: Any) -> Any:
965
+ var, _ = self.var_from_data(TokenWrapper(path, path))
964
966
  sql, type_ = self.visit(default)
965
- return f"COALESCE({path!s}, {sql})", type_
967
+ return f"COALESCE({var!s}, {sql})", type_
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ransacklib
3
- Version: 1.1.0.dev0
3
+ Version: 1.1.0.dev1
4
4
  Summary: A modern, extensible language for manipulation with structured data
5
5
  Author-email: "Rajmund H. Hruška" <rajmund.hruska@cesnet.cz>
6
6
  License-Expression: MIT
File without changes