Project homepage Mailing List  Warmcat.com  API Docs  Github Mirror 
    npro  
 Modern all-safe Rust Network Protocol library supporting h1, h2, h3, ws, wt sans-IO and with socket IO + tls
git clone https://npro.rs/repo/npro
 
root / src / builder / b-private.h
Author[]Andy Green <andy@warmcat.com> 2026-06-18 04:42 UTC
Committer[]Andy Green <andy@warmcat.com> 2026-06-18 09:51 UTC
Tree778d64ef29a966362641596b1dff2503339d1f01   Raw Patch
 
task_log_limit
task_log_limit
diff --git a/assets/rocky9-ca.svg b/assets/rocky9-ca.svg new file mode 100644 index 0000000..f735999 --- /dev/null +++ b/assets/rocky9-ca.svg @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + width="24.456909mm" + height="24.456919mm" + viewBox="0 0 24.456909 24.456919" + version="1.1" + id="svg1" + xml:space="preserve" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"><defs + id="defs1"><filter + style="color-interpolation-filters:sRGB" + id="filter1" + x="0" + y="0" + width="1" + height="1"><feColorMatrix + values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 " + id="feColorMatrix1" /></filter></defs><g + id="layer1" + transform="translate(-52.714493,-51.549695)"><path + style="fill:#ffffff;stroke-width:0.410001;stroke-linecap:round;stroke-opacity:0.512082" + d="m 56.18187,72.069102 3.811654,2.914795 8.584231,-8.584231 5.541312,5.445223 2.370275,-4.163994 -7.943617,-8.231894 z" + id="path1" /><image + width="24.456915" + height="24.456915" + preserveAspectRatio="none" + xlink:href="data:image/png;base64,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&#10;YII=&#10;" + id="image1" + x="52.714493" + y="51.54969" + style="filter:url(#filter1)" /><text + xml:space="preserve" + style="font-weight:bold;font-size:14.1111px;line-height:1;font-family:Carlito;-inkscape-font-specification:'Carlito Bold';text-align:center;writing-mode:lr-tb;direction:ltr;text-anchor:middle;fill:#1a1a1a;stroke-width:0.410001;stroke-linecap:round;stroke-opacity:0.512082" + x="60.81369" + y="64.287872" + id="text1"><tspan + id="tspan1" + style="fill:#1a1a1a;stroke-width:0.41" + x="60.81369" + y="64.287872">9</tspan></text></g></svg> diff --git a/assets/tc-clang.svg b/assets/tc-clang.svg new file mode 100644 index 0000000..8817783 --- /dev/null +++ b/assets/tc-clang.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3.816 3.816" height="14.423" width="14.423" xmlns:v="https://vecta.io/nano"><circle cx="1.908" cy="1.908" r="1.908" opacity=".12" fill="#f9f9f9"/><text y="-89.817" x="-674.181" xml:space="preserve" font-size=".805" font-family="A-OTF Shin Go Pro" letter-spacing="0" word-spacing="0"><tspan y="3.175" x="0.629" font-weight="800">LLVM</tspan></text><path d="M2.018 3.04c-.102-.01-.203-.044-.352-.118l-.138-.07-.087.04c-.23.104-.396.123-.518.06-.114-.058-.143-.19-.06-.28.028-.03.07-.062.058-.042.022.001.026-.003.02-.006s.02-.006.056-.007a.68.68 0 0 1 .284.067c.05.02.09.033.088.03s.016.004.042.02l.047.027.052-.03.13-.08.077-.05-.004-.036c-.005-.042-.028-.093-.04-.09s-.01.04-.002.082c.005.02.004.026-.003.02s-.014-.03-.023-.116-.02-.056-.022.047l-.004.074c-.012-.003-.015-.01-.016-.02l-.007-.083c-.008-.092-.022-.07-.023.04-.001.088-.007.104-.02.054a.35.35 0 0 1-.012-.09l-.003-.046-.006.038c-.004.023-.006.03-.007.016s-.007-.027-.014-.032c-.015-.012-.016-.052-.004-.077s.058-.04.106-.04h.04l-.033.008c-.044.01-.08.025-.08.033.058-.005.092-.007.088 0s.006.008.018.01c.03.004.044.026.03.05.006.003.017-.002.025-.002s.016-.006.02-.013.017-.013.047-.013c.055 0 .055-.013.001-.067a.51.51 0 0 0-.265-.124c-.01 0-.05.033-.09.076l-.074.075-.04-.02a3.25 3.25 0 0 1-.296-.198C.917 2.09.81 1.99.76 1.922l-.034-.045-.014.045c-.02.063-.02.04.001-.03.077-.265.19-.46.31-.54.028-.02.047-.034.042-.034a.47.47 0 0 0-.149.115 1.7 1.7 0 0 0-.29.837c-.001.033-.005.06-.008.06-.008 0-.095-.215-.137-.338-.094-.28-.144-.55-.148-.797-.001-.048-.005-.084-.01-.08 0 .016-.006.023-.015.028-.017-.001-.02.002-.025.008.01-.022.017-.025.017-.022s.01-.005.02-.016a.59.59 0 0 1 .197-.092.6.6 0 0 1 .119-.014C.704 1.005.717 1 .695.977s.05 0 .155.053a2.58 2.58 0 0 1 .301.19c.017.014.033.023.035.02s-.047-.085-.108-.156C1.046 1.047.962.96.893.893L.767.772.876.86c.126.1.274.242.327.312l.037.054c0 .003-.01.012-.025.02-.046.026-.027.056.036.058.044.002.046.005.023.03-.01.01-.013.02-.01.025s.012.036.017.07c.014.088.043.176.087.26l.034.073c-.007 0-.064-.102-.085-.153a.86.86 0 0 1-.037-.118c-.008-.037-.015-.058-.016-.046-.002.07.05.208.114.313.023.037.025.047.023.1s-.003.06.008.026c.006-.018.01-.03.012-.023.017.004.033.013.047.025s.02.023.016.025a.12.12 0 0 0-.025.015c.017.013.04.027.063.048s.028.024.015.01c-.04-.044-.025-.04.026.006a.74.74 0 0 0 .202.12c.018.006.02.005.01-.007.02-.006.047.005.07.016a.48.48 0 0 0 .087.029c.055.012.146.005.173-.013.01-.007.02-.01.02-.006.013-.014.012-.023.002-.033.037-.015.055-.034.04-.044s-.008-.02.012-.02.04-.026.022-.032-.01-.017.01-.02.018-.008.017-.026.003-.023.01-.023c.013 0 .024-.023.016-.035-.003-.004.002-.013.01-.02s.013-.016.01-.022.001-.017.008-.024.01-.02.008-.027-.001-.018.004-.02a.28.28 0 0 0 .008-.087c0-.184-.073-.334-.19-.39-.088-.043-.23-.035-.277.016-.023.024-.043.074-.043.106 0 .024-.001.025-.02.017-.04-.015-.038-.01.01.05a1 1 0 0 1 .086.123c.043.075.054.086.086.087.013 0 .023.004.023.01 0 .013-.04.01-.07-.005l-.026-.013.018.03c.01.017.015.03.01.03s-.005.012-.003.026l.004.026-.028-.026c-.016-.014-.042-.03-.06-.035-.023-.007-.03-.013-.028-.023.013-.043.01-.056-.003-.017a.31.31 0 0 0-.015.105c.001.032.002.045.004.03.007-.067.012-.083.024-.078s.012.016.012.035.01.053.02.08c.015.038.018.05.01.056-.015.01-.055.008-.074-.002s-.016-.014-.012-.05c.01-.068 0-.09-.05-.122-.063-.04-.077-.076-.05-.13.01-.018.01-.025.002-.027s-.01-.033-.01-.11c0-.104.001-.11.024-.152a.3.3 0 0 1 .04-.058c.015-.013.016-.013.016.004.015.01.017-.01.015-.034s0-.043.005-.046c0 .01 0 .02.004.03.006.016.008.014.018-.018.014-.044.025-.06.025-.034s.013.023.026-.007.02-.032.027-.006c.005.02.005.02.023-.004s.03-.03.035-.01c.003.008-.01.018-.04.032-.065.03-.108.08-.106.12.007-.001.015-.004.023-.001-.01-.025-.01-.025.007-.016s.024.006.055-.016c.074-.052.23-.044.32.017.078.054.138.157.156.267.008.05.008.08 0 .146-.016.13-.052.227-.135.365l-.018.03.02-.024c.053-.06.14-.25.14-.304 0-.014.005-.02.02-.02-.01-.008-.012-.014-.007-.04.003-.017.005-.042.005-.057 0-.024.003-.027.03-.03s.03-.002.032.022.003.02.005-.008l.001-.034-.036.002c-.034.002-.034.001-.006-.004.034-.007.04-.02.025-.075-.047-.185-.227-.34-.4-.345h-.03L2 1.174c.117-.034.31.09.386.244.047.098.06.162.06.29-.001.095-.022.275-.042.345-.004.015-.002.02.01.02.018 0 .065-.027.093-.052.014-.013.02-.014.02-.005.001.024.024-.03.025-.057 0-.015.012-.05.026-.08.032-.064.032-.063.044-.047.005.007.016.016.025.02-.001-.025 0-.036.013-.06.016-.032.016-.032.025-.014s.01.018.01-.004c0-.012.003-.03.006-.038-.02.02-.02-.01-.005-.06.033-.11.044-.206.044-.377l-.008-.19c-.004-.018-.007.04-.006.155l.001.183-.007-.183c-.006-.147-.01-.186-.02-.197s-.013-.024-.012-.035c.008.005.018.01.044.01a.24.24 0 0 1 .068.013c.018.007.04.013.048.013.02 0 .1.074.134.123.015.02.046.076.07.122.05.1.058.1.01.002-.09-.185-.19-.29-.284-.29-.022 0-.022-.003-.004-.032.014-.022.014-.022-.002-.01s-.063.012-.062-.004c0-.005.008-.025.017-.043s.014-.026.01-.017c-.015.05-.01.043.03-.027l.06-.102c.02-.03.022-.04.003-.025-.014.01-.002-.005.093-.124.044-.055.067-.078.05-.05-.04.064-.073.105-.08.1 0 .01-.013.037-.033.066a1.18 1.18 0 0 0-.116.223c0 .007.025-.015.056-.05A1.37 1.37 0 0 1 3 .735c.054-.04.068-.044.06-.02-.004.015 0 .017.032.017.06 0 .124.03.184.086.05.048.137.164.137.185 0 .005-.015-.013-.033-.04a.53.53 0 0 0-.059-.075L3.297.863l.007.062a3.58 3.58 0 0 1-.009.548 2.5 2.5 0 0 1-.067.326l-.01.025-.006-.033c-.006-.03-.058-.22-.068-.247-.003-.007-.013.02-.024.063-.055.212-.173.447-.296.588l-.053.067c-.008.012-.015.018-.015.013 0-.015-.075-.094-.102-.108s-.028-.01-.08.01a.38.38 0 0 0-.23.179.68.68 0 0 1-.177.172c-.026.017-.048.035-.048.04 0 .01.01.008.028-.005.01-.007.02-.01.023-.008.02-.006.022 0 .02.005.026-.001.027.001.024.02s-.004.023.017.01c.038-.025.123-.004.123.03-.04-.028-.046-.022-.043.023.002.023 0 .04-.004.04s-.024.016-.044.037-.04.04-.044.04.02-.044.045-.068c.008-.008.017-.026.02-.04s.008-.024.013-.015c.007-.018-.002-.03-.02-.037-.012-.004-.015-.001-.015.02 0 .03-.007.03-.036.008-.04-.03-.074-.017-.1.036l-.017.035.004-.03c.003-.026.002-.03-.01-.027s-.025.013-.038.024c-.03.026-.066.026-.09 0-.017-.02-.017-.02-.05-.005a.35.35 0 0 1-.056.021.37.37 0 0 0-.066.029l-.132.07-.09.048.025.025c.014.014.03.023.035.02-.003.014.09.07.164.1s.17.055.242.06c.036.003.058.008.05.01a.39.39 0 0 1-.079-.002zm-.744-.157a1.3 1.3 0 0 0 .16-.066c.082-.042.224-.13.224-.14 0-.003-.01.001-.022.01-.138.09-.352.18-.505.21l-.075.018c-.002.002.028.002.067-.001.045-.003.1-.014.15-.03zm-.09-.014a1.05 1.05 0 0 0 .188-.07l.028-.015-.112-.047-.14-.055c-.09-.027-.153-.018-.198.028-.023.023-.028.034-.028.065 0 .043.022.077.062.095s.138.015.2-.001zm.424-.016zm.117-.167zm.146-.08c.005-.005-.005-.001-.022.01-.036.02-.053.023-.046.005-.022.002-.04.004-.05.002s-.023 0-.028.006 0 .01.018.01.027.005.028.01c-.02-.006-.02-.002-.017.002s-.002.014-.01.02.015-.003.05-.022.07-.038.075-.043zm-.167.043c-.028.013-.038.02-.038.023s.032-.013.038-.023zm.33-.024c0-.012-.004-.01-.022.01s-.016.018.003.008c.01-.005.02-.014.02-.018zm-.222-.036c.01-.007.013-.017.01-.025-.008-.02-.018-.017-.028.01a.01.01 0 0 0 .018.014zm.084.003zm.04-.03c-.01.003-.018.01-.018.01 0 .007.007.002.018-.01zm-.11-.03zm.242-.13c.03-.057.037-.096.027-.13-.006-.022-.008-.018-.012.03a.33.33 0 0 1-.077.178c-.016.02-.03.04-.03.044 0 .014.07-.08.092-.12zm-.25.114c0-.002-.008-.01-.02-.02l-.02-.016.016.02c.015.018.022.023.022.016zm.402-.083l.023-.03-.026-.027-.058-.065c-.018-.02-.03-.03-.028-.023a.88.88 0 0 1 .01.088c.003.04.01.082.012.09s.002.022-.007.033.001.004.02-.01a.31.31 0 0 0 .056-.056zm-.457.045c-.025-.02-.033-.014-.025-.001s.02.012.025.001zm-.385-.42c.003-.055.002-.07-.003-.05-.01.036-.026.21-.024.255s.02-.105.027-.205zm.92.226c-.018-.008-.02-.005-.017 0 .018.008.02.005.017 0zm.03-.068c.015-.05.016-.06.007-.067-.017-.01-.03-.008-.015.003s.012.01-.002.024c-.023.023-.032.1-.012.1.002 0 .012-.027.022-.06zm-.202.03zm.602-.213c-.005-.037-.012-.066-.014-.064s.001.035.006.072.012.066.014.064-.001-.034-.006-.072zM1.48 1.994c-.002-.02-.003-.006-.003.03s.001.053.003.036.002-.047 0-.067zm1.163-.038c-.002-.017-.003-.003-.003.03s.002.05.003.03.002-.045 0-.063zm-1.206-.002zm1.162-.062c.024-.05.013-.06-.012-.013-.013.025-.024.05-.025.053-.001.014.023-.013.036-.04zM1.4 1.8c-.016-.013-.017-.012-.013-.006zm-.025-.034zm.48-.092c-.01-.007-.02-.024-.02-.04l-.003-.027-.001.03c-.001.03.01.05.03.05zm.023-.024zm-.594-.076zm-.008-.025zm.423-.048l.028-.027-.018-.03-.018-.03.02.005c.018.005.02.003.017-.062l-.001-.067-.02.028a.33.33 0 0 0-.046.162c0 .024.002.044.005.044s.018-.012.033-.027zm.012-.028zm0-.146zm-.446.178zm-.008-.038zm1.868-.028zm-.01-.026zm-1.865-.008zm1.508.001zM1.76 1.34c-.01-.01-.013.026-.003.05.01-.028.008-.045.003-.05zm1.346.057zM1.09 1.314zm.074-.165c-.01-.015-.053-.06-.094-.102C.996.973.996.972 1.057 1.038l.09.102c.034.042.043.047.016.008zm-.86-.01zm.652-.026C.906 1.08.728.99.723.995s0 .012.003.024.012.022.036.027a1.07 1.07 0 0 1 .198.081c.046.028.043.015-.004-.015zM.54 1.037c.032-.008.056-.016.054-.018C.58 1.008.36 1.08.35 1.1c-.002.003.027-.006.064-.02s.094-.034.126-.042zM2.993.79c.03-.017.044-.03.047-.045s.002-.02-.002-.02a.77.77 0 0 0-.16.136c-.005.01.007.004.032-.015s.06-.042.083-.055zm.27.025C3.226.78 3.17.75 3.147.75c-.007 0 .012.013.042.03a.56.56 0 0 1 .079.049c.04.034.037.024-.004-.013zM2.867.727c.008-.012.01-.02.005-.016S2.843.75 2.85.75s.01-.01.018-.022zm-.75 2.31zm.045-.001zm-.48-.14zm-.025-.017zm-.033-.017zm.694-.056c0-.006.006-.022.013-.035s.013-.032.013-.042c.01.006-.008.077-.02.083zm-.058-.008c-.001-.01.028-.06.042-.075.008-.008.018-.028.02-.045.006-.033.02-.04.02-.01-.001.024-.014.09-.015.074-.001-.006-.016.005-.034.025s-.033.034-.033.032zm.034-.088zm-.946-.008zm1.004 0zm-1.054-.025c-.02-.01-.035-.02-.03-.02a.25.25 0 0 1 .073.037c0 .006 0 .006-.042-.017zM1.21 2.64c-.018-.01-.024-.014-.013-.01.024.006.067.028.054.027-.005 0-.023-.008-.042-.016zm-.075-.024c.003-.007.016-.004.025 0-.003.007-.016.004-.025 0zm.485-.008zM1.087 2.6c.006-.002.015-.002.02 0-.022.004-.027.002-.02 0zm.5-.045zm-.012-.033zm.06.004zm.062-.474zM.67 2.05zm.954-.045c-.03-.022-.063-.05-.075-.063s-.028-.022-.038-.022c.006-.014.018-.008.046.018a1.29 1.29 0 0 0 .081.068c.038.03.05.04.042.04a1.01 1.01 0 0 1-.056-.041zm-.945.007zm.01-.03zm.82-.115l-.02-.026.024.023c.013.013.022.024.02.026s-.013-.008-.024-.023zm.392-.003c0-.003.007-.01.016-.016s.018-.008.026.002c.002.02 0 .02 0 .013-.035.01-.042.01-.042.001zm.067-.007c0-.013.02-.037.03-.037.016 0 .016.012-.001.03s-.03.018-.03.008zm.054-.03zm-.076-.04l-.015-.023.02.013c.02.014.032.033.018.033-.004 0-.015-.01-.023-.023zm-.062.002zm.125-.02l-.02-.023.025.02.03.023c-.01.002-.022-.008-.033-.02zm-.602.002zm.57-.12zm.703-.004zm-.71-.017zm.72-.013zm-.728-.004zM1.9 1.54c-.033-.036-.043-.05-.025-.036.033.027.096.1.082.097-.001 0-.027-.028-.056-.06zm.795.044zm.01-.047zm.01-.066c0-.018.002-.025.004-.015s.002.025 0 .033zm-.885.003zm-.037-.21c0-.002.007-.008.015-.015-.008.017-.015.022-.015.015zm-1.59-.06c.01-.012.022-.02.024-.02s-.005.01-.015.02-.022.02-.024.02.005-.01.015-.02zm.042-.027c0-.005.007-.014.015-.02-.005.014-.01.024-.012.025zm1.69-.023c.006-.007.014-.013.018-.013.007.02 0 .025-.01.025zm.046.004c.017-.008.02-.005.02 0-.02.008-.024.005-.02 0zm.857-.105zM2.745.89c0-.008.034-.065.04-.065s-.002.01-.01.023c-.017.03-.03.05-.03.042zM2.79.808zm.017-.025z" fill="#9da4a8"/><path d="M.985 2.97C.94 2.96.9 2.942.908 2.935s.016.002.03.01.043.016.064.02.04.008.042.012c.006.01-.007.008-.06-.005zm.073.002c-.01-.012-.008-.013.11-.018.014-.001.027-.003.03-.005a.42.42 0 0 1 .132-.036c.003-.01.103-.06.123-.06l.06-.033c.032-.016.048-.02.06-.014s-.005.017-.084.055l-.12.052c-.012.003-.026.008-.03.012-.018.013-.108.042-.118.038a.24.24 0 0 1-.083.017c-.053.004-.07.003-.077-.007zm-.194-.07C.85 2.887.838 2.87.838 2.868c.01.007.024.023.037.038s.022.027.02.027-.017-.013-.03-.03zm-.034-.05zM.82 2.828zm.552-.02a2.62 2.62 0 0 1 .184-.093c.002 0 .012-.003.02-.008l.017-.008-.017.014a1.58 1.58 0 0 1-.209.104zm.21-.008c-.014-.01-.016-.007.045-.04.04-.022.052-.026.067-.02s.012.01-.04.038c-.04.02-.063.027-.07.023zm.123-.068c-.014-.008-.01-.012.033-.04s.05-.03.074-.02l.025.012-.054.028c-.062.032-.058.03-.078.02zM1.6 2.694zm-.645-.01C.948 2.68.94 2.675.937 2.67s-.01-.006-.023.001c-.024.015-.03.013-.014-.005.045-.05.163-.055.27-.013.033.013.06.026.06.03s-.065-.007-.086-.018c-.015.002-.037.004-.064.002-.032-.002-.05-.006-.047-.013-.008.01-.067.033-.08.03zm.92-.013a2.79 2.79 0 0 1 .1-.056c.11-.06.156-.09.21-.137.035-.03.036-.03.01-.004-.015.016-.027.034-.027.04-.02.01-.025.013-.025.016s-.02.02-.044.035c-.032.02-.047.036-.053.057s-.007.03.003.033c.02.008.003.02-.03.02-.023 0-.036-.005-.045-.017l-.012-.017-.04.017c-.038.017-.053.02-.045.014zm.15-.03c.01-.01.017-.022.017-.03s-.005-.01-.033.004-.04.025-.028.036.028.006.045-.01zm.21-.02c.007-.022.01-.02.006-.017.008.024.01.03.008.03zM2.11 2.62zm-.38-.017c-.016-.016-.017-.038-.003-.035.006.001.012-.007.013-.02s.007-.026.012-.03.006-.016.004-.023c-.006-.016.014-.017.028-.001-.04.028-.04.094-.008.11l.02.01H1.77c-.015 0-.033-.006-.04-.013zm.55-.018c.008-.002.02-.002.025 0-.03.004-.033.002-.025 0zm-.388-.016c.01-.008.025-.027.032-.043.01-.026.01-.03-.002-.044-.008-.01-.02-.013-.027-.01s-.018-.002-.025-.01c.002.04-.008.035-.02-.001-.005-.017-.02-.045-.03-.063-.022-.034-.018-.036.03-.022.022.007.036.018.047.04s.027.045.04.063c.023.032.025.033.036.017.007-.01.016-.024.02-.033a.05.05 0 0 1-.067-.025.54.54 0 0 0-.092-.126c-.003.003.002.012.01.02.014.015.013.016-.026.02s-.043.001-.073-.025a.61.61 0 0 0-.203-.098c-.043-.007-.043-.01-.05-.158l-.005-.117.04.036c.074.068.253.17.32.183.032.006.037.02.007.02-.01 0-.023.004-.026.008s.005.008.02.008a.35.35 0 0 1 .156.063c.053.037.068.037.024 0-.02-.017-.028-.03-.02-.03s-.007-.008-.032-.018-.043-.018-.04-.02.036.002.077.01a.35.35 0 0 0 .081.008c-.015.013-.018.025-.018.07a.16.16 0 0 1-.017.086c-.01.016-.014.022-.01.013l.013-.042c.006-.022.006-.023-.004-.01-.006.008-.014.015-.016.015-.026-.003-.04.001-.034.01S2 2.355 1.987 2.34a.59.59 0 0 0-.107-.11c-.01-.006-.007.002.012.02l.03.03h-.1l.046.015c.07.023.097.04.126.08.017.024.03.037.038.034s.01.001-.002.022c-.017.033-.13.148-.146.148zm-.024-.057zm.087-.03zm-.437-.043c.013-.02.042-.03.09-.036.02-.002.025-.001.017.005s-.018.006-.026.003-.02.002-.027.01-.017.01-.022.008-.013.003-.02.012-.014.017-.018.017zm.165.014zm-.017-.027c0-.01-.005-.02-.01-.022.016-.006.03.02.02.03zm.594-.04c0-.007.06-.106.068-.11.013-.008-.016.053-.04.085s-.03.034-.03.026zm-.25-.01zm-.73-.037C1.06 2.21.835 2.026.752 1.906L.73 1.873l.016-.047c.027-.078.08-.186.13-.263.078-.12.163-.192.266-.23.037-.013.044-.014.056-.003s.017.012.022.012.01.028.014.062c.01.124.063.268.134.375.034.05.035.063.018.13-.02.077-.03.164-.04.317l-.01.144zm1.048.02zm-.967-.075c.01-.133.047-.284.08-.323.015-.02.016-.02.02.05.003.04.012.1.02.14l.015.068-.038.03c-.02.017-.053.048-.07.07l-.033.04zm.978.05a.47.47 0 0 0 .009-.056c.003-.03.002-.04-.006-.035.01-.012.02-.028.024-.042s.02-.03.053-.048a.22.22 0 0 0 .113-.112.79.79 0 0 1 .049-.086l.03-.043.01.037c.005.02.01.067.01.104s.003.07.007.07a.75.75 0 0 0 .011-.223c-.007-.053-.001-.062.016-.023.012.03.025.033.026.006.001-.01.004.002.01.027s.006.05.004.054c-.005-.036-.022-.068-.02-.046 0 .007.006.028.013.046a1.55 1.55 0 0 1 .037.159c.024.124.024.125.02.054-.002-.04-.014-.13-.026-.2-.027-.16-.027-.21 0-.31.038-.145.048-.37.023-.548-.006-.042-.005-.05.008-.065s.016-.015.066.007c.106.048.212.193.298.408l.02.048-.02.073a1.75 1.75 0 0 1-.175.426c-.048.08-.16.227-.178.234-.008.003-.024-.007-.043-.03a.38.38 0 0 0-.059-.054l-.03-.02-.06.023a.48.48 0 0 0-.159.085c-.017.015-.032.026-.034.024.014-.007.007.008-.02.04-.016.02-.024.024-.02.014zm.06-.12c.03-.038.03-.04.004-.015s-.048.054-.04.054c.002 0 .018-.018.035-.04zM.61 2.314C.438 1.91.36 1.595.34 1.236l-.005-.103.045-.02a.53.53 0 0 1 .254-.049c.084.001.113.004.176.023a1.01 1.01 0 0 1 .275.131c.106.068.108.072.05.078-.16.016-.286.164-.396.462a1.79 1.79 0 0 0-.117.486c-.004.045-.01.077-.012.07zm1.716-.054zm-.19-.17zm.248-.02zm-.215-.03zm.224-.008zm-1.004-.02zm.827-.008c-.002-.006.003-.02.012-.027s.014-.02.012-.026.003-.016.012-.024c.02-.02.02-.01-.01.043-.013.025-.025.04-.027.034zm.187-.033zm.01-.046c.002.02 0 .014 0 0zm-.61-.023c-.006-.006-.01-.027-.01-.048 0-.028.002-.035.008-.026.01-.012.042.064.042.077s-.03.007-.04-.004zm.463-.007zm.156-.017c0-.012.003-.036.006-.054s.007-.026.007-.013-.003.036-.006.054-.007.026-.007.013zm.208 0zm-.715-.025c.018-.008.02-.005.017 0-.018.008-.02.005-.017 0zm-.17-.08c-.02-.018-.02-.02-.001-.014.01.003.02.01.023.016.007.02 0 .018-.02-.003zm1.477.005l-.023-.105a1.76 1.76 0 0 0-.138-.385c-.09-.18-.156-.255-.248-.276l-.043-.01L2.83.94c.072-.072.12-.108.185-.133.08-.03.192-.016.26.037.023.018.034.124.034.315 0 .11-.005.21-.014.28-.013.103-.046.28-.062.335l-.007.025zm-1.512-.03zm.19-.052c-.01-.008-.028-.02-.037-.024s-.018-.02-.02-.036c-.003-.025.01-.036.02-.018-.01.008-.013.016-.013.026s.004.017.016.013.018.001.02.01.015.02.027.028.02.014.014.015-.018-.006-.03-.014zm-.15-.12c.004-.008.01-.02.01-.03v-.023l.01.024c.01.027.001.042-.018.03zm-.87-.063zm.02-.03zm.072-.077c.057-.056.108-.087.158-.095.024-.004.02-.002-.013.01-.054.02-.105.052-.158.1-.025.023-.02.016.013-.016zm.786.018zm-.024-.052c.001-.05.001-.05.008-.02.01.046.01.07-.001.07-.005 0-.008-.022-.007-.052zm-.484.006c0-.018.002-.025.004-.015s.002.025 0 .033zm-.01-.042zm.017-.008zm.57-.017c.01-.012.022-.02.024-.02s-.005.01-.015.02-.022.02-.024.02.005-.01.015-.02zM1.75 1.29c0-.017.004-.03.008-.03s.014-.013.02-.03.014-.03.017-.03c-.01.023.01.017.024 0 .008-.01.02-.017.023-.017s-.01.016-.03.036-.044.05-.05.07l-.012.033v-.03zm.108-.002zm.184-.014a.41.41 0 0 0-.092-.004l-.054.004.042-.012c.046-.013.113-.016.113-.005 0 .004.01.01.023.016.028.01.018.012-.03.001zm-.87-.028zm.018-.02c.015-.006.017-.01.013-.024-.006-.024.007-.01.014.013s-.014.032-.027.01zm-.048-.001zm-.043-.03l-.023-.022.027.02c.015.01.027.02.027.022 0 .007-.01.001-.03-.02zm.056-.02c-.01-.014-.016-.025-.014-.025s.012.01.022.025.016.025.014.025-.012-.01-.022-.025zm.98.02zm-1.076-.03zm.12-.005c.017.008.022.015.015.015-.002 0-.008-.007-.015-.015zm.7.006c.003-.005.012-.008.02-.008-.015.02-.026.02-.02.008zm-.85-.017c.02.01.016.01 0 0zM1 1.133zm.117-.01l-.016-.02.02.016c.018.015.023.022.016.022-.002 0-.01-.008-.02-.02zm.033 0l-.016-.02.02.016c.018.015.023.022.016.022-.002 0-.01-.008-.02-.02zm-.176-.008zm-.02-.01zm.117-.036l-.03-.03.03.03c.03.027.035.034.03.034a.3.3 0 0 1-.031-.031zm.025-.008l-.02-.023.023.02c.02.02.027.026.02.026s-.012-.01-.023-.023zM.53 1.045zm.04-.007zm.095-.01zm.022-.007zm2.38-.265z" fill="#313845"/><path d="M1.4 2.795c.007-.007.083-.038.083-.033s-.017.012-.038.02c-.037.016-.052.02-.044.013zm.426-.11zM2 2.665c-.02-.006-.02-.007-.003-.008.01-.001.02-.005.024-.01.028.027.02.03-.02.018zm.025-.004zm-.884-.01zm.775.001zm-.803-.008zm.82 0zm-.968-.01zm.12 0zM1 2.625c.008-.002.02-.002.025 0-.03.004-.033.002-.025 0zm.05 0zm.926-.007zm.26 0zm-.496-.015c-.01-.007-.012-.014-.006-.023.017.01.027.02.037.025-.01.008-.023.003-.03-.002zm.003-.01zm.25.017zm-.25-.075zm.014-.02c.007-.01.008-.015.001-.023.026-.01.027.002.007.02zm.186-.013zM2 2.46zm-.485-.02c0-.004.008-.013.02-.018.02-.01.02-.01.003.008s-.022.022-.022.01zm.15-.004zm.35-.006c0-.005-.007-.018-.015-.027.02.014.03.026.026.03zm-.46-.01zm.045-.01zm.064.001zm-.402-.083C1.05 2.197.86 2.042.77 1.922c-.033-.044-.033-.045-.023-.08a1.24 1.24 0 0 1 .159-.316c.01-.01.003.004-.016.033-.023.036-.032.06-.03.07.014.05.164.144.26.164a.89.89 0 0 0 .22-.001c.006-.002.02.01.03.025s.02.025.02.02-.012-.024-.026-.045c-.028-.04-.075-.13-.075-.14 0-.004.015.022.034.056l.054.09c.02.028.024.043.014.078l-.006.02-.007-.02c-.001.02-.004.063-.01.1-.01.058-.025.218-.03.352l-.002.04zm.073-.182zm.017-.16zm.008-.042zm-.55-.228zM.82 1.7zm.008-.017zm.025-.05c-.02.017-.025.028-.025.032.02-.017.025-.028.025-.032zm1.12.736zm-.614-.082c.007-.077.036-.22.05-.253.01-.024.01-.018-.001.03.008.001.017-.002.025.001s.014 0 .014-.018.01.02.02.072l.02.095-.134.133zm.093-.204zm.287.234c-.043-.035-.138-.08-.194-.095l-.04-.01-.006-.045C1.5 2.142 1.5 2.117 1.5 2.11s.007.013.01.043.008.045.01.033.01-.024.037-.032a.3.3 0 0 0 .066-.031l.03-.02.036.017c.04.02.036.016-.057-.043l-.062-.044c0-.002.025.012.056.032a.89.89 0 0 0 .192.097c.035.01.04.025.01.025-.023 0-.02.01.007.027.013.008.036.025.052.038l.03.024-.046-.003c-.025-.002-.05 0-.058.005s-.01.01.005.028c.03.032.028.036-.008.038-.03.001-.04-.004-.072-.028zM.597 2.274l-.152-.427c-.06-.214-.1-.46-.1-.633V1.13l.05-.02a.85.85 0 0 1 .098-.031.95.95 0 0 1 .25-.004c.014.003-.024.005-.084.004s-.077 0-.04.002c.057.003.068.005.056.013-.02.014-.038.113-.04.195a.61.61 0 0 0 .099.323c.016.023.023.04.018.048s-.01.022-.012.033.015-.02.04-.073l.05-.094a.64.64 0 0 1-.038.09c-.088.186-.16.45-.172.622l-.006.083zM.62 2.16zm.025-.142zm.008-.025zm.014-.077zm.008-.025zm.008-.025zm.01-.024zm.006-.026zM.71 1.79zm.008-.025zm.02-.04c-.013.01-.016.02-.016.025.013-.01.016-.02.016-.025zM.36 1.138zm.156-.052zM2.07 2.31zm.69-.106l-.03-.217c-.03-.196-.03-.214-.008-.293.026-.092.035-.157.04-.3.006-.128.006-.13.007-.038a1.64 1.64 0 0 1-.019.264l-.005.038.01-.042c.006-.023.012-.037.012-.03.002.024.122.004.208-.035.024-.01.06-.03.08-.046.026-.018.04-.022.04-.015.005-.007.001-.02-.004-.028s-.007-.02-.005-.02.012.017.022.043l.018.047-.017.066c-.057.222-.18.466-.308.612l-.042.048-.006-.052zm-.04-.434zm0-.03zm.027-.07c0-.007-.005.001-.012.017-.015.038-.014.053 0 .02.006-.014.01-.03.01-.038zm.37-.125c-.01.022-.005.02 0 0zm-.003-.03zm-.42.68l-.048-.048.005-.134c.006-.15.005-.15.048.005.017.06.05.226.043.226s-.023-.022-.05-.048zm-.026-.25c-.004.04-.002.048 0 .038s.002-.027 0-.038zm-.212.258c.044-.042.046-.052.008-.038l-.024.01.02-.02.05-.04c.016-.012.026-.025.023-.028-.024.01-.017-.01-.001-.04s.033-.057.038-.06c-.025.043-.022.054.01.07.026.012.03.018.03.048.001.02.004.01.007-.03l.005-.063.003.142-.035.01a.98.98 0 0 0-.098.041l-.072.034c-.005.002.01-.014.032-.035zm.164-.06zm-.07-.1c-.015.022-.014.023-.006.015zm-.676.176zm-.382-.18c0-.035.002-.05.003-.03s.002.045 0 .063-.003.003-.003-.03zm.05-.027l-.016-.02.02.016c.018.015.023.022.016.022-.002 0-.01-.008-.02-.02zm1.034-.044zm-1.133-.013zm.046.004zm1.113-.03zm-.788-.022c-.015-.004-.03-.04-.02-.05.005.034.02.045.03.03.018.026.015.027-.01.02zm.02-.007zm-.017-.033zm1.394-.153a2.11 2.11 0 0 0-.179-.487c-.016-.03-.026-.05-.02-.046s.024.037.043.07c.032.06.05.08.02.024-.012-.023-.012-.026.004-.046.05-.064.074-.217.047-.31a.57.57 0 0 0-.03-.081L3.08.81l.027-.004c-.045.001-.074.004-.082.007.03-.025.144-.02.19.002.07.036.073.038.084.135a2.66 2.66 0 0 1-.053.755l-.02.082-.015-.073zm-.056-.25zm-.025-.067zm-.008-.017zm-.01-.026zm-.006-.015zm-.008-.017zm.1-.502zm-.02-.01zm-1.3.868zm-.03-.018zm-.567-.03c-.008-.02-.006-.026.004-.01.003.02-.001.017-.004.01zm.564 0zm.008-.017zm-.586-.02zm-.008-.025zm-.008-.03zm-.396-.046c.008-.014.02-.03.027-.036s.001.006-.012.026c-.027.04-.038.048-.015.01zm.388.012zm-.277-.05l.05-.046c.002 0-.016.02-.04.046l-.05.046c-.002 0 .016-.02.04-.046zm.27.004zm-.344-.02c0-.002.007-.008.015-.015-.008.017-.015.022-.015.015zm2.192-.018zm-1.347-.008zm1.338-.017zm-.008-.017zm-1.815-.02zm.486-.005zm1.32.01zm-1.832-.008zm1.81-.04zm-.02-.036zm-1.255-.013zm1.246-.004zm-.025-.042zm-1.154-.025zm1.13-.008zm.037-.03zm-.083-.026l-.025-.027.027.025c.025.023.03.03.025.03s-.014-.012-.027-.027zm.067.001zM.905 1.13zM.888 1.12zm-.025-.008zM.817 1.1c.003-.007.016-.004.025 0-.003.007-.016.004-.025 0zm2.112-.023l-.03-.03.03.03.03.03c0 .006-.007 0-.034-.03zm-2.15.01zm2.076.002zm-.084-.084zm.017-.017zM2.884.89c.008-.01.017-.017.02-.017S2.9.882 2.892.89s-.017.017-.02.017.003-.008.01-.017zm.034-.026c.006-.01.08-.053.083-.05s-.017.015-.042.03-.043.023-.04.02z" fill="#1e2531"/></svg> diff --git a/src/common/c-sqlite3.c b/src/common/c-sqlite3.c index 0aeab79..e8e9111 100644 --- a/src/common/c-sqlite3.c +++ b/src/common/c-sqlite3.c @@ -75,6 +75,21 @@ sai_event_db_ensure_open(struct lws_context *cx, lws_dll2_owner_t *sqlite3_cache return 3; } + { + char *err = NULL; + sqlite3_exec(*ppdb, "ALTER TABLE tasks ADD COLUMN task_log_limit integer;", NULL, NULL, &err); + if (err) sqlite3_free(err); + err = NULL; + sqlite3_exec(*ppdb, "ALTER TABLE tasks ADD COLUMN parallel integer;", NULL, NULL, &err); + if (err) sqlite3_free(err); + err = NULL; + sqlite3_exec(*ppdb, "ALTER TABLE tasks ADD COLUMN rebuildable integer;", NULL, NULL, &err); + if (err) sqlite3_free(err); + err = NULL; + sqlite3_exec(*ppdb, "ALTER TABLE tasks ADD COLUMN run integer;", NULL, NULL, &err); + if (err) sqlite3_free(err); + } + sai_sqlite3_statement(*ppdb, "CREATE UNIQUE INDEX IF NOT EXISTS idx_task_uuid ON tasks(uuid, run);", "create task index"); sai_sqlite3_statement(*ppdb, "PRAGMA journal_mode=WAL;", "set WAL"); diff --git a/src/virt/v-ws-server.c b/src/virt/v-ws-server.c index ca184f2..e85d5e3 100644 --- a/src/virt/v-ws-server.c +++ b/src/virt/v-ws-server.c @@ -170,7 +170,13 @@ saiv_try_spawn(void) virt.running_vms++; winner->wait_magnification = 0; - virt.ops->spawn(&virt, vm); + if (virt.ops->spawn(&virt, vm)) { + lwsl_err("%s: Failed to spawn VM %s\n", __func__, vm->name); + lws_dll2_remove(&vm->list); + free(vm); + virt.running_vms--; + break; + } /* Clean up if it never connects and terminates itself */ lws_sul_schedule(virt.context, 0, &vm->sul_timeout, diff --git a/src/web/CMakeLists.txt b/src/web/CMakeLists.txt index d1301a0..703fc0f 100644 --- a/src/web/CMakeLists.txt +++ b/src/web/CMakeLists.txt @@ -133,11 +133,13 @@ add_dependencies(${SUB} sai_git_hash) ../../assets/netbsd-OSX-catalina.svg ../../assets/netbsd-OSX-bigsur.svg ../../assets/rocky9.svg + ../../assets/rocky9-ca.svg ../../assets/sai-event.svg ../../assets/sai-icon.svg ../../assets/sai.svg ../../assets/stop.svg ../../assets/strict-csp.svg + ../../assets/tc-clang.svg ../../assets/tc-gcc.svg ../../assets/tc-llvm.svg ../../assets/tc-mingw32.svg
Page fetched 0s ago, creation time: 26ms (vhost etag hits: 0%, cache hits: 0%)