<div dir="ltr">I second what Fred wrote here. In a couple of cases, for me, it helped to switch from webpacker to jsbundling-rails, cssbundling-rails, and esbuild. You can do that if you are on rails >= 6.0. After that, and when you upgrade to 7.0, you can switch to propshaft. Each case is different, so I would have to see what you have in the code to help you. If you are still having issues, feel free to contact me.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, May 26, 2023 at 4:38 AM Frederick Cheung <<a href="mailto:frederick.cheung@gmail.com">frederick.cheung@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hi,<br><br><div dir="ltr"><blockquote type="cite">On 23 May 2023, at 17:35, Ed James <<a href="mailto:ed.james.spam@gmail.com" target="_blank">ed.james.spam@gmail.com</a>> wrote:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><div>We now have a build which consistently fails when compiling assets because of a RAM overflow i.e. we are suddenly exceeding our CircleCI RAM limit, which is 16GB!</div><div><br></div></div></blockquote><div><br></div><div>Does your assets have any js (or ts) .erb files? An app I used to work on had quite a lot of these (we used them to interpolate settings, I18n etc into the front end). Webpacker has to spawn a rails process for those and it will spawn many in parallel if you have lots of these files. Other than that the way we really got our asset compilation under control was switching to esbuild (via jsbundling). As Martin notes you can’t do some of the cleverer stuff this way (HMR, some of the dynamic chunking I think) but if you’re not very front end focussed you probably weren’t using them anyway!</div><br><blockquote type="cite"><div dir="ltr"><div>We’ve run out of experiments and seems to have exhausted all avenues for fixing this. We are primarily a back-end team so we have no specialist webpacker/asset-pipeline knowledge in the team.</div><div><br></div><div>If anyone is willing to have a brief chat to run through any other potential gotchas/options, I would greatly appreciate it.</div><div><br></div><div>I did find this article particularly interesting, but our lack of asset-pipeline knowledge limit us from progressing down this route (which seems promising): <a href="https://rossta.net/blog/overpacking-a-common-webpacker-mistake.html" target="_blank">https://rossta.net/blog/overpacking-a-common-webpacker-mistake.html</a></div></div></blockquote><div dir="ltr"><br></div><div dir="ltr">Yes, this is easy enough to do by accident. The short version is that if all (or lots of your js) is in app/JavaScript/packs you’re probably guilty of that. The file(s) in there should be few and mostly just importing all of your code and bootstrapping your frontend code.</div><div dir="ltr"><br></div><div dir="ltr">Not a frontend expert by any stretch of the imagination but happy to have a chat.</div><div dir="ltr"><br></div><div dir="ltr">Fred</div><br><blockquote type="cite"><div dir="ltr"><div><br></div><div>Thanks!<br><div>
<br>
<hr style="display:block;height:1px;border-width:1px 0px 0px;border-right-style:initial;border-bottom-style:initial;border-left-style:initial;border-right-color:initial;border-bottom-color:initial;border-left-color:initial;border-top-style:dotted;border-top-color:rgb(204,204,204);margin:5px 0px;padding:0px">
<br>
<table border="0" cellpadding="0" width="100%">
  <tbody>
    <tr>
      <td valign="top" width="70">
        <img height="60" src="http://ej-public.s3.amazonaws.com/images/rubbish.png" style="margin: 8px 8px 0px 0px;">
      </td>
      <td style="font-family:"Lucida Grande",sans-serif">
          <span style="font-weight:bold;color:rgb(51,51,51);font-size:18px;line-height:30px">Ed James</span>
          <br>
          <span style="font-weight:normal;color:rgb(153,153,153);font-size:12px;line-height:16px">
              <a href="mailto:ed.james.spam@gmail.com" style="color:rgb(153,153,153);text-decoration:none" target="_blank">I will respect your spam</a>
          </span>
      </td>
    </tr>
  </tbody>
</table>

</div>
<br></div><span>_______________________________________________</span><br><span>Chat mailing list</span><br><span><a href="mailto:Chat@lists.lrug.org" target="_blank">Chat@lists.lrug.org</a></span><br><span>Archives: <a href="http://lists.lrug.org/pipermail/chat-lrug.org" target="_blank">http://lists.lrug.org/pipermail/chat-lrug.org</a></span><br><span>Manage your subscription: <a href="http://lists.lrug.org/options.cgi/chat-lrug.org" target="_blank">http://lists.lrug.org/options.cgi/chat-lrug.org</a></span><br><span>List info: <a href="http://lists.lrug.org/listinfo.cgi/chat-lrug.org" target="_blank">http://lists.lrug.org/listinfo.cgi/chat-lrug.org</a></span><br></div></blockquote></div></div></div></div>_______________________________________________<br>
Chat mailing list<br>
<a href="mailto:Chat@lists.lrug.org" target="_blank">Chat@lists.lrug.org</a><br>
Archives: <a href="http://lists.lrug.org/pipermail/chat-lrug.org" rel="noreferrer" target="_blank">http://lists.lrug.org/pipermail/chat-lrug.org</a><br>
Manage your subscription: <a href="http://lists.lrug.org/options.cgi/chat-lrug.org" rel="noreferrer" target="_blank">http://lists.lrug.org/options.cgi/chat-lrug.org</a><br>
List info: <a href="http://lists.lrug.org/listinfo.cgi/chat-lrug.org" rel="noreferrer" target="_blank">http://lists.lrug.org/listinfo.cgi/chat-lrug.org</a><br>
</blockquote></div>