jupyter-duckdb 1.2.0.1__py3-none-any.whl → 1.4.111__py3-none-any.whl
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.
- duckdb_kernel/db/Connection.py +3 -0
- duckdb_kernel/db/Table.py +8 -0
- duckdb_kernel/db/implementation/duckdb/Connection.py +27 -13
- duckdb_kernel/db/implementation/postgres/Connection.py +27 -12
- duckdb_kernel/db/implementation/sqlite/Connection.py +9 -3
- duckdb_kernel/kernel.py +407 -200
- duckdb_kernel/magics/MagicCommand.py +34 -10
- duckdb_kernel/magics/MagicCommandCallback.py +11 -7
- duckdb_kernel/magics/MagicCommandHandler.py +58 -9
- duckdb_kernel/magics/MagicState.py +11 -0
- duckdb_kernel/magics/__init__.py +1 -0
- duckdb_kernel/parser/DCParser.py +17 -7
- duckdb_kernel/parser/LogicParser.py +6 -6
- duckdb_kernel/parser/ParserError.py +18 -0
- duckdb_kernel/parser/RAParser.py +29 -21
- duckdb_kernel/parser/__init__.py +1 -0
- duckdb_kernel/parser/elements/DCOperand.py +7 -4
- duckdb_kernel/parser/elements/LogicElement.py +0 -2
- duckdb_kernel/parser/elements/RAElement.py +4 -1
- duckdb_kernel/parser/elements/RARelationReference.py +86 -0
- duckdb_kernel/parser/elements/RAUnaryOperator.py +6 -0
- duckdb_kernel/parser/elements/__init__.py +2 -1
- duckdb_kernel/parser/elements/binary/And.py +1 -1
- duckdb_kernel/parser/elements/binary/ConditionalSet.py +37 -10
- duckdb_kernel/parser/elements/binary/Cross.py +2 -2
- duckdb_kernel/parser/elements/binary/Difference.py +1 -1
- duckdb_kernel/parser/elements/binary/Divide.py +1 -1
- duckdb_kernel/parser/elements/binary/Division.py +0 -4
- duckdb_kernel/parser/elements/binary/FullOuterJoin.py +40 -0
- duckdb_kernel/parser/elements/binary/Join.py +4 -1
- duckdb_kernel/parser/elements/binary/LeftOuterJoin.py +27 -0
- duckdb_kernel/parser/elements/binary/LeftSemiJoin.py +27 -0
- duckdb_kernel/parser/elements/binary/RightOuterJoin.py +27 -0
- duckdb_kernel/parser/elements/binary/RightSemiJoin.py +27 -0
- duckdb_kernel/parser/elements/binary/__init__.py +21 -6
- duckdb_kernel/parser/elements/unary/AttributeRename.py +39 -0
- duckdb_kernel/parser/elements/unary/Projection.py +1 -1
- duckdb_kernel/parser/elements/unary/Rename.py +68 -14
- duckdb_kernel/parser/elements/unary/__init__.py +2 -0
- duckdb_kernel/parser/tokenizer/Token.py +24 -3
- duckdb_kernel/parser/util/QuerySplitter.py +87 -0
- duckdb_kernel/parser/util/RenamableColumnList.py +10 -2
- duckdb_kernel/tests/__init__.py +76 -0
- duckdb_kernel/tests/test_dc.py +483 -0
- duckdb_kernel/tests/test_ra.py +1966 -0
- duckdb_kernel/tests/test_result_comparison.py +173 -0
- duckdb_kernel/tests/test_sql.py +48 -0
- duckdb_kernel/util/ResultSetComparator.py +22 -4
- duckdb_kernel/util/SQL.py +6 -0
- duckdb_kernel/util/TestError.py +4 -0
- duckdb_kernel/visualization/Plotly.py +144 -0
- duckdb_kernel/visualization/RATreeDrawer.py +34 -2
- duckdb_kernel/visualization/__init__.py +1 -0
- duckdb_kernel/visualization/lib/__init__.py +53 -0
- duckdb_kernel/visualization/lib/plotly-3.0.1.min.js +3879 -0
- duckdb_kernel/visualization/lib/ra.css +3 -0
- duckdb_kernel/visualization/lib/ra.js +55 -0
- {jupyter_duckdb-1.2.0.1.dist-info → jupyter_duckdb-1.4.111.dist-info}/METADATA +53 -19
- jupyter_duckdb-1.4.111.dist-info/RECORD +104 -0
- {jupyter_duckdb-1.2.0.1.dist-info → jupyter_duckdb-1.4.111.dist-info}/WHEEL +1 -1
- jupyter_duckdb-1.2.0.1.dist-info/RECORD +0 -82
- {jupyter_duckdb-1.2.0.1.dist-info → jupyter_duckdb-1.4.111.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
function animate_ra(divId, rootNodeId) {
|
|
2
|
+
/*
|
|
3
|
+
const {createApp, onMounted, ref} = Vue
|
|
4
|
+
|
|
5
|
+
createApp({
|
|
6
|
+
setup() {
|
|
7
|
+
onMounted(() => {
|
|
8
|
+
const titles = document.querySelectorAll(`#${divId} title`)
|
|
9
|
+
const gs = [...titles]
|
|
10
|
+
.map(t => [t.textContent, t.parentElement])
|
|
11
|
+
.filter(g => g[1].id && g[1].id.startsWith('node'))
|
|
12
|
+
|
|
13
|
+
console.log(gs)
|
|
14
|
+
})
|
|
15
|
+
}
|
|
16
|
+
}).mount(`#${divId}`)
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
const titles = [...document.querySelectorAll(`#${divId} title`)]
|
|
20
|
+
.filter(p => p.parentElement.id && p.parentElement.id.startsWith('node'))
|
|
21
|
+
|
|
22
|
+
// update cursor
|
|
23
|
+
titles.forEach(t => t.parentElement.style.cursor = 'pointer')
|
|
24
|
+
titles.forEach(t => t.parentElement.style.userSelect = 'none')
|
|
25
|
+
|
|
26
|
+
// update all polygons to handle click events
|
|
27
|
+
titles.forEach(t => {
|
|
28
|
+
t.parentElement.querySelectorAll('polygon')
|
|
29
|
+
.forEach(p => p.style.pointerEvents = 'all')
|
|
30
|
+
})
|
|
31
|
+
|
|
32
|
+
// add click listener for each node
|
|
33
|
+
titles.forEach(t => {
|
|
34
|
+
t.parentElement.addEventListener('click', () => {
|
|
35
|
+
titles.forEach(a => {
|
|
36
|
+
document.querySelectorAll(`.${a.textContent}`)
|
|
37
|
+
.forEach(e => e.style.display = a === t ? 'block' : 'none')
|
|
38
|
+
a.parentElement.querySelectorAll('polygon')
|
|
39
|
+
.forEach(e => e.setAttribute('fill', a === t ? 'rgb(200, 240, 255)' : 'none'))
|
|
40
|
+
})
|
|
41
|
+
})
|
|
42
|
+
})
|
|
43
|
+
|
|
44
|
+
// call listener for root node
|
|
45
|
+
window.setTimeout(() => {
|
|
46
|
+
titles.forEach(t => {
|
|
47
|
+
if (t.textContent === rootNodeId)
|
|
48
|
+
t.dispatchEvent(new MouseEvent('click', {
|
|
49
|
+
bubbles: true,
|
|
50
|
+
cancelable: true,
|
|
51
|
+
view: window
|
|
52
|
+
}))
|
|
53
|
+
})
|
|
54
|
+
}, 100)
|
|
55
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: jupyter-duckdb
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4.111
|
|
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
|
|
@@ -12,9 +12,9 @@ Classifier: Operating System :: OS Independent
|
|
|
12
12
|
Requires-Python: >=3.10
|
|
13
13
|
Description-Content-Type: text/markdown
|
|
14
14
|
Requires-Dist: jupyter
|
|
15
|
-
Requires-Dist: graphviz==0.
|
|
15
|
+
Requires-Dist: graphviz==0.21
|
|
16
16
|
Requires-Dist: checkmarkandcross
|
|
17
|
-
Requires-Dist: duckdb==1.
|
|
17
|
+
Requires-Dist: duckdb==1.4.1
|
|
18
18
|
Dynamic: author
|
|
19
19
|
Dynamic: author-email
|
|
20
20
|
Dynamic: classifier
|
|
@@ -32,10 +32,6 @@ This is a simple DuckDB wrapper kernel which accepts SQL as input, executes it
|
|
|
32
32
|
using a previously loaded DuckDB instance and formats the output as a table.
|
|
33
33
|
There are some magic commands that make teaching easier with this kernel.
|
|
34
34
|
|
|
35
|
-
## Quick Start
|
|
36
|
-
|
|
37
|
-
[](https://mybinder.org/v2/git/https%3A%2F%2Fdbgit.prakinf.tu-ilmenau.de%2Fertr8623%2Fjupyter-duckdb.git/master)
|
|
38
|
-
|
|
39
35
|
## Table of Contents
|
|
40
36
|
|
|
41
37
|
- [Setup](#setup)
|
|
@@ -49,6 +45,7 @@ There are some magic commands that make teaching easier with this kernel.
|
|
|
49
45
|
- [Ship Tests With Your Notebook](#ship-tests-with-your-notebooks)
|
|
50
46
|
- [Relational Algebra](#relational-algebra)
|
|
51
47
|
- [Domain Calculus](#domain-calculus)
|
|
48
|
+
- [Automated Parser Selection](#automated-parser-selection)
|
|
52
49
|
|
|
53
50
|
## Setup
|
|
54
51
|
|
|
@@ -85,6 +82,12 @@ Execute the following command to pull and run a prepared image.
|
|
|
85
82
|
docker run -p 8888:8888 troebs/jupyter-duckdb
|
|
86
83
|
```
|
|
87
84
|
|
|
85
|
+
There is also a second image. It contains an additional instance of PostgreSQL:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
docker run -p 8888:8888 troebs/jupyter-duckdb:postgresql
|
|
89
|
+
```
|
|
90
|
+
|
|
88
91
|
This image can also be used with JupyterHub and the
|
|
89
92
|
[DockerSpawner / SwarmSpawner](https://github.com/jupyterhub/dockerspawner)
|
|
90
93
|
and probably with the
|
|
@@ -116,28 +119,36 @@ another DuckDB file or a file with SQL statements. In the first case the
|
|
|
116
119
|
included tables will be copied to the new database, while in the second case the
|
|
117
120
|
SQL statements are just executed. We find this feature very useful to work in a
|
|
118
121
|
temporary copy of the data and therefore be able to restart at any time. The
|
|
119
|
-
|
|
120
|
-
|
|
122
|
+
optional parameter `NAME` may be used to name a connection and reference it
|
|
123
|
+
later by using the magic command `USE`.
|
|
121
124
|
|
|
122
125
|
```
|
|
123
126
|
%CREATE data.duckdb OF my_statements.sql
|
|
124
127
|
```
|
|
125
128
|
|
|
126
129
|
`LOAD` on the other hand loads an existing database and returns an error if it
|
|
127
|
-
does not exist. (That is why `OF` cannot be used with `LOAD`! `
|
|
128
|
-
|
|
130
|
+
does not exist. (That is why `OF` cannot be used with `LOAD`! `NAME` on the
|
|
131
|
+
other hand is available also with this magic command.)
|
|
129
132
|
|
|
130
133
|
```
|
|
131
134
|
%LOAD data.duckdb
|
|
132
135
|
```
|
|
133
136
|
|
|
134
|
-
|
|
135
|
-
loaded, the current one is closed first and saved to disk
|
|
137
|
+
Multiple databases can be open at any time. If a new database with the same
|
|
138
|
+
name is created or loaded, the current one is closed first and saved to disk
|
|
139
|
+
if necessary.
|
|
136
140
|
|
|
137
141
|
Please note that `:memory:` is also a valid file path for DuckDB. The data is
|
|
138
142
|
then stored exclusively in the main memory. In combination with `CREATE`
|
|
139
143
|
and `OF` this makes it possible to work on a temporary copy in memory.
|
|
140
144
|
|
|
145
|
+
Although the name suggests otherwise, the kernel can also be used with other
|
|
146
|
+
databases:
|
|
147
|
+
- **SQLite** is automatically used as a fallback if the DuckDB dependency is
|
|
148
|
+
missing.
|
|
149
|
+
- To connect to a **PostgreSQL** instance, you need to specify a database URI
|
|
150
|
+
starting with `(postgresql|postgres|pgsql|psql|pg)://`.
|
|
151
|
+
|
|
141
152
|
### Schema Diagrams
|
|
142
153
|
|
|
143
154
|
The magic command `SCHEMA` can be used to create a simple schema diagram of the
|
|
@@ -153,6 +164,10 @@ representation requires more space, but can improve readability.
|
|
|
153
164
|
%SCHEMA TD
|
|
154
165
|
```
|
|
155
166
|
|
|
167
|
+
The optional argument `ONLY`, followed by one or more table names separated by a
|
|
168
|
+
comma, can be used to display only the named tables and all those connected with
|
|
169
|
+
a foreign key.
|
|
170
|
+
|
|
156
171
|
Graphviz (`dot` in PATH) is required to render schema diagrams.
|
|
157
172
|
|
|
158
173
|
### Number of Rows
|
|
@@ -200,10 +215,10 @@ FROM bar
|
|
|
200
215
|
|
|
201
216
|
### Ship Tests With Your Notebooks
|
|
202
217
|
|
|
203
|
-
Simple tests can be loaded
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
218
|
+
Simple tests can be loaded from json files with the help of magic command
|
|
219
|
+
`LOAD_TESTS`. These tests are stored as a JSON file. Each test is assigned a
|
|
220
|
+
unique name, a result set and whether the test should check the order of the
|
|
221
|
+
result. A very simple test file looks like the following JSON object:
|
|
207
222
|
|
|
208
223
|
```json
|
|
209
224
|
{
|
|
@@ -234,6 +249,11 @@ UNION
|
|
|
234
249
|
SELECT 1, 'Name 1'
|
|
235
250
|
```
|
|
236
251
|
|
|
252
|
+
By default, failed tests will display an explanation, but the notebook will
|
|
253
|
+
continue to run. Set the `DUCKDB_TESTS_RAISE_EXCEPTION` environment variable to
|
|
254
|
+
`true` to raise an exception when a test fails. This can be useful for automated
|
|
255
|
+
testing in CI environments.
|
|
256
|
+
|
|
237
257
|
Disclaimer: The integrated testing is work-in-progress and thus subject to
|
|
238
258
|
potentially incompatible changes and enhancements.
|
|
239
259
|
|
|
@@ -244,7 +264,7 @@ magic command `RA` activates the relational algebra mode for a single cell:
|
|
|
244
264
|
|
|
245
265
|
```
|
|
246
266
|
%RA
|
|
247
|
-
π a, b (σ c = 1 (R))
|
|
267
|
+
π [a, b] (σ [c = 1] (R))
|
|
248
268
|
```
|
|
249
269
|
|
|
250
270
|
The supported operations are:
|
|
@@ -259,6 +279,11 @@ The supported operations are:
|
|
|
259
279
|
- Cross Product `×`
|
|
260
280
|
- Division `÷`
|
|
261
281
|
|
|
282
|
+
The optional flag `ANALYZE` can be used to add an execution diagram to the
|
|
283
|
+
output.
|
|
284
|
+
|
|
285
|
+
You can also add comments to queries using `--` or `/* */`, just like in SQL.
|
|
286
|
+
|
|
262
287
|
The Dockerfile also installs the Jupyter Lab plugin
|
|
263
288
|
[jupyter-ra-extension](https://pypi.org/project/jupyter-ra-extension/). It adds
|
|
264
289
|
the symbols mentioned above and some other supported symbols to the toolbar for
|
|
@@ -273,3 +298,12 @@ magic command `DC` activates the domain calculus mode for a single cell:
|
|
|
273
298
|
%DC
|
|
274
299
|
{ a, b | R(a, b, c) ∧ c = 1 }
|
|
275
300
|
```
|
|
301
|
+
|
|
302
|
+
### Automated Parser Selection
|
|
303
|
+
|
|
304
|
+
`%ALL_RA` or `%ALL_DC` enables the corresponding parser for all subsequently
|
|
305
|
+
executed cells.
|
|
306
|
+
|
|
307
|
+
If the magic command `%AUTO_PARSER` is added to a cell, a parser is
|
|
308
|
+
automatically selected. If `%GUESS_PARSER` is executed, the parser is
|
|
309
|
+
automatically selected for all subsequent cells.
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
duckdb_kernel/__init__.py,sha256=6auU6zeJrsA4fxPSr2PYamS8fG-SMXTn5YQFXF2cseo,33
|
|
2
|
+
duckdb_kernel/__main__.py,sha256=Z3GwHEBWoQjNm2Y84ijnbA0Lk66L7nsFREuqhZ_ptk0,165
|
|
3
|
+
duckdb_kernel/kernel.json,sha256=_7E8Ci2FSdCvnzCjsOaue8QE8AvpS5JLQuxORO5IGtA,127
|
|
4
|
+
duckdb_kernel/kernel.py,sha256=VOQQXr0Cn3BhFvOr_Oh1f2_OFUOUgvkyz4c55mRwdgs,28484
|
|
5
|
+
duckdb_kernel/db/Column.py,sha256=GM5P6sFdlYK92hiKln5-6038gIDOTxh1AYbR4kiga_w,559
|
|
6
|
+
duckdb_kernel/db/Connection.py,sha256=tBXQBYt9c52RLbpl9sakNuAm0Z84--fhZ4efo8ACz-U,670
|
|
7
|
+
duckdb_kernel/db/Constraint.py,sha256=1YgUHk7s8mHCVedbcuJKyXDykj7_ybbwT3Dk9p2VMis,287
|
|
8
|
+
duckdb_kernel/db/DatabaseError.py,sha256=43zl8yym1f-fxH_UtGIbWnDnBE_TRwr9aCziY9t40QY,41
|
|
9
|
+
duckdb_kernel/db/ForeignKey.py,sha256=iurUAXwTwSIpLXsL0B7BA8jqDTfW4_wkeHxoqQbZwiU,470
|
|
10
|
+
duckdb_kernel/db/Table.py,sha256=HfvGX54kD_XvmLApYSmxtTQNvz2YYaaUNpm4e8dSOVY,934
|
|
11
|
+
duckdb_kernel/db/__init__.py,sha256=PKQYQDCW7VQYxmzhQK6A0Qloka9FdMfeFQMfY-CjBSA,198
|
|
12
|
+
duckdb_kernel/db/error/EmptyResultError.py,sha256=N9Oxi2HDZBKaRQsfRsWpJJGOYX4BjdQqWOU-XvzUzNY,92
|
|
13
|
+
duckdb_kernel/db/error/__init__.py,sha256=oHfhfbcfyTJ3pAPN835omdQcebvJTauuULFx5gm9rq4,47
|
|
14
|
+
duckdb_kernel/db/implementation/duckdb/Connection.py,sha256=nFzj2wjHORFuRn27zfKhHtwu1Hulph7X4ImCaEbQtbQ,7051
|
|
15
|
+
duckdb_kernel/db/implementation/duckdb/__init__.py,sha256=HKogB1es4wOiQUoh7_eT32xnUFLmzoCyR_0LuY9r8YQ,35
|
|
16
|
+
duckdb_kernel/db/implementation/postgres/Connection.py,sha256=0MUNugQa0gEg-YPDZIUEUzOvV0BF9MaPa2J27c1t3N4,9612
|
|
17
|
+
duckdb_kernel/db/implementation/postgres/__init__.py,sha256=HKogB1es4wOiQUoh7_eT32xnUFLmzoCyR_0LuY9r8YQ,35
|
|
18
|
+
duckdb_kernel/db/implementation/postgres/util.py,sha256=4nr1mqXhlwkMVXbJSfJ7dRlUm6UskpvgKApe7GRwmBI,281
|
|
19
|
+
duckdb_kernel/db/implementation/sqlite/Connection.py,sha256=W_7Eb2u2dHl54h5FXGQVc9oIFa6czYMhkNc2UWbTrkE,7118
|
|
20
|
+
duckdb_kernel/db/implementation/sqlite/__init__.py,sha256=HKogB1es4wOiQUoh7_eT32xnUFLmzoCyR_0LuY9r8YQ,35
|
|
21
|
+
duckdb_kernel/magics/MagicCommand.py,sha256=l0EmnqgGZ0HyqQhdTljAaftflVo_RYp-U5UiDftYxAA,3180
|
|
22
|
+
duckdb_kernel/magics/MagicCommandCallback.py,sha256=Otl7Sa53eJtkMU5gBup3VTVCQfr7p00kt-xpnlETVe4,877
|
|
23
|
+
duckdb_kernel/magics/MagicCommandException.py,sha256=MwuWkpA6NoCqz437urdI0RVXhbSbVdziuRoi7slYFPc,49
|
|
24
|
+
duckdb_kernel/magics/MagicCommandHandler.py,sha256=hKNHRfa0BSPei4QXdVlLlbpvZIhJJ91aaT_HTMiK28E,4700
|
|
25
|
+
duckdb_kernel/magics/MagicState.py,sha256=Vt_KwUwQP3446c1snSxS68Skl5AZQzrJd2Q1ETpKuKI,344
|
|
26
|
+
duckdb_kernel/magics/__init__.py,sha256=ggxzDzDEsKMZzYsWw9JqYVJhciJPvPVYGV7oNo9Yp-E,239
|
|
27
|
+
duckdb_kernel/parser/DCParser.py,sha256=Hjlck8k17WhlHZ_zeEoQBP1xbf94bFD7YMEELTC7BnM,2507
|
|
28
|
+
duckdb_kernel/parser/LogicParser.py,sha256=_vZwE5OPRUEN8aEC_fSZAYKR_dpexqNthXog9OFHYRY,1233
|
|
29
|
+
duckdb_kernel/parser/ParserError.py,sha256=qJQVloFtID1HgVDQ1Io247bODT1ic3oO9Z1ZrWR-2Mk,321
|
|
30
|
+
duckdb_kernel/parser/RAParser.py,sha256=pNTnIRH9TzoawGPlM16JCv0KgYu0KZN2K3XC72-pL-4,3324
|
|
31
|
+
duckdb_kernel/parser/__init__.py,sha256=nTmDm1ADvNPDHhVJQLxKYmArNJk6967EUXqn5AkT8FM,126
|
|
32
|
+
duckdb_kernel/parser/elements/DCOperand.py,sha256=qEg_6Us4WV1eK4Bq6oUsmFt_L_x5pJPGce_wSapzIYA,1149
|
|
33
|
+
duckdb_kernel/parser/elements/LogicElement.py,sha256=uH-0Ax6Etp97b3VLnc24RB3rMLCbbPUrCKi2JBBVCLs,251
|
|
34
|
+
duckdb_kernel/parser/elements/LogicOperand.py,sha256=B9NvriloQE5eP734dNMZBZwrdaaIfsuAmZlG1t2eMhs,1021
|
|
35
|
+
duckdb_kernel/parser/elements/LogicOperator.py,sha256=lkM4TAGkXUhsO4w4PLKVA0bgCRGPQQFpNA1FcWWOW9Q,1028
|
|
36
|
+
duckdb_kernel/parser/elements/RABinaryOperator.py,sha256=XN41stGc1e-a4dZ1AQVtQ3lEgjUGNt3dMfYXp85LEeE,538
|
|
37
|
+
duckdb_kernel/parser/elements/RAElement.py,sha256=3qf-ZLQU5WAH_3TvEnfXUg8Y9lE2Fg01D82XutIfgjg,1661
|
|
38
|
+
duckdb_kernel/parser/elements/RAOperand.py,sha256=pghnTYCrrT6MkvynJRgVFPRoMvxIGNB3FTjaq-uCpDQ,1078
|
|
39
|
+
duckdb_kernel/parser/elements/RAOperator.py,sha256=rtqMFBIBBqT-Bwg7Qm4WQwbDrE28Nb74F_7XMeR3ks4,255
|
|
40
|
+
duckdb_kernel/parser/elements/RARelationReference.py,sha256=d3GLFnfNbQ22BzrI61jxUGXCP3RwheeZGDGCpA0CEkc,3404
|
|
41
|
+
duckdb_kernel/parser/elements/RAUnaryOperator.py,sha256=TyMh5Vh6cdeL8muNRBTgnU6I1JJe97OCv5MH09cCJk0,877
|
|
42
|
+
duckdb_kernel/parser/elements/__init__.py,sha256=yZj38th1ogacHU80ExPsjDeAf6dqZsw3jrkuKA7b3kg,619
|
|
43
|
+
duckdb_kernel/parser/elements/binary/Add.py,sha256=XGkZMfab01huk9EaI6JUfzkd2STbV1C_-TyC2guKE8I,190
|
|
44
|
+
duckdb_kernel/parser/elements/binary/And.py,sha256=p6TQE49DtHlMlTkH9GqyrQVcYWsVgdIMTTCxNuNORuQ,267
|
|
45
|
+
duckdb_kernel/parser/elements/binary/ArrowLeft.py,sha256=u4fZSoyT9lfvWXBwuhUl4DdjVZAOqyVIKmMVbpElLD4,203
|
|
46
|
+
duckdb_kernel/parser/elements/binary/ConditionalSet.py,sha256=yzUPWO4KL8BEIQ-SiV00bdLulwHoxgoJRxebyhsRSPU,17884
|
|
47
|
+
duckdb_kernel/parser/elements/binary/Cross.py,sha256=9AFfnpkMApJQulqp81hMOn7yRDZXZJCP1UUaf_-HSrg,705
|
|
48
|
+
duckdb_kernel/parser/elements/binary/Difference.py,sha256=4nyHhjo09UmYjtGNC3xGQxV5ROzCGOpPkyerUN-AlF4,746
|
|
49
|
+
duckdb_kernel/parser/elements/binary/Divide.py,sha256=ubekU4C1wkCTidUSMLEj5neheRx0QjhWSrsPGuXTa1g,265
|
|
50
|
+
duckdb_kernel/parser/elements/binary/Division.py,sha256=FOYxmeNGljRETwygtVn102POCUmt71t9DXdAnLFCXZM,1535
|
|
51
|
+
duckdb_kernel/parser/elements/binary/Equal.py,sha256=xd5eMwVwM7thXqmoBg-JSux4y6osxxznNzaChmgrnGI,192
|
|
52
|
+
duckdb_kernel/parser/elements/binary/FullOuterJoin.py,sha256=fXyz-eTVO4uzLSG4wky-SKh93u0Rzuxjlp_w-MVHS-M,1550
|
|
53
|
+
duckdb_kernel/parser/elements/binary/GreaterThan.py,sha256=lW7EPYjwwZ1VLZOE4ai6MBW7Zq5itsUTi_v6FxoAuU0,204
|
|
54
|
+
duckdb_kernel/parser/elements/binary/GreaterThanEqual.py,sha256=gO1I3J5CZwrpqZb5Oc-WJ_fCnGylpj4YKl4s-ZAr_-4,286
|
|
55
|
+
duckdb_kernel/parser/elements/binary/Intersection.py,sha256=K6NrwcLTJ1BUccifVQ2R2YHR5B71LhjuLhOalxZcM0g,757
|
|
56
|
+
duckdb_kernel/parser/elements/binary/Join.py,sha256=t_PPV7rGXob34ls27IiNkSzgB5yg-XYhuKO9xDkLqQY,992
|
|
57
|
+
duckdb_kernel/parser/elements/binary/LeftOuterJoin.py,sha256=HKQIQaV7Er6WYVqpdGgeVbe_DNEUwBoxL9CC0k9ZYBQ,1013
|
|
58
|
+
duckdb_kernel/parser/elements/binary/LeftSemiJoin.py,sha256=sWzG5f3H8nGxmXbJUQFVpEZHjJOAcYo5unm3VvGrTIg,994
|
|
59
|
+
duckdb_kernel/parser/elements/binary/LessThan.py,sha256=gNlyAvew0VyvU8x3ol88zbdh_t9GU51Kd2P_PmHUrAc,201
|
|
60
|
+
duckdb_kernel/parser/elements/binary/LessThanEqual.py,sha256=BKKXBZ4TZQ4EBxBDSNzIpFl4Oz1IGI0tI0Oj7KZUoDo,283
|
|
61
|
+
duckdb_kernel/parser/elements/binary/Minus.py,sha256=1XUTXCA0GcAcCnv9nq4B9ewT0XHJ91LlZGEW1y60POA,192
|
|
62
|
+
duckdb_kernel/parser/elements/binary/Multiply.py,sha256=OctlfN71izFYxIpMo09Qwq-3BmQmSh6-PNKBljMsBrg,195
|
|
63
|
+
duckdb_kernel/parser/elements/binary/Or.py,sha256=e1H_BuY7TQD7XHKGqJYLOebYQvrh1euWOUsXF0FT5dY,264
|
|
64
|
+
duckdb_kernel/parser/elements/binary/RightOuterJoin.py,sha256=cakJNIor_AQRe7LBrQVu2ZN_eksVAZqSVBy1EBFahLA,1035
|
|
65
|
+
duckdb_kernel/parser/elements/binary/RightSemiJoin.py,sha256=B7adyKnIRiwrqZ4wQkz81O_1e6xFkHFajTtSZz-jpS0,1015
|
|
66
|
+
duckdb_kernel/parser/elements/binary/Unequal.py,sha256=1hnC1RcPMxwKKv65OL5prunGgh9cRVDmzJutmtl7gtY,269
|
|
67
|
+
duckdb_kernel/parser/elements/binary/Union.py,sha256=VYTj4M2PVEhWiDwjnyP8qpVVbGvIBSVshlEt-SZYCBY,739
|
|
68
|
+
duckdb_kernel/parser/elements/binary/__init__.py,sha256=-4ZY6vpsiyT8eDkLwyFGHJFWXIMCNYNz9ejFFcjEG5U,1451
|
|
69
|
+
duckdb_kernel/parser/elements/unary/AttributeRename.py,sha256=iMRjU2idjr22-CIR5FIupCKPtxc4WjsrzSbeTxLEQmY,1275
|
|
70
|
+
duckdb_kernel/parser/elements/unary/Not.py,sha256=kG0a-dp3TNjPodUMPiQ6ihtsBrbvn1iWeIPCvtyAwdo,632
|
|
71
|
+
duckdb_kernel/parser/elements/unary/Projection.py,sha256=CcSSLWdDHk1U5JSLhY_NFTdus0BoVNDojVVdIE4SYVo,1112
|
|
72
|
+
duckdb_kernel/parser/elements/unary/Rename.py,sha256=opHSTvQ8jh2yZKmTfSiS8a7vchDuvBXbv1jC77E1Mx4,3755
|
|
73
|
+
duckdb_kernel/parser/elements/unary/Selection.py,sha256=TKykDMw0QGQcMFp0r7g6ye4CkjshBTNq14c7qtMkqs4,955
|
|
74
|
+
duckdb_kernel/parser/elements/unary/__init__.py,sha256=70Gjzfk--ua1B3YG__y-2h2hpVookLYzvrj07GA0UaA,336
|
|
75
|
+
duckdb_kernel/parser/tokenizer/Token.py,sha256=gsCzgU_zLiA-yD0FWvd2qS9LQUXbivESYH-34Glffqs,2404
|
|
76
|
+
duckdb_kernel/parser/tokenizer/Tokenizer.py,sha256=PWGgS7gYgpULiKGDho842UbaXuqmwEkccixuF10oi5g,5081
|
|
77
|
+
duckdb_kernel/parser/tokenizer/__init__.py,sha256=EOSmfc2RJwtB5cE1Hhj1JAra97tckxxS8-legybPy60,58
|
|
78
|
+
duckdb_kernel/parser/util/QuerySplitter.py,sha256=CXpF--muxC5NuSr1xc6-EVaP-ZBXLCkDNZb6zYkRTJk,2222
|
|
79
|
+
duckdb_kernel/parser/util/RenamableColumn.py,sha256=LxJhFDMUv_OxYYDLwKn63QGpBRfs08jVvhuJTzRtc9c,704
|
|
80
|
+
duckdb_kernel/parser/util/RenamableColumnList.py,sha256=5oEDbtvl4YfHbkxu_Ny2pc0EYnhCZsf7EeoNQvftbrU,3281
|
|
81
|
+
duckdb_kernel/parser/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
82
|
+
duckdb_kernel/tests/__init__.py,sha256=-BoPfo1FNQKnvAYt22Ioc21dbuO67QVFaV_SmS1zQw8,2731
|
|
83
|
+
duckdb_kernel/tests/test_dc.py,sha256=E-PppvBU6AuLFpg0M3chFscm-2Kuv2rkz85PL2NCESc,15968
|
|
84
|
+
duckdb_kernel/tests/test_ra.py,sha256=-1SHhD99tZpO_YidW70LNHUHCEwv9-vBQs3-vg7DbRY,83066
|
|
85
|
+
duckdb_kernel/tests/test_result_comparison.py,sha256=TQVLPKKNyV2k3i4jCfasetPfVfCzgYZr92wxQmlzPnA,3859
|
|
86
|
+
duckdb_kernel/tests/test_sql.py,sha256=p7UEokoJs2xc-url7xQ4PmWKxtExrDDYnMeoyR1JD0A,1208
|
|
87
|
+
duckdb_kernel/util/ResultSetComparator.py,sha256=AoG4kUjMgyZRga6J4QVRUYyvDYXm1dMDa3VWpC3KYoQ,2925
|
|
88
|
+
duckdb_kernel/util/SQL.py,sha256=-uRfa0IwEQueZNZ7vkBPczLuvm_87y4_nnMBx3FgqNk,643
|
|
89
|
+
duckdb_kernel/util/TestError.py,sha256=iwlGHr9j6pFDa2cGxqGyvJ-exrFUtPJjVm_OhHi4n3g,97
|
|
90
|
+
duckdb_kernel/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
91
|
+
duckdb_kernel/util/formatting.py,sha256=cbt0CtERnqtzd97mLrOjeJpqM2Lo6pW96BjAYqrOTD8,793
|
|
92
|
+
duckdb_kernel/visualization/Drawer.py,sha256=D0LkiGMvuJ2v6cQSg_axLTGaM4VXAJEQJAynvedQ3So,296
|
|
93
|
+
duckdb_kernel/visualization/Plotly.py,sha256=eWW7mFJ18rbKf-CsvzaLx0wWsyPep7lByVeuUaf4-Ho,3203
|
|
94
|
+
duckdb_kernel/visualization/RATreeDrawer.py,sha256=5ayWknm6PhEqOZ3Pfba8gZD_7pXzCjyTuUOtdKA8Y-o,2947
|
|
95
|
+
duckdb_kernel/visualization/SchemaDrawer.py,sha256=9K-TUUmyeGdMYMTFQJ7evIU3p8p2KyMKeizUc7-y8co,3015
|
|
96
|
+
duckdb_kernel/visualization/__init__.py,sha256=37a-YUXb7Hr4NJCMatpjtmwP2FOPME-5wUWpszrYEMk,100
|
|
97
|
+
duckdb_kernel/visualization/lib/__init__.py,sha256=LYi0YPtn5fXOejbLIqbt_3KzP-XrwpN8l0JzoAI_ngg,1044
|
|
98
|
+
duckdb_kernel/visualization/lib/plotly-3.0.1.min.js,sha256=oy6Be7Eh6eiQFs5M7oXuPxxm9qbJXEtTpfSI93dW16Q,4653932
|
|
99
|
+
duckdb_kernel/visualization/lib/ra.css,sha256=foz1v69EQ117BDduB9QyHH978PbRs2TG1kBS4VGqZbI,57
|
|
100
|
+
duckdb_kernel/visualization/lib/ra.js,sha256=VzMRn55ztcd5Kfu2B6gdRPARpi8n-fvs8oNFnfp55Ec,1845
|
|
101
|
+
jupyter_duckdb-1.4.111.dist-info/METADATA,sha256=Zs-JHGyIYzccetftKagZG_LkK94Fs8szFOuVAb6Dbzw,9272
|
|
102
|
+
jupyter_duckdb-1.4.111.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
103
|
+
jupyter_duckdb-1.4.111.dist-info/top_level.txt,sha256=KvRRPMnmkQNuhyBsXoPmwyt26LRDp0O-0HN6u0Dm5jA,14
|
|
104
|
+
jupyter_duckdb-1.4.111.dist-info/RECORD,,
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
duckdb_kernel/__init__.py,sha256=6auU6zeJrsA4fxPSr2PYamS8fG-SMXTn5YQFXF2cseo,33
|
|
2
|
-
duckdb_kernel/__main__.py,sha256=Z3GwHEBWoQjNm2Y84ijnbA0Lk66L7nsFREuqhZ_ptk0,165
|
|
3
|
-
duckdb_kernel/kernel.json,sha256=_7E8Ci2FSdCvnzCjsOaue8QE8AvpS5JLQuxORO5IGtA,127
|
|
4
|
-
duckdb_kernel/kernel.py,sha256=wEEH7ZH7lbOvCa8NUe_5yuGT0P45Qg37NPzGT1-BMLc,19396
|
|
5
|
-
duckdb_kernel/db/Column.py,sha256=GM5P6sFdlYK92hiKln5-6038gIDOTxh1AYbR4kiga_w,559
|
|
6
|
-
duckdb_kernel/db/Connection.py,sha256=5pH-CwGh-r9Q2QwJKGSxvoINBU-sqmvZyG4Q1digfeE,599
|
|
7
|
-
duckdb_kernel/db/Constraint.py,sha256=1YgUHk7s8mHCVedbcuJKyXDykj7_ybbwT3Dk9p2VMis,287
|
|
8
|
-
duckdb_kernel/db/DatabaseError.py,sha256=43zl8yym1f-fxH_UtGIbWnDnBE_TRwr9aCziY9t40QY,41
|
|
9
|
-
duckdb_kernel/db/ForeignKey.py,sha256=iurUAXwTwSIpLXsL0B7BA8jqDTfW4_wkeHxoqQbZwiU,470
|
|
10
|
-
duckdb_kernel/db/Table.py,sha256=6M_CTBV3QlrL_7CdYfu6s9LelXBQ5RdMUAyntE6xcDI,746
|
|
11
|
-
duckdb_kernel/db/__init__.py,sha256=PKQYQDCW7VQYxmzhQK6A0Qloka9FdMfeFQMfY-CjBSA,198
|
|
12
|
-
duckdb_kernel/db/error/EmptyResultError.py,sha256=N9Oxi2HDZBKaRQsfRsWpJJGOYX4BjdQqWOU-XvzUzNY,92
|
|
13
|
-
duckdb_kernel/db/error/__init__.py,sha256=oHfhfbcfyTJ3pAPN835omdQcebvJTauuULFx5gm9rq4,47
|
|
14
|
-
duckdb_kernel/db/implementation/duckdb/Connection.py,sha256=znJ9mTbE4pjCLTVY_10PRAq_mv7NnxnnOuXOkKCNtSo,6395
|
|
15
|
-
duckdb_kernel/db/implementation/duckdb/__init__.py,sha256=HKogB1es4wOiQUoh7_eT32xnUFLmzoCyR_0LuY9r8YQ,35
|
|
16
|
-
duckdb_kernel/db/implementation/postgres/Connection.py,sha256=K8DRKJ5UyAJgRhMMIivhfUNzFIDarc_EmwCuRaPBGQ0,8810
|
|
17
|
-
duckdb_kernel/db/implementation/postgres/__init__.py,sha256=HKogB1es4wOiQUoh7_eT32xnUFLmzoCyR_0LuY9r8YQ,35
|
|
18
|
-
duckdb_kernel/db/implementation/postgres/util.py,sha256=4nr1mqXhlwkMVXbJSfJ7dRlUm6UskpvgKApe7GRwmBI,281
|
|
19
|
-
duckdb_kernel/db/implementation/sqlite/Connection.py,sha256=51I9G03PRLmreV2vlb7VVYjooAW13vlcFnimNuliLdo,6888
|
|
20
|
-
duckdb_kernel/db/implementation/sqlite/__init__.py,sha256=HKogB1es4wOiQUoh7_eT32xnUFLmzoCyR_0LuY9r8YQ,35
|
|
21
|
-
duckdb_kernel/magics/MagicCommand.py,sha256=OoQ6j4cNtIYjaK4MPVzJyv1eYTNu4_a7qoRx-5G3Hg0,2346
|
|
22
|
-
duckdb_kernel/magics/MagicCommandCallback.py,sha256=r1kkJyRR7sZnrnlMH3w4bGqDAJL-BVTIB4-Kn66ynlM,764
|
|
23
|
-
duckdb_kernel/magics/MagicCommandException.py,sha256=MwuWkpA6NoCqz437urdI0RVXhbSbVdziuRoi7slYFPc,49
|
|
24
|
-
duckdb_kernel/magics/MagicCommandHandler.py,sha256=4njm49cNnLBH9j8GazrmA-wF8XkXfSioJDuCoDyumqc,2749
|
|
25
|
-
duckdb_kernel/magics/__init__.py,sha256=DA8gnQeRCUt1Scy3_NQ9w5CPmMEY9i8YwB-g392pN1U,204
|
|
26
|
-
duckdb_kernel/parser/DCParser.py,sha256=ciNdM_ZFfa10bBlAc_bB2tKmPOxnXBcAGpYROjbAkVY,2120
|
|
27
|
-
duckdb_kernel/parser/LogicParser.py,sha256=PI4NTe4UZIsnEvoAe_LgpEtmGraTTmYOsUk5_Qr3QOk,1137
|
|
28
|
-
duckdb_kernel/parser/RAParser.py,sha256=PcyqVxsfHlHJexHy77tL6XIubA2eArBUqbrw13BZz6Q,2891
|
|
29
|
-
duckdb_kernel/parser/__init__.py,sha256=Tcq5YTgF-FQSgleSx-nGzUXfR_GR02DKUNDKgBskKVQ,99
|
|
30
|
-
duckdb_kernel/parser/elements/DCOperand.py,sha256=RGj_n-v4BimiK3bMGSwOtV03g2FTg-97d4lJ8tPUZmM,977
|
|
31
|
-
duckdb_kernel/parser/elements/LogicElement.py,sha256=YasKHxWLDDP8UdyLIKbXzqIRA8-XaakjmvTj-1Iuzyc,280
|
|
32
|
-
duckdb_kernel/parser/elements/LogicOperand.py,sha256=B9NvriloQE5eP734dNMZBZwrdaaIfsuAmZlG1t2eMhs,1021
|
|
33
|
-
duckdb_kernel/parser/elements/LogicOperator.py,sha256=lkM4TAGkXUhsO4w4PLKVA0bgCRGPQQFpNA1FcWWOW9Q,1028
|
|
34
|
-
duckdb_kernel/parser/elements/RABinaryOperator.py,sha256=XN41stGc1e-a4dZ1AQVtQ3lEgjUGNt3dMfYXp85LEeE,538
|
|
35
|
-
duckdb_kernel/parser/elements/RAElement.py,sha256=d6QWO8KlWcwhA4tXtWsf8K4oT3OMMjTvEnUD4yaWQ_c,1468
|
|
36
|
-
duckdb_kernel/parser/elements/RAOperand.py,sha256=pghnTYCrrT6MkvynJRgVFPRoMvxIGNB3FTjaq-uCpDQ,1078
|
|
37
|
-
duckdb_kernel/parser/elements/RAOperator.py,sha256=rtqMFBIBBqT-Bwg7Qm4WQwbDrE28Nb74F_7XMeR3ks4,255
|
|
38
|
-
duckdb_kernel/parser/elements/RAUnaryOperator.py,sha256=XC1nphkSm88JaEu5V_HKnb_8JNoeBfE3EvNL4o0qh2c,654
|
|
39
|
-
duckdb_kernel/parser/elements/__init__.py,sha256=4DA2M43hh9d1fZb5Z6YnTTI-IBkDyhChSF5L9X3EA-s,547
|
|
40
|
-
duckdb_kernel/parser/elements/binary/Add.py,sha256=XGkZMfab01huk9EaI6JUfzkd2STbV1C_-TyC2guKE8I,190
|
|
41
|
-
duckdb_kernel/parser/elements/binary/And.py,sha256=0jgetTG8yo5TJSeK70Kj-PI9ERyek1eyMQXX5HBxa4Y,274
|
|
42
|
-
duckdb_kernel/parser/elements/binary/ArrowLeft.py,sha256=u4fZSoyT9lfvWXBwuhUl4DdjVZAOqyVIKmMVbpElLD4,203
|
|
43
|
-
duckdb_kernel/parser/elements/binary/ConditionalSet.py,sha256=OKpUsTP3HzsDg0vVkb3JqWZd5AUL1RnZXmF-8qWoRq8,16649
|
|
44
|
-
duckdb_kernel/parser/elements/binary/Cross.py,sha256=jVY3cvD6qDWZkJ7q74lFUPO2VdDt4aAjdk2YAfg-ZC4,687
|
|
45
|
-
duckdb_kernel/parser/elements/binary/Difference.py,sha256=ZVRgJHYVMOFwnc97oPvGtKvLvHsjSCsn2Aao6ymxY8Y,742
|
|
46
|
-
duckdb_kernel/parser/elements/binary/Divide.py,sha256=d7mzaOeRYSRO1F-2IHsv_C939TuYtLppbf4-5GSRJXs,265
|
|
47
|
-
duckdb_kernel/parser/elements/binary/Division.py,sha256=Tq98RzGHN7QYF3R2ZVpwIiLhSIMQXzRgIuZ7l0D2fXg,1624
|
|
48
|
-
duckdb_kernel/parser/elements/binary/Equal.py,sha256=xd5eMwVwM7thXqmoBg-JSux4y6osxxznNzaChmgrnGI,192
|
|
49
|
-
duckdb_kernel/parser/elements/binary/GreaterThan.py,sha256=lW7EPYjwwZ1VLZOE4ai6MBW7Zq5itsUTi_v6FxoAuU0,204
|
|
50
|
-
duckdb_kernel/parser/elements/binary/GreaterThanEqual.py,sha256=gO1I3J5CZwrpqZb5Oc-WJ_fCnGylpj4YKl4s-ZAr_-4,286
|
|
51
|
-
duckdb_kernel/parser/elements/binary/Intersection.py,sha256=K6NrwcLTJ1BUccifVQ2R2YHR5B71LhjuLhOalxZcM0g,757
|
|
52
|
-
duckdb_kernel/parser/elements/binary/Join.py,sha256=9Z3JinEav3ulLbZZZM9DLbprloHC0oGuSm40Kf1A0mM,836
|
|
53
|
-
duckdb_kernel/parser/elements/binary/LessThan.py,sha256=gNlyAvew0VyvU8x3ol88zbdh_t9GU51Kd2P_PmHUrAc,201
|
|
54
|
-
duckdb_kernel/parser/elements/binary/LessThanEqual.py,sha256=BKKXBZ4TZQ4EBxBDSNzIpFl4Oz1IGI0tI0Oj7KZUoDo,283
|
|
55
|
-
duckdb_kernel/parser/elements/binary/Minus.py,sha256=1XUTXCA0GcAcCnv9nq4B9ewT0XHJ91LlZGEW1y60POA,192
|
|
56
|
-
duckdb_kernel/parser/elements/binary/Multiply.py,sha256=OctlfN71izFYxIpMo09Qwq-3BmQmSh6-PNKBljMsBrg,195
|
|
57
|
-
duckdb_kernel/parser/elements/binary/Or.py,sha256=e1H_BuY7TQD7XHKGqJYLOebYQvrh1euWOUsXF0FT5dY,264
|
|
58
|
-
duckdb_kernel/parser/elements/binary/Unequal.py,sha256=1hnC1RcPMxwKKv65OL5prunGgh9cRVDmzJutmtl7gtY,269
|
|
59
|
-
duckdb_kernel/parser/elements/binary/Union.py,sha256=VYTj4M2PVEhWiDwjnyP8qpVVbGvIBSVshlEt-SZYCBY,739
|
|
60
|
-
duckdb_kernel/parser/elements/binary/__init__.py,sha256=PtZgC0vOQONRx0FnFvzaxK9dYobdCykbQATP20djivA,983
|
|
61
|
-
duckdb_kernel/parser/elements/unary/Not.py,sha256=kG0a-dp3TNjPodUMPiQ6ihtsBrbvn1iWeIPCvtyAwdo,632
|
|
62
|
-
duckdb_kernel/parser/elements/unary/Projection.py,sha256=CJ-MIf1-__1ewTjNZVy5hOz3Z18CWnCDNJBxUdpWXVQ,1112
|
|
63
|
-
duckdb_kernel/parser/elements/unary/Rename.py,sha256=Zr2n9EJ3nA476lND0Djz2b6493nnsbSpJ9kkEgk5B_Y,1273
|
|
64
|
-
duckdb_kernel/parser/elements/unary/Selection.py,sha256=TKykDMw0QGQcMFp0r7g6ye4CkjshBTNq14c7qtMkqs4,955
|
|
65
|
-
duckdb_kernel/parser/elements/unary/__init__.py,sha256=48EDygy0pD7l3J_BlXGc-b7HYPaiHQa1-0Mcsj9Xzr0,270
|
|
66
|
-
duckdb_kernel/parser/tokenizer/Token.py,sha256=vwN5hHg11kqzOHLeL5GO1c1BbCTZzYDTuy0QR4kDzew,1800
|
|
67
|
-
duckdb_kernel/parser/tokenizer/Tokenizer.py,sha256=PWGgS7gYgpULiKGDho842UbaXuqmwEkccixuF10oi5g,5081
|
|
68
|
-
duckdb_kernel/parser/tokenizer/__init__.py,sha256=EOSmfc2RJwtB5cE1Hhj1JAra97tckxxS8-legybPy60,58
|
|
69
|
-
duckdb_kernel/parser/util/RenamableColumn.py,sha256=LxJhFDMUv_OxYYDLwKn63QGpBRfs08jVvhuJTzRtc9c,704
|
|
70
|
-
duckdb_kernel/parser/util/RenamableColumnList.py,sha256=GfhdGv4KYT64Z9YA9TCn-7hhcEcc3Gu3vI2zMZ52w-8,3015
|
|
71
|
-
duckdb_kernel/parser/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
72
|
-
duckdb_kernel/util/ResultSetComparator.py,sha256=RZDIfjJyx8-eR-HIqQlEYgZd_V1ympbszpVRF4TlA7o,2262
|
|
73
|
-
duckdb_kernel/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
74
|
-
duckdb_kernel/util/formatting.py,sha256=cbt0CtERnqtzd97mLrOjeJpqM2Lo6pW96BjAYqrOTD8,793
|
|
75
|
-
duckdb_kernel/visualization/Drawer.py,sha256=D0LkiGMvuJ2v6cQSg_axLTGaM4VXAJEQJAynvedQ3So,296
|
|
76
|
-
duckdb_kernel/visualization/RATreeDrawer.py,sha256=j-Vy1zpYMzwZ3CsphyfPW-J7ou9a9tM6aXXgAlQTgDI,2128
|
|
77
|
-
duckdb_kernel/visualization/SchemaDrawer.py,sha256=9K-TUUmyeGdMYMTFQJ7evIU3p8p2KyMKeizUc7-y8co,3015
|
|
78
|
-
duckdb_kernel/visualization/__init__.py,sha256=5eMJmxJ01XAXcgWDn3t70eSZF2PGaXdNo6GK-x-0H3s,78
|
|
79
|
-
jupyter_duckdb-1.2.0.1.dist-info/METADATA,sha256=1A3zmDclWZqxD2LMY8uYNUnkP3EksA263pFA_wmtXuo,7980
|
|
80
|
-
jupyter_duckdb-1.2.0.1.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
81
|
-
jupyter_duckdb-1.2.0.1.dist-info/top_level.txt,sha256=KvRRPMnmkQNuhyBsXoPmwyt26LRDp0O-0HN6u0Dm5jA,14
|
|
82
|
-
jupyter_duckdb-1.2.0.1.dist-info/RECORD,,
|
|
File without changes
|