Preg: предрелизная подготовка 2.3

Issue #143 closed
Oleg Sychev repo owner created an issue

Originally reported on Google Code with ID 143

Пока кидаю списки последних замечаний: что-то исправлено, но еще непроверено. Что-то
нет. Если кто что исправлял из списка - и код вытолкул - отпишитесь пожалуйста, чтобы
мне долго не гадать...


1. Мало комментариев в новом чарсете - Колесов + Стрельцов
6. Лексер: PHPDoc-комментарии к новым функциям!!! Колесов - к функциям опций
11. Документация на docs.moodle.org по новым возможностям и страница сравнения с regex
- Сычев+Стрельцов
12. Система запуска dot: стандартные настройки, сначала пробовать расширение PHP  Колесов/Стрельцов
- Сычев поискать расширение
13. Нормальная генерация след. символа; сортировка дизъюнктов. Сортировать при первом
обращении к match(next - искать мин) - Колесов
15. Лексер: воспринимать, а не игнорировать, все от PCRE - для начала testinput1 -
Стрельцов
16. Усовершенствовать ДКА под новый чарсет и решить проблемы построения - Колесов


19. Почему в charset::match параметр $cs? Разве это давно не управляется данными самого
узла - полем qtype_preg_leaf::caseinsensitive ?? Оно должно проставляться лексером
в соответствии с модификаторами....
21. Новые кросс-тесты
    ab(?:cd(?i)ef)gh  и ab(cd(?i)ef)gh и /ab(?:cd(?-i)ef)gh/i
    покомплекснее тест на дубликаты подмасок: правильное совпадение самой дублированной
подмаски с обратной ссылкой при генерации продолжения при отказе в совпадении до дублирования,
посреди подмаски и после дублирования...
    негативные юникод-свойства/POSIX-классы??  [^[^:alpha:]]
23. Документация на http://docs.moodle.org/23/en/Preg_question_type дополнить новыми
особенностями: виды описаний подмасок и обратных ссылок, posix-классы, юникод-свойства,
\Q...\E и т.д.

    Сычев: дописать в документацию что такие ответы должны быть ниже hintgradeborder
и exact matching должен быть "нет"
    (?!<I\s+)am(?!\s+victor) - "am" misplaced
24. Может быть перенести код создания узлов из лексера в конструкторы узлов? Обнаружение
ошибок и т.д. - Стрельцов
26. Режим совместимости лексера/парсера с PCRE через опции. - Сычев/Стрельцов
    проверить и отладить одни пустые скобки внутри других (на будущее - проблемно)
- Сычев
    проверить работу НКА на a()b при наличии пустого узла внутри подмаски - нотация
PCRE Strict - Стрельцов
    передать опции в ДКА матчер - Колесов
    доделать сканер и парсер под новые опции - Стрельцов/Сычев

Reported by oasychev on 2012-07-31 17:02:38

Comments (13)

  1. Valeriy Streltsov

    ``` 12 - сделано, сейчас функция может и сохранять файл на жесткий диск, и возвращать в бинарном виде вывод дота. Под обоими осями работает через proc_open(). Расширение пхп так и не нашел. 15 - вроде бы сделано 19 - сделано 24 - было бы, конечно, правильно, но оно неудобно: индексы ошибок в строке тоже нужно заполнять, и они иногда отличаются от индексов узла, в который они вложены... в лексере это проще заполнять. ```

    Reported by `vostreltsov` on 2012-08-01 16:02:08

  2. Oleg Sychev reporter

    ``` 19 надо бы отладить. И сделать надежный набор кросс-тестов или тестов на узлы с установкой опций (?i) (?-i) и самыми разными символьными классами. ```

    Reported by `oasychev` on 2012-08-03 14:40:48

  3. Oleg Sychev reporter

    ``` По 21 - Валерий, добавите новые кросс-тесты? И про (?i) как раз можно заодно и диапазоны, и юникод-свойства оттестировать ```

    Reported by `oasychev` on 2012-08-03 14:55:22

  4. Valeriy Streltsov

    ``` 19, 21 доделал. Ошибка была в лексере, не выставлялась регистрочувствительность в состоянии CHARSET. Тесты которые вы написали добавил, и парочку своих хитрых тоже придумал.

    ```

    Reported by `vostreltsov` on 2012-08-05 13:45:28

  5. Oleg Sychev reporter

    ``` 23 сделано совместными усилиями. Почти готова бета.

    Дмитрий, если не вытолкните в ближайшие два дня восстановление работоспособности ДКА и передачу опций, ваш матчер будет исключен из релиза! Он должен проходить кросс-тесты хотя бы не хуже, чем в прошлом релизе.... ```

    Reported by `oasychev` on 2012-08-06 20:26:25

  6. Oleg Sychev reporter

    ``` 27. Перед релизом убрать PCREStrict нотацию, т.к. она слита с обычной - Сычев ```

    Reported by `oasychev` on 2012-08-14 12:58:35

  7. Oleg Sychev reporter
    Остаются проблемы с работоспособностью ДКА - очень серьезные. Если они в течении недели
    не будут решены - придется убирать ДКА из релиза.
    
    Ну и Moodle в шапке на Preg надо поправить все-таки.
    

    Reported by oasychev on 2012-10-13 19:22:59

  8. Former user Account Deleted
    Работоспособность ДКА восстановлена, изменения вытолкнуты в мой клон.
    Имеются провалы на некторых тестах, но в целом матчер работоспособен, как на модульных
    тестах, так и проверке через мудл.
    

    Reported by Xapuyc7 on 2012-10-23 21:20:21

  9. Oleg Sychev reporter
    Не так уж она и восстановлена, если при запуске кросс-тестов att_basic валятся исключения
    при построении матчера на многих тестах, а на тестах от PCRE оно вообще виснет!
    
    Неправильный ответ - это одно, а вот исключения/повисание - совсем другое...
    Разберитесь и исправьте.
    

    Reported by oasychev on 2012-10-26 12:15:57

  10. Valeriy Streltsov
    Исправил заголовки на preg и poasquestion
    

    Reported by vostreltsov on 2012-10-28 06:30:41

  11. Oleg Sychev reporter
    Релиз прошел, хоть и с не до конца исправленными матчерами... :(
    

    Reported by oasychev on 2013-01-06 17:03:16 - Status changed: Done

  12. Log in to comment