-
Notifications
You must be signed in to change notification settings - Fork 22
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
Towards the next version v0.3.0 #12
Comments
You might consider taking a page out of webpack's book, let me explain: A: The webpackER path has a single gem/module that has too many responsibilities. Some of them are handled well, some are broken because JS moves fast (the issue I commented on before this is a good example). B: The webpack path contains many modules (eg: the ecosystem of webpack plugins), they each focus on doing one thing well. This approach, in your context, could include:
It would be nice if, in the future, webpackER could delegate functionality to small, community-driven modules like this. Eg: If an update to the I hope all this makes sense. I haven't gotten a lot of feedback on these ideas, but I have been using them privately in production for over a year now. Let me additionally echo a post I made on the mailing list during webpackER@4 pre-release:
|
Hi, @jakeNiemiec. Thank you for the feedback! I do not intend to inject much dependencies of node tools to WebpackManifest gem, instead it should be as few dependency as possible. This is because, as you mentioned, the js world moves so quickly. It is very difficult for me to trace such changes. I believe those changes should be controlled by users. For example, if you use Vue.js, creating an app using Vue CLI outside of the gem is enough. Other example is, package installation command(npm or yarn) and their arbitrary options should be configurable by users through the configuration system that will be provided by WebpackManifest. Also, a plugin system is a nice idea, I might introduce it in the future, but for now I am not sure that there are such a lot use cases to introduce plugin system. Those advices you presented are very much helpful for me. Thank you! |
Would you require users to install npm/yarn themselves? I know webpackER does this for you.
I don't think I described my idea properly, let me try one more time: Instead of making one gem that has many duties, make many gems that each does one duty well. Some would refer to this as a loosely coupled system. I was trying to relate it to how webpack benefits from having loosely coupled modules in webpack-contrib like If you look at the issue tracker for webpackER, you can see this in action. More than half of the issues on the first page have to do with issues connecting webpackER to other libraries/modules. WebpackER can't keep up, and no non-documentation PRs have been merged in over 45 days. 😞 |
I see. I've checked the issues on the webpacker repo. It should be nice if webpacker could have eco-system like the plugin system you mentioned. Does webpacker have a plan to separate it's features to separate gems in the future? I'll watch the activity of webpacker more than now anyway! |
yes. You mean here https://github.com/rails/webpacker/blob/master/lib/tasks/webpacker/check_yarn.rake |
I don't think so, that's why I try to bring attention to this. Webpacker is the upcoming Rails@6 default replacement for sprockets. I think they are set in their ways, but I still hope it works out. |
I see. Thank you for your all advices! I’ll seriously consider that. |
Renaming has done. v0.3.0 has been released. The gem is now called Minipack. Thank you for your all advices! |
v0.2.x-trunk
I have made
v0.2.x-trunk
from the latest released version v0.2.4. I do not intend to actively maintain v0.2.x anymore, except security fixes or bug fixes.v0.3.0
I am thinking about renaming the project name. Initially the purpose of the gem is integrate with webpack-manifest-plugin, which concept was very simple. After a while I released the gem, I realized that there are some more issues that the gem can solve, such as pre-compilation in test, and hot-reload(HMR) support(which I am not decided to support this though). If the gem support those, I should change the name of the gem.
PRs will be gathered at
v0.3.x-trunk
branch.The text was updated successfully, but these errors were encountered: