-
-
Notifications
You must be signed in to change notification settings - Fork 32.5k
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
[ROADMAP] Remove @material/core plan #11043
Conversation
Pros: - Simpler to type - Better "marketing" by keeping the legacy name - Keep the download stats Cons: - Less consistency with the other packages - Makes the migration from v0.x. to v1 a bit harder - Reset the download stats
Pros:
I'd vote for consistency and easier migration/parallel usage, but I also get that the download stat problem is kind of sad :/ |
I'm all for keeping the
|
I don't see strong counter arguments and I see this as a necessary growing pain. Keeping the current name provides inconsistency with the new scoped package names we are releasing. Arguments for the change:
I am in favor of the change to |
I don't have a strong preference on the outcome but:
Lets not forget the twitter survey: https://twitter.com/olivtassinari/status/947161769528655888 Nearly 73% of those who know what a scoped package is were in favour, vs. 26% against. Also the response to #9673 (which is predominantly regarding the scoped package) was overwhelmingly positive. Some of that is perhaps just general sentiment towards the subject "Let's ship v1!", but I have to assume a reasonable number actually read the comment and agreed. Downsides? Granted, the current naming looks cleaner / easier to read. |
The fact that YES < (NO + “what is a scoped package?”) in that poll should perhaps be of some concern to those advocating for the switch... |
Not really - you have to assume that those that don't know would favour / object to the proposal in roughly the same proportion as those that do, if they had the required knowledge to answer the question. |
Some thoughts: I don't think Download stats may help a new user assess the viability of a package, but it will probably never be the sole metric. It really shouldn't. Along with does this thing work for me?, nearly all other metrics (like repo activity, team responsiveness, community involvement, issue resolution, exposure and reputation on various social and professional networks) will be unaffected by a reset of download stats. Many StackOverflow answers, tutorials, and blog posts will be rendered out of date, but this is to be expected as libraries mature. As long as the docs are right, we'll be good. Any guide worth its salt should refer the reader to the source material. Plus, this change could be succinctly explained in one place in our documentation. I know there have been concerns with typing extra characters, but it seems silly to me for a few reasons:
I think it would be better to stay consistent with what we're already doing for our other packages. If you think scoped packages 'look weird', maybe you also think the inconsistency between importing an icon and a component is weird as well. Compare this:
To this:
I would prefer a consistent approach to packages. |
Personally I find scoped packages a really good think. The pros/cons are already noted by @kgregory and @rosskevin 🙂 |
If there is a chance to include third-party libraries in the mix, like
and there is absolutely no way for the third party authors to make this consistent with the core. but if we plan on adding all third parties in to the org (if they wish) and release their packages under
|
We plan on adding third party libraries to the mui-org, but for the many packages, the general user base will notice the difference and I see that as a good thing. Users will know that the @material-ui packages are curated, whereas other packages will be up to them regarding due diligence. As-is, a poorly maintained/unmaintained package can be prefixed with material-ui and confused as produced by the org. I suspect this was a significant factor in Babel's decision to use scoped packages. |
Thanks for the feedback guys. Alright, it seems that people value the consistency over the other points:
|
@rosskevin I see your point. I completely agree with you, didn't consider that aspect of it 😁 |
After reading everyone's comments, definitely agree that the scoped package name is the way to go. It will give people a clearer understanding of what packages are "official" as well as figuring out which version is stable. And as oliviertassinari said, if it bothers people THAT much, you can always just create an alias! |
I'm interested, how can I create an alias? Note: I don't use webpack nor any other bundler. |
@fzaninotto Personally, I'm using babel-plugin-module-resolver. babelrc {
"plugins": [
["module-resolver", {
"alias": {
"mui": "@material-ui/core"
}
}]
]
} |
I'm opening this pull-request so we can debate the change. Feedback welcomed!
What do you prefer between
material-ui
and@material-ui/core
?material-ui
Pros:material-ui
Cons: