Size: a a a

2021 June 18

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
хотя конечно ещё есть время, и вдобавок мне нужен минорный релиз эффектора, чтобы синхронизировать наработки для forest, но тогда кто-то должен генерировать типы вместо меня)
источник

c⁣

createStore<🦉>... in ☄️ effector
Мб я могу чем-то помочь?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
блин, короче хотел переделать генератор тестов типов, потратил несколько дней, а он вообще не получился, ни единой рабочей идеи(( даже переиспользовать нечего, неделя насмарку 😰
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
в общем всё же сохраню перед тем как дропнуть https://github.com/effector/effector/commit/735cd9dfdf4a39c15b7ef3a92bd24148c020c0bd
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от Egor Гуща
а в чем затык вышел, интересно?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
очень странные баги с пропаданием нужных кейсов и дублированием лишних, складывается впечатление, что выбранный подход не верен полностью и нужно возвращаться к текущему полному перебору с хэшами для дедупликации
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
в конечном счёте все типы апи должны тестироваться через небольшое число высокоуровневых стратегий вроде «проверить что будет если передать в target не тот тип что в source»
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
а ещё нужно подрубиться к тайпскрипту без использования jest, а то полный прогон тестов в целую минуту — это дико неудобно
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от Egor Гуща
А как до этого было?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
особый dsl https://github.com/effector/effector/blob/master/src/types/src/generator/guard.generator.ts#L16

он генерит сносно, но не всегда надёжно — можно потерять кейс и даже не подозревать об этом
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
не подозревать потому что кейсов генерируется очень много, файлы измеряются в тысячах строк
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
а эти файлы необходимы пока нет системного подхода, то есть чтобы не снапшотить вывод каждого кейса нужен способ обобщить их чтобы выводить лишь несостыковки
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
иначе говоря, всё должно проверяться на логическое соответствие а не на построчное сходство, а для этого нужно обобщить все кейсы
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от Egor Гуща
смотри, вот работа с типами это ведь по сути своей работа со множествами
можно ли выстроить ту же таблицу соотвествий(на бумаге) и от нее отталкиваться, может закономерности будут, хотя учитывая тот факт, что не должно быть дублей и пропущеных кейсов не уверен…
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
таблицы многомерные
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
измерений по двадцать как правило
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
я пробовал рисовать, это по факту фрактал
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
оч похоже на описание четвёртого измерения в dark forest лю цысиня
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
поэтому собственно в генераторе используется концепция вложенного паттерн-матчинга по двум-трём группам матчей
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Переслано от 🚀🔬 🚀🔬🚀🔬...
cases: {
 src: {
   unit: [
     {source: 'event'},
     {source: 'store'}
   ],
   tuple: {source: 'array'},
 },
 target: {
   unit: [
     {target: 'event'},
     {target: 'store'}
   ],
   tuple: {target: 'array'},
   none: {target: 'none'}
 },
}
источник