<p></p>
<p>js-cookie 3.x has a dependency of nodejs >= 12. However, Ubuntu 20.04 ships with nodejs 10. We generally target the latest Ubuntu LTS, and this is also what we use for CI.</p>
<p>The upgrade to js-cookie 3.x was in <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/openstreetmap/openstreetmap-website/commit/6feb125f4f0393bcfd319c426adb0b5f7e3c1c0f/hovercard" href="https://github.com/openstreetmap/openstreetmap-website/commit/6feb125f4f0393bcfd319c426adb0b5f7e3c1c0f"><tt>6feb125</tt></a> and as far as I'm aware was just for dependabot reasons rather than any required feature or bugfix. <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/openstreetmap/openstreetmap-website/commit/102f3a6668665774f069a8116a251a28c3c5c0cc/hovercard" href="https://github.com/openstreetmap/openstreetmap-website/commit/102f3a6668665774f069a8116a251a28c3c5c0cc"><tt>102f3a6</tt></a> patched bin/yarn to ignore engines, and I can make a PR to the Dockerfile to do the same there.</p>
<p>I just wanted to open this discussion to check if ignoring the engines is the right approach, or if there are other workflows that might break (e.g. for other developers). As far as I can tell, for the js-cookie node module we're just using yarn/nodejs for code distribution and not otherwise using node for anything clever. But we use other node modules where we actually run the code in node (e.g. <code>eslint</code> in development, or <code>terser</code> in production) and where the engine used is more likely to be important. By ignoring the node engines, are we setting ourselves up for a problem later on e.g. when eslint or terser uses features from node 16 or 18 and we don't realise because we've disabled the engine check?</p>
<p>So options include:</p>
<ul>
<li>Pinning js-cookie to 2.x and re-enabling the engine check?</li>
<li>Disabling the engine check in the Docker CI to match what we're doing in bin/yarn?</li>
<li>Re-enabling engine checks when we move to Ubuntu 22.04?</li>
</ul>
<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/issues/3275">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAK2OLJOJADUKOMOM5KUBNTTZ7CV7ANCNFSM5BD5ZU2Q">unsubscribe</a>.<img src="https://github.com/notifications/beacon/AAK2OLL24AQO533V4K4HAGDTZ7CV7A5CNFSM5BD5ZU22YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4OHGX2SQ.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/openstreetmap/openstreetmap-website/issues/3275",
"url": "https://github.com/openstreetmap/openstreetmap-website/issues/3275",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>