Comments (15)
@Krakazybik Спасиб за скрины! В целом тогда кажется, что этого хватит
А постпроцессинг оставим на некст итерации
Главное, что по текущим формулировкам понятно что происходит и что менять
Поменяю майлстоун сейчас
from eslint-config.
@Krakazybik Предлагаю тогда следующий расклад по итогу по этой задаче:
-
Так и быть, сделаем processor отдельным пакетом, но хранить его код будем пока локально (т.к. он напрямую к конфигу относится)
Потом вполне может оказаться, что дальше развивать эту историю не будем - но раз уже столько наработок по задаче, то кажется можно выкатывать
Публикацию в нужном виде и коннект уже сам организую, тебе лишь сам processor надо реализовать -
Какие именно формулировки процессим
"layers-slices"
=>"Violated isolation between layers or slices: {IMPORT_FROM} => {IMPORT_TO} (FeatureSliced: https://git.io/Jymh2)"
"public-api"
=>"Violated usage of modules Public API (FeatureSliced: https://git.io/Jymjf)"
"import-order"
=>"Broken order of imports (FeatureSliced: https://git.io/JymjI)"
from eslint-config.
PublicAPI
Layers
Slices
Import-order
from eslint-config.
Вариант решения (чтоб не затерялся): postprocess
from eslint-config.
Коты чутка почудили, смотри что получилось =)
Kazam_screencast_00003.mp4
from eslint-config.
@Krakazybik Спасибо за видос с примером!
from eslint-config.
А можешь пож уточнить:
-
Кастомайзить можно только "прибавляя доп.текст" к комментарию?
А то заметил, что дефолтная часть сообщения остается а мы лишь добавляем "See rule..." -
Кастомайзить можно только сырой текст?
Нельзя ли вставить прям ссылку на доку, чтобы можно было переходить напрямую?
(как в eslint-plugin) -
Сильно дорого ли вышло такое решение?)
Т.е. выглядит круто, но насколько сложно в реализации и поддержке такое?
Кинешь пож ссыль на коммит/ветку?
from eslint-config.
- Кастомайзить можно текст полностью. В видео был акцент на ruleId, который выглядит как feature-sliced/...
- Немного не понял, если речь про ссылку в тексте, то без проблем, если про docs из eslint rule, то к данному объекту доступа нет
- Не дорого, могу на гист залить или куда-то, т. к. это отдельный пакет
from eslint-config.
(2) Ну я тип вот к чему:
👎 Bad: Чисто идентификатор правила мало что скажет и вряд ли кто будет по нему искать доку
@feature-sliced/import-order
👎 Bad: Ссылка это хорошо, но занимает много места и сложно понять сходу - что за правило то
https://github.com/feature-sliced/eslint-config/blob/master/rules/import-order/index.md
👍 Good: И идентификатор, и ссылка - и компактно (как у eslint-plugin#docUrl)
from eslint-config.
(3) Да, давай)
Вот смущает как раз, что это не просто функция кастомайзер (как было похоже по доке еслинта), а аж отдельный пакет...
from eslint-config.
(1) А можешь тогда показать пример как докастомайзиться до тип такого?
Lower layers can't higher layers: widgets => pages (@feature-sliced/layers-boundaries)
from eslint-config.
(3) Да, давай)
Вот смущает как раз, что это не просто функция кастомайзер (как было похоже по доке еслинта), а аж отдельный пакет...
https://gist.github.com/Krakazybik/53cebb2c763305be13e31042d59a7c72
from eslint-config.
@Krakazybik Уточнишь пож по (2) и (1)?
from eslint-config.
from eslint-config.
from eslint-config.
Related Issues (20)
- LINT: (CLI) Yet another minor refinements
- LINT: Nested folders of the module are considered as other modules HOT 2
- LINT: [layers-slices] No error when importing app layer to other layers HOT 1
- LINT: [layers-slices] No error when cross-layer import from structural group
- for those who incrementally migrating to fsd HOT 1
- LINT: (Draft) Add real import-resolver
- LINT: (Feedback) No support alias in shared layer for PublicAPI
- LINT: (Feedback) Impossible to disable rules by customized ruleIds HOT 4
- LINT: (Feedback) Incorrect imports order in aliased layers
- LINT: (Feedback) Refine import/order boundaries
- LINT: (Feedback) Make public-api-boundaries less strict HOT 1
- LINT: Resolve import-order/experimental (Need your feedback!) HOT 20
- LINT: (Feedback) Refine bootstraping of linting HOT 12
- LINT: import/no-internal-modules not support aliases HOT 3
- LINT: Resolve public-api/lite (Need your feedback!) HOT 11
- LINT: (Beta) [public-api] Falsy positive linting of grouped features HOT 2
- LINT: (Beta) [public-api] Falsy positive linting for inner "ui"-submodules HOT 1
- LINT: (Beta) [public-api] Falsy positive linting for inner submodules HOT 6
- LINT: [proposal] Validating layers in project structure
- LINT: (CLI) Add minor refinements HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eslint-config.