Перейти к содержимому

Фото
* * * * * 1 голосов

Курилка для программистов


  • Вы не можете создать новую тему
  • Please log in to reply
1042 ответов в этой теме

#1021 kuznets

kuznets
  • Постоялец
  • 4 819 сообщений

Отправлено 29 Июль 2018 - 16:53

А чем error от stderr отличается?

Может тебе нужна команда "which yarn"?

 

Или "which yarn>/dev/null;echo $?"
Вернет "0" в stdout, если установлен, "1" если нет.

 

Это все вроде как не очень кросплатформенно, тебе только для линукса надо?

про which yarn не знал. Мне для всего нужно, я хочу в автоматическом режиме запустить yarn install а если его нет у пользователя то npm install


https://nodejs.org/a...ptions_callback
 

Если у тебя error выставлен, значит yarn (npm) или не установлен или с ним(и) что-то не так, но это не имеет значения.

Вот мне и нужно различать оно "не установлен" или с ним "что-то не так"


  • 0

Типичный, классический кузнец.


#1022 Дык

Дык
  • Постоялец
  • 9 964 сообщений
  • Откуда:/dev/null

Отправлено 29 Июль 2018 - 17:12

Вот мне и нужно различать оно "не установлен" или с ним "что-то не так"

А, ну тогда "which" правильно.

Можно ещё "type":
$ type npm

Если установлено, он укажет путь до бинарника. Статус будет нулевым (успех).
Если не установлено, то выдаст "not found". Статус будет 127 (ошибка)


Сообщение изменено: Дык (29 Июль 2018 - 17:13 )

  • 0

Вначале делаю, потом думаю :)


#1023 kuznets

kuznets
  • Постоялец
  • 4 819 сообщений

Отправлено 29 Июль 2018 - 17:13

А, ну тогда "which" правильно.

Можно ещё "type":
$ type npm

Если установлено, он укажет путь до бинарника. Статус будет нулевым (успех).
Если не установлено, то выдаст "not found". Статус будет 127

винда, мак эти команды работают?

 

type yarn например кидает ошибку в error, можно конечно так обойти

 

if (error && !stdout == 'yarn: not found') console.log('exec error: ', error);

Сообщение изменено: kuznets (29 Июль 2018 - 17:18 )

  • 0

Типичный, классический кузнец.


#1024 Дык

Дык
  • Постоялец
  • 9 964 сообщений
  • Откуда:/dev/null

Отправлено 29 Июль 2018 - 17:19

На маке точно будет работать.
На винде - не знаю. Винда - это геморой. Есть голая винда, есть cygwin, есть powershell. Хз


  • 0

Вначале делаю, потом думаю :)


#1025 Sergio

Sergio
  • Постоялец
  • 3 049 сообщений

Отправлено 29 Июль 2018 - 17:52

На винде - не знаю.

 

На винде не будет. Если установить какой-то софт для создания юникс-подобного окружения (msys, cygwin), то будет (наверное :) ).


Сообщение изменено: Sergio (29 Июль 2018 - 17:53 )

  • 0

#1026 kuznets

kuznets
  • Постоялец
  • 4 819 сообщений

Отправлено 29 Июль 2018 - 22:13

На винде не будет. Если установить какой-то софт для создания юникс-подобного окружения (msys, cygwin), то будет (наверное :) ).

Не вариант, я же не могу заставить юзеров ставить всякое окружение. Смысл в том, что они выполняют команду и ОП ставится само от и до.


  • 0

Типичный, классический кузнец.


#1027 skill-A

skill-A

    Huge Cojones

  • Постоялец
  • 6 979 сообщений

Отправлено 30 Июль 2018 - 10:35

Может кто знает, вопрос по node.js

Как мне программным методом проверить установлен в системе npm или yarn?

 

скажи лучше по какой причине приходится так колхозить


  • 0

улыбнись


#1028 Sergio

Sergio
  • Постоялец
  • 3 049 сообщений

Отправлено 30 Июль 2018 - 17:24

Не вариант, я же не могу заставить юзеров ставить всякое окружение. Смысл в том, что они выполняют команду и ОП ставится само от и до.

 

Кросплатформенность - это вообще гемор в реализации.

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


  • 0

#1029 kuznets

kuznets
  • Постоялец
  • 4 819 сообщений

Отправлено 30 Июль 2018 - 19:19

скажи лучше по какой причине приходится так колхозить.

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


Кросплатформенность - это вообще гемор в реализации.

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

А как же актуальные версии зависимостей?


  • 0

Типичный, классический кузнец.


#1030 skill-A

skill-A

    Huge Cojones

  • Постоялец
  • 6 979 сообщений

Отправлено 31 Июль 2018 - 13:01

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

 

https://www.npmjs.co...kage/flightplan


  • 1

улыбнись


#1031 kuznets

kuznets
  • Постоялец
  • 4 819 сообщений

Отправлено 02 Август 2018 - 20:12

execa + listr Тоже неплохое решение моей задачи.


  • 1

Типичный, классический кузнец.


#1032 Дык

Дык
  • Постоялец
  • 9 964 сообщений
  • Откуда:/dev/null

Отправлено 19 Август 2018 - 01:08

Я для себя придумал такую эвристику оценки сложности языка - сколько адовых паззлеров на этом языке можно создать, так чтоб взорвался мозг нахрен. В моём личном списке Java лидирует с приличным отрывом.  :lol: Не устаю удиваляться.
Си - прост в очень далёком приближении. На деле не очень прост.
Сложность мгновенно вырастает до уровня nightmare, когда дело заходит до платформозафисимых фич, низкоуровщины и разных особенностей (например, компиляция). Можно себе ноги вместе со всем остальным очень качественно отстрелить.
Руби - простой, но есть нюансы.
Питон - простой, но есть нюансы.
JS - не очень простой, очень странный во многих местах, с кучей возможностей по острелу ног. Но в первом приближении кажется простым. 
PHP - в принципе простой.
Всё написанное - имхо.


  • 0

Вначале делаю, потом думаю :)


#1033 MadeYouLook

MadeYouLook

    Повезло, что я не Сергей и не Антон.

  • Пользователь
  • 64 сообщений

Отправлено 20 Август 2018 - 19:39

Zero, Нет у меня времени, все в этом мире проверить самостоятельно.
По этому Дык, спасибо за подсказки.

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

Spoiler

 


Средняя зарплата PHP-Developer в США
https://www.indeed.c...eloper-Salaries


  • 0

#1034 Zero

Zero

    TRUST NO ONE

  • Постоялец
  • 10 215 сообщений
  • Откуда:Таллин

Отправлено 20 Август 2018 - 22:03

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


  • 0
Моя Родина - СССР! Пролетарии всех стран, соединяйтесь!
-----------------------------------------------------------------------
Ясность - одна из форм полного тумана. Форумчане, давайте жить дружно!

#1035 Дык

Дык
  • Постоялец
  • 9 964 сообщений
  • Откуда:/dev/null

Отправлено 13 Сентябрь 2018 - 18:57

Кстати, с днём погромиста всех )) 


  • 4

Вначале делаю, потом думаю :)


#1036 Zero

Zero

    TRUST NO ONE

  • Постоялец
  • 10 215 сообщений
  • Откуда:Таллин

Отправлено 01 Ноябрь 2018 - 22:47

Вот, блин, дилемма.

Есть задача - проксировать запросы от докер-хоста к докер-контейнерам с application service'ами. Решается в данный момент без проблем nginx'ом.

Получаю таск - написать свой прокси-сервер, делающий то же самое, но наш. Потому что хотим less moving parts, типа раз это встроено в наш сервер, то не надо тянуть и настраивать дополнительную утилиту. IT понятно, проще. И я могу этот прокси написать. Но оно как-то doesn't seem right :hmmm:при наличии готового работающего решения.


  • 0
Моя Родина - СССР! Пролетарии всех стран, соединяйтесь!
-----------------------------------------------------------------------
Ясность - одна из форм полного тумана. Форумчане, давайте жить дружно!

#1037 skill-A

skill-A

    Huge Cojones

  • Постоялец
  • 6 979 сообщений

Отправлено 04 Ноябрь 2018 - 08:21

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


  • 0

улыбнись


#1038 Zero

Zero

    TRUST NO ONE

  • Постоялец
  • 10 215 сообщений
  • Откуда:Таллин

Отправлено 04 Ноябрь 2018 - 14:27

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

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


  • 0
Моя Родина - СССР! Пролетарии всех стран, соединяйтесь!
-----------------------------------------------------------------------
Ясность - одна из форм полного тумана. Форумчане, давайте жить дружно!

#1039 Агент

Агент

    Ништяяяяк

  • S-Модератор
  • 19 886 сообщений
  • Откуда:Таллинн

Отправлено 04 Ноябрь 2018 - 15:02

Zero, F5 


  • 0

По часам только таблетки надо принимать! А властвовать и унижать можно в любое время!

#1040 Zero

Zero

    TRUST NO ONE

  • Постоялец
  • 10 215 сообщений
  • Откуда:Таллин

Отправлено 04 Ноябрь 2018 - 15:10

Агент, щито?


  • 0
Моя Родина - СССР! Пролетарии всех стран, соединяйтесь!
-----------------------------------------------------------------------
Ясность - одна из форм полного тумана. Форумчане, давайте жить дружно!

#1041 Агент

Агент

    Ништяяяяк

  • S-Модератор
  • 19 886 сообщений
  • Откуда:Таллинн

Отправлено 04 Ноябрь 2018 - 15:12

Zero, https://www.f5.com/p...raffic-manager 


  • 0

По часам только таблетки надо принимать! А властвовать и унижать можно в любое время!

#1042 Zero

Zero

    TRUST NO ONE

  • Постоялец
  • 10 215 сообщений
  • Откуда:Таллин

Отправлено 04 Ноябрь 2018 - 16:22

Агент, гляну, спасибо. Но, боюсь, будет overkill для наших задач, не те объемы, не та нагрузка.


  • 0
Моя Родина - СССР! Пролетарии всех стран, соединяйтесь!
-----------------------------------------------------------------------
Ясность - одна из форм полного тумана. Форумчане, давайте жить дружно!

#1043 Агент

Агент

    Ништяяяяк

  • S-Модератор
  • 19 886 сообщений
  • Откуда:Таллинн

Отправлено 04 Ноябрь 2018 - 17:00

Ентерпрайз, жы есть!


  • 0

По часам только таблетки надо принимать! А властвовать и унижать можно в любое время!