-
-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
remove build system #382
Merged
Merged
remove build system #382
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ryanatkn
changed the title
use
use Aug 24, 2023
svelte-kit package
to publish node librariessvelte-package
to publish node libraries
ryanatkn
force-pushed
the
use-sveltekit-package
branch
from
August 24, 2023 01:54
dd7a30e
to
8b6b2ee
Compare
ryanatkn
force-pushed
the
use-sveltekit-package
branch
from
August 31, 2023 19:08
6efb292
to
3cdacd6
Compare
This was referenced Sep 19, 2023
Merged
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
closes #333
closes #329
Removes the build system and modernizes Gro for SvelteKit, Vite, esbuild, and Node 20 - it now uses a combination of the loader API and esbuild directly with custom plugins for other builds. (only the Node server build at the moment)
There are many breaking changes, and luckily Gro has no users besides feltjs yet so I won't spend the substantial time necessary to document all of them. Some main points:
svelte-package
to publish node libraries - https://kit.svelte.dev/docs/packagingsrc/lib/
notsrc/
(when the build system is removed this will probably resolve from the cwd, thensrc/
, thensrc/lib/
)dist
to.gro/dist
to avoid conflicting with thesvelte-package
outputfs
and use all of the synchronousnode:
APIs, copying SvelteKit's homeworkdist/
segmentalias
like our$routes
patternimport.meta.env
in the loader and esbuild pluginsfollowup
nodenext
instead ofbundler
for the tsconfigmoduleResolution
and deleting the related complexity inresolve_specifier
(maybe finally standardize on.ts
extensions?). I like the simple explicit choice of forcing file extension for all imports like ESM requires, but SvelteKit says the tsconfig.jsonmoduleResolution
option"bundler"
is "the best and recommended option", not"nodenext"
which enforces file extensions. On the surface, this seems correct not just to conform to standards and be explicit, but because Gro is not a bundler, it just uses Vite/SvelteKit and esbuild for bundling. We could be more restrictive, and as a user, I may like that explicitness. I'll do this in a followup because things like using.ts
extensions may not work with all tooling.gro deploy --reset
no-install
andinstall
fromgro deploy
and test+documentgro deploy -- gro build --no-install
to support all optionssrc/
get_possible_source_ids
that's only there for tests and the removed fs systemadapt
into plugins so there's just one concept and definition (consider an API that lets the callback add itself to an array)join
moregro_plugin_gen
to be an esbuild plugin, it's currently disabled