-
Notifications
You must be signed in to change notification settings - Fork 109
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP Add diagnostic for AttachIdleHandler #1257
base: develop
Are you sure you want to change the base?
WIP Add diagnostic for AttachIdleHandler #1257
Conversation
ишуза на ПодключитьОбработчикОжидания нет, Никита такое не любит ) |
@MinimaJack я сделал ишуз #1258 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
есть замечания
...n/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AttachIdleHandlerDiagnostic.java
Outdated
Show resolved
Hide resolved
...n/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AttachIdleHandlerDiagnostic.java
Outdated
Show resolved
Hide resolved
result = UNDEFINED_TYPE; | ||
} | ||
|
||
return result; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
реально из метода getTypeFromConstValue юзается одно значение STRING_TYPE, все остальное - не нужно, можно удалить )
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Аналогичный код есть в проверке на запрос в цикле...надо выносить в утилиты
...n/java/com/github/_1c_syntax/bsl/languageserver/diagnostics/AttachIdleHandlerDiagnostic.java
Show resolved
Hide resolved
@@ -0,0 +1,59 @@ | |||
# Использование метода ПодключитьОбработчикОжидания (AttachIdleHandler) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Предлагаю переназвать правило для большей детализации - Не существует обработчик ожидания в управляемой форме.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Можно просто на форме...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
да, можно и на форме, если у тебя отловятся и модули обычных форм )
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
В новой версии платформы управляемые формы переименованы в просто формы.
Added some helper classes for cleanup code
return !methodExist; | ||
}).orElse(false); | ||
|
||
// Проверка что при таймауте меньше 1 секунды, третий параметр не равен Ложь |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ты решил все-таки смешать два моих ишуза в один (
и отсюда проблемы:
-
1 для глобальных обработчиков будешь дублировать код, верно?
- а если бы сделал отдельную диагностику на "при таймауте меньше 1 секунды, третий параметр не равен Ложь", как в моем ишузе, код был бы одинаков для ЛЮБОГО вызова ПодключитьОбработчикОжидания и был бы достаточно простой
-
2 вторая проверка не сработает, если сработает первая (
- в итоге у тебя правило выдаст всего одно замечание, если пользователь сделает две ошибки - и не укажет правильно имя, и не укажет правильно 3й параметр
предлагаю рассмотреть возможность отдельной диагностики для 3го параметра )
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@artbear
Пока только локальные...
- Всегда можно отрефакторить...но делать отдельную диагностику на один метод - жестко...по факту это проверка на согласованость параметров вызова.
третий параметр не равен Ложь"
на самом деле чуток сложнее, там может быть булево, выражение( вызов метода, ЛОЖЬ ИЛИ Истина ), а может вообще ничего не быть и тогда там используется параметр по умолчачнию равный Ложь
.
- Будет рефакторинг, и выкидывание AbstractFindMethodDiagnostic, на визитор, а затем и добавление отдельных диагностик. Пока пишу утилити код для получения актуальных параметров вызова с учетом значений по умолчанию.
@@ -0,0 +1,2 @@ | |||
diagnosticMessage=Выбирите существующий метод в параметрах |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Опечатка Выбирите
На чем остановились? |
Ждет контекста |
@theshadowco @asosnoviy Можно почистить от мусора немного и залить, а когда будет контекст - обновить |
@nixel2007 ПР все еще ждет твоего ответа на последний вопрос от Жени. |
Описание
Добавлена диагностика
Связанные задачи
#1258
Общие
gradlew precommit
)Для диагностик