sveltejs / svelte-loader

Webpack loader for svelte components.
MIT License
594 stars 73 forks source link

Is the svelte-loader abandoned on npm? #185

Closed non25 closed 3 years ago

non25 commented 3 years ago

Hi fellas,

The bug with HMR on Webpack 4, introduced in svelte-hmr (0.12.4) was fixed a month ago by @halfnelson.

And I am done waiting for a svelte-loader release from the svelte core team, here's why:

Webpack 4 is still used by a lot of people

For big projects there's almost a guarantee that Webpack would be their bundler of choice. Nobody will transfer any project of that size to Rollup, Vite or SvelteKit to try out Svelte with their codebase.

Supporting svelte on webpack are core team's lowest priority

Here's a quote from core team member @antony:

Since Svelte's inception we have always encouraged people to use Rollup, and since Svelte Kit we are primarily focussed on esm-based unbundled development. Webpack 5 is out and we provide support for it purely from a community driven standpoint, so supporting an obsolete version of Webpack, a bundler we've never particularly wanted to support, is fairly far down the list. However, we will cut a new release when time allows.

You can read whole conversation in svelte's discord.

Thanks to @benmccann there was substantial improvement with merging process, but that is not enough on its own, because releases are postponed for some reason. And 22k users are installing svelte-loader from npm weekly.

There's no evidence of a QA process, but delays are obvious

Some people imply that there's a reason the release is postponed.

@antony says that

Conduitry generally handles releases as he has the all-seeing-eye when it comes to quality.

thus he is the only member of the core team who has the button to release svelte-loader on npm currently.

But I tend to disagree because core team won't install two webpack versions, make their own testbench, test every option and its effect, and only then release. Also svelte-loader codebase is really small.

Solution?

As a workaround, I've made user-scoped release, so you can leave your config intact and just replace the package.

npm install @non25/svelte-loader

As a proper solution, I would introduce someone who is trusted and interested in the svelte-loader to the release process, because current situation gives svelte a bad look for the Webpack users.

@Wellington3010 @silverdr @j3rem1e thoughts?

benmccann commented 3 years ago

I would like to thank you for all your contributions to this repo. I know it's frustrating to have bug fixes get in and then not be released. We need to make that process easier. E.g. on SvelteKit I can release with the push of a button. It's a bit harder on this repo, where we haven't invested as much into tooling. It's okay to gently ping once in awhile so that we don't forget, but this isn't something that we've forgotten about. We will get a release out.

This package is not abandoned. The sentiment that's being expressed is that maintainers simply aren't going to cut a release due to noise being made because that's not something we want to encourage. The number of issues that get raised across all the different repos is quite large. We're working on handling them all and investing ever more into triage and maintenance. E.g. we've added several new maintainers in the past months to make it more scalable including one just last week, have setup an OpenCollective to allow the potential for hiring, have spent time improving our GitHub templates, etc. but there's still more demanded than can be accomplished. If we respond to people pinging us directly, it encourages more people to ping us directly and we already have more of that than we can respond to and would like to cut down on the noise and demands. Filing this issue is actually quite counterproductive towards getting something released because we'd like to cut a new release, but also don't want to look like we've responded positively to foot stomping that's gone beyond gentle pinging, so now we're in a catch 22.