Aleksand
выше
а где? там картинка с логом только?
Aleksand
вижу
GG
вообщем все работает как должно, при этом сыпяться эти ошибки, но они не на что не влияют
Aleksand
я уже устал биться с этим конфигом если чест
короче, у тебя похоже вебпак лезет в нативные модули ноды, это типичная херня
Aleksand
решается примерно так https://github.com/automation-stack/node-machine-id/blob/master/webpack.config.babel.js
Aleksand
let nodeModules = fs.readdirSync('./node_modules') .filter((module) => { return module !== '.bin'; }) .reduce((prev, module) => { return Object.assign(prev, {[module]: 'commonjs ' + module}); }, {});
Aleksand
fs не в node_modules
Aleksand
node: { //do not include polyfills... //http://webpack.github.io/docs/configuration.html#node console: false, process: false, child_process: false, global: false, buffer: false, crypto: false, __filename: false, __dirname: false }, externals: nodeModules
GG
но... это же костыль
GG
почему exclude не работает!?
Aleksand
но... это же костыль
это адаптация для контекста ноды, исключаешь стандартную библиотеку, это стандартные средства webpack
Aleksand
почему exclude не работает!?
он работает, у тебя fs не оттуда же)
Aleksand
он его тоже паковать пытается, это надо отключить
GG
ааа, я понял) спасибо)
Aleksand
а так из node_modules все исключается нормально для лоадеров
GG
я неделю уже с этими ошибками работаю)
Aleksand
я неделю уже с этими ошибками работаю)
это типичная проблема когда используешь вебпак в разных контекстах, в целом не костыль даже на мой взгляд
Aleksand
когда пакуешь только для браузера то все ок будет
GG
ааа, то есть у dev-server свой контекст, а у webpack свой. Вот оно че!
Aleksand
dev-server watch же
скорее UglifyJSPlugin
Aleksand
хотя надо разбираться, хз
GG
GG
но это не особо важно, у меня там примерно на 12 модулей ругаеться)
Aleksand
вообще пока с вебпаком не прострелишь себе все ноги толком его готовить не выйдет, я до сих пор встречаю места у себя где вместо 10 секунд можно за 2 секунды сделать все поправив конфиг
Aleksand
кстати для минификации с вепаком надо использовать это, иначе очень медленно бывает https://github.com/gdborton/webpack-parallel-uglify-plugin
Sergey
target: 'web' не поможет?
Aleksand
No minification: Webpack build complete in: 86890ms (1m 26s) Built in uglify plugin: Webpack build complete in: 2543548ms (42m 23s) With parallel plugin: Webpack build complete in: 208671ms (3m 28s) With parallel/cache: Webpack build complete in: 98524ms (1m 38s)
GG
я минифицирую только на прод, так что мне тут скорость не важна. Но спасибо за инфу
Aleksand
target: 'web' не поможет?
ну если нужен только web то возможно
Aleksand
я минифицирую только на прод, так что мне тут скорость не важна. Но спасибо за инфу
если файлов минифицируешь соточку хотя бы то разницу оценишь быстро)
Aleksand
вот когда нужно спаковать для node и для electron то хз вообще какая логика у этих таргетов, там автомагия какая-то
Aleksand
target: 'electron'
ну я знаю про них, при этом вечно летят тикеты что нихера под электрон не пакуется либа
Aleksand
лол либу собирать вебпаком))
а чем ее собирать если либа сложная? в вебпаке есть нормальные средства для этого
Sergey
вообще
Sergey
пройтись по ней бабелем
Sergey
и пусть собирает её тот, кто будет использовать
Aleksand
пройтись по ней бабелем
ну при сборке есть еще логика кроме бабеля
Aleksand
в либе не только js-код
Sergey
ну понятно)
Sergey
поэтому и проблемы у людей
Aleksand
а не должно быть)
это кому не должно? я использую electron активно, например, там часто есть кроссплатформенный бинарный стафф, я пишу единые конфиги и единую экосистему для web + backend + mobile, там webpack решает, хотя можно взять и другие инструменты
Aleksand
поэтому и проблемы у людей
нет, не поэтому, там специфика электрона которая не охватыается таргетом electron у вебпака
Aleksand
если только контекст node то тогда можно и бабелем пройтись и ок, и тесты простые там, и вообще проблем нет
Nikolay
интересную штуку нашел, https://httpbin.org/ если тебе нужны sandbox данные )
Aleksand
интересную штуку нашел, https://httpbin.org/ если тебе нужны sandbox данные )
она кстати оооочень быстрая и не банит рейтлимитами
Таймураз
если только контекст node то тогда можно и бабелем пройтись и ок, и тесты простые там, и вообще проблем нет
Я не все прочёл- платформа- набор программных решений, тогда как фреймворк- программное решение, требующее определенные архитектурные решения (либо закладывает в себе архитектурное решение)
Таймураз
Платформа может быть фреймворком Но нода- не фреймворк
Aleksand
Платформа может быть фреймворком Но нода- не фреймворк
условно говоря это навязывание одного из контекстных значений слова, но это непринципиальный вопрос)
GG
Покажешь? А то не понятно о чем речь
Andrew Kiselev
ребят, подскажите, пожалуйста, как создавать пользователей в пг на основе социальных данных (accessToken, profileId)?
Kons
ребят, подскажите, пожалуйста, как создавать пользователей в пг на основе социальных данных (accessToken, profileId)?
1. После получения успешного ответа от соц.входа сохраняешь profileId куда-нибудь в юзера (или в его аккаунт, если аккаунты в другой таблице). 2. В следующий раз, когда пользователь попытается зайти, ищешь пользователя с полученным profileId. Если таковой не найден, значит пользователь новый — переходим к шагу 1. accessToken нужен, если ты собираешься ходить в АПИ соц.сети от имени пользователя. Если это просто вход, то токен не нужен.
Kons
И про платформы/фреймворки добавлю :)
Kons
а если авторизация была с мобильного телефона? То получается нужно передать эти данные на сервер, сервер должен сходить в соц сеть и проверить эти данные и потом только возвращать jwt?
Не совсем. В момент, когда пользователь нажимает на экране соц.входа Разрешить или Войти, соц.сеть перенаправляет запрос на твой сервер (на callbackURL), и только после того, как ты все проверил, ты перенаправляешь запрос на свою страницу, на которой клиентское приложение получит JWT.
Kons
Вот у меня например так сейчас
Kons
GG
Там же элементарный конфиг, или я че то недогоняю?
Andrew Kiselev
и последний вопрос, если две соц сети вк и фб, как лучше разграничить пользователей?
Kons
и последний вопрос, если две соц сети вк и фб, как лучше разграничить пользователей?
Я обычно завожу две таблицы: User и UserIdentity. У UserIdentity есть поле provider. Соответственно, в этом поле указывается vk или facebook. При поиске profileId указывается ещё и дополнительный критерий WHERE provider='vk' или WHERE provider='facebook'. Ну и каждая соц.сеть редиректит на свой «уникальный» callbackURL, чтобы их отличать. Типа /auth/callback/vk и /auth/callback/facebook.
GG
Как это - "для убивания export default" ?
Kons
Сравнение DBeaver и Postico :)
Kons
Kons
Andrew Kiselev
Postico приятнее, даже за такое можно заплатить если все время надо работать с ним
GG
Как это - "для убивания export default" ?
Наверно ты имел ввиду компеиляцию из es6, в es5. Тогда понятно)
GG
Подсказка, плагинов очень много, задолбешся все подключать. Есть presets - это набор плагинов