You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We've been kind of masquerading as a JS project for a while now and while Plenti originally supported NPM, as we've been slowly moving towards a more self-contained approach. Gopack is still going through our dependencies and trying to pull out ESM ready .mjs files and convert paths to something the browser can read. However, adding baseurl support (#68) is difficult because of root relative paths that gopack generates and gopack has file lookup issues in general (#144). We've also been using a slightly modified version of Svelte (#76), so if folks try to modify the version they will run into difficulties. Even if our proposed change was pulled into Svelte, we'd likely still have to update our preprocessing (#138) for each new version to work in v8.
We could pull these dependencies into the ejectable core, which might make referencing things like the Navaid router easier, and also make it clear that the version of Svelte shipped with the current version of Plenti shouldn't be modified. That would allow us to get rid of node_modules, package.json, and package-lock.json. We could also remove the .mjs lookup and copy logic from gopack since the appropriate files would already be included. We would still need a way to resolve imports like import { onMount } from 'svelte'; or import { createEventDispatcher } from 'svelte'; because folks are used to that. Then if people want to extend their project with node_modules, they would be on their own to manage their NPM dependencies and bring their own bundler. It's more manual work for adding dependencies, but I'm not sure how well gopack was working for non-core stuff anyways.
The text was updated successfully, but these errors were encountered:
We've been kind of masquerading as a JS project for a while now and while Plenti originally supported NPM, as we've been slowly moving towards a more self-contained approach. Gopack is still going through our dependencies and trying to pull out ESM ready
.mjs
files and convert paths to something the browser can read. However, adding baseurl support (#68) is difficult because of root relative paths that gopack generates and gopack has file lookup issues in general (#144). We've also been using a slightly modified version of Svelte (#76), so if folks try to modify the version they will run into difficulties. Even if our proposed change was pulled into Svelte, we'd likely still have to update our preprocessing (#138) for each new version to work in v8.We could pull these dependencies into the ejectable core, which might make referencing things like the Navaid router easier, and also make it clear that the version of Svelte shipped with the current version of Plenti shouldn't be modified. That would allow us to get rid of
node_modules
,package.json
, andpackage-lock.json
. We could also remove the.mjs
lookup and copy logic from gopack since the appropriate files would already be included. We would still need a way to resolve imports likeimport { onMount } from 'svelte';
orimport { createEventDispatcher } from 'svelte';
because folks are used to that. Then if people want to extend their project with node_modules, they would be on their own to manage their NPM dependencies and bring their own bundler. It's more manual work for adding dependencies, but I'm not sure how well gopack was working for non-core stuff anyways.The text was updated successfully, but these errors were encountered: