en
Feedback
Laravel Idea

Laravel Idea

Open in Telegram
337
Subscribers
No data24 hours
No data7 days
No data30 days
Posts Archive
Генерация контроллера будет умной. Если есть реквест, то он будет использовать его, если нет, то стандартный и валидацию прямо в контроллере сделает. Про ресурсы и полиси - тоже знает. Вот пример двух генераций, со всеми классами и без всего - https://gist.github.com/adelf/8aed89f8aae7284e87f4cf89b856f032 Кому в воскресенье делать нечего кому интересно - пишите возражения)

Работа идет медленно, но идет. Постоянно на правку других багов и мелкие фичи отвлекаюсь. Небольшая гифка-иллюстрация к предыдущему посту. Красивый и быстрый набор всего клавой.

Давно хотел сделать продвинутое создание модельки. Чтобы быстро все клавой набивать: написал, таб, выбрал, таб и т.д. Ну и по
Давно хотел сделать продвинутое создание модельки. Чтобы быстро все клавой набивать: написал, таб, выбрал, таб и т.д. Ну и после такого можно сразу и фабрику и реквест создать с полями, как я хотел. Эскиз чуть ли не год назад делал. Наконец начал делать реальный UI.

Ровно 3 года назад, 5 декабря 2019, я выпустил Laravel Idea 1.0. За несколько дней до этого один китаец сьел что-то не то и п
Ровно 3 года назад, 5 декабря 2019, я выпустил Laravel Idea 1.0. За несколько дней до этого один китаец сьел что-то не то и понеслось. А потом еще и война. Почти уверен, что без своего продукта, в который можно всегда окунуться с головой, мне было бы сильно сложнее. Выпустил сегодня версию 6.2. Фич не так чтобы много. Много усилий ушло на оптимизацию всякую и кеширование. Главная цель - генерить хелпер код автоматом после каждого сохранения php-файла. Для этого оно должно генерить космически быстро. Думаю, будет уже в одной из следующих версий.

Простое следствие предыдущего поста - поскольку всё в кеше, я могу и значения показать при комплишене.
Простое следствие предыдущего поста - поскольку всё в кеше, я могу и значения показать при комплишене.

Сделал очень большую перестройку в архитектуре. Настроил правильное кеширование с вычислением всех зависимостей. Простой пример: надо найти значение config('app.name') строки. Оно лезет в правильный конфиг-файл, находит там env() вызов, лезет в .env файл и находит значение. Все это попадает в кеш, но если обновится .env файл или тот конфиг-файл - надо этот кеш сбросить. Все это теперь работает как надо. Вроде все стабильно, но если есть желающие - просьба проверить до публичного релиза. Там еще полно всяких новых фич) Если вдруг увидите в правом нижнем углу мигающую красную штуку - нажать и отправить репорт "Send to Laravel Idea" вроде. Ставится просто - качаем файл для своего релиза. .222 для 2022.2 шторма. .223 для 2022.3 шторма. Идем в настройки - Plugins - там шестеренку справа от Installed - Install from file. И перезагрузка шторма. https://laravel-idea.com/releases/Laravel%20Idea-6.2.0.222.zip https://laravel-idea.com/releases/Laravel%20Idea-6.2.0.223.zip

сделал сегодня поддержку этого пакета расширений для коллекций и не смог удержаться, чтобы не подстебнуть) за странные методы
сделал сегодня поддержку этого пакета расширений для коллекций и не смог удержаться, чтобы не подстебнуть) за странные методы, вроде выдергивания девятого элемента из коллекции.

Тестирую ту фичу, о которой недавно тут в комментах говорили. Подсказка скоупов базируясь на типах полей. Я нормально для булева поля генерю код? А то, я что-то подзабыл...

Сделал немножко разных подсказок, чтобы стандартные методы элоквента было легче создавать. Это правильнее было бы делать через live templates, но там оно пока не умеет заимпортить классы, которые нужны. Из двух зол пришлось выбирать.

Выпустил сегодня релиз 6.0. Там в основном фиксы багов и оптимизации. Мажорным сделал для того, чтобы тем, кому JetBrains продлила лицензии до 1 октября - 6.* версии остались с ними навсегда. Вроде такую логику они сделали для IDE. Надеюсь, для плагинов тоже.

Выложил релизы .env и Laravel Idea плагинов для нового PhpStorm 2022.3 EAP. Пишу на тот случай, если только это вас останавливало от того, чтобы попробовать.

Недавно выпустил релиз и главной целью его реализовать различные find usages. Уже писал тут об этом. Главным преимуществом IDE является как раз грамотная навигация по проекту. Для больших проектов это просто must have, иначе любое изменение становится большой болью.

Вчера Нуно Мадуро узнал о существовании Laravel Idea. В итоге почти вся core тим ларавеля подписана на мой твиттер)
Вчера Нуно Мадуро узнал о существовании Laravel Idea. В итоге почти вся core тим ларавеля подписана на мой твиттер)

Занялся реализаций всевозможных find usages. Ключи конфигурации, локализации, гейты, полиси - это уже есть. Надо еще компонен
Занялся реализаций всевозможных find usages. Ключи конфигурации, локализации, гейты, полиси - это уже есть. Надо еще компоненты блейд и livewire реализовать. Есть еще предложения?

Продолжаю добавлять удобные переходы в документацию ларки. Добавил для всех методов билдеров и коллекций. Вообще, есть идея сделать редиректы в нужные разделы доки для всех классов Laravel. Разумеется, почти для всего это будет редирект на какой-то раздел доки, а не на конкретный метод. Если кому-то хочется изучить доку вдоль и поперек, помочь мне и немного заработать, то велкам в личку. Обсудим.

Пробую сделать всю генерацию хелпер кода по одной клавише. Оптимизацию провел хорошую и это дает надежду, что оно будет работ
Пробую сделать всю генерацию хелпер кода по одной клавише. Оптимизацию провел хорошую и это дает надежду, что оно будет работать. Надо только проверить на больших проектах и машинах послабее. Кто может помочь? Вот версия с последними правками - https://adelf.tech/files/Laravel%20Idea-5.6.2.special.zip Она стабильная - не бойтесь. Надо скачать, потом в шторме в настройках - Plugin - колесико справа от Installed - Install from file… Пробуйте генерить и оставляйте фидбек в комментах. Первый запуск генерации сразу после рестарта будет чутка долгий - кеши еще не прогреты. А следующие должны летать. P.S. внимательные заметили хелпер-код для dispatchable трейтов. Он “добавит” правильные параметры в ::dispatch, ::dispatchNow and ::broadcast методы.

Если вдруг кому нечем заняться в пятницу вечером… 🙂 то может вспомните подобные вещи. Есть вызовы RateLimiter::for(‘какоето
Если вдруг кому нечем заняться в пятницу вечером… 🙂 то может вспомните подобные вещи. Есть вызовы RateLimiter::for(‘какоето имя’, function(){}). А потом можно использовать в миддлваре new RateLimited(‘тут тоже самое имя’). Хочу добавить много подобных комплишенов, но сам не могу вспомнить - какие такие вызовы есть с регистрацией чего-то и потом использования.

Смотрите какая красота. Некоторым роут файлам точно не помешает такой рефакторинг.

Ладно. “Анализ” это слишком громко сказано :)
Ладно. “Анализ” это слишком громко сказано :)

Потратил час, а то и два, на решение задачи: угадать нужно ли предлагать неймспейс, такой же как у модели, для кодогенерации
Потратил час, а то и два, на решение задачи: угадать нужно ли предлагать неймспейс, такой же как у модели, для кодогенерации на ее основе. Вот здесь, например, мы хотим создать ресурсный контроллер на основе модели Account/Order. Стоит предложить неймспейс “Account/” для контроллера или нет? Надо как-то угадать как принято на проекте. Решение строю на анализе целевой директории. Если там есть папка “Account”, то ответ очевиден. А если нет, то считаю количество файлов и папок и пытаюсь угадать анализируя эти два числа. Посмотрим как пойдет.