{"id":94432,"date":"2020-09-17T01:42:02","date_gmt":"2020-09-16T23:42:02","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/prekrashhenie-razrabotki-biblioteki-moment-js-imeyushhej-12-mln-zagruzok-v-nedelyu"},"modified":"2020-09-17T01:42:02","modified_gmt":"2020-09-16T23:42:02","slug":"prekrashhenie-razrabotki-biblioteki-moment-js-imeyushhej-12-mln-zagruzok-v-nedelyu","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/prekrashhenie-razrabotki-biblioteki-moment-js-imeyushhej-12-mln-zagruzok-v-nedelyu","title":{"rendered":"The development of the Moment.js library, which has 12 million downloads weekly, has been discontinued.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Developers of the JavaScript library <noindex><a rel=\"nofollow\" href=\"https:\/\/momentjs.com\/\">Moment.js<\/a><\/noindex> have announced <noindex><a rel=\"nofollow\" href=\"https:\/\/momentjs.com\/docs\/#\/-project-status\/\">the cessation<\/a><\/noindex> of development and the transition of the project to maintenance mode, which implies halting the expansion of functionality, freezing the API, and limiting activities to fixing critical bugs, reflecting changes from the time zone database, and maintaining infrastructure for existing users. Moment.js is not recommended for new projects. <\/p>\n<p>The Moment.js library provides functions for manipulating time and dates and is the de facto standard in its field. The library <noindex><a rel=\"nofollow\" href=\"https:\/\/www.npmjs.com\/package\/moment\">is downloaded<\/a><\/noindex> about 12 million times a week. The decision was made due to the realization that the project is outdated and does not fit modern JavaScript development paradigms.<br \/>\nAmong the drawbacks is the relatively large size of the library (329KB uncompressed, 70KB compressed) and the use of mutable objects (<noindex><a rel=\"nofollow\" href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Glossary\/Mutable\">mutable<\/a><\/noindex>, modifying a copy of the moment object leads to changes in the original). <\/p>\n<p>In <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/you-dont-need\/You-Dont-Need-Momentjs\">reviews.<\/a><\/noindex> also <noindex><a rel=\"nofollow\" href=\"https:\/\/inventi.studio\/en\/blog\/why-you-shouldnt-use-moment-js\">Issues such as low performance, API complexity, lack of support for \"<\/a><\/noindex>  Problems with Moment.js include low performance, complex API, and lack of support for<noindex><a rel=\"nofollow\" href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Glossary\/Tree_shaking\">\" (removing unused code to reduce the size of the web application), and the tediousness of debugging are also mentioned. Apparently, the last straw that led developers to decide to transition Moment.js to maintenance mode was a change in the auditing system of web pages in Lighthouse, integrated into Chrome's web developer tools \u2014 a few days ago Lighthouse<\/a><\/noindex>(trimming unused code to reduce the size of web applications) and the difficulty of debugging. Apparently, the last straw that prompted developers to decide to move Moment.js to maintenance mode was a change in the web page auditing system Lighthouse, built into the Chrome web developer tools \u2014 a few days ago Lighthouse <noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/addyosmani\/status\/1304676118822174721\">became<\/a><\/noindex> Modern browsers provide a built-in API<\/p>\n<p>Intl  <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.mozilla.org\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Intl\">for working with locales and time zones. This API is used in the library<\/a><\/noindex> Luxon <noindex><a rel=\"nofollow\" href=\"https:\/\/moment.github.io\/luxon\/\">, created by one of the developers of Moment.js and presented as the next step in the evolution of Moment.js. In addition to Luxon, libraries such as<\/a><\/noindex>(a minimalist version of Moment.js with a similar API, about 7KB without plugins), <noindex><a rel=\"nofollow\" href=\"https:\/\/day.js.org\/\">Day.js<\/a><\/noindex> date-fns <noindex><a rel=\"nofollow\" href=\"https:\/\/date-fns.org\/\">js-joda<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/js-joda.github.io\/js-joda\/\">(port of java.time), and native JavaScript objects<\/a><\/noindex> , as well as the draft API <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.mozilla.org\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Date\">Date<\/a><\/noindex> and <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.mozilla.org\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Intl\">for working with locales and time zones. This API is used in the library<\/a><\/noindex>Temporal <noindex><a rel=\"nofollow\" href=\"https:\/\/tc39.es\/proposal-temporal\/docs\/index.html\">Developers of the Moment.js JavaScript library have announced<\/a><\/noindex>.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Source: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53722\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 JavaScript-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Moment.js \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0435\u043d\u0438\u044f, \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u044e\u0449\u0435\u043c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u0437\u0430\u043c\u043e\u0440\u043e\u0437\u043a\u0443 API \u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a, \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0438\u0437 \u0431\u0430\u0437\u044b \u0447\u0430\u0441\u043e\u0432\u044b\u0445 \u043f\u043e\u044f\u0441\u043e\u0432 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435\u043c \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u043b\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0414\u043b\u044f \u043d\u043e\u0432\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 Moment.js \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f. \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 Moment.js \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u0439 \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u0438 \u0434\u0430\u0442\u0430\u043c\u0438 \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-94432","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 JavaScript-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Moment.js \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/prekrashhenie-razrabotki-biblioteki-moment-js-imeyushhej-12-mln-zagruzok-v-nedelyu\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Moment.js, \u0438\u043c\u0435\u044e\u0449\u0435\u0439 12 \u043c\u043b\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u043a \u0432 \u043d\u0435\u0434\u0435\u043b\u044e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 JavaScript-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Moment.js \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/prekrashhenie-razrabotki-biblioteki-moment-js-imeyushhej-12-mln-zagruzok-v-nedelyu\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-09-16T23:42:02+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-16T23:42:02+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47The cessation of development of the Moment.js library with 12 million downloads per week | ProHoster","description":"\ud83e\udd47The cessation of development of the Moment.js library, which has 12 million downloads per week | ProHoster","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/prekrashhenie-razrabotki-biblioteki-moment-js-imeyushhej-12-mln-zagruzok-v-nedelyu","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Moment.js, \u0438\u043c\u0435\u044e\u0449\u0435\u0439 12 \u043c\u043b\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u043a \u0432 \u043d\u0435\u0434\u0435\u043b\u044e | ProHoster","og:description":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 JavaScript-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Moment.js \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/prekrashhenie-razrabotki-biblioteki-moment-js-imeyushhej-12-mln-zagruzok-v-nedelyu","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-09-16T23:42:02+00:00","article:modified_time":"2020-09-16T23:42:02+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"94432","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:27:33","updated":"2022-10-04 15:49:53","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/94432","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=94432"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/94432\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=94432"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=94432"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=94432"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}