@webpack_ru
Webpack — русскоговорящее сообщество

Обсуждения webpack, лоадеров, плагинов и сборок Правила: http://bit.ly/our_etiquette См. также: @rollup_ru, @react_js, @vscode_ru, @macos_ru, @js_ru

974 members

Архив канала @webpack_ru 27 февраля 2018 г.

12:26:59 ДП
User 76662447
User 67164223
походу доку еще не обновили. Лол. Надо было доку переписать, а потом релиз делать. Смысл сейчас 4 версии?
Я например ещё в том году все либы начал публиковать с флагом sideEffects: false
12:52:48 ДП
User 139068333
о, кажется оживился чат
12:54:00 ДП
User 139068333
а нет. ну короче всё сырое, сейчас переходить нельзя...
12:57:27 ДП
User 76662447
User 139068333
а нет. ну короче всё сырое, сейчас переходить нельзя...
Стабильность — ето когда grunt 1.0 выходит через три года после смерти проекта) А всё остальное конечно нестабильно 🌚
01:43:37 ДП
User 97102774
User 139068333
а нет. ну короче всё сырое, сейчас переходить нельзя...
Потерпи хотя бы месяц.
05:36:33 ДП
User 67164223
User 76662447
Я например ещё в том году все либы начал публиковать с флагом sideEffects: false
что это значит?
05:37:06 ДП
User 67164223
ну хотя бы вебпак дев сервер 3.0 взлетает
05:38:37 ДП
User 76662447
Я хз, мне надоело мучаться с предыдущей версией дев сервера
05:40:15 ДП
User 76662447
User 67164223
что это значит?
Повышенную эффективность компиляции, так как мы гарантируем, что инициализация этого кода не обладает побочными эффектами
05:42:58 ДП
User 76662447
Сейчас например вебпак компилирует import {type Foo} from 'bar' в import 'bar' потому что не обладает информацией о том, на чём может сказываться исключение этого кода из бандла
05:43:12 ДП
User 97102774
User 76662447
Повышенную эффективность компиляции, так как мы гарантируем, что инициализация этого кода не обладает побочными эффектами
А что такое "побочные эффекты" с точки зрения вебпака?
05:43:47 ДП
User 76662447
Абстракция етих ваших гуманоидов
05:44:57 ДП
User 76662447
Вся суть как раз в том, что вебпак не знает что такое побочные эффекты
05:45:38 ДП
User 97102774
Хреново объяснил.
05:45:38 ДП
User 76662447
"ёпта, где мои полифиллы" — ето побочный эффект
05:46:41 ДП
User 97102774
Ладно, я тупой.
05:46:48 ДП
User 97102774
+ этой ночью не спал.
05:47:40 ДП
User 76662447
Если исключение кода из бандла оказывает влияние на выполнение всей программы, этот код убирать нельзя
05:48:11 ДП
User 97102774
О, теперь понял.
05:48:44 ДП
User 76662447
Если код фачит прототипы, добавляет полифиллы или делает фетч в iife
05:49:22 ДП
User 39232169
это поле в package.json нужно прописать?
05:49:27 ДП
05:50:45 ДП
User 76662447
После коллективного обсуждения к этому пришли все в качестве альтернативы для императивного /* #__PURE__ */
06:01:12 ДП
User 39232169
А кто генерировал этот самый pure раньше?
06:02:02 ДП
User 76662447
Бабель
06:02:42 ДП
User 76662447
Да и сейчас генерирует, просто для людей решение тоже нужно
06:03:57 ДП
User 76662447
Бабелю не влом проставить pure в каждой своей конструкции, чего не скажешь про людей)
06:04:07 ДП
User 39232169
Я сейчас использую ts + webpack (без Бабеля) и при реэкспортах не работает три-шейкинг
08:26:59 ДП
User 112715267
User 76662447
Если код фачит прототипы, добавляет полифиллы или делает фетч в iife
А чем фетч в iife сайд эффект?
08:27:06 ДП
User 112715267
Он же изолирован, получается
08:30:36 ДП
User 448880090
User 112715267
Он же изолирован, получается
так он запрос делает, это и есть сайд
08:34:04 ДП
User 76662447
User 112715267
А чем фетч в iife сайд эффект?
Понимаешь, это исключительно твоё дело как автора библиотеки) Считаешь что твой фетч может быть исключён из бандла — вписываешь опцию, не считаешь — не вписываешь
08:36:14 ДП
User 76662447
В этом и смысл, предоставить людям возможность пояснить, как их код относится к минификации
08:39:12 ДП
User 76662447
Лично моё мнение —
export const foo = () => fetch(...) 
не сайд эффект,
void function() {
  return fetch(...)
}()
сайд эффект
08:41:16 ДП
User 112715267
User 76662447
Лично моё мнение —
export const foo = () => fetch(...) 
не сайд эффект,
void function() {
  return fetch(...)
}()
сайд эффект
А лол, ты так имел в виду
08:41:21 ДП
User 112715267
Я о другом подумал
08:42:28 ДП
User 76662447
А как ещё можно трактовать фетч в iife?)
11:02:31 ДП
User 199088429
Подскажите плиз. Пытаюсь добавить json отдельным файлом в сборку, но почему то в начале файла появляется строка ‘use strict’, которая все крашит. Вебпак может такое делать?
11:13:15 ДП
User 134905826
User 199088429
Подскажите плиз. Пытаюсь добавить json отдельным файлом в сборку, но почему то в начале файла появляется строка ‘use strict’, которая все крашит. Вебпак может такое делать?
предположение: eslint-loader умеет делать auto fix, есть такой в конфиге вебпака?
11:13:42 ДП
User 32530886
User 134905826
предположение: eslint-loader умеет делать auto fix, есть такой в конфиге вебпака?
лоадер только загружает
11:14:04 ДП
User 147771380
User 199088429
Подскажите плиз. Пытаюсь добавить json отдельным файлом в сборку, но почему то в начале файла появляется строка ‘use strict’, которая все крашит. Вебпак может такое делать?
Ищи banner plugin
11:14:10 ДП
User 147771380
Может такое делать
11:15:17 ДП
User 199088429
User 147771380
Ищи banner plugin
В конфиге такого нет
11:15:28 ДП
User 134905826
User 32530886
лоадер только загружает
https://github.com/webpack-contrib/eslint-loader#fix-default-false — про это думал.
11:15:52 ДП
User 199088429
User 134905826
предположение: eslint-loader умеет делать auto fix, есть такой в конфиге вебпака?
Нету, да вот все что есть для json 
{
        test: /\.json$/,
        loader: 'json-loader'
      }
11:16:19 ДП
User 32530886
чет я не пойму какой смысл юзать в лоадере фикс
11:16:26 ДП
User 32530886
он же исходники не трогает
11:17:16 ДП
User 134905826
User 32530886
чет я не пойму какой смысл юзать в лоадере фикс
не суть, первое что пришло в голову.
11:17:33 ДП
User 32530886
просто юзай eslint --fix
11:38:21 ДП
User 169098839
User 32530886
просто юзай eslint --fix
)))
12:26:21 ПП
User 197072659
Помогите плз: webpack3 
какой првильный конфиг для резолва в base64 мелких картинок и в url с копированием на диск для бОльших файлов
12:30:19 ПП
User 55943427
User 197072659
Помогите плз: webpack3 
какой првильный конфиг для резолва в base64 мелких картинок и в url с копированием на диск для бОльших файлов
не делай резолв в base64 никаких картинок вообще
12:30:30 ПП
12:30:55 ПП
User 197072659
есть варик делать sprite или base64
12:31:01 ПП
User 197072659
выбрали base64
12:31:44 ПП
User 55943427
потому что браузер лоадит картинки параллельно дому. А так у тебя размер дома раздувается, и браузер парсит хтмл и цсс дольше
12:32:04 ПП
User 55943427
спрайты не нужны и вредны, если у вас http2
12:32:43 ПП
User 55943427
http2 - да здравствует много мелких файлов
12:36:04 ПП
User 55943427
https://csswizardry.com/2017/02/base64-encoding-and-performance/
csswizardry.com/2017/02/base64-encoding-and-performance
A look at the many huge disadvantages of Base64 encoding assets into your CSS
12:36:30 ПП
User 55943427
вот тут подробно с тестами
02:23:21 ПП
User 292848511
я правильно понимаю, то, что завёруто в модуль - значит скомпилировано, а то что там export from - это не скомпилировано?