Commit aed95df
Replace top-level optional imports with lazy import helpers
Heavy optional dependencies (numpy, pandas, polars, pyarrow) were
imported at module load time, causing failures in WASM environments
where these packages may not be available. This adds a lazy import
utility module and converts all eager try/except import patterns to
use cached lazy accessors. Type maps in dtypes.py are also converted
from module-level dicts to lru_cached factory functions. The pandas
DataFrame isinstance check in connection.py is replaced with a
duck-type hasattr check to avoid importing pandas at module scope.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 5d1e9e6 commit aed95df
File tree
9 files changed
+220
-162
lines changed- singlestoredb
- functions
- ext
- tests
- utils
9 files changed
+220
-162
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | 28 | | |
35 | 29 | | |
36 | 30 | | |
| |||
1175 | 1169 | | |
1176 | 1170 | | |
1177 | 1171 | | |
1178 | | - | |
| 1172 | + | |
1179 | 1173 | | |
1180 | 1174 | | |
1181 | 1175 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
| 29 | + | |
34 | 30 | | |
35 | 31 | | |
36 | 32 | | |
| |||
563 | 559 | | |
564 | 560 | | |
565 | 561 | | |
566 | | - | |
567 | | - | |
| 562 | + | |
| 563 | + | |
| 564 | + | |
568 | 565 | | |
569 | 566 | | |
570 | 567 | | |
| |||
591 | 588 | | |
592 | 589 | | |
593 | 590 | | |
594 | | - | |
595 | | - | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
596 | 594 | | |
597 | 595 | | |
598 | 596 | | |
| |||
619 | 617 | | |
620 | 618 | | |
621 | 619 | | |
622 | | - | |
623 | | - | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
624 | 623 | | |
625 | 624 | | |
626 | 625 | | |
| |||
647 | 646 | | |
648 | 647 | | |
649 | 648 | | |
650 | | - | |
651 | | - | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
652 | 652 | | |
653 | 653 | | |
654 | 654 | | |
| |||
675 | 675 | | |
676 | 676 | | |
677 | 677 | | |
678 | | - | |
679 | | - | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
680 | 681 | | |
681 | 682 | | |
682 | 683 | | |
| |||
703 | 704 | | |
704 | 705 | | |
705 | 706 | | |
706 | | - | |
707 | | - | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
708 | 710 | | |
709 | 711 | | |
710 | 712 | | |
| |||
731 | 733 | | |
732 | 734 | | |
733 | 735 | | |
734 | | - | |
735 | | - | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
736 | 739 | | |
737 | 740 | | |
738 | 741 | | |
| |||
759 | 762 | | |
760 | 763 | | |
761 | 764 | | |
762 | | - | |
763 | | - | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
764 | 768 | | |
765 | 769 | | |
766 | 770 | | |
| |||
787 | 791 | | |
788 | 792 | | |
789 | 793 | | |
790 | | - | |
791 | | - | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
792 | 797 | | |
793 | 798 | | |
794 | 799 | | |
| |||
815 | 820 | | |
816 | 821 | | |
817 | 822 | | |
818 | | - | |
819 | | - | |
| 823 | + | |
| 824 | + | |
| 825 | + | |
820 | 826 | | |
821 | 827 | | |
822 | 828 | | |
| |||
843 | 849 | | |
844 | 850 | | |
845 | 851 | | |
846 | | - | |
847 | | - | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
848 | 855 | | |
849 | 856 | | |
850 | 857 | | |
| |||
871 | 878 | | |
872 | 879 | | |
873 | 880 | | |
874 | | - | |
875 | | - | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
876 | 884 | | |
877 | 885 | | |
878 | 886 | | |
| |||
899 | 907 | | |
900 | 908 | | |
901 | 909 | | |
902 | | - | |
903 | | - | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
904 | 913 | | |
905 | 914 | | |
906 | 915 | | |
| |||
928 | 937 | | |
929 | 938 | | |
930 | 939 | | |
931 | | - | |
932 | | - | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
933 | 943 | | |
934 | 944 | | |
935 | 945 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
18 | 17 | | |
19 | 18 | | |
20 | 19 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
14 | 13 | | |
15 | 14 | | |
16 | 15 | | |
| |||
140 | 139 | | |
141 | 140 | | |
142 | 141 | | |
143 | | - | |
| 142 | + | |
144 | 143 | | |
145 | 144 | | |
146 | 145 | | |
| |||
172 | 171 | | |
173 | 172 | | |
174 | 173 | | |
175 | | - | |
| 174 | + | |
176 | 175 | | |
177 | 176 | | |
178 | 177 | | |
| |||
203 | 202 | | |
204 | 203 | | |
205 | 204 | | |
206 | | - | |
| 205 | + | |
207 | 206 | | |
208 | 207 | | |
209 | 208 | | |
| |||
235 | 234 | | |
236 | 235 | | |
237 | 236 | | |
238 | | - | |
| 237 | + | |
239 | 238 | | |
240 | 239 | | |
241 | 240 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
19 | 18 | | |
20 | 19 | | |
21 | 20 | | |
| |||
212 | 211 | | |
213 | 212 | | |
214 | 213 | | |
215 | | - | |
| 214 | + | |
216 | 215 | | |
217 | 216 | | |
218 | 217 | | |
| |||
247 | 246 | | |
248 | 247 | | |
249 | 248 | | |
250 | | - | |
| 249 | + | |
251 | 250 | | |
252 | 251 | | |
253 | 252 | | |
| |||
282 | 281 | | |
283 | 282 | | |
284 | 283 | | |
285 | | - | |
| 284 | + | |
286 | 285 | | |
287 | 286 | | |
288 | 287 | | |
| |||
318 | 317 | | |
319 | 318 | | |
320 | 319 | | |
321 | | - | |
| 320 | + | |
322 | 321 | | |
323 | 322 | | |
324 | 323 | | |
| |||
565 | 564 | | |
566 | 565 | | |
567 | 566 | | |
568 | | - | |
| 567 | + | |
569 | 568 | | |
570 | 569 | | |
571 | 570 | | |
| |||
610 | 609 | | |
611 | 610 | | |
612 | 611 | | |
613 | | - | |
| 612 | + | |
614 | 613 | | |
615 | 614 | | |
616 | 615 | | |
| |||
653 | 652 | | |
654 | 653 | | |
655 | 654 | | |
656 | | - | |
| 655 | + | |
657 | 656 | | |
658 | 657 | | |
659 | 658 | | |
| |||
0 commit comments