Вывод сообщений о слишком большом КА не учитывает координаты узлов

Issue #198 new
Oleg Sychev repo owner created an issue

Originally reported on Google Code with ID 198

Несколько пунктов, которые надо выполнить
1. Доделать text_and_button виджет чтобы он допускал textarea (но и просто строку ввода
тоже) - ответственный Пахомов (контроль - Стрельцов)
preg_widget должен, мне кажется руководствоваться следующей логикой: всегда создавать
textarea, количество строк изначально выбирается одну (для пустой строки), либо сколько
строк в регексе. Пользователь, если надо увеличить их количество, растянет.
2. Добавить галочку extended режима в вопрос, обеспечить работу с БД этой опции и выставление
модификатора при создании хэндлера - ответственный Сычев (имеет смысл только после
выполнения пункта 1)
3. Лексер в обычном (не extended) режиме должен игнорировать переводы строк в регексе
(или есть возражения?) - ответственный Стрельцов
4. На окне инструментов авторинга сделать тоже textarea с теми же правилами, что и
в пункте 1 - ответственный Пахомов или Терехов

Назначаю на Пахомова, т.к. с него все начинается. После выполнения своего пункта можете
сменить владельца на меня

Reported by oasychev on 2013-05-26 19:17:09

Comments (16)

  1. Oleg Sychev reporter
    5. И иконку от строки ввода отодвиньте подальше, сливаются почти...
    

    Reported by oasychev on 2013-06-03 08:18:22

  2. Former user Account Deleted
    инпуты заменил на однострочные textarea с одной строкой (мышкой можно раздвинуть на
    любое колво строк)
    

    Reported by TOPT.iiiii on 2013-07-03 09:38:13

  3. Former user Account Deleted
    Реализовано автоматическое изменение размеров textarea в зависимости от содердащегося
    текста
    

    Reported by TOPT.iiiii on 2013-07-03 10:30:42

  4. Oleg Sychev reporter
    Вытолкнул начало реализации новой нотации, но была проблема в обработке модификаторов
    get_matcher, каковую обработку Валерий рефакторил...
    

    Reported by oasychev on 2013-07-04 11:24:45

  5. Oleg Sychev reporter
    На коммент #3 - автоматическое изменение реализовано для какого - который в форме вопроса
    или который на вашем окне? Надо и там и там...
    

    Reported by oasychev on 2013-07-04 11:25:43

  6. Oleg Sychev reporter
    Валерий - issue переходит вам. Необходимо реально выставлять в лексере и парсере границы
    узлов с учетом переводов строки.
    
    Поэтому вариант с препроцессингом в нерасширенном режиме не проходит, надо править
    лексер.
    
    И сделать хотя бы два теста на лексер или парсер, с многострочными текстами - хотя
    бы 3 строки - в обычном и расширенном режиме - с проверкой координат узлов.
    

    Reported by oasychev on 2013-07-12 14:31:18

  7. Oleg Sychev reporter
    О том, что выделение ошибок в тексте регекса надо апгрейдить для многострочных регексов
    никто, кроме меня, подумать конечно не мог
    
    Все исправлено, Валерий - вам осталось поправить создание ошибки слишком большого автомата,
    чтобы оно тоже передавало данные о строках в конструктор ошибки - это где-то глубоко
    в вашем коде.
    
    И сделайте заодно аццептинг ошибок положительным. Матчинг при наличии ошибок все равно
    запрещен, и вы добиваетесь только того, что пользователь дополнительно к собственно
    сообщению об ошибке, получает его дубликат со странной для него надписью типа "Синтаксическая
    ошибка в позиции ... не поддерживается НКА"... :) :) Зачем сбивать людей с толку?
    

    Reported by oasychev on 2013-07-19 10:35:23 - Status changed: InProgress

  8. Oleg Sychev reporter
    Валерий - сделайте к бете, сейчас - мелочь же...
    

    Reported by oasychev on 2013-07-25 22:43:20

  9. Valeriy Streltsov
    НКА-акцептинг сделал.
    
    С too large fa проблема - этот код, вообще говоря, не глубоко у меня в коде, а в preg_fa.php.
    И туда не передаются никакие узлы. Предлагаю в add_state и add_transition передавать
    дополнительный параметр pregnode по умолчанию равным null.
    
    И еще - в preg_fa немного нарушена консистентность - для состояний есть только add_state,
    а для переходов есть add_transition, transition_added, assertion_transition_added.
    Я предлагаю не плодить такой зоопарк методов и оставить только add_transition и add_state,
    всё делать внутри них. Остальные функции содержат пару строк кода и нигде больше не
    вызываются.
    

    Reported by vostreltsov on 2013-07-26 07:21:37

  10. Oleg Sychev reporter
    С зоопарком разбираться будем после. Он там не зря сделан, а на перспективу - чтобы
    автомат мог корректно следить за тем, содержит ли он ассерты; является ли детерминированным
    и т.д.
    
    Я так понимаю что too large fa сейчас индексы вообще сломаны?
    

    Reported by oasychev on 2013-07-26 15:11:53

  11. Oleg Sychev reporter

    Reported by oasychev on 2013-07-26 15:19:44 - Labels added: Type-Defect - Labels removed: Type-Enhancement

  12. Valeriy Streltsov
    Я так понимаю что large fa это won't fix потому что невозможно отследить корень проблемы.
    Эксепшен всегда будет кидаться при построении автомата для листа.
    

    Reported by vostreltsov on 2014-12-04 18:34:16

  13. Oleg Sychev reporter
    Ну с большой вероятностью это все же будет лист внутри того, что вызвало такую проблему,
    а для пользователя это лучше чем ничего ИМХО.
    

    Reported by oasychev on 2014-12-04 19:17:08

  14. Valeriy Streltsov
    Так что с этим исью? Я уже много раз говорил, что нельзя точную проблему отследить.
    "Внутри того, что вызвало такую проблему" не сработает, потому что проблема обычно
    из-за квантификаторов, а единственный лист под квантификатором - не самая частая конструкция,
    обычно там что-то более сложное.
    
    Won't fix ставить нелогично, потому что изначально оно было вообще про многострочный
    ввод регексов.
    

    Reported by vostreltsov on 2015-03-10 20:41:08

  15. Oleg Sychev reporter
    Ну вообще-то раз не знаем что делать, оно и должно бы открытым висеть.
    
    Хотя есть у меня предположение что можно сделать счетчик типа "состояний на данный
    узел дерева" и пользуясь им найти именно квантификатор - узел на котором df/dx резко
    возрастает...
    

    Reported by oasychev on 2015-03-10 21:55:47

  16. Log in to comment