![]() ![]() We now generally consider Moment to be a legacy project in maintenance mode. We would also like to promote the Temporal addition to the JavaScript language, which is looking for feedback and contributors. Instead, we would like to recommend alternatives that are excellent choices for use in modern applications today. We recognize that many existing projects may continue to use Moment, but we would like to discourage Moment from being used in new projects going forward. The Moment team has discussed these issues at length. 4 alternatives to moment.js for internationalizing dates.You Probably Don't Need Moment.js Anymore.Recently, Chrome Dev Tools started showing recommendations for replacing Moment for the size alone. Libraries like Luxon (and others) take advantage of this, reducing or removing the need to ship your own data files. Modern web browsers (and Node.js) expose internationalization and time zone support via the Intl object, codified as ECMA-402. If one needs internationalization or time zone support, Moment can get quite large. Moment doesn't work well with modern "tree shaking" algorithms, so it tends to increase the size of web application bundles. Since this has already been accomplished in other libraries, we feel that it is more important to retain the mutable API.Īnother common argument against using Moment in modern applications is its size. ![]() We address it in our usage guidance but it still comes as a surprise to most new users.Ĭhanging Moment to be immutable would be a breaking change for every one of the projects that use it.Ĭreating a "Moment v3" that was immutable would be a tremendous undertaking and would make Moment a different library entirely. This is a common source of complaints about Moment. Given how many projects depend on it, we choose to prioritize stability over new features.Īs an example, consider that Moment objects are mutable. Moment has evolved somewhat over the years, but it has essentially the same design as it did when it was created in 2011. The modern web looks much different these days. We may choose to not fix bugs or behavioral quirks, especially if they are long-standing known has been successfully used in millions of projects, and we are happy to have contributed to making date and time better on the web.Īs of September 2020, Moment gets over 12 million downloads per week! However, Moment was built for the previous era of the JavaScript ecosystem.We will not be making any major changes (no version 3).We will not be addressing tree shaking or bundle size issues.We will not be changing Moment's API to be immutable.We will not be adding new features or capabilities.I like this document because it mentions the major issues Moment, it mentions why they're not worth solving, and it suggests a list of alternatives moving forward. Moment's usage is so widespread that it's impossible to deprecate the current version over time. Letting things go instead of creating a new major version is the right choice. ![]() Ĭreating a "Moment v3" would be a tremendous undertaking and would make Moment a different library entirely. Given how many projects depend on it, we choose to prioritize stability over new features. ![]() Moment was built for the previous era of the JavaScript ecosystem. In a humble prelude of the documentation, the Moment maintainers talk about the (near) deprecated status of the project. Moment has been the date library for JavaScript in the past years. If you've dealt with dates in the browser, chances are you've used Moment.js. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |