А так же тупая история: я тут случайно обнаружил, что смартбандл попробовали заиспользовать в https://github.com/r13v/create-slot, но в итоге отказались в пользу tsup.
Ошибка оказалась максимально тупая: так как я добавлял поддержку реакта не сразу, то я забыл включить в проверку энтрипоинтов расширения *.tsx и проверяю только *.ts. В итоге тайпинги для tsx не собираются.
Исправлю в следующем патче.
Если же у вас возникли проблемы - не стесняйтесь писать. Помогу, поправлю ошибки, добавлю нужные фичи.
Ошибка оказалась максимально тупая: так как я добавлял поддержку реакта не сразу, то я забыл включить в проверку энтрипоинтов расширения *.tsx и проверяю только *.ts. В итоге тайпинги для tsx не собираются.
Исправлю в следующем патче.
Если же у вас возникли проблемы - не стесняйтесь писать. Помогу, поправлю ошибки, добавлю нужные фичи.
GitHub
GitHub - r13v/create-slot: Slots allows developers to render content elsewhere in a React application.
Slots allows developers to render content elsewhere in a React application. - r13v/create-slot
👍1
v0.13.1
https://github.com/XaveScor/smartbundle/releases/tag/v0.13.1
- Добавлена поддержка tsx файлов как энтрипоинтов
https://github.com/XaveScor/smartbundle/releases/tag/v0.13.1
- Добавлена поддержка tsx файлов как энтрипоинтов
GitHub
Release v0.13.1 · XaveScor/smartbundle
What's Changed
139: support of transpiling tsx files by @XaveScor in #141
Full Changelog: v0.13.0...v0.13.1
139: support of transpiling tsx files by @XaveScor in #141
Full Changelog: v0.13.0...v0.13.1
🔥1
smartbundle
А так же тупая история: я тут случайно обнаружил, что смартбандл попробовали заиспользовать в https://github.com/r13v/create-slot, но в итоге отказались в пользу tsup. Ошибка оказалась максимально тупая: так как я добавлял поддержку реакта не сразу, то я…
Из приятного: смартбандл уже лучше чем tsup(когда работает). К примеру, у https://github.com/r13v/create-slot прямо сейчас есть бага, которую ни линтер, ни tsup не отловил.
Тайпинги попросту работать у пользователя не будут, так как @types/react не будет установлен в окружении пользователя, из-за чего все импорты из "react" будут резолвиться в any.
Тайпинги попросту работать у пользователя не будут, так как @types/react не будет установлен в окружении пользователя, из-за чего все импорты из "react" будут резолвиться в any.
🔥4
v0.14.0
https://github.com/XaveScor/smartbundle/releases/tag/v0.14.0
Так как наконец-то вышел vitest@3, то это сняло все ограничения по переходу на новую версию vite
В этом релизе обновлены все зависимости. Теперь смартбандл работает на vite 6 и vitest 3.
Если вы используете vitest у себя в проекте, то потребуется обновлить vitest до 3 версии для корректной работы.
https://github.com/XaveScor/smartbundle/releases/tag/v0.14.0
Так как наконец-то вышел vitest@3, то это сняло все ограничения по переходу на новую версию vite
В этом релизе обновлены все зависимости. Теперь смартбандл работает на vite 6 и vitest 3.
Если вы используете vitest у себя в проекте, то потребуется обновлить vitest до 3 версии для корректной работы.
GitHub
Release v0.14.0 · XaveScor/smartbundle
What's Changed
107: move to vite 6 + upgrade all deps by @XaveScor in #142
BREAKING CHANGES
vitest v3 is minimum supported version
Full Changelog: v0.13.1...v0.14.0
107: move to vite 6 + upgrade all deps by @XaveScor in #142
BREAKING CHANGES
vitest v3 is minimum supported version
Full Changelog: v0.13.1...v0.14.0
🔥3
https://github.com/XaveScor/smartbundle
Нет релиза, но я последний месяц активно играюсь с нейронками, поэтому предлагаю вам оценить новый вид документации. Оценка в комментариях с критикой приветствуется
В ней так же дофига минусов, но теперь дока будет первостепенна над фичами
Нет релиза, но я последний месяц активно играюсь с нейронками, поэтому предлагаю вам оценить новый вид документации. Оценка в комментариях с критикой приветствуется
В ней так же дофига минусов, но теперь дока будет первостепенна над фичами
GitHub
GitHub - XaveScor/smartbundle: Just Code, No Configs. The Library Bundler That Respects Your Time
Just Code, No Configs. The Library Bundler That Respects Your Time - XaveScor/smartbundle
👍5
Прямо сейчас мой базовый промпт для написания тестов в смартбандле выглядит так https://github.com/XaveScor/smartbundle/blob/master/prompts/test.md
Увы, но нейронки тупые, чтобы самим выводить эти правила. Пришлось отдельно поработать и помочь им
Увы, но нейронки тупые, чтобы самим выводить эти правила. Пришлось отдельно поработать и помочь им
GitHub
smartbundle/prompts/test.md at master · XaveScor/smartbundle
Just Code, No Configs. The Library Bundler That Respects Your Time - XaveScor/smartbundle
👍3
v0.14.1
https://github.com/XaveScor/smartbundle/releases/tag/v0.14.1
- Исправлена ошибка валидации. Теперь пользователь обязан указать или
https://github.com/XaveScor/smartbundle/releases/tag/v0.14.1
- Исправлена ошибка валидации. Теперь пользователь обязан указать или
exports, или bin. Т.е. для сборки требуется хотя бы 1 энтрипоинтGitHub
Release v0.14.1 · XaveScor/smartbundle
What's Changed
135 exports or bin is required @XaveScor in #143
Full Changelog: v0.14.0...v0.14.1
135 exports or bin is required @XaveScor in #143
Full Changelog: v0.14.0...v0.14.1
https://github.com/XaveScor/smartbundle/blob/145-build-release-modes/docs/modes.md
Я тут работаю над build/release модами, так как это требуется для корректной работы поддержки монореп. Пока есть такая дока.
Хочется послушать критику для этого решения, так как я до последнего оттягивал release режим смартбандла, но увы, его придётся сделать.
Я тут работаю над build/release модами, так как это требуется для корректной работы поддержки монореп. Пока есть такая дока.
Хочется послушать критику для этого решения, так как я до последнего оттягивал release режим смартбандла, но увы, его придётся сделать.
GitHub
smartbundle/docs/modes.md at 145-build-release-modes · XaveScor/smartbundle
Just Code, No Configs. The Library Bundler That Respects Your Time - XaveScor/smartbundle
Хотелось бы сказать что я плюнул на смартбандл, но нет. Сейчас работаю над поддержкой монореп.
И хочется поныть, что ребята из pnpm чуток плохие ребята, так как
Паубывал бы за то, что приходится для каждого окружения писать свои костыли, чтобы оно работало нормально.
И хочется поныть, что ребята из pnpm чуток плохие ребята, так как
"dep": "*" считается ссылкой именно на пакет в npm, даже если пакет с таким именем есть в монорепе. И для корректной работы надо писать "dep": "workspace:*".Паубывал бы за то, что приходится для каждого окружения писать свои костыли, чтобы оно работало нормально.
😨5❤3👍1🔥1
В итоге поддержка монореп затянулась. Но первый пошёл https://github.com/reatom/reatom/pull/1166
Думаю до конца недели затащить. Нашёл пару минорных багов, которые не так сложно пофиксить
Думаю до конца недели затащить. Нашёл пару минорных багов, которые не так сложно пофиксить
GitHub
[smartbundle] alpha integration by XaveScor · Pull Request #1166 · reatom/reatom
Initial integration into @reatom/core.
Need to resolve:
verbatimModuleSyntax: true for the all monorepo. https://www.typenoscriptlang.org/tsconfig/verbatimModuleSyntax.html. It is required for corr...
Need to resolve:
verbatimModuleSyntax: true for the all monorepo. https://www.typenoscriptlang.org/tsconfig/verbatimModuleSyntax.html. It is required for corr...
🔥3
Сейчас идёт финализация дизайна монореп в смартбандле. Осталось только норм логи прикрутить.
И я начинаю понимать, что для современной либы ровно 0 причин чтобы её хранить не в формате монорепы. С монорепой:
а) релизы проще. Просто пишешь pnpm publish и всё релизится
б) добавление новых пакетов упрощается. К примеру, хочешь сделать синтаксис
в) Захочешь вынести чуток вовне логику - опять будет проще создать пакет. К примеру мне нужна отдельная команда smartbundle-monorepo-link.
и т.д. и т.п.
Минусы же минорны - нужно просто понимать как работают монорепы
И я начинаю понимать, что для современной либы ровно 0 причин чтобы её хранить не в формате монорепы. С монорепой:
а) релизы проще. Просто пишешь pnpm publish и всё релизится
б) добавление новых пакетов упрощается. К примеру, хочешь сделать синтаксис
npm init <libname>. Всё равно придётся переходить к монорепе, чтобы создать пакет create-<libname>в) Захочешь вынести чуток вовне логику - опять будет проще создать пакет. К примеру мне нужна отдельная команда smartbundle-monorepo-link.
и т.д. и т.п.
Минусы же минорны - нужно просто понимать как работают монорепы
🔥3👀2✍1