pixeltable 0.2.13__py3-none-any.whl → 0.2.15__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.
Potentially problematic release.
This version of pixeltable might be problematic. Click here for more details.
- pixeltable/__init__.py +1 -1
- pixeltable/__version__.py +2 -2
- pixeltable/catalog/column.py +8 -3
- pixeltable/catalog/globals.py +8 -0
- pixeltable/catalog/table.py +25 -9
- pixeltable/catalog/table_version.py +30 -55
- pixeltable/catalog/view.py +1 -1
- pixeltable/env.py +4 -4
- pixeltable/exec/__init__.py +2 -1
- pixeltable/exec/row_update_node.py +61 -0
- pixeltable/exec/{sql_scan_node.py → sql_node.py} +120 -56
- pixeltable/exprs/__init__.py +1 -1
- pixeltable/exprs/arithmetic_expr.py +41 -16
- pixeltable/exprs/expr.py +72 -22
- pixeltable/exprs/function_call.py +64 -29
- pixeltable/exprs/globals.py +5 -1
- pixeltable/exprs/inline_array.py +18 -11
- pixeltable/exprs/method_ref.py +63 -0
- pixeltable/ext/__init__.py +9 -0
- pixeltable/ext/functions/__init__.py +8 -0
- pixeltable/ext/functions/whisperx.py +45 -5
- pixeltable/ext/functions/yolox.py +60 -14
- pixeltable/func/callable_function.py +12 -4
- pixeltable/func/expr_template_function.py +1 -1
- pixeltable/func/function.py +12 -2
- pixeltable/func/function_registry.py +24 -9
- pixeltable/func/udf.py +32 -4
- pixeltable/functions/__init__.py +1 -1
- pixeltable/functions/fireworks.py +33 -0
- pixeltable/functions/huggingface.py +96 -6
- pixeltable/functions/image.py +226 -41
- pixeltable/functions/json.py +46 -0
- pixeltable/functions/openai.py +214 -0
- pixeltable/functions/string.py +195 -218
- pixeltable/functions/timestamp.py +210 -0
- pixeltable/functions/together.py +106 -0
- pixeltable/functions/video.py +2 -2
- pixeltable/functions/{eval.py → vision.py} +170 -27
- pixeltable/functions/whisper.py +32 -0
- pixeltable/io/__init__.py +1 -1
- pixeltable/io/external_store.py +2 -2
- pixeltable/io/globals.py +133 -1
- pixeltable/io/pandas.py +82 -31
- pixeltable/iterators/video.py +55 -23
- pixeltable/metadata/__init__.py +1 -1
- pixeltable/metadata/converters/convert_18.py +39 -0
- pixeltable/metadata/notes.py +10 -0
- pixeltable/plan.py +76 -1
- pixeltable/store.py +65 -28
- pixeltable/tool/create_test_db_dump.py +8 -9
- pixeltable/tool/doc_plugins/griffe.py +4 -0
- pixeltable/type_system.py +84 -63
- {pixeltable-0.2.13.dist-info → pixeltable-0.2.15.dist-info}/METADATA +2 -2
- {pixeltable-0.2.13.dist-info → pixeltable-0.2.15.dist-info}/RECORD +57 -51
- pixeltable/exprs/image_member_access.py +0 -96
- {pixeltable-0.2.13.dist-info → pixeltable-0.2.15.dist-info}/LICENSE +0 -0
- {pixeltable-0.2.13.dist-info → pixeltable-0.2.15.dist-info}/WHEEL +0 -0
- {pixeltable-0.2.13.dist-info → pixeltable-0.2.15.dist-info}/entry_points.txt +0 -0
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
pixeltable/__init__.py,sha256=
|
|
2
|
-
pixeltable/__version__.py,sha256=
|
|
1
|
+
pixeltable/__init__.py,sha256=ISVoeqNCvSJonD0EXJ32Mer84m29YQDyLhhUydyCV_o,1272
|
|
2
|
+
pixeltable/__version__.py,sha256=W_WqzmfqTcPKEoJm2xe27vAM27UT0r-3kWzn80OXiJQ,114
|
|
3
3
|
pixeltable/catalog/__init__.py,sha256=E41bxaPeQIcgRYzTWc2vkDOboQhRymrJf4IcHQO7o_8,453
|
|
4
4
|
pixeltable/catalog/catalog.py,sha256=8gsFWm6o9Qg4_BEO6oejdpmP4MAOlhmuKRaJP0o2UPU,7906
|
|
5
|
-
pixeltable/catalog/column.py,sha256=
|
|
5
|
+
pixeltable/catalog/column.py,sha256=mgRjmEsrouMAu_o6EGB4XEUitlstiZ302EUBpUxOGEM,9520
|
|
6
6
|
pixeltable/catalog/dir.py,sha256=DWl9nnCOoiYLKWp31MNMvLmryXeQiQZu5YJcd4tpy38,921
|
|
7
|
-
pixeltable/catalog/globals.py,sha256=
|
|
7
|
+
pixeltable/catalog/globals.py,sha256=RFHl6XrgXzi_fon7O1RhnQ9SM_tkPexDhwrshMRpnmQ,1384
|
|
8
8
|
pixeltable/catalog/insertable_table.py,sha256=qYNuestCC-oR8bEoO1K7WMRWtCTB6RwF3X2LeK3kWG4,5878
|
|
9
9
|
pixeltable/catalog/named_function.py,sha256=UhHaimM_uJHS-0RQcqGOgvWeZtMfKsIgSeKSRwT2moU,1149
|
|
10
10
|
pixeltable/catalog/path.py,sha256=QgccEi_QOfaKt8YsR2zLtd_z7z7QQkU_1kprJFi2SPQ,1677
|
|
11
11
|
pixeltable/catalog/path_dict.py,sha256=xfvxg1Ze5jZCARUGASF2DRbQPh7pRVTYhuJ_u82gYUo,5941
|
|
12
12
|
pixeltable/catalog/schema_object.py,sha256=1GuxN68P3c7g0gmY8doB6qoUGJsalyECWaO-KEi96D0,1879
|
|
13
|
-
pixeltable/catalog/table.py,sha256=
|
|
14
|
-
pixeltable/catalog/table_version.py,sha256=
|
|
13
|
+
pixeltable/catalog/table.py,sha256=5yLwHBdKT_DqfC04eYU467zAc0rfWfFTEr_a0gSFCjo,41816
|
|
14
|
+
pixeltable/catalog/table_version.py,sha256=gZq7__PHf7-8QXTehv7tMJ4smrizBRBVixo6JK-FKkQ,55887
|
|
15
15
|
pixeltable/catalog/table_version_path.py,sha256=6JZlgKMYa3Xf8p_2Z-iDIFIcfuYRyjbpc3_CC9l1HME,6396
|
|
16
|
-
pixeltable/catalog/view.py,sha256=
|
|
16
|
+
pixeltable/catalog/view.py,sha256=ISRela9z5NcrUEvqe5H360xIXs3sY622cCQGe_2bxdY,10397
|
|
17
17
|
pixeltable/dataframe.py,sha256=T8Vi17wy8KT3squF_CsrCf8LYPEof7kH5dBKrVCW5n4,34497
|
|
18
|
-
pixeltable/env.py,sha256=
|
|
18
|
+
pixeltable/env.py,sha256=I_HQ5T7btaimKC81ARoLPxQ4YQrrKEugKN8MEgHCTK8,21679
|
|
19
19
|
pixeltable/exceptions.py,sha256=MSP9zeL0AmXT93XqjdvgGN4rzno1_KRrGriq6hpemnw,376
|
|
20
|
-
pixeltable/exec/__init__.py,sha256=
|
|
20
|
+
pixeltable/exec/__init__.py,sha256=ZU88pHrIT4ob4OQE-2HlYcM4MP_dY4k67KdQGHnGC-M,507
|
|
21
21
|
pixeltable/exec/aggregation_node.py,sha256=cf6rVAgrGh_uaMrCIgXJIwQTmbcboJlnrH_MmPIQSd0,3321
|
|
22
22
|
pixeltable/exec/cache_prefetch_node.py,sha256=d5pEuR6AtJQkEVy9X3XeYFI_q0szMtoNAH96vYdtBE0,5241
|
|
23
23
|
pixeltable/exec/component_iteration_node.py,sha256=Uz6zEeaJMcbvF3S0W0qmLI_uWsZsaSspHKNzuAMrasg,4069
|
|
@@ -27,76 +27,80 @@ pixeltable/exec/exec_node.py,sha256=ixkv3p_EfF53UDWgwLjQGKR1LNIQxzgDXsTzzJj6ea4,
|
|
|
27
27
|
pixeltable/exec/expr_eval_node.py,sha256=eLyUwxA6HE9gHOE_oBT5nfVgd4oK2TQ6gaOM5RnCA8Q,11465
|
|
28
28
|
pixeltable/exec/in_memory_data_node.py,sha256=vvjr5-r94mRddOYIpKF8zDWCJPJrG0YpQVtYSyKlyVU,3502
|
|
29
29
|
pixeltable/exec/media_validation_node.py,sha256=OKfRyKpcn7AZdACy_HD4NsDC87ZfNFs1tdrQz2NiIVw,1514
|
|
30
|
-
pixeltable/exec/
|
|
31
|
-
pixeltable/
|
|
32
|
-
pixeltable/exprs/
|
|
30
|
+
pixeltable/exec/row_update_node.py,sha256=b8yuKtkmI2Q6U-7svKbkjdM3Z85ddZoJgJgUa17j-YE,2773
|
|
31
|
+
pixeltable/exec/sql_node.py,sha256=N-KpAPiLn8TuF2t_07vms3R9_l6k0wqwSWkGIbikV4A,12921
|
|
32
|
+
pixeltable/exprs/__init__.py,sha256=zNlFbBiCI8PAzwBGR1tjyhbGpNXcPr07U2G66Fp7LS0,901
|
|
33
|
+
pixeltable/exprs/arithmetic_expr.py,sha256=Sz927bVrktcmGH2LTQrBEORsSgoztbz2ckpGKs8JElc,5874
|
|
33
34
|
pixeltable/exprs/array_slice.py,sha256=VmWc6iFusrM85MjyEBBCfXG1Jnt8-Gr6-J88BXxNoOE,2131
|
|
34
35
|
pixeltable/exprs/column_property_ref.py,sha256=0PHiBys0fxe2LgjaMId5UHob4E-ZggyPLnnW41RgA0E,2706
|
|
35
36
|
pixeltable/exprs/column_ref.py,sha256=rlw6Ic_atAfPZpEBNAqbRZauMeEUci2rDyVoHd1pA1I,5195
|
|
36
37
|
pixeltable/exprs/comparison.py,sha256=bWa_KZTir_5teKGEXf6cNzJWk55S9-XPPFdY8zoPn6U,4793
|
|
37
38
|
pixeltable/exprs/compound_predicate.py,sha256=y80Kc3LmifYP4Zqa8Etujb4jnItro2D6cS10WYQIGiI,3758
|
|
38
39
|
pixeltable/exprs/data_row.py,sha256=RTBw1cBt29g_9g_hgdEYZ5aiHl7WZMBaBC2fOMOfwOc,8668
|
|
39
|
-
pixeltable/exprs/expr.py,sha256=
|
|
40
|
+
pixeltable/exprs/expr.py,sha256=3FdaMOSIUGNjibnWkAhSO2htei8AmBQBx6QDI_W5Agg,28987
|
|
40
41
|
pixeltable/exprs/expr_set.py,sha256=Q64Q2yI0CTq2Ma_E-BUYlMotSstVuMm4OFZnBCedHRk,1222
|
|
41
|
-
pixeltable/exprs/function_call.py,sha256=
|
|
42
|
-
pixeltable/exprs/globals.py,sha256=
|
|
43
|
-
pixeltable/exprs/image_member_access.py,sha256=KSYdTIaLh53dNRjv3SJFchPMPo7o5diJSQkV1NsyB4Y,3547
|
|
42
|
+
pixeltable/exprs/function_call.py,sha256=8VMF8PACnhLIsT6arKj5lXbDPDyfNLJeciKeNHgVnrk,18515
|
|
43
|
+
pixeltable/exprs/globals.py,sha256=EKiOmuUCfQW1ASb_G6edXzuZrQJblFAt3GCMQjIxNE0,1984
|
|
44
44
|
pixeltable/exprs/in_predicate.py,sha256=ASxkSLeGdOjGN4QgWQA0zF1SkKOmHU_IV0spNpjvTGQ,3707
|
|
45
|
-
pixeltable/exprs/inline_array.py,sha256=
|
|
45
|
+
pixeltable/exprs/inline_array.py,sha256=MMHqDjfHvQc-2o-HOGrq97xGNzlycrKy5ix4IKb6zKI,4830
|
|
46
46
|
pixeltable/exprs/inline_dict.py,sha256=TWYokJ14Nq-evODcYFVO471WSEDbz6cJqIdRb2PkbZQ,3885
|
|
47
47
|
pixeltable/exprs/is_null.py,sha256=K5EQCgpgLk-VfqO58b2T98qR9uui5ryhmskU2Ap8lWg,1016
|
|
48
48
|
pixeltable/exprs/json_mapper.py,sha256=I60VNgus64ai80gnFCIsRn0VRWYXMkqH5VNvnATsN9s,4559
|
|
49
49
|
pixeltable/exprs/json_path.py,sha256=Wz_5zFsyc9TPhsSbsDjDmQ3Nb0uVIwMCx5nh-cQYBiE,6526
|
|
50
50
|
pixeltable/exprs/literal.py,sha256=5NNza-WL1dd3hNznwwkr_yAcTGXSIRYUszGfy30lruI,2396
|
|
51
|
+
pixeltable/exprs/method_ref.py,sha256=GE2RaNlAEI_RHJBXeT7QhLG84V3P_k5DSzq5npNAgf0,2588
|
|
51
52
|
pixeltable/exprs/object_ref.py,sha256=eTcx84aWRI59fIiGvbdv3_cfL0XW4xEFQ4lwpLpJkM8,1250
|
|
52
53
|
pixeltable/exprs/row_builder.py,sha256=0OYd51J2ECPHkk2iN3MfYpS7LqnHTV5l5ubsVcy0dJA,15926
|
|
53
54
|
pixeltable/exprs/rowid_ref.py,sha256=74w4rEy21YysTVbyKNc3op-pYFqDAx8VJdtl7ZPpxHs,4268
|
|
54
55
|
pixeltable/exprs/similarity_expr.py,sha256=DqLOWtwPn9LxBRPm-d5Qz0yZ7w9YTOP8w0rgbr-6Lyg,3702
|
|
55
56
|
pixeltable/exprs/type_cast.py,sha256=JMg8p1qYoFfiAXfJPSbTEnfrK7lRO_JMaqlPHOrhNQU,1793
|
|
56
57
|
pixeltable/exprs/variable.py,sha256=Kg_O4ytcHYZFijIyMHYBJn063cTKU1-YE583FAz8Qaw,1361
|
|
57
|
-
pixeltable/ext/__init__.py,sha256=
|
|
58
|
-
pixeltable/ext/functions/
|
|
59
|
-
pixeltable/ext/functions/
|
|
58
|
+
pixeltable/ext/__init__.py,sha256=iO0J_Jfnv38F5y40sDAW54gpXjIyZgOGgoWQJAwjQec,423
|
|
59
|
+
pixeltable/ext/functions/__init__.py,sha256=hIjPEKC5E5uJOXlQqUyhP9yn9ZqWOCJAlj0kXWDlhlE,159
|
|
60
|
+
pixeltable/ext/functions/whisperx.py,sha256=wDi0XwAi1PeiB7NoA_4t9JwbwWjjbHBSgd5hH0HD0aM,2176
|
|
61
|
+
pixeltable/ext/functions/yolox.py,sha256=qxW-WosgFkpC8EWQUn7CPgW58z_Vc4idfbDIpZ6FpDA,5093
|
|
60
62
|
pixeltable/func/__init__.py,sha256=WjftUGyNkd6bF_qSxqZ5Gd7Elf8oExb3dUlpydhdFTo,407
|
|
61
63
|
pixeltable/func/aggregate_function.py,sha256=pyF479nBrN2mZ8mAnsbmt2T8KxsDAVNgpUXiqHM2Nt8,9486
|
|
62
|
-
pixeltable/func/callable_function.py,sha256=
|
|
63
|
-
pixeltable/func/expr_template_function.py,sha256=
|
|
64
|
-
pixeltable/func/function.py,sha256=
|
|
65
|
-
pixeltable/func/function_registry.py,sha256=
|
|
64
|
+
pixeltable/func/callable_function.py,sha256=vmAs9FIvyV7loUKc-2NAA9MUKVXS6hEZWQ9RHcdcqwQ,4913
|
|
65
|
+
pixeltable/func/expr_template_function.py,sha256=0krKY-0i-aTZdgAS8wZkq4NQc-EVtAA7-a0zh2vHmTI,4059
|
|
66
|
+
pixeltable/func/function.py,sha256=Q8q6qf3LUtBnGRQTxJLuDgQU3QHoyR2GsFyS1Tnn6RA,5955
|
|
67
|
+
pixeltable/func/function_registry.py,sha256=VvYJjS6OZaS15JdhTNM0aDU26b9NjFndc8E25YtTHLI,12406
|
|
66
68
|
pixeltable/func/globals.py,sha256=sEwn6lGgHMp6VQORb_P5qRd_-Q2_bUSqvqM9-XPN_ec,1483
|
|
67
69
|
pixeltable/func/query_template_function.py,sha256=BUU0KZYkqVPjIFg6g6msU4PzVGf2fkEKveDaEMGXhzI,3680
|
|
68
70
|
pixeltable/func/signature.py,sha256=6Lwf32auSnmhYGrN4NkHk07BmG2a73TNICbWnelkH1s,8638
|
|
69
|
-
pixeltable/func/udf.py,sha256=
|
|
70
|
-
pixeltable/functions/__init__.py,sha256=
|
|
71
|
-
pixeltable/functions/
|
|
72
|
-
pixeltable/functions/fireworks.py,sha256=sbZy3HRn8o01nT4k1lOJJ_jGrjhBNkYmj1_TraoYCiM,1090
|
|
71
|
+
pixeltable/func/udf.py,sha256=xrfCuYFF7Qqx-I_vE11WT9AoY6UbbzIIZ2DBGzYGzDE,7772
|
|
72
|
+
pixeltable/functions/__init__.py,sha256=XSDRav2-RMrey_kL3GNhwNlKf_82vjXgN456gt2inxE,315
|
|
73
|
+
pixeltable/functions/fireworks.py,sha256=69EoYE8aS9s9SV6iTJGeUb7mNEHdodHh96JsOa2KL7Y,2575
|
|
73
74
|
pixeltable/functions/globals.py,sha256=9yz5XzhGhh4kuvHJ8eiFvy9SCPYaZrF5ltwscMH9xEg,2692
|
|
74
|
-
pixeltable/functions/huggingface.py,sha256=
|
|
75
|
-
pixeltable/functions/image.py,sha256=
|
|
76
|
-
pixeltable/functions/
|
|
77
|
-
pixeltable/functions/
|
|
78
|
-
pixeltable/functions/
|
|
75
|
+
pixeltable/functions/huggingface.py,sha256=__SbMaYVLBd81gQXstNXPp6wxXPbNvrTgu8gi_RCnZI,12750
|
|
76
|
+
pixeltable/functions/image.py,sha256=mG1AKn1rwmY3eQdKgzuJRn0Vdxq84xHqla-P5dDe0dY,13306
|
|
77
|
+
pixeltable/functions/json.py,sha256=mJ8oEJMJ2aqt5jCrPSN7vf7oSeQOsMN8Wn1H3PSLoKs,921
|
|
78
|
+
pixeltable/functions/openai.py,sha256=4FyL60mQUPcqb19DkFMBbBHf6utV3xsOs6SPWZrfXp8,15981
|
|
79
|
+
pixeltable/functions/string.py,sha256=JEng3jwYZUSYSfjWjto7tLxlIvQLW1JvQ7OmncIgd5M,20085
|
|
80
|
+
pixeltable/functions/timestamp.py,sha256=pfP28wErdjWOMLgJaxqXPMMScf4_LGUFja7oYb_cNBg,6620
|
|
81
|
+
pixeltable/functions/together.py,sha256=Gvy7ontUQmTx1n-eFvGaDEfl48v95eClNy0FmoT3Ivw,8587
|
|
79
82
|
pixeltable/functions/util.py,sha256=F2iiIL7UfhYdCVzdCa3efYqWbaeLKFrbycKnuPkG57M,650
|
|
80
|
-
pixeltable/functions/video.py,sha256=
|
|
81
|
-
pixeltable/functions/
|
|
83
|
+
pixeltable/functions/video.py,sha256=qojNjimWK5jIO8fm_3WtQtAy8v-5qGDTl3Zx--St_fw,7077
|
|
84
|
+
pixeltable/functions/vision.py,sha256=DXhaMGcLh0_AYhq0MSBluGRZvd3iW-R85Og15ARpqFA,13984
|
|
85
|
+
pixeltable/functions/whisper.py,sha256=8oS2HjpewwAxt7RmLMXNqPl76_7Aq9c-qyAe-zJbu1U,3234
|
|
82
86
|
pixeltable/globals.py,sha256=RNlJDTf6w350YaCco5JXYxYY2j1rcSzgBNazmIHB48c,14823
|
|
83
87
|
pixeltable/index/__init__.py,sha256=XBwetNQQwnz0fiKwonOKhyy_U32l_cjt77kNvEIdjWs,102
|
|
84
88
|
pixeltable/index/base.py,sha256=YAQ5Dz1mfI0dfu9rxWHWroE8TjB90yKfPtXAzoADq38,1568
|
|
85
89
|
pixeltable/index/btree.py,sha256=NE4GYhcJWYJhdKyeHI0sQBlFvUaIgGOF9KLyCZOfFjE,1822
|
|
86
90
|
pixeltable/index/embedding_index.py,sha256=U1wAjcTYvw3uJf3QHIOzBV8FLOUn8IeaFsLzUb_QTmc,7829
|
|
87
|
-
pixeltable/io/__init__.py,sha256=
|
|
88
|
-
pixeltable/io/external_store.py,sha256=
|
|
89
|
-
pixeltable/io/globals.py,sha256=
|
|
91
|
+
pixeltable/io/__init__.py,sha256=bJGWPhKfgoMrSKFdXhLGupjQQbIXt7JaoUPwilND2PE,519
|
|
92
|
+
pixeltable/io/external_store.py,sha256=moczIqeHt1jtB0_8OwJeCN4JVMY6452w8VsX26y76Hk,16466
|
|
93
|
+
pixeltable/io/globals.py,sha256=c5BXz_iZ4j7kChr1e9NhBI5ZHqQ1OzeR97jr2P0zDGE,13251
|
|
90
94
|
pixeltable/io/hf_datasets.py,sha256=h5M1NkXOvEU8kaeT3AON1A18Vmhnc1lVo5a3TZ5AAic,8004
|
|
91
95
|
pixeltable/io/label_studio.py,sha256=ipcgyFkKurP9IsBScLVK7UVddWJWXQ8M1p_3bh9Z60s,31018
|
|
92
|
-
pixeltable/io/pandas.py,sha256=
|
|
96
|
+
pixeltable/io/pandas.py,sha256=JR-dCw0pSVfSsNw2uH7VhQLdkJt7RzdM9iCl3KfVkR4,9287
|
|
93
97
|
pixeltable/io/parquet.py,sha256=i4hvYHsARe2GnZHxNmI66Vf3tr1sIFLN6KGCJYvH3o8,8149
|
|
94
98
|
pixeltable/iterators/__init__.py,sha256=sjldFckkT8aVRiKgEP6faeAK2NQBdzbmpwAeRhI1FkM,366
|
|
95
99
|
pixeltable/iterators/base.py,sha256=cnEh1tNN2JAxRzrLTg3dhun3N1oNQ8vifCm6ts3_UiE,1687
|
|
96
100
|
pixeltable/iterators/document.py,sha256=netSCJatG8NcgbHZ69BvQVICdAorQlYi8OlcpqwLQD4,19436
|
|
97
101
|
pixeltable/iterators/string.py,sha256=NG_fWc_GAITDfzl6MvrDOMrSoMcZdMZf6hPQztCSatE,1305
|
|
98
|
-
pixeltable/iterators/video.py,sha256=
|
|
99
|
-
pixeltable/metadata/__init__.py,sha256=
|
|
102
|
+
pixeltable/iterators/video.py,sha256=Glp7qNjyrH8X5S4WJOEsZhCa4yChalTICiR9bbMsHlo,5734
|
|
103
|
+
pixeltable/metadata/__init__.py,sha256=niAW1Ac-lwaqbQ3svAwoiqbcWhfJEbgHjsj3s1ZyK2E,2172
|
|
100
104
|
pixeltable/metadata/converters/convert_10.py,sha256=J1_r7LNNAWTdb042AwqFpJ4sEB-i4qhUdk5iOjcZk34,719
|
|
101
105
|
pixeltable/metadata/converters/convert_12.py,sha256=Ci-qyZW1gqci-8wnjeOB5afdq7KTuN-hVSV9OqSPx8g,162
|
|
102
106
|
pixeltable/metadata/converters/convert_13.py,sha256=yFR6lD3pOrZ46ZQBFKYvxiIYa7rRxh46Bsq7yiCBNak,1356
|
|
@@ -104,17 +108,19 @@ pixeltable/metadata/converters/convert_14.py,sha256=o4Dwu5wujJYILN-2chg3xCSUsh4c
|
|
|
104
108
|
pixeltable/metadata/converters/convert_15.py,sha256=N-Lt3OdOrUprN-z1gFcxniZgAtZ7jzup_YUZzXX6EtY,1709
|
|
105
109
|
pixeltable/metadata/converters/convert_16.py,sha256=SvcWOYgLwRw_gLTnLbCSI9f2cpdkXazYOmmtJUOOzv4,476
|
|
106
110
|
pixeltable/metadata/converters/convert_17.py,sha256=vJg4y2lg53WSj9OSntWsdUiCr6yRgMQm0eFbs_Geqjg,861
|
|
111
|
+
pixeltable/metadata/converters/convert_18.py,sha256=tejUM88AVZmPsg4l2OWqEEPmpSzXpb6ZFxFTdYZ8-7E,1462
|
|
107
112
|
pixeltable/metadata/converters/util.py,sha256=AcYs3yUICl93y8whf0pkeWZoCzE4JuUMafmcYMyJUCY,2618
|
|
113
|
+
pixeltable/metadata/notes.py,sha256=NLZdM_iXONU0BeNwz5wK6I4UioMG71Sakfu9k15F6jc,467
|
|
108
114
|
pixeltable/metadata/schema.py,sha256=WJZ1YPgS88rFElXbjYgDhcrI4VReR1I9VPOnTkoHvoI,8418
|
|
109
|
-
pixeltable/plan.py,sha256=
|
|
110
|
-
pixeltable/store.py,sha256=
|
|
111
|
-
pixeltable/tool/create_test_db_dump.py,sha256=
|
|
115
|
+
pixeltable/plan.py,sha256=7CyRIkwXtAgwIjrco0p0Hrya0va0r6Q2LHmq-iIsK50,37010
|
|
116
|
+
pixeltable/store.py,sha256=fsVebBo0vkSoMH-p56JmUOcza3n4FLAS9GAbmqypUAk,20807
|
|
117
|
+
pixeltable/tool/create_test_db_dump.py,sha256=c-usyivgU_wj8LQgzbtbwuJoNbWIhJbfkKtHZFzl2BQ,10768
|
|
112
118
|
pixeltable/tool/create_test_video.py,sha256=OLfccymYReIpzE8osZn4rQvLXxxiPC_l0vc06U74hVM,2899
|
|
113
|
-
pixeltable/tool/doc_plugins/griffe.py,sha256=
|
|
119
|
+
pixeltable/tool/doc_plugins/griffe.py,sha256=Q6ARBlQNBm8J21G_p625TB5c8MQ8r6hJlm7I2LoBon0,3422
|
|
114
120
|
pixeltable/tool/doc_plugins/mkdocstrings.py,sha256=afq7XOaSC5WRmugkh-FMFMK8PqOgIlDIsJdD8cuPhtE,207
|
|
115
121
|
pixeltable/tool/doc_plugins/templates/material/udf.html.jinja,sha256=R-7Q57nmDd5BUea-F1-MjwjK3pq7uBHXNoSo8_QjZG4,4890
|
|
116
122
|
pixeltable/tool/embed_udf.py,sha256=llHUhjGnCMp7Wyz7eHgKZV2v6o2ZWSgLQKscESuHK_o,269
|
|
117
|
-
pixeltable/type_system.py,sha256=
|
|
123
|
+
pixeltable/type_system.py,sha256=251uRuYr2gfY-j704ee9gNvkEKxKU8YBONPLMDPnJcs,31236
|
|
118
124
|
pixeltable/utils/__init__.py,sha256=UYlrf6TIWJT0g-Hac0b34-dEk478B5Qx8dGco34YlIk,439
|
|
119
125
|
pixeltable/utils/arrow.py,sha256=83_7aG5UR2qtTktw_otLkQs-RQbLk0VVM0JLJkbweNU,3692
|
|
120
126
|
pixeltable/utils/coco.py,sha256=ISpFBhR4eO1jOcg_SPb0thVI4KdS6H0RyNQauZIA5A4,7287
|
|
@@ -129,8 +135,8 @@ pixeltable/utils/pytorch.py,sha256=BR4tgfUWw-2rwWTOgzXj5qdMBpe1Arpp5SK4ax6jjpk,3
|
|
|
129
135
|
pixeltable/utils/s3.py,sha256=DBfXp0SYubhiKckdAD7PsiVBX_YfVP8Rcu6DCG_3SaQ,433
|
|
130
136
|
pixeltable/utils/sql.py,sha256=5n5_OmXAGtqFdL6z5XvgnU-vlx6Ba6f1WJrO1ZwUle8,765
|
|
131
137
|
pixeltable/utils/transactional_directory.py,sha256=UGzCrGtLR3hEEf8sYGuWBzLVFAEQml3vdIavigWeTBM,1349
|
|
132
|
-
pixeltable-0.2.
|
|
133
|
-
pixeltable-0.2.
|
|
134
|
-
pixeltable-0.2.
|
|
135
|
-
pixeltable-0.2.
|
|
136
|
-
pixeltable-0.2.
|
|
138
|
+
pixeltable-0.2.15.dist-info/LICENSE,sha256=0UNMmwuqWPC0xDY1NWMm4uNJ2_MyA1pnTNRgQTvuBiQ,746
|
|
139
|
+
pixeltable-0.2.15.dist-info/METADATA,sha256=AcTwWI1jBdR9P5hleeFeG5ScwvJjWnIKftX_Dds95oo,11253
|
|
140
|
+
pixeltable-0.2.15.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
141
|
+
pixeltable-0.2.15.dist-info/entry_points.txt,sha256=TNI1Gb5vPwFrTdw6TimSYjO8FeK8c_HuPr28vcf7o_I,108
|
|
142
|
+
pixeltable-0.2.15.dist-info/RECORD,,
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
from typing import Optional, List, Any, Dict, Tuple
|
|
4
|
-
|
|
5
|
-
import PIL
|
|
6
|
-
import sqlalchemy as sql
|
|
7
|
-
|
|
8
|
-
import pixeltable.exceptions as excs
|
|
9
|
-
import pixeltable.func as func
|
|
10
|
-
import pixeltable.type_system as ts
|
|
11
|
-
from .data_row import DataRow
|
|
12
|
-
from .expr import Expr
|
|
13
|
-
from .function_call import FunctionCall
|
|
14
|
-
from .row_builder import RowBuilder
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
# TODO: this doesn't dig up all attrs for actual jpeg images
|
|
18
|
-
def _create_pil_attr_info() -> Dict[str, ts.ColumnType]:
|
|
19
|
-
# create random Image to inspect for attrs
|
|
20
|
-
img = PIL.Image.new('RGB', (100, 100))
|
|
21
|
-
# we're only interested in public attrs (including properties)
|
|
22
|
-
result: Dict[str, ts.ColumnType] = {}
|
|
23
|
-
for name in [name for name in dir(img) if not callable(getattr(img, name)) and not name.startswith('_')]:
|
|
24
|
-
if getattr(img, name) is None:
|
|
25
|
-
continue
|
|
26
|
-
if isinstance(getattr(img, name), str):
|
|
27
|
-
result[name] = ts.StringType()
|
|
28
|
-
if isinstance(getattr(img, name), int):
|
|
29
|
-
result[name] = ts.IntType()
|
|
30
|
-
if getattr(img, name) is dict:
|
|
31
|
-
result[name] = ts.JsonType()
|
|
32
|
-
return result
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
class ImageMemberAccess(Expr):
|
|
36
|
-
"""
|
|
37
|
-
Access of either an attribute or function member of PIL.Image.Image.
|
|
38
|
-
Ex.: tbl.img_col_ref.rotate(90), tbl.img_col_ref.width
|
|
39
|
-
TODO: remove this class and use FunctionCall instead (attributes to be replaced by functions)
|
|
40
|
-
"""
|
|
41
|
-
attr_info = _create_pil_attr_info()
|
|
42
|
-
|
|
43
|
-
def __init__(self, member_name: str, caller: Expr):
|
|
44
|
-
if member_name in self.attr_info:
|
|
45
|
-
super().__init__(self.attr_info[member_name])
|
|
46
|
-
else:
|
|
47
|
-
candidates = func.FunctionRegistry.get().get_type_methods(member_name, ts.ColumnType.Type.IMAGE)
|
|
48
|
-
if len(candidates) == 0:
|
|
49
|
-
raise excs.Error(f'Unknown Image member: {member_name}')
|
|
50
|
-
if len(candidates) > 1:
|
|
51
|
-
raise excs.Error(f'Ambiguous Image method: {member_name}')
|
|
52
|
-
self.img_method = candidates[0]
|
|
53
|
-
super().__init__(ts.InvalidType()) # requires FunctionCall to return value
|
|
54
|
-
self.member_name = member_name
|
|
55
|
-
self.components = [caller]
|
|
56
|
-
self.id = self._create_id()
|
|
57
|
-
|
|
58
|
-
def default_column_name(self) -> Optional[str]:
|
|
59
|
-
return self.member_name.replace('.', '_')
|
|
60
|
-
|
|
61
|
-
@property
|
|
62
|
-
def _caller(self) -> Expr:
|
|
63
|
-
return self.components[0]
|
|
64
|
-
|
|
65
|
-
def __str__(self) -> str:
|
|
66
|
-
return f'{self._caller}.{self.member_name}'
|
|
67
|
-
|
|
68
|
-
def _as_dict(self) -> Dict:
|
|
69
|
-
return {'member_name': self.member_name, **super()._as_dict()}
|
|
70
|
-
|
|
71
|
-
@classmethod
|
|
72
|
-
def _from_dict(cls, d: Dict, components: List[Expr]) -> Expr:
|
|
73
|
-
assert 'member_name' in d
|
|
74
|
-
assert len(components) == 1
|
|
75
|
-
return cls(d['member_name'], components[0])
|
|
76
|
-
|
|
77
|
-
def __call__(self, *args, **kwargs) -> FunctionCall:
|
|
78
|
-
result = self.img_method(*[self._caller, *args], **kwargs)
|
|
79
|
-
result.is_method_call = True
|
|
80
|
-
return result
|
|
81
|
-
|
|
82
|
-
def _equals(self, other: ImageMemberAccess) -> bool:
|
|
83
|
-
return self.member_name == other.member_name
|
|
84
|
-
|
|
85
|
-
def _id_attrs(self) -> List[Tuple[str, Any]]:
|
|
86
|
-
return super()._id_attrs() + [('member_name', self.member_name)]
|
|
87
|
-
|
|
88
|
-
def sql_expr(self) -> Optional[sql.ClauseElement]:
|
|
89
|
-
return None
|
|
90
|
-
|
|
91
|
-
def eval(self, data_row: DataRow, row_builder: RowBuilder) -> None:
|
|
92
|
-
caller_val = data_row[self._caller.slot_idx]
|
|
93
|
-
try:
|
|
94
|
-
data_row[self.slot_idx] = getattr(caller_val, self.member_name)
|
|
95
|
-
except AttributeError:
|
|
96
|
-
data_row[self.slot_idx] = None
|
|
File without changes
|
|
File without changes
|
|
File without changes
|