Request: Прошлое, настоящее и будущее запроса

Созданный на 30 мар. 2019  ·  352Комментарии  ·  Источник: request/request

Прежде чем вдаваться в детали и рассуждения, я сразу перейду к сути. Самое ценное, что request может сделать для экосистемы JavaScript, - это перейти в режим обслуживания и перестать рассматривать новые функции или основные выпуски.

Заранее извиняюсь перед другими коммиттерами request , которые изо всех сил старались его улучшить, но это к лучшему.

2009 г.

Первая версия request была одним из первых модулей, когда-либо созданных для экосистемы Node.js. Самые ранние версии были написаны для API, которые предшествовали стандартному интерфейсу обратного вызова, потокам, node_modules и npm. Первые несколько лет request и Node.js развивались вместе, каждый учился у другого. Поскольку Node.js улучшал и переносил основные интерфейсы, то и запрос. Поскольку запрос принял изменения в основной http-библиотеке и потоках, он также сообщил об улучшениях, таких как событие pipe (которое включило однострочный прокси request ) и одну из многочисленных перезаписей Core http ( один мне пришлось написать).

npm

request был одним из первых модулей, добавленных в реестр npm. По мере роста npm росла и зависимость от request . Даже сейчас, когда npm используется гораздо больше для интерфейсной части, чем для внутренней работы, request остается одним из наиболее зависимых от модулей в реестре. На момент написания этой статьи 41К модулей зависят от запроса, и он загружается 14 миллионов раз в неделю.

Место, которое request занимает в экосистеме Node.js, - это уже не новатор, а действующий игрок. Если вы используете Google, чтобы узнать, как что-то сделать с HTTP в Node.js, в примерах, скорее всего, будет отображаться request в качестве клиента и express в качестве сервера. Это имеет два особенно плохих эффекта.

Новым библиотекам, выполняющим аналогичные задачи, гораздо труднее получить признание из-за того, что request занимает доминирующее положение над экосистемой. Также очень сложно изменить запрос каким-либо значимым образом, поскольку изменение не только не может быть принято большинством его иждивенцев, но и приведет к несогласованию его с тысячами сообщений в блогах и ответами на переполнение стека, которые используют request .

Современный JavaScript

Последние несколько лет для JavaScript были драматичными. Функции, о которых люди говорили в течение многих лет, перешли от идей к стандартам и к функциям, на которые можно надежно положиться в большинстве сред. Скорость, с которой они были приняты, ошеломляет, в основном благодаря автоматическому обновлению браузеров и агрессивному графику выпуска Node.js.

Шаблоны, лежащие в основе request , устарели. Некоторые люди могут поспорить с этой оценкой, и я знаю, кто они, поэтому не удивлюсь, но это правда. Я часто скептически относился к влиянию некоторых из этих функций только потому, что обнаружил, что принимаю их оптом вскоре после того, как они будут доступны только в последней версии Node.js.

Сейчас в экосистеме происходит переход к этим паттернам. Насколько это будет беспорядочно, все еще витает в воздухе, и я не собираюсь пытаться читать чайные листы и выяснять, как выглядит будущее в этом отношении. Вопрос для request : «Пытаемся ли мы пережить этот переход?» Год назад я думал, что ответ очевиден и что мы сделаем, но теперь я убежден в обратном.

Версия request написанная для того, чтобы по-настоящему охватить эти новые языковые шаблоны, по сути, является новым модулем. Я уже немного исследовал request всеми возможными способами. Какое значение имеет версия request , несовместимая со старыми шаблонами, но не полностью охватывающая новые? Какой смысл в частичной совместимости, когда существует целый мир новых модулей, написанных новыми разработчиками, которые переосмысливают эти проблемы с учетом этих шаблонов?

Лучше всего для этих новых модулей, чтобы request медленно исчезли, в конечном итоге превратившись в просто еще одну память этого устаревшего стека. Занять положение, которое сейчас занимает request , и использовать его для большей доли разработчиков следующего поколения было бы медвежьей услугой для этих разработчиков, поскольку это оттолкнуло бы их от лучших модулей, которые не имеют бремени request История

Режим технического обслуживания

Вот план.

  • request перестанет принимать новые функции.
  • request перестанет рассматривать критические изменения.
  • Коммиттеры, которые все еще активны, будут пытаться своевременно объединить исправления, но никаких обещаний.
  • Релизы будут полностью автоматизированы, любое слияние с мастером будет опубликовано. Я уже создал это для некоторых других проектов с помощью GitHub Actions .

    • Нам придется удалить неактивных соавторов и применить 2fa, потому что права на фиксацию фактически станут правами публикации npm.

neverstale

Самый полезный комментарий

Я полностью поддерживаю это, думаю, следует предупредить об отказе от новых выпусков и / или отказаться от них.

Что касается изменений в процессе и правилах, это значительно облегчает мою работу 👌

Все 352 Комментарий

Я полностью поддерживаю это, думаю, следует предупредить об отказе от новых выпусков и / или отказаться от них.

Что касается изменений в процессе и правилах, это значительно облегчает мою работу 👌

Очень хорошо сказал @mikeal. Я закрепляю эту проблему, чтобы сделать ее более заметной.

Что мы можем сделать - пожалуйста, обсудите и станьте волонтером!

  • [] обновить readme с текущим состоянием проекта
  • [] обновить конвейер публикации ci @mikeal
  • [] предоставить документ с некоторыми рекомендациями по альтернативам request https://github.com/request/request/issues/3143
  • [] добавить предупреждающее сообщение при установке пакета, чтобы использовать другой пакет, и ссылку на документ
  • [] выберите дату, чтобы прекратить поддержку (я голосую 6 месяцев, но 12, вероятно, более дружелюбны)
  • [] закрыть все запросы функций и предложения функций
  • [] просмотрите и объедините соответствующие исправления ошибок
  • [] добавить проблему с github и шаблоны PR, объясняющие, что функции не будут объединены
  • [] не рекомендуется использовать следующую основную версию ( 3.x ), поэтому проект, находящийся в активном обслуживании, получает предупреждение, но более старые проекты продолжают работу в обычном режиме

В этом есть смысл! Я постепенно буду применять эту политику для семейства request-promise . Приветствую вас за важный вклад в экосистему узлов!

исключить последний пакет npm и автоматически исключить его при публикации

Будьте осторожны с устареванием. Как писал Микаэль выше, существует 41K модулей в зависимости от request . Многие из этих модулей полезны в текущем состоянии и хорошо работают для своих пользователей, но у их сопровождающих может не быть времени переделать эти модули, чтобы использовать что-то еще, кроме request . Отказавшись от поддержки request во время установки, вы по существу откажетесь от поддержки значительной части экосистемы модулей npm.

На мой взгляд, режим обслуживания - это не то же самое, что отказ от поддержки.

  • Режим обслуживания = мы исправим ошибки и уязвимости, чтобы вы могли продолжать использовать этот пакет.
  • Deprecation = никто больше не должен использовать этот пакет. Обычно это происходит, когда модуль заброшен и больше не будет получать никаких исправлений ошибок или исправлений безопасности.

Я слышу тебя. Полный текст

исключить последний пакет npm и автоматически исключить его при публикации через ci __ (может быть, после прекращения поддержки?) __

Я думаю, что в конечном итоге нам следует отказаться от request потому что я не хочу, чтобы новые проекты использовали его.
Я пытался отсортировать проблемы и составить список, который мы можем решить, но есть ошибки, которые мы не можем исправить без критических изменений. Поэтому они не будут исправлены, и у новых пользователей будут проблемы.

Например, следующие перенаправления теряют тела запроса и файлы cookie, а анализ URL-адресов для удаления относительных путей - это ошибки, но я не уверен, что они когда-либо будут исправлены.

Может быть, осуждение - неправильный ответ, но я не знаю, как еще подойти к этому.

Имеет ли это смысл?

Давайте просто изменим основную версию, когда мы устареем. Таким образом, большинство людей, зависящих от проекта, не увидят эту ошибку, пока не попытаются перейти на новую категорию, что означает, что они активно ее разрабатывают и действительно должны искать альтернативу.

Я горжусь тем, что стал частью истории request . Я также проверю bent , это выглядит интересно, и _small_, что для меня более важно в наши дни.

Нам придется удалить неактивных соавторов и применить 2fa, потому что права на фиксацию фактически станут правами публикации npm.

Прекрасно убрать меня.

Я думаю, что мы должны в конечном итоге отказаться от request, потому что я не хочу, чтобы новые проекты использовали его.

Как программист, ОЧЕНЬ благодарный за модуль и использующий его постоянно, Я ХОЧУ использовать его в новых проектах.

Это решение, должно быть, было очень трудным для принятия, но оно заслуживает крайней похвалы. Отличная работа.

Я горжусь тем, что воспользовался этим замечательным инструментом. Это заставило сообщество улучшиться. 🙏
Если вам нужна помощь в обслуживании, не стесняйтесь обращаться ко мне.

Хотя я уважаю ваше решение, я прошу вас подумать, насколько реальный мир, производственный код в настоящее время зависит от запросов. Это гораздо больше, чем может сказать вам статистика NPM. Я полностью понимаю, что хочу перейти к чему-то новому и сделать что-то новым, более интересным способом ... в конце концов, это экосистема JavaScript, нужно гнаться за новинкой. Но, пожалуйста, примите во внимание количество времени и денег, которые вы потратите профессиональным инжиниринговым организациям, выполнив оптовый запрос на прекращение поддержки. Если вы хотите оставить его в режиме обслуживания, это нормально, но поймите, что у многих людей нет абсолютно никаких практических причин менять библиотеки. Принуждение людей к изменению из-за идеологии приведет к разочарованию.

Тем не менее, спасибо за тяжелую работу, которую каждый вложил в эту библиотеку.

Интересно, какую библиотеку можно считать современной и порекомендовать сейчас. Superagent сейчас в основном находится в режиме обслуживания, а axios вообще не слишком активны.

Просто небольшое примечание, чтобы поблагодарить вас (и всех других участников) за всю тяжелую работу над этим модулем на протяжении многих лет; это был один из первых, которые я когда-либо использовал, когда начинал работать с Node, поэтому он всегда будет занимать особое место в моем сердце.

Давайте просто изменим основную версию, когда мы устареем. Таким образом, большинство людей, зависящих от проекта, не увидят эту ошибку, пока не попытаются перейти на новую категорию, что означает, что они активно ее разрабатывают и действительно должны искать альтернативу.

Я думаю, что это все еще жизнеспособное решение для упомянутого выше.

@kibertoad Похоже, @mikeal работает над https://github.com/mikeal/bent . Я использую https://github.com/sindresorhus/got уже много лет, он хорошо поддерживается и развивается.

Учитывая все эти разговоры и возможность того, что он устарел, я думаю, что в равной степени должно быть упомянуто и о текущем модуле замены зрелости, о параллельной утилите. Мы не можем просто объявить о его окончании и ничего не предложить или заменить гораздо менее зрелым и уверенным. Запрос используется в серьезных приложениях. Почему это важно? Потому что, несмотря на все его «устаревшие шаблоны в своей основе», он работает ежедневно для тысяч. Речь идет не об идеальном мире, а о реальном мире. Какая реальная замена, уверенность, в тот день, когда запрос переведен в режим обслуживания или устарел? Это необходимо.

Вы можете найти это обсуждение здесь https://github.com/request/request/issues/3143

Вы можете найти текущий рабочий план (прямой отзыв приветствуется) можно найти здесь https://github.com/request/request/issues/3142#issuecomment -478303334

Спасибо за вашу работу над request !

Шаблоны, лежащие в основе запроса, устарели.

Шаблоны меняются каждые несколько месяцев и лет, особенно в сообществе JavaScript. Разве причины, по которым изначально был создан request не актуальны и сегодня?

request имеет 10 лет фиксации, стабильности и тестирования. Зачем начинать с нуля? Разве это не просто добавление «усталости от JavaScript», в результате чего большее количество библиотек будет делать то же самое - HTTP-запросы?

Печально видеть, что такая важная и историческая библиотека в истории Node исчезает, потому что потоки и обратные вызовы больше не являются модными в 2019 году.

Я не верю, что отказ от библиотеки действительно необходим, она существует уже около 10 лет, используется во многих местах и ​​на самом деле довольно стабильна, и в конце концов. все, что он делает, - это HTTP-запросы, что еще нужно библиотеке? Поддержка мода месяца на JS? 👎

Коммиттеры, которые все еще активны, будут пытаться своевременно объединить исправления, но никаких обещаний .

ба-дум-чш! 🥁

Это ответственное осуждение. Хорошо общаются, есть план, который нужно реализовать. Я думаю, что другие разработчики OSS могут рассматривать это как стандарт, к которому нужно стремиться.

Это намного лучше, чем забыть о пакете и позволить случайным людям (которые могут вводить лазейки в код) в качестве сопровождающих взять на себя управление, когда вам уже все равно.

Request был отличным пакетом, и мы очень благодарны вам за ваш вклад в экосистему ранних узлов. Вы правы в своей оценке, что стиль обратного вызова больше не является идиоматическим JavaScript, и есть другие пакеты, такие как fetch, которые отражают стандарты WHATWG.

@stcktrce Собственно , библиотеке больше ничего не нужно, она работает как есть. Но во всей экосистеме произошли серьезные улучшения. Отказ от использования библиотеки просто означает возможность для других проверять новые и более современные библиотеки вместо того, чтобы просто полагаться на самые популярные из существующих.

@mikeal благодарим вас за все ваши усилия в библиотеке (тоже r2 ) и экосистеме. Кроме того, для установки этого приоритета хорошо продуманного и запланированного отказа в экосистеме.

Давайте просто изменим основную версию, когда мы устареем. Таким образом, большинство людей, зависящих от проекта, не увидят эту ошибку, пока не попытаются перейти на новую категорию, что означает, что они активно ее разрабатывают и действительно должны искать альтернативу.

@mikeal Не думаю, что это хорошая идея.

Проблема в том, что большинство замен имеют более низкое качество, чем запрашиваемое. Я переехал в request из axios около недели назад.

Axios имеет многолетние постоянные ошибки, связанные с поддержкой прокси, изменением агентов https и необработанными исключениями обещаний. Вы обнаружите это только после серьезных инвестиций в аксиомы.

Для новых пользователей axios внешне выглядит так же хорошо, как запрос (одинаковое количество пользователей, обещания по дизайну и т. Д.)

Спасибо за request :)

Если кто-то ищет минимальную HTTP-библиотеку на основе обещаний с подключаемыми фильтрами и хорошей поддержкой потоков, вы можете проверить httplease . Мы уже несколько лет используем его в производстве.

Мне очень нравится модуль запросов. Большое спасибо.
Вы имеете в виду, что запрос получает слишком много внимания, чтобы предотвратить появление другого такого же нового модуля?

Если есть определенные ошибки в сопоставимых функциях других библиотек, я бы хотел их конкретно идентифицировать. Поддержка прокси - это сложная функция, и очень ценно наличие тестового примера, когда запрос проходит, а другие библиотеки не работают.

@reconbot в последней версии axios (^ 0.18.0) вы не можете подключиться к сайту https через прокси-сервер. это приводит к EPROTO ошибкам. это открытая ошибка по этому поводу, но проблема возникла много лет назад: https://github.com/axios/axios/issues/1981

edit: в частности, вы не можете использовать axios для выполнения https-запросов через http-прокси. возможно, выделенный прокси https работает, не пробовал.

Я очень надеюсь, что исправления не считаются новыми функциями, такими как мой запрос на включение максимального размера ответа, который я считаю стандартной обязательной функцией любой зрелой библиотеки.

Также я просмотрел другие библиотеки запросов, прежде чем выбрать эту, и большинство из них очень проблематично, неполно и содержат ошибки. Их документы тоже не измеряют. Я действительно не понимаю, что может принести другая библиотека, кроме непроверенного кода и ошибок, это не похоже на новый подход к созданию HTTP-запросов. Все дело в обертке модуля http / https и предоставлении разумных значений по умолчанию, таких как буферизация ответа, декодирование ответов и, конечно же, возможность обещать все это . Самая большая проблема этой библиотеки здесь - это цель полной совместимости, попытка быть совместимой с устаревшими материалами приносит только боль и устаревшие методы кодирования. Но это можно исправить разными способами. Есть хорошая база, которую можно реорганизовать во что-то элегантное, современное и минималистское. И, самое главное, надежный. Есть много способов сделать это - разбить на несколько файлов, использовать ECMA6 с Babel или Typescript.

Ни один здравомыслящий разработчик не хочет 10 библиотек, которые делают одно и то же, но не имеют разных функций, содержат ошибки и недокументированы. Эта библиотека действительно работает, и я благодарен за нее и надеюсь, что она не устарела, а вместо этого восстановлена.

Исправления не считаются новыми функциями. Исправления будут объединяться как минимум на год, а возможно, и дольше.

-Майкл


От: mivanovaxway [email protected]
Отправлено: четверг, 11 апреля 2019 г., 2:38
Кому: запрос / запрос
Копия: Майкл Роджерс; Упомянуть
Тема: Re: [запрос / запрос] Прошлое, настоящее и будущее запроса (№ 3142)

Я очень надеюсь, что исправления не считаются новыми функциями, такими как мой запрос на включение максимального размера ответа, который я считаю стандартной обязательной функцией любой зрелой библиотеки.

Также я просмотрел другие библиотеки запросов, прежде чем выбрать эту, и большинство из них очень проблематично, неполно и содержат ошибки. Их документы тоже не измеряют. Я действительно не понимаю, что может принести другая библиотека, кроме непроверенного кода и ошибок, это не похоже на новый подход к созданию HTTP-запросов. Все дело в обертке модуля http / https и предоставлении разумных значений по умолчанию, таких как буферизация ответа, декодирование ответов и, конечно же, возможность обещать все это. Самая большая проблема этой библиотеки здесь - это цель полной совместимости, попытка быть совместимой с устаревшими материалами приносит только боль и устаревшие методы кодирования. Но это можно исправить разными способами. Есть хорошая база, которую можно реорганизовать во что-то элегантное, современное и минималистское. И, самое главное, надежный. Есть много способов сделать это - разбить на несколько файлов, использовать ECMA6 с Babel или Typescript.

Ни один здравомыслящий разработчик не хочет 10 библиотек, которые делают одно и то же, но не имеют разных функций, содержат ошибки и недокументированы. Эта библиотека действительно работает, и я благодарен за нее и надеюсь, что она не устарела, а вместо этого восстановлена.

-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub https://github.com/request/request/issues/3142#issuecomment-482043697 или отключите поток https://github.com/notifications/unsubscribe-auth/AAACQ8I4BSRtOjqHk637gRbRfBrIhkv .

Пакеты TIL 41k просто стали уязвимыми.

Послушайте, я согласен, что запрос должен быть удален, но я всегда опасаюсь, что основные пакеты, подобные этому, изменят свой конвейер выпуска. Один злоумышленник или один взломанный ящик разработчика, публикующий вредоносный код, эффективно распространялся бы на каждый проект.

Пожалуйста, подумайте об ужесточении требований npm push. Настроить ветку для ci, потребовать нескольких одобрений, что-то большее, чем просто подтолкнуть к освоению.

но никаких обещаний.

Каламбур предназначен? 🤣

может быть, те же логические рассуждения следует применить к expressjs? для запроса у нас теперь есть новый блестящий модуль got, на горизонте нет переписывания или реальной альтернативы expressjs.

Экспресс отличный, но он не очень активно обновляется новыми функциями в эти годы

Express может не обновляться новыми функциями, но он активно поддерживается, и, когда я в последний раз проверял, есть несколько человек, которые все еще весьма заинтересованы в выполнении этой работы. я не знаю, что им нужно предпринять шаги, которые мы предприняли для прекращения поддержки.

@laoshaw какое отношение к выражению имеет отношение к request ?

Готовимся к прекращению поддержки. https://github.com/request/request/pull/3267

Мы полностью устарели!

Все версии на npm отмечают устаревание, а в README четко указано, что request устарело.

Это были отличные 10 с лишним лет, спасибо всем, кто внес свой вклад за последнее десятилетие. Давайте все с нетерпением ждем новых библиотек, которые лучше подходят для изменений, происходящих в языке и экосистеме JS.

Итак, давайте уточним.
Что представляет собой замена бережливого кода для модуля запросов?

Чтобы не остаться висящим на мёртвой коре ... так много лучших вариантов ... например, КАКИЕ?
Не ГРАНД делайте все под солнцем библиотеки / модули, пожалуйста.

@riclf, мы использовали https://github.com/googleapis/teeny-request/, чтобы избавить нас от запросов в течение нескольких лет. Он не делает все, что вы от него хотите :) Он использует node-fetch под капотом. Есть и другие отличные варианты!

Для решения, основанного на обещании, также есть gofer который в значительной степени ориентирован на обмен данными через API. Встроенная поддержка тайм-аутов TCP-соединения, простая настройка (и множество ошибок) для взаимодействия с несколькими API-интерфейсами и т. Д.

Есть ли у кого-нибудь рекомендации для альтернативных клиентов, которые имеют хорошую поддержку HTTP Long Polling и представлены как Stream или Event Emitter?

В последний раз, когда я проверял в апреле 2019 года, альтернативы, такие как got , node-fetch и axios имели серьезную проблему: при возникновении (низкоуровневой сетевой) ошибки они отбрасывали полезная трассировка стека, о которой сообщает ядро ​​Node.js, и вызвала новую высокоуровневую ошибку с трассировкой стека, указывающей только на клиентскую библиотеку http. Это делало отладку проблем транспортного уровня практически невозможной, например, когда задействованы прокси.

Есть ли хорошая альтернатива request которая сохраняет сведения об ошибках, предоставленные ядром Node.js?

@bajtos Я почти уверен, что gofer только украшает исходные ошибки, но должен сохранять следы стека и сообщения.

bent имеет хорошие ошибки и предназначен для async / await. Кроме того, он невероятно маленький, а размер связки совсем крошечный;)

Однако API - это не что иное, как запрос, поэтому я бы не стал называть его «заменой».

@mikeal Почему это называется bent ? (имя запроса было легче запомнить.)

bent имеет хорошие ошибки и предназначен для async / await. Кроме того, он невероятно маленький, а размер связки совсем крошечный;)

Однако API - это не что иное, как запрос, поэтому я бы не стал называть его «заменой».

Это больше похоже на технически правильную, чем на удобную для пользователя логику. С точки зрения пользователя, bent решает ту же проблему, что и запрос, но лучше. Теперь без всякой причины ему присвоено худшее название. Вы можете назвать это запросом 3 без особых проблем. Да, API ломается, но для чего у нас есть семвер.

Вы можете назвать это запросом 3 без особых проблем. Да, API ломается, но для чего у нас есть семвер.

Проведите некоторое время с bent и вы можете почувствовать себя иначе.

Это немалая разница в именах или обещаниях и обратных вызовах. Эргономика очень разная, состояния, которые она отображает, очень разные, то, как она думает об условиях ошибки, - это радикально другой подход.

request - это более процедурный API, вы говорите ему что-то сделать, и он сообщает вам, что произошло, он выдает ошибку только в том случае, если что-то неисправимо. bent принимает критерии успеха для всего жизненного цикла и возвращает вам API, который не сработает, если будет выполнено что- либо, кроме критериев успеха .

Вы используете эти библиотеки по-разному. Есть и другие библиотеки, которые ближе к API request , если это то, что вам нужно, но после почти 20 лет работы над HTTP-клиентами я нашел другой и, в конечном счете, лучший подход, который я бы поддержал. рассмотреть, но я не собираюсь забивать всем горло, делая это request 3.0.

Почему его называют гнутым? (имя запроса было легче запомнить.)

Потому что вы «сгибаете» его в определенную форму (очень конкретные критерии успеха), и он обеспечивает идеальный API для успеха этой формы и терпит неудачу ни в чем, кроме нее.

Название немного абстрактное, но request - это имя, которое вы никогда не смогли бы получить сегодня. У меня почти не было request в реестре npm, и я написал исходный реестр npm 😜

что насчет "получил" в качестве замены, жаль, что у нас нет четкой замены, а запрос официально устарел.

что насчет "получил" в качестве замены, жаль, что у нас нет четкой замены, а запрос официально устарел.

Возможно, нам следует принять тот факт, что никто не написал совместимую с API замену, как указание на то, что принятие совместимой с API замены нежелательно, если вы сядете и поработаете над ней 🧐

Конечно, это был мой опыт.

Возможно, то, что люди действительно хотят, когда они просят «замену», - это не столько альтернатива, совместимая с API, сколько взгляд сопровождающего на то, какие другие пакеты уже существуют для решения примерно той же проблемы и которые делают этот пакет неактуальным, так что вы можете с уверенностью назвать его "устаревшим".

И я бы сказал, что реклама bent в уведомлении об отказе от поддержки (возможно, вместе с некоторыми другими, если это заставляет вас чувствовать себя более комфортно) - отличный способ рассказать о нем, несмотря на неясное название.


Модуль запросов Angluar 8 устарел

npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
npm ERR! code E404
npm ERR! 404 Not Found: error-ex@^1.3.1

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Ammar\AppData\Roaming\npm-cache\_logs\2020-02-12T04_18_22_538Z-debug.log

Вы действительно понимаете, что на самом деле означает "устаревший"?

Устарело. В мире разработки программного обеспечения «устаревшие» относятся к функциям или элементам, которые заменяются более новыми. Этот термин происходит от слова «осуждать», что означает не одобрять что-либо.

На практике это означает, что когда я поддерживаю какой-либо из своих модулей (не с открытым исходным кодом), я получаю глупые сообщения об ошибках.

А как насчет 151 проблемы и 55 запросов на вытягивание? Скинуть их?

И я бы сказал, что реклама, изогнутая в уведомлении об устаревании (возможно, с другими, если это заставляет вас чувствовать себя более комфортно), является отличным способом начать узнавать об этом, несмотря на неясное название.

Это слишком рано - см. Вопрос 2 о загибе.

Я думаю, что этот запрос должен перейти в режим неопределенности - не устарел, что вызывает глупые предупреждения, - но там, где НИЧЕГО не будет предпринято, все проблемы и запросы будут проигнорированы, а страница README должна быть обновлена, чтобы отметить это, и, если это необходимо, ссылки будут включены в другие функционально эквивалентные пакеты.

А как насчет 151 проблемы и 55 запросов на вытягивание? Скинуть их?

Некоторое время никто их не исправлял и не пересматривал, они уже были «выкинуты».

Ваши комментарии звучат так, будто в этом проекте есть некий самоотверженный труд, на который люди имеют право. Такого никогда не было, request - это не продукт, выпущенный и поддерживаемый компанией, он всегда поддерживался разработчиками с открытым исходным кодом, которым не все равно, и по мере того, как экосистема двигалась в новом направлении, мы все двигались вместе с ним. . Я также рекомендую вам двигаться дальше.

Некоторое время никто их не исправлял и не пересматривал, они уже были «выкинуты».

Вы имеете в виду, что ВЫ не просматривали их в течение некоторого времени. Честно говоря, мы, не сотрудники, не можем это контролировать.

Ваши комментарии звучат так, будто в этом проекте есть некий самоотверженный труд, на который люди имеют право.

Я не имел в виду этого, но в некотором смысле это правда, программное обеспечение с открытым исходным кодом предоставляет определенные права пользователю, а также защищает права разработчика. Эти права предназначены для использования, а не для обслуживания. Когда поддержание или дальнейшее развитие связано с критическими изменениями, необходимо проявить большую осторожность и подумать. Это критическое изменение, и, на мой взгляд, в нем нет необходимости. Просто оставьте модуль как есть, и мы все перейдем к следующему проекту, особенно если альтернатива предлагает преимущества. В самом деле, было бы глупо этого не сделать. Но, насколько я понимаю, на данный момент реальной альтернативы нет.

Программное обеспечение с открытым исходным кодом предоставляет пользователю определенные права.

Лицензии OSS предоставляют права на повторное распространение и изменение, никаких гарантий относительно пригодности программного обеспечения для какого-либо конкретного использования не дается. Никаких гарантий относительно будущих изменений, включая потенциальные критические изменения, не дается.

Вот соответствующий текст из лицензии Apache 2. Практически каждая лицензия с открытым исходным кодом имеет это.

“Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.”

Это критическое изменение, и, на мой взгляд, в нем нет необходимости. Просто оставьте модуль как есть, и мы все перейдем к следующему проекту, особенно если альтернатива предлагает преимущества. В самом деле, было бы глупо этого не сделать. Но, насколько я понимаю, на данный момент реальной альтернативы нет.

Вот в чем дело. В этом коде есть известные ошибки, которые не будут исправлены. Этот код больше не поддерживается и устарел.

Предупреждение об устаревании - это уведомление о том, что вы полагаетесь на проблемный код. Если вы можете полагаться на устаревший и проблемный код, просто подавите сообщения. Кажется, ваша проблема связана с предупреждениями, а не с состоянием программного обеспечения. Если вас устраивает состояние программного обеспечения, просто отключите предупреждения.

Мы не будем изменять состояние устаревания и соответствующие предупреждения, чтобы они не соответствовали действительности, чтобы удовлетворить любого конкретного пользователя, обеспокоенного предупреждениями, которые они могут легко подавить, если они не заботятся о том, чтобы полагаться на устаревшие модули.

нужна помощь !!! .. У меня возникают эти проблемы, когда я пытаюсь установить node-gyp 3.6.2
PS C: \ Users \ User> npm install --global [email protected]
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
npm ERR! путь C: \ Users \ User \ AppData \ Roamingnpm \ node-gyp.cmd
npm ERR! код EEXIST
npm ERR! Отказ в удалении C: \ Users \ User \ AppData \ Roamingnpm \ node-gyp.cmd: находится за пределами C: \ Users \ User \ AppData \ Roamingnpm \ node_modules \ node-gyp, а не по ссылке
npm ERR! Файл существует: C: \ Users \ User \ AppData \ Roamingnpm \ node-gyp.cmd
npm ERR! Отодвиньте его и попробуйте еще раз.

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ User \ AppData \ Roamingnpm-cache_logs \ 2020-02-13T05_12_13_683Z-debug.log

@mikeal О, это интересный случай. Наличие номера проблемы в уведомлении об устаревании может привести к появлению здесь множества несвязанных комментариев, как продемонстрировал @Meharab .

Возможно, пришло время предотвратить дальнейшие комментарии здесь?

ОБНОВЛЕНИЕ : 5 дней спустя и комментариев действительно накапливаются.

@mikeal Спасибо за эти годы

Просьба спокойной ночи. Увидимся на другой стороне.

запрос будет работать вечно (как есть), потому что это JavaScript ... ну, если только Node не внесет критическое изменение, отказавшись от основного API, используемого им

запрос будет работать вечно (как есть), потому что это JavaScript ... ну, если только Node не внесет критическое изменение, отказавшись от основного API, используемого им

Неа.
В этом коде есть известные ошибки, которые не будут исправлены. Этот код больше не поддерживается и устарел. (соч.)

Так что в запросе вечно будут исправленные ошибки, он не будет работать вечно ...

Я не понимаю. Итак, что мне теперь официально делать, чтобы не получить предупреждение об устаревании?

Удалить request . Это может включать удаление его из ваших собственных зависимостей, обновление пакетов, которые удаляют его в более новых версиях, или удаление пакетов, которые еще не были обновлены до более новых версий.

Привет.

Пытаюсь установить кордову.

npm install -g cordova

я продолжаю получать эту ошибку.
Microsoft Windows [Версия 10.0.18362.592]
(c) Корпорация Microsoft, 2019 г. Все права защищены.

C: \ Пользователи> npm install -g cordova
npm WARN устарел [email protected]: request устарел, см. https://github.com/request/request/issues/3142
C: \ Users \ AppData \ Roamingnpm \ cordova -> C: \ Users \ AppData \ Roamingnpm \ node_modules \ cordova \ bin \ cordova

Есть ли другой способ установить Кордову?
Как обойти эту покупку?

да. Ok. Я удалю запрос. Но что тогда?

Итак, на node.js мне нужно переключиться на .. idk .. axios?

Что я могу поставить вместо запроса?

Я так понимаю, идея состоит в том, чтобы переписать все функции, в которых был запрос?

Есть ли пакет, который я мог бы просто изменить с помощью поиска и замены с помощью регулярного выражения?

Есть ли официальная замена для запроса, или мы просто сейчас свободны, чтобы найти то, что сначала появится в Google? Я не понимаю

Есть ли официальная замена по запросу

Нет, вы можете использовать все, что захотите, хотя один и тот же разработчик работает над bent

Существует также форк postman-request который получил ряд исправлений, ~ но не работал с момента прекращения поддержки request . ~

Поскольку у них нет страницы с проблемами, я попробую спросить здесь:

@coditva @codenirvana @shamasis @vikiCoder @czardoz

Приносим извинения за упоминания, но какие планы на будущее для postman-request теперь, когда request официально мертв? Будет ли поддержка postman-request продолжена или она также будет исключена?

нужна помощь!!! Я пытаюсь установить angular, у меня проблема
npm install -g @ angular / cli
npm WARN устарел [email protected]: request устарел, см. https://github.com/request/request/issues/3142
npm ERR! код EEXIST
npm ERR! путь C: \ Users \ FARHAN \ AppData \ Roamingnpm \ node_modules \ @angular \ cli \ bin \ ng
npm ERR! dest C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd
npm ERR! EEXIST: файл уже существует, cmd shim 'C: \ Users \ FARHAN \ AppData \ Roamingnpm \ node_modules \ @angular \ cli \ bin \ ng' -> 'C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd'
npm ERR! Файл существует: C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd
npm ERR! Удалите существующий файл и попробуйте еще раз или запустите npm
npm ERR! с --force для опрометчивой перезаписи файлов.

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ FARHAN \ AppData \ Roamingnpm-cache_logs \ 2020-02-15T09_52_19_067Z-debug.log

Какие есть альтернативы request ? Angular по-прежнему зависит от него. Надеюсь, они скоро обновят свою кодовую базу.

У меня есть краткосрочное решение, от которого Майкл Роджерс откажется, возможно, даже набросится на меня. Это текущее прекращение поддержки прошло в 2 незапланированных фазы - 1) Общее обсуждение его необходимости, 2) BANG, уведомление примерно за 30 минут, и оно было реализовано. Ад вырвался наружу.

Я спрашиваю @mikeal, рассмотрит ли он возможность

3 фазы-
1) Обсуждение: с 20 марта 2019 г. по 15 февраля 2020 г.
2) Уведомление о прекращении поддержки за 6 месяцев: 15 февраля 2020 г.
3) Реализация устаревания: 15 августа 2020 г.

Таким образом, не только фреймворки и проекты приложений НЕ сразу ломаются, что слишком сложно, но это сообщество теперь может использовать ЭТУ область обсуждения, чтобы делиться альтернативами, +/- в течение следующих нескольких месяцев и получать альтернативы. к крайнему сроку 6 мес. Затем, когда это произойдет, мы все сможем поприветствовать его, закричать «привет», и ничего не сломается.

Пожалуйста, поймите, я не спорю о необходимости прекращения поддержки или праве создателя делать это ... Я предлагаю трехэтапный график предварительного уведомления, как указано выше, который будет учитывать его значительное использование в сообществе разработчиков, и приложения, живущие сегодня в мире, в зависимости от модуля запроса.

Майкаль, пожалуйста, примите во внимание мое предложение и снимите статус устаревшего сегодня и объявите об уведомлении за 6 месяцев. Для многих из нас меньше 6 месяцев мало, 6 - справедливо. Я был бы признателен за это, все мы.

Большое спасибо за то, что услышали меня,
-Рик Финк

Добавление предупреждения об устаревании ничего не ломает, оно просто предупреждает пользователей, что оно может быть сломано в будущем. Я бы предпочел раньше увидеть сообщение об устаревании, чем ждать обсуждения в сообществе, прежде чем узнаю, что мне в конечном итоге придется заменить пакет.

Кроме того, дружеское напоминание о том, что этот пакет разрабатывался бесплатно с открытым исходным кодом, и сопровождающий ничего вам не должен. Если вы хотите продолжить использование пакета, вы можете выполнить его форк и продолжить обслуживание самостоятельно.

@riclf

нужна помощь!!! Я пытаюсь установить angular, у меня проблема
npm install -g @ angular / cli
npm WARN устарел [email protected]: request устарел, см. # 3142
npm ERR! код EEXIST
npm ERR! путь C: \ Users \ FARHAN \ AppData \ Roamingnpm \ node_modules @ angular \ cli \ bin \ ng
npm ERR! dest C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd
npm ERR! EEXIST: файл уже существует, cmd shim 'C: \ Users \ FARHAN \ AppData \ Roamingnpm \ node_modules @ angular \ cli \ bin \ ng' -> 'C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd'
npm ERR! Файл существует: C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd
npm ERR! Удалите существующий файл и попробуйте еще раз или запустите npm
npm ERR! с --force для опрометчивой перезаписи файлов.

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ FARHAN \ AppData \ Roamingnpm-cache_logs \ 2020-02-15T09_52_19_067Z-debug.log

Кажется, это было решено в последней версии Angular, в которой request заменено на node-fetch .

@AURZeeshan
Ваша ошибка не связана с этим. Вы просто видите предупреждение от этого пакета, ошибка другая.

@riclf

нужна помощь!!! Я пытаюсь установить angular, у меня проблема
npm install -g @ angular / cli
npm WARN устарел [email protected]: request устарел, см. # 3142
npm ERR! код EEXIST
npm ERR! путь C: \ Users \ FARHAN \ AppData \ Roamingnpm \ node_modules @ angular \ cli \ bin \ ng
npm ERR! dest C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd
npm ERR! EEXIST: файл уже существует, cmd shim 'C: \ Users \ FARHAN \ AppData \ Roamingnpm \ node_modules @ angular \ cli \ bin \ ng' -> 'C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd'
npm ERR! Файл существует: C: \ Users \ FARHAN \ AppData \ Roamingnpm \ ng.cmd
npm ERR! Удалите существующий файл и попробуйте еще раз или запустите npm
npm ERR! с --force для опрометчивой перезаписи файлов.
npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ FARHAN \ AppData \ Roamingnpm-cache_logs \ 2020-02-15T09_52_19_067Z-debug.log

Кажется, это было решено в последней версии Angular, в которой request заменено на node-fetch .

Я установил последнюю версию CLI. Он по-прежнему выдает то же предупреждение

npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142

@ vighnesh153 Какая версия @angular/cli указана в вашем package.json? Кажется, что некоторые зависимости нуждаются в запросе, но не в самом базовом пакете. См http://npm.anvaka.com/#/view/2d/ % 2540angular% 252Fcli

Возможно ты прав. Я не совсем уверен, какой из пакетов использует пакет запроса. Вот снимок депрессии:

"dependencies": {
    "@angular/animations": "~9.0.1",
    "@angular/common": "~9.0.1",
    "@angular/compiler": "~9.0.1",
    "@angular/core": "~9.0.1",
    "@angular/forms": "~9.0.1",
    "@angular/platform-browser": "~9.0.1",
    "@angular/platform-browser-dynamic": "~9.0.1",
    "@angular/router": "~9.0.1",
    "rxjs": "~6.5.4",
    "tslib": "^1.10.0",
    "zone.js": "~0.10.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.900.2",
    "@angular/cli": "~9.0.2",
    "@angular/compiler-cli": "~9.0.1",
    "@angular/language-service": "~9.0.1",
    "@types/node": "^12.11.1",
    "@types/jasmine": "~3.5.0",
    "@types/jasminewd2": "~2.0.3",
    "codelyzer": "^5.1.2",
    "jasmine-core": "~3.5.0",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~4.3.0",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage-istanbul-reporter": "~2.1.0",
    "karma-jasmine": "~2.0.1",
    "karma-jasmine-html-reporter": "^1.4.2",
    "protractor": "~5.4.3",
    "ts-node": "~8.3.0",
    "tslint": "~5.18.0",
    "typescript": "~3.7.5"
  }

npm install
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142

когда я хочу выполнить "npm install" в \ vue-devtools-dev, я предупреждаю об этом
как я могу это решить?

Я полностью уважаю ваше решение отказаться от него и желаю вам всего наилучшего в будущем.

Что касается людей, заходящих в ветку в поисках «так что же мне использовать с этого момента ??», то вам нужны got или axios .

Жалкий. Пора переходить на выборку узлов.

... кроме того, что вы сами задаетесь вопросом, является ли node-fetch хорошей заменой request или даже активно поддерживается. Действительно жалко.

https://github.com/node-fetch/node-fetch/issues/668#issuecomment -586903934

Кстати, людям, которые выбирают node-fetch действительно нужно быть осторожными. Эта библиотека, хотя и великолепна, сама по себе имеет серьезные проблемы с обслуживанием.

Жалкий. Пора переходить на выборку узлов.

... кроме того, что вы сами задаетесь вопросом, является ли node-fetch хорошей заменой request или даже активно поддерживается. Действительно жалко.

узел-выборка / узел-выборка # 668 (комментарий)

По крайней мере, выборка узлов не устарела. Жесткое прекращение поддержки запроса вызвало проблемы с системами автосборки. Я не понимаю и не принимаю этот шаг, и, на мой взгляд, простой заметки, объясняющей, что библиотека не поддерживается, было бы достаточно вместо жесткого отказа. Поэтому я считаю эту ситуацию жалкой.

на мой взгляд, простой заметки, объясняющей, что библиотека не поддерживается, будет достаточно

Это именно то, что означает уведомление об отказе от поддержки: простое примечание.

@asgetz все, что делает npm, это выводит это предупреждение при установке устаревшего пакета, все остальное работает точно так же, как и раньше.

У меня проблемы с файлами less.js, работающими на github. Они отлично работают в PHP. Когда я попытался ввести в команду меньше, выскочило это предупреждение. Есть идеи по поводу того, в чем проблема?

Screen Shot 2020-02-14 at 1 37 08 PM

Запрос @ljwestwhos помечен как устаревший, текст проблемы, которую вы комментируете, объясняет, что это означает. Однако, скорее всего, это не имеет ничего общего с вашей проблемой с less.js, поскольку запрос по-прежнему работает так же, как и раньше.

Есть ли замена для request , но с потоковым интерфейсом node.js? Я обнаружил, что оба node-fetch , axios основаны на Promise .

Я хотел бы узнать замену потокового интерфейса, который более удобен для случаев использования более низкого уровня.

@ maple3142 got имеет потоковый интерфейс (а также обещания) и руководство по миграции .

@asgetz

npm указывает мне, что я должен установить его сейчас.

Каким образом это указывает на это. Когда я устанавливаю request я просто получаю уведомление о прекращении поддержки, и все работает как раньше.

мое запланированное использование для этого так мало

В этом случае, возможно, взгляните на гнутый, который намного легче и, кажется, работает хорошо.

@mikeal, не могли бы вы взглянуть на https://github.com/request/request/pull/3245 proxyHeaderExclusiveList - одна из лучших функций в этом пакете, и она не работает должным образом.
Давайте исправим это!

@kauegimenes этот пакет устарел ... ничего больше не будет исправлено

@kevinvanrijn Я больше не принимаю активного участия в поддержке postman-request , но проект определенно жив, и последний выпуск был месяц назад. Тем не менее, я позволю активным сопровождающим вмешиваться в долгосрочные планы.

@czardoz Это хорошо. У меня есть куча небольших проектов (все частные) в зависимости от request , на переписывание которых я не могу тратить время. Добавление postman-request в качестве замены означает, что я могу положиться на их работу еще немного дольше.

cloudscraper также страдает от медленного обслуживания и, вероятно, пока не сможет перейти от request . Наличие postman-request в качестве опции означает, что он, по крайней мере, не подвергнется риску устаревания.

@ Edo78, почему ты так говоришь? Я все еще верю, что однажды мой пиар будет объединен 😆

Коммиттеры, которые все еще активны, будут пытаться своевременно объединить исправления, но никаких обещаний.

Кстати, людям, которые выбирают node-fetch, действительно нужно быть осторожными. Эта библиотека, хотя и великолепна, сама по себе имеет серьезные проблемы с обслуживанием.

@csvan Не могли бы вы немного объяснить? Я вижу только несколько проблем

Я очень мало знаю о npm. Я использовал его для установки API и получил несколько непонятных предупреждений. Они направляют меня сюда. Для меня это совершенно бесполезно. Кто-то должен опубликовать здесь что-то полезное для тех из нас, кто направлен сюда, или сообщение в npm следует исправить, чтобы оно было более полезным. Ниже приведены сообщения, которые я получил.

npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
npm WARN saveError ENOENT: нет такого файла или каталога, откройте 'C: \ Users \ Sam \ package.json'
npm notice создал файл блокировки как package-lock.json. Вы должны зафиксировать этот файл.
npm WARN enoent ENOENT: нет такого файла или каталога, откройте 'C: \ Users \ Sam \ package.json'
npm WARN Sam Нет описания
npm WARN Sam Нет поля репозитория.
npm WARN Sam Нет данных README
npm WARN Sam Нет лицензионного поля.

Также нет файла package.json, но есть package-lock.json. Понятия не имею, что там искать.

@SimpleSamples пакет является устаревшим и не будет активно поддерживаться, за исключением возможных исправлений ошибок, как ясно объясняется в тексте. NPM просто предупреждает вас, что вы используете устаревший пакет, чтобы у вас была возможность переключиться на что-то другое.

Если вы не понимаете, что означает отказ от поддержки, можно найти несколько полезных статей в поиске в Google.

Да, я понимаю, что означает устаревание, и поэтому ссылка на
обсуждение Прошлого, Настоящего и Будущего Запроса не дает никаких
уточнение, это только добавляет путаницы. Или есть что-то еще, что я делаю
не понимаете и не разъясняете? Если это только сказать, что
Запрос устарел, и это все, что ему нужно сказать, вместо
подразумевая, что мы должны сделать еще кое-что.

Было бы очень полезно, если бы в нем говорилось (ссылка на статью
объясняя), что его заменяет, или любое действие, о котором мы должны знать.

Кристофер Сванефальк [email protected]
Вторник, 18 февраля 2020 г., 22:45

@SimpleSamples https://github.com/SimpleSamples пакет
устарела и больше не будет получать обновления, так как текст
ясно объясняет. NPM просто предупреждает вас, что вы используете
устаревший пакет.

Если вы не понимаете, что означает устаревание, есть несколько
полезные статьи на расстоянии поисковой системы Google.

-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/request/request/issues/3142?email_source=notifications&email_token=ACK22R4G7LHULMPO6DHH273RDTIP7A5CNFSM4HCP6LRKYY3PNVWWK3TUL52-5DFVREXG43VWWK3TUL52-5DFVREXG43V2HS4DFVREXG43V2HS4DFVREXG43V2HS4DFVREXGWW
или отказаться от подписки
https://github.com/notifications/unsubscribe-auth/ACK22R7UFQSYKW7NEYZ4OTDRDTIP7ANCNFSM4HCP6LRA .

Если он только говорит, что Request устарел, то это все, что ему нужно сказать

Да, пошлите к черту любого, кто ценит контекст и любит знать причины решений или хочет узнать подробности о прекращении производства. :П
Если серьезно, если бы к предупреждению было добавлено «почему», разве это предотвратило бы ваше замешательство?

"npm WARN устарел [email protected] : request устарел, см. # 3142, почему "

Ты прав. Я не видел части «почему».

Эспен писал:

"почему"

@SimpleSamples извините, если я неправильно понял, но я искренне не вижу путаницы. Запрос устарел, и в тексте этого выпуска довольно четко объясняется, почему и что он подразумевает.

Откуда вы взяли, что вам нужно что-то делать? Устаревание - это только осуждение, как вы с этим справитесь, зависит от вас.

Нет ничего плохого в использовании запросов шаблонов. Напротив, в экосистеме javascript есть огромное сообщество, которое все еще использует эти шаблоны. По моему опыту, это гораздо большее сообщество, чем голосовое меньшинство (большинство крупных компаний), у которых есть ресурсы, чтобы постоянно разрушать идеально работающие кодовые базы только ради тщеславия и высокомерия разработчиков.

Мне очень жаль, что вы попали в эту ловушку, запрос оказал большую услугу сообществу, и я искренне надеюсь, что вы пересмотрите свое решение.

Да, мне грустно, что этого больше нет. Обратные вызовы - это неплохо, как и обещания или async await.

Я думаю, что вам не хватает @SimpleSamples, так это то, что остальные вставленные вами предупреждения не имеют ничего общего с предупреждением об устаревании, которое привело вас сюда. Вам не нужно ничего делать с устареванием, но вы можете что-то сделать с отсутствующим package.json (или чем-то еще, что вызывает эти другие предупреждения).

Итак, что мы должны делать сейчас со всеми теми пакетами, которые используют request под капотом?

Я попытался заменить request на @root/request в одном таком пакете, предполагая, что это действительно прямая замена, но я не мог заставить его работать .

Я также попытался заменить request чем-то вроде ...

const httprequest = require('http').request; const httpsrequest = require('https').request;

... а также...

const request = parsedUrl.protocol === 'http' ? httprequest : httpsrequest`

... но я тоже не мог заставить это работать.

Что теперь? В отсутствие заменяющей замены, которая действительно выполняет свои обещания, мы должны жить с множеством зависимостей в нашем node_modules которые полагаются на устаревший пакет, некоторые из которых, похоже, не работают. поддерживаться? И почему?

Я понимаю, что request устарели в нескольких аспектах, но, отказавшись от этого пакета без предложения подходящей замены, модули 41K теперь напрямую зависят от устаревшего пакета. Если мы рассмотрим пакеты, которые используют по крайней мере один из этих 41K модулей в качестве зависимости, мы можем говорить о сотнях тысяч, если не миллионах пакетов, которые затронуты.

Конечно, я предполагаю, что для некоторых пакетов легко заменить request чем-то вроде fetch , axios , superagent или собственного кода Node.js http.request & https.request . Но например. в случае, когда запросы передаются другому запросу (как в случае с html2canvas-proxy ), мне трудно понять, что, черт возьми, там происходит ... и я действительно не могу позволить себе тратить много часов, пытаясь заменить всего несколько строк устаревшего кода, в то время как я должен заниматься более важными вещами.

Мне всегда надоело слишком полагаться на множество взаимозависимых пакетов, которые загружаются в фоновом режиме с помощью диспетчера пакетов. Да, я полагаю, это может переложить большую часть тяжелой работы на третьи стороны, но вместо этого вы получите целую кучу других головных болей, с которыми придется иметь дело.

Менеджеры пакетов дают нам ложное чувство безопасности. Кажется, что весь

Но послушайте ... Я думаю, по крайней мере, это означает, что от разработчиков JS всегда будет требоваться очистка $% # @ беспорядка ...

@jslegers

Тем не менее, я чувствую, что должен подчеркнуть, что что-то серьезно не так, когда один устаревший или сломанный пакет может повлиять на миллионы пакетов во всей экосистеме.

Единственное, что не так, это паника, от которой страдаете вы и другие люди. leftpad ушел, удалил. Сейчас этого не может быть. Запрос просто устарел; это никуда не денется. Если он работает сейчас, он будет продолжать работать таким же образом.

Это не повлияет на миллионы пакетов, если вы не посчитаете безобидное предупреждение.

Я также пробовал заменить запрос на что-то вроде ...

Пожалуйста, перестаньте паниковать; пожалуйста, прекратите попытки исправить несуществующую проблему. Используйте любые пакеты, которые вам нравятся: устаревание запроса их не сломает. Постепенно сопровождающие их пакетов могут перейти на другой пакет. Или нет. Неважно. Ничего не изменилось, кроме появления одного маленького сообщения.

от разработчиков JS всегда будет требоваться навести порядок в $% # @ беспорядке ...

Никакого беспорядка. Просто прогресс.

Это не повлияет на миллионы пакетов, если вы не посчитаете безобидное предупреждение.

Устарело, например. Часть вашего API или библиотеки в основном означает, что вы официально называете ее «устаревшей» и активно поощряете пользователей выбирать что-то другое.

Устаревание обычно используется в качестве промежуточного этапа между официальной поддержкой чего-либо и официальным прекращением поддержки чего-либо, чтобы дать разработчикам время заменить то, что вы устарели, до тех пор, пока эта вещь не станет недоступной или не будет иметь обратную совместимость.

Предупреждения об устаревании должны заставлять вас нервничать. Они предназначены как призыв к действию. По сути, точка устаревания заключается в том, чтобы предложить разработчикам «льготный период», позволяющий им обновить свой код до того, как кто-то отключит его.

И их нельзя использовать ни для каких других целей. Устарение не должно просто информировать ваших пользователей о том, что «Наш API не соответствует последним стандартам кодирования» или «У меня больше нет времени на поддержку этого проекта» ... хотя библиотека довольно стабильна и красива. безопасно использовать в + 99% всех случаев использования и, вероятно, продолжит работать нормально, по крайней мере, в течение следующего десятилетия или около того. Это не то, что означает устаревание, и использование предупреждений об устаревании только для того, чтобы выразить подобное сообщение, создает очень плохой прецедент IMO.

Кроме того, просто уродливо иметь ваши журналы npm install полные предупреждений об устаревании. Смотрится неряшливо. Это своего рода красный флаг и создает плохое первое впечатление у людей, пробующих вашу библиотеку или фреймворк. Особенно, если люди действительно платят вам за использование вашей библиотеки / фреймворка, вы хотите дать им хороший / чистый процесс установки без предупреждений.

Ничего не изменилось, кроме появления одного маленького сообщения.

Это маленькое сообщение выглядит неряшливо и не имеет другой цели, кроме как призыв к действию ... призыв заменить устаревший пакет чем-то другим.

Возможно, это не имеет значения для вас, но определенно имеет значение для меня и других людей.

Никакого беспорядка. Просто прогресс.

Думаю, вы один из тех людей, которые не могут отличить перемены от прогресса.

В любом случае, я заметил, что другие в комментариях предлагали использовать postman-request . В отличие от @root/request , этот, похоже, работает как замена, поэтому я пока буду обновлять все свои пакеты этим ...

Я думаю, что вам не хватает @SimpleSamples, так это то, что остальные вставленные вами предупреждения не имеют ничего общего с предупреждением об устаревании, которое привело вас сюда. Вам не нужно ничего делать с устареванием, но вы можете что-то сделать с отсутствующим package.json (или чем-то еще, что вызывает эти другие предупреждения).

Туше!

Дело сделано, но личные нападки продолжаются. Вы, ребята, очень умны и обладаете высокими техническими возможностями, но в личном опыте есть куда расти.

Дело сделано, но личные нападки продолжаются. Вы, ребята, очень умны и обладаете высокими техническими возможностями, но в личном опыте есть куда расти.

К сожалению, умение не мешает людям позволять эмоциям затуманивать свои суждения ... особенно когда их вещи становятся устаревшими, по-видимому, без уважительной причины или общего консенсуса в отношении того, в чем цель устаревания.

Во всяком случае, я думаю, что высказал свою точку зрения довольно ясно. В заключение я хотел бы призвать @reconbot или любого другого сопровождающего этого проекта официально предложить postman-request в качестве полнофункциональной замены для request и, возможно, @root/request для тех, кому просто нужно ограниченное подмножество request и наплевать, например. потоки. Это позволяет любому сопровождающему пакета отказаться от request и избавиться от надоедливого сообщения об устаревании, не тратя больше нескольких минут времени на разработку для решения этой проблемы и без необходимости рефакторинга всей своей библиотеки или приложения.

@mikeal исходит из реальности того, что запрос устарел, я хотел бы попросить вас

Могу я попросить вас кратко рассказать о различиях, преимуществах и плюсах или минусах перехода на одну из этих замен по запросу по сравнению с другой. Я доверяю твоей работе.

Спасибо за это время, и позвольте мне сказать спасибо за годы работы модуля запросов.

-Рик

request-promise-native тоже устарело или это правильно?

[email protected] : запрос был продублирован .... невозможно создать новый проект

[email protected] : запрос был продублирован .... невозможно создать новый проект

Вы можете создать проект как всегда. NPM просто предупреждает вас.

Почему этот проект был удален?

Да это хорошо

Используется 4 476 352 репозиториями, 52 377 пакетами.
Попрощайтесь с легендой.

Почему этот проект был удален?

@jleppert нет, пожалуйста, прочтите вопрос, который вы комментируете.

Я попытался установить angular в Linux, а затем в Windows, и в обоих случаях я не смог, после выполнения команды npm install -g @ angular / cli @ latest в обоих появилась эта ошибка

C: \ Users \ Hanzell> npm install -g @ angular / cli @ latest
npm WARN устарел [email protected]: request устарел, см. https://github.com/request/request/issues/3142
C: \ Users \ Hanzell \ AppData \ Roamingnpm \ ng -> C: \ Users \ Hanzell \ AppData \ Roamingnpmnode_modules \ @angular \ cli \ bin \ ng

@ angular / [email protected] после установки C: \ Users \ Hanzell \ AppData \ Roamingnpmnode_modules \ @angular \ cli
узел ./bin/postinstall/script.js

  • @ угловой / [email protected]
    добавили 260 пакетов от 205 участников за 188.027 сек.

Затем я создал репозиторий, и это появилось

C: \ Users \ Hanzell \ Desktop> новый
? Какое имя вы хотели бы использовать для нового рабочего пространства и исходного проекта? Hola
? Хотите добавить маршрутизацию Angular? Нет
? Какой формат таблицы стилей вы хотите использовать? CSS
СОЗДАТЬ hola / angular.json (3551 байт)
СОЗДАТЬ hola / package.json (1281 байт)
СОЗДАТЬ hola / README.md (1021 байт)
СОЗДАТЬ hola / tsconfig.json (543 байта)
СОЗДАТЬ hola / tslint.json (1953 байта)
СОЗДАТЬ hola / .editorconfig (246 байт)
СОЗДАТЬ hola / .gitignore (631 байт)
СОЗДАТЬ hola / browserslist (429 байт)
СОЗДАТЬ hola / karma.conf.js (1016 байт)

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ Hanzell \ AppData \ Roamingnpm-cache_logs \ 2020-03-01T05_15_55_441Z-debug.log
× Не удалось установить пакет, см. Выше.
Сбой рабочего процесса схемы. См. Выше.
СОЗДАТЬ hola / src / assets / .gitkeep (0 байт

помощь!

@RiveraHan проблемы, которые у вас возникают, не связаны с устареванием request .

При этом мне было любопытно. Хотя я не использовал angular с тех пор, как появился JS, я попробовал. Обратите внимание, что я не хотел добавлять angular cli к своим глобальным модулям, поэтому я поступил немного иначе. Я тестировал следующее с npm 6.14.1 , node 12.16.1 и Debian GNU / Linux.

mkdir wrk-dir
cd wrk-dir
mkdir w1
cd w1
npm init -y
npm install @angular/cli --save-dev # this puts `ng` in `wrk-dir/w1/node_modules/.bin/ng`
cd ..
w1/node_modules/.bin/ng new my-app
cd my-app
../w1/node_modules/.bin/ng serve --open # browser will open with compiied results

Если вы устанавливаете angular cli глобально, просто удалите ../w1/node_modules/.bin/ и w1/node_modules/.bin/ сверху ng должны быть найдены глобально.

@millette Это не сработало в Linux ubuntu и Windows 10. Я впервые устанавливаю angular

@RiveraHan это не ошибка. это предупреждение npm. Если какая-либо настройка, которую вы используете, дает сбой при появлении предупреждений npm, вам необходимо проверить конфигурацию для этого.

@csvan Но при открытии нового проекта в моем редакторе кода я понял, что папка node_modules не отображается, и провел небольшое исследование, чтобы снова создать папку node_modules, и именно с помощью команды установки npm я делаю это, и то же самое появляется другая ошибка .

@RiveraHan: да, но опять же, это не имеет ничего общего с request или npm - предупреждения npm не прервут установку, если ваша среда разработки каким-либо образом не настроена для этого. Вам нужно выяснить, почему ваша среда не допускает предупреждений npm и что вы можете с этим сделать - если это даже проблема в вашем случае. Вполне могло быть что-то совершенно другое.

@ anton-bot, поэтому предложите взять на себя управление проектом и выполнить всю работу, на которую у текущих сопровождающих нет времени. Довольно высокомерно рассказывать другим, как вести свой проект, если вы не готовы приложить усилия для его реализации. Это открытый исходный код.

@mikeal довольно четко объяснил, почему request устарел. Это ответственный поступок, это хорошее решение, и вряд ли его можно будет отменить.

Также это:

Кроме того, реально люди не собираются заменять свой отлично работающий код, использующий запрос, чем-то другим. Посмотрите некоторые связанные запросы на вытягивание - это просто не идея, которую люди хотят делать.

Вот почему мы получаем мусорный устаревший код, который зависит от древних модулей, которые в свое время были «совершенно хорошим кодом». Часть поддержки программного обеспечения заключается в том, чтобы избавиться от старых и устаревших модулей, заменив их активно поддерживаемыми.

@ anton-bot Просто используйте @root/request который на 80% является реализацией request которая использует современные Node HTTP API под капотом.

@ anton-bot Вы явно упускаете несколько фактов из жизни:

  1. Это бесплатное программное обеспечение с открытым исходным кодом. Вы не имеете права говорить сопровождающим: «Просто остановите это».
  2. Срок действия запроса истек (хотя и не истек срок годности). Он стал увесистым и старомодным.
  3. @mikeal выпустил как минимум два новых пакета, заменяющих request. Оба они намного легче.
  4. Если вы и другие желаете и дальше использовать его, вы можете это сделать. Ничто в устаревшей версии не мешает вам это сделать.

Лично я воспользовался возможностью постепенно обновлять свои пакеты. kraken-exchange , например, снизился с 5,9 МБ до 284 КБ за счет перехода на бент .

@csvan сказал, что вы "довольно высокомерны". Это более вежливая фраза, чем я бы сказал.

@ anton-bot Просто используйте @ root / request, который на 80% соответствует реализации запроса, который использует современные Node HTTP API под капотом.

Соответствие 80% недостаточно.

Я использую зависимости, которые зависят от недостающих 20% (например, потоки). Для этого вам понадобится полнофункциональная замена, например postman-request .

В предыдущем комментарии (который, похоже, был подвергнут цензуре / удалению) я предположил, что сопровождающие передали свой проект команде Postman, чтобы они могли заменить реализацию request реализацией postman-request , поскольку этот пакет все еще активно поддерживается, имеет полную функциональность и исправляет некоторые ошибки, которые никогда не исправлялись в request .

Таким образом, первоначальные авторы request могли сделать шаг назад и насладиться своей заслуженной «пенсией», не пугая и не раздражая уйму людей, излишне осуждая request .

Это бесплатное программное обеспечение с открытым исходным кодом. Вы не имеете права говорить сопровождающим: «Просто остановите это».

Конечно, знает. И так же, как Сопровождающие имеют право сказать «е * вас».

Срок действия запроса истек (хотя и не истек срок годности). Он стал увесистым и старомодным.

Все еще не веская причина отказаться от этого.

@mikeal выпустил как минимум два новых пакета, заменяющих request. Оба они намного легче.

Так?

Тысячи пакетов все еще используют request сегодня и теперь без необходимости выдают предупреждения об устаревании в течение npm install . Этого не должно было произойти и легко можно было бы предотвратить, например. передать факел команде Почтальона или просто позволить этому проекту умереть мирно.

Если вы и другие желаете и дальше использовать его, вы можете это сделать. Ничто в устаревшей версии не мешает вам это сделать.

Конечно, есть.

Клиенты, которые нервничают, когда видят предупреждения об устаревании во время npm install мешают многим из нас просто сидеть и ничего не делать.

Устаревание = призыв к действию. По сути, это дает людям льготный период для замены своих зависимостей, пока они не сломаются. Его не следует использовать ни в каком другом случае, кроме случаев, когда ожидается, что зависимости нарушат существующую функциональность после окончания льготного периода.

Лично я воспользовался возможностью постепенно обновлять свои пакеты. kraken-exchange, например, снизился с 5,9 МБ до 284 КБ, перейдя на бент.

Я попытался заменить некоторые из наших зависимостей внутренними / настроенными локальными версиями этих пакетов и заменил request на request-postman чтобы избавиться от предупреждений об устаревании. Это казалось простым исправлением, которое позже позволит нам постепенно заменять request-postman более легкой альтернативой.

Затем я узнал, что NPM невероятно ошибочен в отношении обработки локальных пакетов, которые сами полагаются на локальные пакеты, что сделало нашу среду значительно менее стабильной. На самом деле он открыл целую банку червей, поэтому мне пришлось отменить свои изменения и вернуться к request , так как это просто не стоило времени и усилий, чтобы попытаться исправить эту проблему на этом момент времени.

На данный момент я не вижу другой альтернативы, кроме как жить с предупреждениями об устаревании, поскольку мы просто используем слишком много зависимостей, которые имеют request в качестве самих зависимостей, чтобы избавиться от них, но с очень небольшой головной болью. Это прискорбно, и ИМО никогда не должно было случиться!

@csvan сказал, что вы "довольно высокомерны". Это более вежливая фраза, чем я бы сказал.

Кто вы такие, чтобы называть человека «высокомерным» или того хуже, только потому, что не понимаете, почему предупреждения об устаревании имеют значение для них и их проектов ?!

Что я считаю высокомерным, так это просто осуждать проект, от которого зависят миллионы других проектов без какой-либо веской причины, вместо того, чтобы искать другого сопровождающего, который бы взял на себя все у вас. И учитывая, что у команды Postman уже есть полнофункциональный форк request который активно поддерживается, я не могу представить, что было бы очень сложно убедить их сделать это.

Какова ваша оценка в миллионах долларов США всемирной стоимости решения об отказе от request ?

Нуль. Он работает так же хорошо, как и раньше. Лучше просто не станет.

Нуль. Он работает так же хорошо, как и раньше. Лучше просто не станет.

Фигня!

Если вы считаете, что предупреждения об устаревании не влияют на проекты, которые от них зависят, вы не имеете ни малейшего представления о том, что влечет за собой устаревание и для чего предназначены эти сообщения!

Устаревание заставляет многих людей нервничать, и на то есть веские причины. Вот что должно делать устаревание!

Ах, тогда нет проблем. Мои предварительные расчеты составляют примерно 30 миллионов долларов США, но я думаю, что ошибался.

30 миллионов долларов для меня звучат как очень низкая оценка, учитывая, сколько пакетов прямо или косвенно зависит от этого проекта!

Я поражен и поражен тем, сколько людей здесь думают, что имеют право на свободные программы.

Я поражен и поражен тем, сколько людей здесь думают, что имеют право на свободные программы.

Я поражен и поражен тем, сколько людей думают, что они не несут никакой ответственности за то, как их действия влияют на их пользователей только потому, что их продукты являются бесплатными или с открытым исходным кодом.

ИМО, это вопрос базового уважения - относиться к своим пользователям / клиентам независимо от того, платят ли они за использование вашего приложения / библиотеки или не платят.

Вы бы когда-нибудь осуждали проект, используемый миллионами других проектов в качестве зависимости, если бы люди платили за него, если у вас не было действительно, действительно, действительно веской причины для этого (например, сбой зависимых проектов, если люди не предпринимают каких-либо действий в время)?

@jslegers Точно моя точка зрения. Так озаглавлен! Удивительный!

@jslegers Точно моя точка зрения. Так озаглавлен! Удивительный!

Горшок...

Чайник...

Я не могу придумать ничего более правомерного, чем утверждать, что пользователи тем или иным образом «в долгу» перед вами за предоставление им программного обеспечения с открытым исходным кодом, и что они должны чувствовать себя «польщенными» или «благодарными» вам и, следовательно, не имеют права жаловаться ни на что. когда ваши действия напрямую влияют на их проекты.

Несомненно, поддержка проекта с открытым исходным кодом в течение многих лет требует много тяжелой работы и самоотверженности. Конечно, есть чем восхищаться, когда люди готовы заниматься этим в свободное время без какой-либо финансовой компенсации. Но это все еще не оправдание для того, чтобы действовать с полным правом и оставлять ваших пользователей в покое, когда они больше всего в вас нуждаются, и есть несколько альтернатив, не требующих усилий!

@CliffS

Лично я воспользовался возможностью постепенно обновлять свои пакеты. kraken-exchange, например, снизился с 5,9 МБ до 284 КБ, перейдя на бент.

Я только что посмотрел, и package.json все еще ссылается на версию запроса 2,88.0

Я только что посмотрел, и package.json все еще ссылается на версию запроса 2,88.0

@JonathanRowell Да. В настоящее время он тестируется, прежде чем продвигать его до npm. Версия v1.9.0 будет там до конца дня.

Но это все еще не оправдание для того, чтобы действовать с полным правом и оставлять ваших пользователей в покое, когда они больше всего в вас нуждаются, и есть несколько альтернатив, не требующих усилий!

Именно поэтому у нас есть такие люди, как @jslegers, которые готовы

Ой, подожди.

Именно поэтому у нас есть такие люди, как @jslegers, которые готовы

Неправильный!

Вот почему у нас есть дружелюбные ребята из команды Postman , у которых уже есть свой собственный форк request именем postman-request , который может служить полноценной заменой для request и который активно поддерживается! Здравый смысл альтернативы устареванию request - попросить их взять на себя обслуживание request .

В случае, если люди Postman откажутся по какой-либо причине, request все равно может официально рекомендовать postman-request в качестве полнофункциональной замены в предупреждении об устаревании, чтобы предотвратить ненужную трату ресурсов сотнями - из не тысяч - разработчиков, которые самостоятельно ищут такую ​​замену.

В качестве альтернативы вы можете просто объявить об официальном прекращении обслуживания / поддержки request и позволить ему умереть медленно и мирно без предупреждения об устаревании, поскольку на самом деле нет необходимости отказываться от поддержки ИЛИ продолжать обслуживание пакета, который работает отлично и не является не собираюсь ломаться в ближайшее время.

Любой из этих трех подходов будет бесконечно лучше, чем текущий, и не потребует дополнительных ресурсов с какой-либо стороны.

Я не думаю, что споры о том, соответствует ли тот или другой их ожиданиям, конструктивны и не помогут решить существующие проблемы. Мы все берем, отдаем и сотрудничаем друг с другом в надежде, что с собственными проблемами можно будет справиться легче, но никто не может заставить другого действовать против своей воли.

Я считаю, что факты таковы: а) текущий владелец больше не хочет продвигать проект вперед (это совершенно понятно), но также и то, что б) многие люди испытывают сильную боль из-за предупреждения об устаревании, поскольку миграция с него не будет в большинстве случаев происходит немедленно (что тоже вполне понятно).

Поэтому мне кажется, что разумным компромиссом было бы, подобно тому, что предлагает @jslegers , чтобы право собственности на проект было передано кому-то заинтересованному и желающему его принять, удалить предупреждение об устаревании на данный момент и управлять процессом устаревания таким образом, чтобы мягче по отношению к тем, кто пострадал от переезда.

Итак, @mikeal , вы готовы передать право собственности на проект кому-то другому?

И готов ли кто-нибудь еще воспользоваться этим у Майкаля, чтобы решить проблему, с которой люди сталкиваются с вынесенным предупреждением?

Помимо сотрудничества по передаче права собственности на проект, никто из нас не может говорить за других, говоря им сделать то или это; можно говорить только за себя.

Еще один факт, о котором нечасто упоминалось в этой беседе, - это влияние на безопасность передачи права собственности на столь популярный пакет. у нас были недавние инциденты, когда передача права собственности была совершена злоумышленником и приводила к злонамеренным действиям в новых версиях пакета. такие популярные пакеты, как этот, являются отличной мишенью для такого типа актеров.

Я не буду комментировать надежность какой-либо конкретной команды, которая может взять на себя ответственность, но важно осознавать, насколько на самом деле рискованно такое предложение. отказ от этого пакета не препятствует тому, чтобы вилки продолжали поддерживать этот пакет под другим именем, но изменение имени позволяет потребителю принять решение о потреблении этой вилки, вместо того, чтобы это происходило автоматически, без возможности оценить риск для своего проекта.

Еще один факт, о котором нечасто упоминалось в этой беседе, - это влияние на безопасность передачи права собственности на столь популярный пакет. у нас были недавние инциденты, когда передача права собственности была совершена злоумышленником и приводила к злонамеренным действиям в новых версиях пакета. такие популярные пакеты, как этот, являются отличной мишенью для такого типа актеров.

Очевидно, что нельзя просто передать право собственности кому-либо. Но команда Postman выглядит логичным выбором, потому что ...

  • У них есть репутация, которую нужно защищать, и поэтому они не могут позволить себе навредить проекту request , внедрив в проект вредоносный код.
  • В качестве платформы для разработки и тестирования API, они могут стать официальным сопровождающим очень популярного пакета NPM, используемого многими их потенциальными клиентами, и стать для них маркетинговой победой.
  • Поскольку у них уже есть собственный форк request , он не требует от них дополнительных ресурсов. Они могли просто объединить свою вилку в request и переместить ресурсы из своей собственной вилки (которая больше не понадобится) в официальное request

Очевидно, нет никакой гарантии, что они примут. Но если бы у них был здравый смысл, они бы тут же ухватились за это. Так что, если сопровождающий за request уже не пытался связаться с ними и не может подтвердить, что они действительно отклонили это предложение, это определенно стоит попробовать, ИМО!

на самом деле нет необходимости отказываться от рекомендаций ИЛИ продолжать обслуживание пакета, который отлично работает и не собирается ломаться в ближайшем будущем.

Это так назад, я даже не знаю, с чего начать. То, что пакет не обслуживается и от него рекомендуется отказаться, является основной причиной отказа от поддержки.
Владелец сообщает вам, что вы накапливаете технический долг, используя его, чтобы вы могли двигаться дальше. Самое замечательное в официальном отказе от поддержки через npm заключается в том, что людям дают четкое указание на это, вместо того, чтобы обнаруживать это через годы (в вашем сценарии «пусть умирает медленно»), когда, вероятно, уже слишком поздно рассмотрите возможность плавной миграции.

Широко используемые и впоследствии брошенные пакеты мирно не умирают. Они умирают, когда люди, использующие их, начинают в панике удаляться после того, как их неподдерживаемое состояние фактически приводит к взламыванию вещей и открытию дыр в безопасности.

Признайтесь, ни вы, ни я, вероятно, не знали бы состояние запроса без уведомления об устаревании. И подавляющее большинство пользователей тоже.

Я попытался установить angular в Linux, а затем в Windows, и в обоих случаях я не смог, после выполнения команды npm install -g @ angular / cli @ latest в обоих появилась эта ошибка

C: \ Users \ Hanzell> npm install -g @ angular / cli @ latest
npm WARN устарел [email protected]: request устарел, см. # 3142
C: \ Users \ Hanzell \ AppData \ Roamingnpm \ ng -> C: \ Users \ Hanzell \ AppData \ Roamingnpmnode_modules @ angular \ cli \ bin \ ng

@ angular / [email protected] после установки C: \ Users \ Hanzell \ AppData \ Roamingnpmnode_modules @ angular \ cli
узел ./bin/postinstall/script.js

  • @ угловой / [email protected]
    добавили 260 пакетов от 205 участников за 188.027 сек.

Затем я создал репозиторий, и это появилось

C: \ Users \ Hanzell \ Desktop> новый
? Какое имя вы хотели бы использовать для нового рабочего пространства и исходного проекта? Hola
? Хотите добавить маршрутизацию Angular? Нет
? Какой формат таблицы стилей вы хотите использовать? CSS
СОЗДАТЬ hola / angular.json (3551 байт)
СОЗДАТЬ hola / package.json (1281 байт)
СОЗДАТЬ hola / README.md (1021 байт)
СОЗДАТЬ hola / tsconfig.json (543 байта)
СОЗДАТЬ hola / tslint.json (1953 байта)
СОЗДАТЬ hola / .editorconfig (246 байт)
СОЗДАТЬ hola / .gitignore (631 байт)
СОЗДАТЬ hola / browserslist (429 байт)
СОЗДАТЬ hola / karma.conf.js (1016 байт)

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ Hanzell \ AppData \ Roamingnpm-cache_logs \ 2020-03-01T05_15_55_441Z-debug.log
× Не удалось установить пакет, см. Выше.
Сбой рабочего процесса схемы. См. Выше.
СОЗДАТЬ hola / src / assets / .gitkeep (0 байт

помощь!

Проверьте обновление npm, а затем установите npm в проект angular

Это так назад, я даже не знаю, с чего начать. То, что пакет не обслуживается и от него рекомендуется отказаться, является основной причиной отказа от поддержки.

То, что пакет не обслуживается и ТРЕБУЕТ быть удаленным до окончания льготного периода, является точкой исключения.

Если нет необходимости переезжать до определенного момента времени, вы не должны отказываться от рекомендаций ... по крайней мере, если вы не можете предложить замену (например, postman-request в этом случае)!

Разница может быть незначительной, но последствия значительны. Вы тратите ресурсы, возможно, многих тысяч компаний без уважительной причины, отказываясь от поддержки, чего можно было бы избежать, просто прекратив обслуживание и оставив все как есть!

Еще один факт, о котором нечасто упоминалось в этой беседе, - это влияние на безопасность передачи права собственности на столь популярный пакет. у нас были недавние инциденты, когда передача права собственности была совершена злоумышленником и приводила к злонамеренным действиям в новых версиях пакета. такие популярные пакеты, как этот, являются отличной мишенью для такого типа актеров.

... отказ от этого пакета не мешает форкам продолжать поддерживать этот пакет под другим именем

Справедливо; Я полагаю, мы можем немного подождать, чтобы получить новости от людей почтальона и оценить, жизнеспособен ли перевод им; но в остальном вилки - это путь вперед.

Нет, вы не теряете время зря, давая понять, что одна из их зависимостей теперь заброшена и почти наверняка является источником технического долга. Верно как раз противоположное, и вся дискуссия по этому вопросу является доказательством этого - обсуждения, которое, скорее всего, не произошло бы в ближайшее время без прекращения поддержки.

Нет, вы не теряете время зря, давая понять, что одна из их зависимостей теперь заброшена и почти наверняка является источником технического долга.

Просто потому, что проект заброшен, это не значит, что его нужно заменить чем-то другим.

Особенно для проектов, которые используют несколько зависимостей, которые все используют request в качестве зависимости, потенциальный выигрыш от попытки заменить request чем-то еще даже близко не приближается к усилиям, необходимым для достижения этой цели. !

обсуждение, которое, скорее всего, не произошло бы в ближайшее время без прекращения поддержки.

В этом обсуждении не было бы необходимости без устаревания.

Да, в какой-то момент, с осуждением или без него. Этого момента всегда лучше достичь раньше, чем через несколько лет, когда начинают ощущаться эффекты неподдерживаемого пакета.

В любом случае, я отказываюсь от этого. Повеселись.

«Все изменчиво, все появляется и исчезает; нет блаженного покоя, пока человек не выйдет за пределы агонии жизни и смерти ».

- Гаутама Будда

@mikeal Ты

Прежде чем вдаваться в детали и рассуждения, я сразу перейду к сути. Самое ценное, что request может сделать для экосистемы JavaScript, - это перейти в режим обслуживания и перестать рассматривать новые функции или основные выпуски.

Заранее извиняюсь перед другими коммиттерами request , которые изо всех сил старались его улучшить, но это к лучшему.

2009 г.

Первая версия request была одним из первых модулей, когда-либо созданных для экосистемы Node.js. Самые ранние версии были написаны для API, которые предшествовали стандартному интерфейсу обратного вызова, потокам, node_modules и npm. Первые несколько лет request и Node.js развивались вместе, каждый учился у другого. Поскольку Node.js улучшал и переносил основные интерфейсы, то и запрос. Поскольку запрос принял изменения в основной http-библиотеке и потоках, он также сообщил об улучшениях, таких как событие pipe (которое включило однострочный прокси request ) и одну из многочисленных перезаписей Core http ( один мне пришлось написать).

npm

request был одним из первых модулей, добавленных в реестр npm. По мере роста npm росла и зависимость от request . Даже сейчас, когда npm используется гораздо больше для интерфейсной части, чем для внутренней работы, request остается одним из наиболее зависимых от модулей в реестре. На момент написания этой статьи 41К модулей зависят от запроса, и он загружается 14 миллионов раз в неделю.

Место, которое request занимает в экосистеме Node.js, - это уже не новатор, а действующий игрок. Если вы используете Google, чтобы узнать, как что-то сделать с HTTP в Node.js, в примерах, скорее всего, будет отображаться request в качестве клиента и express в качестве сервера. Это имеет два особенно плохих эффекта.

Новым библиотекам, выполняющим аналогичные задачи, гораздо труднее получить признание из-за того, что request занимает доминирующее положение над экосистемой. Также очень сложно изменить запрос каким-либо значимым образом, поскольку изменение не только не может быть принято большинством его иждивенцев, но и приведет к несогласованию его с тысячами сообщений в блогах и ответами на переполнение стека, которые используют request .

Современный JavaScript

Последние несколько лет для JavaScript были драматичными. Функции, о которых люди говорили в течение многих лет, перешли от идей к стандартам и к функциям, на которые можно надежно положиться в большинстве сред. Скорость, с которой они были приняты, ошеломляет, в основном благодаря автоматическому обновлению браузеров и агрессивному графику выпуска Node.js.

Шаблоны, лежащие в основе request , устарели. Некоторые люди могут поспорить с этой оценкой, и я знаю, кто они, поэтому не удивлюсь, но это правда. Я часто скептически относился к влиянию некоторых из этих функций только потому, что обнаружил, что принимаю их оптом вскоре после того, как они будут доступны только в последней версии Node.js.

Сейчас в экосистеме происходит переход к этим паттернам. Насколько это будет беспорядочно, все еще витает в воздухе, и я не собираюсь пытаться читать чайные листы и выяснять, как выглядит будущее в этом отношении. Вопрос для request : «Пытаемся ли мы пережить этот переход?» Год назад я думал, что ответ очевиден и что мы сделаем, но теперь я убежден в обратном.

Версия request написанная с целью по-настоящему охватить эти новые языковые шаблоны, по сути, является новым модулем. Я уже немного исследовал request всеми возможными способами. Какое значение имеет версия request , несовместимая со старыми шаблонами, но не полностью охватывающая новые? Какой смысл в частичной совместимости, когда существует целый мир новых модулей, написанных новыми разработчиками, которые переосмысливают эти проблемы с учетом этих шаблонов?

Лучше всего для этих новых модулей, чтобы request медленно исчезли, в конечном итоге превратившись в просто еще одну память этого устаревшего стека. Занять положение, которое сейчас занимает request , и использовать его для большей доли разработчиков следующего поколения было бы медвежьей услугой для этих разработчиков, поскольку это оттолкнуло бы их от лучших модулей, которые не имеют бремени request История

Режим технического обслуживания

Вот план.

  • request перестанет принимать новые функции.
  • request перестанет рассматривать критические изменения.
  • Коммиттеры, которые все еще активны, будут пытаться своевременно объединить исправления, но никаких обещаний.
  • Релизы будут полностью автоматизированы, любое слияние с мастером будет опубликовано. Я уже создал это для некоторых других проектов с помощью GitHub Actions .

    • Нам придется удалить неактивных соавторов и применить 2fa, потому что права на фиксацию фактически станут правами публикации npm.

Что будет, если мы просто удалим его? эти зависимости - убийца!

@grikard Я согласен с этим - хороший анализ. Но не желая казаться банальным - это настоящий вопрос - пишут ли американцы множественное число от слова «лист» как «листья»? Я давал "листья".

листья во множественном числе для листа :)

Установка пакетов ... npm WARN устаревший [email protected] : запрос устарел, см. Https://github.com/request/request/issues/3142
если кто-то еще пойдет сюда, потому что у вас есть ошибка о
ng new my-app
Попробуйте снова
sudo ng new my-app
счастливого взлома

Привет Как исправить эту ошибку? https://github.com/request/request/issues/3142

Привет Как исправить эту ошибку? # 3142

Какая ошибка?

https://github.com/request/request/issues/3142

11 марта 2020 г., среда, 20:23 Cliff Stanford [email protected]
написал:

Привет Как исправить эту ошибку? # 3142
https://github.com/request/request/issues/3142

Какая ошибка?

-
Вы получили это, потому что прокомментировали.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/request/request/issues/3142#issuecomment-597602350 ,
или отказаться от подписки
https://github.com/notifications/unsubscribe-auth/AN6OSLTSIY5LZVUEOX3JWHDRG57FNANCNFSM4HCP6LRA
.

Я не могу завершить свой проект из-за этого ... и он должен быть выполнен сегодня вечером. Может ли кто-нибудь помочь с решением этой проблемы в запросе ??

@AELDREI Это не ошибка. Устарение - это просто предупреждение / информация, все по-прежнему работает.
@ valentina-js «Это» - просто предупреждение / информация, поэтому оно не может быть причиной того, что вы не можете завершить свой проект. Если у вас есть проблема, значит, у нее должна быть другая причина. Попробуйте найти фактическое сообщение об ошибке и посмотрите, не сообщалось ли о подобной проблеме. Если нет, откройте один и подробно опишите вашу ошибку.

О нет. В этом не было необходимости. Рвать

Новый Мерч

Screenshot_2020-03-12_16-58-39

3sei8v

npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142

Пожалуйста, решите это! Не знаю, что делаю не так:

npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
npm WARN checkPermissions Отсутствует доступ на запись в / usr / local / lib / node_modules
npm ERR! код EACCES
npm ERR! доступ к системному вызову
npm ERR! путь / usr / local / lib / node_modules
npm ERR! errno -13
npm ERR! Ошибка: EACCES: доступ запрещен, доступ '/ usr / local / lib / node_modules'
npm ERR! [Ошибка: EACCES: доступ запрещен, доступ '/ usr / local / lib / node_modules'] {
npm ERR! стек: «Ошибка: EACCES: доступ запрещен, доступ '/ usr / local / lib / node_modules'»,
npm ERR! номер ошибки: -13,
npm ERR! код: 'EACCES',
npm ERR! системный вызов: 'доступ',
npm ERR! путь: '/ usr / local / lib / node_modules'
npm ERR! }
npm ERR!
npm ERR! Операция была отклонена вашей операционной системой.
npm ERR! Скорее всего, у вас нет прав доступа к этому файлу в качестве текущего пользователя.
npm ERR!
npm ERR! Если вы считаете, что это может быть проблема с разрешениями, дважды проверьте
npm ERR! разрешения файла и содержащих его каталогов, или попробуйте запустить
npm ERR! команду снова как root / Administrator.

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! /Users/Hazem/.npm/_logs/2020-03-15T16_16_03_301Z-debug.log

@hazembergg NPM не имеет доступа на запись к node_modules. Нет ничего плохого в том, что request блокирует npm install . Попробуйте запустить его с помощью sudo .

Спасибо за быстрый ответ, это сработало как шарм!

Так что я думаю, что схожу с ума! Я должен был прочитать README не менее 20 раз. Вся эта программа превосходит мои базовые знания html ...

_Как получить комментарии на YouTube? _
Я запускаю youtube-comment-scraper в узле? базовый терминал? или командование?
ответ узла ...
ответ терминала - заголовок меняется, но ничего не происходит

_Что делать, если я хочу получить файл CSV? _
это команда: youtube-comment-scraper --outputFile youtubecomments.csv --stdout --format csv верный?

_Ballpark, сколько времени потребуется, чтобы запустить программу, чтобы получить, скажем, тысячу комментариев? _

@hazembergg Оба. См. Https://www.npmjs.com/package/youtube-comment-scraper#usage для использования командной строки и https://www.npmjs.com/package/youtube-comment-scraper#method для программного использования. Вы также можете запустить npx youtube-comment-scraper с установленным Node.js в командной строке для доступа к CLI.

@Richienb Еще раз спасибо за информацию! Я буду их изучать и надеюсь, у меня все получится!

Да вроде все что-то не так делают. Мне сказали, что решение отказаться от request будет нулевым.

Нет нулевой стоимости!

У меня проблема с созданием туннеля для соуса.
Используя следующий соус.
npm install -g wdio-соус-сервис
25hnpm WARN устарел [email protected] : request устарел, см. Https://github.com/request/request/issues/3142
25ч

соус[email protected] postinstall / usr / local / lib / node_modules / wdio -auce-service / node_modules / соуса-подключения-запуска
скрипты узла / install.js || скрипты nodejs / install.js

+ [email protected]

Получение указанной ниже ошибки при попытке создать туннель для соуса.
Не удалось запустить Sauce Connect. Сигнал кода выхода 1: нуль
Ошибка службы в обработчике onPrepare
Ошибка: не удалось запустить Sauce Connect. Сигнал кода выхода 1: нуль
в ChildProcess.(/usr/local/lib/node_modules/wdio-sauce-service/node_modules/sauce-connect-launcher/lib/sauce-connect-launcher.js:566:12)
в ChildProcess.emit (events.js: 198: 13)
в ChildProcess.EventEmitter.emit (domain.js: 448: 20)
в Process.ChildProcess._handle.onexit (внутренний / child_process.js: 248: 12)

Пожалуйста, будьте вежливы и не задавайте серьезных вопросов. Только мемы про request .

@ anton-bot отпусти и продолжай жить своей жизнью.

Пожалуйста, будьте вежливы и не задавайте серьезных вопросов. Только мемы про request .

@ anton-bot отпусти и продолжай жить своей жизнью.

Let it go

Вернемся к серьезному: теперь, когда request "официально" устарело через npm deprecate , теперь _every_ одиночный пользователь восходящего потока получает новые предупреждения об этом.

Можем ли мы подумать об этом на мгновение? Думаю, это вызвало неоправданную панику. Не только это, но и автоматические системы, которые фиксируют свои журналы, теперь ссылаются на эту проблему b / c ключа проблемы в предупреждении об устаревании.

Я согласен с тем, что request морально устарело, но если он по-прежнему работает нормально и имеет сотни зависимостей с различными уровнями обслуживания, возможно, он не должен быть официально объявлен устаревшим в npm, а скорее big ol 'предупреждение максимальным шрифтом в README?

И вот однажды каждый из этих пользователей скажет: «Почему нас не предупредили об этом !?» 😄

но если он по-прежнему работает нормально и имеет сотни зависимостей с различными уровнями обслуживания, возможно, он не должен быть официально объявлен устаревшим в npm, а скорее должен быть большим старым предупреждением с максимальным шрифтом в README?

Проблема в том, что по сути _ никто_ их не читает. 99% людей, испытывающих панику, никогда бы даже не узнали, что запрос устарел, если бы NPM не предупредил их об этом. _Nobody_ сидит и прочесывает README _все_ свои зависимости, чтобы выяснить, какие из них больше не поддерживаются - пока не станет слишком поздно.

Я повторяю себя, но сценарий, который вы предлагаете, по сути означает, что люди вместо этого узнают на собственном опыте, что запрос устарел - когда он в конечном итоге начинает ломать вещи и вызывать дыры в безопасности из-за того, что он является старым, не обслуживаемым депом в современной среде. Когда это произойдет, людям вместо этого нужно будет _скремблировать_ в поисках альтернативы, вместо того, чтобы иметь возможность - как сейчас - искать ее, пока запрос все еще стабилен и пригоден для использования, что, вероятно, займет по крайней мере еще год.

Запрос на устаревание был ответственным делом, и он не будет отменен. Сообщество должно сосредоточить свои усилия на согласовании хорошей альтернативы и / или форка, а не пытаться отменить это. Двигаться дальше.

ПРЕДУПРЕЖДЕНИЕ устаревшее [email protected] : запрос устарел, см. Https://github.com/request/request/issues/3142 .
Как я могу исправить эту ошибку?

@mrmehi Не могли бы вы прочитать здесь самое первое сообщение?

Это не ошибка. Либо вы напрямую зависите от запроса (а затем вам следует перейти в другую библиотеку, например got или bent ), либо вы транзитивно зависите от него через одну из своих зависимостей - затем либо обновите его, если они уже перешли, или пингуют их, чтобы двигаться дальше.

@kibertoad Я действительно запуталась, что мне теперь делать?
такое случается, когда я пытаюсь скачать expo.io

@kibertoad Я действительно запуталась, что мне теперь делать?
такое случается, когда я пытаюсь скачать expo.io

Вам не нужно ничего делать. Это не ошибка, это предупреждение. Это то, что указывает часть журнала «WARN».
Вы _ можете_ сообщить expo.io, что они могут захотеть начать поиск альтернатив request , потому что он устарел и, таким образом, однажды может перестать работать должным образом.
Но они, кажется, уже знают об этом, как вы можете видеть здесь:
https://github.com/expo/expo-cli/issues/1659

Microsoft по-прежнему полагается на этот пакет. appcenter-cli выдает это предупреждение об устаревании при установке:

npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142

Учитывая послужной список команды AppCenter, маловероятно, что в ближайшее время это изменится. Наши журналы сборки полны предупреждений о пакетах, которые в некоторых случаях были объявлены устаревшими более года назад.

Пожалуйста, кто-нибудь может мне помочь. Я столкнулся с трудностями при установке expo-cli --global.
Я установил узел, git. Я пишу команду как npm install expo-cli --global, но сталкиваюсь с проблемой как:
"npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
[..................] | fetchMetadata: WARN устаревший [email protected] : request устарел, см. https://github.com/request/request/issues/3142 "".
что я получаю эту ошибку. любезно ответьте мне, как решить эту проблему.

@mrmehi Не могли бы вы прочитать здесь самое первое сообщение?

Это не ошибка. Либо вы напрямую зависите от запроса (а затем вам следует перейти в другую библиотеку, например got или bent ), либо вы транзитивно зависите от него через одну из своих зависимостей - затем либо обновите его, если они уже перешли, или пингуют их, чтобы двигаться дальше.

пожалуйста, помогите мне решить эту проблему? я столкнулся с проблемой.

@lemessur Оказывается, сопровождающие просто не знали, что запрос устарел. См. Https://github.com/microsoft/appcenter-cli/pull/758#issuecomment -603667106

Кто-нибудь, пожалуйста, поместите это в начало основного комментария к проблеме:

Уведомление об устаревании

Если при попытке установить зависимости вы получаете WARN deprecated [email protected]: request has been deprecated, see #3142 , будьте уверены, что это НЕ ошибка. Автору пакета, который вы устанавливаете (или вам, если вы зависите от request ), необходимо перейти в другую библиотеку. См. Https://github.com/request/request/issues/3143

@Richienb
См. # 3142 (комментарий)

Итак, что мне теперь делать. пожалуйста, помогите мне решить эту проблему?

@Richienb
См. # 3142 (комментарий)

Я новичок в github и не мог понять, что делать. Подскажите, пожалуйста, шаг за шагом, как я могу решить свою проблему? ищу вашего быстрого ответа.

@alijatoi expo-cli использует request поэтому его зависимость должна быть изменена.

@Richienb Так что мне теперь делать? следует ли мне подождать или есть другой способ установить expo-cli.
пожалуйста, помогите мне, я жду.
Спасибо

@alijatoi Создайте вопрос и / или подождите.

@Richienb спасибо за ваш ответ.
нет другого способа установить expo cli?

@alijatoi нет

ребята, если вы столкнулись с проблемами, установите expo-cli с помощью npm из-за устаревшего сообщения: установите пряжу, затем пряжу установите expo-cli

@ caio-vinicius Это работает только потому, что yarn отображает предупреждение только один раз и продолжит отображать его при регенерации файла блокировки.

ребята, если вы столкнулись с проблемами, установите expo-cli с помощью npm из-за устаревшего сообщения: установите пряжу, затем пряжу установите expo-cli

@ caio-vinicius да, я выполнил установку с помощью install yarn, затем yarn install expo-cli globlly, но после установки, когда я проверяю версию expo cli, возникает проблема, что expo не определяет какую-либо внутреннюю или внешнюю команду

@alijatoi, пожалуйста, убедитесь, что вы используете правильный синтаксис при использовании yarn для глобальной установки.

https://classic.yarnpkg.com/en/docs/cli/global/

Однако, @alijatoi , установка,

Я немного опоздал на вечеринку, но было бы неплохо добавить небольшой список альтернатив, чтобы люди могли использовать их для замены request , например, nodejs, встроенных в http.ClientRequest . Спасибо.

F

Я согласен со всем, что вы сказали о форме, совместимости и прогрессе, но
Я не понимаю, почему [email protected] не может этого сделать с критическими изменениями. В конце концов - это идея semver ...

Многие другие библиотеки адаптировались к новым шаблонам и возможностям, поэтому нарушили совместимость и повысили свою квалификацию.

Даже если это совершенно новый модуль - название представляет надежность и
опыт извлеченных уроков, который, к сожалению, уходит.

Интересно узнать об этом подробнее.

Что ж, спасибо за поездку и за всю тяжелую работу, которую вы вложили. 👍

Вы, милорд, герой.

Я понимаю причину, по которой он делает JS / Node (в целом), прогрессирует немного быстрее.

Для пространства NodeJS вы сделали «почти» столько же, сколько jQuery для пространства браузера / DOM. Вам было приятно работать с TCP, а это критично для внутренней разработки.

Благодарю вас за это.

Заботиться.

Итак, каково руководство по альтернативному способу создания https-запроса для меня, которое является новым для серверной разработки с помощью node?

Спасибо, Клифф. Посмотрим.

NPM WARN реестра Неожиданное предупреждение для https://registry.npmjs.org/ : Разное Внимание EINTEGRITY: контрольная сумма sha512-7G3s83fOoweLlAsvR3wtw4DnepkrY + / FxmYxk1XnfAjE9xnoWRy9cLHWCywcc6l6018X1RdNxpJdtqX9WQAEXw == Целостность сбой при использовании SHA512: хотел sha512-7G3s83fOoweLlAsvR3wtw4DnepkrY + / FxmYxk1XnfAjE9xnoWRy9cLHWCywcc6l6018X1RdNxpJdtqX9WQAEXw == но получил SHA512-NhZAWqNqTzZaAfgJYp0NlbBDUX8BMyOmobe3kYnymXfSxDgaiej4nP6N3aLVDtBTPHOfivySRs + AVsca0JgrTQ ==. (20905 байт)
Реестр npm WARN Использование устаревших данных из https://registry.npmjs.org/ из-за ошибки запроса во время повторной проверки.
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
npm ERR! код EINTEGRITY
npm ERR! errno EINTEGRITY
npm ERR! Invalid тело ответа при попытке извлечь https://registry.npmjs.org/uuid : проверка целостности Сбой sha512-7G3s83fOoweLlAsvR3wtw4DnepkrY + / FxmYxk1XnfAjE9xnoWRy9cLHWCywcc6l6018X1RdNxpJdtqX9WQAEXw == (C: \ Users \ MULAMBA SERGIO \ AppData \ Roamingnpm-cache_cacache \ контент-v2 \ sha512 \ ec \ 6d \ ecf377cea3078b940b2f477c2dc380e77a992b63efc5c666319355e77c08c4f719e8591cbd70b1d60b2c1c73a97ad35f17d5174dc6925db6a5fd5900045f)

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ MULAMBA SERGIO \ AppData \ Roamingnpm-cache_logs \ 2020-04-03T22_54_57_842Z-debug.log

npm WARN устарел [email protected]: request устарел, см. https://github.com/request/request/issues/3142
npm WARN устарело [email protected]: эта версия устарела в соответствии с политикой поддержки hapi (hapi.im/support). Пожалуйста, обновитесь до последней версии, чтобы получить лучшие функции, исправления ошибок и исправления безопасности. Если вы не можете выполнить обновление в настоящее время, для более старых версий доступна платная поддержка (hapi.im/commercial).
npm WARN устарел [email protected]: request устарел, см. https://github.com/request/request/issues/3142
npm WARN устарел [email protected]: core-js @ <3 больше не поддерживается и не рекомендуется к использованию из-за большого количества проблем. Пожалуйста, обновите ваши зависимости до актуальной версии core-js @ 3.
npm WARN устарело [email protected]: эта версия устарела в соответствии с политикой поддержки hapi (hapi.im/support). Пожалуйста, обновитесь до последней версии, чтобы получить лучшие функции, исправления ошибок и исправления безопасности. Если вы не можете выполнить обновление в настоящее время, для более старых версий доступна платная поддержка (hapi.im/commercial).
npm WARN устарел [email protected]: эта версия устарела в соответствии с политикой поддержки hapi (hapi.im/support). Пожалуйста, обновитесь до последней версии, чтобы получить лучшие функции, исправления ошибок и исправления безопасности. Если вы не можете выполнить обновление в настоящее время, для более старых версий доступна платная поддержка (hapi.im/commercial).
npm WARN не рекомендуется [email protected]: эта версия устарела в соответствии с политикой поддержки hapi (hapi.im/support). Пожалуйста, обновитесь до последней версии, чтобы получить лучшие функции, исправления ошибок и исправления безопасности. Если вы не можете выполнить обновление в настоящее время, для более старых версий доступна платная поддержка (hapi.im/commercial).
npm WARN устарел [email protected]: этот модуль перемещен и теперь доступен по адресу @ hapi / topo. Обновите свои зависимости, так как эта версия больше не поддерживается и может содержать ошибки и проблемы с безопасностью.
npm WARN устарел [email protected]: этот модуль перемещен и теперь доступен по адресу @ hapi / hoek. Обновите свои зависимости, так как эта версия больше не поддерживается и может содержать ошибки и проблемы с безопасностью.
C: \ Users \ Matheus \ AppData \ Roaming \ npm \ expo -> C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ bin \ expo.js
C: \ Users \ Matheus \ AppData \ Roaming \ npm \ expo-cli -> C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ bin \ expo.js
npm WARN optional ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / travel-fastlane-darwin @ 1.13.1 (node_modules \ expo-cli \ node_modules \ @expo \ travel-fastlane-darwin):
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / travelling-fastlane-darwin @ 1.13.1: требуется {"os": "darwin", "arch": "any"} (текущая: {"os": " win32 "," arch ":" x64 "})
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-linux-arm @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-linux-arm) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-linux-arm @ 2.2.8: требуется {"os": "linux", "arch": "arm"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN optional ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-darwin-ia32 @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-darwin-ia32) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-darwin-ia32 @ 2.2.8: хотела {"os": "darwin", "arch": "ia32"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-freebsd-x64 @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-freebsd-x64) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-freebsd-x64 @ 2.2.8: требуется {"os": "freebsd", "arch": "x64"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN optional ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-freebsd-ia32 @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-freebsd-ia32) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-freebsd-ia32 @ 2.2.8: хотела {"os": "freebsd", "arch": "ia32"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-linux-ia32 @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-linux-ia32) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-linux-ia32 @ 2.2.8: требуется {"os": "linux", "arch": "ia32"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-linux-x64 @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-linux-x64) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-linux-x64 @ 2.2.8: требуется {"os": "linux", "arch": "x64"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-darwin-x64 @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-darwin-x64) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-darwin-x64 @ 2.2.8: хотела {"os": "darwin", "arch": "x64"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-win32-ia32 @ 2.2.8-beta.1 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin- win32-ia32):
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-win32-ia32 @ 2.2.8-beta.1: требуется {"os": "win32", "arch": "ia32"} (текущая: {"os": "win32", "arch": "x64"})
npm WARN optional ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-sunos-x64 @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-sunos-x64) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-sunos-x64 @ 2.2.8: требуется {"os": "sunos", "arch": "x64"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: @ expo / ngrok-bin-linux-arm64 @ 2.2.8 (node_modules \ expo-cli \ node_modules \ @expo \ ngrok-bin \ node_modules \ @expo \ ngrok-bin-linux-arm64) :
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для @ expo / ngrok-bin-linux-arm64 @ 2.2.8: требуется {"os": "linux", "arch": "arm64"} (текущая: {"os" : "win32", "arch": "x64"})
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: fsevents@^1.2.7 (node_modules \ expo-cli \ node_modules \ chokidar \ node_modules \ fsevents):
npm WARN notsup ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: неподдерживаемая платформа для [email protected]: хотела {"os": "darwin", "arch": "any"} (текущая: {"os": "win32", "arch": "x64"})
npm WARN @ expo / image-utils @ 0.2.17 требует однорангового узла sharp-cli@^1.10.0, но ни один не установлен. Вы должны сами установить одноранговые зависимости.
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ abbrev):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ abbrev' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.abbrev.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ ansi-regex):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ ansi-regex' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.ansi-regex.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ aproba):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ aproba' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.aproba.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ balance-match):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ balance-match' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.balanced-match.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ chownr):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ chownr' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.chownr.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ code-point-at):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ code-point-at' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.code-point-at.DELETE'
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ concat-map):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ concat-map' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.concat-map.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ console-control-strings):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ console-control-strings' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.console-control-strings.DELETE'
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ core-util-is):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ core-util-is' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.core-util-is.DELETE'
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ deep-extend):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ deep-extend' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.deep-extend.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ delegates):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ delegates' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.delegates.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ detect-libc):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ detect-libc' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.detect-libc.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ fs.realpath):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ fs.realpath' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.fs.realpath.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ has-unicode):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ has-unicode' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.has-unicode.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ inherits):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ inherits' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.inherits.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ ini):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ ini' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.ini.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ isarray):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ isarray' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.isarray.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ minimist):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ minimist' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.minimist.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ ms):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ ms' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.ms.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ npm-normalize-package-bin):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ npm-normalize-package-bin' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.npm-normalize-package-bin.DELETE'
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ number-is-nan):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ number-is-nan' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.number-is-nan.DELETE'
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ object-assign):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ object-assign' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.object-assign.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ os-homedir):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ os-homedir' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.os-homedir.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ os-tmpdir):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ os-tmpdir' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.os-tmpdir.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ path-is-absolute):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ path-is-absolute' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.path-is-absolute.DELETE'
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ process-nextick-args):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ process-nextick-args' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.process-nextick-args.DELETE'
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ safe-buffer):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ safe-buffer' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.safe-buffer.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ safer-buffer):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ safer-buffer' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.safer-buffer.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ sax):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ sax' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.sax.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ semver):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ semver' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.semver.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ set-blocking):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ set-blocking' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.set-blocking.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ signal-exit):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ signal-exit' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.signal-exit.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ strip-json-comments):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ strip-json-comments' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.strip-json-comments.DELETE'
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ util-deprecate):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ util-deprecate' -> 'C : \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.util-deprecate.DELETE '
npm WARN необязательный ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ wrappy):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ wrappy' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.wrappy.DELETE '
npm WARN необязательно ПРОПУСК ДОПОЛНИТЕЛЬНАЯ ЗАВИСИМОСТЬ: [email protected] (node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ yallist):
npm WARN enoent ПРОПУСК ДОПОЛНИТЕЛЬНОЙ ЗАВИСИМОСТИ: ENOENT: нет такого файла или каталога, переименуйте 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules \ yallist' -> 'C: \ Users \ Matheus \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ fsevents \ node_modules.yallist.DELETE '

npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
не могли бы вы мне помочь пожалуйста? Я не могу решить эту проблему и не могу начать свой проект

npm WARN устарел [email protected] : request устарел, см. # 3142
не могли бы вы мне помочь пожалуйста? Я не могу решить эту проблему и не могу начать свой проект

И я нет

@ liaz98 @TheLitz это не ошибка, это предупреждение. Если ваш проект не запускается из-за предупреждения npm, значит, с вашим проектом и / или средой что-то не так. Это не проблема с запросом.

@ liaz98 @TheLitz это не ошибка, это предупреждение. Если ваш проект не запускается из-за предупреждения npm, значит, с вашим проектом и / или средой что-то не так. Это не проблема с запросом.

но когда я пытаюсь запустить Expo, это не работает

@TheLitz, значит, это проблема Expo, и вы должны сообщить об этом в их системе отслеживания ошибок. На стороне запроса нет ничего, что может или не будет решено.

@TheLitz, значит, это проблема Expo, и вы должны сообщить об этом в их системе отслеживания ошибок. На стороне запроса нет ничего, что может или не будет решено.

Ok. Спасибо

мы просим запрос в будущем.

tldr;
что я должен использовать сейчас?

@YashKumarVerma использует postman-request

@TheLitz, значит, это проблема Expo, и вы должны сообщить об этом в их системе отслеживания ошибок. На стороне запроса нет ничего, что может или не будет решено.

вы решаете этот вопрос ????
npm WARN устарел [email protected] : request устарел,

Итак, каково руководство по альтернативному способу создания https-запроса для меня, которое является новым для серверной разработки с помощью node?

@OluwafemiAdesegha
Удалось ли вам прояснить, куда двигаться? Я в одной лодке с тобой! :(

Тем, кто ищет альтернативы, смотрите # 3143 ( @ farhan3040 @OluwafemiAdesegha @iamdesfranco )

@mikeal Я бы рекомендовал закрыть этот вопрос;)

@iamdesfranco @ farhan3040 HTTP устарел, используйте Gopher или UDP

@mikeal Я бы рекомендовал закрыть этот вопрос;)

Вернее заблокировать. По сути, все, что нужно сказать, было сказано на этом этапе, и задаются только те вопросы, на которые уже дан ответ (несколько раз).

Франко,

Извинения за поздний ответ. Я все еще пытаюсь понять, что бы я
наконец, продолжайте, основываясь на данных предложениях.

В пн, 6 апреля 2020 г., 9:12 Franco Labuschagne [email protected]
написал:

Итак, какое руководство по альтернативному способу создания https-запроса для меня?
что нового в серверной разработке с помощью узла?

Удалось ли вам прояснить, куда двигаться? Я в одной лодке
как ты! :(

-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/request/request/issues/3142#issuecomment-609643295 ,
или отказаться от подписки
https://github.com/notifications/unsubscribe-auth/AOL4QYXM7V2BUK5LZCS7LDDRLGFH5ANCNFSM4HCP6LRA
.

и возможные альтернативы относятся к этой проблеме.

Где я нашел альтернативы на этой странице?

Предлагается ли использовать выборку в браузере + выборку библиотеки для узла или просто альтернативу на основе обещаний и т. Д.?

@TomYeoman Предлагается не использовать request .

Альтернативы @gcacars здесь: https://github.com/request/request/issues/3143

@Richienb, спасибо. Я думаю, что важно иметь ссылку на это в README.

Я удалил папку «node_modules» и файл «package-lock.json», а затем выполнил следующие 2 команды.
npm init
npm install

А потом все заработало.

Коммиттеры, которые все еще активны, будут пытаться своевременно объединить исправления, но никаких обещаний.

Блестящий случайный (?) Каламбур

npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142

как это решить ??,

@ anton-bot Пожалуйста, никаких вредоносных программ.

npm WARN устарел [email protected] : request устарел, см. # 3142

как это решить ??,

@Amouthinie решать нечего, это не ошибка. NPM предупреждает вас, что request устарел, и вам (или тому, кто поддерживает ваши зависимости, которые, в свою очередь, зависят от request ), следует вместо этого подумать о переходе на активно поддерживаемый пакет.

У меня было две проблемы:
1 - sudo apt-get install nodejs npm
Чтение списков пакетов ... Готово
Построение дерева зависимостей
Чтение информации о статусе ... Готово
nodejs - это уже самая новая версия (13.13.0-1nodesource1).
Некоторые пакеты не могут быть установлены. Это могло означать, что
вы запросили невозможную ситуацию или, если вы используете
нестабильный дистрибутив, некоторые требуемые пакеты не были
создано или удалено из "Входящие".
Следующая информация может помочь разрешить ситуацию:

Следующие пакеты имеют несовпадающие зависимости:
nodejs: Конфликт: npm
E: Невозможно исправить проблемы, вы сохранили (удерживали) сломанные пакеты.

2 - sudo npm install -g @ angular / cli
npm WARN устарел [email protected]: request устарел, см. https://github.com/request/request/issues/3142
npm ERR! Код EEXIST
npm ERR! символическая ссылка системного вызова
npm ERR! путь ../lib/node_modules/@angular/cli/bin/ng
npm ERR! dest / usr / bin / ng
npm ERR! errno -17
npm ERR! EEXIST: файл уже существует, символическая ссылка '../lib/node_modules/@angular/cli/bin/ng' -> '/ usr / bin / ng'
npm ERR! Файл существует: / usr / bin / ng
npm ERR! Удалите существующий файл и попробуйте еще раз или запустите npm
npm ERR! с --force для опрометчивой перезаписи файлов.

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! /home/anderson/.npm/_logs/2020-04-17T16_25_56_704Z-debug.log

Я пользователь Linux Mint 19.3 Cinnamon, 4.4.8, 5.3.0-46-generic

Может кто-нибудь мне помочь?

@LeloCorrea Ваша ошибка не связана с request , это проблема с созданием символической ссылки в вашей локальной среде:

npm ERR! EEXIST: file already exists, symlink '../lib/node_modules/@angular/cli/bin/ng' -> '/usr/bin/ng'

@LeloCorrea Ваша ошибка не связана с request , это проблема с созданием символической ссылки в вашей локальной среде:

npm ERR! EEXIST: file already exists, symlink '../lib/node_modules/@angular/cli/bin/ng' -> '/usr/bin/ng'

Вы знаете, как я могу решить эту проблему?

@LeloCorrea Ваша ошибка не связана с request , это проблема с созданием символической ссылки в вашей локальной среде:
npm ERR! EEXIST: file already exists, symlink '../lib/node_modules/@angular/cli/bin/ng' -> '/usr/bin/ng'

Вы знаете, как я могу решить эту проблему?

Это не та же проблема, но решение может быть таким же. Вам следует начать здесь:

https://stackoverflow.com/questions/48808384/angular-cli-error-path-and-code-eexist

Кроме того, опять же, эта проблема никак не связана с запросом , вам следует обратиться за помощью по Angular CLI в соответствующий трекер проблем.

Итак, какая альтернатива рекомендуется? Просто используете пакеты http / https?

@RonRofe Я использую https://github.com/sindresorhus/got , кажется хорошим преемником, у него есть руководство по переходу из запроса .

@RonRofe есть список альтернатив (WIP) здесь: https://github.com/request/request/issues/3143

Мне грустно по этому поводу, просьба была моей библиотекой столько, сколько я себя помню.
Я могу только поблагодарить автора и участников за невероятную работу, которую они вложили в это за эти годы, и надеюсь, что ваше следующее приключение будет таким же захватывающим, как и это.
Ваше здоровье!

Можете ли вы дать рекомендации по альтернативным вариантам в своем первом прилепленном комментарии?

Здравствуйте, я пытаюсь создать новый проект angular, и у меня такая ошибка:
/ Установка пакетов ... npm WARN устаревший [email protected] : запрос устарел, см. Https://github.com/request/request/issues/3142
npm WARN устарел [email protected] : Chokidar 2 сломается на узле v14 +. Обновитесь до chokidar 3 с 15-кратным уменьшением зависимостей.
npm WARN устарел [email protected] : fsevents 1 сломается на узле v14 +. Обновитесь до fsevents 2 с огромными улучшениями.
npm WARN устарел [email protected] : см. https://github.com/lydell/urix#deprecated
npm WARN устарел [email protected] : https://github.com/lydell/resolve-url#deprecated
npm ERR! Неожиданный конец ввода JSON при разборе рядом с '... ": {" @ angular / core ":" 5'

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ dell \ AppData \ Roamingnpm-cache_logs \ 2020-04-21T11_50_16_582Z-debug.log
× Не удалось установить пакет, см. Выше.
Сбой рабочего процесса схемы. См. Выше.
Может ли кто-нибудь помочь мне с этим?

Здравствуйте, я пытаюсь создать новый проект angular, и у меня такая ошибка:
/ Установка пакетов ... npm WARN устаревший [email protected] : запрос устарел, см. # 3142
npm WARN устарел [email protected] : Chokidar 2 сломается на узле v14 +. Обновитесь до chokidar 3 с 15-кратным уменьшением зависимостей.
npm WARN устарел [email protected] : fsevents 1 сломается на узле v14 +. Обновитесь до fsevents 2 с огромными улучшениями.
npm WARN устарел [email protected] : см. https://github.com/lydell/urix#deprecated
npm WARN устарел [email protected] : https://github.com/lydell/resolve-url#deprecated
npm ERR! Неожиданный конец ввода JSON при разборе рядом с '... ": {" @ angular / core ":" 5'

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ dell \ AppData \ Roamingnpm-cache_logs \ 2020-04-21T11_50_16_582Z-debug.log
× Не удалось установить пакет, см. Выше.
Сбой рабочего процесса схемы. См. Выше.
Может ли кто-нибудь помочь мне с этим?

я тоже

СОЗДАТЬ my-project / angular.json (3598 байт)
СОЗДАТЬ my-project / package.json (1286 байт)
СОЗДАТЬ мой-проект / README.md (1026 байт)
СОЗДАТЬ my-project / tsconfig.json (489 байт)
СОЗДАТЬ мой-проект / tslint.json (3125 байт)
СОЗДАТЬ my-project / .editorconfig (274 байта)
СОЗДАТЬ мой-проект / .gitignore (631 байт)
СОЗДАТЬ мой-проект / список браузеров (429 байт)
СОЗДАТЬ my-project / karma.conf.js (1022 байта)
СОЗДАТЬ my-project / tsconfig.app.json (210 байт)
СОЗДАТЬ мой-проект / tsconfig.spec.json (270 байт)
СОЗДАТЬ my-project / src / favicon.ico (948 байт)
СОЗДАТЬ мой-проект / src / index.html (295 байт)
СОЗДАТЬ my-project / src / main.ts (372 байта)
СОЗДАТЬ my-project / src / polyfills.ts (2835 байт)
СОЗДАТЬ my-project / src / styles.css (80 байт)
СОЗДАТЬ my-project / src / test.ts (753 байта)
СОЗДАТЬ мой-проект / src / assets / .gitkeep (0 байт)
СОЗДАТЬ мой-проект / src / environment / environment.prod.ts (51 байт)
СОЗДАТЬ мой-проект / src / environment / environment.ts (662 байта)
СОЗДАТЬ my-project / src / app / app-routing.module.ts (246 байт)
СОЗДАТЬ мой-проект / src / app / app.module.ts (393 байта)
СОЗДАТЬ my-project / src / app / app.component.html (25757 байт)
СОЗДАТЬ my-project / src / app / app.component.spec.ts (1071 байт)
СОЗДАТЬ my-project / src / app / app.component.ts (214 байт)
СОЗДАТЬ мой-проект / src / app / app.component.css (0 байт)
СОЗДАТЬ my-project / e2e / protractor.conf.js (808 байт)
СОЗДАТЬ my-project / e2e / tsconfig.json (214 байт)
СОЗДАТЬ my-project / e2e / src / app.e2e-spec.ts (643 байта)
СОЗДАТЬ my-project / e2e / src / app.po.ts (301 байт)
/ Установка пакетов ... npm WARN устарел [email protected] : TSLint устарел в пользу ESLint. Пожалуйста, посетите https://github.com/palantir/tslint/issues/4534 для получения дополнительной информации.
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
npm WARN устарел [email protected] : Обновление до chokidar 3 с 15-кратным уменьшением зависимостей. Chokidar 2 сломается на узле v14.
npm WARN устарел [email protected] : см. https://github.com/lydell/urix#deprecated
npm WARN устарел [email protected] : https://github.com/lydell/resolve-url#deprecated
npm ERR! Неожиданный конец ввода JSON при синтаксическом анализе рядом с '.... 0.1 "," systemjs ":" ^ 0.'

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ 92306 \ AppData \ Roamingnpm-cache_logs \ 2020-04-21T16_08_05_350Z-debug.log
× Не удалось установить пакет, см. Выше.
Сбой рабочего процесса схемы. См. Выше.

@ awais0048 @xunyegege ваша ошибка не имеет ничего общего с запросом. Изучите фактический результат, и он точно скажет вам, в чем заключается ошибка. Если у вас возникнут дополнительные проблемы с Angular CLI, сообщите об этом в их системе отслеживания проблем.

@ awais0048 @xunyegege ваша ошибка не имеет ничего общего с запросом. Изучите фактический результат, и он точно скажет вам, в чем заключается ошибка. Если у вас возникнут дополнительные проблемы с Angular CLI, сообщите об этом в их системе отслеживания проблем.

Я попытался обновить NPM и узел, но понятия не имею. если кто-нибудь найдет решение, подскажите пожалуйста?

@ANadjia снова, ошибка не имеет ничего общего с этим пакетом. Вы должны спросить в трекере Angular CLI.

Привет, установка пакетов ... npm WARN устаревший [email protected] : request устарел, см. Https://github.com/request/request/issues/3142 npm ERR! Неожиданный конец ввода JSON при разборе рядом с '... ZXQ4dst \ n4bcYaiOdlbvh'
когда я создаю новый проект
какие-либо предложения

Два месяца назад...

https://github.com/request/request/issues/3142#issuecomment -585561589

@mohamedelsoufi это проблема вашей среды или проекта, а не этого пакета. NPM только предупреждает вас, что этот пакет устарел.

@milette
Хорошая идея, чтобы этот поток работал как напоминание о последствиях отказа от пакета, используемого в 99% проектов в мире.

@ anton-bot На самом деле напоминание о том, сколько людей не используют RTFM.

@csvan и они говорят, что это тоже не их проблема
В любом случае, у меня наконец-то появилось много работы для меня.
Итак, в основном:
1 / я перейти на node js версии 10.13.0;
2 / я удалил вручную папку npm_cache
3 / запустить npm install;
и по волшебству это сработало

@ANadjia приятно слышать!

Предлагаемая замена неясна. Что мы должны использовать вместо этого?

@johnworthley, все, что вам https://github.com/request/request/issues/3143

@johnworthley, все, что вам

хм хорошее место https://www.youtube.com/watch?v=riuZHZPcZsg

Можем ли мы по-прежнему использовать эту библиотеку, даже если она устарела? Посоветуйте, пожалуйста, @mikeal

Можем ли мы по-прежнему использовать эту библиотеку, даже если она устарела? пожалуйста, порекомендуйте

@DokurOmkar Да. Вам ничего не мешает пользоваться библиотекой. Это просто предупреждение. Однако он устарел по какой-то причине: существуют более современные библиотеки получше. Прочтите эту ветку, и вы найдете ссылку на список альтернативных библиотек.

не удалось создать новый угловой проект
он не работает из-за -
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142

@adibhosale У вас есть дополнительная информация? Какие еще сообщения в консоли вы видите?

@adibhosale нет, это не из-за этого. Если это так, то проблема связана с angular-cli, а не с этим пакетом. Проверьте оставшуюся часть вывода журнала.

@ Антон-Бот
Ответить -> @adibhosale У вас есть дополнительная информация? Какие еще сообщения в консоли вы видите?

Это ошибка, которую я получаю при создании нового проекта angular.

Установка пакетов ... npm WARN устарел [email protected] : TSLint устарел в пользу ESLint. Пожалуйста, посетите https://github.com/palantir/tslint/issues/4534 для получения дополнительной информации.
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
npm WARN устарел [email protected] : Chokidar 2 сломается на узле v14 +. Обновитесь до chokidar 3 с 15-кратным уменьшением зависимостей.
npm WARN устарел [email protected] : fsevents 1 сломается на узле v14 + и может использовать небезопасные двоичные файлы. Обновитесь до fsevents 2.
npm WARN устарел [email protected] : см. https://github.com/lydell/urix#deprecated
npm WARN устарел [email protected] : https://github.com/lydell/resolve-url#deprecated
npm ERR! cb () никогда не вызывалась!

npm ERR! Сообщите об этой ошибке по адресу:
npm ERR! https://npm.community

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! C: \ Users \ adibh \ AppData \ Roamingnpm-cache_logs \ 2020-05-05T08_46_31_829Z-debug.log
× Не удалось установить пакет, см. Выше.
Сбой рабочего процесса схемы. См. Выше.

Я не понимаю, почему так много пользователей сообщают совершенно не относящиеся к этому вопросу подробности?

похоже, что большинство пришедших сюда пользователей понятия не имеют, что они делают, возможно, даже не понимают, что означает слово «устаревший».

но последнее сообщение, размещенное здесь, содержит более одного сообщения об отказе от поддержки, почему они выбирают сообщение об этой проблеме? потому что некоторые пользователи уже сделали это, и они просто продолжают?

и последний бит этого конкретного сообщения, в частности, говорит о том, что об ошибке npm следует сообщать npm.community.

Сопровождающие здесь, я думаю, должны удалить все нерелевантные элементы обсуждения для запросов на прекращение поддержки и заблокировать обсуждения здесь.

возможно, сообщение об устаревании пакета запросов должно быть заменено ссылкой, а скорее проблемой, как это делают пакеты lydell / urix и lydell / resolve-url, поэтому поток нерелевантных сообщений здесь не появляется.

@glensc Кто знал, что

@glensc мы сообщаем об этой конкретной проблеме, потому что во время установки angular / CLI нам предоставляется ссылка на эту проблему.

Спасибо :-)

Если написано WARN, это означает, что это не ошибка. Просто некоторые факты.

@adibhosale нет, вы получаете предупреждение NPM, в котором есть ссылка на эту проблему github - среди МНОГИХ других ссылок в том же выводе журнала. Предупреждение не имеет ничего общего с ошибкой, нужно внимательнее читать журнал. В нем четко указано, что:

npm ERR! cb() never called!
npm ERR! This is an error with npm itself. Please report this error at:
npm ERR! https://npm.community

и это причина сбоя установки. Вам необходимо проявить должную осмотрительность и выяснить, что вызывает это, прежде чем сообщать о проблеме в пакете, который не имеет к этому никакого отношения.

@ anton-bot, ты все время так говоришь. Есть ли у вас что-нибудь конструктивное или вы все еще здесь, чтобы троллить?

@csvan @leoskyrocker @glensc Прошу прощения за это. Будем заботиться в будущем. Спасибо :-)

как решить эту проблему
невозможно создать угловой проект
проблема

////////

устаревший [email protected] : запрос устарел, см. https://github.com/request/request/issues/3142
npm WARN checkPermissions Отсутствует доступ на запись в / usr / local / lib / node_modules
npm ERR! код EACCES
npm ERR! доступ к системному вызову
npm ERR! путь / usr / local / lib / node_modules
npm ERR! errno -13
npm ERR! Ошибка: EACCES: доступ запрещен, доступ '/ usr / local / lib / node_modules'
npm ERR! [Ошибка: EACCES: доступ запрещен, доступ '/ usr / local / lib / node_modules'] {
npm ERR! номер ошибки: -13,
npm ERR! код: 'EACCES',
npm ERR! системный вызов: 'доступ',
npm ERR! путь: '/ usr / local / lib / node_modules'
npm ERR! }
npm ERR!
npm ERR! Операция была отклонена вашей операционной системой.
npm ERR! Скорее всего, у вас нет прав доступа к этому файлу в качестве текущего пользователя.
npm ERR!
npm ERR! Если вы считаете, что это может быть проблема с разрешениями, дважды проверьте
npm ERR! разрешения файла и содержащих его каталогов, или попробуйте запустить
npm ERR! команду снова как root / Administrator.

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! /Users/vivek/.npm/_logs/2020-05-05T11_48_34_569Z-debug.log

@ vivek08011991 вывод журнала объясняет, что вам нужно делать. Это проблема, когда вы пытаетесь установить angular глобально без использования sudo . Это не имеет ничего общего с этим пакетом.

Эй, чувак, все это дерьмо разговоров, неважно,
я скажу вам решение
Я пробовал 3 дня, потом понял
сначала: npm install npm
второй: npm uninstall --save react-native-cli
наконец: npm install -g @ angular / cli

Эй, чувак, все это дерьмо разговоров, неважно,
я скажу вам решение
Я пробовал 3 дня, потом понял
сначала: npm install npm
второй: npm uninstall --save react-native-cli
наконец: npm install -g @ angular / cli

Человек, ты был прав, алхамду лил аллах. Почему реакция cli вызывает проблему? есть ли здесь какие-то уродливые методы конкуренции? Спасибо дружище

Обратите внимание, что это средство отслеживания ошибок модуля request , а не angular .

Может кто-нибудь подскажет альтернативу request ?

Я читаю это и предпочитаю упрощенный API request :

https://www.twilio.com/blog/2017/08/http-requests-in-node-js.html

@dolanmiu Конечно. Любой, кто прочитал ветку, в которой вы только что разместили (или даже искал _alternative_), может сказать вам, что на https://github.com/request/request/issues/3143 есть список альтернатив

@dolanmiu @ root / request - это в основном

@Richienb между

@ anton-bot Однозначно @ root / request.

Я уже некоторое время использую request и согласен с mikeal. Нативные модули Node разрабатывались с течением времени, чтобы соответствовать этому модулю request , поэтому нет никаких причин для его использования, кроме повторного исправления кода при выходе новой версии request из.

request навсегда впишется в камни истории; node вырос. Это как раз то время, когда нам нужно отпустить некоторые вещи. request всегда был пионером в области инновационных функций, и я чувствую, что без request разработка узлов была бы не такой хорошей.

Как молодой программист, я любил использовать этот пакет, но я также знаю, что для того, чтобы улучшать и создавать еще более совершенные программы, нельзя больше задерживаться в прошлом.

Как молодой программист, я любил использовать этот пакет

Это меня рассмешило. Будучи молодым программистом, я использовал Commodore BASIC. : смайлик:

@darkRaspberry :

  1. прочтите отчет об ошибке до конца, а не только первую строку, там четко написано, в чем заключается ошибка, и даже предложите, что делать. Вы явно не прочитали первую строчку.
  2. вы погуглили свою ошибку?
  3. прочтите предыдущие обсуждения и объясните, почему вы публикуете это здесь, ваш отчет о проблеме не имеет ничего общего с модулем запросов.

просто отключите антивирус, ошибок не будет
Спасибо !!!

@glensc Я полностью переустановил свой терминал, чтобы удалить любую другую версию узла, затем попробовал "sudo"
И это сработало.
Я использую node версию nodejs, используя curl для добавления node js в свой PPA.

и здесь это сработало
dark<strong i="10">@darkRaspberry</strong>:~$ sudo npm install firebase-tools -g

npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
/usr/bin/firebase -> /usr/lib/node_modules/firebase-tools/lib/bin/firebase.js
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.1.2 (node_modules/firebase-tools/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

+ [email protected]
updated 2 packages in 42.696s

Это меня взволновало. И: bow: всем участникам!

image

@ sudarsan2017 Эта ошибка никак не связана с request

Привет! ребята проходят через ту же проблему в Windows, и я решил ее с помощью команды

npm установить [email protected]

Надеюсь, ты прав.

Я получаю предупреждение npm npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142

Как мне это исправить?

@ aman78600 Исправить нет возможности.

Я получаю предупреждение npm npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142

@ aman78600 Не требует исправления. Это просто предупреждение, что request has been deprecated .

Ваш НПМ велит прийти сюда за альтернативами, но я их не вижу.

Ваш НПМ велит прийти сюда за альтернативами, но я их не вижу.

@skeddles Если бы вы нажали Control-F и искали alternatives , вы бы нашли ссылку на https://github.com/request/request/issues/3143.

Я не могу установить vue-cli с помощью этой команды npm install -g @ vue / cli, отображается сообщение: npm WARN устаревший [email protected] : запрос устарел

@somnangrom Это не может быть правдой, я уверен, что в консоли есть другие сообщения, а не только эта строка.

Мне очень хотелось поблагодарить вас за работу над этим пакетом. Это очень помогло мне в моих проектах. Совершенно понятные причины прекращения поддержки.

Вы проделали отличную работу, вам стоит гордиться собой!

🤝

Я не могу установить последнюю версию Angular CLI.
64-разрядная версия Nodejs: 12.18.1
версия npm: 6.13.6
Когда я запускаю npm install -g @ angular / cli @ latest для установки последней версии Angular CLI, появляется следующее предупреждение об ошибке
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142

Установка останавливается с сообщением: postinstall: sill install executeActions
Пожалуйста, помогите мне решить эту проблему

Я не могу установить последнюю версию Angular CLI.
Я установил Nodejs на свой ноутбук с Windows 10 Pro
64-разрядная версия Nodejs: 12.18.1версия npm: 6.13.6
Когда я запускаю npm install -g @ angular / cli @ latest для установки последней версии Angular CLI, появляется следующее предупреждение об ошибке
npm WARN устарел [email protected] : request устарел, см. # 3142

Установка останавливается с сообщением: postinstall: sill install executeActions
Пожалуйста, помогите мне решить эту проблему

@anjaikr и @ aman78600 ссылаются на https://github.com/angular/angular-cli/wiki/stories-1.0-update для установки последней версии, надеюсь, это поможет

npm install -g json-server не работает, что мне делать?

Мы все еще можем использовать его для основных действий, верно?

Я получаю сообщение об ошибке при установке angular 5, я пытался установить, но он показывает, что запрос был устаревшим ... что мне делать

@mikeal Для ясности, вы собираетесь использовать bent вместо request ?

Привет,

Кто-нибудь знает, в чем проблема:
npm я -g json-сервер
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
npm WARN устарел [email protected] : эта библиотека больше не поддерживается

Спасибо.

Одна из самых глупых причин обесценивания, о которых я слышал. Представьте себе, если бы Google и Microsoft убрали все свои продукты с полок, потому что «новым библиотекам, выполняющим аналогичные задачи, гораздо труднее получить распространение» и потому что «сейчас в экосистеме происходит переход к этим шаблонам». Совершенно смешно.

image

Во-первых, проявите мое уважение к этому репо, однако, честно говоря, то, что сказал @cypheron , имело смысл.

@ Вэньцзе-Шао Боюсь, что вообще никакого смысла. Без уведомления об устаревании еще больше людей будут загружать и использовать эту библиотеку, не подозревая, что она устарела. @mikeal оказал большую услугу сообществу, официально отказавшись от этой библиотеки, вместо того, чтобы просто позволить ей гнить. Возможно, ошибка была в ссылке на эту ветку.

Я просто пытаюсь разобраться в руководстве по настройке Surge.sh.

Похоже, у вас здесь много чего происходит. Неужели в новом будущем я облажусь, если я просто проигнорирую предупреждения и уйду?

Одна из самых глупых причин обесценивания, о которых я слышал. Представьте себе, если бы Google и Microsoft убрали все свои продукты с полок, потому что «новым библиотекам, выполняющим аналогичные задачи, гораздо труднее получить распространение» и потому что «сейчас в экосистеме происходит переход к этим шаблонам». Совершенно смешно.

Но они это сделали. И часто. Есть очень много продуктов от этих программных гигантов, которые больше не существуют или в настоящее время являются устаревшими и не получают никаких обновлений. Вы когда-нибудь слышали, скажем, о Windows 95 или FoxPro? Каждый программный проект рано или поздно приходит и заканчивается по той или иной причине. И авторы Request тоже не снимают его с полок, они останавливают новые разработки. Критические исправления еще будут происходить какое-то время, и если ваш проект зависит от этого - никаких проблем. Вы все еще можете продолжать его использовать.

Но если вы начнете новый проект, есть лучшие и более современные альтернативы. Язык эволюционировал, теперь есть более эффективные способы делать то же самое, но Request не успевает за ним, потому что для работы с ним нужны унаследованные проекты. Для новых проектов это неоптимально.

Так что это решение имеет для меня полный смысл. Оставьте Request там, где он есть, чтобы старые проекты могли продолжать его использовать, но для новых проектов рекомендуйте новые библиотеки.

Есть ли какая-то конкретная причина, по которой кто-то может использовать запрос вместо аксиомов?

Есть ли какая-то конкретная причина, по которой кто-то может использовать запрос вместо аксиомов?

Конечно. С верхней части моей головы:

  • Вы просто привыкли к этому или имеете большой опыт с этим
  • Ваш проект уже использует его повсюду. Переключение всего этого займет недели, если не месяцы переписывания кода.
  • Руководство компании / проекта по кодированию требует наличия этой библиотеки (или допускает только библиотеки с определенными требованиями "зрелости")
  • Сторонняя библиотека требует этого (и, возможно, даже требует, чтобы вы использовали ее при работе с библиотекой). Дополнительные баллы, если в библиотеке нет альтернатив.
  • Вы студент, и в курсе, который вы изучаете, прямо говорится о запросах, и это есть в экзаменах / домашних заданиях.

По сути, это все вариации одной и той же темы - вам нужно работать с некоторыми устаревшими вещами, которые еще не догнали последние тенденции. В реальной жизни это происходит довольно часто.

npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142
npm WARN устарел @ hapi / [email protected] : joi покидает организацию @hapi и возвращается к 'joi' (https://github.com/sideway/joi/issues/2411)
npm WARN deprecated @ hapi / [email protected] : эта версия устарела и больше не поддерживается и не поддерживается
npm WARN deprecated @ hapi / [email protected] : эта версия устарела и больше не поддерживается и не поддерживается
npm WARN deprecated @ hapi / [email protected] : эта версия устарела и больше не поддерживается и не поддерживается
npm WARN deprecated @ hapi / [email protected] : эта версия устарела и больше не поддерживается и не поддерживается
npm WARN устарел [email protected] : эта библиотека больше не поддерживается
npm WARN устарел [email protected] : см. https://github.com/lydell/urix#deprecated
npm WARN устарел [email protected] : https://github.com/lydell/resolve-url#deprecated
npm WARN устарел [email protected] : Chokidar 2 сломается на узле v14 +. Обновитесь до chokidar 3 с 15-кратным уменьшением зависимостей.
npm WARN устарел. [email protected] : fsevents 1 не работает на узле v14 + и может использовать небезопасные двоичные файлы. Обновитесь до fsevents 2.

ПОЧЕМУ ???? ВСЕ ГЛОБАЛЬНЫЕ УСТАНОВКИ МОЕГО NPM ВСЕГДА ПРЕДУПРЕЖДАЮТ МЕНЯ, ЧТО ЭТО УСТАРЕЛО ?? КАК ЭТО ИСПРАВИТЬ

Я ПЫТАЮСЬ УДАЛИТЬ NODEJS
ИЛИ
ОБНОВЛЕНИЕ NPM
НО ЭТО НЕ РАБОТАЕТ
ПОЖАЛУЙСТА, ПОМОГИТЕ МНЕ

ОН УСТАРЕЛ.
ВЫ НЕ МОЖЕТЕ ИСПРАВИТЬ ЭТО.
ПРОПУСТИТЕ ПРЕДУПРЕЖДЕНИЕ.

Или перепишите свой код, чтобы он не использовал Request.

@acatzk

Пытаться

npm install -s (или --silent)
или

npm install -q (или --quiet)

заглушить предупреждения

Эта ветка самая лучшая.

Привет. Я новичок в API. Я пытался установить пакет запроса, и он сказал, что теперь он устарел. Я попытался найти его и посмотреть, что происходит, но был бы признателен, если бы кто-нибудь объяснил мне, что я могу сделать сейчас? Означает ли это, что пакет запроса больше не используется? Какой еще пакет я могу использовать для выполнения той же работы?

@ mohammed3736 Нет, все еще можно использовать. Но обновляться не будет. Он не получит новых функций. На какое-то время в нем могут быть исправлены некоторые ошибки, но ненадолго. И предупреждение будет всегда. По сути, они отказываются от проекта. Если вы хотите внести в него какие-либо изменения, вам нужно будет сделать это самостоятельно. Ведь весь исходный код запроса по-прежнему доступен. Вы можете сделать свою собственную вилку и делать с ней все, что угодно.

Если вы пишете новый проект, лучше попробуйте другую, более современную библиотеку. Например, мы используем Axios, но я уверен, что есть и другие.

Я собираюсь задать в интервью вместо Fizzbuzz следующий вопрос:

You have faced the following message in your console.

What should you do about it and how do you fix it?

> npm WARN deprecated [email protected]: request has been deprecated, see #3142

@ anton-bot Это просто, ответ такой: «Я нажимаю ссылку, ничего не читаю, а иду в конец цепочки и задаю тот же вопрос, что и все».

Получу ли я работу?

@ anton-bot Это просто, ответ такой: «Я нажимаю ссылку, ничего не читаю, а иду в конец цепочки и задаю тот же вопрос, что и все».

Получу ли я работу?

Причина, по которой я спрашивал, заключается в том, что в моем журнале консоли постоянно появляется сообщение 401. И модуль запроса у меня не работает. Я пытаюсь использовать api от bitcoinaverage и https://any-api.com/, и ни один из них не работал. Когда я захожу в localhost3000, html работает, и я получаю страницу, но когда я нажимаю кнопку, чтобы получить результат, моя консоль вылетает. В моем журнале консоли либо говорится, что приложение упало, либо 401 для statusCode и в браузере. Также обратите внимание, что ни один из моих прокси не включен. Я пробовал все, но продолжаю получать ошибки. ЕСЛИ вы можете мне помочь, я был бы признателен.

@ mohammed3736 - Это не то место, чтобы спрашивать. Также я на 99,99% уверен, что виновата не библиотека запросов. В вашей программе есть ошибка, которую вы сделали сами. Вам тоже придется разобраться в этом самостоятельно. Если вам все еще нужна помощь, попробуйте спросить в StackOverflow, но включите код, который не работает. Лучше всего - постарайтесь сделать минимально возможную программу, которая дает сбой, и покажите этот исходный код.

Я тоже пришел сюда, чтобы задать вопрос, но ... что случилось со всеми расистскими атаками здесь? вы люди невероятные.

И да, я до сих пор не понимаю, почему мой код не работает. Единственная ошибка в консоли приводит меня сюда.

Проверьте свои привилегии и получайте удовольствие

Я тоже пришел сюда, чтобы задать вопрос, но ... что случилось со всеми расистскими атаками здесь? вы люди невероятные.

И да, я до сих пор не понимаю, почему мой код не работает. Единственная ошибка в консоли приводит меня сюда.

Проверьте свои привилегии и получайте удовольствие

Какие расистские атаки вы имеете в виду? Это звучит очень плохо

Наблюдается та же проблема. Пожалуйста, помогите, если кто-то знает, как решить

[email protected] : запрос устарел, см. https://github.com/request/request/issues/3142

@ HaseebAhmed49 устаревший пакет npm "request" не является проблемой как таковой. это послание разработчикам библиотечных проектов.

Не беспокойся об этом. Многие люди на github сказали мне, что это нормально. Это
просто в основном означает, что в пакет не будут добавлены новые функции
к нему больше не будет, и он не будет обновляться, но все еще отлично
использовать. Я использовал его, и все было нормально.

В понедельник, 14 сентября 2020 г., в 23:57 Элан Руусамяэ [email protected]
написал:

>
>

@ HaseebAhmed49 https://github.com/HaseebAhmed49 "запрос" npm
устаревание пакета не является проблемой как таковой. сообщение для библиотеки
разработчиков проекта.

-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/request/request/issues/3142#issuecomment-692279572 ,
или отказаться от подписки
https://github.com/notifications/unsubscribe-auth/AQFTBJ255VRYJW4VMUFQQ23SFZYSZANCNFSM4HCP6LRA
.

но все еще прекрасно использовать

Не совсем. Это может работать _на данный момент_, но у вас никогда не должно быть явной зависимости от пакета, который не будет получать дальнейшие исправления ошибок и безопасности. Вы подвергаете свое приложение (и пользователей) значительному риску внезапной поломки и утечек безопасности, когда этот пакет в конечном итоге _ перестает работать (что почти наверняка будет). Это особенно верно для такого пакета, как request который предоставляет что-то столь же важное и чувствительное, как выполнение сетевых запросов.

Предупреждение об устаревании - серьезное предупреждение о начале миграции в другое место. Несколько альтернатив уже упоминались (и повторялись) в этой ветке.

Привет всем, у меня тоже были эти устаревшие проблемы
поэтому я удалил nodejs и загрузил последние функции nodejs
что 14.10.1 Текущие последние функции
https://nodejs.org/en/

и удалите все те глобальные npm, установленные у вас на компьютере

вот и все...

все устаревшие ушли ...

@acatzk wtf lmao

Эта библиотека устарела . Если есть ошибка, ничего не будет сделано для ее исправления. Если есть проблема с безопасностью, ничего не будет сделано для ее устранения.

Вы не должны использовать это.

@davwheat спасибо

какие альтернативы у этого модуля запроса?

Что мы можем сделать - пожалуйста, обсудите и станьте волонтером!

  • [] обновить readme с текущим состоянием проекта
  • [] обновить конвейер публикации ci @mikeal
  • [] предоставить документ с некоторыми рекомендациями по альтернативам request # 3143
  • [] добавить предупреждающее сообщение при установке пакета, чтобы использовать другой пакет, и ссылку на документ
  • [] выберите дату, чтобы прекратить поддержку (я голосую 6 месяцев, но 12, вероятно, более дружелюбны)
  • [] закрыть все запросы функций и предложения функций
  • [] просмотрите и объедините соответствующие исправления ошибок
  • [] добавить проблему с github и шаблоны PR, объясняющие, что функции не будут объединены
  • [] не рекомендуется использовать следующую основную версию ( 3.x ), поэтому проект, находящийся в активном обслуживании, получает предупреждение, но более старые проекты продолжают работу в обычном режиме

Есть ли обновления о том, кто чем занимается в данный момент?

Тем, кто ищет надежную альтернативу, поддерживаемую Google (кроме тех, что указаны на https://github.com/request/request/issues/3143), я настоятельно рекомендую https://github.com/googleapis/gaxios. Использовал его в недавнем проекте, и пока он отличный.

Какие есть альтернативы? На вашей странице npm написано: For more information about why request is deprecated and possible alternatives refer to {the link to this page}

3143

Реестр npm WARN Использование устаревших данных из https://registry.npmjs.org/ из-за ошибки запроса во время повторной проверки.
npm WARN устарел [email protected] : request устарел, см. https://github.com/request/request/issues/3142

@thbestforyourbizdeployment да.

Спасибо.

можешь помочь мне?

npm WARN устарел [email protected]: request устарел, см. https://github.com/request/request/issues/3142
npm WARN устарел [email protected]: эта библиотека больше не поддерживается
npm ERR! код EEXIST
npm ERR! символическая ссылка системного вызова
npm ERR! путь ../lib/node_modules/firebase-tools/lib/bin/firebase.js
npm ERR! пункт назначения / USR / местные / бен / firebase
npm ERR! errno -17
npm ERR! EEXIST: файл уже существует, символическая ссылка '../lib/node_modules/firebase-tools/lib/bin/firebase.js' -> '/ usr / local / bin / firebase'
npm ERR! Файл существует: / usr / local / bin / firebase
npm ERR! Удалите существующий файл и попробуйте еще раз или запустите npm
npm ERR! с --force для опрометчивой перезаписи файлов.

npm ERR! Полный журнал этого запуска можно найти в:
npm ERR! /Users/bahar/.npm/_logs/2020-11-18T17_07_43_310Z-debug.log

@baharozcelik Тебе нечем помочь.

Читать. Проблема.

sudo npm install --global gulp-cli
попробуй вот так

Была ли эта страница полезной?
0 / 5 - 0 рейтинги