jupyter-duckdb 0.9.2.2.dev202311200817__tar.gz → 0.9.2.2.dev202401171015__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 (84) hide show
  1. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/PKG-INFO +1 -1
  2. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/RAOperand.py +5 -2
  3. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/jupyter_duckdb.egg-info/PKG-INFO +1 -1
  4. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/test/test_ra.py +25 -0
  5. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/README.md +0 -0
  6. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/setup.cfg +0 -0
  7. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/setup.py +0 -0
  8. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/__init__.py +0 -0
  9. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/__main__.py +0 -0
  10. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/Column.py +0 -0
  11. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/Connection.py +0 -0
  12. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/Constraint.py +0 -0
  13. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/DatabaseError.py +0 -0
  14. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/ForeignKey.py +0 -0
  15. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/Table.py +0 -0
  16. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/__init__.py +0 -0
  17. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/duckdb/Connection.py +0 -0
  18. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/duckdb/__init__.py +0 -0
  19. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/sqlite/Connection.py +0 -0
  20. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/db/sqlite/__init__.py +0 -0
  21. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/kernel.json +0 -0
  22. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/kernel.py +0 -0
  23. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/magics/MagicCommand.py +0 -0
  24. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/magics/MagicCommandCallback.py +0 -0
  25. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/magics/MagicCommandException.py +0 -0
  26. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/magics/MagicCommandHandler.py +0 -0
  27. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/magics/__init__.py +0 -0
  28. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/DCParser.py +0 -0
  29. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/LogicParser.py +0 -0
  30. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/RAParser.py +0 -0
  31. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/__init__.py +0 -0
  32. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/DCOperand.py +0 -0
  33. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/LogicElement.py +0 -0
  34. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/LogicOperand.py +0 -0
  35. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/LogicOperator.py +0 -0
  36. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/RABinaryOperator.py +0 -0
  37. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/RAElement.py +0 -0
  38. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/RAOperator.py +0 -0
  39. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/RAUnaryOperator.py +0 -0
  40. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/__init__.py +0 -0
  41. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Add.py +0 -0
  42. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/And.py +0 -0
  43. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/ArrowLeft.py +0 -0
  44. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/ConditionalSet.py +0 -0
  45. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Cross.py +0 -0
  46. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Difference.py +0 -0
  47. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Divide.py +0 -0
  48. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Equal.py +0 -0
  49. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/GreaterThan.py +0 -0
  50. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/GreaterThanEqual.py +0 -0
  51. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Intersection.py +0 -0
  52. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Join.py +0 -0
  53. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/LessThan.py +0 -0
  54. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/LessThanEqual.py +0 -0
  55. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Minus.py +0 -0
  56. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Multiply.py +0 -0
  57. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Or.py +0 -0
  58. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Unequal.py +0 -0
  59. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/Union.py +0 -0
  60. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/binary/__init__.py +0 -0
  61. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/unary/Not.py +0 -0
  62. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/unary/Projection.py +0 -0
  63. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/unary/Rename.py +0 -0
  64. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/unary/Selection.py +0 -0
  65. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/elements/unary/__init__.py +0 -0
  66. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/tokenizer/Token.py +0 -0
  67. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/tokenizer/Tokenizer.py +0 -0
  68. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/tokenizer/__init__.py +0 -0
  69. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/util/RenamableColumn.py +0 -0
  70. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/util/RenamableColumnList.py +0 -0
  71. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/parser/util/__init__.py +0 -0
  72. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/util/ResultSetComparator.py +0 -0
  73. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/util/__init__.py +0 -0
  74. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/util/formatting.py +0 -0
  75. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/visualization/Drawer.py +0 -0
  76. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/visualization/RATreeDrawer.py +0 -0
  77. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/visualization/SchemaDrawer.py +0 -0
  78. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/duckdb_kernel/visualization/__init__.py +0 -0
  79. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/jupyter_duckdb.egg-info/SOURCES.txt +0 -0
  80. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/jupyter_duckdb.egg-info/dependency_links.txt +0 -0
  81. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/jupyter_duckdb.egg-info/requires.txt +0 -0
  82. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/src/jupyter_duckdb.egg-info/top_level.txt +0 -0
  83. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/test/test_dc.py +0 -0
  84. {jupyter-duckdb-0.9.2.2.dev202311200817 → jupyter-duckdb-0.9.2.2.dev202401171015}/test/test_result_comparison.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jupyter-duckdb
3
- Version: 0.9.2.2.dev202311200817
3
+ Version: 0.9.2.2.dev202401171015
4
4
  Summary: a basic wrapper kernel for DuckDB
5
5
  Home-page: https://github.com/erictroebs/jupyter-duckdb
6
6
  Author: Eric Tröbs
@@ -22,10 +22,13 @@ class RAOperand(RAElement):
22
22
  yield
23
23
 
24
24
  def to_sql(self, tables: Dict[str, Table]) -> Tuple[str, RenamableColumnList]:
25
- if self.relation not in tables:
25
+ table_keys = {key.lower(): key for key in tables}
26
+ relation_lower = self.relation.lower()
27
+
28
+ if relation_lower not in table_keys:
26
29
  raise AssertionError(f'unknown relation {self.relation}')
27
30
 
28
- cols = RenamableColumnList.from_iter(tables[self.name].columns)
31
+ cols = RenamableColumnList.from_iter(tables[table_keys[relation_lower]].columns)
29
32
  column_names = ', '.join(c.rename() for c in cols)
30
33
 
31
34
  return f'SELECT DISTINCT {column_names} FROM {self.relation}', cols
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jupyter-duckdb
3
- Version: 0.9.2.2.dev202311200817
3
+ Version: 0.9.2.2.dev202401171015
4
4
  Summary: a basic wrapper kernel for DuckDB
5
5
  Home-page: https://github.com/erictroebs/jupyter-duckdb
6
6
  Author: Eric Tröbs
@@ -7,6 +7,31 @@ from duckdb_kernel.parser.elements import RAOperand, LogicElement
7
7
  from . import Connection
8
8
 
9
9
 
10
+ def test_case_insensitivity():
11
+ for query in (
12
+ 'users',
13
+ 'Users',
14
+ 'USERS',
15
+ 'userS'
16
+ ):
17
+ root = RAParser.parse_query(query)
18
+
19
+ # root is an RAOperand
20
+ assert isinstance(root, RAOperand)
21
+
22
+ # Root's name is the relation name in whatever case
23
+ # it has been written.
24
+ assert root.name == query
25
+
26
+ # execute to test case insensitivity
27
+ with Connection() as con:
28
+ assert con.execute_ra(root) == [
29
+ (1, 'Alice'),
30
+ (2, 'Bob'),
31
+ (3, 'Charlie')
32
+ ]
33
+
34
+
10
35
  def test_binary_operator_cross():
11
36
  for query in (
12
37
  r'shows x seasons',