@poe-platform/safe-bash 0.1.800 → 0.1.802
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.
- package/README.md +16 -5
- package/dist/image-ast/index.browser.js +122 -76
- package/dist/image-ast/index.js +122 -76
- package/dist/pdf-ast/index.js +4 -3
- package/dist/safe-bash/chunks/chunk-3HQU4OJO.js +13 -0
- package/dist/safe-bash/chunks/{chunk-LUOFIVNI.js → chunk-3NDIFSNM.js} +3 -3
- package/dist/safe-bash/chunks/{chunk-4SEW2Q6H.js → chunk-3R3AANOR.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-K4YMYFRJ.js → chunk-44ALJ4QG.js} +5809 -7424
- package/dist/safe-bash/chunks/{chunk-KHMGTPD6.js → chunk-46Z5E5EV.js} +2 -2
- package/dist/safe-bash/chunks/chunk-4BSJLKNM.js +14 -0
- package/dist/safe-bash/chunks/chunk-4D4N7IU2.js +47 -0
- package/dist/safe-bash/chunks/chunk-55YJASTN.js +14 -0
- package/dist/safe-bash/chunks/{chunk-XB3B7KMM.js → chunk-6O77NL2S.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-T3JTVIEP.js → chunk-6PAVEFT3.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-PYVEAFJM.js → chunk-74GHTNJA.js} +3 -2
- package/dist/safe-bash/chunks/{chunk-LQHGH25W.js → chunk-7R5BDCG7.js} +1 -1
- package/dist/safe-bash/chunks/chunk-7ZBU7KYV.js +14 -0
- package/dist/safe-bash/chunks/{chunk-MHZ24KEI.js → chunk-AM5ESLPH.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-3L3T6LYV.js → chunk-AUSNDQTJ.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-YG5WAHK7.js → chunk-B7TAL7S5.js} +1 -3
- package/dist/safe-bash/chunks/{chunk-QVSRRNZT.js → chunk-BJA5XNP6.js} +6 -6
- package/dist/safe-bash/chunks/{chunk-K7IQZE7D.js → chunk-C5OWC2TL.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-F3RV2F72.js → chunk-CHYGPFVM.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-M4CFCXHN.js → chunk-CS4MNM6I.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-H6JW3E4F.js → chunk-CTVWDACF.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-BHJE5LPZ.js → chunk-D3ANYGMC.js} +1 -1
- package/dist/safe-bash/chunks/chunk-DQP3VHSB.js +15 -0
- package/dist/safe-bash/chunks/{chunk-NLAW7KDI.js → chunk-E7OYNDGL.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-SOZK5JVX.js → chunk-FBUCWVTE.js} +1 -1
- package/dist/safe-bash/chunks/chunk-FZE4HW6G.js +11 -0
- package/dist/safe-bash/chunks/chunk-GEG3BWGE.js +14 -0
- package/dist/safe-bash/chunks/{chunk-HHW7MGS2.js → chunk-GETUOD5D.js} +4 -4
- package/dist/safe-bash/chunks/chunk-HBCN24ZA.js +50 -0
- package/dist/safe-bash/chunks/chunk-HZ7BWKQ3.js +13 -0
- package/dist/safe-bash/chunks/{chunk-JJSTTIEZ.js → chunk-HZAMGT5I.js} +3 -3
- package/dist/safe-bash/chunks/{chunk-KCVSVD65.js → chunk-I5HZ4FGE.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-KV7PKOHV.js → chunk-IWDICZVK.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-I4OAEOP6.js → chunk-J42RIHHJ.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-K2VCOJ2B.js → chunk-K6VCD7IY.js} +7 -12
- package/dist/safe-bash/chunks/chunk-KDNSPLII.js +83 -0
- package/dist/safe-bash/chunks/{chunk-63FXVDGF.js → chunk-LVOBFF4D.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-U5NUZPCC.js → chunk-MHMMRCYC.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-KW24TAIU.js → chunk-NQCM3TYR.js} +922 -658
- package/dist/safe-bash/chunks/{chunk-VYZTG3GV.js → chunk-NZQXYWA3.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-TFGRKY43.js → chunk-OQRVVGR6.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-PPYM75Z3.js → chunk-OV6IHKO6.js} +2 -2
- package/dist/safe-bash/chunks/{chunk-TYD7EVUJ.js → chunk-PH63PLPZ.js} +8 -8
- package/dist/safe-bash/chunks/chunk-QGUV42T5.js +44 -0
- package/dist/safe-bash/chunks/chunk-R3NAKOED.js +51 -0
- package/dist/safe-bash/chunks/chunk-RRR7AQ24.js +38 -0
- package/dist/safe-bash/chunks/{chunk-RKKRJ54E.js → chunk-RSTHLAF3.js} +30 -23
- package/dist/safe-bash/chunks/{chunk-RMWLWH7Q.js → chunk-SHEMU2Z7.js} +378 -1148
- package/dist/safe-bash/chunks/{chunk-7YSRXFEG.js → chunk-TFIBK2GI.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-I7L3G3NX.js → chunk-UE5KZDEK.js} +2 -2
- package/dist/safe-bash/chunks/{chunk-QU3BVQ53.js → chunk-UTBUUFDM.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-6HZYFL3H.js → chunk-VKNVHEX3.js} +2 -7
- package/dist/safe-bash/chunks/chunk-VSAJ4OTM.js +962 -0
- package/dist/safe-bash/chunks/{chunk-46UISJCK.js → chunk-VTH3MLDU.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-JTLSUJ7V.js → chunk-WDLGKIHD.js} +56 -39
- package/dist/safe-bash/chunks/chunk-XAQMU6OY.js +14 -0
- package/dist/safe-bash/chunks/{chunk-LLZCZ24K.js → chunk-XVOSKJE2.js} +1 -1
- package/dist/safe-bash/chunks/chunk-ZVD5IS4V.js +49 -0
- package/dist/safe-bash/chunks/{csvkit-QGP3GAOB.js → csvkit-TACDU7FC.js} +3 -3
- package/dist/safe-bash/chunks/{ffmpeg-JTVH26MK.js → ffmpeg-WTC3TEFI.js} +2 -2
- package/dist/safe-bash/chunks/{gh-I7QX7N5C.js → gh-6WU6PXL4.js} +2 -2
- package/dist/safe-bash/chunks/{git-MA7NKYVP.js → git-EFZIGJW4.js} +2 -2
- package/dist/safe-bash/chunks/{imagemagick-Y4NPWX2Q.js → imagemagick-EIEYGWPF.js} +2 -2
- package/dist/safe-bash/chunks/{implementation-BWDKOVQJ.js → implementation-MLFHUQ5M.js} +2 -2
- package/dist/safe-bash/chunks/{mmdc-44PELHDG.js → mmdc-ROQJT5HQ.js} +2 -2
- package/dist/safe-bash/chunks/{pdfimages-635TRW4Q.js → pdfimages-DW7LWXFI.js} +2 -2
- package/dist/safe-bash/chunks/{pdfinfo-FSDAA2KY.js → pdfinfo-TIP6XLUQ.js} +2 -2
- package/dist/safe-bash/chunks/{pdftk-GQ5UH3VG.js → pdftk-DMG22ITZ.js} +2 -2
- package/dist/safe-bash/chunks/{pdftoppm-YTXQCAYT.js → pdftoppm-WNDYR72T.js} +2 -2
- package/dist/safe-bash/chunks/{pdftotext-CVA2G7FY.js → pdftotext-5IPZ4NI7.js} +2 -2
- package/dist/safe-bash/chunks/{qpdf-HZMIFG4A.js → qpdf-TTX2DIUA.js} +2 -2
- package/dist/safe-bash/chunks/{sips-E7UBDP33.js → sips-XYS46JPJ.js} +2 -2
- package/dist/safe-bash/chunks/{soffice-ELASUWUK.js → soffice-TU73E5KL.js} +2 -2
- package/dist/safe-bash/chunks/{wkhtmltopdf-EPO6YCMG.js → wkhtmltopdf-FSZ2CHGE.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-QBGA56UH.js → chunk-2ELYGJDD.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-52PCQXD2.js → chunk-2NHI5F5S.js} +2 -1
- package/dist/safe-bash/command-chunks/{chunk-HDKVO47G.js → chunk-2SQEIUGJ.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-5LSGEIZY.js → chunk-3HHCU5YU.js} +4 -3
- package/dist/safe-bash/command-chunks/{chunk-TF6OA2GK.js → chunk-3NV3HYT2.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-2QHG43WJ.js → chunk-4BB2SWJ5.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-IEXHHNOF.js → chunk-4J5CZ2DP.js} +2 -7
- package/dist/safe-bash/command-chunks/{chunk-WDHI3S6Y.js → chunk-4OOUQTQO.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-YMONDXET.js → chunk-4ZQWGOZB.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-L6DVEBW3.js → chunk-5BSTFCXG.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-Q3DII3Q7.js → chunk-5PWJG2UK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-JMPP4TCW.js → chunk-5UBXNSFZ.js} +3 -2
- package/dist/safe-bash/command-chunks/{chunk-3NG75MOB.js → chunk-67GQA75T.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-L6SU4S26.js → chunk-6B7WQIKB.js} +0 -7
- package/dist/safe-bash/command-chunks/{chunk-V6MSPQLA.js → chunk-6BNTBWIK.js} +4 -39
- package/dist/safe-bash/command-chunks/{chunk-SAMH7SQE.js → chunk-6GWJUQAV.js} +237 -145
- package/dist/safe-bash/command-chunks/{chunk-JN7WIP6S.js → chunk-6KJ3LPI2.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-HLDTOR7M.js → chunk-6ZVI7LUY.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-X6NJC3IC.js → chunk-75OFBY5R.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-MRW5HD2D.js → chunk-7O3E4LPT.js} +4 -22
- package/dist/safe-bash/command-chunks/{chunk-TEVJJPTC.js → chunk-7U7EXOXX.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-6CYTRQ24.js → chunk-7VTKQUA5.js} +20 -17
- package/dist/safe-bash/command-chunks/{chunk-BZPAWTUL.js → chunk-AEF5BA3D.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-63R3FEZJ.js → chunk-AIV5BF5W.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-AYUTO323.js → chunk-AKJG2XD3.js} +2 -18
- package/dist/safe-bash/command-chunks/{chunk-J34TZVMW.js → chunk-ALDC4XP4.js} +0 -5
- package/dist/safe-bash/command-chunks/{chunk-CKXV2CLD.js → chunk-ARBYOQUZ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-44AHAB5O.js → chunk-BDSMROQZ.js} +1 -4
- package/dist/safe-bash/command-chunks/{chunk-53P53XFM.js → chunk-BPE5INLI.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-OT4LZMLB.js → chunk-BR73BIOW.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-WB5SVIG7.js → chunk-C5YYCQHW.js} +498 -88
- package/dist/safe-bash/command-chunks/{chunk-EUSPTFAX.js → chunk-CAP7ZJSY.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-DWFLVJC6.js → chunk-CCRHMAU5.js} +2 -1
- package/dist/safe-bash/command-chunks/{chunk-GI4CJED2.js → chunk-CQTRW45K.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-KKG4BAFZ.js → chunk-DIEPXUM4.js} +6 -0
- package/dist/safe-bash/command-chunks/{chunk-QJAFJP2G.js → chunk-DZCY63VJ.js} +12 -10
- package/dist/safe-bash/command-chunks/{chunk-QUENU6GM.js → chunk-E55UKBIE.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-MC3VWLIZ.js → chunk-FDBUV4HJ.js} +28 -19
- package/dist/safe-bash/command-chunks/{chunk-7FKUC34S.js → chunk-FPVUD6TH.js} +6 -3
- package/dist/safe-bash/command-chunks/{chunk-E2LB7FRT.js → chunk-FXOA7RBK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-QWIDNAAK.js → chunk-FZTK4MFI.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-K543PB3I.js → chunk-G66QUHIZ.js} +6 -35
- package/dist/safe-bash/command-chunks/{chunk-YJDV76GL.js → chunk-GFQZCKO6.js} +29 -19
- package/dist/safe-bash/command-chunks/{chunk-FKKB5X5V.js → chunk-GOB777HR.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-IYPAQ7PH.js → chunk-GRBWW4SG.js} +6 -0
- package/dist/safe-bash/command-chunks/{chunk-EFANWIHL.js → chunk-GY3BWK7K.js} +1 -0
- package/dist/safe-bash/command-chunks/{chunk-PPNBNFAU.js → chunk-GYQ2HAKQ.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-PJJUYO3R.js → chunk-II77KPZN.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-VL67NWNS.js → chunk-JDYXY44P.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-4QJOYXVB.js → chunk-JV7LBUTP.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-IKS2YXZQ.js → chunk-K67MWWWH.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-BKCNF5U3.js → chunk-KQLD3AED.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-UMDIOL3O.js → chunk-KXU3IRUO.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-QZF3SINC.js → chunk-LAOM65EE.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-HFII3QYO.js → chunk-LWS62ISU.js} +46 -32
- package/dist/safe-bash/command-chunks/{chunk-BZDDAPSV.js → chunk-LWSBAWLT.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-U6G67N23.js → chunk-MIXBO6U7.js} +18 -5
- package/dist/safe-bash/command-chunks/{chunk-JQ74HC37.js → chunk-MQFIPHIQ.js} +23 -50
- package/dist/safe-bash/command-chunks/{chunk-ZJBR5Q5I.js → chunk-MSFXC3OC.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-NI7MKJPN.js → chunk-MTQH74CF.js} +3 -55
- package/dist/safe-bash/command-chunks/chunk-MWUZZWXK.js +354 -0
- package/dist/safe-bash/command-chunks/{chunk-RVLO4DYT.js → chunk-N4PFUSRM.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-WBNZ4PRE.js → chunk-NGG2XL56.js} +7 -4
- package/dist/safe-bash/command-chunks/{chunk-D4OP2BR3.js → chunk-NKFYQSES.js} +1 -2
- package/dist/safe-bash/command-chunks/{chunk-NGWB2YBL.js → chunk-O4JQSB7O.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-GLOZX57Y.js → chunk-OQKC5ZU2.js} +23 -114
- package/dist/safe-bash/command-chunks/{chunk-7L24L4UO.js → chunk-OQU6UT6X.js} +2 -20
- package/dist/safe-bash/command-chunks/{chunk-TYCGMRLM.js → chunk-OYYV7ZAF.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-SVULUDOP.js → chunk-P2N33UMN.js} +20 -81
- package/dist/safe-bash/command-chunks/{chunk-Q7Q5GM5S.js → chunk-P5APDEFB.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-3HXDA5PT.js → chunk-PMBFZXTK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-4Y3WVMK4.js → chunk-PV66YWHB.js} +1 -0
- package/dist/safe-bash/command-chunks/{chunk-AXK3H4PX.js → chunk-QJ33BHI4.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-3LSOYLNV.js → chunk-QKFSRZGQ.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-JZSNU2MY.js → chunk-QKJLP53H.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-LC2MFKT4.js → chunk-RMWQAAO5.js} +24 -25
- package/dist/safe-bash/command-chunks/{chunk-QDTBMSBE.js → chunk-RO62EWX6.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-4C6QI5BQ.js → chunk-RZZI24ZE.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-PFAADCB5.js → chunk-SDNBCQ3X.js} +10 -24
- package/dist/safe-bash/command-chunks/{chunk-36O5OT7E.js → chunk-T35Y7YQD.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-6HMX4CQS.js → chunk-TGSNCQSR.js} +44 -16
- package/dist/safe-bash/command-chunks/{chunk-5T7CRJHW.js → chunk-TIOCQVUQ.js} +4 -7
- package/dist/safe-bash/command-chunks/{chunk-GN2TKLE7.js → chunk-TS65BJHG.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-7RGB363W.js → chunk-TSCGT46G.js} +3 -2
- package/dist/safe-bash/command-chunks/{chunk-KBEURXFF.js → chunk-UN6WS55J.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-SX2X3IH4.js → chunk-V2V5OCL3.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-ERYJLO6G.js → chunk-V7A7DRTU.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-5SHGJ7NO.js → chunk-VA5ZHYYA.js} +73 -33
- package/dist/safe-bash/command-chunks/{chunk-XETLEHZP.js → chunk-VPR5LQYX.js} +3 -2
- package/dist/safe-bash/command-chunks/{chunk-3DT2YOGW.js → chunk-VSRGNQCP.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-N2F74VRO.js → chunk-VT6MJBEI.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-J5SN3PZ3.js → chunk-VXSLJH7G.js} +53 -3
- package/dist/safe-bash/command-chunks/{chunk-PXYOWWMV.js → chunk-W7RAD4EW.js} +4 -3
- package/dist/safe-bash/command-chunks/{chunk-YGC6OS5O.js → chunk-WECIOOQB.js} +5 -8
- package/dist/safe-bash/command-chunks/{chunk-HHP343KT.js → chunk-WTECBRU4.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-AO6Z5EQ7.js → chunk-WVE64WM2.js} +6 -5
- package/dist/safe-bash/command-chunks/{chunk-Z7RVSD5K.js → chunk-WVHONVZ4.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-HLGKIZ25.js → chunk-X54L3DBL.js} +6 -9
- package/dist/safe-bash/command-chunks/{chunk-QNIMV57G.js → chunk-XNLFHHOC.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-XAFSZDY2.js → chunk-XS72HTMA.js} +11 -0
- package/dist/safe-bash/command-chunks/{chunk-KYSPGS33.js → chunk-YIQACGEW.js} +2 -0
- package/dist/safe-bash/command-chunks/{chunk-NAY27PXB.js → chunk-YOFC45RK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-T5H5UJQ3.js → chunk-YVNGTIJO.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-QI7LGHJJ.js → chunk-Z45N42QC.js} +21 -6
- package/dist/safe-bash/command-chunks/{chunk-67IQF5GC.js → chunk-ZYHTWNAE.js} +23 -9
- package/dist/safe-bash/command-chunks/{chunk-STC3LEWJ.js → chunk-ZYXH3B66.js} +5 -3
- package/dist/safe-bash/commands/apply-patch/index.browser.js +14 -0
- package/dist/safe-bash/commands/archive/index.browser.js +36 -0
- package/dist/safe-bash/commands/bytes/compression/index.js +3 -2
- package/dist/safe-bash/commands/column/index.browser.js +12 -0
- package/dist/safe-bash/commands/copy-preserve.d.ts +1 -0
- package/dist/safe-bash/commands/csplit/index.browser.js +2 -2
- package/dist/safe-bash/commands/docx/index.browser.js +1 -1
- package/dist/safe-bash/commands/du/index.browser.js +14 -0
- package/dist/safe-bash/commands/execution.js +19 -13
- package/dist/safe-bash/commands/expr/index.browser.js +12 -0
- package/dist/safe-bash/commands/factor/index.browser.js +2 -2
- package/dist/safe-bash/commands/file/index.browser.js +14 -0
- package/dist/safe-bash/commands/filesystem.d.ts +1 -1
- package/dist/safe-bash/commands/filesystem.js +26 -15
- package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
- package/dist/safe-bash/commands/grep-aliases/index.browser.js +14 -0
- package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
- package/dist/safe-bash/commands/html-to-markdown/index.browser.js +16 -0
- package/dist/safe-bash/commands/htmlq/index.d.ts +1 -1
- package/dist/safe-bash/commands/iconv/index.browser.js +2 -2
- package/dist/safe-bash/commands/line-endings/index.browser.js +2 -2
- package/dist/safe-bash/commands/llm/index.browser.js +2 -2
- package/dist/safe-bash/commands/llm/providers/index.browser.js +1 -1
- package/dist/safe-bash/commands/mdq/index.browser.js +3 -3
- package/dist/safe-bash/commands/media/index.browser.js +1 -1
- package/dist/safe-bash/commands/metadata/index.browser.js +21 -0
- package/dist/safe-bash/commands/network/curl.d.ts +1 -1
- package/dist/safe-bash/commands/network/curl.js +1 -3
- package/dist/safe-bash/commands/network/index.browser.js +4 -4
- package/dist/safe-bash/commands/network/platform-portable.d.ts +1 -5
- package/dist/safe-bash/commands/network/platform-portable.js +1 -26
- package/dist/safe-bash/commands/network/public.d.ts +2 -2
- package/dist/safe-bash/commands/network/public.js +2 -2
- package/dist/safe-bash/commands/network/transport.js +2 -2
- package/dist/safe-bash/commands/network/wget.d.ts +1 -1
- package/dist/safe-bash/commands/network/wget.js +1 -3
- package/dist/safe-bash/commands/node/filesystem.js +3 -2
- package/dist/safe-bash/commands/node/index.browser.js +8 -8
- package/dist/safe-bash/commands/node/types.js +1 -1
- package/dist/safe-bash/commands/op/index.browser.js +3 -3
- package/dist/safe-bash/commands/pr/index.browser.js +2 -2
- package/dist/safe-bash/commands/python/host-capabilities.js +31 -14
- package/dist/safe-bash/commands/python/index.browser.js +11 -11
- package/dist/safe-bash/commands/python/manifest.d.ts +1 -0
- package/dist/safe-bash/commands/python/manifest.js +6 -3
- package/dist/safe-bash/commands/python/shell-capability.d.ts +1 -0
- package/dist/safe-bash/commands/python/shell-capability.js +3 -2
- package/dist/safe-bash/commands/python/worker.browser.js +3 -3
- package/dist/safe-bash/commands/regex-execution/public.browser.js +8 -6
- package/dist/safe-bash/commands/safejs/runtime.js +16 -7
- package/dist/safe-bash/commands/split/index.browser.js +14 -0
- package/dist/safe-bash/commands/standard.d.ts +1 -0
- package/dist/safe-bash/commands/standard.js +2 -1
- package/dist/safe-bash/commands/stream-format/index.browser.js +11 -0
- package/dist/safe-bash/commands/stream-inspection/index.browser.js +11 -0
- package/dist/safe-bash/commands/streams.js +11 -29
- package/dist/safe-bash/commands/table-text/index.browser.js +11 -0
- package/dist/safe-bash/commands/text.js +269 -496
- package/dist/safe-bash/commands/time-env/index.browser.js +15 -0
- package/dist/safe-bash/commands/tree/index.browser.js +14 -0
- package/dist/safe-bash/commands/tsort/index.browser.js +2 -2
- package/dist/safe-bash/commands/xml/index.browser.js +2 -2
- package/dist/safe-bash/commands/yq/index.browser.js +2 -2
- package/dist/safe-bash/core.browser.js +1 -1
- package/dist/safe-bash/core.d.ts +6 -1
- package/dist/safe-bash/core.js +1 -1
- package/dist/safe-bash/full-core.browser.js +308 -295
- package/dist/safe-bash/jobs.browser.js +5 -5
- package/dist/safe-bash/opt-in/commands/dd/index.js +2 -0
- package/dist/safe-bash/opt-in/optional/commands/shuf/options.d.ts +1 -0
- package/dist/safe-bash/opt-in/optional/commands/shuf/options.js +2 -4
- package/dist/safe-bash/opt-in/optional/commands/shuf/shuf.js +2 -1
- package/dist/safe-bash/optional-host.browser.js +15 -15
- package/dist/safe-bash/plugins/composition.d.ts +1 -0
- package/dist/safe-bash/plugins/composition.js +3 -8
- package/dist/safe-bash/plugins/index.browser.js +41 -27
- package/dist/safe-bash/registry-entry.browser.js +42 -28
- package/dist/safe-bash/search.browser.js +48 -0
- package/dist/safe-bash/shell/arrays/bindings.js +1 -1
- package/dist/safe-bash/shell/arrays/state.js +4 -0
- package/dist/safe-bash/shell/brace-expansion.js +1 -1
- package/dist/safe-bash/shell/dynamic-variables.d.ts +10 -0
- package/dist/safe-bash/shell/dynamic-variables.js +25 -0
- package/dist/safe-bash/shell/parser.js +8 -1
- package/dist/safe-bash/shell/runtime.d.ts +4 -13
- package/dist/safe-bash/shell/runtime.js +334 -1049
- package/dist/safe-bash/shell/shell.js +2 -54
- package/dist/safe-bash/shell-entry.browser.js +35 -26
- package/dist/safe-bash/trap.browser.js +4 -4
- package/dist/safe-bash/yq-browser/index.js +1 -1
- package/dist/safe-bash-base-encoding-engine/base.js +2 -2
- package/dist/safe-bash-base-encoding-engine/shared.js +1 -1
- package/dist/safe-bash-byte-input-engine/index.d.ts +3 -2
- package/dist/safe-bash-byte-input-engine/index.js +4 -1
- package/dist/safe-bash-checksum-engine/index.js +13 -6
- package/dist/safe-bash-command-apply-patch/apply.d.ts +1 -1
- package/dist/safe-bash-command-apply-patch/apply.js +4 -3
- package/dist/safe-bash-command-apply-patch/index.js +3 -3
- package/dist/safe-bash-command-apply-patch/matcher.js +1 -1
- package/dist/safe-bash-command-apply-patch/parser.js +1 -1
- package/dist/safe-bash-command-awk/awk-inspection.js +2 -2
- package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
- package/dist/safe-bash-command-awk/awk-syntax.d.ts +1 -1
- package/dist/safe-bash-command-awk/awk-syntax.js +2 -2
- package/dist/safe-bash-command-awk/awk-values.js +1 -1
- package/dist/safe-bash-command-awk/awk.js +5 -5
- package/dist/safe-bash-command-awk/index.js +5 -5
- package/dist/safe-bash-command-bc/index.d.ts +2 -0
- package/dist/safe-bash-command-bc/index.js +123 -92
- package/dist/safe-bash-command-column/column.js +5 -5
- package/dist/safe-bash-command-column/display.d.ts +1 -1
- package/dist/safe-bash-command-column/display.js +1 -1
- package/dist/safe-bash-command-column/index.js +5 -5
- package/dist/safe-bash-command-column/internal.d.ts +0 -2
- package/dist/safe-bash-command-column/internal.js +1 -1
- package/dist/safe-bash-command-column/layout.js +4 -4
- package/dist/safe-bash-command-column/table.js +2 -2
- package/dist/safe-bash-command-comm/comm.js +1 -1
- package/dist/safe-bash-command-comm/index.js +1 -1
- package/dist/safe-bash-command-csvcut/index.d.ts +1 -0
- package/dist/safe-bash-command-csvcut/index.js +1 -0
- package/dist/safe-bash-command-csvgrep/index.d.ts +1 -0
- package/dist/safe-bash-command-csvgrep/index.js +2 -2
- package/dist/safe-bash-command-csvkit/index.js +9 -9
- package/dist/safe-bash-command-csvkit/sync-support.js +1 -1
- package/dist/safe-bash-command-curl/curl.js +1 -1
- package/dist/safe-bash-command-curl/index.js +1 -1
- package/dist/safe-bash-command-dd/index.js +2 -0
- package/dist/safe-bash-command-diff/diff.js +1 -1
- package/dist/safe-bash-command-diff/index.js +1 -1
- package/dist/safe-bash-command-exiftool/index.d.ts +1 -0
- package/dist/safe-bash-command-fd/index.js +9 -9
- package/dist/safe-bash-command-ffmpeg/index.js +31 -8
- package/dist/safe-bash-command-file/index.js +1 -1
- package/dist/safe-bash-command-file/shared.js +1 -1
- package/dist/safe-bash-command-find/find.js +1 -1
- package/dist/safe-bash-command-find/index.js +1 -1
- package/dist/safe-bash-command-gzip/index.js +3 -2
- package/dist/safe-bash-command-hexdump/command.js +4 -4
- package/dist/safe-bash-command-hexdump/custom.d.ts +24 -0
- package/dist/safe-bash-command-hexdump/index.js +4 -4
- package/dist/safe-bash-command-hexdump/internal.d.ts +2 -0
- package/dist/safe-bash-command-hexdump/internal.js +1 -1
- package/dist/safe-bash-command-hexdump/io.js +2 -2
- package/dist/safe-bash-command-hexdump/options.d.ts +3 -0
- package/dist/safe-bash-command-hexdump/options.js +2 -2
- package/dist/safe-bash-command-hostname/index.js +1 -1
- package/dist/safe-bash-command-html-to-markdown/budget.js +1 -1
- package/dist/safe-bash-command-html-to-markdown/entities.js +3 -3
- package/dist/safe-bash-command-html-to-markdown/index.js +6 -6
- package/dist/safe-bash-command-html-to-markdown/input.js +5 -5
- package/dist/safe-bash-command-html-to-markdown/parser.d.ts +1 -0
- package/dist/safe-bash-command-html-to-markdown/parser.js +4 -4
- package/dist/safe-bash-command-html-to-markdown/render.js +5 -5
- package/dist/safe-bash-command-html-to-markdown/text.js +2 -2
- package/dist/safe-bash-command-htmlq/index.d.ts +1 -0
- package/dist/safe-bash-command-htmlq/index.js +27 -9
- package/dist/safe-bash-command-iconv/codec.js +1 -1
- package/dist/safe-bash-command-iconv/command.js +2 -2
- package/dist/safe-bash-command-iconv/index.js +2 -2
- package/dist/safe-bash-command-imagemagick/index.js +24 -6
- package/dist/safe-bash-command-join/index.js +1 -1
- package/dist/safe-bash-command-join/join.js +1 -1
- package/dist/safe-bash-command-jq/index.js +1 -1
- package/dist/safe-bash-command-jq/jq.js +1 -1
- package/dist/safe-bash-command-less/index.js +43 -28
- package/dist/safe-bash-command-mmdc/index.d.ts +1 -0
- package/dist/safe-bash-command-nl/index.js +1 -1
- package/dist/safe-bash-command-nl/nl.js +1 -1
- package/dist/safe-bash-command-numfmt/index.js +0 -11
- package/dist/safe-bash-command-od/index.js +101 -68
- package/dist/safe-bash-command-pandoc/command.js +1 -1
- package/dist/safe-bash-command-pandoc/index.js +1 -1
- package/dist/safe-bash-command-paste/index.js +1 -1
- package/dist/safe-bash-command-paste/paste.js +1 -1
- package/dist/safe-bash-command-pathchk/index.js +3 -13
- package/dist/safe-bash-command-pdfimages/index.js +27 -11
- package/dist/safe-bash-command-pdfinfo/index.js +19 -10
- package/dist/safe-bash-command-pdftk/index.js +3 -3
- package/dist/safe-bash-command-pdftoppm/index.js +26 -10
- package/dist/safe-bash-command-pdftotext/index.js +27 -13
- package/dist/safe-bash-command-qpdf/index.js +5 -5
- package/dist/safe-bash-command-rg/index.js +1 -1
- package/dist/safe-bash-command-rg/rg-command.d.ts +0 -1
- package/dist/safe-bash-command-rg/rg-command.js +3 -5
- package/dist/safe-bash-command-sed/index.js +1 -1
- package/dist/safe-bash-command-sed/sed.js +1 -1
- package/dist/safe-bash-command-shuf/options.d.ts +1 -0
- package/dist/safe-bash-command-shuf/options.js +2 -4
- package/dist/safe-bash-command-shuf/shuf.js +2 -1
- package/dist/safe-bash-command-soffice/index.js +20 -16
- package/dist/safe-bash-command-split/index.js +3 -3
- package/dist/safe-bash-command-split/io.js +1 -1
- package/dist/safe-bash-command-split/outputs.js +2 -2
- package/dist/safe-bash-command-split/split.js +3 -3
- package/dist/safe-bash-command-sqlite3/btree.d.ts +1 -0
- package/dist/safe-bash-command-sqlite3/engine.d.ts +6 -0
- package/dist/safe-bash-command-sqlite3/index.js +284 -85
- package/dist/safe-bash-command-ssconvert/commands.js +9 -9
- package/dist/safe-bash-command-ssconvert/core.js +8 -8
- package/dist/safe-bash-command-ssconvert/formats/csv.js +9 -9
- package/dist/safe-bash-command-ssconvert/formats/ods.js +8 -8
- package/dist/safe-bash-command-ssconvert/formats/spreadsheetml.js +2 -2
- package/dist/safe-bash-command-ssconvert/formats/xls.js +9 -9
- package/dist/safe-bash-command-ssconvert/formats/xlsx.js +8 -8
- package/dist/safe-bash-command-ssconvert/index.js +20 -20
- package/dist/safe-bash-command-tar/extract.js +1 -1
- package/dist/safe-bash-command-tar/index.js +5 -4
- package/dist/safe-bash-command-tar/modes.js +2 -2
- package/dist/safe-bash-command-tree/arguments.js +3 -3
- package/dist/safe-bash-command-tree/charset.js +1 -1
- package/dist/safe-bash-command-tree/index.js +4 -4
- package/dist/safe-bash-command-tree/io.js +1 -1
- package/dist/safe-bash-command-tree/pattern.js +2 -2
- package/dist/safe-bash-command-tree/tree.js +4 -4
- package/dist/safe-bash-command-unexpand/index.js +1 -1
- package/dist/safe-bash-command-unexpand/unexpand.js +1 -1
- package/dist/safe-bash-command-unrtf/index.js +14 -7
- package/dist/safe-bash-command-unzip/index.js +1 -1
- package/dist/safe-bash-command-unzip/unzip.js +1 -1
- package/dist/safe-bash-command-wget/index.js +1 -1
- package/dist/safe-bash-command-wget/wget.js +1 -1
- package/dist/safe-bash-command-xan/argv.d.ts +1 -1
- package/dist/safe-bash-command-xan/argv.js +1 -1
- package/dist/safe-bash-command-xan/commands.js +5 -3
- package/dist/safe-bash-command-xan/csv.d.ts +1 -1
- package/dist/safe-bash-command-xan/csv.js +1 -1
- package/dist/safe-bash-command-xan/index.js +7 -7
- package/dist/safe-bash-command-xan/io.js +3 -3
- package/dist/safe-bash-command-xmllint/index.js +1 -1
- package/dist/safe-bash-command-xxd/index.js +105 -91
- package/dist/safe-bash-command-xz/command.d.ts +2 -0
- package/dist/safe-bash-command-xz/index.d.ts +1 -1
- package/dist/safe-bash-command-xz/index.js +8 -0
- package/dist/safe-bash-command-yq/query.js +1 -1
- package/dist/safe-bash-command-zip/index.js +1 -1
- package/dist/safe-bash-command-zip/zip.js +1 -1
- package/dist/safe-bash-contracts/escaping.js +3 -3
- package/dist/safe-bash-contracts/filesystem-output.js +2 -2
- package/dist/safe-bash-contracts/index.d.ts +1 -0
- package/dist/safe-bash-contracts/index.js +7 -3
- package/dist/safe-bash-contracts/io.d.ts +4 -1
- package/dist/safe-bash-contracts/io.js +3 -1
- package/dist/safe-bash-contracts/managed-abort.d.ts +10 -0
- package/dist/safe-bash-contracts/output.js +2 -2
- package/dist/safe-bash-diff-engine/index.js +1 -1
- package/dist/safe-bash-diff-engine/shared.d.ts +3 -2
- package/dist/safe-bash-diff-engine/shared.js +1 -1
- package/dist/safe-bash-io-engine/commands/archive/internal.js +5 -23
- package/dist/safe-bash-io-engine/commands/search/requirements.js +2 -2
- package/dist/safe-bash-io-engine/commands/text-programs/shared.js +33 -44
- package/dist/safe-bash-io-engine/internal.js +1 -1
- package/dist/safe-bash-io-engine/shell/pattern.js +1 -1
- package/dist/safe-bash-io-engine/shell/string-operations.js +1 -1
- package/dist/safe-bash-mcp/index.browser.d.ts +155 -35
- package/dist/safe-bash-mcp/index.browser.js +416 -0
- package/dist/safe-bash-mcp/index.d.ts +54 -2
- package/dist/safe-bash-mcp/index.js +286 -90
- package/dist/safe-bash-network-engine/aggregate.js +2 -2
- package/dist/safe-bash-network-engine/args.js +4 -4
- package/dist/safe-bash-network-engine/authorizer.js +1 -1
- package/dist/safe-bash-network-engine/body.js +6 -6
- package/dist/safe-bash-network-engine/decode.d.ts +1 -1
- package/dist/safe-bash-network-engine/decode.js +3 -4
- package/dist/safe-bash-network-engine/fetch-transport.js +3 -3
- package/dist/safe-bash-network-engine/form-content-type.js +2 -2
- package/dist/safe-bash-network-engine/form-headers.js +2 -2
- package/dist/safe-bash-network-engine/glob.js +1 -1
- package/dist/safe-bash-network-engine/index.js +4 -4
- package/dist/safe-bash-network-engine/input.js +6 -6
- package/dist/safe-bash-network-engine/output.js +2 -2
- package/dist/safe-bash-network-engine/platform-portable.js +3 -3
- package/dist/safe-bash-network-engine/shared.js +2 -2
- package/dist/safe-bash-network-engine/types.d.ts +7 -2
- package/dist/safe-bash-network-engine/types.js +1 -1
- package/dist/safe-bash-network-engine/url.js +2 -2
- package/dist/safe-bash-query-engine/capture.js +3 -3
- package/dist/safe-bash-query-engine/delpaths.js +3 -3
- package/dist/safe-bash-query-engine/formats.js +2 -2
- package/dist/safe-bash-query-engine/index.js +11 -11
- package/dist/safe-bash-query-engine/indices.js +3 -3
- package/dist/safe-bash-query-engine/input.js +1 -1
- package/dist/safe-bash-query-engine/interpreter.js +9 -9
- package/dist/safe-bash-query-engine/parser.js +1 -1
- package/dist/safe-bash-query-engine/query-core.js +11 -11
- package/dist/safe-bash-query-engine/regex.js +4 -4
- package/dist/safe-bash-query-engine/splits.js +5 -5
- package/dist/safe-bash-query-engine/values.js +2 -2
- package/dist/safe-bash-regex-engine/ere/matcher.js +102 -30
- package/dist/safe-bash-regex-engine/execution/bounded-provider.js +55 -67
- package/dist/safe-bash-regex-engine/execution/portable.d.ts +0 -1
- package/dist/safe-bash-regex-engine/execution/portable.js +6 -10
- package/dist/safe-bash-regex-engine/execution/protocol.d.ts +0 -5
- package/dist/safe-bash-regex-engine/execution/protocol.js +1 -3
- package/dist/safe-bash-regex-engine/index.js +6 -4
- package/dist/safe-bash-regex-engine/text/budget.d.ts +1 -1
- package/dist/safe-bash-regex-engine/text/budget.js +1 -1
- package/dist/safe-bash-regex-engine/text/regex.d.ts +14 -0
- package/dist/safe-bash-regex-engine/text/regex.js +6 -4
- package/dist/safe-bash-regex-engine/text/replacement-buffer.js +2 -2
- package/dist/safe-bash-regex-engine/text/rust-syntax.js +2 -2
- package/dist/safe-bash-search-engine/grep.js +189 -227
- package/dist/safe-bash-table-text-engine/table-text/internal.d.ts +7 -5
- package/dist/safe-bash-table-text-engine/table-text/internal.js +39 -21
- package/dist/safe-playwright-cloudflare/browser-trace-budget.js +6 -2
- package/dist/spreadsheet-engine/codecs/odf-hyperlinks.js +8 -2
- package/dist/spreadsheet-engine/formulas/functions/captured-bessel-phase.js +2 -2
- package/dist/spreadsheet-engine/formulas/label-references.js +54 -33
- package/dist/spreadsheet-engine/formulas/parser.js +3 -1
- package/dist/spreadsheet-engine/formulas/rewriting.js +13 -3
- package/dist/spreadsheet-format-xls/biff-data-tables.js +4 -6
- package/dist/spreadsheet-format-xls/biff-formulas.js +3 -0
- package/dist/spreadsheet-format-xls/biff-label-ranges.js +9 -6
- package/dist/spreadsheet-format-xls/biff.js +1 -1
- package/dist/xlsx-ast/xlsx.js +8 -5
- package/package.json +68 -12
- package/dist/safe-bash/command-chunks/chunk-KAGBORIC.js +0 -88
- /package/dist/safe-bash/command-chunks/{chunk-BWNXWI33.js → chunk-2LMZVE3I.js} +0 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createEgrepCommand,
|
|
3
|
+
createFgrepCommand,
|
|
4
|
+
createGrepAliasCommands,
|
|
5
|
+
grepAliasCommands
|
|
6
|
+
} from "../../chunks/chunk-RRR7AQ24.js";
|
|
7
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
8
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
9
|
+
export {
|
|
10
|
+
createGrepAliasCommands,
|
|
11
|
+
createEgrepCommand as egrepCommand,
|
|
12
|
+
createFgrepCommand as fgrepCommand,
|
|
13
|
+
grepAliasCommands
|
|
14
|
+
};
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
createHexdumpCommand,
|
|
4
4
|
createHexdumpCommands,
|
|
5
5
|
hexdumpCommands
|
|
6
|
-
} from "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
6
|
+
} from "../../chunks/chunk-CS4MNM6I.js";
|
|
7
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
8
8
|
export {
|
|
9
9
|
createHdCommand,
|
|
10
10
|
createHexdumpCommand,
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createHtmlToMarkdownCommand,
|
|
3
|
+
createHtmlToMarkdownCommands,
|
|
4
|
+
evalSyncHtmlToMarkdown,
|
|
5
|
+
evalSyncShuf,
|
|
6
|
+
htmlToMarkdownCommands
|
|
7
|
+
} from "../../chunks/chunk-DQP3VHSB.js";
|
|
8
|
+
import "../../chunks/chunk-IWDICZVK.js";
|
|
9
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
10
|
+
export {
|
|
11
|
+
createHtmlToMarkdownCommand,
|
|
12
|
+
createHtmlToMarkdownCommands,
|
|
13
|
+
evalSyncHtmlToMarkdown,
|
|
14
|
+
evalSyncShuf,
|
|
15
|
+
htmlToMarkdownCommands
|
|
16
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { HtmlError, detachHtmlNode, htmlText, htmlq, htmlqBaseline, htmlqBytes, inclusiveHtmlDescendants, parseHtml, parseHtmlSync, parseHtmlqArguments, selectHtml, serializeHtml, serializeHtmlBytes } from "../../../safe-bash-command-htmlq/index.js";
|
|
2
2
|
export { selectHtml, parseHtmlqArguments, htmlqBytes, htmlq, parseHtml, parseHtmlSync, inclusiveHtmlDescendants, serializeHtml, serializeHtmlBytes, htmlText, detachHtmlNode, HtmlError, htmlqBaseline, };
|
|
3
|
-
export type { HtmlqArguments, HtmlqCommandOptions, HtmlqCommandsOptions, HtmlqRunOptions, HtmlqResult, HtmlAccounting, HtmlOptions, HtmlLimits, HtmlNode, HtmlNamespace, HtmlAttribute, HtmlErrorCode, } from "../../../safe-bash-command-htmlq/index.js";
|
|
3
|
+
export type { HtmlqArguments, HtmlqCommandOptions, HtmlqCommandsOptions, HtmlqLimits, HtmlqRunOptions, HtmlqResult, HtmlAccounting, HtmlOptions, HtmlLimits, HtmlNode, HtmlNamespace, HtmlAttribute, HtmlErrorCode, } from "../../../safe-bash-command-htmlq/index.js";
|
|
4
4
|
export { createHtmlqCommand, createHtmlqCommands, htmlqCommand, htmlqCommands } from "../../../safe-bash-command-htmlq/index.js";
|
|
5
5
|
export declare function evalSyncHtmlq(inBytes: Uint8Array | undefined, opArgs: readonly string[], readFileSync?: (filePath: string) => Uint8Array | undefined, writeFileSync?: (filePath: string, bytes: Uint8Array) => boolean): string | undefined;
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
createIconvCommands,
|
|
4
4
|
evalSyncIconv,
|
|
5
5
|
iconvCommands
|
|
6
|
-
} from "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
6
|
+
} from "../../chunks/chunk-CTVWDACF.js";
|
|
7
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
8
8
|
export {
|
|
9
9
|
createIconvCommand,
|
|
10
10
|
createIconvCommands,
|
|
@@ -6,8 +6,8 @@ import {
|
|
|
6
6
|
dos2unixCommands,
|
|
7
7
|
dos2unixCommands2,
|
|
8
8
|
evalSyncLineEndings
|
|
9
|
-
} from "../../chunks/chunk-
|
|
10
|
-
import "../../chunks/chunk-
|
|
9
|
+
} from "../../chunks/chunk-3R3AANOR.js";
|
|
10
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
11
11
|
export {
|
|
12
12
|
createDos2unixCommand,
|
|
13
13
|
createDos2unixCommands,
|
|
@@ -22,8 +22,8 @@ import {
|
|
|
22
22
|
templateYaml,
|
|
23
23
|
validateLlmTemplateParameters,
|
|
24
24
|
validateModelOptions
|
|
25
|
-
} from "../../chunks/chunk-
|
|
26
|
-
import "../../chunks/chunk-
|
|
25
|
+
} from "../../chunks/chunk-OQRVVGR6.js";
|
|
26
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
27
27
|
export {
|
|
28
28
|
createElevenLabsProvider,
|
|
29
29
|
createLlmCommand,
|
|
@@ -7,9 +7,9 @@ import {
|
|
|
7
7
|
mdqCommand,
|
|
8
8
|
mdqCommands,
|
|
9
9
|
parseMdqArguments
|
|
10
|
-
} from "../../chunks/chunk-
|
|
11
|
-
import "../../chunks/chunk-
|
|
12
|
-
import "../../chunks/chunk-
|
|
10
|
+
} from "../../chunks/chunk-OV6IHKO6.js";
|
|
11
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
12
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
13
13
|
export {
|
|
14
14
|
MdqError,
|
|
15
15
|
createMdqCommand,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createMetadataCommands,
|
|
3
|
+
evalSyncMktemp,
|
|
4
|
+
evalSyncStat,
|
|
5
|
+
evalSyncTruncate,
|
|
6
|
+
metadataCommands
|
|
7
|
+
} from "../../chunks/chunk-VSAJ4OTM.js";
|
|
8
|
+
import "../../chunks/chunk-D3ANYGMC.js";
|
|
9
|
+
import "../../chunks/chunk-VTH3MLDU.js";
|
|
10
|
+
import "../../chunks/chunk-NZQXYWA3.js";
|
|
11
|
+
import "../../chunks/chunk-74GHTNJA.js";
|
|
12
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
13
|
+
import "../../chunks/chunk-IWDICZVK.js";
|
|
14
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
15
|
+
export {
|
|
16
|
+
createMetadataCommands,
|
|
17
|
+
evalSyncMktemp,
|
|
18
|
+
evalSyncStat,
|
|
19
|
+
evalSyncTruncate,
|
|
20
|
+
metadataCommands
|
|
21
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { NetworkCommandsOptions } from "./types.js";
|
|
2
2
|
export * from "../../../safe-bash-command-curl/curl.js";
|
|
3
|
-
export declare function createCurlCommand(options
|
|
3
|
+
export declare function createCurlCommand(options?: NetworkCommandsOptions): import("../../../safe-bash-contracts/index.js").CommandDefinition;
|
|
4
4
|
//# sourceMappingURL=curl.d.ts.map
|
|
@@ -2,9 +2,7 @@ import { createCurlCommand as createPortableCommand } from "../../../safe-bash-c
|
|
|
2
2
|
import { createDefaultHttpTransport, requiresFiniteUrlLimits } from "#safe-bash-network-platform";
|
|
3
3
|
import { limitsFor } from "./shared.js";
|
|
4
4
|
export * from "../../../safe-bash-command-curl/curl.js";
|
|
5
|
-
export function createCurlCommand(options) {
|
|
6
|
-
if (typeof options?.authorize !== "function")
|
|
7
|
-
throw new TypeError("curl requires an explicit network authorizer");
|
|
5
|
+
export function createCurlCommand(options = {}) {
|
|
8
6
|
const limits = limitsFor(options.limits);
|
|
9
7
|
if (requiresFiniteUrlLimits && (!Number.isFinite(limits.maxUrls) || !Number.isFinite(limits.maxBufferBytes)))
|
|
10
8
|
throw new TypeError("Portable network commands require finite maxUrls and maxBufferBytes limits");
|
|
@@ -12,10 +12,10 @@ import {
|
|
|
12
12
|
evalSyncCurl,
|
|
13
13
|
evalSyncWget,
|
|
14
14
|
networkCommands
|
|
15
|
-
} from "../../chunks/chunk-
|
|
16
|
-
import "../../chunks/chunk-
|
|
17
|
-
import "../../chunks/chunk-
|
|
18
|
-
import "../../chunks/chunk-
|
|
15
|
+
} from "../../chunks/chunk-K6VCD7IY.js";
|
|
16
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
17
|
+
import "../../chunks/chunk-IWDICZVK.js";
|
|
18
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
19
19
|
export {
|
|
20
20
|
CurlError,
|
|
21
21
|
cloudflareWorkerNetworkLimits,
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
export
|
|
2
|
-
export declare function createDefaultHttpTransport(): never;
|
|
3
|
-
export declare function randomBytes(length: number): Uint8Array;
|
|
4
|
-
export declare function validateHeaderName(name: string): void;
|
|
5
|
-
export declare function validateHeaderValue(_name: string, value: string): void;
|
|
1
|
+
export * from "../../../safe-bash-network-engine/platform-portable.js";
|
|
6
2
|
//# sourceMappingURL=platform-portable.d.ts.map
|
|
@@ -1,27 +1,2 @@
|
|
|
1
|
-
export
|
|
2
|
-
export function createDefaultHttpTransport() {
|
|
3
|
-
throw new TypeError("Portable network commands require an explicit HTTP transport; inject createFetchTransport() or a host transport");
|
|
4
|
-
}
|
|
5
|
-
export function randomBytes(length) {
|
|
6
|
-
const bytes = new Uint8Array(length);
|
|
7
|
-
globalThis.crypto.getRandomValues(bytes);
|
|
8
|
-
return bytes;
|
|
9
|
-
}
|
|
10
|
-
export function validateHeaderName(name) {
|
|
11
|
-
if (!name.length)
|
|
12
|
-
throw new TypeError("Invalid HTTP header name");
|
|
13
|
-
for (const character of name) {
|
|
14
|
-
const code = character.charCodeAt(0);
|
|
15
|
-
if (!(code >= 48 && code <= 57 || code >= 65 && code <= 90 || code >= 97 && code <= 122 || "!#$%&'*+-.^_`|~".includes(character))) {
|
|
16
|
-
throw new TypeError("Invalid HTTP header name");
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
export function validateHeaderValue(_name, value) {
|
|
21
|
-
for (const character of value) {
|
|
22
|
-
const code = character.charCodeAt(0);
|
|
23
|
-
if (code !== 9 && (code < 32 || code === 127 || code > 255))
|
|
24
|
-
throw new TypeError("Invalid HTTP header value");
|
|
25
|
-
}
|
|
26
|
-
}
|
|
1
|
+
export * from "../../../safe-bash-network-engine/platform-portable.js";
|
|
27
2
|
//# sourceMappingURL=platform-portable.js.map
|
|
@@ -6,8 +6,8 @@ export { createFetchTransport, type FetchTransportOptions } from "./fetch-transp
|
|
|
6
6
|
export { createOriginAuthorizer, type OriginAllowlist, type OriginAuthorizerOptions } from "./authorizer.js";
|
|
7
7
|
export { createCurlCommand } from "./curl.js";
|
|
8
8
|
export { createWgetCommand } from "./wget.js";
|
|
9
|
-
export declare function createNetworkCommands(options
|
|
10
|
-
export declare function networkCommands(options
|
|
9
|
+
export declare function createNetworkCommands(options?: NetworkCommandsOptions): readonly CommandDefinition[];
|
|
10
|
+
export declare function networkCommands(options?: NetworkCommandsOptions): VirtualShellPlugin;
|
|
11
11
|
export declare const createCurlCommands: typeof createNetworkCommands;
|
|
12
12
|
export declare const curlCommands: typeof networkCommands;
|
|
13
13
|
export declare function evalSyncCurl(opArgs: readonly string[]): string | undefined;
|
|
@@ -7,10 +7,10 @@ export { createFetchTransport } from "./fetch-transport.js";
|
|
|
7
7
|
export { createOriginAuthorizer } from "./authorizer.js";
|
|
8
8
|
export { createCurlCommand } from "./curl.js";
|
|
9
9
|
export { createWgetCommand } from "./wget.js";
|
|
10
|
-
export function createNetworkCommands(options) {
|
|
10
|
+
export function createNetworkCommands(options = {}) {
|
|
11
11
|
return [createCurlCommand(options), createWgetCommand(options)];
|
|
12
12
|
}
|
|
13
|
-
export function networkCommands(options) {
|
|
13
|
+
export function networkCommands(options = {}) {
|
|
14
14
|
const definitions = createNetworkCommands(options);
|
|
15
15
|
return {
|
|
16
16
|
name: "network-commands",
|
|
@@ -102,12 +102,12 @@ export function createNodeHttpTransport(options = {}) {
|
|
|
102
102
|
request = (url.protocol === "https:" ? httpsRequest : httpRequest)(url, {
|
|
103
103
|
method: input.method,
|
|
104
104
|
path: curlRequestTarget(input.url),
|
|
105
|
-
headers:
|
|
105
|
+
headers: headers.host?.length === 1 ? { ...headers, host: headers.host[0] } : headers,
|
|
106
106
|
signal, maxHeaderSize: Number.isFinite(maxHeaderSize) ? maxHeaderSize : Number.MAX_SAFE_INTEGER, agent: false,
|
|
107
107
|
...(requestCa === undefined ? {} : { ca: requestCa }),
|
|
108
108
|
...(input.ca === undefined ? {} : { rejectUnauthorized: true }),
|
|
109
109
|
...pinned,
|
|
110
|
-
...(
|
|
110
|
+
...(url.protocol === "https:" ? {
|
|
111
111
|
servername: isIP(hostname) ? "" : hostname,
|
|
112
112
|
rejectUnauthorized: true,
|
|
113
113
|
checkServerIdentity: (_servername, certificate) => checkServerIdentity(hostname, certificate),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { NetworkCommandsOptions } from "./types.js";
|
|
2
2
|
export * from "../../../safe-bash-command-wget/wget.js";
|
|
3
|
-
export declare function createWgetCommand(options
|
|
3
|
+
export declare function createWgetCommand(options?: NetworkCommandsOptions): import("../../../safe-bash-contracts/index.js").CommandDefinition;
|
|
4
4
|
//# sourceMappingURL=wget.d.ts.map
|
|
@@ -2,9 +2,7 @@ import { createWgetCommand as createPortableCommand } from "../../../safe-bash-c
|
|
|
2
2
|
import { createDefaultHttpTransport, requiresFiniteUrlLimits } from "#safe-bash-network-platform";
|
|
3
3
|
import { limitsFor } from "./shared.js";
|
|
4
4
|
export * from "../../../safe-bash-command-wget/wget.js";
|
|
5
|
-
export function createWgetCommand(options) {
|
|
6
|
-
if (typeof options?.authorize !== "function")
|
|
7
|
-
throw new TypeError("wget requires an explicit network authorizer");
|
|
5
|
+
export function createWgetCommand(options = {}) {
|
|
8
6
|
const limits = limitsFor(options.limits);
|
|
9
7
|
if (requiresFiniteUrlLimits && (!Number.isFinite(limits.maxUrls) || !Number.isFinite(limits.maxBufferBytes)))
|
|
10
8
|
throw new TypeError("Portable network commands require finite maxUrls and maxBufferBytes limits");
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { commandLimits } from "../safejs/options.js";
|
|
2
|
+
import { yieldTurn } from "../../../safe-bash-contracts/yield.js";
|
|
2
3
|
import { SafeJsCommandLimitError } from "../safejs/types.js";
|
|
3
4
|
export function nodeReadFile(options, fs, signal, fail, pending) {
|
|
4
5
|
const read = fs.readFile;
|
|
@@ -21,11 +22,11 @@ export function nodeReadFile(options, fs, signal, fail, pending) {
|
|
|
21
22
|
}
|
|
22
23
|
const done = callback;
|
|
23
24
|
const completion = Promise.resolve().then(() => read(path, encoding)).then(async (text) => {
|
|
24
|
-
await
|
|
25
|
+
await yieldTurn(signal);
|
|
25
26
|
signal.throwIfAborted();
|
|
26
27
|
return done(null, text);
|
|
27
28
|
}, async (error) => {
|
|
28
|
-
await
|
|
29
|
+
await yieldTurn(signal);
|
|
29
30
|
signal.throwIfAborted();
|
|
30
31
|
return done(error);
|
|
31
32
|
}).then(() => undefined).catch(fail).finally(() => pending.delete(completion));
|
|
@@ -2,14 +2,14 @@ import {
|
|
|
2
2
|
createSafeJsNodeCommand,
|
|
3
3
|
createSafeJsNodeCommands,
|
|
4
4
|
safeJsNodeCommands
|
|
5
|
-
} from "../../chunks/chunk-
|
|
6
|
-
import "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
8
|
-
import "../../chunks/chunk-
|
|
9
|
-
import "../../chunks/chunk-
|
|
10
|
-
import "../../chunks/chunk-
|
|
11
|
-
import "../../chunks/chunk-
|
|
12
|
-
import "../../chunks/chunk-
|
|
5
|
+
} from "../../chunks/chunk-RSTHLAF3.js";
|
|
6
|
+
import "../../chunks/chunk-PH63PLPZ.js";
|
|
7
|
+
import "../../chunks/chunk-D3ANYGMC.js";
|
|
8
|
+
import "../../chunks/chunk-NZQXYWA3.js";
|
|
9
|
+
import "../../chunks/chunk-74GHTNJA.js";
|
|
10
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
11
|
+
import "../../chunks/chunk-IWDICZVK.js";
|
|
12
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
13
13
|
export {
|
|
14
14
|
createSafeJsNodeCommand as createNodeCommand,
|
|
15
15
|
createSafeJsNodeCommands as createNodeCommands,
|
|
@@ -5,7 +5,7 @@ export function resolveNodeLimits(options = {}) {
|
|
|
5
5
|
for (const [name, value] of Object.entries(options)) {
|
|
6
6
|
if (name === "sabBytes" || !Object.hasOwn(nodeLimits, name))
|
|
7
7
|
throw new TypeError(`Unknown Node limit: ${name}`);
|
|
8
|
-
if (!Number.isSafeInteger(value) || value < 0 || ["admissionMs", "oldGenerationMiB", "youngGenerationMiB", "codeMiB", "stackMiB"].includes(name) && value < 1)
|
|
8
|
+
if (value !== Infinity && (!Number.isSafeInteger(value) || value < 0 || ["admissionMs", "oldGenerationMiB", "youngGenerationMiB", "codeMiB", "stackMiB"].includes(name) && value < 1))
|
|
9
9
|
throw new RangeError(`Invalid Node limit: ${name}`);
|
|
10
10
|
}
|
|
11
11
|
return Object.freeze({ ...nodeLimits, ...options });
|
|
@@ -19,9 +19,9 @@ import {
|
|
|
19
19
|
restoreEnvironment,
|
|
20
20
|
selectOpBackendContext,
|
|
21
21
|
selectOpGlobalFlags
|
|
22
|
-
} from "../../chunks/chunk-
|
|
23
|
-
import "../../chunks/chunk-
|
|
24
|
-
import "../../chunks/chunk-
|
|
22
|
+
} from "../../chunks/chunk-UE5KZDEK.js";
|
|
23
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
24
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
25
25
|
export {
|
|
26
26
|
captureEnvironment,
|
|
27
27
|
createDocumentHandlers,
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
createPrCommands,
|
|
4
4
|
evalSyncPr,
|
|
5
5
|
prCommands
|
|
6
|
-
} from "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
6
|
+
} from "../../chunks/chunk-CHYGPFVM.js";
|
|
7
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
8
8
|
export {
|
|
9
9
|
createPrCommand,
|
|
10
10
|
createPrCommands,
|
|
@@ -22,6 +22,7 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
22
22
|
const pending = new Set();
|
|
23
23
|
const streams = new Map();
|
|
24
24
|
const jobs = new Map();
|
|
25
|
+
const activeCalls = new Set();
|
|
25
26
|
const cleanupFailures = [];
|
|
26
27
|
const jobWork = new Set();
|
|
27
28
|
let nextJob = 1;
|
|
@@ -93,16 +94,17 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
93
94
|
const stream = streams.get(handle);
|
|
94
95
|
if (!stream)
|
|
95
96
|
throw new Error('Unknown Python host stream');
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
throw error;
|
|
97
|
+
if (!stream.closing) {
|
|
98
|
+
stream.closing = Promise.resolve().then(async () => {
|
|
99
|
+
if (cancel)
|
|
100
|
+
stream.controller.abort(new Error('Python host stream released'));
|
|
101
|
+
await stream.iterator.return?.();
|
|
102
|
+
// Retained iterators consume admission until cleanup succeeds, including
|
|
103
|
+
// when a host ignores cancellation or its cleanup fails.
|
|
104
|
+
streams.delete(handle);
|
|
105
|
+
}).catch(error => { cleanupFailures.push(error); throw error; });
|
|
105
106
|
}
|
|
107
|
+
await stream.closing;
|
|
106
108
|
};
|
|
107
109
|
const pull = async (handle) => {
|
|
108
110
|
const stream = streams.get(handle);
|
|
@@ -140,6 +142,7 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
140
142
|
const payload = data(incoming);
|
|
141
143
|
if (!payload || Array.isArray(payload) || typeof payload !== 'object' || payload.version !== 1)
|
|
142
144
|
throw new TypeError('Unsupported Python host protocol');
|
|
145
|
+
let reservation;
|
|
143
146
|
const operation = Promise.resolve().then(async () => {
|
|
144
147
|
assertLive();
|
|
145
148
|
if (payload.operation === 'poll' || payload.operation === 'cancel') {
|
|
@@ -151,23 +154,29 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
151
154
|
throw new Error('Unknown Python host job');
|
|
152
155
|
if (payload.operation === 'cancel') {
|
|
153
156
|
jobs.delete(handle);
|
|
157
|
+
if (job.settled)
|
|
158
|
+
activeCalls.delete(job.reservation);
|
|
154
159
|
job.controller.abort(new Error('Python guest cancelled host operation'));
|
|
155
160
|
return null;
|
|
156
161
|
}
|
|
157
162
|
if (job.result === undefined && !job.failed)
|
|
158
163
|
return { done: false };
|
|
159
164
|
jobs.delete(handle);
|
|
165
|
+
if (job.settled)
|
|
166
|
+
activeCalls.delete(job.reservation);
|
|
160
167
|
return job.failed ? { done: true, error: 'Python host operation failed', errorCode: job.failed } : { done: true, value: job.result };
|
|
161
168
|
}
|
|
162
|
-
if (
|
|
169
|
+
if (activeCalls.size >= maxConcurrentCalls)
|
|
163
170
|
throw new Error('Python host call concurrency limit exceeded');
|
|
171
|
+
reservation = {};
|
|
172
|
+
activeCalls.add(reservation);
|
|
164
173
|
if (payload.operation === 'begin' || payload.operation === 'begin-next') {
|
|
165
174
|
let work;
|
|
166
175
|
let child;
|
|
167
176
|
let reservedStream;
|
|
168
177
|
if (payload.operation === 'begin-next') {
|
|
169
178
|
const stream = typeof payload.handle === 'number' ? streams.get(payload.handle) : undefined;
|
|
170
|
-
if (!stream || stream.busy)
|
|
179
|
+
if (!stream || stream.busy || stream.closing)
|
|
171
180
|
throw new Error('Unknown or busy Python host stream');
|
|
172
181
|
reservedStream = stream;
|
|
173
182
|
stream.busy = true;
|
|
@@ -182,8 +191,10 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
182
191
|
work = childSignal => capability.call(payload.value ?? null, { signal: childSignal });
|
|
183
192
|
}
|
|
184
193
|
const handle = nextJob++;
|
|
185
|
-
const job = { controller: child };
|
|
194
|
+
const job = { controller: child, reservation, settled: false };
|
|
186
195
|
jobs.set(handle, job);
|
|
196
|
+
// Transfer admission to the job until both host work and guest ownership end.
|
|
197
|
+
reservation = undefined;
|
|
187
198
|
const task = Promise.resolve().then(() => {
|
|
188
199
|
const childSignal = AbortSignal.any([signal, child.signal]);
|
|
189
200
|
childSignal.throwIfAborted();
|
|
@@ -193,6 +204,9 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
193
204
|
child.signal.throwIfAborted();
|
|
194
205
|
job.result = data(value);
|
|
195
206
|
}).catch(error => { job.failed = pythonHostFailureCode(error); }).finally(() => {
|
|
207
|
+
job.settled = true;
|
|
208
|
+
if (!jobs.has(handle))
|
|
209
|
+
activeCalls.delete(job.reservation);
|
|
196
210
|
if (reservedStream)
|
|
197
211
|
reservedStream.busy = false;
|
|
198
212
|
jobWork.delete(task);
|
|
@@ -207,8 +221,8 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
207
221
|
const stream = streams.get(handle);
|
|
208
222
|
if (!stream)
|
|
209
223
|
throw new Error('Unknown Python host stream');
|
|
210
|
-
if (stream.busy)
|
|
211
|
-
throw new Error('Python host stream already pulling');
|
|
224
|
+
if (stream.busy || stream.closing)
|
|
225
|
+
throw new Error('Python host stream already pulling or closing');
|
|
212
226
|
if (payload.operation === 'release') {
|
|
213
227
|
await release(handle);
|
|
214
228
|
return null;
|
|
@@ -248,6 +262,8 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
248
262
|
}
|
|
249
263
|
finally {
|
|
250
264
|
pending.delete(operation);
|
|
265
|
+
if (reservation)
|
|
266
|
+
activeCalls.delete(reservation);
|
|
251
267
|
}
|
|
252
268
|
};
|
|
253
269
|
const close = () => {
|
|
@@ -260,6 +276,7 @@ export function createPythonHostBridge(capabilities, options) {
|
|
|
260
276
|
job.controller.abort(controller.signal.reason);
|
|
261
277
|
await Promise.allSettled([...pending, ...jobWork]);
|
|
262
278
|
jobs.clear();
|
|
279
|
+
activeCalls.clear();
|
|
263
280
|
const results = await Promise.allSettled([...streams.keys()].map(handle => release(handle)));
|
|
264
281
|
registry.clear();
|
|
265
282
|
for (const result of results)
|
|
@@ -16,20 +16,20 @@ import {
|
|
|
16
16
|
pythonCommands,
|
|
17
17
|
pythonDocumentPackages,
|
|
18
18
|
pythonHostFailureCode
|
|
19
|
-
} from "../../chunks/chunk-
|
|
20
|
-
import "../../chunks/chunk-
|
|
21
|
-
import "../../chunks/chunk-JJSTTIEZ.js";
|
|
22
|
-
import "../../chunks/chunk-46UISJCK.js";
|
|
23
|
-
import "../../chunks/chunk-VYZTG3GV.js";
|
|
24
|
-
import "../../chunks/chunk-PYVEAFJM.js";
|
|
25
|
-
import "../../chunks/chunk-LQHGH25W.js";
|
|
19
|
+
} from "../../chunks/chunk-WDLGKIHD.js";
|
|
20
|
+
import "../../chunks/chunk-HZAMGT5I.js";
|
|
26
21
|
import {
|
|
27
22
|
PythonFailure,
|
|
28
23
|
inspectPythonCapabilities
|
|
29
|
-
} from "../../chunks/chunk-
|
|
30
|
-
import "../../chunks/chunk-
|
|
31
|
-
import "../../chunks/chunk-
|
|
32
|
-
import "../../chunks/chunk-
|
|
24
|
+
} from "../../chunks/chunk-LVOBFF4D.js";
|
|
25
|
+
import "../../chunks/chunk-I5HZ4FGE.js";
|
|
26
|
+
import "../../chunks/chunk-7R5BDCG7.js";
|
|
27
|
+
import "../../chunks/chunk-VTH3MLDU.js";
|
|
28
|
+
import "../../chunks/chunk-NZQXYWA3.js";
|
|
29
|
+
import "../../chunks/chunk-74GHTNJA.js";
|
|
30
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
31
|
+
import "../../chunks/chunk-IWDICZVK.js";
|
|
32
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
33
33
|
export {
|
|
34
34
|
PythonFailure,
|
|
35
35
|
PythonPackageConflictError,
|
|
@@ -18,6 +18,7 @@ export declare class PythonPackageConflictError extends Error {
|
|
|
18
18
|
export declare function createPythonPackageManifestStore(options?: {
|
|
19
19
|
readonly maxBytes?: number;
|
|
20
20
|
readonly maxEntries?: number;
|
|
21
|
+
readonly maxScopeLength?: number;
|
|
21
22
|
}): PythonPackageManifestStore & {
|
|
22
23
|
dispose(): void;
|
|
23
24
|
};
|
|
@@ -9,14 +9,15 @@ export class PythonPackageConflictError extends Error {
|
|
|
9
9
|
export function createPythonPackageManifestStore(options = {}) {
|
|
10
10
|
const maxBytes = options.maxBytes ?? Infinity;
|
|
11
11
|
const maxEntries = options.maxEntries ?? Infinity;
|
|
12
|
-
|
|
12
|
+
const maxScopeLength = options.maxScopeLength ?? Infinity;
|
|
13
|
+
for (const [name, value] of Object.entries({ maxBytes, maxEntries, maxScopeLength })) {
|
|
13
14
|
if (value !== Infinity && (!Number.isSafeInteger(value) || value < 1)) {
|
|
14
15
|
throw new RangeError(`Python manifest ${name} must be a positive safe integer or Infinity`);
|
|
15
16
|
}
|
|
16
17
|
}
|
|
17
18
|
const manifests = new Map();
|
|
18
19
|
let retainedBytes = 0;
|
|
19
|
-
let revision =
|
|
20
|
+
let revision = 0n;
|
|
20
21
|
let disposed = false;
|
|
21
22
|
const check = (scope, signal) => {
|
|
22
23
|
signal.throwIfAborted();
|
|
@@ -24,6 +25,8 @@ export function createPythonPackageManifestStore(options = {}) {
|
|
|
24
25
|
throw new Error('Python manifest store is disposed');
|
|
25
26
|
if (typeof scope !== 'string' || !scope)
|
|
26
27
|
throw new TypeError('Invalid Python manifest scope');
|
|
28
|
+
if (scope.length > maxScopeLength)
|
|
29
|
+
throw new RangeError('Python manifest scope budget exhausted');
|
|
27
30
|
};
|
|
28
31
|
return {
|
|
29
32
|
async get(scope, { signal }) {
|
|
@@ -39,7 +42,7 @@ export function createPythonPackageManifestStore(options = {}) {
|
|
|
39
42
|
if (!(bytes instanceof Uint8Array))
|
|
40
43
|
throw new TypeError('Python manifest must contain bytes');
|
|
41
44
|
const nextBytes = retainedBytes - (current?.bytes.length ?? 0) + bytes.length;
|
|
42
|
-
if (nextBytes > maxBytes || (!current && manifests.size >= maxEntries)
|
|
45
|
+
if (nextBytes > maxBytes || (!current && manifests.size >= maxEntries)) {
|
|
43
46
|
throw new RangeError('Python manifest store budget exhausted');
|
|
44
47
|
}
|
|
45
48
|
manifests.set(scope, { revision: String(++revision), bytes: Uint8Array.from(bytes) });
|
|
@@ -5,6 +5,7 @@ export declare function pythonShellDispatchActive(scope: object | undefined): bo
|
|
|
5
5
|
export declare function createPythonShellCapability(context: CommandContext, options?: {
|
|
6
6
|
readonly maxInputBytes?: number;
|
|
7
7
|
readonly maxOutputBytes?: number;
|
|
8
|
+
readonly maxBufferedOutputBytes?: number;
|
|
8
9
|
readonly maxConcurrentCalls?: number;
|
|
9
10
|
readonly maxStreamChunkBytes?: number;
|
|
10
11
|
}): PythonHostCapability;
|
|
@@ -8,8 +8,9 @@ export function createPythonShellCapability(context, options = {}) {
|
|
|
8
8
|
throw new TypeError('Python shell capability requires a parent shell invocation');
|
|
9
9
|
const maxInputBytes = options.maxInputBytes ?? Infinity;
|
|
10
10
|
const maxOutputBytes = options.maxOutputBytes ?? Infinity;
|
|
11
|
+
const maxBufferedOutputBytes = options.maxBufferedOutputBytes ?? Infinity;
|
|
11
12
|
const maxConcurrentCalls = options.maxConcurrentCalls ?? Infinity;
|
|
12
|
-
for (const limit of [maxInputBytes, maxOutputBytes, maxConcurrentCalls])
|
|
13
|
+
for (const limit of [maxInputBytes, maxOutputBytes, maxBufferedOutputBytes, maxConcurrentCalls])
|
|
13
14
|
if (limit !== Infinity && (!Number.isSafeInteger(limit) || limit < 1))
|
|
14
15
|
throw new RangeError('Invalid Python shell limit');
|
|
15
16
|
const chunkBytes = options.maxStreamChunkBytes ?? 16384;
|
|
@@ -28,7 +29,7 @@ export function createPythonShellCapability(context, options = {}) {
|
|
|
28
29
|
const requestedOutput = request.maxOutputBytes;
|
|
29
30
|
if (requestedOutput !== undefined && (typeof requestedOutput !== 'number' || requestedOutput !== Infinity && (!Number.isSafeInteger(requestedOutput) || requestedOutput < 0)))
|
|
30
31
|
throw new RangeError('Invalid Python shell output limit');
|
|
31
|
-
const outputLimit = Math.min(maxOutputBytes, typeof requestedOutput === 'number' ? requestedOutput :
|
|
32
|
+
const outputLimit = Math.min(maxOutputBytes, publish ? Infinity : maxBufferedOutputBytes, typeof requestedOutput === 'number' ? requestedOutput : Infinity);
|
|
32
33
|
const timeoutMs = request.timeoutMs;
|
|
33
34
|
if (timeoutMs !== undefined && (typeof timeoutMs !== 'number' || !Number.isSafeInteger(timeoutMs) || timeoutMs < 1 || timeoutMs > 2147483647))
|
|
34
35
|
throw new RangeError('Invalid Python shell timeout');
|
|
@@ -8,11 +8,11 @@ import {
|
|
|
8
8
|
pythonRuntimeRelocation,
|
|
9
9
|
pythonStatProjection,
|
|
10
10
|
pythonTreeCleanup
|
|
11
|
-
} from "../../chunks/chunk-
|
|
12
|
-
import "../../chunks/chunk-
|
|
11
|
+
} from "../../chunks/chunk-LVOBFF4D.js";
|
|
12
|
+
import "../../chunks/chunk-IWDICZVK.js";
|
|
13
13
|
import {
|
|
14
14
|
init_platform
|
|
15
|
-
} from "../../chunks/chunk-
|
|
15
|
+
} from "../../chunks/chunk-B7TAL7S5.js";
|
|
16
16
|
|
|
17
17
|
// packages/safe-bash/src/commands/python/worker.ts
|
|
18
18
|
init_platform();
|