Авторський контент для JavaScript розробників, але не завжди про JS:). Пишу про архітектуру, best practices, продуктивність, безпеку, інструментарій.
Viktor Turskyi (@koorchik), Cofounder at Webbylab, SWE at Google
Рекламу не розміщую!
Post #9
1.31K
Тред от Yehuda Katz про проблемы с кроссплатформенностью NodeJs модулей. Многие разработчики забивают на Windows. В этом нет большой проблемы, пока ты не публикуешь свой модуль на NPM.
Яхуда озвучивает 2 основные проблемы при работе под Windows:
1. Практически каждый package.json содержит команды в секции scripts, которые не работают в Windows. Основная причина - использование && и другого bash синтаксиса. От себя добавлю, часто вижу, что устанавливаются переменные окружения без использования crossenv, к примеру.
2. Это пути на файловой системе. Разработчики ожидают, что разделитель "/" - это валидный разделитель в Windows разделитель "\" ("\\"). Это создает ряд багов связанных с обработкой путей (например, когда мы обабатываем пути регулярками и тд).
Как делать правильно, можно найти в треде
https://twitter.com/wycats/status/1090307478254829569
Делайте свои модули кроссплатформенными, Micsrosoft сделала же VSCode под Linux и Mac :)
Twitter Yehuda Katz 🥨 I've been using Windows for a few years. I originally switched because I noticed that there were a lot of Windows users trying to program in JavaScript, but that the dominant perspective in OSS (at the time) was "nobody uses Windows so it doesn't matter". Яхуда озвучивает 2 основные проблемы при работе под Windows:
1. Практически каждый package.json содержит команды в секции scripts, которые не работают в Windows. Основная причина - использование && и другого bash синтаксиса. От себя добавлю, часто вижу, что устанавливаются переменные окружения без использования crossenv, к примеру.
2. Это пути на файловой системе. Разработчики ожидают, что разделитель "/" - это валидный разделитель в Windows разделитель "\" ("\\"). Это создает ряд багов связанных с обработкой путей (например, когда мы обабатываем пути регулярками и тд).
Как делать правильно, можно найти в треде
https://twitter.com/wycats/status/1090307478254829569
Делайте свои модули кроссплатформенными, Micsrosoft сделала же VSCode под Linux и Mac :)