@nodejs_ru

Страница 535 из 2748
Кирилл
27.01.2017
14:20:43
судя по докам это даже ес6

yep
27.01.2017
14:20:44
но не работает

General?
27.01.2017
14:21:04
в ноде своя модульная система

Kelin
27.01.2017
14:21:06
ну у меня на ноде работает, странно

Google
General?
27.01.2017
14:21:18
юзай рекваер

Kelin
27.01.2017
14:21:28
только без вот этого (function (exports, require, module, __filename, __dirname) { говна

yep
27.01.2017
14:25:18
юзай рекваер
жизнь боль я не могу заюзать require, я подрубаю код, в котором я не могу изменять

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

yep
27.01.2017
14:30:24
думаю запустить через babel-node и похуй на перфоманс

НА ПРОДЕ

Vladimir
27.01.2017
14:32:33
yep
27.01.2017
14:33:07
Не в ту сторону думаешь
я понимаю, это от отчаяния

Kelin
27.01.2017
14:33:19
разве?

Vladimir
27.01.2017
14:33:34
я понимаю, это от отчаяния
Транспайль сервер, и запускай результат

Google
yep
27.01.2017
14:33:38
https://github.com/nodejs/help/issues/53
а что тут в двух словах? https://github.com/nodejs/NG/issues/5

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

Vladimir
27.01.2017
14:34:24
разве?
Даже спеку еще уточняют

yep
27.01.2017
14:35:09
Транспайль её
ГЕМОРНО, кучу хуйни делать ради нескольких хелперов, которые мне нада

думал щс node 7 запущу и будет заебок, но фиг

Vladimir
27.01.2017
14:36:16
Даже спеку еще уточняют
Хотя некоторые запускают модули, но это чисто эксперименты

Либу

yep
27.01.2017
14:37:55
я эту либу и написал, просто она компилится для вебпака; а я захотел часть кода заюзать в другой нодприле — билд не могу юзать, а вот часть сорцов подключить могу :)

хах

я думаю теперь, что проще продублировать код

спасибо

yep
27.01.2017
15:09:22
Всегда транспилируй для всех lts версий ноды
в итоге сделал 2 билда в либе: if (process.env.NODE_BUILD) { config.target = 'node'; config.output.filename = 'node_index.js' }

Vladimir
27.01.2017
16:35:42
Поясни, пжлста
что именно?

йоу

Kelin
27.01.2017
16:42:14
vpn в китае запретили, кстате

Pavel
27.01.2017
16:42:30
что именно?
Ты имеешь в виду, что надо транспилить всё, что выше LTS?

Google
Vladimir
27.01.2017
16:42:57
да, всё чего нет в lts

Pavel
27.01.2017
16:43:07
ну логично так-то

Я вообще с подозрением отношусь у кодищу, которое нельзя просто выполнить через node foo.js

Yergali
27.01.2017
16:45:04
Есть кто работал с краулер?

Evgeny
27.01.2017
16:51:18
shame on me, then

Denis
27.01.2017
16:52:28
Интересно, как можно пропарсить директорию из извлечь из неё все фрагменты, где используется process.env?

Evgeny
27.01.2017
16:52:36
grep -R

Никита
27.01.2017
16:52:45
в браузерах — интовый. в ноде — нет
https://nodejs.org/api/timers.html#timers_class_timeout

Denis
27.01.2017
16:53:18
grep -R
Надо извлечь содержимое, ключ, который извлекается из env)

Evgeny
27.01.2017
16:53:34
| awk/sed ?

Никита
27.01.2017
16:53:41
Например, в ноде можно таймауты анрефить — тогда они не будут мешать завершению процесса.

Denis
27.01.2017
16:53:44
eslint?

Никита
27.01.2017
16:54:20
eslint?
еслинт это линтер, тебе нужен генератор аст-дерева, кмк

babylon, например

Denis
27.01.2017
16:54:57
Я имел ввиду да, парсер его)

Никита
27.01.2017
16:55:06
babylon бери

Denis
27.01.2017
16:55:10
Я думал уже есть решения

Загуглил и тишина

Никита
27.01.2017
16:55:22
https://github.com/babel/babylon

Google
Denis
27.01.2017
16:55:48
Нормальная же задача, понять – какие переменные могут использоваться в этом проекте

Никита
27.01.2017
16:56:12
Но ты это, статическим анализом всё не поймаешь.

Denis
27.01.2017
16:56:19
Оу, RReverser

Vladimir
27.01.2017
16:56:22
Да реально лучше sed ил что то такое

Никита
27.01.2017
16:56:24
И я бы забил и юзал греп =).

Denis
27.01.2017
16:56:44
)) Хотелось бы автоматизировать это и отдать в CI

Vladimir
27.01.2017
16:56:49
корнер кейсы когда нужен синтаксический анализ чкдовищно маловероятны

Denis
27.01.2017
16:56:59
Чтобы она обновляла envs.md

Admin
ERROR: S client not available

Vladimir
27.01.2017
16:57:28
мне кажется констурктивнее делать обертку

над process.env

Denis
27.01.2017
16:57:40
Это сразу DI

Не круто)

Хотелось бы делать с наименьшим количеством зависимостей, чтобы copy-paste-share

Vladimir
27.01.2017
16:58:26
да и вообще - доступ к env по проекту не разбрасывать в идеале

Vint
27.01.2017
16:58:35
)) Хотелось бы автоматизировать это и отдать в CI
Написать просто рекурсивный ридер файлов и поиск в нём. Аналог поиска в редакторе по файлам. 15 минут работы)

Denis
27.01.2017
16:58:58
Но тогда портабельность уменьшается

Vladimir
27.01.2017
16:59:13
у меня такой подход - есть config

нужно его создать

Google
Vladimir
27.01.2017
16:59:20
из чего не важно

env, argv, и т д

но потом уже туда лезть нельзя

Denis
27.01.2017
16:59:34
Как в Meteor :D

Vladimir
27.01.2017
17:00:57
const config = { foo: readStringFromEnv('FOO', 'desc'), bar: readIntFromEnv('BAR', 'desc'), }

как то так обычно это выглядит

Vint
27.01.2017
17:01:06
Вот тоже трезвое решение
Я так и пользую. Тот же production mode один раз "считается" в конфиг файле, а в приложении используются флаги из конфига. Удобно. Можно nconf внедрить в проект.

Vladimir
27.01.2017
17:01:54
соответственно имея такую конструкцию, можно спокойно за всякого парсинга сгенерить описание

Никита
27.01.2017
17:14:19
Esprima, нет?
бабилон же, ну

Pavel
27.01.2017
17:15:02
бабилон же, ну
Чем он лучше?

Никита
27.01.2017
17:15:40
Он парсит то, что есприма ещё не умеет.

Pavel
27.01.2017
17:15:54
Например?

Никита
27.01.2017
17:16:09
То есть примерно тем же, почему у всех parser: babel-eslint в .eslintrc написано.

Pavel
27.01.2017
17:16:28
Импорты/экспорты она умеет и вот это всё

Просто сам ей пользуюсь и полностью устраивает, вот и спросил

Никита
27.01.2017
17:17:16
Импорты/экспорты она умеет и вот это всё
Да, умеет, но емнип не так давно.

https://github.com/babel/babel-eslint: > Note: You don't need to use babel-eslint if you are using ES2015 (ES6), ES2016 (ES7) or ES2017 (ES8). ESLint actually supports ES2015/ES2016/ES2017, JSX, and object rest/spread by default now. At the moment, you'll need it if you use stuff like class properties, decorators, types.

Если ты парсишь исходники чужих модулей, то там вполне можно встретить и class properties, и декораторы, и типы

Так что лучше парсером бабеля парсить всё.

@Oharr у них форматы совместимы, кстати

Страница 535 из 2748